/* Human-first creative direction. Page copy and conversion behavior remain source-controlled. */
:root {
  --navy:#14213D; --blue:#2563EB; --orange:#FF7849;
  --lavender:#E9E4FF; --sky:#DDEEFF; --cream:#FAF9F6;
  --paper:#FAF9F6; --ink:#20252B; --forest:#14213D; --green:#1D4ED8;
  --stone:#E9E4FF; --white:#FFFFFF; --line:#D9DFEA;
  --muted:#5A6472; --font-display:'Manrope',sans-serif;
}
html { scroll-behavior:smooth; }
body { color:var(--ink); background:var(--cream); font-family:'DM Sans',sans-serif; }
::selection { background:#FFB69B; color:#14213D; }
.container { width:min(100% - 112px, 1320px); margin-inline:auto; }
h1,h2,h3,h4 { font-family:'Manrope',sans-serif; letter-spacing:-.045em; }
.eyebrow,.mid-kicker,.lower-section .lower-eyebrow,.lower-offer .lower-eyebrow { font-family:'DM Sans',sans-serif; font-weight:800; letter-spacing:.12em; color:#1D4ED8; }
a:focus-visible,summary:focus-visible { outline:3px solid #FF7849; outline-offset:4px; }
.skip-link { background:#fff; color:#14213D; }
.site-header { color:#14213D; background:#FAF9F6; border-bottom:1px solid #E3E4E7; }
.header-inner { height:84px; }
.brand { font-size:21px; }
.brand b { color:#2563EB; }
.brand-muted,.footer-inner .brand-muted { color:inherit; opacity:.72; }
.brand-symbol i,.footer-inner .brand-symbol i { background:#14213D; }
.brand-symbol i:nth-child(2),.footer-inner .brand-symbol i:nth-child(2) { background:#FF7849; }
.brand-symbol i:nth-child(3),.footer-inner .brand-symbol i:nth-child(3) { background:#2563EB; }
.nav-links a { color:#364052; }
.nav-links a:hover,.nav-action:hover { color:#1D4ED8; }
.nav-action { border-bottom:1px solid #2563EB; color:#14213D; }
.nav-action span { color:#2563EB; }
.mobile-nav summary { color:#14213D; }
.mobile-nav summary span { color:#2563EB; }
.mobile-nav nav { color:#14213D; background:#fff; border-color:#DFE4EF; box-shadow:0 12px 35px rgba(20,33,61,.12); }
.mobile-nav nav a { color:#14213D; border-color:#E5E8F0; }
.mobile-nav nav a span { color:#2563EB; }
.book-button { background:#2563EB; color:#fff; border:1px solid #2563EB; border-radius:100px; padding:18px 25px; font-size:13px; line-height:1.35; box-shadow:0 10px 26px rgba(37,99,235,.17); }
.book-button:hover { background:#14213D; border-color:#14213D; color:#fff; transform:translateY(-2px); }
.button-arrow { color:inherit; }

/* A warm editorial hero rather than an interface mockup. */
.hero { background:#FAF9F6; color:#14213D; position:relative; overflow:hidden; }
.hero:before { content:''; position:absolute; width:420px; height:420px; border-radius:50%; background:#E9E4FF; right:-135px; top:25px; }
.hero-shell { position:relative; display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(36px,5vw,78px); align-items:center; padding-top:66px; padding-bottom:70px; }
.hero-copy { min-width:0; z-index:1; }
.hero-kicker { color:#1D4ED8; font-family:'DM Sans',sans-serif; font-size:11px; letter-spacing:.12em; gap:10px; margin-bottom:26px; }
.kicker-spark { color:#FF7849; font-size:24px; line-height:1; }
.kicker-divider { background:#9FA8C0; }
.hero h1 { max-width:760px; }
.hero-title-main { color:#14213D; font-size:clamp(43px,4.15vw,64px); line-height:1.045; letter-spacing:-.06em; }
.hero-title-rest { color:#1D4ED8; font-size:clamp(22px,1.85vw,29px); line-height:1.24; letter-spacing:-.035em; margin-top:20px; }
.hero-subhead { color:#475569; max-width:590px; font-size:18px; line-height:1.6; margin-top:25px; }
.hero .book-button { margin-top:28px; }
.hero-photo { position:relative; margin:0; padding:0 18px 22px 0; }
.hero-photo:before { content:''; position:absolute; inset:30px 0 0 36px; background:#FFB694; border-radius:45% 45% 3% 3%; }
.hero-photo img { position:relative; width:100%; height:clamp(500px,48vw,680px); object-fit:cover; object-position:center; border-radius:240px 240px 18px 18px; }
.hero-photo-accent { position:absolute; left:-24px; bottom:58px; width:118px; height:118px; display:flex; align-items:center; justify-content:center; gap:5px; border-radius:50%; background:#2563EB; color:white; box-shadow:0 15px 36px rgba(20,33,61,.14); }
.hero-photo-accent span { font-size:39px; line-height:1; margin-right:4px; }
.hero-photo-accent i { display:block; width:5px; height:5px; background:#fff; border-radius:50%; }
.hero-bottom { border-top:1px solid #D9DCE3; color:#5B6675; font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:.1em; }

/* The business owner’s story moves from a lively introduction into lavender. */
.attention-band { background:#DDEEFF; color:#14213D; padding:82px 0; position:relative; }
.attention-band:after { content:''; position:absolute; width:94px; height:94px; border:18px solid rgba(37,99,235,.16); border-radius:50%; bottom:-47px; right:9%; z-index:2; }
.attention-grid { grid-template-columns:1.05fr .75fr; gap:16%; align-items:end; }
.attention-grid .eyebrow { color:#1D4ED8; }
.attention-lead { font-size:clamp(27px,2.9vw,42px); line-height:1.2; }
.attention-grid>div:nth-child(2)>p:first-child { color:#35445B; font-size:17px; }
.money-line { color:#14213D; font-size:24px; }
.money-line em { color:#D4552D; }
.problem-intro { background:#E9E4FF; color:#14213D; padding:clamp(90px,10vw,145px) 0; }
.problem-head { grid-template-columns:1.35fr .55fr; gap:10%; align-items:end; margin-bottom:86px; }
.problem-head h2 { font-size:clamp(46px,6vw,88px); line-height:1.02; letter-spacing:-.065em; max-width:900px; }
.problem-head h2 span { color:#2563EB; }
.problem-aside { color:#46516A; padding-bottom:8px; font-size:17px; }
.problem-grid { grid-template-columns:1fr .8fr; gap:clamp(50px,8vw,120px); align-items:center; }
.workspace-image { position:relative; padding:0 0 0 26px; }
.workspace-image:before { content:''; position:absolute; left:0; top:35px; bottom:-20px; width:58%; background:#FFB694; border-radius:18px; }
.workspace-image img { position:relative; height:560px; object-fit:cover; border-radius:180px 18px 18px 18px; filter:none; }
.workspace-image figcaption { position:relative; color:#4F5B6F; border:0; padding:17px 0; font-family:'DM Sans',sans-serif; font-size:10px; }
.questions-heading { color:#1D4ED8; font-size:28px; }
.questions p:not(.questions-heading) { color:#364154; border-color:#C6C1E0; font-size:17px; }
.questions p.questions-end { color:#14213D; font-size:19px; }
.voices-intro { margin-top:115px; grid-template-columns:1fr .55fr; }
.voices-intro span,.voices-grid cite { color:#40516C; font-family:'DM Sans',sans-serif; }
.voices-grid { border-color:#BDB7D6; padding-top:38px; }
.voice-large p { font-size:clamp(36px,4vw,56px); color:#1D4ED8; }
.voice-stack blockquote { border-color:#C8C2DE; }
.trap-grid { padding-top:95px; align-items:start; }
.trap-title { color:#14213D; font-size:clamp(44px,5.3vw,74px); }
.trap-grid>div { color:#354154; }
.cost-section { background:#FAF9F6; color:#14213D; padding:clamp(100px,11vw,155px) 0; }
.cost-grid { grid-template-columns:1fr .85fr; gap:clamp(60px,9vw,145px); }
.cost-section .eyebrow { color:#1D4ED8; }
.cost-copy h2 { font-size:clamp(42px,5vw,72px); line-height:1.05; }
.cost-copy>p:not(.eyebrow),.cost-side>p { color:#435066; font-size:17px; }
.cost-copy blockquote { color:#1D4ED8; border-left:5px solid #FF7849; padding-left:25px; font-size:clamp(29px,3vw,44px); }
.cost-photo { margin:50px 0 40px; position:relative; }
.cost-photo:before { content:''; position:absolute; right:-20px; bottom:-20px; width:60%; height:70%; background:#DDEEFF; border-radius:18px 110px 18px 18px; }
.cost-photo img { position:relative; width:100%; height:460px; object-fit:cover; border-radius:18px 130px 18px 18px; }
.cost-finish { color:#14213D !important; font-size:21px !important; }
.site-footer { background:#14213D; color:#fff; border-color:rgba(255,255,255,.2); }
.footer-inner p { color:#D3DDF5; font-family:'DM Sans',sans-serif; }
@media(max-width:1050px){ .container { width:calc(100% - 64px); } .hero-title-main { font-size:clamp(39px,4.5vw,52px); } .hero-photo img { height:520px; } }
@media(max-width:760px){
 .container { width:calc(100% - 40px); }
 .header-inner { height:72px; }
 .hero:before { width:240px; height:240px; right:-100px; top:390px; }
 .hero-shell { grid-template-columns:1fr; gap:35px; padding:43px 0 40px; }
 .hero-title-main { font-size:clamp(38px,10vw,54px); line-height:1.06; }
 .hero-title-rest { font-size:clamp(22px,5.5vw,27px); }
 .hero-subhead { font-size:17px; }
 .hero .book-button { width:100%; }
 .hero-photo { width:calc(100% - 10px); margin:0 0 0 10px; }
 .hero-photo img { height:390px; border-radius:170px 170px 14px 14px; }
 .hero-photo-accent { width:82px; height:82px; left:-17px; bottom:44px; }
 .hero-photo-accent span { font-size:29px; }
 .attention-band { padding:68px 0; }
 .attention-grid,.problem-head,.problem-grid,.voices-intro,.voices-grid,.trap-grid,.cost-grid { grid-template-columns:1fr; gap:32px; }
 .attention-lead { font-size:29px; }
 .problem-intro,.cost-section { padding:85px 0; }
 .problem-head { margin-bottom:45px; }
 .problem-head h2 { font-size:clamp(41px,10vw,58px); }
 .problem-aside { max-width:none; }
 .workspace-image { padding-left:14px; }
 .workspace-image img { height:auto; aspect-ratio:4/3; border-radius:110px 12px 12px 12px; }
 .voices-intro { margin:72px 0 26px; }
 .voices-intro span { text-align:left; }
 .voice-large p { font-size:clamp(32px,8vw,43px); }
 .trap-grid { padding-top:65px; }
 .trap-title { font-size:48px; }
 .cost-grid { gap:36px; }
 .cost-photo { margin:0 0 37px; }
 .cost-photo img { height:320px; border-radius:16px 95px 16px 16px; }
}
@media(max-width:360px){ .hero-title-main { font-size:37px; } .hero-photo img { height:330px; } .problem-head h2 { font-size:40px; } }
@media(prefers-reduced-motion:reduce){ html { scroll-behavior:auto; } *,*:before,*:after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
