:root{--blue:#23479F;--blue-deep:#1A356F;--blue-mid:#5B7AC8;--brown:#6B4F25;--tan:#C9A76A;--tan-soft:#DCC392;--paper:#F4EFE3;--cream:#FBF6E9;--slate:#2A3548;--slate-mute:#6B7686;--line-paper:rgba(107,79,37,.22);--white:#FFFFFF;--ivory:#ECE2C9}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{font-family:'Inter','Poppins',sans-serif;color:var(--slate);background:#FFFFFF;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.top{position:sticky;top:0;z-index:100;background:rgba(35,71,159,.97);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line-paper)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1500px;margin:0 auto;padding:14px 38px;gap:36px}
.logo-img{height:46px;width:auto;display:block}
.nav-items{display:flex;list-style:none;gap:30px;flex:1;justify-content:center;margin:0;padding:0}
.nav-items > li{position:relative;padding:14px 0}
.nav-top-link{font-family:'Poppins',sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--paper);display:inline-flex;align-items:center;gap:5px}
.nav-top-link:hover{color:var(--tan)}
.nav-top-link .caret{font-size:8px;color:var(--tan);transform:translateY(1px);opacity:.7}
.nav-dd{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-6px);background:#FFFFFF;border:1px solid var(--line-paper);padding:24px 30px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:60;box-shadow:0 30px 60px rgba(8,22,50,.30);min-width:360px;visibility:hidden}
.nav-items > li:hover .nav-dd{opacity:1;pointer-events:auto;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav-dd-cols{display:grid;gap:28px}
.nav-dd.cols-1 .nav-dd-cols{grid-template-columns:1fr;min-width:260px}
.nav-dd.cols-2 .nav-dd-cols{grid-template-columns:1fr 1fr;min-width:500px}
.nav-dd-col h6{font-family:'Poppins',sans-serif;font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--brown);font-weight:600;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line-paper)}
.nav-dd-col ul{list-style:none}
.nav-dd-col ul li a{display:block;padding:8px 0;font-family:'Inter',sans-serif;font-size:13.5px;color:var(--slate);font-weight:400;line-height:1.35}
.nav-dd-col ul li a:hover{color:var(--blue);padding-left:4px}
.nav-cta{font-family:'Poppins',sans-serif;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--paper);border-bottom:1px solid var(--tan);padding-bottom:4px;font-weight:600}
.nav-cta:hover{color:var(--tan);border-color:var(--tan)}

/* HERO */
.page-hero{background:linear-gradient(180deg,var(--blue) 0%,var(--blue-deep) 100%);color:var(--paper);padding:84px 38px 96px;border-bottom:1px solid var(--brown)}
.page-hero-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end}
.page-hero .eyebrow{font-family:'Poppins',sans-serif;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--tan);margin-bottom:22px;display:block}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:64px;line-height:1.05;letter-spacing:-.01em;font-weight:500;color:var(--paper)}
.page-hero h1 em{font-style:italic;color:var(--tan-soft)}
.page-hero .breadcrumb{font-family:'Inter',sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--tan-soft);margin-bottom:32px;display:block}
.page-hero .breadcrumb a{color:var(--tan-soft)}
.page-hero .right-rail{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:22px;color:var(--tan-soft);line-height:1.5;border-left:2px solid var(--tan);padding-left:24px}

/* BODY */
.page-body{max-width:1240px;margin:0 auto;padding:64px 38px 80px}
.cp-shell{max-width:1180px;margin:0 auto}

/* OVERVIEW + VIDEO ROW (60/40 split, wider video block per Jeremy) */
.cp-overview{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;margin-bottom:80px;align-items:start}
.cp-ov-body .cp-eb{font-family:'Poppins',sans-serif;font-size:10.5px;letter-spacing:.30em;text-transform:uppercase;color:var(--brown);font-weight:700;margin-bottom:14px;display:block}
.cp-ov-body h2{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,3.6vw,44px);color:var(--blue);font-weight:500;line-height:1.1;margin-bottom:20px;letter-spacing:-.018em}
.cp-ov-body h2 em{color:var(--brown);font-style:italic}
.cp-ov-body p{font-family:'Inter',sans-serif;font-size:16px;line-height:1.75;color:var(--slate);margin-bottom:14px}
.cp-ov-body p strong{color:var(--brown);font-weight:600}
.cp-ov-body p em{font-style:italic;color:var(--blue)}

.cp-video{position:relative;background:linear-gradient(135deg,var(--blue-deep) 0%,var(--blue) 60%,var(--blue-mid) 100%);aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;border:1px solid var(--blue-deep);overflow:hidden;color:var(--paper);transition:transform .25s,box-shadow .25s;cursor:pointer}
.cp-video:hover{transform:translateY(-3px);box-shadow:0 20px 50px rgba(8,22,50,.25)}
.cp-video::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(201,167,106,.22) 0%,transparent 65%);pointer-events:none}
.cp-vid-play{width:80px;height:80px;border-radius:50%;background:rgba(244,239,227,.16);border:2px solid var(--tan);display:flex;align-items:center;justify-content:center;position:relative;z-index:1;transition:transform .25s}
.cp-video:hover .cp-vid-play{transform:scale(1.1)}
.cp-vid-play::before{content:"";width:0;height:0;border-style:solid;border-width:14px 0 14px 22px;border-color:transparent transparent transparent var(--tan);margin-left:6px}
.cp-vid-corner{position:absolute;bottom:14px;left:18px;font-family:'Poppins',sans-serif;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--tan);font-weight:600;opacity:.9}
.cp-vid-title{position:absolute;bottom:14px;right:18px;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;color:var(--paper);font-weight:500}

/* SECTION TITLE */
.cp-sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3vw,38px);color:var(--blue);font-weight:500;line-height:1.1;margin-bottom:8px;letter-spacing:-.012em}
.cp-sec-title em{color:var(--brown);font-style:italic}
.cp-sec-eb{font-family:'Poppins',sans-serif;font-size:10.5px;letter-spacing:.30em;text-transform:uppercase;color:var(--brown);font-weight:700;margin-bottom:10px;display:block}
.cp-sec-lede{font-family:'Inter',sans-serif;font-size:15.5px;line-height:1.7;color:var(--slate);margin-bottom:36px;max-width:780px}

.cp-section{margin-bottom:88px}

/* STEP-BY-STEP — visual cards with numbered steps */
.cp-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:32px}
.cp-step{background:#FFFFFF;border:1px solid var(--tan-soft);padding:24px 24px 22px;border-top:3px solid var(--brown);position:relative;display:flex;flex-direction:column;gap:10px}
.cp-step-num{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:42px;color:var(--brown);font-weight:500;line-height:1;letter-spacing:-.02em}
.cp-step h4{font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--blue);font-weight:500;line-height:1.2;letter-spacing:-.008em}
.cp-step h4 em{color:var(--brown);font-style:italic}
.cp-step p{font-family:'Inter',sans-serif;font-size:13.5px;line-height:1.6;color:var(--slate);margin:0}
.cp-step p strong{color:var(--brown);font-weight:600}
.cp-step.gate{border-top-color:var(--blue);background:rgba(35,71,159,.05)}
.cp-step.gate .cp-step-num{color:var(--blue)}
.cp-step.gate::after{content:"¹3";position:absolute;top:14px;right:18px;color:var(--blue);font-size:18px;font-weight:700}

/* CLIENT RESOURCES — Internal + External cards */
.cp-resources{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.cp-res-card{background:#FFFFFF;border:1px solid var(--tan-soft);padding:30px 32px}
.cp-res-card.internal{border-left:4px solid var(--blue)}
.cp-res-card.external{border-left:4px solid var(--brown)}
.cp-res-eb{font-family:'Poppins',sans-serif;font-size:10px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;display:block;margin-bottom:8px}
.cp-res-card.internal .cp-res-eb{color:var(--blue)}
.cp-res-card.external .cp-res-eb{color:var(--brown)}
.cp-res-card h3{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--blue);font-weight:500;line-height:1.2;margin-bottom:6px;letter-spacing:-.008em}
.cp-res-card h3 em{color:var(--brown);font-style:italic}
.cp-res-card p.cp-res-intro{font-family:'Inter',sans-serif;font-size:13.5px;color:var(--slate-mute);line-height:1.55;margin-bottom:18px}
.cp-res-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.cp-res-card ul li{padding:8px 0;border-bottom:1px solid var(--tan-soft)}
.cp-res-card ul li:last-child{border-bottom:none}
.cp-res-card ul li a{font-family:'Inter',sans-serif;font-size:14px;color:var(--slate);line-height:1.4;display:flex;justify-content:space-between;align-items:baseline;gap:12px;transition:color .15s}
.cp-res-card ul li a:hover{color:var(--blue)}
.cp-res-card ul li a .cp-res-tag{font-family:'Poppins',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--brown);font-weight:600;white-space:nowrap}

/* WHAT YOU WALK AWAY WITH */
.cp-walkaway{background:var(--blue);color:var(--paper);padding:48px 52px;margin-top:32px;border-left:4px solid var(--tan)}
.cp-walkaway h3{font-family:'Cormorant Garamond',serif;font-size:clamp(26px,3vw,34px);color:var(--paper);font-weight:500;line-height:1.15;margin-bottom:8px}
.cp-walkaway h3 em{color:var(--tan-soft);font-style:italic}
.cp-walkaway .cp-wa-eb{font-family:'Poppins',sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:var(--tan);font-weight:700;margin-bottom:12px;display:block}
.cp-walkaway ul{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cp-walkaway ul li{font-family:'Inter',sans-serif;font-size:14.5px;line-height:1.6;color:#dde4f0;padding-left:24px;position:relative}
.cp-walkaway ul li::before{content:"¹3";position:absolute;left:0;top:0;color:var(--tan);font-weight:700;font-size:15px}
.cp-walkaway ul li strong{color:var(--paper);font-weight:600}

/* FAQ */
.cp-faq{margin-top:32px}
.cp-faq-item{padding:22px 0;border-bottom:1px solid var(--tan-soft)}
.cp-faq-item:first-child{border-top:1px solid var(--tan-soft)}
.cp-faq-q{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:20px;color:var(--blue);font-weight:500;line-height:1.3;margin-bottom:10px;letter-spacing:-.005em;padding-left:34px;position:relative}
.cp-faq-q::before{content:"?";position:absolute;left:0;top:-2px;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:32px;color:var(--brown);font-weight:600;line-height:1}
.cp-faq-a{font-family:'Inter',sans-serif;font-size:14.5px;color:var(--slate);line-height:1.7;padding-left:34px;max-width:880px}
.cp-faq-a strong{color:var(--brown);font-weight:600}

/* CALLOUT (special: Selection Studio, Happiness Chart, Welcome Package, Client Gift, etc.) */
.cp-callout{background:#FFFFFF;border:1px solid var(--tan-soft);border-left:4px solid var(--brown);padding:32px 36px;margin-top:32px;display:grid;grid-template-columns:1fr 240px;gap:32px;align-items:center}
.cp-callout-body .cp-co-eb{font-family:'Poppins',sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:var(--brown);font-weight:700;margin-bottom:8px;display:block}
.cp-callout-body h4{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--blue);font-weight:500;line-height:1.2;margin-bottom:10px;letter-spacing:-.008em}
.cp-callout-body h4 em{color:var(--brown);font-style:italic}
.cp-callout-body p{font-family:'Inter',sans-serif;font-size:14.5px;line-height:1.65;color:var(--slate)}
.cp-callout-body a{font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--blue);font-weight:600;border-bottom:1px solid var(--blue);padding-bottom:3px;display:inline-block;margin-top:14px}
.cp-callout-body a:hover{color:var(--brown);border-color:var(--brown)}
.cp-callout-visual{aspect-ratio:1/1;background:#FFFFFF 100%);border:1px solid var(--tan-soft);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:14px;color:var(--brown);text-align:center;padding:18px}
.cp-callout-visual img{width:100%;height:100%;object-fit:cover}

/* CTA + PREV/NEXT */
.cp-bottom-nav{margin-top:64px;padding-top:36px;border-top:1px solid var(--tan-soft);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px}
.cp-pn{font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brown);font-weight:600;display:flex;align-items:center;gap:8px}
.cp-pn:hover{color:var(--blue)}
.cp-pn-disabled{opacity:.3;pointer-events:none}
.cp-cta-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:32px}
.cpc{font-family:'Poppins',sans-serif;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;padding:13px 24px;border:1px solid var(--brown);color:var(--brown);transition:all .2s}
.cpc.primary{background:var(--blue);color:var(--paper);border-color:var(--blue)}
.cpc.primary:hover{background:transparent;color:var(--blue)}
.cpc:hover{background:var(--brown);color:var(--paper)}

/* FOOTER */
footer{background:#FFFFFF;color:var(--slate);padding:60px 38px 36px;border-top:1px solid var(--line-paper)}
.foot-grid{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(6,1fr);gap:26px}
.foot-brand img{height:42px;margin-bottom:18px;filter:none !important}
footer h5{font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brown);font-weight:600;margin-bottom:14px}
footer ul{list-style:none}
footer ul li{padding:4px 0}
footer ul li a{font-family:'Inter',sans-serif;font-size:14px;color:var(--slate)}
footer ul li a:hover{color:var(--blue)}
.foot-bottom{max-width:1500px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--line-paper);display:flex;justify-content:space-between;font-family:'Inter',sans-serif;font-size:12px;color:var(--brown);flex-wrap:wrap;gap:14px}

@media (max-width:980px){
  .nav-items{display:none}
  .foot-grid{grid-template-columns:repeat(3,1fr)}
  .page-hero-inner{grid-template-columns:1fr;gap:32px}
  .page-hero h1{font-size:48px}
  .cp-overview{grid-template-columns:1fr;gap:32px}
  .cp-resources{grid-template-columns:1fr}
  .cp-callout{grid-template-columns:1fr}
  .cp-callout-visual{aspect-ratio:16/9;width:100%}
  .cp-walkaway ul{grid-template-columns:1fr}
}
@media (max-width:740px){
  .foot-grid{grid-template-columns:1fr}
  .cp-steps{grid-template-columns:1fr}
}
