:root{
 --gold:#C2A063;--gold-dark:#9C7E45;--gold-light:#D8C08A;--bronze:#A98C63;--ink:#221C17;--surface:#2C241D;
 --bg:#F7F2EA;--panel:#FFFFFF;--panel2:#F1EADF;--text:#4A4038;--soft:#8A7E70;--heading:#221C17;
 --accent:#9C7E45;--on-accent:#FFFFFF;--cardbd:rgba(120,100,70,.16);--rule:rgba(156,126,69,.35);
 --fieldbg:#FBF7F1;--fieldbd:rgba(120,100,70,.28);--scrim:rgba(34,28,23,.62)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Open Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);line-height:1.6}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
h1,h2,h3{color:var(--heading);font-weight:400}
.center{text-align:center}
.sect{max-width:1160px;margin:0 auto;padding:66px 26px}
.eyebrow{font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--accent)}
.eyebrow.gold{color:var(--gold-dark)}
.serif{font-family:"Playfair Display",serif}
h2{font-family:"Playfair Display",serif;font-size:clamp(26px,3.6vw,40px);line-height:1.1}
.serif.big{font-size:clamp(26px,3.4vw,38px)}
.serif.xl{font-size:clamp(34px,5vw,56px);line-height:1.04;margin:14px 0 12px}
.lead{color:var(--soft);font-size:16px;line-height:1.7}
.sechead{margin-bottom:30px}.sechead.center h2{margin-top:8px}
.sechead:not(.center){display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sechead.light .eyebrow{color:var(--gold-light)}.sechead.light h2{color:#fff}
.allbtn,.linktext{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
/* buttons */
.btn-solid,.btn-outline,.btn-cta,.btn-outline-light{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px;font-family:"Open Sans";font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:12px;cursor:pointer;border:none;transition:all .3s cubic-bezier(.22,.61,.36,1);text-decoration:none}
.btn-solid{background:var(--accent);color:#fff;padding:13px 26px}
.btn-solid:hover{transform:translateY(-2px);box-shadow:0 14px 26px -14px rgba(34,28,23,.5)}
.btn-outline{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:12px 24px}
.btn-outline:hover{background:var(--accent);color:#fff}
.btn-outline-light{background:transparent;border:1px solid rgba(255,255,255,.6);color:#fff;padding:12px 24px}
.btn-outline-light:hover{background:#fff;color:var(--ink)}
.btn-cta{background:var(--gold);color:var(--ink);padding:15px 34px;font-size:13px;letter-spacing:.15em;box-shadow:0 6px 16px -8px rgba(30,24,18,.4)}
.btn-cta:hover{transform:translateY(-3px);box-shadow:0 0 28px 0 rgba(194,160,99,.5),0 16px 28px -10px rgba(30,24,18,.4)}
.btn-solid::after,.btn-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.3) 50%,transparent 60%);background-repeat:no-repeat;background-size:250% 100%;background-position:150% 0}
.btn-solid:hover::after{animation:sh 1.2s ease-out}
.btn-cta::after{animation:cta 4s ease-in-out infinite}.btn-cta:hover::after{animation:sh 1.2s ease-out}
@keyframes sh{from{background-position:120% 0}to{background-position:-120% 0}}
@keyframes cta{0%{background-position:150% 0}75%{background-position:-150% 0}100%{background-position:-150% 0}}
/* ---------- header (dark transparent mega) ---------- */
.hd{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 34px;color:#fff;transition:background .35s,padding .35s,box-shadow .35s;
 --mpanel:rgba(34,28,23,.74);--mtext:#F7F2EA;--msub:rgba(247,242,234,.66);--mborder:rgba(255,255,255,.14);--mhover:rgba(194,160,99,.18);--maccent:#D8C08A;--mblur:blur(16px)}
.hd::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,28,23,.72),transparent);z-index:-1;transition:opacity .35s}
.hd.solid{background:rgba(34,28,23,.97);box-shadow:0 8px 26px -14px rgba(0,0,0,.6);padding-top:13px;padding-bottom:13px}
.hd.solid::before{opacity:0}
.brand{display:block;line-height:1;color:#fff;flex:0 0 auto}
.brand .bt{font-family:"Playfair Display",serif;font-size:21px;letter-spacing:.24em;display:block}
.brand .bs{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-light);margin-top:4px}
.nav{display:flex;align-items:center;gap:24px}
.nl{position:relative;color:rgba(255,255,255,.92);font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:8px 0}
.nl:hover{color:#fff}
.ca{width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);opacity:.7;margin-top:-3px}
.ni{position:relative}
.hright{display:flex;align-items:center;gap:18px}
.phone{color:#fff;font-size:13px;opacity:.9;white-space:nowrap}
.hcta{background:var(--gold);color:#221C17;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:11px 20px;border-radius:3px;white-space:nowrap;transition:.25s}
.hcta:hover{background:var(--gold-light);transform:translateY(-1px)}
.burger{display:none;width:26px;height:16px;position:relative;cursor:pointer;border:none;background:none;padding:0}
.burger span{position:absolute;left:0;right:0;height:2px;background:#fff}
.burger span:nth-child(1){top:0}.burger span:nth-child(2){top:7px}.burger span:nth-child(3){top:14px}
.mega,.drop{position:absolute;top:100%;background:var(--mpanel);color:var(--mtext);border:1px solid var(--mborder);-webkit-backdrop-filter:var(--mblur);backdrop-filter:var(--mblur);border-radius:14px;opacity:0;visibility:hidden;transform:translateY(10px);transition:.28s;z-index:20;box-shadow:0 30px 60px -26px rgba(0,0,0,.6)}
.drop{left:50%;margin-left:-105px;min-width:210px;padding:8px}
.mega{left:0;right:0;padding:24px}
.haspanel{position:static}
.ni:hover>.mega,.ni:hover>.drop{opacity:1;visibility:visible;transform:translateY(6px)}
.dropin{display:flex;flex-direction:column}
.drop a,.megagrid a{color:var(--mtext);font-size:13px;border-radius:7px;opacity:.9;transition:.15s}
.drop a{padding:9px 14px}.megagrid a{padding:8px 6px}
.drop a:hover,.megagrid a:hover{background:var(--mhover);opacity:1}
.megain{display:grid;grid-template-columns:1fr 260px;gap:26px;max-width:1080px;margin:0 auto}
.megak{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--maccent);margin-bottom:14px}
.megagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 18px}
.megafeat{display:block;border-radius:12px;overflow:hidden;position:relative;border:1px solid var(--mborder)}
.mf{height:120px;background-size:cover;background-position:center}.mfl{padding:14px}.mft{font-family:"Playfair Display",serif;font-size:16px;color:var(--mtext)}
.linky{color:var(--maccent);font-size:12px;font-weight:700}
.cmega{padding:18px}.cmega .cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1040px;margin:0 auto}
.cact{display:flex;flex-direction:column;gap:9px;padding:20px;border-radius:12px;border:1px solid var(--mborder);transition:.2s}
.cact:hover{background:var(--mhover);transform:translateY(-2px)}
.cicon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--mhover);color:var(--maccent)}
.cicon svg{width:21px;height:21px}.cl{font-family:"Playfair Display",serif;font-size:15px;color:var(--mtext)}.cs{font-size:12px;color:var(--msub);line-height:1.4}
.mobilemenu{position:fixed;inset:0;background:rgba(34,28,23,.98);z-index:200;display:flex;flex-direction:column;justify-content:center;padding:40px 34px;opacity:0;visibility:hidden;transition:.35s}
.mobilemenu.open{opacity:1;visibility:visible}
.mm-close{position:absolute;top:22px;right:26px;background:none;border:none;color:#fff;font-size:30px;cursor:pointer}
.mm-l{color:#fff;font-family:"Playfair Display",serif;font-size:26px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}
/* ---------- hero (dark accent) ---------- */
.hero{position:relative;min-height:92vh;display:flex;align-items:center;color:#fff;overflow:hidden}
.herobg{position:absolute;inset:0;background-size:cover;background-position:center 30%}
.herosc{position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,28,23,.62),rgba(34,28,23,.4) 45%,rgba(34,28,23,.72))}
.heroin{position:relative;max-width:900px;margin:0 auto;padding:120px 26px 60px;text-align:center}
.herohead{font-family:"Playfair Display",serif;font-size:clamp(42px,7vw,84px);line-height:1;margin:16px 0 18px;color:#fff}
.herosub{color:rgba(247,242,234,.9);font-size:clamp(15px,2vw,19px);line-height:1.6;max-width:640px;margin:0 auto 28px}
.heroacts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
/* light sections */
.band2{background:var(--panel2)}
.two-c{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.two-img{aspect-ratio:5/4;border-radius:16px;background-size:cover;background-position:center;box-shadow:0 30px 60px -30px rgba(34,28,23,.35)}
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ccard{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;overflow:hidden;display:block;transition:transform .3s,box-shadow .3s,border-color .3s;box-shadow:0 1px 0 rgba(120,100,70,.04)}
.ccard:hover{transform:translateY(-5px);border-color:var(--rule);box-shadow:0 24px 44px -28px rgba(34,28,23,.28)}
.ccardimg{height:158px;background-size:cover;background-position:center}
.ccardp{padding:20px}.ccat{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.cname{font-family:"Playfair Display",serif;color:var(--heading);font-size:20px;margin:7px 0 8px}
.ccardp p{color:var(--soft);font-size:13.5px;line-height:1.6}
.catblock{margin-bottom:44px}.catk{font-family:"Playfair Display",serif;color:var(--heading);font-size:22px;margin-bottom:18px}
/* doctors scrim reveal */
.c3a{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1000px;margin:0 auto}
.c3a-card{position:relative;display:block;aspect-ratio:3/4;border-radius:10px;overflow:hidden;cursor:pointer}
.c3a-img{position:absolute;inset:0;background-size:cover;background-position:center 20%;transition:transform .6s ease}
.c3a-card:hover .c3a-img{transform:scale(1.05)}
.c3a-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(34,28,23,.82) 0%,transparent 55%)}
.c3a-info{position:absolute;left:0;right:0;bottom:0;padding:22px}
.c3nm{color:#fff;font-family:"Playfair Display",serif;font-size:22px}.c3rl{color:var(--gold-light);font-size:12.5px;margin-top:3px}
.c3a-reveal{max-height:0;opacity:0;overflow:hidden;transition:max-height .45s ease,opacity .45s ease}
.c3a-reveal p{color:rgba(255,255,255,.85);font-size:12.5px;line-height:1.55;margin:10px 0 8px}
.c3link{color:var(--gold-light);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.c3a-card:hover .c3a-reveal{max-height:160px;opacity:1}
/* dark accent band (testimonial teaser) */
.darkband{background:var(--ink);color:#fff}
.darkband .tquote{max-width:760px;margin:0 auto;text-align:center}
.qm{font-family:"Playfair Display",serif;font-size:70px;color:var(--gold);line-height:.5;display:block}
.bigq{font-family:"Playfair Display",serif;font-size:clamp(24px,3.4vw,34px);line-height:1.35;color:#fff;margin:8px 0 16px}
.bigq.dark-q{color:var(--heading)}
.stars{color:var(--gold);letter-spacing:2px}
.tby{color:rgba(247,242,234,.75);font-size:13px;margin-top:8px}
.darkband .tby{color:rgba(247,242,234,.7)}
/* blog cards */
.m1grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mcard{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;overflow:hidden;display:block;transition:transform .3s,border-color .3s,box-shadow .3s}
.mcard:hover{transform:translateY(-5px);border-color:var(--rule);box-shadow:0 24px 44px -28px rgba(34,28,23,.25)}
.mimg{position:relative;height:168px;background-size:cover;background-position:center}
.mpad{padding:18px}.mcat{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.mtt{font-family:"Playfair Display",serif;color:var(--heading);font-size:18px;line-height:1.25;margin:8px 0 10px}
.mmeta{display:flex;gap:9px;align-items:center;color:var(--soft);font-size:12px}
.rav{width:24px;height:24px;border-radius:50%;background-size:cover;background-position:center 26%;box-shadow:0 0 0 1.5px var(--bronze);flex:0 0 auto}
.dot{width:3px;height:3px;border-radius:50%;background:var(--soft);display:inline-block}
.playb{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(247,242,234,.94);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px -6px rgba(0,0,0,.4);transition:transform .3s}
.playb span{width:0;height:0;border-left:15px solid #221C17;border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:3px}
.mcard:hover .playb{transform:translate(-50%,-50%) scale(1.08)}
/* page head (light) */
.pagehead{padding:130px 26px 12px;max-width:1160px;margin:0 auto}.ph-in{max-width:820px}
/* condition hero (#09 oversized serif, dark accent) */
.condhero{position:relative;min-height:470px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;overflow:hidden;padding-top:64px}
.condhero.shorthero{min-height:400px}
.condbg{position:absolute;inset:0;background-size:cover;background-position:center 28%;filter:brightness(.85)}
.condsc{position:absolute;inset:0;background:rgba(34,28,23,.56)}
.condhero .eyebrow{color:#fff}
.condin{position:relative;max-width:800px;padding:40px 24px}
.crumb{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(247,242,234,.7);margin-bottom:16px}
.crumb a{color:var(--gold-light)}
.condtitle{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(46px,8vw,88px);line-height:.98;letter-spacing:-.01em;margin-top:12px;color:#fff}
.condsub{color:rgba(247,242,234,.88);font-size:clamp(15px,2vw,19px);margin:16px auto 0;max-width:540px}
.condhero .btn-cta{margin-top:24px}
/* article (light content) */
.artwrap{max-width:1040px;margin:0 auto;padding:52px 26px}
.doc-article{font-size:17px;line-height:1.5;letter-spacing:normal;color:var(--text)}
.doc-article p{margin:0 0 16px}
.doc-article h2{font-family:"Playfair Display",serif;font-size:35px;line-height:1.15;margin:40px 0 14px;color:var(--heading)}
.doc-article h3{font-family:"Playfair Display",serif;font-size:26px;line-height:1.2;margin:30px 0 10px;color:var(--heading)}
.doc-article h4{font-family:"Playfair Display",serif;font-weight:500;font-size:22px;line-height:1.25;margin:24px 0 8px;color:var(--heading)}
.doc-article strong{color:var(--heading)}
.doc-article ul,.doc-article ol{margin:0 0 16px;padding-left:40px;list-style-position:outside}.doc-article li{margin-bottom:8px;padding-left:4px}
.lead-p{font-size:17px}
.dc{float:left;font-family:"Playfair Display",serif;font-size:66px;line-height:.82;padding:6px 12px 0 0;color:var(--accent)}
.pull{position:relative;font-family:"Newsreader",Georgia,serif;font-style:italic;font-size:22px;line-height:1.5;color:#7a5e2f;text-align:center;padding:34px 28px;margin:36px 0;background:linear-gradient(90deg,var(--bg) 0%,#FFFFFF 17%,#FFFFFF 83%,var(--bg) 100%)}
.pull::before,.pull::after{content:"";position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.pull::before{top:0}
.pull::after{bottom:0}
.pull cite{display:block;font-family:"Open Sans",sans-serif;font-style:normal;font-size:14px;color:var(--soft);margin-top:14px}
.tablewrap{overflow-x:auto;margin:0 0 22px}table{border-collapse:collapse;width:100%;font-size:14px}
th,td{border:1px solid var(--cardbd);padding:10px 12px;text-align:left}th{background:var(--panel2);color:var(--heading);font-family:"Open Sans"}
.faq{border-top:1px solid var(--cardbd);padding:18px 0}
.faqq{font-family:"Playfair Display",serif;color:var(--heading);font-size:18px;margin-bottom:8px}
.faqa{color:var(--soft);font-size:15px;line-height:1.7}
/* blog post header (magazine tint, dark accent) */
.mhead{position:relative;min-height:66vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}
.mhead .cover{position:absolute;inset:0;background-size:cover;background-position:center 30%}
.mhead .msc{position:absolute;inset:0;background:linear-gradient(120deg,rgba(34,28,23,.82),rgba(156,126,69,.5))}
.mhin{position:relative;max-width:820px;padding:120px 24px 40px}
.tag-on{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(34,28,23,.5);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 13px}
.mhead h1{font-family:"Playfair Display",serif;font-weight:400;color:#fff;font-size:clamp(30px,5vw,54px);line-height:1.06;margin:16px 0 14px}
.msub{color:rgba(247,242,234,.9);font-size:17px;line-height:1.6;max-width:620px;margin:0 auto 22px;font-style:italic}
.mbyline{display:flex;gap:13px;align-items:center;justify-content:center}
.mbyline .av{width:48px;height:48px;border-radius:50%;background-size:cover;background-position:center 26%;box-shadow:0 0 0 2px var(--bronze)}
.mbyline .who{color:#fff;font-weight:600;font-size:14px}.mbyline .role{color:var(--gold-light);font-size:12px}.mbyline .meta{color:rgba(247,242,234,.75);font-size:12px;margin-top:2px}
.pagewide{max-width:1000px;margin:0 auto;padding:0 26px}
.blogwrap{max-width:1040px;margin:0 auto;padding:48px 26px 0;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:30px;align-items:start}
.article{max-width:none}
.brail{position:sticky;top:100px;display:flex;flex-direction:column;align-items:center;gap:18px}
.share{display:flex;flex-direction:column;gap:11px}
.sb{width:38px;height:38px;border-radius:50%;border:1px solid var(--cardbd);color:var(--soft);display:flex;align-items:center;justify-content:center;font-size:13px;cursor:pointer;font-weight:600;transition:.25s}
.sb:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}
.cta-box{background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--cardbd);border-radius:18px;padding:40px 34px;margin:44px auto 0;text-align:center}
.cta-box h3{font-family:"Playfair Display",serif;color:var(--heading);font-size:25px;margin:10px 0 12px}
.cta-box p{font-size:15.5px;line-height:1.7;color:var(--soft);margin:0 auto 14px;max-width:520px}
.authorwrap{margin:80px auto 0}
.author{background:var(--panel);border:1px solid var(--cardbd);border-top:3px solid var(--accent);border-radius:0 0 18px 18px;padding:0 34px 34px;text-align:center}
.author .abig{display:block;width:104px;height:104px;border-radius:50%;background-size:cover;background-position:center 24%;box-shadow:0 0 0 4px var(--panel),0 0 0 6px var(--bronze);margin:-54px auto 14px}
.author .an{font-family:"Playfair Display",serif;font-size:22px;color:var(--heading);margin-top:6px}
.author .ar{color:var(--accent);font-size:12.5px;margin-top:3px}
.author .abio{font-size:14.5px;line-height:1.7;color:var(--soft);max-width:520px;margin:12px auto 0}
.author .aacts{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.more{margin:58px auto 0}.rhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:20px}
.rk{font-family:"Playfair Display",serif;font-size:23px;color:var(--heading)}.rall{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
/* white paper */
.wp-cat{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.wp-title{font-family:"Playfair Display",serif;font-size:clamp(26px,3.6vw,38px);line-height:1.15;color:var(--heading)}
.wp-meta{color:var(--soft);font-size:13.5px;margin:12px 0 22px}
.wp-img{width:100%;border-radius:14px;border:1px solid var(--cardbd)}
.wp-acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
/* about / doctors */
.dfeatgrid{display:grid;gap:24px;max-width:820px;margin:0 auto}
.dfeat{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;padding:24px}
.docav-big{width:104px;height:104px;border-radius:50%;background-size:cover;background-position:center 22%;box-shadow:0 0 0 2px var(--bronze)}
.docn{font-family:"Playfair Display",serif;color:var(--heading);font-size:19px}.docr{color:var(--accent);font-size:12.5px;margin-top:3px}.docr.big{font-size:14px;margin-top:6px}
.bl{color:var(--soft);font-size:13.5px;line-height:1.6;margin:8px 0 10px}
.docprof{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;max-width:1080px;margin:0 auto;padding:130px 26px 40px;align-items:center}
.dp-photo{aspect-ratio:4/5;border-radius:18px;background-size:cover;background-position:center 20%;box-shadow:0 0 0 2px var(--bronze),0 34px 60px -30px rgba(34,28,23,.35)}
.specs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.spec{font-size:12px;color:var(--accent);border:1px solid var(--cardbd);background:var(--panel2);border-radius:999px;padding:6px 13px}
.dpacts{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
@media(max-width:820px){.docprof{grid-template-columns:1fr}}
.drow{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:720px;margin:0 auto}
.doc{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px;border-radius:12px;transition:.25s}
.doc:hover{background:var(--panel2)}
.light-drow .dn{color:var(--heading)}
.dav{width:74px;height:74px;border-radius:50%;background-size:cover;background-position:center 24%;box-shadow:0 0 0 2px var(--bronze);transition:transform .3s}
.doc:hover .dav{transform:scale(1.05)}
.dn{font-family:"Playfair Display",serif;color:var(--heading);font-size:15px;margin-top:10px}.dr{color:var(--accent);font-size:11.5px;margin-top:2px}
/* testimonials */
.drnote{max-width:520px;margin:26px auto 0;background:var(--panel);border:1px solid var(--cardbd);border-left:3px solid var(--accent);border-radius:12px;padding:20px;text-align:left}
.drnk{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.drnote p{color:var(--soft);font-size:14px;line-height:1.6;margin-top:8px}
.tmasonry{columns:3;column-gap:22px;margin-top:40px}
.tc{background:var(--panel);border:1px solid var(--cardbd);border-radius:12px;padding:22px;margin-bottom:22px;break-inside:avoid}
.tc blockquote{font-size:14px;line-height:1.6;color:var(--text);margin:8px 0}
.tc figcaption{font-size:12.5px;color:var(--heading);font-weight:600}.tc figcaption span{color:var(--soft);font-weight:400}
@media(max-width:900px){.tmasonry{columns:2}}@media(max-width:600px){.tmasonry{columns:1}}
/* media page */
.peek .pk-vp{overflow:hidden;padding:10px 0}
.peek .pk-track{display:flex;gap:26px;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.pk-slide{flex:0 0 min(620px,80vw);opacity:.42;transform:scale(.9);transition:.5s;cursor:pointer}
.pk-slide.active{opacity:1;transform:scale(1)}
.pk-frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 24px 50px -24px rgba(34,28,23,.4)}
.pk-img{position:absolute;inset:0;background-size:cover;background-position:center}
.pk-sc{position:absolute;inset:0;background:rgba(34,28,23,.38)}
.dur{position:absolute;top:14px;right:14px;background:rgba(34,28,23,.8);color:#fff;font-size:12px;padding:3px 10px;border-radius:5px}
.play2{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:rgba(247,242,234,.92);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
.play2 span{width:0;height:0;border-left:16px solid #221C17;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}
.pk-cap{position:absolute;left:22px;right:22px;bottom:20px;color:#fff}.pk-cap .fmt{color:var(--gold-light)}
.fmt{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.pk-t{font-family:"Playfair Display",serif;font-size:24px;margin-top:6px;color:#fff}
.pk-nav{display:flex;gap:10px;justify-content:center;align-items:center;margin-top:18px}
.arw{width:44px;height:44px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);background:transparent;cursor:pointer;font-size:16px}
.arw:hover{background:var(--accent);color:#fff}
.pk-dots{display:flex;gap:7px;margin:0 10px}
.pk-dot{width:7px;height:7px;border-radius:50%;background:var(--cardbd);border:none;cursor:pointer;padding:0;transition:.3s}
.pk-dot.on{background:var(--accent);width:22px;border-radius:4px}
.mediahead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.mtabs{display:flex;gap:8px;flex-wrap:wrap}
.mtab{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);border:1px solid var(--cardbd);border-radius:999px;padding:8px 15px;cursor:pointer;background:transparent}
.mtab.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.gcard{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;overflow:hidden}
.gcard.hide{display:none}.gcard .pic{position:relative;height:184px}
.gpad{padding:20px}.gtt{font-family:"Playfair Display",serif;color:var(--heading);font-size:19px;margin:8px 0 10px}
.glnk{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);cursor:pointer}
.featstrip{max-width:1160px;margin:0 auto;padding:34px 26px;border-top:1px solid var(--cardbd);border-bottom:1px solid var(--cardbd)}
.flbl{text-align:center;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin-bottom:22px}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.mrow{display:flex;gap:56px;width:max-content;animation:mroll 34s linear infinite}
.marquee:hover .mrow{animation-play-state:paused}
.logo{font-family:"Playfair Display",serif;font-size:20px;color:var(--soft);white-space:nowrap;opacity:.85}
@keyframes mroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* contact */
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:start}
.cform-card{background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;padding:28px}
.ci-addr{color:var(--soft);font-size:14.5px;line-height:1.6;margin-bottom:10px}
.ci-line{display:block;color:var(--accent);font-size:15px;padding:3px 0}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}}
/* forms */
.sform .frow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.sform input,.sform textarea{width:100%;background:var(--fieldbg);border:1px solid var(--fieldbd);border-radius:3px;padding:12px 13px;color:var(--text);font-family:"Open Sans";font-size:13.5px;outline:none;transition:border-color .2s}
.sform input:focus,.sform textarea:focus{border-color:var(--accent)}
.sform textarea{min-height:70px;resize:vertical;margin-top:10px}
.flab{font-size:12px;color:var(--soft);margin:14px 0 9px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{font-size:12px;color:var(--text);border:1px solid var(--fieldbd);background:var(--fieldbg);border-radius:999px;padding:7px 13px;cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--accent)}.chip.on{color:#fff;background:var(--accent);border-color:var(--accent)}
/* cta band (dark accent) */
.ctaband{background:var(--ink)}
.cta-inner{max-width:720px;margin:0 auto;padding:64px 26px;text-align:center}
.cta-inner h2{color:#fff;margin:12px 0 10px}.cta-inner p{color:rgba(247,242,234,.8);font-size:15.5px;margin-bottom:22px}
/* ---- FOOTER (full-width bands) ---- */
.gmap{width:100%;border:1px solid var(--cardbd);border-radius:14px;display:block}
/* Our Doctors band (light) */
.foot-docs{background:var(--ink);padding:64px 26px}
.fd-in{max-width:1000px;margin:0 auto}
.foot-docs h2{text-align:center;color:#fff}
.foot-sub{font-family:"Playfair Display",serif;font-weight:500;color:var(--gold-light);font-size:22px;margin-top:10px;text-align:center}
.foot-docs .c3a{margin-top:34px}
.fdrow{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:760px;margin:30px auto 0}
.fdoc{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px;border-radius:14px;transition:.25s}
.fdoc:hover{background:var(--panel)}
.fdav{width:96px;height:96px;border-radius:50%;background-size:cover;background-position:center 22%;box-shadow:0 0 0 2px var(--bronze);transition:transform .3s}
.fdoc:hover .fdav{transform:scale(1.04)}
.fdn{font-family:"Playfair Display",serif;color:var(--heading);font-size:17px;margin-top:12px}
.fdr{color:var(--accent);font-size:12px;margin-top:3px}
@media(max-width:640px){.fdrow{grid-template-columns:1fr}}
/* Schedule band (full-width, light) */
.foot-sched{background:var(--panel2);padding:64px 26px;border-top:1px solid var(--cardbd)}
.fsc-in{max-width:640px;margin:0 auto}
.fsc-in .sform{margin-top:24px}
/* Map band (full-width, tinted) */
.foot-map{line-height:0}
.foot-map .gmap{width:100%;height:440px;border:none;border-radius:0;filter:sepia(.5) saturate(.6) hue-rotate(-6deg) brightness(1.05) contrast(.9)}
/* Footer detail columns (dark) */
.ft{background:var(--ink);color:rgba(247,242,234,.85)}
.ft-cols{max-width:1160px;margin:0 auto;padding:52px 26px 34px;display:grid;grid-template-columns:1.6fr 1fr 1.1fr 1.1fr;gap:36px}
.fbrand .ft-t{font-family:"Playfair Display",serif;font-size:22px;letter-spacing:.24em;color:#fff}
.fbrand .ft-s{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-light);margin-top:5px;display:block}
.ft-abt{color:rgba(247,242,234,.6);font-size:13px;line-height:1.7;margin:16px 0 16px;max-width:340px}
.ft-social{display:flex;gap:10px}
.ft-social a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(194,160,99,.3);color:var(--gold-light);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;text-decoration:none;transition:.2s}
.ft-social a:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.ft .mck{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light);margin-bottom:14px}
.ft-col a{display:block;color:rgba(247,242,234,.72);font-size:13px;padding:5px 0;text-decoration:none}
.ft-col a:hover{color:#fff}
.ft-hr{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:rgba(247,242,234,.72);padding:3px 0}
.ft-hr span:first-child{color:rgba(247,242,234,.9)}
.ft-note{font-size:12px;color:var(--gold-light);margin-top:8px}
.ft-addr{color:rgba(247,242,234,.72);font-size:13px;line-height:1.6;margin-bottom:8px}
.ft-line{display:block;color:var(--gold-light);font-size:13.5px;padding:3px 0;text-decoration:none}
.ft-referral{margin-top:18px;font-size:12.5px;color:rgba(247,242,234,.55)}
.ft-referral a{color:var(--gold-light);text-decoration:none}
.copy{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 26px;border-top:1px solid rgba(194,160,99,.16);font-size:12px;color:rgba(247,242,234,.6);max-width:1160px;margin:0 auto}
.copy .clinks{display:flex;gap:18px}.copy .clinks a{color:rgba(247,242,234,.6)}
@media(max-width:860px){.ft-cols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ft-cols{grid-template-columns:1fr}}
@media(max-width:900px){.nav,.phone{display:none}.burger{display:block}.two-c,.contact-grid{grid-template-columns:1fr}.cgrid,.m1grid,.pgrid,.menucols{grid-template-columns:1fr 1fr}.megain{grid-template-columns:1fr}.cgrid.three{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cgrid,.m1grid,.pgrid,.c3a,.ft .drow,.menucols,.cgrid.three{grid-template-columns:1fr}.blogwrap{grid-template-columns:1fr}.brail{flex-direction:row;justify-content:center;margin-top:30px}.share{flex-direction:row}}

/* ============ DOCTOR PROFILE (image hero + full bio) ============ */
.dhero{position:relative;background-size:cover;background-position:left center;min-height:640px;display:flex;align-items:center}
.dhero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(34,28,23,0) 24%,rgba(34,28,23,.35) 52%,rgba(34,28,23,.72) 100%)}
.dhero-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:110px 40px 50px;width:100%}
.dhero-txt{margin-left:auto;max-width:760px;color:#fff}
.dh-eye{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-light);font-weight:700}
.dhero-txt h1{font-family:"Playfair Display",serif;font-weight:500;color:#fff;font-size:clamp(34px,4.6vw,50px);line-height:1.06;margin:10px 0 8px}
.dh-cred{color:var(--gold-light);font-weight:600;font-size:14px}
.dh-mis{font-family:"Playfair Display",serif;font-style:italic;font-size:21px;color:#fff;margin:18px 0 2px}
.dh-mis2{color:rgba(247,242,234,.8);font-size:15px;margin:0}
.dhero-txt .btn-cta{margin-top:20px}

.dprofile .dp-wrap{max-width:900px;margin:0 auto;padding:8px 26px}
.dp-sec{padding:40px 0;border-bottom:1px solid var(--cardbd)}
.dp-sec:last-child{border-bottom:none}
.dp-sec h2{font-family:"Playfair Display",serif;font-weight:500;color:var(--heading);font-size:30px;margin:0 0 18px}
.dp-prose p{font-size:16.5px;line-height:1.7;margin:0 0 16px;color:var(--text)}
.dp-ul{margin:0 0 16px;padding-left:22px}.dp-ul li{margin-bottom:8px;font-size:16px}
.dp-famph{margin:26px 0 0}
.dp-famph-box{border:2px dashed var(--bronze);background:var(--panel2);border-radius:14px;padding:44px 20px;
display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.dp-famph-t{font-family:"Playfair Display",serif;font-size:20px;color:var(--heading)}
.dp-famph-s{font-size:13px;color:var(--soft)}
.dp-edu{max-width:none}
.dp-row{display:flex;gap:16px;padding:11px 0;border-bottom:1px solid var(--cardbd)}
.dp-row:last-child{border-bottom:none}
.dp-yr{font-weight:700;color:var(--gold-dark);font-size:13px;min-width:96px;padding-top:2px}
.dp-rt{display:flex;flex-direction:column}.dp-rt b{color:var(--heading);font-size:15px}.dp-rt span{color:var(--soft);font-size:13.5px}
.dp-credcards{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.dp-credcards.one{grid-template-columns:1fr;max-width:560px}
.dp-credcard{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;padding:26px 28px;box-shadow:0 10px 26px -20px rgba(34,28,23,.4)}
.dp-credcard h3{font-family:"Playfair Display",serif;font-weight:500;color:var(--heading);font-size:19px;margin:0 0 12px}
.dp-blist{margin:0;padding-left:20px}.dp-blist li{margin-bottom:9px;font-size:14.5px}
.dp-tl{padding-left:2px}
.dp-tl-i{display:grid;grid-template-columns:120px 16px 1fr;align-items:start}
.dp-tl-y{font-size:13px;font-weight:700;color:var(--gold-dark);padding-top:1px}
.dp-tl-d{position:relative;width:16px;display:flex;justify-content:center}
.dp-tl-d::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--gold);margin-top:5px;box-shadow:0 0 0 3px rgba(194,160,99,.2)}
.dp-tl-t{padding:0 0 18px 22px;font-size:14.5px;border-left:2px solid var(--cardbd);margin-left:-8px}
.dp-tl-i:last-child .dp-tl-t{border-left-color:transparent}
/* featured */
.dp-featbook,.dp-featdoc{display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:center;background:var(--panel);
border:1px solid var(--cardbd);border-radius:16px;padding:28px;margin-bottom:22px;box-shadow:0 14px 34px -24px rgba(34,28,23,.45)}
.dp-featk{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dark);font-weight:700;margin-bottom:6px}
.dp-featbody h3{font-family:"Playfair Display",serif;font-weight:500;color:var(--heading);font-size:24px;margin:0 0 10px}
.dp-featbody p{font-size:15.5px;line-height:1.65;margin:0 0 4px;color:var(--text)}
.dp-bookcover{aspect-ratio:3/4.2;background:linear-gradient(150deg,#3a2f22,#2C241D);border-radius:6px;padding:22px 18px;
display:flex;flex-direction:column;gap:8px;color:#fff;position:relative;box-shadow:0 16px 30px -16px rgba(34,28,23,.7),inset 5px 0 0 rgba(194,160,99,.5)}
.bc-k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light)}
.bc-t{font-family:"Playfair Display",serif;font-size:19px;line-height:1.2}
.bc-a{font-size:10.5px;color:rgba(247,242,234,.7);margin-top:auto}
.bc-ph{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:rgba(247,242,234,.45)}
.dp-poster{aspect-ratio:3/4.2;background:linear-gradient(150deg,#4a3d2c,#241d17);border-radius:6px;position:relative;
display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;box-shadow:0 16px 30px -16px rgba(34,28,23,.7)}
.dp-play{width:54px;height:54px;border-radius:50%;background:rgba(194,160,99,.92);position:relative}
.dp-play::before{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent #fff}
.dp-pt{font-family:"Playfair Display",serif;font-size:18px;color:#fff;text-align:center;padding:0 14px}
/* meet other doctors */
.dp-team{background:var(--panel2);padding:60px 26px;text-align:center}
.dp-team-in{max-width:900px;margin:0 auto}
.dp-team-in h2{font-family:"Playfair Display",serif;font-weight:500;color:var(--heading);font-size:30px;margin:8px 0 4px}
.dp-team-sub{color:var(--soft);margin:0 0 30px}
.dp-odgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.dp-odoc{position:relative;display:block;aspect-ratio:4/3;border-radius:12px;overflow:hidden;text-decoration:none}
.dp-odoc-img{position:absolute;inset:0;background-size:cover;background-position:center 18%;transition:transform .6s}
.dp-odoc:hover .dp-odoc-img{transform:scale(1.05)}
.dp-odoc-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(34,28,23,.85),transparent 58%)}
.dp-odoc-info{position:absolute;left:0;right:0;bottom:0;padding:22px;text-align:left}
.dp-odoc-n{font-family:"Playfair Display",serif;color:#fff;font-size:22px}
.dp-odoc-r{color:var(--gold-light);font-size:12.5px;margin-top:3px}
.dp-odoc-link{color:var(--gold-light);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:inline-block;margin-top:8px}
@media(max-width:800px){.dhero{min-height:460px}.dhero-in{padding:90px 24px 30px}.dhero-txt{margin-left:0;max-width:none}
.dhero::after{background:linear-gradient(to top,rgba(34,28,23,.85),rgba(34,28,23,.35))}
.dp-credcards,.dp-odgrid{grid-template-columns:1fr}.dp-featbook,.dp-featdoc{grid-template-columns:1fr}
.dp-bookcover,.dp-poster{max-width:220px}}

/* ==== doctor profile v2 additions ==== */
.dp-famph{margin:26px 0 0}
.dp-famph img{width:100%;border-radius:14px;box-shadow:0 16px 40px -24px rgba(34,28,23,.55)}
.dp-famph figcaption{text-align:center;font-size:12.5px;color:var(--soft);margin-top:10px;font-style:italic}
.dp-featimg{display:flex;align-items:center;justify-content:center}
.dp-featimg img{width:100%;max-height:300px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(34,28,23,.35))}
.dp-featbtns{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}
.dp-featbody h3{margin-bottom:12px}
.dp-featbody p{margin-bottom:0}
.dp-team{background:var(--surface);padding:64px 26px;text-align:center}
.dp-team-in{max-width:1000px;margin:0 auto}
.dp-team .eyebrow{color:var(--gold-light)}
.dp-team-in h2{font-family:"Playfair Display",serif;font-weight:500;color:#fff;font-size:30px;margin:8px 0 4px}
.dp-team-sub{color:rgba(247,242,234,.72);margin:0 0 34px}
.dp-team-grid{grid-template-columns:repeat(2,1fr);max-width:720px;margin:0 auto}
.featpage-in{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:center;max-width:1000px;margin:0 auto}
.featpage-img{display:flex;justify-content:center}
.featpage-img img{width:100%;max-height:420px;object-fit:contain;filter:drop-shadow(0 22px 40px rgba(34,28,23,.4))}
.featpage-body h2{margin:8px 0 14px}
.featpage-note{color:var(--soft);font-size:14px;margin:14px 0 20px;font-style:italic}
@media(max-width:800px){.dp-team-grid{grid-template-columns:1fr;max-width:360px}.featpage-in{grid-template-columns:1fr}}

/* ==== Google reviews section ==== */
.grev{padding-top:44px}
.grev-head{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--cardbd)}
.grev-hl{display:flex;align-items:center;gap:18px}
.grev-score{font-family:"Playfair Display",serif;font-size:52px;color:var(--heading);line-height:1}
.gr-stars{color:var(--gold);letter-spacing:2px;font-size:15px}
.gr-stars.big{font-size:21px}
.grev-sub{display:flex;align-items:center;gap:7px;color:var(--soft);font-size:14px;margin-top:5px}
.grev-sub b{color:var(--heading);font-weight:600}
.grev-hr{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.gr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gr-card{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;padding:22px;display:flex;flex-direction:column;box-shadow:0 10px 26px -20px rgba(34,28,23,.4)}
.gr-card.gr-hidden{display:none}
.gr-top{display:flex;align-items:center;gap:11px}
.gr-av{width:42px;height:42px;border-radius:50%;color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-family:"Playfair Display",serif;background-position:center;background-size:cover}
.gr-meta{flex:1;min-width:0}
.gr-name{font-weight:600;color:var(--heading);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gr-date{color:var(--soft);font-size:12px}
.gr-g{flex:0 0 auto;line-height:0}
.gr-card .gr-stars{margin:12px 0 8px}
.gr-text{color:var(--text);font-size:14px;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.darkband.slim .sect{padding-top:52px;padding-bottom:46px}
@media(max-width:1000px){.gr-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.gr-grid{grid-template-columns:1fr}.grev-head{flex-direction:column;align-items:flex-start}}

/* ==== review "Read more" + modal ==== */
.gr-readmore{display:inline-block;margin-top:10px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);cursor:pointer;background:none;border:none;padding:0;font-family:"Open Sans",sans-serif}
.gr-readmore:hover{text-decoration:underline}
.grm-overlay{position:fixed;inset:0;background:rgba(34,28,23,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:300;padding:24px}
.grm-overlay.open{display:flex}
.grm{background:var(--panel);border-radius:16px;max-width:560px;width:100%;max-height:82vh;overflow:auto;padding:34px 34px 32px;position:relative;box-shadow:0 30px 70px -28px rgba(34,28,23,.65)}
.grm-close{position:absolute;top:14px;right:18px;background:none;border:none;font-size:28px;line-height:1;color:var(--soft);cursor:pointer}
.grm-close:hover{color:var(--heading)}
.grm-top{display:flex;align-items:center;gap:13px;margin-bottom:2px}
.grm-avwrap .gr-av{width:50px;height:50px;font-size:21px}
.grm-name{font-weight:600;color:var(--heading);font-size:16px}
.grm-date{color:var(--soft);font-size:12.5px}
.grm-stars{color:var(--gold);letter-spacing:2px;font-size:17px;margin:14px 0 12px}
.grm-text{color:var(--text);font-size:15px;line-height:1.72;white-space:pre-line;margin:0}
.grm-g{position:absolute;bottom:26px;right:30px}

/* ==== condition-page live filtered reviews slider (Newsreader format) ==== */
.crs{position:relative;margin:38px 0;padding:36px 28px;text-align:center;background:linear-gradient(90deg,var(--bg) 0%,#FFFFFF 17%,#FFFFFF 83%,var(--bg) 100%)}
.crs::before,.crs::after{content:"";position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.crs::before{top:0}.crs::after{bottom:0}
.crs-stage{position:relative;min-height:184px;max-width:760px;margin:0 auto}
.crs-q{position:absolute;left:0;right:0;top:0;opacity:0;transition:opacity .7s;pointer-events:none}
.crs-q.on{opacity:1;position:relative;pointer-events:auto}
.crs-text{font-family:"Newsreader",Georgia,serif;font-style:italic;font-size:21px;line-height:1.55;color:#7a5e2f;margin:0;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.crs-more{display:inline-block;margin-top:10px;background:none;border:none;cursor:pointer;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);font-family:"Open Sans",sans-serif}
.crs-more:hover{text-decoration:underline}
.crs-by{display:flex;align-items:center;justify-content:center;gap:11px;margin-top:20px}
.crs-av{width:44px;height:44px;border-radius:50%;color:#fff;font-weight:700;font-family:Georgia,serif;display:flex;align-items:center;justify-content:center;font-size:18px;flex:0 0 auto;background-size:cover;background-position:center}
.crs-byinfo{text-align:left}
.crs-name{font-family:"Open Sans",sans-serif;font-weight:600;color:var(--heading);font-size:14.5px;line-height:1.2}
.crs-sub{font-family:"Open Sans",sans-serif;color:var(--soft);font-size:12.5px;display:flex;align-items:center;gap:5px;margin-top:2px}
.crs-sub svg{width:13px;height:13px}
.crs-dots{display:flex;gap:7px;justify-content:center;margin-top:24px}
.crs-dot{width:7px;height:7px;border-radius:50%;border:none;background:var(--cardbd);cursor:pointer;padding:0}.crs-dot.on{background:var(--gold-dark)}
.crm-ov{position:fixed;inset:0;background:rgba(34,28,23,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:300;padding:24px}
.crm-ov.open{display:flex}
.crm{background:var(--panel);border-radius:16px;max-width:560px;width:100%;max-height:82vh;overflow:auto;padding:34px;position:relative;box-shadow:0 30px 70px -28px rgba(34,28,23,.65)}
.crm-close{position:absolute;top:14px;right:18px;background:none;border:none;font-size:28px;line-height:1;color:var(--soft);cursor:pointer}
.crm-close:hover{color:var(--heading)}
.crm-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.crm-top .crs-av{width:50px;height:50px;font-size:21px}
.crm-name{font-weight:600;color:var(--heading);font-size:16px}
.crm-sub{color:var(--soft);font-size:12.5px;display:flex;align-items:center;gap:5px;margin-top:2px}
.crm-text{color:var(--text);font-size:15px;line-height:1.72;white-space:pre-line;margin:0}
/* ==== Home reviews auto-scroll marquee ==== */
.rmq-sect .sechead h2.serif{margin-bottom:0}
.rmq-sub{font-family:"Newsreader",Georgia,serif;font-size:21px;line-height:1.55;color:var(--soft);font-weight:400;max-width:660px;margin:12px auto 0}
.rmq-sum{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:26px;flex-wrap:wrap}
.rmq{margin-top:34px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.rmq-row{display:flex;gap:20px;width:max-content;animation:rmqroll 90s linear infinite}
.rmq-row+.rmq-row{margin-top:20px;animation-duration:104s}
.rmq-row.rev{animation-direction:reverse}
.rmq:hover .rmq-row{animation-play-state:paused}
@keyframes rmqroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rmq-card{width:340px;flex:0 0 auto;white-space:normal}
.rmq-card .gr-text{-webkit-line-clamp:4}
@media(max-width:560px){.rmq-card{width:300px}}
/* ==== Testimonials live Google-reviews masonry wall ==== */
.gr-masonry{columns:3;column-gap:18px;margin-top:34px}
.gr-masonry .gr-card{display:block;margin-bottom:18px;break-inside:avoid}
.gr-masonry .gr-top{display:flex}
.gr-masonry .gr-text{-webkit-line-clamp:unset;display:block;overflow:visible}
@media(max-width:900px){.gr-masonry{columns:2}}
@media(max-width:600px){.gr-masonry{columns:1}}
/* ================= EVENTS ================= */
.ev-tag{display:inline-block;font-size:11px;letter-spacing:.05em;color:var(--gold-dark);background:rgba(194,160,99,.13);border:1px solid rgba(194,160,99,.34);border-radius:999px;padding:4px 11px;margin:0 5px 6px 0;font-weight:600}
.ev-pill{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--soft)}
.ev-pill svg{width:15px;height:15px;flex:0 0 auto;color:var(--gold-dark)}
.ev-empty{text-align:center;color:var(--soft);font-size:17px;padding:60px 0}
/* --- events listing (card grid) --- */
.evgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.evcard{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;overflow:hidden;box-shadow:0 14px 34px -26px rgba(34,28,23,.5);transition:transform .3s,box-shadow .3s}
.evcard:hover{transform:translateY(-4px);box-shadow:0 22px 44px -24px rgba(34,28,23,.5)}
.evc-img{height:158px;position:relative;background-size:cover;background-position:center}
.evc-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,28,23,.12),rgba(34,28,23,.68))}
.evc-badge{position:absolute;top:14px;left:14px;z-index:2;width:70px;text-align:center;border-radius:11px;overflow:hidden;background:var(--panel);border:1px solid rgba(255,255,255,.5)}
.evc-badge .m{display:block;background:var(--ink);color:var(--gold-light);font-size:10.5px;letter-spacing:.16em;font-weight:700;padding:4px 0}
.evc-badge .d{display:block;font-family:"Playfair Display",serif;color:var(--heading);font-size:27px;padding:4px 0 1px}
.evc-badge .y{display:block;font-size:9.5px;color:var(--soft);padding-bottom:5px}
.evc-free{position:absolute;top:16px;right:14px;z-index:2;background:var(--gold);color:var(--ink);font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:4px}
.evc-series{position:absolute;left:16px;bottom:11px;z-index:2;color:#fff;font-family:"Newsreader",serif;font-style:italic;font-size:15px}
.evc-pad{padding:19px 22px 22px;display:flex;flex-direction:column;flex:1}
.evcard h3{font-size:21px;margin-bottom:4px;color:var(--heading);font-family:"Playfair Display",serif;font-weight:400}
.evc-topic{font-family:"Newsreader",serif;font-style:italic;color:var(--gold-dark);font-size:14.5px;margin-bottom:13px}
.evc-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.evc-tags{margin-bottom:16px}
.evc-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}
.evc-host{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--soft)}
.evc-av{width:30px;height:30px;border-radius:50%;background:var(--bronze);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:"Playfair Display",serif;font-size:12.5px;flex:0 0 auto}
.evc-cta{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark)}
@media(max-width:900px){.evgrid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.evgrid{grid-template-columns:1fr}}
/* --- event detail hero --- */
.evhero{position:relative;color:#fff;min-height:400px;display:flex;align-items:flex-end;padding-top:96px}
.evhero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.62)}
.evhero-sc{position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,28,23,.34),rgba(34,28,23,.72))}
.evh-free{position:absolute;top:110px;right:26px;z-index:3;background:var(--gold);color:var(--ink);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 13px;border-radius:5px}
.evhero-in{position:relative;z-index:2;max-width:1160px;margin:0 auto;width:100%;padding:0 26px 46px}
.evh-series{font-family:"Newsreader",serif;font-style:italic;color:var(--gold-light);font-size:18px}
.evhero-in h1{color:#fff;font-family:"Playfair Display",serif;font-weight:400;font-size:clamp(32px,5vw,52px);line-height:1.06;margin:6px 0 10px}
.evh-topic{font-family:"Newsreader",serif;font-style:italic;font-size:21px;color:#f2e8d5;max-width:660px}
.evh-meta{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:24px}
.evh-m{display:flex;align-items:center;gap:9px;font-size:14.5px;color:#f0e7d7}
.evh-m svg{width:18px;height:18px;color:var(--gold-light);flex:0 0 auto}
/* --- event detail body --- */
.evp-sect{padding-top:48px}
.evp-body{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start}
.evp-main h2.serif{font-size:28px;margin:2px 0 14px;color:var(--heading)}
.evp-main h3.serif{font-size:20px;margin:28px 0 12px;color:var(--heading)}
.evp-main p{font-size:16px;margin-bottom:15px}
.evp-tags{margin-bottom:20px}
.agenda{border-left:2px solid rgba(194,160,99,.4);margin:8px 0}
.agenda .ag-it{display:flex;gap:18px;align-items:baseline;padding:0 0 20px 24px;position:relative}
.agenda .ag-it::before{content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--gold);border:2px solid var(--bg)}
.ag-tm{font-weight:700;color:var(--heading);font-size:14px;min-width:128px;flex:0 0 auto}
.ag-lb{color:var(--text)}
.hostcard{display:flex;gap:16px;align-items:center;background:var(--panel2);border:1px solid var(--cardbd);border-radius:14px;padding:20px}
.host-av{width:62px;height:62px;border-radius:50%;background:var(--bronze);color:#fff;display:flex;align-items:center;justify-content:center;font-family:"Playfair Display",serif;font-size:23px;flex:0 0 auto}
.host-nm{font-family:"Playfair Display",serif;font-size:19px;color:var(--heading)}
.host-rl{color:var(--soft);font-size:13.5px}
.venuecard{background:var(--panel);border:1px solid var(--cardbd);border-radius:14px;padding:22px}
.vn-name{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--heading);font-weight:600}
.vn-name svg{width:17px;height:17px;color:var(--gold-dark)}
.vn-addr{color:var(--soft);font-size:14px;margin-top:5px}
.vn-map{width:100%;height:180px;border:0;border-radius:10px;margin-top:14px}
/* --- signup card --- */
.evp-side{position:sticky;top:96px}
.evsignup{background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;padding:26px;box-shadow:0 20px 46px -28px rgba(34,28,23,.55)}
.evs-h{font-family:"Playfair Display",serif;font-size:22px;color:var(--heading)}
.evs-s{color:var(--soft);font-size:13.5px;margin:4px 0 16px}
.evs-seats{display:flex;align-items:center;gap:8px;background:rgba(194,160,99,.12);border:1px solid rgba(194,160,99,.3);border-radius:8px;padding:9px 12px;font-size:12.5px;color:var(--gold-dark);font-weight:600;margin-bottom:16px}
.evs-seats svg{color:var(--gold-dark)}
.evs-f{margin-bottom:13px}
.evs-f label{display:block;font-size:12px;letter-spacing:.03em;color:var(--heading);font-weight:600;margin-bottom:5px}
.evs-f .opt{color:var(--soft);font-weight:400}
.evs-f input,.evs-f select,.evs-f textarea{width:100%;background:var(--fieldbg);border:1px solid var(--fieldbd);border-radius:8px;padding:11px 13px;font-family:"Open Sans";font-size:14px;color:var(--text)}
.evs-f textarea{resize:vertical;min-height:62px}
.evs-two{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.evsignup .btn-cta{width:100%;margin-top:6px}
.evs-fine{font-size:11.5px;color:var(--soft);text-align:center;margin-top:12px;line-height:1.5}
.evs-err{display:none;font-size:12.5px;color:#a23;background:#faeceb;border:1px solid #e7c3c0;border-radius:8px;padding:9px 12px;margin-top:12px;text-align:center}
.evs-err.on{display:block}
.evs-ok{display:none;text-align:center;padding:16px 4px}
.evs-ok.on{display:block}
.evs-ic{width:56px;height:56px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}
.evs-ic svg{width:27px;height:27px}
@media(max-width:900px){.evp-body{grid-template-columns:1fr}.evp-side{position:static}}
/* --- condition-page promo banner --- */
.ev-promo{display:grid;grid-template-columns:88px 1fr auto;gap:22px;align-items:center;background:linear-gradient(120deg,#2a221b,#4a3826);color:#fff;border-radius:16px;padding:22px 26px;margin:0 0 34px;text-decoration:none;transition:transform .25s,box-shadow .25s}
.ev-promo:hover{transform:translateY(-2px);box-shadow:0 20px 40px -24px rgba(34,28,23,.7)}
.evp-db{background:#fff;border-radius:11px;overflow:hidden;text-align:center}
.evp-db .m{display:block;background:var(--gold);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.12em;padding:5px 0}
.evp-db .d{display:block;color:var(--ink);font-family:"Playfair Display",serif;font-size:29px;padding:5px 0 2px}
.evp-db .y{display:block;color:#6d5c48;font-size:10px;padding-bottom:6px}
.evp-mid .evp-series{font-family:"Newsreader",serif;font-style:italic;color:var(--gold-light);font-size:15px}
.evp-mid h3{color:#fff;font-family:"Playfair Display",serif;font-weight:400;font-size:22px;margin:3px 0 4px}
.evp-meta{color:#eadfce;font-size:13px}
.evp-btn{flex:0 0 auto;background:var(--gold);color:var(--ink);font-family:"Open Sans";font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:12px;padding:12px 22px;border-radius:3px;white-space:nowrap}
.ev-promo:hover .evp-btn{background:var(--gold-light)}
@media(max-width:680px){.ev-promo{grid-template-columns:1fr;text-align:center;justify-items:center}.evp-db{width:88px}}
/* ==== review card hover lift + click-to-expand ==== */
.gr-card{transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s,border-color .28s}
.gr-card:hover{transform:translateY(-5px);box-shadow:0 24px 44px -22px rgba(34,28,23,.55);border-color:rgba(194,160,99,.45)}
#gr-grid .gr-card{cursor:pointer}
#gr-grid .gr-card .gr-readmore{pointer-events:none}
.tw-sentinel{height:1px}
.tw-more{text-align:center;margin-top:26px}
.tw-more .btn-outline{cursor:pointer}
.tw-loading{text-align:center;color:var(--soft);font-size:13px;padding:22px 0;letter-spacing:.02em}
/* ================= BOOK (about) PAGE ================= */
.bookpage .bp-grid{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:start}
.bp-cover{position:sticky;top:96px;text-align:center}
.bp-cover img{width:100%;border-radius:10px;box-shadow:0 30px 60px -28px rgba(34,28,23,.6)}
.bp-cover .btn-cta{width:100%;margin-top:20px}
.bp-avail{color:var(--soft);font-size:12.5px;margin-top:10px;letter-spacing:.03em}
.bp-body h1.serif{font-size:clamp(30px,4vw,42px);line-height:1.1;color:var(--heading);margin-bottom:6px}
.bp-sub{font-family:"Newsreader",Georgia,serif;font-style:italic;color:var(--gold-dark);font-size:20px;margin-bottom:10px}
.bp-by{color:var(--soft);font-size:14px;margin-bottom:22px}
.bp-lead{font-size:18px;line-height:1.7;color:var(--heading);margin-bottom:16px}
.bp-body p{font-size:16px;margin-bottom:15px}
.bp-body h3.serif{font-size:22px;margin:28px 0 12px;color:var(--heading)}
.bp-hl{list-style:none;padding:0;margin:0 0 8px}
.bp-hl li{position:relative;padding:0 0 12px 30px;font-size:15.5px;color:var(--text)}
.bp-hl li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;background:rgba(194,160,99,.18);border:1px solid var(--gold)}
.bp-hl li::after{content:"";position:absolute;left:6px;top:7px;width:6px;height:9px;border-right:2px solid var(--gold-dark);border-bottom:2px solid var(--gold-dark);transform:rotate(42deg)}
.bp-authbox{background:var(--panel2);border:1px solid var(--cardbd);border-radius:14px;padding:24px 26px;margin-top:26px}
.bp-authbox h3.serif{margin-top:0}
.bp-auth{margin-top:14px}.bp-auth:first-of-type{margin-top:8px}
.bp-anm{font-weight:700;color:var(--heading);font-size:15px;margin-bottom:4px}
.bp-auth p{font-size:14px;color:var(--text);margin:0}
.bp-cta{margin-top:26px}
@media(max-width:820px){.bookpage .bp-grid{grid-template-columns:1fr;gap:30px}.bp-cover{position:static;max-width:280px;margin:0 auto}}
/* ================= FREE-BOOK LANDING PAGE ================= */
body.lp{background:var(--bg)}
.lp-top{display:flex;align-items:center;justify-content:space-between;padding:18px 34px;background:var(--ink)}
.lp-brand .bt{font-family:"Playfair Display",serif;font-size:20px;letter-spacing:.24em;color:#fff;display:block;line-height:1}
.lp-brand .bs{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-light);margin-top:4px;display:block}
.lp-phone{color:#fff;font-size:14px;opacity:.9}
.lp-hero{background:linear-gradient(180deg,#F7F2EA,#F1EADF)}
.lp-hero-in{max-width:1160px;margin:0 auto;padding:56px 26px;display:grid;grid-template-columns:1fr 440px;gap:48px;align-items:center}
.lp-hero-l h1.serif{font-size:clamp(30px,4.2vw,46px);line-height:1.08;color:var(--heading);margin:10px 0 14px}
.lp-lead{font-size:18px;line-height:1.65;color:var(--text);margin-bottom:26px}
.lp-coverwrap{display:flex;align-items:center;gap:20px}
.lp-cover{width:150px;border-radius:8px;box-shadow:0 24px 48px -24px rgba(34,28,23,.6);flex:0 0 auto}
.lp-byline{font-size:13.5px;color:var(--soft)}
.lp-formcard{background:var(--panel);border:1px solid var(--cardbd);border-radius:18px;padding:30px;box-shadow:0 30px 66px -30px rgba(34,28,23,.55)}
.lp-fh{font-family:"Playfair Display",serif;font-size:25px;color:var(--heading)}
.lp-fs{color:var(--soft);font-size:14px;margin:6px 0 18px}
.lp-f{margin-bottom:13px}
.lp-f label{display:block;font-size:12px;letter-spacing:.03em;color:var(--heading);font-weight:600;margin-bottom:5px}
.lp-f input{width:100%;background:var(--fieldbg);border:1px solid var(--fieldbd);border-radius:8px;padding:12px 14px;font-family:"Open Sans";font-size:15px;color:var(--text)}
.lp-two{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.lp-form .btn-cta{width:100%;margin-top:8px;font-size:14px}
.lp-fine{font-size:11.5px;color:var(--soft);text-align:center;margin-top:12px;line-height:1.5}
.lp-err{display:none;font-size:12.5px;color:#a23;background:#faeceb;border:1px solid #e7c3c0;border-radius:8px;padding:9px 12px;margin-top:12px;text-align:center}
.lp-err.on{display:block}
.lp-ok{display:none;text-align:center;padding:8px 4px}
.lp-ok.on{display:block}
.lp-ok-ic{width:60px;height:60px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;margin:6px auto 14px}
.lp-ok-ic svg{width:30px;height:30px}
.lp-ok-s{color:var(--soft);font-size:14.5px;margin:8px 0 18px;line-height:1.6}
.lp-value{max-width:900px}
.lp-vh{text-align:center;max-width:720px;margin:0 auto 8px}
.lp-vh h2.serif{font-size:clamp(24px,3.4vw,34px);margin:8px 0 12px}
.lp-hl{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px 30px}
.lp-hl li{position:relative;padding-left:34px;font-size:15.5px;color:var(--text);line-height:1.5}
.lp-tick{position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.lp-authors{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px;padding-top:28px;border-top:1px solid var(--cardbd)}
.lp-anm{font-weight:700;color:var(--heading);font-size:15px;margin-bottom:5px}
.lp-auth p{font-size:14px;color:var(--text);margin:0;line-height:1.6}
.lp-cta2{text-align:center;margin-top:34px}
.lp-foot{background:var(--ink);color:#cdbfa8;text-align:center;padding:26px;font-size:13px;display:flex;flex-direction:column;gap:5px;margin-top:20px}
@media(max-width:860px){.lp-hero-in{grid-template-columns:1fr;gap:32px}.lp-hl,.lp-authors{grid-template-columns:1fr}}
.lp-dl{display:block;width:100%;margin-top:10px}
.lp-dlnote{font-size:12px;color:var(--soft);margin-top:14px;line-height:1.5}
/* ---------- About: process steps ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:40px}
.step{background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;padding:26px 22px 24px;position:relative}
.step-n{font-family:"Playfair Display",serif;font-size:15px;font-weight:600;letter-spacing:.14em;color:var(--gold-dark);display:inline-block;padding-bottom:12px;border-bottom:2px solid var(--gold-light);margin-bottom:14px}
.step h3.serif{font-size:20px;color:var(--heading);margin-bottom:8px}
.step p{font-size:14px;line-height:1.65;color:var(--text)}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}
/* ---------- About: conditions slider ---------- */
.cs-sect .sechead{align-items:flex-end;gap:24px}
.cs-lede{color:var(--soft);font-size:15px;line-height:1.65;max-width:560px;margin-top:8px}
.cs-nav{display:flex;gap:10px;flex:none}
.cs-arrow{width:46px;height:46px;border-radius:50%;border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s ease}
.cs-arrow:hover{background:var(--accent);color:#fff}
.cs-arrow:disabled{opacity:.3;cursor:default;background:transparent;color:var(--accent)}
.cs-wrap{max-width:1160px;margin:26px auto 0;padding:0 26px}
.cs-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 0 18px;-ms-overflow-style:none;scrollbar-width:none}
.cs-track::-webkit-scrollbar{display:none}
.cs-card{flex:0 0 300px;scroll-snap-align:start;background:var(--panel);border:1px solid var(--cardbd);border-radius:16px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s ease}
.cs-card:hover{transform:translateY(-6px);box-shadow:0 24px 44px -26px rgba(34,28,23,.5)}
.cs-img{height:160px;background-size:cover;background-position:center}
.cs-pad{padding:20px 20px 22px;display:flex;flex-direction:column;gap:7px;flex:1}
.cs-cat{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);font-weight:700}
.cs-nm{font-family:"Playfair Display",serif;font-size:21px;color:var(--heading)}
.cs-card p{font-size:13.5px;line-height:1.6;color:var(--text);flex:1}
.cs-card .linktext{margin-top:4px}
@media(max-width:560px){.cs-card{flex-basis:250px}.cs-wrap,.cs-sect{padding-left:16px;padding-right:16px}}
