/* Homepage only: shared navigation, service pages and journal keep their styles. */
.home-page main p{font-size:15px;line-height:1.8}
.home-page .section{padding-block:80px}
.home-page .text-link{white-space:normal;font-size:14px}
.home-page main a:not(.button):not(.niche-link):not(.pill-link):hover{text-decoration:underline;text-underline-offset:4px}
.home-page{--blue:#6000ee;--ink:#211b38;--muted:#6b637c;--line:#e9e2f3;--soft:#f8f5fc}
.home-hero{padding:24px 0 0;background:radial-gradient(ellipse at 15% 25%,#e9dcff80,transparent 44%),radial-gradient(ellipse at 88% 70%,#efe4ff99,transparent 42%),linear-gradient(180deg,#fff,#faf7ff);border-bottom:1px solid var(--line);min-height:calc(100svh - 83px);display:flex}
.home-hero>.wrap{display:flex;flex-direction:column;align-self:stretch;margin-block:0}
.home-hero-grid{display:grid;align-items:center;flex:1;width:100%;max-width:980px;margin:0 auto;padding:8px 0 22px;text-align:center}
.home-hero h1{font-size:clamp(38px,4.3vw,58px);line-height:1.1;letter-spacing:-2.3px;font-weight:800;text-wrap:balance}
.home-hero h1 span{color:var(--blue)}
.home-hero .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.3px;margin-bottom:18px;padding:6px 12px;border:1px solid #ddcff6;border-radius:100px;background:#ffffffc9}
.home-hero .eyebrow:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--blue)}
.home-page .home-hero-copy>p{margin:18px auto 22px;max-width:660px;font-size:15px;line-height:1.7}
.home-hero .actions{gap:12px;align-items:center;justify-content:center}
.home-hero-meta{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:22px}
.home-hero .home-person{justify-content:center;margin:0;text-align:left;gap:9px;font-size:12px}
.home-hero .home-person img{width:36px;height:36px}
.home-hero .home-person span{font-size:11px}
.home-hero .home-hero-pricing{font-size:12px;color:var(--blue);border-left:1px solid #d9cbed;padding-left:22px;font-weight:700}
.home-hero .button{padding:12px 20px;min-height:46px;font-size:13px}
.home-person{display:flex;gap:12px;align-items:center;margin-top:26px;font-size:13px}
.home-person img{width:48px;height:48px;object-fit:cover;border-radius:50%;border:3px solid white;box-shadow:0 0 0 1px #dae2f3}
.home-person strong,.home-person span{display:block}
.home-person span{color:var(--muted);font-size:12px;margin-top:2px}
.home-visual{margin:0;background:white;border:1px solid #dfe5f0;border-radius:20px;box-shadow:0 24px 60px #273e7610;overflow:hidden}
.home-visual>img{width:100%;height:auto;aspect-ratio:3/2}
.home-visual figcaption{padding:19px 22px;display:flex;align-items:center;gap:14px;font-size:13px;line-height:1.65}
.home-visual figcaption b{display:block;color:var(--ink)}
.home-visual figcaption span:last-child{color:var(--muted)}
.home-visual-mark{flex-shrink:0;display:grid;place-items:center;width:39px;height:39px;background:#eef2ff;color:var(--blue);border-radius:11px;font-size:22px}
.home-principles{display:grid;grid-template-columns:repeat(3,1fr);padding:18px 0;margin:0;border-top:1px solid #e0d4f2;list-style:none;gap:24px}
.home-principles li{display:flex;gap:8px;font-size:13px;align-items:center;flex-direction:column;text-align:center}
.home-principles span{color:var(--blue);font-weight:700;font-size:11px}
.home-page #services .section-top{align-items:start}
.home-page .card p,.home-page .card ul{font-size:14px}
.home-page .card{padding:28px}
.home-page .card h3{font-size:23px}
.home-page .card .icon{margin-bottom:22px}
.home-clients{background:#f5f7fc;border-block:1px solid var(--line)}
.home-clients-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.home-client{border:1px solid var(--line);border-radius:15px;background:white;overflow:hidden;display:flex;flex-direction:column}
.home-client img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.home-client-copy{padding:30px;display:flex;flex-direction:column;flex:1}
.home-client h3{font-size:27px;margin-bottom:15px}
.home-client .eyebrow{font-size:10px;margin-bottom:13px}
.home-client ul{padding:0;list-style:none;margin:20px 0 25px;color:#53647e;font-size:14px}
.home-client li{padding-left:24px;position:relative;margin:9px 0}
.home-client li:before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700}
.home-client .text-link{margin-top:auto}
.home-answer-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start;margin-bottom:36px}
.home-answer-intro p+p{margin-top:13px}
.home-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.home-metric{padding:27px;border:1px solid var(--line);border-radius:12px;background:#fff}
.home-metric>span{display:inline-block;font-size:12px;letter-spacing:1.5px;font-weight:800;color:var(--blue);border-bottom:2px solid #c9d4ff;margin-bottom:18px}
.home-metric h3{font-size:19px;margin-bottom:12px}
.home-metric p{font-size:14px!important}
.home-metric a{font-size:12px;color:var(--blue);display:inline-block;margin-top:16px;text-decoration:underline;text-underline-offset:3px}
.home-metric-note{margin-top:21px;padding:17px 21px;background:#f5f7fc;border-radius:8px;font-size:13px!important}
.home-metric-note a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.home-quality{border-top:1px solid var(--line);padding-bottom:80px}
.home-quality-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:start}
.home-quality h2{font-size:36px;margin-bottom:20px}
.home-quality figure{margin:24px 0 0;max-width:390px}
.home-quality figure img{width:100%;height:auto}
.home-quality figcaption{font-size:11px;color:var(--muted);margin-top:10px}
.home-checks{counter-reset:check;list-style:none;padding:0;margin:0}
.home-checks li{position:relative;padding:0 0 23px 51px;margin-bottom:24px;border-bottom:1px solid var(--line);counter-increment:check}
.home-checks li:last-child{margin-bottom:0;padding-bottom:0;border:0}
.home-checks li:before{content:'0' counter(check);position:absolute;left:0;top:1px;color:var(--blue);font-size:12px;font-weight:700;background:#edf2ff;width:32px;height:32px;border-radius:8px;display:grid;place-items:center}
.home-checks h3{font-size:18px;margin-bottom:8px}
.home-checks p{font-size:14px!important}
.home-example{margin-top:27px;border-left:3px solid var(--blue);padding:2px 0 2px 18px}
.home-example strong{display:block;font-size:13px;margin-bottom:6px}
.home-example p{font-size:14px!important}
.home-page .steps p{font-size:14px}
.home-page .steps h3{font-size:19px}
.home-market{padding-block:60px}
.home-market-box{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:50px;background:#132440;border-radius:18px;padding:44px;color:white}
.home-market .eyebrow{color:#9cb1ff}
.home-market h2{font-size:32px;max-width:620px}
.home-market p{color:#b9c7df;margin-top:17px;max-width:600px}
.home-market-actions{display:flex;flex-direction:column;align-items:start;gap:18px}
.home-market .button{background:white;color:#18325b;border-color:white;width:100%;gap:14px}
.home-market .text-link{color:#c1ceff}
.home-market-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;list-style:none;padding:0;font-size:11px;color:#cfdbef}
.home-market-filters li{border:1px solid #4c5d76;border-radius:5px;padding:4px 10px}
.home-page .campaign-story{padding-top:25px}
.home-page .campaign-heading>p{font-size:15px}
.home-page .campaign-narrative>p{font-size:14px}
.home-page .campaign-bottom p{font-size:12px}
.home-page .campaign-principle p{font-size:12px}
.home-page .campaign-evidence{align-self:start}
.home-page .campaign-evidence img{width:100%;height:auto}
.home-page .faq-list summary{font-size:16px;line-height:1.6}
.home-page .faq-list p{font-size:14px}
.home-page .faq-list a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.home-page .cta-box{align-items:start}
.home-page .cta-box>div{padding-top:20px}
.home-page .cta-box p{font-size:15px}
.home-page .cta-box .form-note{font-size:11px}
.home-page .cta-box h2{font-size:39px}
.home-brief{list-style:none;padding:0;margin:28px 0;color:#d2dcef;font-size:14px}
.home-brief li{padding:11px 0;border-bottom:1px solid #ffffff1c}
.home-brief span{display:inline-block;color:#a4b9ff;margin-right:12px;font-size:11px}
.home-page .cta-box .home-person span{color:#a9b9d4}
.home-page .cta-box .home-person img{border-color:#465a7d;box-shadow:none}
.home-page .cta-box .home-person p{font-size:13px;color:#d2dcef;margin:0}
@media(max-width:1000px){
 .home-hero h1{font-size:43px;letter-spacing:-1.8px}.home-hero .button{font-size:12px;padding:12px 14px;gap:10px}
 .home-answer-intro,.home-quality-grid{gap:36px}.home-client-copy{padding:24px}.home-market-box{gap:28px;padding:32px}.home-metric{padding:22px}
}
@media(max-width:760px){
 .home-page .section{padding-block:54px}.home-hero{padding-top:18px;min-height:calc(100svh - 71px)}.home-hero-grid,.home-answer-intro,.home-quality-grid,.home-clients-grid,.home-market-box{grid-template-columns:1fr}
 .home-hero h1{font-size:clamp(30px,7.5vw,43px);letter-spacing:-1.4px}.home-hero .eyebrow{font-size:9px;letter-spacing:.7px;line-height:1.5;margin-bottom:16px}.home-page .home-hero-copy>p{font-size:14px;line-height:1.65;margin:16px auto 18px}
 .home-hero-grid{padding-bottom:20px}.home-hero .actions{gap:9px}.home-hero .button{font-size:12px;padding:11px 12px;gap:8px}.home-person{margin-top:23px}
 .home-hero-meta{gap:13px;margin-top:19px}.home-hero .home-person{font-size:11px}.home-hero .home-person span{font-size:10px}.home-hero .home-hero-pricing{font-size:11px;padding-left:13px}
 .home-principles{gap:10px;margin-top:0;padding-block:15px}.home-principles li{gap:5px;line-height:1.5;font-size:10px}.home-principles span{font-size:9px}
 .home-clients-grid{gap:22px}.home-client h3{font-size:26px}.home-client-copy{padding:25px}.home-answer-intro{gap:22px;margin-bottom:25px}.home-metrics{grid-template-columns:1fr;gap:14px}
 .home-metric{padding:23px}.home-metric>span{margin-bottom:12px}.home-metric a{margin-top:12px}.home-quality h2{font-size:30px}.home-quality figure{max-width:340px}.home-quality-grid{gap:35px}.home-checks li{padding-left:46px}
 .home-market{padding-block:40px}.home-market-box{padding:28px 24px;gap:24px}.home-market h2{font-size:28px}.home-market-actions{gap:18px}.home-market .button{max-width:330px}.home-market p{font-size:14px}
 .home-page .campaign-story{padding-top:15px}.home-page .faq-grid{gap:27px}.home-page .cta-box>div{padding-top:0}.home-page .cta-box h2{font-size:32px}.home-page .cta-box p{font-size:14px}
 .home-page .cta-box label{font-size:12px}.home-page .cta-box input,.home-page .cta-box select{font-size:16px}
}
@media(max-width:360px){.home-hero .actions{flex-direction:column;align-items:stretch}.home-hero .button{width:100%}.home-page .steps{grid-template-columns:1fr}.home-client-copy{padding:21px}.home-market-box{padding:25px 21px}}
/* Short laptop screens keep the complete hero compact; content can still grow at zoom. */
@media(min-width:761px) and (max-height:700px){
 .home-hero{padding-top:16px}.home-hero h1{font-size:clamp(38px,3.8vw,50px)}
 .home-hero .eyebrow{margin-bottom:13px}.home-page .home-hero-copy>p{margin-block:14px 18px}
 .home-hero-meta{margin-top:17px}.home-principles{padding-block:14px}
}
/* One visual language across the homepage, isolated from inner-page templates. */
.home-page .button:not(.light):hover{background:#4c00bd;color:#fff}
.home-page .button.light:hover{background:#f6f0ff;border-color:#c4a9ee}
.home-page .home-hero .button:first-child{box-shadow:0 7px 18px #6000ee24}
.home-page .card,.home-page .home-client,.home-page .home-metric{border-radius:18px;box-shadow:0 8px 28px #30204b05}
.home-page .card{background:linear-gradient(155deg,#fff,#fcfaff);border-top:3px solid #deccf8}
.home-page .card.featured{background:linear-gradient(155deg,#f8f2ff,#fff);border-color:#d8c2f5;border-top-color:var(--blue)}
.home-page .card:hover{border-color:#b28bdd;box-shadow:0 12px 30px #6000ee0b}
.home-page .icon,.home-page .home-checks li:before{background:#f0e6ff;border-color:#e5d5fc;color:var(--blue)}
.home-page .home-clients,.home-page .process,.home-page .niche-section{background:#faf7fe}
.home-page .home-metric-note,.home-page .campaign-metrics{background:#f8f4fe}
.home-page .home-metric>span{border-color:#d9c1fc}
.home-page .home-market-box,.home-page .cta-box{background:radial-gradient(ellipse at top right,#542292,transparent 65%),#231139;border:1px solid #4d2c70;box-shadow:0 16px 40px #2d164712}
.home-page .home-market .button{color:#351553}
.home-page .home-market .button:hover{background:#eee2ff;color:#351553}
.home-page .home-market p,.home-page .cta-box p{color:#d1c4df}
.home-page .home-market .eyebrow,.home-page .cta-box .eyebrow{color:#cdb0ff}
.home-page .home-market .text-link{color:#e1cfff}
.home-page .faq-list details{padding:18px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:#fff}
.home-page .faq-list details[open]{background:#fbf8ff;border-color:#d7c2f0}
.home-page .niche-links a{border-radius:100px}
.home-page .footer{background:#faf8fd}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-page .button,.home-page .card{transition:none}}
