/* Outreach domain pages: shared styles. Built per domain by build_sites.py (#3FA8E0 is the domain accent). */
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Caveat";src:url("fonts/caveat-latin.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}

:root{
  --navy-950:#010B24;--navy-900:#021C51;--navy-800:#0A2B6E;--navy-700:#123A8A;
  --ink:#0D1F3C;--text:#3C4656;--muted:#667085;
  --on-dark:#B9C8DB;--on-dark-2:#8EA2BF;
  --blue:#3FA8E0;--blue-600:#1A6BBD;--green:#4FB351;--green-600:#3E9A40;
  --paper:#F5F8FC;--paper-2:#EEF3FA;--line:#E3E7EE;
  --accent:#3FA8E0;
  --radius:18px;--radius-lg:28px;
  --shadow-1:0 1px 2px rgba(2,28,81,.06),0 8px 24px rgba(2,28,81,.07);
  --shadow-2:0 2px 6px rgba(2,28,81,.08),0 24px 60px rgba(2,28,81,.16);
  --font:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --hand:"Caveat","Segoe Print","Bradley Hand",cursive;
  --mono:ui-monospace,"SFMono-Regular","Cascadia Mono",Consolas,Menlo,monospace;
}

/* Accent family: the six inbox ring colours, for tiles, icons, labels and borders (never section backgrounds) */
.a-blue{--a:#1A6BBD;--a-soft:#EAF2FC;--a-line:#CFE1F6;--a-bright:#8ED0F5;--a-glow:rgba(63,168,224,.18)}
.a-purple{--a:#6B3FC9;--a-soft:#F2ECFD;--a-line:#DCCFF8;--a-bright:#C3A6FF;--a-glow:rgba(155,110,240,.2)}
.a-teal{--a:#0B7C7C;--a-soft:#E3F5F4;--a-line:#BFE5E2;--a-bright:#6FDCD3;--a-glow:rgba(15,163,163,.2)}
.a-orange{--a:#B45F06;--a-soft:#FEF2E4;--a-line:#F8DCBC;--a-bright:#FFB870;--a-glow:rgba(242,140,40,.2)}
.a-coral{--a:#C6363B;--a-soft:#FDEEEE;--a-line:#F6CFD0;--a-bright:#FF9A9D;--a-glow:rgba(229,72,77,.2)}
.a-green{--a:#2E7D32;--a-soft:#EBF7EC;--a-line:#CDEBCF;--a-bright:#8FDB91;--a-glow:rgba(79,179,81,.2)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font:500 17px/1.65 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
svg{flex:none}
a{color:var(--blue-600);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--navy-700)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}
p{margin:0 0 1em}
b,strong{font-weight:700;color:var(--ink)}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 16px}
@media(min-width:720px){.wrap{padding:0 32px}}
.nowrap{white-space:nowrap}
.skip{position:absolute;left:-9999px;top:10px;z-index:100;background:#fff;color:var(--ink);padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none}
.skip:focus{left:10px}

/* Header */
.top{position:absolute;inset:0 0 auto 0;z-index:20}
.top__in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;padding-bottom:22px}
.wm{display:inline-flex;flex-direction:column;line-height:1;color:#fff;text-decoration:none}
.wm:hover{color:#fff}
.wm__main{font-weight:900;font-size:23px;letter-spacing:-.01em;text-transform:uppercase}
.wm__or{font-size:.44em;color:var(--blue);vertical-align:.95em;margin:0 .2em;letter-spacing:.06em}
.wm__sub{font-weight:700;font-size:9.5px;letter-spacing:.56em;color:var(--blue);margin-top:5px;text-transform:uppercase}
.nav{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.nav a{color:var(--on-dark);text-decoration:none;font-size:14px;font-weight:600;padding:9px 13px;border-radius:999px;transition:background .2s,color .2s}
.nav a:hover{color:#fff;background:rgba(255,255,255,.09)}
.nav a[aria-current="page"]{color:#fff;background:rgba(255,255,255,.12)}
@media(max-width:680px){.nav a:not(.nav__keep){display:none}}

/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;padding:124px 0 150px;
  background:
    radial-gradient(1100px 560px at 88% -12%,rgba(63,168,224,.30),transparent 62%),
    radial-gradient(800px 480px at -8% 112%,rgba(79,179,81,.17),transparent 62%),
    linear-gradient(180deg,var(--navy-900) 0%,var(--navy-950) 100%)}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse 75% 70% at 62% 32%,#000 25%,transparent 78%);
  mask-image:radial-gradient(ellipse 75% 70% at 62% 32%,#000 25%,transparent 78%)}
.hero__grid{display:grid;gap:56px;align-items:center}
@media(min-width:960px){.hero__grid{grid-template-columns:1.2fr .8fr;gap:64px}}
.kicker{display:inline-flex;align-items:center;gap:10px;font:600 12px/1.35 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);background:rgba(63,168,224,.10);border:1px solid rgba(63,168,224,.28);padding:8px 14px;border-radius:999px;margin:0 0 24px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(79,179,81,.18);animation:pulse 2.6s ease-in-out infinite}
h1{font-size:clamp(44px,6.4vw,74px);line-height:.98;letter-spacing:-.035em;font-weight:900;margin:0 0 24px;color:#fff}
.h1__sub{display:block;font-size:.47em;line-height:1.16;letter-spacing:-.02em;font-weight:800;margin-top:14px;color:var(--blue);background:linear-gradient(90deg,#3FA8E0,#8ED0F5);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.lede{font-size:clamp(17px,1.55vw,19.5px);line-height:1.62;color:var(--on-dark);max-width:36em;margin:0 0 32px}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 16px/1 var(--font);text-decoration:none;padding:17px 22px;border-radius:12px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn--green{background:var(--green);color:#fff;box-shadow:0 10px 30px rgba(79,179,81,.32)}
.btn--green:hover{color:#fff;transform:translateY(-2px);box-shadow:0 16px 36px rgba(79,179,81,.42)}
.btn--ghost{color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.26)}
.btn--ghost:hover{color:#fff;background:rgba(255,255,255,.14)}
.ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--on-dark);font-size:14.5px;font-weight:600}
.ticks li{display:flex;align-items:center;gap:8px}
.ticks svg{color:var(--green)}
.hero__wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:90px;color:var(--paper)}
.hero__wave--white{color:#fff}

/* Hero photo */
.photo{position:relative;margin:0 auto;width:100%;max-width:400px}
.photo__frame{position:relative;border-radius:var(--radius-lg);padding:8px;background:linear-gradient(150deg,var(--accent),rgba(255,255,255,.22) 55%,var(--accent));box-shadow:0 34px 90px rgba(0,0,0,.45);transform:rotate(1.6deg)}
.photo__frame img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:21px;background:var(--navy-800)}
.photo__note{position:absolute;left:-6px;bottom:-58px;display:flex;align-items:flex-start;gap:4px;font:700 34px/1 var(--hand);color:#fff;transform:rotate(-5deg)}
.photo__note svg{color:var(--blue);margin-top:-30px}
.chip{position:absolute;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.97);color:var(--ink);font-size:13.5px;font-weight:700;line-height:1.2;padding:10px 14px 10px 10px;border-radius:14px;box-shadow:0 18px 40px rgba(1,11,36,.35);animation:bob 7s ease-in-out infinite}
.chip__icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#E7F3FB;color:var(--blue-600)}
.chip__icon--green{background:#E9F6EA;color:var(--green-600)}
.chip--a{top:26px;left:-38px}
.chip--b{right:-30px;bottom:84px;animation-delay:-3.5s}
@media(max-width:560px){.chip--a{left:-4px;top:14px}.chip--b{right:-4px;bottom:22px}.photo{max-width:330px}}

/* Sections */
.section{padding:92px 0}
.section--white{background:#fff}
.section--navy{position:relative;overflow:hidden;color:var(--on-dark);background:radial-gradient(900px 500px at 100% 0%,rgba(63,168,224,.18),transparent 60%),linear-gradient(180deg,var(--navy-900),var(--navy-950))}
.eyebrow{display:flex;align-items:center;gap:10px;font:700 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--a,var(--blue-600));margin:0 0 16px}
.eyebrow::before{content:"";width:22px;height:2px;border-radius:2px;background:currentColor}
.eyebrow--light{color:var(--blue)}
h2{font-size:clamp(30px,4.1vw,46px);line-height:1.08;letter-spacing:-.03em;font-weight:800;color:var(--ink);margin:0 0 18px;text-wrap:balance}
.h2--light{color:#fff}
h3{font-size:20px;line-height:1.28;letter-spacing:-.015em;font-weight:800;color:var(--ink);margin:16px 0 10px}
.intro{font-size:clamp(17px,1.5vw,19px);line-height:1.6;max-width:40em;margin:0 0 46px}
.intro--light{color:var(--on-dark)}
.muted{color:var(--muted)}

/* Cards */
.cards{display:grid;gap:18px}
@media(min-width:880px){.cards--3{grid-template-columns:repeat(3,1fr)}}
.card{position:relative;background:#fff;border:1px solid var(--line);border-top:4px solid var(--a,var(--line));border-radius:var(--radius);padding:30px 28px;box-shadow:var(--shadow-1);transition:transform .25s ease,box-shadow .25s ease}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2)}
.card p{margin:0;font-size:16px}
.card__num{position:absolute;top:26px;right:26px;font:700 13px/1 var(--mono);color:var(--a,#B8C3D3)}
.icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:var(--a-soft,linear-gradient(145deg,#E6F3FC,#F4FAFE));border:1px solid var(--a-line,#D3E9F8);color:var(--a,var(--blue-600))}

/* Services tiles (navy band) */
.tiles{display:grid;gap:16px}
@media(min-width:720px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.tiles{grid-template-columns:repeat(4,1fr)}}
.tile{border-radius:var(--radius);padding:28px 24px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);transition:border-color .25s,transform .25s}
.tile:hover{border-color:var(--a-bright,rgba(63,168,224,.55));transform:translateY(-3px)}
.tile h3{color:#fff}
.tile p{margin:0;font-size:15.5px;color:var(--on-dark)}
.tile__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--a-glow,rgba(63,168,224,.14));border:1px solid var(--a-glow,rgba(63,168,224,.32));color:var(--a-bright,#8ED0F5)}
.tile--hl{border-color:rgba(79,179,81,.5);background:linear-gradient(180deg,rgba(79,179,81,.16),rgba(255,255,255,.03))}
.tile--hl .tile__icon{background:rgba(79,179,81,.16);border-color:rgba(79,179,81,.4);color:#8FDB91}
.tile a{color:#fff}

/* Proof */
.stats{display:grid;gap:16px;margin:0 0 18px}
@media(min-width:880px){.stats{grid-template-columns:repeat(3,1fr)}}
.stat{position:relative;overflow:hidden;border-radius:var(--radius);padding:30px 28px;color:var(--on-dark);background:radial-gradient(420px 220px at 100% 0%,rgba(63,168,224,.28),transparent 70%),linear-gradient(160deg,var(--navy-900),var(--navy-800))}
.stat__n{display:block;font-size:58px;line-height:1;font-weight:900;letter-spacing:-.045em;color:#fff;background:linear-gradient(90deg,#FFFFFF,#9FD4F2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.stat__t{display:block;margin-top:14px;font-size:15.5px;line-height:1.5}
.quotes{display:grid;gap:16px}
@media(min-width:880px){.quotes{grid-template-columns:repeat(3,1fr)}}
.quote{display:flex;flex-direction:column;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px 22px;box-shadow:var(--shadow-1)}
.stars{display:flex;gap:3px;color:#F5B301}
.quote blockquote{flex:1;margin:14px 0 18px;font-size:18.5px;line-height:1.48;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.quote figcaption{font-size:14px;color:var(--muted)}
.tp{display:flex;align-items:flex-start;gap:10px;margin:22px 0 0;font-size:14.5px;color:var(--muted)}
.tp svg{color:#00B67A;margin-top:3px}

/* How I found you */
.split{display:grid;gap:48px;align-items:start}
@media(min-width:980px){.split{grid-template-columns:1.05fr .95fr;gap:72px}}
.facts{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:20px}
.facts li{display:flex;gap:16px}
.facts__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--a-soft,var(--paper-2));color:var(--a,var(--blue-600));flex:none}
.facts b{display:block;font-size:16.5px;margin:2px 0 3px}
.facts p{margin:0;font-size:16px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;text-decoration:none;color:var(--blue-600);border-bottom:2px solid rgba(26,107,189,.25);padding-bottom:3px}
.link-arrow:hover{border-bottom-color:var(--blue-600)}
.record{position:relative;border-radius:22px;background:var(--navy-950);color:var(--on-dark);padding:26px;box-shadow:var(--shadow-2);font:500 14px/1.5 var(--mono)}
@media(min-width:980px){.record{position:sticky;top:28px}}
.record__bar{display:flex;align-items:center;gap:7px;margin:0 0 20px}
.record__bar i{width:11px;height:11px;border-radius:50%;background:#33415C}
.record__bar i:nth-child(1){background:#E5484D}.record__bar i:nth-child(2){background:#F5B301}.record__bar i:nth-child(3){background:var(--green)}
.record__bar span{margin-left:10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-dark-2)}
.record dl{margin:0;display:grid;gap:12px}
.record dl div{display:grid;gap:3px;padding:0 0 12px;border-bottom:1px dashed rgba(255,255,255,.12)}
.record dl div:last-child{border-bottom:0;padding-bottom:0}
.record dt{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.record dd{margin:0;color:#E6EDF6}
.record__ok{color:#8FDB91}
.record__note{margin:18px 0 0;font:600 13px/1.5 var(--font);color:var(--on-dark-2)}

/* Opt out */
.optout{position:relative;overflow:hidden;border-radius:30px;padding:clamp(28px,5vw,56px);background:radial-gradient(700px 360px at 0% 0%,rgba(79,179,81,.20),transparent 65%),#fff;border:1px solid #CFE9D1;box-shadow:var(--shadow-2)}
.optout .eyebrow{color:var(--green-600)}
.optout h2{max-width:16em}
.optout__lead{font-size:19px;margin:0 0 36px;max-width:34em}
.steps{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:16px;counter-reset:s}
@media(min-width:880px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.steps__n{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-weight:800;margin:0 0 14px;box-shadow:0 8px 20px rgba(79,179,81,.35)}
.steps b{display:block;font-size:18px;letter-spacing:-.01em;margin:0 0 6px}
.steps p{margin:0;font-size:15.5px}
.optout__alt{margin:0;font-size:15.5px;color:var(--muted)}

/* Check I'm real */
.ledger{margin:0;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-1);overflow:hidden}
.ledger div{display:grid;gap:4px;padding:18px 24px;border-bottom:1px solid var(--line)}
@media(min-width:600px){.ledger div{grid-template-columns:170px 1fr;gap:18px}}
.ledger div:last-child{border-bottom:0}
.ledger dt{font:700 12px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.ledger dd{margin:0;color:var(--ink);font-weight:600;font-size:16px}
.ledger dd small{display:block;font-weight:500;color:var(--muted);font-size:14px;margin-top:2px}
.verify{display:flex;gap:14px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px 20px;margin:28px 0 0;font-size:15.5px}
.verify svg{color:var(--green-600);margin-top:2px}

/* Footer */
.foot{background:var(--navy-950);color:var(--on-dark-2);padding:56px 0 40px;font-size:14px}
.foot__in{display:grid;gap:28px}
@media(min-width:880px){.foot__in{grid-template-columns:1fr auto;align-items:start}}
.foot p{margin:16px 0 0;max-width:46em;line-height:1.6}
.foot__nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.foot__nav a{color:#fff;text-decoration:none;font-weight:600}
.foot__nav a:hover{color:var(--blue)}
.foot .foot__small{grid-column:1/-1;max-width:none;margin:0;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:13px;color:var(--on-dark-2)}

/* Privacy notice */
.hero--doc{padding:124px 0 132px}
.h1--doc{font-size:clamp(36px,5.2vw,60px);max-width:14em}
.docmeta{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.docmeta span{font:600 12.5px/1 var(--mono);color:var(--on-dark);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:9px 12px;border-radius:999px}
.doc{display:grid;gap:40px;padding-top:40px;padding-bottom:96px}
@media(min-width:1000px){.doc{grid-template-columns:250px minmax(0,1fr);gap:64px}}
.toc{display:none}
@media(min-width:1000px){.toc{display:block;position:sticky;top:28px;align-self:start}}
.toc__title{font:700 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.toc a{display:block;margin-left:-2px;padding:6px 0 6px 16px;border-left:2px solid transparent;color:var(--text);text-decoration:none;font-size:14.5px;font-weight:600;line-height:1.35}
.toc a:hover{color:var(--blue-600);border-left-color:var(--blue)}
.prose{min-width:0;max-width:780px}
.prose > section{scroll-margin-top:24px;padding:0 0 38px;margin:0 0 38px;border-bottom:1px solid var(--line)}
.prose > section:last-child{border-bottom:0;margin-bottom:0}
.prose h2{font-size:clamp(25px,2.7vw,31px);margin:0 0 16px}
.prose h3{font-size:18px;margin:22px 0 8px}
.prose ul{padding-left:22px;margin:0 0 1em}
.prose li{margin:0 0 8px}
.prose li::marker{color:var(--blue-600)}
.summary{display:grid;gap:12px}
@media(min-width:620px){.summary{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1200px){.summary{grid-template-columns:repeat(3,1fr)}}
.sum{background:#fff;border:1px solid var(--line);border-top:4px solid var(--a,var(--line));border-radius:16px;padding:18px 18px 16px;box-shadow:var(--shadow-1)}
.sum b{font:700 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--a,var(--blue-600))}
.sum p{margin:9px 0 0;font-size:15.5px;line-height:1.5}
.object{border-radius:20px;padding:28px 28px 12px;background:linear-gradient(180deg,#EDF8EE,#F8FCF8);border:1px solid #CDEBCF;border-left:6px solid var(--green)}
.object h2{display:flex;align-items:center;gap:12px}
.object h2 svg{color:var(--green-600)}
.kv{list-style:none;padding:0!important;margin:0 0 1em;display:grid;gap:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.kv li{display:grid;gap:2px;margin:0;padding:13px 18px;border-bottom:1px solid var(--line);font-size:16px}
@media(min-width:600px){.kv li{grid-template-columns:200px 1fr;gap:16px}}
.kv li:last-child{border-bottom:0}
.kv span{font:700 12px/1.7 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.tbl{width:100%;border-collapse:separate;border-spacing:0;margin:6px 0 1em;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;font-size:15.5px;line-height:1.55}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:14px 18px;border-bottom:1px solid var(--line)}
.tbl th{background:var(--paper-2);font:700 12px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.tbl tr:last-child td{border-bottom:0}
.tbl td:first-child{font-weight:700;color:var(--ink);width:36%}
@media(max-width:640px){
  .tbl thead{display:none}
  .tbl,.tbl tbody,.tbl tr,.tbl td{display:block;width:100%}
  .tbl tr{border-bottom:1px solid var(--line)}
  .tbl tr:last-child{border-bottom:0}
  .tbl td{border:0;padding:6px 18px}
  .tbl td:first-child{padding-top:16px;width:100%}
  .tbl td:last-child{padding-bottom:16px}
  .tbl td::before{content:attr(data-label);display:block;font:700 11px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
}
.note{font-size:14.5px;color:var(--muted)}
.back{display:inline-flex;align-items:center;gap:8px;font-weight:700;text-decoration:none}

/* Brand logo (official artwork, white) */
.brand{display:inline-flex;align-items:center;line-height:0}
.brand img{height:54px;width:auto}
.brand--foot img{height:64px}
@media(max-width:560px){.brand img{height:46px}}

.section--tight{padding:72px 0}

/* Intro video */
.video-head{display:grid;gap:8px 48px;align-items:end;margin:0 0 30px}
@media(min-width:900px){.video-head{grid-template-columns:1fr minmax(0,26em)}}
.video-head h2{margin:0}
.video-head__note{margin:0;color:var(--muted);font-size:16px}
.video{position:relative;border-radius:26px;padding:8px;background:linear-gradient(150deg,var(--navy-900),var(--navy-700));box-shadow:var(--shadow-2)}
.video video{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:19px;background:var(--navy-950)}
.transcript{margin:18px 0 0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px}
.transcript summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:16px 0;font-weight:700;color:var(--ink)}
.transcript summary::-webkit-details-marker{display:none}
.transcript summary svg{color:var(--blue-600)}
.transcript[open] summary{border-bottom:1px solid var(--line);margin-bottom:14px}
.transcript p{font-size:16px;max-width:60em}

/* Sound familiar? pain points */
.pains{list-style:none;margin:0;padding:0;display:grid;gap:14px}
@media(min-width:700px){.pains{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.pains{grid-template-columns:repeat(3,1fr)}}
.pain{display:flex;gap:16px;align-items:flex-start;padding:22px 22px 20px;border-radius:var(--radius);background:var(--a-soft,#fff);border:1px solid var(--a-line,var(--line));transition:transform .2s}
.pain:hover{transform:translateY(-3px)}
.pain__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;flex:none;background:#fff;color:var(--a,var(--blue-600));box-shadow:0 4px 14px rgba(2,28,81,.07)}
.pain b{display:block;font-size:17px;line-height:1.35;letter-spacing:-.01em;color:var(--ink);margin:2px 0 8px}
.pain p{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:15px;line-height:1.45;font-weight:600;color:var(--a,var(--blue-600))}
.pain p svg{margin-top:1px}

/* Credentials band */
.trust{display:grid;gap:32px}
.trust__badges{display:grid;gap:14px}
@media(min-width:720px){.trust__badges{grid-template-columns:1fr 1fr}}
.badge{display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:var(--paper);text-decoration:none;color:var(--text);font-size:14.5px;line-height:1.45;transition:border-color .2s,transform .2s}
a.badge:hover{border-color:var(--blue);transform:translateY(-2px);color:var(--text)}
.badge img{width:96px;height:auto;flex:none}
.badge b{display:block;font-size:17px;color:var(--ink);margin-bottom:2px}
.badge svg{vertical-align:-2px;color:var(--blue-600)}
.trust__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:22px 18px;margin:0}
@media(min-width:880px){.trust__stats{grid-template-columns:repeat(4,1fr)}}
.trust__stats div{border-left:3px solid var(--a,var(--blue));padding:2px 0 2px 16px}
.trust__stats dt{font-size:clamp(30px,3.4vw,40px);line-height:1;font-weight:900;letter-spacing:-.035em;color:var(--ink)}
.trust__stats dd{margin:6px 0 0;font-size:14.5px;color:var(--muted);line-height:1.45}

/* Results */
.results{display:grid;gap:16px}
@media(min-width:640px){.results{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.results{grid-template-columns:repeat(4,1fr)}}
.result{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:4px solid var(--a,var(--blue));border-radius:var(--radius);padding:24px 22px;box-shadow:var(--shadow-1)}
.result p{margin:0}
.result__tag{align-self:flex-start;font:700 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--a,var(--blue-600));background:var(--a-soft,#E8F3FB);border-radius:999px;padding:7px 10px;margin:0 0 18px!important}
.result__n{font-size:clamp(32px,3vw,40px);line-height:1;font-weight:900;letter-spacing:-.04em;color:var(--ink)}
.result__label{font-weight:700;color:var(--ink);margin-top:6px!important}
.result__who{font-size:13.5px;font-weight:700;color:var(--a,var(--green-600));margin:14px 0 6px!important}
.result__text{font-size:15px;line-height:1.5}
.results-note{margin:20px 0 0;font-size:14px;color:var(--muted)}

/* Reviews */
.featured{position:relative;display:grid;gap:18px;margin:0 0 22px;padding:clamp(26px,4vw,44px);border-radius:26px;color:var(--on-dark);background:radial-gradient(600px 300px at 100% 0%,rgba(79,179,81,.22),transparent 65%),linear-gradient(160deg,var(--navy-900),var(--navy-800));box-shadow:var(--shadow-2)}
.featured__tag{justify-self:start;display:inline-flex;align-items:center;gap:8px;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#0B3B12;background:#8FDB91;border-radius:999px;padding:9px 13px}
.featured blockquote{margin:0;font-size:clamp(19px,2.2vw,26px);line-height:1.45;font-weight:700;letter-spacing:-.015em;color:#fff;max-width:46em}
.featured figcaption{font-size:15px}
.featured figcaption b{color:#fff}
.wall{columns:1;column-gap:16px}
@media(min-width:700px){.wall{columns:2}}
@media(min-width:1080px){.wall{columns:3}}
.review{break-inside:avoid;display:inline-block;width:100%;margin:0 0 16px;background:var(--a-soft,var(--paper));border:1px solid var(--a-line,var(--line));border-radius:var(--radius);padding:22px 22px 18px}
.review blockquote{margin:12px 0 14px;font-size:16px;line-height:1.55;color:var(--ink);font-weight:600}
.review figcaption{display:flex;flex-direction:column;font-size:14px;color:var(--muted)}
.review figcaption b{color:var(--ink)}

/* Client logos */
.logos{list-style:none;margin:34px 0 0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
@media(min-width:640px){.logos{grid-template-columns:repeat(3,1fr)}}
@media(min-width:980px){.logos{grid-template-columns:repeat(6,1fr)}}
.logos li{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-1);transition:transform .2s}
.logos li:hover{transform:translateY(-3px)}
.logos img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

/* Services: 12 tiles */
@media(min-width:1080px){.tiles--services{grid-template-columns:repeat(4,1fr)}}
.tiles--services .tile{padding:24px 22px}
.tiles--services .tile h3{font-size:18px}

/* Process */
.process{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:16px;counter-reset:p}
@media(min-width:880px){.process{grid-template-columns:repeat(4,1fr)}}
.process li{position:relative;padding:26px 22px 24px;border-radius:var(--radius);background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--a,var(--line))}
.process__when{display:inline-block;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--a,var(--blue-600));margin:0 0 14px}
.process b{display:block;font-size:18.5px;letter-spacing:-.01em;margin:0 0 8px}
.process p{margin:0;font-size:15.5px}
.process li:last-child{background:linear-gradient(160deg,#EDF8EE,#F8FCF8);border-color:#CDEBCF;border-top-color:var(--a,var(--green))}
.process li:last-child .process__when{color:var(--green-600)}
@media(min-width:880px){.process li:not(:last-child)::after{content:"";position:absolute;top:36px;right:-13px;width:10px;height:10px;border-top:2px solid #B8C3D3;border-right:2px solid #B8C3D3;transform:rotate(45deg)}}

/* Instagram */
.ig__head{display:grid;gap:18px 30px;align-items:center;margin:0 0 30px}
@media(min-width:960px){.ig__head{grid-template-columns:auto 1fr auto}}
.ig__intro h2{margin:0 0 10px}
.ig__intro p{margin:0;max-width:36em}
.ig__handle{color:var(--ink)}
.ig__avatar{display:grid;place-items:center;width:104px;height:104px;border-radius:50%;padding:4px;background:conic-gradient(from 210deg,#F58529,#DD2A7B,#8134AF,#515BD4,#F58529)}
.ig__avatar img{width:100%;height:100%;object-fit:contain;border-radius:50%;background:var(--navy-900);padding:18px;border:3px solid var(--paper)}
.ig__cta{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
@media(min-width:960px){.ig__cta{align-items:flex-end;text-align:right}}
.ig__more{margin:0;font-size:14.5px;color:var(--muted)}
.ig__more a{font-weight:700}
.btn--ig{color:#fff;background:linear-gradient(90deg,#DD2A7B,#8134AF,#515BD4);box-shadow:0 10px 26px rgba(129,52,175,.3)}
.btn--ig:hover{color:#fff;transform:translateY(-2px)}
.ig__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(min-width:720px){.ig__grid{grid-template-columns:repeat(4,1fr)}}
.ig__tile{position:relative;display:block;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-1);transition:transform .2s,box-shadow .2s}
.ig__tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-2)}
.ig__tile img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.ig__reel{position:absolute;top:10px;right:10px;color:#fff;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}

/* Video plus "A bit about me" */
.about-grid{display:grid;gap:22px;align-items:start}
@media(min-width:1000px){.about-grid{grid-template-columns:1.55fr 1fr;gap:26px}}
.about{background:#fff;border:1px solid var(--line);border-top:4px solid var(--a);border-radius:22px;padding:26px 26px 22px;box-shadow:var(--shadow-1)}
.about p{font-size:16px;line-height:1.62}
.about__facts{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.about__facts li{font-size:13px;font-weight:700;line-height:1.2;color:var(--a);background:var(--a-soft);border:1px solid var(--a-line);border-radius:999px;padding:8px 12px}

/* Recent websites: desktop and phone mockups */
.sites{display:grid;gap:34px 26px}
@media(min-width:700px){.sites{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.sites{grid-template-columns:repeat(3,1fr)}}
.site{display:block;text-decoration:none;color:var(--text)}
.site:hover{color:var(--text)}
.site__device{position:relative;padding:0 22px 26px 0}
.site__browser{border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:4px solid var(--a);box-shadow:var(--shadow-2);transition:transform .25s ease}
.site:hover .site__browser{transform:translateY(-4px)}
.site__bar{display:flex;align-items:center;gap:6px;padding:8px 10px;background:var(--paper-2);border-bottom:1px solid var(--line)}
.site__bar i{width:9px;height:9px;border-radius:50%;background:#E5484D;flex:none}
.site__bar i:nth-child(2){background:#F5B301}
.site__bar i:nth-child(3){background:#4FB351}
.site__bar span{flex:1;min-width:0;margin-left:6px;font:600 11.5px/1 var(--mono);color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:6px;padding:5px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.site__browser img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top}
.site__phone{position:absolute;right:0;bottom:0;width:27%;padding:4px;border-radius:16px;background:var(--ink);box-shadow:0 16px 36px rgba(1,11,36,.35);transition:transform .25s ease}
.site:hover .site__phone{transform:translateY(-8px)}
.site__phone img{width:100%;height:auto;aspect-ratio:9/17;object-fit:cover;object-position:top;border-radius:12px}
.site__meta{display:grid;gap:3px;margin-top:14px}
.site__meta b{font-size:17px;letter-spacing:-.01em;color:var(--ink)}
.site__meta span{font-size:14px;color:var(--muted)}
.site__meta .site__link{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-weight:700;color:var(--a)}

/* FAQ */
.faq{display:grid;gap:12px;align-items:start;margin-top:30px}
@media(min-width:900px){.faq{grid-template-columns:1fr 1fr;gap:14px 18px}}
.faq__item{background:#fff;border:1px solid var(--line);border-left:4px solid var(--a);border-radius:16px;box-shadow:var(--shadow-1)}
.faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 18px 18px 20px;cursor:pointer;list-style:none;font-weight:700;font-size:16.5px;line-height:1.35;color:var(--ink)}
.faq__item summary::-webkit-details-marker{display:none}
.faq__icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:none;background:var(--a-soft);color:var(--a);transition:transform .2s ease}
.faq__item[open] .faq__icon{transform:rotate(45deg)}
.faq__item p{margin:0;padding:0 20px 18px;font-size:15.5px;line-height:1.6}
.faq__item p a{display:inline-flex;align-items:center;gap:4px;font-weight:700;color:var(--a);white-space:nowrap}

@media(max-width:1100px){.nav a:not(.nav__keep){display:none}}

/* 404 */
.lost{min-height:100vh;display:grid;place-items:center;text-align:center;padding:40px 16px}
.lost h1{font-size:clamp(40px,7vw,72px)}
.lost .cta{justify-content:center}

/* Motion */
@keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(79,179,81,.18)}50%{box-shadow:0 0 0 8px rgba(79,179,81,.06)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
/* Motion only moves things: content is never hidden, so slow devices and link previews always see it. */
@keyframes rise{from{transform:translateY(16px)}to{transform:none}}
@keyframes lift{from{transform:translateY(28px) scale(.985)}to{transform:none}}
.hero__copy > *{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
.hero__copy > *:nth-child(2){animation-delay:.06s}
.hero__copy > *:nth-child(3){animation-delay:.12s}
.hero__copy > *:nth-child(4){animation-delay:.18s}
.hero__copy > *:nth-child(5){animation-delay:.24s}
.photo{animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) both}
@supports (animation-timeline:view()){
  .reveal{animation:lift linear both;animation-timeline:view();animation-range:entry 0% entry 32%}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{
  .top,.hero__wave,.chip,.photo__note,.toc,.cta{display:none!important}
  .hero,.section--navy,.foot{background:#fff!important;color:#000!important}
  h1,.h2--light,.tile h3{color:#000!important;-webkit-text-fill-color:#000!important}
}
