/* ============================================================
   THE BEAUTY VAULT · HOUSE OF THE BEAUTY VAULT
   Shared stylesheet for the era package pages
   ============================================================ */
:root{
  --cream:#FBF8F3; --paper:#FFFFFF; --noir:#1C1B1A; --ink:#2B2A28;
  --champ:#B89B5E; --champ-deep:#9A7E45; --blush:#F7ECEC; --blush-deep:#EFD9D9;
  --rose:#C98A8A; --soft:#8A8278; --line:#EBE2D2; --maxw:1280px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Montserrat',system-ui,sans-serif;font-weight:300;color:var(--ink);background:var(--cream);line-height:1.75;letter-spacing:.01em;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.serif{font-family:'Playfair Display',Georgia,serif;font-weight:400;}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:var(--noir);line-height:1.12;}
.italic{font-family:'Cormorant Garamond',serif;font-style:italic;}
.eyebrow{font-size:10px;letter-spacing:.46em;text-transform:uppercase;color:var(--champ-deep);font-weight:500;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 48px;}
.section{padding:clamp(80px,12vw,150px) 0;}

/* ===== SCROLL PROGRESS ===== */
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--champ),var(--rose));z-index:300;transition:width .1s linear;}

/* ===== NAV ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:26px 48px;transition:all .5s cubic-bezier(.22,1,.36,1);}
.nav.solid{background:rgba(251,248,243,.92);backdrop-filter:blur(10px);padding:16px 48px;box-shadow:0 1px 0 rgba(0,0,0,.04);}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:46px;width:auto;transition:height .5s;}
.nav.solid .brand img{height:38px;}
.brand .wordmark{font-family:'Playfair Display',serif;font-size:17px;letter-spacing:.34em;color:var(--noir);text-transform:uppercase;}
.brand .sub{font-size:8px;letter-spacing:.4em;color:var(--champ-deep);text-transform:uppercase;display:block;margin-top:3px;}
.nav-links{display:flex;gap:36px;align-items:center;}
.nav-links a{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink);position:relative;padding:4px 0;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--champ);transition:width .4s ease;}
.nav-links a:hover::after{width:100%;}
.nav-links a.cta{border:1px solid var(--champ);padding:11px 24px;color:var(--champ-deep);}
.nav-links a.cta::after{display:none;}
.nav-links a.cta:hover{background:var(--champ);color:#fff;}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;z-index:210;}
.nav-toggle span{width:24px;height:1.5px;background:var(--noir);transition:.3s;}

/* ===== BUTTONS ===== */
.btn{display:inline-block;font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;padding:16px 40px;border:1px solid var(--champ);color:var(--champ-deep);background:transparent;cursor:pointer;transition:all .45s cubic-bezier(.22,1,.36,1);overflow:hidden;position:relative;}
.btn:hover{background:var(--champ);color:#fff;letter-spacing:.32em;}
.btn.solid{background:var(--noir);border-color:var(--noir);color:var(--cream);}
.btn.solid:hover{background:var(--champ);border-color:var(--champ);}
.link-u{display:inline-block;font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--noir);padding-bottom:5px;border-bottom:1px solid var(--champ);transition:.35s;}
.link-u:hover{color:var(--champ-deep);letter-spacing:.34em;}

/* ===== IMAGE BLOCKS ===== */
.img{position:relative;background:linear-gradient(135deg,#efe7d8,#f5efe4);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.img.blush{background:linear-gradient(135deg,#f3e2e2,#f8efef);}
.img.dark{background:linear-gradient(135deg,#2a2520,#1C1B1A);}
.img::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.35) 50%,transparent 65%);background-size:300% 100%;animation:sheen 6s ease-in-out infinite;z-index:2;}
.img .tag{position:relative;z-index:3;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--champ-deep);background:rgba(251,248,243,.7);padding:7px 14px;}
.img.dark .tag{color:var(--champ);background:rgba(28,27,26,.5);}
.img .fill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}
.img.tall{aspect-ratio:3/4;}
.img.sq{aspect-ratio:1/1;}
.img.wide{aspect-ratio:16/9;}
.zoom{transition:transform 1.2s cubic-bezier(.22,1,.36,1);}
.zoomwrap{overflow:hidden;}
.zoomwrap:hover .zoom{transform:scale(1.06);}
@keyframes sheen{0%{background-position:120% 0}100%{background-position:-120% 0}}

/* ===== REVEAL ===== */
.reveal{opacity:0;transform:translateY(40px);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.12s}.reveal.d2{transition-delay:.24s}.reveal.d3{transition-delay:.36s}.reveal.d4{transition-delay:.48s}

/* ===== ERA HERO ===== */
.ehero{position:relative;min-height:74vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--noir);}
.ehero .ebg{position:absolute;inset:0;z-index:1;}
.ehero .ebg img{width:100%;height:100%;object-fit:cover;opacity:.5;}
.ehero .ebg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,27,26,.35),rgba(28,27,26,.82));}
.ehero .wrap{position:relative;z-index:3;padding-top:160px;padding-bottom:70px;}
.ehero .crumb{font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--champ);margin-bottom:22px;}
.ehero .crumb a{color:#cdbfa6;}
.ehero .no{font-family:'Playfair Display',serif;font-size:14px;letter-spacing:.4em;color:var(--champ);margin-bottom:10px;}
.ehero h1{font-size:clamp(40px,6.4vw,86px);color:var(--cream);letter-spacing:-.01em;margin-bottom:8px;}
.ehero h1 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;color:var(--champ);}
.ehero .moment{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(18px,2.4vw,26px);color:#e7dcc7;}
.ehero .lede{font-size:14px;color:#cfc6b8;max-width:560px;margin-top:24px;}
.ehero .ecta{margin-top:34px;display:flex;gap:16px;flex-wrap:wrap;}
.ehero .ecta .btn{color:var(--champ);border-color:var(--champ);}
.ehero .ecta .btn:hover{background:var(--champ);color:var(--noir);}
.ehero .ecta .btn.solid{background:var(--cream);border-color:var(--cream);color:var(--noir);}
.ehero .ecta .btn.solid:hover{background:var(--champ);border-color:var(--champ);color:var(--noir);}

/* ===== INTRO STATEMENT ===== */
.estate{text-align:center;}
.estate p{font-family:'Playfair Display',serif;font-size:clamp(24px,3.4vw,42px);line-height:1.3;color:var(--noir);max-width:920px;margin:0 auto;}
.estate em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--champ-deep);}

.sec-head{text-align:center;max-width:740px;margin:0 auto;}
.sec-head h2{font-size:clamp(28px,3.8vw,48px);margin:14px 0;}
.sec-head p{font-size:14px;color:var(--soft);max-width:600px;margin:0 auto;}
.hair{width:54px;height:1px;background:var(--champ);margin:24px auto;}

/* ===== PACKAGE PILLARS ===== */
.pillar{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center;}
.pillar + .pillar{margin-top:clamp(60px,8vw,120px);}
.pillar .pno{font-family:'Playfair Display',serif;font-size:40px;color:var(--line);line-height:1;}
.pillar .plabel{font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--champ-deep);margin:14px 0 8px;}
.pillar h3{font-size:clamp(24px,3vw,38px);margin-bottom:8px;}
.pillar .psub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;color:var(--champ-deep);margin-bottom:20px;}
.pillar p{font-size:14px;margin-bottom:22px;max-width:480px;}
.incl{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;margin-top:8px;}
.incl li{position:relative;padding-left:20px;font-size:12.5px;color:var(--ink);line-height:1.55;}
.incl li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border:1px solid var(--champ);transform:rotate(45deg);}
.incl.one{grid-template-columns:1fr;}

/* ===== INNER WORK STRIP ===== */
.inner{background:var(--noir);color:var(--cream);text-align:center;}
.inner .eyebrow{color:var(--champ);}
.inner h2{color:var(--cream);}
.inner .igrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:54px;}
.inner .icard{border:1px solid #38312a;padding:30px 22px;text-align:left;transition:border-color .4s,transform .4s;}
.inner .icard:hover{border-color:var(--champ);transform:translateY(-4px);}
.inner .icard .ic{font-family:'Playfair Display',serif;font-style:italic;font-size:15px;color:var(--champ);margin-bottom:10px;}
.inner .icard h4{font-family:'Playfair Display',serif;font-weight:400;font-size:18px;color:var(--cream);margin-bottom:8px;}
.inner .icard p{font-size:12px;color:#bcb3a4;line-height:1.6;}

/* ===== JOURNEY TIMELINE ===== */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:54px;counter-reset:step;}
.flow .step{position:relative;padding-top:26px;}
.flow .step::before{counter-increment:step;content:"0" counter(step);position:absolute;top:0;left:0;font-family:'Playfair Display',serif;font-size:13px;color:var(--champ-deep);letter-spacing:.2em;}
.flow .step h4{font-size:16px;font-weight:400;margin:8px 0 6px;}
.flow .step p{font-size:12.5px;color:var(--soft);line-height:1.6;}
.flow .step .bar{width:30px;height:1px;background:var(--champ);margin-top:14px;}

/* ===== BAND ===== */
.band{position:relative;overflow:hidden;background:var(--noir);color:var(--cream);text-align:center;padding:clamp(90px,13vw,170px) 0;}
.band .pbg{position:absolute;inset:-15% 0;background:radial-gradient(ellipse at 50% 40%,rgba(184,155,94,.18),transparent 60%);will-change:transform;}
.band .q{position:relative;z-index:2;font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(24px,3.6vw,44px);line-height:1.3;max-width:900px;margin:0 auto;color:var(--cream);}
.band .q b{color:var(--champ);font-weight:400;}

/* ===== CTA CLOSE ===== */
.close{text-align:center;background:var(--blush);}
.close h2{font-size:clamp(28px,4vw,50px);margin-bottom:14px;}
.close p{font-size:14px;color:var(--soft);max-width:560px;margin:0 auto 32px;}
.close .note{margin-top:30px;font-size:11.5px;color:var(--soft);max-width:640px;margin-left:auto;margin-right:auto;line-height:1.7;}

/* ===== TRUST DISCLAIMER ===== */
.trust{text-align:center;padding:46px 0;background:var(--cream);}
.trust p{font-size:11.5px;color:var(--soft);max-width:760px;margin:0 auto;letter-spacing:.02em;line-height:1.8;}

/* ===== FOOTER ===== */
.footer{background:var(--noir);color:#9b9384;padding:clamp(70px,9vw,110px) 0 40px;}
.footer .top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;align-items:flex-start;}
.footer .fbrand img{height:64px;margin-bottom:14px;}
.footer .fbrand .w{font-family:'Playfair Display',serif;font-size:22px;letter-spacing:.34em;color:var(--cream);text-transform:uppercase;}
.footer .fbrand .s{font-size:9px;letter-spacing:.4em;color:var(--champ);margin-top:10px;text-transform:uppercase;}
.footer .cols{display:flex;gap:64px;flex-wrap:wrap;}
.footer h4{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--champ);margin-bottom:16px;font-family:'Montserrat',sans-serif;font-weight:500;}
.footer a.f{display:block;font-size:13px;color:#c9bfac;padding:5px 0;transition:color .3s;}
.footer a.f:hover{color:var(--champ);}
.footer .bottom{border-top:1px solid #38312a;margin-top:60px;padding-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:#7d7464;}

@media(max-width:980px){
  .pillar{grid-template-columns:1fr;}
  .inner .igrid{grid-template-columns:1fr 1fr;}
  .flow{grid-template-columns:1fr 1fr;}
}
@media(max-width:680px){
  .wrap{padding:0 26px;}.nav{padding:18px 26px;}.nav.solid{padding:14px 26px;}
  .nav-links{position:fixed;inset:0 0 0 auto;width:78%;max-width:330px;height:100vh;background:var(--noir);flex-direction:column;justify-content:center;gap:30px;transform:translateX(100%);transition:transform .5s cubic-bezier(.22,1,.36,1);padding:40px;}
  .nav-links.open{transform:translateX(0);}
  .nav-links a{color:var(--cream)!important;font-size:13px;}
  .nav-links a.cta{border-color:var(--champ)!important;color:var(--champ)!important;}
  .nav-toggle{display:flex;}
  .incl{grid-template-columns:1fr;}
  .inner .igrid,.flow{grid-template-columns:1fr;}
}

/* ===== BRIDAL PACKAGES ===== */
.pkgs{margin-top:64px;display:flex;flex-direction:column;gap:22px;}
.pkg{display:block;border:1px solid var(--line);background:var(--paper);}
.pkg.feature{border-color:var(--champ);box-shadow:0 18px 50px -30px rgba(184,155,94,.5);}
.pkg .pmain{padding:clamp(28px,3.4vw,42px);}
.pkg .ptier{font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:var(--champ-deep);margin-bottom:12px;}
.pkg h3{font-size:clamp(22px,2.6vw,30px);margin-bottom:8px;}
.pkg .pdesc{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--soft);margin-bottom:22px;max-width:560px;}
.pkg .pincl{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:9px 28px;}
.pkg .pincl li{position:relative;padding-left:18px;font-size:12.5px;color:var(--ink);line-height:1.5;}
.pkg .pincl li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border:1px solid var(--champ);transform:rotate(45deg);}
.pkg .pprice{border-left:1px solid var(--line);background:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 18px;}
.pkg.feature .pprice{background:var(--blush);}
.pkg .pprice .lab{font-size:9px;letter-spacing:.36em;text-transform:uppercase;color:var(--champ-deep);margin-bottom:12px;}
.pkg .pprice .amt{font-family:'Playfair Display',serif;font-size:clamp(34px,4.4vw,52px);color:var(--noir);line-height:1;}
.pkg .pprice .dv{width:30px;height:1px;background:var(--champ);margin:16px auto 0;}

.bgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,72px);margin-top:50px;}
.bcol h3{font-size:23px;margin-bottom:4px;}
.bcol .bsub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;color:var(--champ-deep);margin-bottom:22px;}
.brow{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px dotted var(--line);font-size:13px;}
.brow .bk{color:var(--ink);}
.brow .bv{color:var(--champ-deep);letter-spacing:.03em;white-space:nowrap;}
.bcol.addons .brow .bv{color:var(--soft);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;}
.bnote{margin-top:22px;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;color:var(--champ-deep);}
.bcol .bfoot{margin-top:18px;font-size:11px;color:var(--soft);letter-spacing:.02em;}

@media(max-width:860px){
  .pkg{grid-template-columns:1fr;}
  .pkg .pprice{border-left:0;border-top:1px solid var(--line);flex-direction:row;gap:16px;padding:20px;}
  .pkg .pprice .dv{display:none;}
  .pkg .pincl{grid-template-columns:1fr;}
  .bgrid{grid-template-columns:1fr;}
}
                                                                                                

/* ===== PACKAGE MODAL ===== */
.pkg{cursor:pointer;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s;}
.pkg:hover{transform:translateY(-3px);box-shadow:0 26px 60px -36px rgba(28,27,26,.35);}
.pkg.feature:hover{box-shadow:0 26px 60px -32px rgba(184,155,94,.6);}
.pkg .ptap{display:inline-block;margin-top:22px;font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--champ-deep);border-bottom:1px solid var(--champ);padding-bottom:5px;transition:letter-spacing .3s;}
.pkg:hover .ptap{letter-spacing:.36em;}

.pmodal-overlay{position:fixed;inset:0;z-index:400;background:rgba(28,27,26,.72);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease;}
.pmodal-overlay.open{opacity:1;visibility:visible;}
.pmodal{background:var(--cream);max-width:1080px;width:100%;max-height:88vh;overflow-y:auto;border:1px solid var(--champ);position:relative;transform:translateY(20px);transition:transform .5s cubic-bezier(.22,1,.36,1);}
.pmodal-overlay.open .pmodal{transform:translateY(0);}
.pmclose{position:absolute;top:14px;right:18px;background:transparent;border:0;font-family:'Playfair Display',serif;font-size:30px;color:var(--noir);cursor:pointer;line-height:1;padding:4px 10px;z-index:2;}
.pmclose:hover{color:var(--champ-deep);}
.pmhead{padding:clamp(38px,5vw,60px) clamp(30px,5vw,56px) 24px;text-align:center;border-bottom:1px solid var(--line);}
.pmhead .ptier{font-size:10px;letter-spacing:.36em;text-transform:uppercase;color:var(--champ-deep);margin-bottom:12px;}
.pmhead h3{font-size:clamp(28px,3.6vw,42px);margin-bottom:14px;}
.pmhead .pmsub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(17px,2vw,22px);color:var(--soft);max-width:660px;margin:0 auto;}
.pmcols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,52px);padding:clamp(36px,5vw,56px);}
.pmcol .pmn{font-family:'Playfair Display',serif;font-size:34px;color:var(--line);line-height:1;margin-bottom:6px;}
.pmcol .pmlab{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--noir);margin-bottom:4px;}
.pmcol .pmrole{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:15px;color:var(--champ-deep);margin-bottom:18px;border-bottom:1px solid var(--line);padding-bottom:14px;}
.pmcol p{font-size:13.5px;line-height:1.75;color:var(--ink);}
.pmfoot{padding:0 clamp(30px,5vw,56px) clamp(36px,5vw,56px);text-align:center;}

@media(max-width:860px){
  .pmcols{grid-template-columns:1fr;gap:34px;padding:30px;}
}

/* ============================================================
   PHASE 1 COMPONENTS
   ============================================================ */

/* Page hero variant (light background, full bleed feel) */
.phero{position:relative;padding:clamp(160px,18vw,220px) 0 clamp(70px,9vw,110px);text-align:center;background:linear-gradient(135deg,#FBF8F3,#F7ECEC 60%,#F4ECE4);overflow:hidden;}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);background-size:300% 300%;animation:sheen 9s ease-in-out infinite;pointer-events:none;}
.phero .wrap{position:relative;z-index:2;}
.phero .eyebrow{display:block;margin-bottom:18px;}
.phero h1{font-family:'Playfair Display',serif;font-size:clamp(36px,5vw,68px);line-height:1.1;color:var(--noir);font-weight:400;letter-spacing:.005em;margin-bottom:18px;}
.phero h1 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;color:var(--champ-deep);}
.phero .plede{font-size:15px;color:var(--soft);max-width:660px;margin:0 auto 32px;}
.phero .pcta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* TIER CARDS (Art of Becoming) */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px;}
.tier{border:1px solid var(--line);background:var(--paper);padding:clamp(28px,3.4vw,40px);display:flex;flex-direction:column;cursor:pointer;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s,border-color .35s;}
.tier:hover{transform:translateY(-4px);box-shadow:0 26px 60px -36px rgba(28,27,26,.35);border-color:var(--champ);}
.tier.feature{border-color:var(--champ);background:linear-gradient(180deg,#FBF8F3,#FFFFFF 60%);box-shadow:0 18px 50px -32px rgba(184,155,94,.5);}
.tier .tno{font-family:'Playfair Display',serif;font-size:30px;color:var(--line);line-height:1;margin-bottom:10px;}
.tier .tlab{font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--champ-deep);margin-bottom:8px;}
.tier h3{font-size:clamp(22px,2.6vw,28px);margin-bottom:10px;}
.tier .tsub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--soft);margin-bottom:22px;}
.tier ul{list-style:none;margin-bottom:24px;}
.tier li{position:relative;padding-left:18px;font-size:13px;line-height:1.65;margin-bottom:8px;color:var(--ink);}
.tier li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border:1px solid var(--champ);transform:rotate(45deg);}
.tier .tprice{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);text-align:center;}
.tier .tprice .pol{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:16px;color:var(--champ-deep);}
.tier .ttap{display:inline-block;margin-top:14px;font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--champ-deep);border-bottom:1px solid var(--champ);padding-bottom:4px;transition:letter-spacing .3s;}
.tier:hover .ttap{letter-spacing:.36em;}

@media(max-width:980px){.tiers{grid-template-columns:1fr;}}

/* FAQ ACCORDION */
.faq{max-width:780px;margin:50px auto 0;}
.faq details{border-bottom:1px solid var(--line);padding:22px 0;}
.faq details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;font-family:'Playfair Display',serif;font-size:17px;color:var(--noir);}
.faq details summary::-webkit-details-marker{display:none;}
.faq details summary::after{content:"+";font-family:'Playfair Display',serif;font-size:24px;color:var(--champ-deep);transition:transform .3s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq details p{margin-top:14px;font-size:14px;color:var(--soft);line-height:1.75;}

/* LEAD MAGNET FORM */
.lead{background:var(--blush);padding:clamp(40px,5vw,60px) clamp(28px,4vw,52px);max-width:780px;margin:0 auto;border:1px solid var(--line);}
.lead h3{font-size:clamp(22px,2.6vw,30px);text-align:center;margin-bottom:8px;}
.lead .lsub{text-align:center;font-size:14px;color:var(--soft);margin-bottom:30px;}
.lead .lopts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px;}
.lead .lopt{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;background:var(--paper);border:1px solid var(--line);cursor:pointer;transition:border-color .3s,transform .3s;}
.lead .lopt:hover{border-color:var(--champ);transform:translateY(-2px);}
.lead .lopt input{margin-top:3px;accent-color:var(--champ-deep);flex-shrink:0;}
.lead .lopt .lcopy{font-size:13px;}
.lead .lopt .ltitle{font-family:'Playfair Display',serif;font-size:16px;color:var(--noir);margin-bottom:2px;}
.lead .lopt .ldesc{color:var(--soft);font-size:12px;line-height:1.55;}
.lead .lrow{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.lead label.llbl{display:block;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--champ-deep);margin-bottom:8px;}
.lead input[type="text"],.lead input[type="email"]{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 2px;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:300;color:var(--ink);}
.lead input[type="text"]:focus,.lead input[type="email"]:focus{outline:none;border-color:var(--champ);}
.lead .lcta{text-align:center;margin-top:8px;}
.lead .lmini{margin-top:16px;font-size:11px;color:var(--soft);text-align:center;}

@media(max-width:680px){.lead .lopts{grid-template-columns:1fr;}.lead .lrow{grid-template-columns:1fr;}}

/* JOURNAL CARDS */
.jposts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:60px;}
.jpost{display:block;}
.jpost .imgwrap{overflow:hidden;}
.jpost .img{aspect-ratio:3/2;}
.jpost .jcat{margin-top:18px;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--champ-deep);}
.jpost h3{font-size:20px;font-weight:400;margin:8px 0 6px;}
.jpost .jmeta{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);}

@media(max-width:980px){.jposts{grid-template-columns:1fr;}}

/* SUBSTACK CALLOUT */
.substack{background:var(--noir);color:var(--cream);text-align:center;padding:clamp(60px,8vw,100px) 0;}
.substack h2{color:var(--cream);font-size:clamp(28px,4vw,46px);}
.substack p{margin:20px auto;max-width:560px;color:#bcb3a4;font-size:14px;}
.substack .btn{color:var(--champ);border-color:var(--champ);}
.substack .btn:hover{background:var(--champ);color:var(--noir);}

/* CONTACT GRID */
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:start;margin-top:50px;}
.cleft .citem{margin-bottom:32px;}
.cleft .citem h4{font-family:'Playfair Display',serif;font-size:19px;font-weight:400;margin-bottom:6px;}
.cleft .citem p{font-size:13.5px;color:var(--soft);}
.cleft .citem a{color:var(--champ-deep);border-bottom:1px solid var(--line);}

@media(max-width:860px){.cgrid{grid-template-columns:1fr;}}

/* SPLIT FOUNDER (about) */
.afounder{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,80px);align-items:center;}
.afounder .img.tall{aspect-ratio:3/4;}
.afounder .copy h2{font-size:clamp(28px,3.8vw,48px);margin-bottom:18px;}
.afounder .copy p{font-size:14.5px;margin-bottom:18px;max-width:540px;line-height:1.85;}
.afounder .copy .sig{margin-top:30px;font-family:'Pinyon Script',cursive;font-size:38px;color:var(--rose);line-height:1;}
.afounder .copy .role{font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--champ-deep);margin-top:4px;}

@media(max-width:860px){.afounder{grid-template-columns:1fr;}}

/* PHILOSOPHY EXPANDED */
.philo{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,60px);margin-top:50px;}
.philo .pblk{border-top:1px solid var(--champ);padding-top:24px;}
.philo .pn{font-family:'Playfair Display',serif;font-size:42px;color:var(--line);line-height:1;margin-bottom:8px;}
.philo h3{font-size:24px;letter-spacing:.14em;text-transform:uppercase;font-weight:400;margin-bottom:6px;}
.philo .role{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--champ-deep);margin-bottom:18px;}
.philo p{font-size:14px;line-height:1.85;}

@media(max-width:980px){.philo{grid-template-columns:1fr;}}

/* SECTION BLOCK (Bridal sub-sections) */
.sblock{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center;}
.sblock + .sblock{margin-top:clamp(60px,8vw,110px);}
.sblock .img.wide{aspect-ratio:4/3;}
.sblock .scopy .eyebrow{margin-bottom:14px;}
.sblock .scopy h3{font-size:clamp(24px,3vw,36px);margin-bottom:14px;}
.sblock .scopy p{font-size:14.5px;margin-bottom:14px;max-width:480px;line-height:1.85;}
.sblock .sincl{list-style:none;margin-top:18px;}
.sblock .sincl li{position:relative;padding-left:20px;font-size:13.5px;line-height:1.7;margin-bottom:8px;color:var(--ink);}
.sblock .sincl li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border:1px solid var(--champ);transform:rotate(45deg);}

@media(max-width:860px){.sblock{grid-template-columns:1fr;}}
