/* Variant A — final production styles
   Full-bleed hero, Cormorant Garamond + Inter, sea-glass palette */

:root{
  --sea-glass:#AAB9B6;
  --sandstone:#CDC6B6;
  --olive:#8E9B89;
  --seafoam:#D1E5E6;

  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;

  --text:#2C2C2C;
  --text-light:#5A5A5A;
  --white:#FFFFFF;
  --line:rgba(170,185,182,.25);

  --max:1120px;
  --radius:16px;
}

body{font-family:var(--sans); color:var(--text); background:var(--white); line-height:1.6; -webkit-font-smoothing:antialiased}
.container{max-width:var(--max)}

/* Header / Nav */
.header{padding:16px 0; border-bottom:1px solid var(--line); background:rgba(255,255,255,.97); backdrop-filter:blur(8px)}
.header-inner{padding:0; gap:18px}
.brand{color:var(--text)}
.brand img{width:180px; height:auto; display:block}
.brand-name{font-family:var(--serif); font-weight:600}
.brand-tag{font-size:.85rem; color:var(--text-light); white-space:nowrap; line-height:1.1; margin-top:4px}

.nav a{color:var(--text-light); font-weight:500; font-size:.95rem; padding:10px 6px}
.nav a:hover{color:var(--text)}

/* Buttons */
.btn{display:inline-flex; align-items:center; justify-content:center; padding:10px 22px; border-radius:8px; font-size:.9rem; font-weight:600; border:1.5px solid transparent; box-shadow:none; transform:none}
.btn:hover{transform:none}
.btn.primary{background:var(--olive); color:var(--white); border-color:var(--olive)}
.btn.primary:hover{background:#7a8a75; border-color:#7a8a75}
.btn.ghost{background:transparent; color:var(--olive); border-color:var(--olive)}
.btn.ghost:hover{background:rgba(142,155,137,.08)}

/* Typography helpers */
.h1,.h2,.h3{font-family:var(--serif); letter-spacing:0; line-height:1.15}
.h1{font-size:clamp(2.4rem, 5vw, 3.6rem)}
.h2{font-size:clamp(1.6rem, 3vw, 2.2rem)}
.h3{font-size:clamp(1.15rem, 2.2vw, 1.4rem)}
.lede{font-size:1.08rem; color:var(--text-light); line-height:1.65}
.small{color:var(--text-light)}

/* Sections */
.section{padding:72px 0}
.section-alt{background:linear-gradient(180deg, rgba(209,229,230,.18), transparent)}

/* Cards */
.card{background:var(--white); border:1px solid var(--line); border-radius:12px; padding:28px; box-shadow:none}

/* Grids */
.grid{gap:24px}
@media (max-width:768px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr !important}}

/* Full-bleed hero */
.hero{position:relative; min-height:60vh; display:flex; align-items:center; overflow:hidden; padding:0}
.hero-bg{position:absolute; inset:0}
.hero-bg img{width:100%; height:100%; object-fit:cover}
.hero-overlay{position:absolute; inset:0; background:linear-gradient(135deg, rgba(255,255,255,.92) 40%, rgba(255,255,255,.45) 100%)}
.hero .container{position:relative; z-index:2}
.hero-content{max-width:640px; padding:60px 0}
.hero h1{font-family:var(--serif); font-size:clamp(2.2rem, 5vw, 3.4rem); margin:0 0 18px}
.hero .lede{margin:0 0 28px}
.hero-ctas{display:flex; gap:12px; flex-wrap:wrap; margin-bottom:32px}

/* Trust badges */
.trust-strip,.badges{display:flex; gap:16px; flex-wrap:wrap}
.badge{display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border-radius:20px; font-size:.78rem; background:rgba(209,229,230,.5); color:var(--text); border:1px solid rgba(170,185,182,.3)}
.badge svg{width:14px; height:14px; fill:var(--olive)}
.badge strong{color:var(--text)}

/* Split layout for Meet Mindy */
.split{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center}
.split-photo{border-radius:16px; overflow:hidden; aspect-ratio:4/5; background:var(--seafoam)}
.split-photo img{width:100%; height:100%; object-fit:cover}
@media (max-width:768px){.split{grid-template-columns:1fr}}

/* Testimonials */
.testimonial{position:relative; padding-left:20px; border-left:3px solid var(--sandstone)}
.testimonial p{font-style:italic; font-size:.95rem; color:var(--text); margin-bottom:8px}
.testimonial cite{font-size:.8rem; color:var(--text-light); font-style:normal}

/* Partner logos row */
.logos-row{display:flex; flex-wrap:wrap; gap:32px; align-items:center; justify-content:center; opacity:.7}
.logos-row img{height:36px; width:auto; filter:grayscale(100%); transition:filter .3s}
.logos-row img:hover{filter:grayscale(0); opacity:1}

/* CTA band */
.cta-band{background:linear-gradient(135deg, rgba(209,229,230,.5), rgba(205,198,182,.25)); border-radius:16px; padding:48px; text-align:center}
.cta-band h2{font-family:var(--serif); font-size:1.8rem; margin-bottom:12px}
.cta-band p{color:var(--text-light); margin-bottom:24px}

/* Footer */
.footer{border-top:1px solid var(--line); padding:48px 0 32px; margin-top:24px}
.footer-grid{gap:40px}
.footer .h3, .footer h4{font-family:var(--serif)}

/* Sticky CTA */
.sticky-cta{background:rgba(255,255,255,.95); border-top:1px solid var(--line)}

/* Images */
.hero-media{border-radius:16px; overflow:hidden; border:1px solid var(--line); box-shadow:none; background:var(--seafoam)}

/* Resource sections (partners page) */
.resource-section{margin-bottom:48px}
.resource-section h2{margin-bottom:8px}
.resource-section p{max-width:920px}
.resource-section ul{list-style:none; padding:0; margin:14px 0 0}
.resource-section li{margin-bottom:10px}
.resource-section li a{font-weight:500; color:var(--olive); text-decoration:none; border-bottom:1px solid rgba(142,155,137,.3); padding-bottom:2px; transition:border-color .2s}
.resource-section li a:hover{border-color:var(--olive)}

/* Resource list (partners page — text/links, no logos) */
.resource-list{list-style:none; padding:0; margin:0}
.resource-list li{margin-bottom:12px}
.resource-list li a{font-weight:500; color:var(--olive); text-decoration:none; border-bottom:1px solid rgba(142,155,137,.3); padding-bottom:2px; transition:border-color .2s}
.resource-list li a:hover{border-color:var(--olive)}
