@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600&family=Noto+Sans+Thai:wght@400;500;600&display=swap');

:root{--bmm-ink:#10231f;--bmm-green:#146b52;--bmm-mint:#dfeee8;--bmm-blue:#315cdd;--bmm-paper:#fbfcfa;--bmm-bg:#eef3f0;--bmm-line:rgba(16,35,31,.13);--bmm-muted:#64736e;}
body{font-family:'Manrope','Noto Sans Thai',sans-serif;background:var(--bmm-bg);color:var(--bmm-ink);line-height:1.65;}
h1,h2,h3,.section-title,.hero-title{font-family:'Source Serif 4','Noto Sans Thai',serif;letter-spacing:-.025em;}
.container{max-width:1260px;padding-left:28px;padding-right:28px;}

/* Navigation */
.site-header{background:rgba(251,252,250,.92);color:var(--bmm-ink);padding:0;border:0;box-shadow:0 1px 0 var(--bmm-line);backdrop-filter:blur(18px);}
.header-inner{min-height:76px;}
.logo{font-size:13px;letter-spacing:.04em;text-transform:none;font-weight:700;}
.logo-mark{width:38px;height:38px;border-radius:8px;background:var(--bmm-green);color:#fff;font-size:13px;letter-spacing:-.04em;}
.main-nav{gap:26px;font-size:13px;font-weight:600;}
.main-nav a{opacity:.75;position:relative;}
.main-nav a:hover{opacity:1;color:var(--bmm-green);}
.btn-small{border-radius:7px;border-color:var(--bmm-green);}
.btn-small.primary{background:var(--bmm-green);border-color:var(--bmm-green);color:#fff;}
.hamburger span{background:var(--bmm-ink);}

/* Homepage hero */
.bmm-home .hero{padding:86px 0 78px;background:linear-gradient(135deg,#e7f3ee 0%,#f5f8f6 54%,#dce9e5 100%);position:relative;overflow:hidden;}
.bmm-home .hero:after{content:'BANGKOK';position:absolute;right:-18px;bottom:-74px;font:700 150px/1 'Manrope',sans-serif;letter-spacing:-.07em;color:rgba(20,107,82,.055);pointer-events:none;}
.bmm-home .hero-grid{grid-template-columns:1.2fr .8fr;gap:58px;}
.hero-eyebrow{font-size:11px;letter-spacing:.22em;color:var(--bmm-green);font-weight:700;}
.bmm-home .hero-title{font-size:clamp(48px,6vw,76px);line-height:1.02;margin-bottom:22px;max-width:760px;color:var(--bmm-ink);}
.hero-sub{font-size:17px;color:#52635e;max-width:680px;line-height:1.75;}
.hero-meta{color:var(--bmm-muted);max-width:720px;}
.hero-card{border-radius:14px;background:var(--bmm-ink);padding:34px;box-shadow:0 28px 64px rgba(16,35,31,.2);position:relative;z-index:1;}
.hero-card-tag{color:#83d3b8;font-weight:700;}
.hero-card .lang-label{color:#83d3b8;}
.hero-card .lang-body{color:rgba(255,255,255,.74);}
.badge{border-radius:6px;}

/* Buttons */
.btn{border-radius:7px;padding:12px 20px;font-weight:700;font-size:13px;}
.btn-primary{background:var(--bmm-green);color:#fff;}
.btn-primary:hover{background:#0e5842;}
.btn-outline{border-color:rgba(16,35,31,.35);color:var(--bmm-ink);}
.btn-outline:hover{background:var(--bmm-ink);color:#fff;}

/* Shared sections */
.section{padding:78px 0;}
.section-header{margin-bottom:30px;gap:8px;}
.section-title{font-size:clamp(32px,4vw,50px);line-height:1.08;color:var(--bmm-ink);}
.section-subtitle{font-size:15px;color:var(--bmm-muted);max-width:730px;}
.card-grid{gap:15px;}
.card{border-radius:10px;background:var(--bmm-paper);padding:14px;border:1px solid rgba(16,35,31,.06);box-shadow:0 10px 28px rgba(16,35,31,.045);transition:transform .25s,box-shadow .25s;overflow:hidden;}
.card:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(16,35,31,.12);}
.card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:7px;margin-bottom:15px;}
.card-title{font-size:22px;line-height:1.12;margin-bottom:7px;}
.card-meta{font-size:11px;color:var(--bmm-green);font-weight:700;letter-spacing:.03em;}
.card-text{font-size:13px;color:#52615c;}
.card-tags{font-size:10px;}
.card-tags .badge{border-color:var(--bmm-line);background:#edf4f1;color:#40534d;}
.bmm-directory .card-grid{grid-template-columns:repeat(4,minmax(0,1fr));}

/* Profiles */
.bmm-profile main>.section{padding:70px 0 88px;}
.bmm-profile .content-grid-2{grid-template-columns:minmax(320px,.9fr) 1.1fr;gap:58px;align-items:start;}
.bmm-profile .content-grid-2>div:first-child{position:sticky;top:100px;}
.bmm-profile .content-grid-2>div:first-child img{width:100%;max-height:760px;aspect-ratio:4/5;object-fit:cover;border-radius:12px;box-shadow:0 24px 55px rgba(16,35,31,.15);}
.bmm-profile .section-title{font-size:clamp(48px,7vw,76px);}
.bmm-profile .lang-block{padding:22px 0;border-top:1px solid var(--bmm-line);}
.lang-label{color:var(--bmm-green);}
.lang-body{color:#334740;}
.list li:before{content:'•';color:var(--bmm-green);}

/* Standard content */
.bmm-standard main>.section:first-child{min-height:520px;}
.content-grid-2{gap:34px;}
.review-item,.blog-card{background:var(--bmm-paper);border-radius:8px;padding:18px;border:1px solid rgba(16,35,31,.07);}
.table th{background:var(--bmm-mint);}
.table th,.table td{border-color:var(--bmm-line);padding:12px 14px;}
input[type=text],input[type=email],textarea{border-radius:7px;border-color:var(--bmm-line);background:#fff;padding:12px;}

/* Editorial blog */
.bm-blog-page{--ivory:#f7faf8;--cream:#e5f0ec;--gold:#146b52;--brown:#10231f;--line:rgba(16,35,31,.13);--muted:#64736e;background:var(--bmm-bg);font-family:'Manrope','Noto Sans Thai',sans-serif;}
.bm-blog-page h1,.bm-blog-page h2,.bm-blog-page h3{font-family:'Source Serif 4','Noto Sans Thai',serif;letter-spacing:-.025em;}
.bm-list-hero,.bm-hero{background:var(--bmm-ink);border:0;padding:76px 0 62px;}
.bm-list-hero h1,.bm-hero h1{color:#fff;font-size:clamp(46px,6vw,70px);line-height:1.04;}
.bm-list-hero .bm-excerpt,.bm-hero .bm-excerpt{color:rgba(255,255,255,.68);}
.bm-list-hero .bm-eyebrow,.bm-hero .bm-eyebrow{color:#86d7bc;}
.bm-list-hero .bm-lang-switch .active,.bm-hero .bm-lang-switch .active{color:#fff;border-color:#fff;}
.bm-list{padding:70px 0 90px;}
.bm-grid{gap:16px;}
.bm-card{border-radius:10px;border:0;box-shadow:0 10px 30px rgba(16,35,31,.06);overflow:hidden;transition:.25s;}
.bm-card:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(16,35,31,.13);}
.bm-card-image{border-radius:0;}
.bm-card-title{font-family:'Source Serif 4','Noto Sans Thai',serif!important;color:var(--bmm-ink);font-size:25px;line-height:1.14;}
.bm-card-cat,.bm-card-meta{color:var(--bmm-green);}
.bm-banner{max-height:680px;}
.bm-article{padding:68px 0 90px;}
.bm-article .container{max-width:800px;}
.bm-article h2{font-family:'Source Serif 4','Noto Sans Thai',serif;font-size:34px;color:var(--bmm-ink);}
.bm-article p,.bm-article li{color:#31423d;}
.bm-cta{background:var(--bmm-mint);border:0;padding:58px 0;}
.bm-btn{background:var(--bmm-green);border-radius:7px;}

/* Feed-generated posts */
.bmm-feed-article{background:var(--bmm-bg);}
.sbp-top{min-height:70px;padding:0 max(24px,calc((100vw - 1240px)/2));background:var(--bmm-ink);color:#fff;}
.sbp-top>a:first-child{font-family:'Source Serif 4',serif;font-size:23px;color:#fff;}
.sbp-top .sbp-book{background:#83d3b8!important;color:var(--bmm-ink)!important;border-radius:7px;padding:10px 18px;}
.sbp-wrap{max-width:860px;margin:0 auto;padding:58px 24px 90px;font-family:'Manrope','Noto Sans Thai',sans-serif;color:var(--bmm-ink);line-height:1.8;}
.sbp-hero{width:100%;max-height:550px;object-fit:cover;border-radius:10px;margin:0 0 40px;box-shadow:0 22px 55px rgba(16,35,31,.15);}
.sbp-wrap h1{font-family:'Source Serif 4','Noto Sans Thai',serif;font-size:clamp(44px,6vw,68px);line-height:1.05;letter-spacing:-.035em;color:var(--bmm-ink);margin:0 0 34px;}
.sbp-wrap h2{font-family:'Source Serif 4','Noto Sans Thai',serif;font-size:32px;line-height:1.2;color:var(--bmm-ink);margin:46px 0 14px;}
.sbp-wrap p,.sbp-wrap li{font-size:17px;line-height:1.85;color:#31423d;}
.sbp-langhdr{border-color:var(--bmm-line);color:var(--bmm-green);}
.sbp-cta{background:var(--bmm-green);border-radius:7px;padding:17px;}

.site-footer{background:#0b1916;padding:34px 0;margin:0;}

@media(max-width:980px){
  .bmm-directory .card-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .bmm-profile .content-grid-2{gap:32px;}
}
@media(max-width:768px){
  .container{padding-left:20px;padding-right:20px;}
  .main-nav{top:76px;background:var(--bmm-paper);color:var(--bmm-ink);box-shadow:0 18px 30px rgba(16,35,31,.12);}
  .bmm-home .hero{padding:60px 0;}
  .bmm-home .hero-grid{grid-template-columns:1fr;}
  .bmm-directory .card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .bmm-profile .content-grid-2{grid-template-columns:1fr;}
  .bmm-profile .content-grid-2>div:first-child{position:static;}
}
@media(max-width:520px){
  .logo span{max-width:180px;line-height:1.15;}
  .bmm-home .hero-title{font-size:43px;}
  .section{padding:58px 0;}
  .bmm-directory .card-grid{grid-template-columns:1fr 1fr;gap:9px;}
  .bmm-directory .card{padding:8px;}
  .bmm-directory .card-title{font-size:18px;}
  .bmm-directory .card-text{display:none;}
  .bmm-profile .section-title{font-size:52px;}
  .sbp-wrap{padding:38px 18px 68px;}
  .sbp-wrap h1{font-size:40px;}
}
