:root{
  --obsidian:#09090b;--graphite:#18181b;--slate:#27272a;--iron:#3f3f46;--steel:#52525b;
  --fog:#71717a;--ash:#a1a1aa;--mist:#d4d4d8;--cloud:#ececee;--paper:#f4f4f5;--snow:#ffffff;
  --forest:#08412e;--forest-deep:#052a1e;
  --ease:cubic-bezier(.16,1,.3,1);
  --check-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4.5 12.3 9.5 17.6 20 5.2' fill='none' stroke='%23000' stroke-width='4.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --arrow-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h13m-5-5 5 5-5 5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --banner-img:url("../img/apex-hills-rolling-1600.avif?v=1");
  --reel-landscape-img:url("../img/apex-hills-layered-1600.avif?v=1");

}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--graphite);font-family:'DM Sans',ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
::selection{background:var(--forest);color:var(--snow)}
a{text-decoration:none;color:inherit}
img,svg{display:block}
button,input,select,textarea{font:inherit;color:inherit}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;z-index:120;top:12px;left:12px;padding:10px 14px;border-radius:10px;background:var(--obsidian);color:var(--snow);transform:translateY(-160%);transition:transform .2s ease}
.skip-link:focus{transform:none;outline:3px solid rgba(94,178,139,.65);outline-offset:2px}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
section{padding-bottom:80px}
h1{font-size:clamp(44px,6.5vw,64px);font-weight:600;line-height:1.12;letter-spacing:-.02em;color:var(--obsidian)}
h2{font-size:clamp(32px,4vw,40px);font-weight:600;line-height:1.28;letter-spacing:-.01em;color:var(--obsidian)}
h3{font-size:20px;font-weight:600;color:var(--obsidian)}
.sub{margin-top:16px;max-width:520px;color:var(--steel);line-height:1.6}
.card{background:var(--snow);border:1px solid var(--cloud);border-radius:36px;padding:28px}
.btn{display:inline-block;border:0;cursor:pointer;border-radius:14px;background:var(--forest);color:var(--snow);padding:14px 24px;font-size:15px;font-weight:500;transition:background .25s ease,color .25s ease,box-shadow .25s ease}
.btn:hover{background:var(--forest-deep)}
.btn-dark{background:var(--obsidian)}
.btn-dark:hover{background:var(--slate)}
.btn:focus-visible{outline:3px solid rgba(94,178,139,.48);outline-offset:3px}
.icon-arrow{display:inline-block;flex:0 0 auto;width:18px;height:18px;background:currentColor;-webkit-mask:var(--arrow-shape) center/contain no-repeat;mask:var(--arrow-shape) center/contain no-repeat;vertical-align:-4px;transition:transform .32s var(--ease)}
.btn:hover .icon-arrow,.welcome-cta:hover .icon-arrow,.neutral-link:hover .icon-arrow{transform:translateX(3px)}
.pill{border-radius:9999px}
.chip{display:inline-block;border:1px solid var(--cloud);border-radius:12px;padding:4px 8px;font-size:12px;color:var(--fog)}
.chip-green{display:inline-block;background:var(--forest);color:var(--snow);border-radius:12px;padding:4px 8px;font-size:12px;font-weight:500}
.check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;margin-top:4px;border-radius:50%;background:var(--forest);color:var(--snow)}
.check::before{content:"";width:12px;height:12px;background:currentColor;-webkit-mask:var(--check-shape) center/contain no-repeat;mask:var(--check-shape) center/contain no-repeat}
.check.muted{background:var(--obsidian);color:var(--snow)}
.grid{display:grid;gap:16px}
@media(min-width:640px){.sm-2{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.lg-3{grid-template-columns:1fr 1fr 1fr}.lg-4{grid-template-columns:repeat(4,1fr)}}
/* reveal animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
/* nav */
header.nav{position:sticky;top:0;z-index:50;height:84px;padding-top:16px;pointer-events:none}
.nav-inner{position:relative;display:flex;align-items:center;justify-content:flex-end;width:min(800px,calc(100vw - 32px));min-height:52px;padding:0 8px 0 16px;margin:0 auto;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:rgba(18,18,23,.98);color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.12),0 8px 28px rgba(0,0,0,.08);pointer-events:auto;overflow:clip;contain:paint;transition:width .62s var(--ease),border-radius .5s var(--ease),background-color .4s ease,box-shadow .4s ease}
header.nav .logo{position:absolute;z-index:2;left:16px;top:50%;display:inline-flex;align-items:center;color:#fff;font-size:16px;font-weight:600;letter-spacing:-.01em;transform:translateY(-50%);transition:left .62s var(--ease),transform .62s var(--ease)}
header.nav .logo svg{flex:none;width:40px;height:40px;margin:-7px;transition:transform .55s var(--ease)}
.logo-text{position:absolute;left:34px;width:112px;white-space:nowrap;pointer-events:auto;cursor:pointer;visibility:visible;opacity:1;transform:translateX(0);transition:opacity .38s cubic-bezier(.22,.61,.36,1) .14s,transform .5s var(--ease) .1s,visibility 0s}
.nav-links{position:absolute;left:50%;display:none;gap:28px;opacity:1;transform:translateX(-50%);transition:opacity .4s cubic-bezier(.22,.61,.36,1) .18s,transform .52s var(--ease) .12s}
.nav-links a{font-size:13px;color:rgba(255,255,255,.68);white-space:nowrap;transition:color .2s}
.nav-links a:hover{color:#fff}
@media(min-width:1024px){.nav-links{display:flex}.nav-inner--no-cta .nav-links{left:calc(50% + 28px)}}
.nav-cta{position:absolute;right:8px;top:50%;border-radius:9999px;background:var(--forest);color:var(--snow);padding:9px 17px;font-size:13px;font-weight:500;white-space:nowrap;opacity:1;transform:translateY(-50%);transition:background .3s,opacity .38s cubic-bezier(.22,.61,.36,1) .22s,transform .5s var(--ease) .14s}
.nav-cta:hover{background:#0d5b40}
header.nav.is-compact .nav-inner{width:64px;border-radius:24px;background:rgba(18,18,23,.92);box-shadow:0 1px 1px rgba(0,0,0,.14),0 10px 34px rgba(0,0,0,.1)}
header.nav.is-compact .logo{left:50%;transform:translate(-50%,-50%)}
header.nav.is-compact .logo svg{transform:scale(1.04)}
header.nav.is-compact .logo-text{visibility:hidden;opacity:0;transform:translateX(-8px);transition:opacity .12s ease,transform .2s var(--ease),visibility 0s .12s}
header.nav.is-compact .nav-links{pointer-events:none;opacity:0;transition:opacity .14s ease,transform .24s var(--ease)}
header.nav.is-compact .nav-cta{pointer-events:none;opacity:0;transition:background .3s,opacity .14s ease,transform .24s var(--ease)}
header.nav.is-compact .nav-links{transform:translate(-50%,-6px)}
header.nav.is-compact .nav-cta{transform:translateY(calc(-50% - 6px))}
@media(max-width:1023px){.nav-inner{width:min(520px,calc(100vw - 32px))}}
@media(prefers-reduced-motion:reduce){header.nav,header.nav .nav-inner,header.nav .logo,header.nav .logo svg,.logo-text,.nav-links,.nav-cta{transition-duration:.01ms!important}}
/* first-visit invitation */
.welcome-popover{position:fixed;z-index:80;left:24px;bottom:24px;width:min(232px,calc(100vw - 32px));overflow:hidden;border:1px solid rgba(9,9,11,.1);border-radius:18px;background:var(--snow);box-shadow:0 18px 48px rgba(9,9,11,.15),0 2px 8px rgba(9,9,11,.07);opacity:0;visibility:hidden;transform:translate3d(0,18px,0) scale(.97);transform-origin:bottom left;transition:opacity .38s ease,transform .55s var(--ease),visibility 0s .55s}
.welcome-popover.is-visible{opacity:1;visibility:visible;transform:none;transition:opacity .38s ease,transform .55s var(--ease),visibility 0s}
.welcome-close{position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.45);border-radius:50%;cursor:pointer;background:rgba(9,9,11,.5);color:#fff;font-size:18px;line-height:1;transition:background .2s,transform .2s}
.welcome-close:hover{background:rgba(9,9,11,.75);transform:rotate(4deg)}
.welcome-close:focus-visible,.welcome-cta:focus-visible{outline:3px solid rgba(8,65,46,.28);outline-offset:3px}
.welcome-image{height:58px;background-image:linear-gradient(180deg,rgba(9,9,11,.02),rgba(9,9,11,.16)),var(--banner-img);background-size:cover;background-position:center 50%}
.welcome-body{padding:13px}
.welcome-kicker{display:block;margin-bottom:6px;color:var(--forest);font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.085em}
.welcome-body h2{max-width:206px;font-size:17px;line-height:1.1;letter-spacing:-.025em}
.welcome-body p{margin-top:7px;color:var(--steel);font-size:10.5px;line-height:1.42}
.welcome-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;border-radius:11px;background:var(--obsidian);padding:9px 10px;color:var(--snow);font-size:10.5px;font-weight:500;transition:background .2s,transform .25s var(--ease)}
.welcome-cta:hover{background:var(--forest);transform:translateY(-1px)}
@media(max-width:640px){.welcome-popover{left:16px;bottom:16px;width:min(232px,calc(100vw - 32px));border-radius:18px}.welcome-image{height:58px}.welcome-body{padding:13px}.welcome-kicker{margin-bottom:6px;font-size:8px}.welcome-body h2{font-size:17px}.welcome-body p{margin-top:7px;font-size:10.5px}.welcome-cta{margin-top:11px;padding:9px 10px;font-size:10.5px}}
@media(prefers-reduced-motion:reduce){.welcome-popover{transition-duration:.01ms}}
/* hero */
.hero{padding-top:64px;padding-bottom:120px}
@media(min-width:768px){.hero{padding-top:64px;padding-bottom:144px}}
.hero-grid{display:grid;justify-items:center;gap:28px;text-align:center}
.hero-heading{width:100%}
.hero h1{max-width:1120px;margin-inline:auto;font-size:clamp(52px,7vw,84px);line-height:1.06;letter-spacing:-.03em}
.rotator{display:inline-grid;overflow:hidden;vertical-align:bottom;height:1.12em;color:var(--forest)}
.rotator .sizer{visibility:hidden;grid-area:1/1;white-space:nowrap}
.rotator .words-inner{grid-area:1/1;display:flex;flex-direction:column;will-change:transform;animation:hero-words 12s cubic-bezier(.175,.885,.32,1.275) infinite}
.rotator .words-inner span{display:block;flex:0 0 1.12em;height:1.12em;line-height:1.12;white-space:nowrap}
@keyframes hero-words{
  0%,12%{transform:translate3d(0,0,0)}
  16.666%,28.666%{transform:translate3d(0,-14.2857%,0)}
  33.333%,45.333%{transform:translate3d(0,-28.5714%,0)}
  50%,62%{transform:translate3d(0,-42.8571%,0)}
  66.666%,78.666%{transform:translate3d(0,-57.1428%,0)}
  83.333%,95.333%{transform:translate3d(0,-71.4285%,0)}
  100%{transform:translate3d(0,-85.7142%,0)}
}
@media(prefers-reduced-motion:reduce){.rotator .words-inner{animation:none}}
.hero-sub{margin:0 auto;max-width:620px;color:var(--steel);font-size:17px;line-height:1.55}
.hero-action{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%}
.capture{display:flex;align-items:center;width:100%;min-height:58px;max-width:440px;background:var(--snow);border:1px solid var(--cloud);border-radius:18px;padding:5px 5px 5px 18px;box-shadow:none}
.hero-action .capture{margin-top:40px;max-width:none}
.capture input{flex:1;min-width:0;border:0;outline:0;background:transparent!important;font-size:15px;color:var(--graphite);box-shadow:none!important;-webkit-appearance:none;appearance:none}
.capture input::placeholder{color:var(--ash)}
.capture input:focus{outline:none;background:transparent!important;box-shadow:none!important}
.capture input:-webkit-autofill,.capture input:-webkit-autofill:hover,.capture input:-webkit-autofill:focus{-webkit-text-fill-color:var(--graphite);-webkit-box-shadow:0 0 0 1000px var(--snow) inset!important;box-shadow:0 0 0 1000px var(--snow) inset!important;caret-color:var(--graphite);transition:background-color 9999s ease-out 0s}
.capture input::selection{background:rgba(11,59,44,.14);color:var(--graphite)}
.capture button{align-self:stretch;flex-shrink:0;border:1px solid var(--obsidian);cursor:pointer;border-radius:14px;background:var(--obsidian);color:var(--snow);padding:11px 22px;font-size:15px;font-weight:500;box-shadow:none;transition:background .25s,transform .25s var(--ease)}
.capture button:hover{background:var(--slate)}
@media(max-width:1023px){.hero{padding-bottom:104px}}
@media(max-width:639px){.hero{padding-top:64px;padding-bottom:88px}.hero-grid{gap:24px}.hero-sub{font-size:16px}.capture{min-height:56px;max-width:none;border-radius:17px;padding:5px 5px 5px 16px}.capture input{font-size:15px}.capture button{border-radius:13px;padding-inline:17px;font-size:14px}}
@media(max-width:639px){
  html,body{max-width:100%;overflow-x:clip}
  .container{padding-inline:20px}
  .hero-grid,.hero-grid>*{min-width:0;max-width:100%}
  .hero h1{max-width:100%;font-size:clamp(35px,9.2vw,37px);line-height:1.04;letter-spacing:-.04em;text-align:center}
  .hero-prefix,.hero-prefix>span{display:block}
  .hero-prefix+br{display:none}
  .rotator{display:grid;width:100%;max-width:100%;min-width:0;height:1.14em}
  .rotator .sizer{width:100%;white-space:normal}
  .rotator .words-inner{width:100%;will-change:transform;animation:hero-words 12s cubic-bezier(.22,.61,.36,1) infinite}
  .rotator .words-inner span{display:block;max-width:100%;height:1.14em;line-height:1.14;white-space:nowrap;text-align:center}
  .hero-sub{max-width:38ch;overflow-wrap:normal;text-wrap:balance}
  .hero-action,.hero-action .capture{min-width:0;width:100%;max-width:100%}
  .capture{padding-left:14px}
  .capture button{max-width:116px;padding-inline:12px;white-space:nowrap}
}
.hero-mocks{position:relative;height:420px;display:none}
@media(min-width:1024px){.hero-mocks{display:block}}
.hero-mock{position:absolute;width:240px;border:1px solid var(--cloud);border-radius:20px;background:var(--snow);padding:8px;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.hero-mock .tag{position:absolute;top:-10px;right:16px}
/* ad mockups */
.mockbox{display:flex;align-items:center;justify-content:center;background:var(--cloud);padding:24px;height:100%}
.mock-card{width:192px;border:1px solid var(--mist);border-radius:12px;background:var(--snow);padding:16px;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.mock-card.dark{background:var(--graphite);color:var(--snow);box-shadow:none}
.mock-title{font-size:15px;font-weight:600;line-height:1.25;color:var(--obsidian)}
.mock-card.dark .mock-title{color:var(--snow)}
.mock-img{display:flex;align-items:center;justify-content:center;margin-top:12px;border-radius:8px;background:linear-gradient(to bottom,var(--paper),var(--mist));padding:16px 0}
.mock-card.dark .mock-img{background:var(--slate)}
.mock-note{margin-top:12px;font-size:11px;line-height:1.4;color:var(--steel)}
.mock-cta{display:inline-block;margin-top:10px;border-radius:9999px;background:var(--forest);color:var(--snow);padding:4px 12px;font-size:9px;font-weight:500}
.mock-chip{display:inline-block;border:1px solid var(--iron);border-radius:9999px;padding:2px 8px;font-size:8px;color:var(--mist)}
.work-card{overflow:hidden;border:1px solid var(--cloud);border-radius:36px;background:var(--snow);transition:transform .3s;height:100%;display:flex;flex-direction:column}
.work-card:hover{transform:translateY(-4px)}
.work-card .mockbox{height:256px}
.work-body{padding:24px}
.work-body h3{font-size:16px;margin-top:12px}
.work-body .strategy{margin-top:8px;font-size:13px;line-height:1.6;color:var(--steel)}
.formats{margin-top:12px;display:flex;gap:6px}
.formats span{border:1px solid var(--cloud);border-radius:12px;padding:4px 8px;font-size:11px;color:var(--fog)}
.note{margin-top:20px;font-size:13px;color:var(--fog)}
/* creative reel + video */
.creative-showcase{padding-top:0;padding-bottom:120px;overflow:hidden;scroll-margin-top:96px}
.showcase-head{display:grid;gap:24px;align-items:end;margin-bottom:44px}
.showcase-head h2{max-width:690px;margin-top:10px}
.showcase-head>p{max-width:430px;color:var(--steel);font-size:16px;line-height:1.6}
.section-kicker{display:inline-block;color:var(--fog);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.08em}
@media(min-width:900px){.showcase-head{grid-template-columns:1.4fr .8fr;gap:80px}}
.reel-shell{position:relative;width:100%;padding:0 0 18px;overflow:hidden;scrollbar-width:none;overscroll-behavior-x:contain}
.reel-shell::after{content:"";position:absolute;z-index:8;inset:0 0 18px;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.035) 32%,rgba(255,255,255,.07) 50%,rgba(255,255,255,.025) 68%,transparent 100%);opacity:0;transition:opacity .12s ease}
.reel-shell.is-gliding::after{opacity:1}
.reel-shell:active{cursor:grabbing}
.reel-shell::-webkit-scrollbar{display:none}
.reel-track{display:flex;width:max-content;gap:0;padding:0 24px;will-change:transform;backface-visibility:hidden}
.reel-card[aria-hidden="true"]{display:none}
.reel-card{position:relative;contain:layout paint style;flex:0 0 327px;width:327px;height:443px;overflow:hidden;border:1px solid var(--cloud);border-radius:28px;background:var(--snow)}
.reel-card--video{flex-basis:min(664px,92vw);width:min(664px,92vw)}
.reel-visual{position:relative;height:443px;overflow:hidden;padding:24px}
.reel-index{position:absolute;top:22px;right:24px;color:currentColor;font-size:11px;opacity:.6}
.reel-card:not(.reel-card--story) .reel-index{display:none}
/* Three-format customer-proof Story. Motion is isolated from the outer rail. */
.reel-card--proof-carousel{background:#f7f5ef;color:#111;outline:none}
.reel-card--proof-carousel:focus-visible{outline:3px solid rgba(8,65,46,.55);outline-offset:3px}
.proof-carousel{position:absolute;inset:0;isolation:isolate;overflow:hidden;background:#f7f5ef}
.story-panel{position:absolute;z-index:1;inset:0;overflow:hidden;opacity:0;visibility:hidden;transform:translate3d(12px,0,0) scale(1.008);transition:opacity .42s ease,transform .58s var(--ease),visibility 0s linear .58s}
.story-panel.is-active{z-index:2;opacity:1;visibility:visible;transform:none;transition:opacity .42s ease,transform .58s var(--ease),visibility 0s}
.story-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform 5s linear}
.story-panel.is-active>img{transform:scale(1.035)}
.proof-carousel-bars{position:absolute;z-index:10;top:14px;left:14px;right:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;height:3px}
.proof-carousel-bar{position:relative;overflow:hidden;height:3px;border:0;border-radius:99px;padding:0;cursor:pointer;background:rgba(255,255,255,.48);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.proof-carousel-bar span{position:absolute;inset:0;border-radius:inherit;background:#fff;transform:scaleX(0);transform-origin:left}
.proof-carousel-bar.is-complete span{transform:scaleX(1)}
.proof-carousel-bar.is-active span{animation:proof-carousel-progress var(--story-duration,5s) linear forwards}
.proof-carousel.is-paused .proof-carousel-bar.is-active span{animation-play-state:paused}
@keyframes proof-carousel-progress{to{transform:scaleX(1)}}
.story-hit{position:absolute;z-index:8;top:24px;bottom:0;width:23%;border:0;padding:0;cursor:pointer;background:transparent;touch-action:pan-x}
.story-hit--previous{left:0}.story-hit--next{right:0}
.story-hit:focus-visible{outline:2px solid rgba(255,255,255,.95);outline-offset:-5px}
.story-hit:focus-visible:after{content:"";position:absolute;top:50%;width:28px;height:28px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(9,9,11,.28);transform:translateY(-50%)}
.story-hit--previous:focus-visible:after{left:10px}.story-hit--next:focus-visible:after{right:10px}
/* MORROW: deliberately native, layered Story stickers over a casual phone photo. */
.story-panel--morrow:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,9,.12),transparent 34%,transparent 66%,rgba(20,14,9,.2));pointer-events:none}
.story-morrow-copy{position:absolute;z-index:3;inset:0;color:#10100f;font-weight:600}
.story-morrow-label{position:absolute;top:34px;left:50%;border-radius:8px;padding:7px 10px;background:#68c54f;color:#fff;font-size:20px;line-height:1;letter-spacing:-.025em;transform:translateX(-50%);white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.story-sticker{position:absolute;max-width:235px;padding:5px 8px;text-align:center;font-size:15px;line-height:1.16;letter-spacing:-.02em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.story-sticker--cream{top:82px;left:18px;background:#eff2dd;font-family:Georgia,'Times New Roman',serif;font-weight:500}
.story-sticker--dark{right:18px;bottom:82px;border-radius:6px;background:rgba(29,39,29,.88);color:#fff;font-size:13px}
.story-morrow-signoff{position:absolute;left:50%;bottom:28px;padding:5px 9px;background:#edf2df;font-family:Georgia,'Times New Roman',serif;font-size:13px;font-weight:500;transform:translateX(-50%);white-space:nowrap}
/* GOODSTRIDE: warm lifestyle image plus a compact Trustpilot proof block. */
.story-panel--goodstride:after{content:"";position:absolute;z-index:1;inset:38% 0 0;background:linear-gradient(180deg,transparent 0,rgba(249,246,238,.84) 46%,#f9f6ee 76%);pointer-events:none}
.trustpilot-lockup{position:absolute;z-index:4;top:32px;left:22px;display:flex;align-items:center;gap:5px;font-size:15px;font-weight:650;letter-spacing:-.02em}
.trustpilot-lockup span{color:#00b67a;font-size:19px}
.trustpilot-review{position:absolute;z-index:4;right:22px;bottom:24px;left:22px;color:#13271e}
.trustpilot-stars{display:flex;gap:3px;margin-bottom:11px}
.trustpilot-stars span{display:grid;place-items:center;width:20px;height:20px;background:#00b67a;color:#fff;font-size:12px}
.trustpilot-review blockquote{max-width:275px;font-size:25px;font-weight:600;line-height:1.04;letter-spacing:-.045em}
.trustpilot-review p,.haloform-review p{display:flex;align-items:center;gap:6px;margin-top:16px;font-size:11px}
.verified-dot{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#00b67a;color:#fff;font-size:9px;font-weight:700}
/* HALOFORM: minimalist editorial testimonial, with the same whitespace mechanics as the reference. */
.story-panel--haloform{background:#f7f7f5}
.story-panel--haloform>img{object-position:center top}
.haloform-wordmark{position:absolute;z-index:4;top:34px;left:24px;font-size:15px;font-weight:700;letter-spacing:.08em}
.haloform-review{position:absolute;z-index:4;right:24px;bottom:24px;left:24px;color:#09090b}
.haloform-stars{margin-bottom:11px;font-size:18px;letter-spacing:.12em}
.haloform-review blockquote{max-width:280px;font-size:24px;font-weight:450;line-height:1.05;letter-spacing:-.045em}
.haloform-review .verified-dot{background:#d78045}

.reel-meta{display:none}
.reel-meta p{font-size:15px;font-weight:600;line-height:1.2;color:var(--obsidian)}.reel-meta>span{color:var(--fog);font-size:12px;text-align:right}
.card-service-title{position:absolute;z-index:2;top:28px;left:24px;max-width:230px;color:inherit;font-size:22px;font-weight:500;line-height:1.25;letter-spacing:-.02em}
.service-tags{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.service-tags span,.format-pills span,.reel-video-copy span{display:inline-flex;align-items:center;min-height:32px;border:1px solid currentColor;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:400;line-height:1;white-space:nowrap;opacity:.94}
.reel-card--forest .reel-visual{background:#0b3b2c;color:#fff}
.reel-visual--serum{display:flex;isolation:isolate;flex-direction:column;justify-content:flex-end}.serum-photo{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.reel-visual--serum:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(3,29,22,.08),transparent 38%,rgba(3,24,18,.2) 62%,rgba(3,24,18,.72))}.reel-visual--serum strong{position:relative;z-index:2;max-width:260px;font-size:30px;line-height:1.05;letter-spacing:-.02em}
.reel-card--paper .reel-visual{background:#efefef;color:var(--obsidian)}
.reel-card--paper .reel-visual--review{display:flex;isolation:isolate;flex-direction:column;justify-content:flex-end;color:#fff}.review-photo{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.reel-visual--review:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,5,8,.48),transparent 30%,rgba(2,5,8,.14) 46%,rgba(2,5,8,.86) 73%,rgba(2,5,8,.97))}.review-stars{position:relative;z-index:2;margin-top:0;font-size:13px;letter-spacing:.18em}.reel-visual--review blockquote{position:relative;z-index:2;max-width:270px;margin-top:10px;font-size:28px;font-weight:600;line-height:1.08;letter-spacing:-.03em;text-shadow:0 1px 18px rgba(0,0,0,.28)}.review-line{display:block;width:42%;height:3px;margin-top:34px;border-radius:99px;background:var(--obsidian)}
.reel-card--dark .reel-visual{background:var(--obsidian);color:#fff}
.reel-visual--supplement-photo{display:flex;isolation:isolate;flex-direction:column;justify-content:flex-end;color:#fff}
.supplement-photo{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.reel-visual--supplement-photo:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,5,8,.12),transparent 42%,rgba(2,5,8,.18) 58%,rgba(2,5,8,.9) 84%,rgba(2,5,8,.97))}
.reel-visual--supplement-photo .reel-index{z-index:3;color:#fff;opacity:.72}
.supplement-photo-copy{position:relative;z-index:2}
.supplement-photo-copy>p{font-size:22px;font-weight:500;line-height:1.15;letter-spacing:-.025em}
.supplement-photo-copy .service-tags{margin-top:13px}
.reel-visual--meadow{background-image:linear-gradient(180deg,transparent 35%,rgba(5,42,30,.78)),var(--reel-landscape-img);background-position:center;background-size:cover;color:#fff;display:flex;align-items:flex-end}
.image-copy{display:flex;flex-direction:column;gap:8px}.image-copy small{font-size:12px}.image-copy strong{font-size:30px;line-height:1.08}
.reel-visual--video{display:flex;align-items:flex-end;color:#fff;cursor:pointer;padding:24px}
.reel-visual--video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .5s ease}
.reel-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,11,.08) 30%,rgba(9,9,11,.72));transition:background .45s ease}
.reel-video-copy{position:relative;z-index:2;display:flex;flex-direction:column;gap:12px;transition:transform .45s var(--ease)}
.reel-video-copy strong{font-size:24px}.reel-video-copy>div{display:flex;flex-wrap:wrap;gap:7px}.reel-video-copy span{border-color:rgba(255,255,255,.5);background:rgba(9,9,11,.18)}
.reel-video-play{position:absolute;z-index:3;left:50%;top:50%;display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:1px solid rgba(255,255,255,.32);border-radius:50%;cursor:pointer;background:rgba(255,255,255,.16);color:#fff;opacity:0;transform:translate(-50%,-40%) scale(.78);transition:opacity .3s ease,transform .5s var(--ease),background .25s ease}
.reel-video-play span{margin-left:3px;font-size:17px}
.reel-card--video:hover .reel-visual--video video,.reel-card--video:focus-within .reel-visual--video video{transform:scale(1.035)}
.reel-card--video:hover .reel-video-overlay,.reel-card--video:focus-within .reel-video-overlay{background:rgba(9,9,11,.28)}
.reel-card--video:hover .reel-video-copy,.reel-card--video:focus-within .reel-video-copy{transform:translateY(6px)}
.reel-card--video:hover .reel-video-play,.reel-card--video:focus-within .reel-video-play{opacity:1;transform:translate(-50%,-50%) scale(1)}
.reel-video-play:hover{background:rgba(255,255,255,.22)}
.reel-visual--ugc{display:flex;flex-direction:column;justify-content:flex-end;color:#fff}
.reel-visual--ugc video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.01)}
.ugc-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,11,.03) 34%,rgba(9,9,11,.1) 56%,rgba(9,9,11,.78) 100%)}
.ugc-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:14px;width:100%}
.ugc-copy p{font-size:25px;font-weight:500;line-height:1.08;letter-spacing:-.02em;color:#fff}
.ugc-pills{display:flex;flex-wrap:wrap;gap:6px}
.ugc-pills span{display:inline-flex;align-items:center;min-height:30px;border:1px solid rgba(255,255,255,.62);border-radius:999px;padding:6px 11px;font-size:11px;font-weight:400;line-height:1;background:rgba(9,9,11,.16)}
.reel-video-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:24px;background:rgba(9,9,11,.76);opacity:0;backdrop-filter:blur(14px);transition:opacity .3s ease}
.reel-video-modal.is-open{opacity:1}.reel-video-modal video{width:min(1040px,92vw);max-height:84vh;border-radius:28px;background:#000;transform:translateY(18px) scale(.97);transition:transform .45s var(--ease)}.reel-video-modal.is-open video{transform:none}.reel-video-modal-close{position:absolute;top:24px;right:24px;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;background:rgba(255,255,255,.12);color:#fff;font-size:22px;backdrop-filter:blur(8px)}
.reel-card--rose .reel-visual{background:#e9ddd8;color:var(--obsidian)}
.reel-visual--compare{display:flex;flex-direction:column;justify-content:center}.reel-visual--compare>strong{margin-top:36px;font-size:36px;letter-spacing:-.03em}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.compare-grid span{border:1px solid rgba(9,9,11,.14);border-radius:14px;padding:14px 12px;font-size:11px;line-height:1.5}.compare-grid span:last-child{background:var(--obsidian);color:#fff}.compare-grid b{font-size:13px}
.reel-card--white .reel-visual{background:#fff;color:var(--obsidian)}
.reel-visual--formats{display:grid;grid-template-columns:.75fr 1fr;align-items:center;gap:20px;padding-top:72px}.format-phone{height:250px;border:7px solid var(--obsidian);border-radius:28px;background:linear-gradient(160deg,var(--mist),var(--paper));transform:rotate(-4deg)}.reel-visual--formats strong{font-size:25px;line-height:1.1}.reel-visual--formats p{margin-top:8px;color:var(--steel);font-size:12px}.format-pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:18px}
.reel-visual--angle{display:flex;flex-direction:column;justify-content:flex-end}
.reel-visual--angle>strong{max-width:270px;font-size:34px;line-height:1.03;letter-spacing:-.035em}
.reel-visual--angle>p{max-width:270px;margin-top:14px;font-size:13px;line-height:1.5;opacity:.72}
.reel-card--angle .service-tags{margin-top:22px}
.angle-sand .reel-visual{background:#e7d8bf;color:#241f19}.angle-blue .reel-visual{background:#bfcfde;color:#172331}.angle-ink .reel-visual{background:#1d2430;color:#fff}.angle-mint .reel-visual{background:#c9ddd0;color:#173127}.angle-lilac .reel-visual{background:#d9d0e6;color:#2e2438}.angle-coral .reel-visual{background:#dfb6a7;color:#381f18}
.reel-toggle,.video-toggle{display:flex;align-items:center;justify-content:center;border:1px solid var(--cloud);cursor:pointer;background:rgba(255,255,255,.92);color:var(--obsidian)}
.reel-toggle{display:none}
.play-icon{display:none}.is-paused .pause-icon,.video-frame.is-paused .pause-icon{display:none}.is-paused .play-icon,.video-frame.is-paused .play-icon{display:inline}
.video-showcase{display:grid;gap:48px;align-items:center;margin-top:96px}
@media(min-width:900px){.video-showcase{grid-template-columns:.72fr 1.28fr;gap:80px}}
.video-copy h2{margin-top:12px;font-size:clamp(32px,4vw,48px);line-height:1.16}.video-copy p{max-width:460px;margin-top:20px;color:var(--steel);font-size:15px;line-height:1.7}.neutral-link{display:inline-flex;align-items:center;gap:10px;margin-top:28px;border-bottom:1px solid var(--mist);padding-bottom:4px;font-size:14px;font-weight:500}
.video-frame{position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:36px;background:var(--graphite)}
.video-frame video{width:100%;height:100%;object-fit:cover}
.video-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(9,9,11,.66))}
.video-caption{position:absolute;left:30px;bottom:28px;display:flex;flex-direction:column;gap:6px;color:#fff}.video-caption span{font-size:12px;opacity:.72}.video-caption strong{font-size:clamp(20px,2.5vw,30px)}
.video-toggle{position:absolute;right:24px;bottom:24px;width:48px;height:48px;border-color:rgba(255,255,255,.34);border-radius:50%;background:rgba(9,9,11,.5);color:#fff;backdrop-filter:blur(8px)}
@media(max-width:639px){.creative-showcase{padding-bottom:88px}.reel-card{flex-basis:280px;width:280px;height:379px;border-radius:28px}.reel-visual{height:379px;padding:20px}.card-service-title{top:26px;left:20px;font-size:19px}.service-tags span,.format-pills span,.reel-video-copy span{min-height:30px;padding:6px 11px;font-size:11px}.reel-shell:before,.reel-shell:after{display:none}.video-showcase{margin-top:76px;gap:32px}.video-frame{aspect-ratio:4/5;border-radius:28px}.video-caption{left:22px;bottom:22px}.video-toggle{right:18px;bottom:18px}}
@media(max-width:639px){
  .reel-shell{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x}
  .reel-track{gap:12px;padding:0 20px 8px;width:max-content;will-change:auto;backface-visibility:visible;transform:none!important}
  .reel-card{contain:layout paint}
  .story-bars{display:none}
  .reel-visual--video video,.reel-video-copy,.reel-video-overlay{transition:none}
  .marquee-track{animation:none!important;transform:none}
  header.nav .nav-inner{will-change:width,border-radius,background-color}
  header.nav .logo{will-change:left,transform}
  header.nav .logo svg{will-change:transform}
}
@media(prefers-reduced-motion:reduce){.story-panel,.story-panel>img{transition:none;transform:none}.proof-carousel-bar.is-active span{animation:none;transform:scaleX(1)}.reel-shell{scroll-snap-type:x mandatory}.reel-card{scroll-snap-align:center}.video-frame video{display:none}}
/* the problem — pale shell + dark accordion panel */
.problem-section{padding-bottom:80px}
.problem-shell{display:grid;gap:28px;border-radius:32px;background:var(--snow);padding:24px 20px}
@media(min-width:900px){.problem-shell{grid-template-columns:1fr 1.08fr;align-items:start;column-gap:48px;row-gap:34px;border-radius:48px;padding:48px}.problem-intro{grid-column:1}.problem-panel{grid-column:2}.method-timeline{grid-column:1/-1}}
.problem-intro{display:flex;flex-direction:column;gap:24px}
.problem-heading{margin-top:14px;max-width:560px}
.method-timeline{--row-h:34px;--row-gap:7px;position:relative;margin-top:4px}
.method-timeline__title{color:var(--obsidian);font-size:19px;font-weight:650;letter-spacing:-.025em}
.method-timeline__board{position:relative;margin-top:18px}
.method-timeline__grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);pointer-events:none}
.method-timeline__grid i{border-left:1px dashed rgba(24,24,27,.18);transform-origin:top}
.method-timeline__grid i:first-child{border-left:0}
.problem-shell.reveal.in .method-timeline__grid i{animation:mt-line-in .55s var(--ease) backwards}
.problem-shell.reveal.in .method-timeline__grid i:nth-child(2){animation-delay:.14s}
.problem-shell.reveal.in .method-timeline__grid i:nth-child(3){animation-delay:.2s}
.problem-shell.reveal.in .method-timeline__grid i:nth-child(4){animation-delay:.26s}
.method-timeline__tracks{position:relative;z-index:2;display:grid;grid-template-columns:repeat(8,1fr);grid-auto-rows:var(--row-h);row-gap:var(--row-gap);list-style:none}
.method-timeline__tracks li{grid-column:var(--start)/var(--end);min-width:0}
.method-timeline__tracks button{display:flex;width:100%;height:100%;align-items:center;overflow:hidden;border:0;border-radius:16px;background:var(--graphite);padding:0 16px;cursor:pointer;color:var(--snow);white-space:nowrap;transform-origin:left center;transition:background .38s ease,transform .52s var(--ease)}
.problem-shell.reveal.in .method-timeline__tracks button{animation:mt-bar-in .65s var(--ease) backwards;animation-delay:var(--delay)}
.method-timeline__tracks button span{overflow:hidden;text-overflow:ellipsis;font-family:'SF Pro Text Web',-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;font-size:11px;font-weight:400;letter-spacing:-.012em;transform:translateX(0);transition:transform .48s var(--ease),opacity .3s ease}
.method-timeline__tracks button[aria-pressed="true"]{background:var(--forest);transform:translateY(-2px)}
.method-timeline__tracks button[aria-pressed="true"] span{transform:translateX(3px)}
.method-timeline__tracks button:focus-visible{outline:3px solid rgba(8,65,46,.28);outline-offset:2px}
@media(hover:hover){.method-timeline__tracks button:hover{background:var(--slate);transform:translateY(-2px)}.method-timeline__tracks button:hover span{transform:translateX(3px)}.method-timeline__tracks button[aria-pressed="true"]:hover{background:#0a4c36;transform:translateY(-3px)}}
.method-timeline__axis{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px;border-top:1px solid rgba(24,24,27,.08);padding-top:8px;color:var(--fog);font-size:8.5px;font-weight:600;text-transform:uppercase;letter-spacing:.09em}
.method-timeline__axis span{text-align:center}
.problem-shell.reveal.in .method-timeline__axis span{animation:mt-fade-up .5s var(--ease) backwards}
.problem-shell.reveal.in .method-timeline__axis span:nth-child(1){animation-delay:.35s}
.problem-shell.reveal.in .method-timeline__axis span:nth-child(2){animation-delay:.4s}
.problem-shell.reveal.in .method-timeline__axis span:nth-child(3){animation-delay:.45s}
.problem-shell.reveal.in .method-timeline__axis span:nth-child(4){animation-delay:.5s}
.method-timeline__phases{display:grid;grid-template-columns:repeat(4,1fr)}
.method-timeline__phase{padding:14px 12px 2px 16px}
.method-timeline__phase:first-child{padding-left:2px}
.method-timeline__phase+.method-timeline__phase{border-left:1px dashed rgba(24,24,27,.18)}
.problem-shell.reveal.in .method-timeline__phase{animation:mt-fade-up .5s var(--ease) backwards}
.problem-shell.reveal.in .method-timeline__phase:nth-child(1){animation-delay:.42s}
.problem-shell.reveal.in .method-timeline__phase:nth-child(2){animation-delay:.48s}
.problem-shell.reveal.in .method-timeline__phase:nth-child(3){animation-delay:.54s}
.problem-shell.reveal.in .method-timeline__phase:nth-child(4){animation-delay:.6s}
.method-timeline__phase-name{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.method-timeline__phase ul{list-style:none;margin:0;padding:0}
.method-timeline__phase li{position:relative;padding-left:14px;color:var(--steel);font-size:11.5px;line-height:1.5}
.method-timeline__phase li+li{margin-top:7px}
.method-timeline__phase li::before{content:"";position:absolute;top:.52em;left:0;width:4px;height:4px;border-radius:50%;background:var(--obsidian)}
@keyframes mt-bar-in{from{opacity:0;transform:translateY(9px) scaleX(.55)}}
@keyframes mt-fade-up{from{opacity:0;transform:translateY(4px)}}
@keyframes mt-line-in{from{transform:scaleY(0)}}
@media(min-width:900px){.method-timeline{--row-h:44px;--row-gap:8px;margin-top:10px}.method-timeline__title{font-size:24px}.method-timeline__board{margin-top:24px}.method-timeline__tracks button{padding-inline:20px}.method-timeline__tracks button span{font-size:13px}.method-timeline__axis{margin-top:14px;padding-top:9px;font-size:9.5px}.method-timeline__phase{padding:18px 16px 4px 20px}.method-timeline__phase:first-child{padding-left:2px}.method-timeline__phase li{font-size:12.5px}.method-timeline__phase li+li{margin-top:8px}}
@media(max-width:899px){.method-timeline{width:100%}}
@media(max-width:639px){.method-timeline__phases{grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:18px}.method-timeline__phase{padding:0}.method-timeline__phase:first-child{padding-left:0}.method-timeline__phase+.method-timeline__phase{border-left:0}.method-timeline__phase-name{position:static;width:auto;height:auto;margin:0 0 6px;overflow:visible;clip:auto;white-space:normal;color:var(--obsidian);font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.08em}}
@media(max-width:479px){.method-timeline{--row-h:30px}.method-timeline__title{font-size:17px}.method-timeline__tracks button{padding-inline:12px;border-radius:11px}.method-timeline__tracks button span{font-size:10px}.method-timeline__axis{font-size:7.5px;letter-spacing:.07em}}
@media(max-width:359px){.method-timeline__phases{grid-template-columns:1fr}}
.problem-panel{--accordion-ease:cubic-bezier(.22,1,.36,1);list-style:none;border-radius:28px;background:var(--graphite);padding:12px 22px}
@media(min-width:900px){.problem-panel{align-self:start;border-radius:32px;padding:10px 30px}}
.problem-row{border-bottom:1px solid rgba(255,255,255,.09)}
.problem-row:last-child{border-bottom:0}
.problem-h{display:block}
.problem-trigger{display:flex;width:100%;align-items:center;gap:14px;border:0;border-radius:14px;background:none;cursor:pointer;padding:15px 0;text-align:left;transition:transform .3s var(--ease)}
.problem-trigger:focus-visible{outline:3px solid rgba(94,178,139,.55);outline-offset:2px}
.problem-ring{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--snow);color:var(--graphite);transition:background .3s ease,color .3s ease}
.problem-ring svg{transition:transform .32s var(--ease)}
.problem-title{font-size:clamp(15px,1.45vw,17px);font-weight:600;line-height:1.35;color:var(--snow)}
.problem-title .lead{color:var(--ash);font-weight:500;transition:color .3s ease}
@media(hover:hover){
  .problem-trigger:hover{transform:translateX(8px)}
  .problem-trigger:hover .problem-ring{background:var(--forest);color:var(--snow)}
  .problem-trigger:hover .problem-ring svg{transform:translateX(2px)}
  .problem-trigger:hover .problem-title .lead{color:var(--mist)}
}
.problem-row.is-open .problem-ring{background:var(--forest);color:var(--snow)}
.problem-row.is-open .problem-ring svg{transform:rotate(90deg)}
.problem-detail{display:grid;overflow:hidden;grid-template-rows:0fr;transition:grid-template-rows .45s var(--accordion-ease)}
.problem-row.is-open .problem-detail{grid-template-rows:1fr}
.problem-detail-inner{overflow:hidden;min-height:0}
.problem-detail-inner p{padding:0 8px 18px 48px;font-size:14px;line-height:1.6;color:var(--ash);opacity:0;transform:translateY(-4px);transition:opacity .3s ease,transform .35s var(--ease)}
.problem-row.is-open .problem-detail-inner p{opacity:1;transform:none;transition-delay:.06s}
/* staged scroll entry: shell reveals via the shared observer, children stagger off the same .in state */
.problem-shell.reveal{transform:translateY(16px)}
.problem-shell.reveal.in{opacity:1;transform:none}
.problem-shell.reveal .problem-intro,.problem-shell.reveal .problem-panel,.problem-shell.reveal .method-timeline{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.problem-shell.reveal .problem-row{opacity:0;transform:translateY(14px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.problem-shell.reveal.in .problem-intro{opacity:1;transform:none;transition-delay:.06s}
.problem-shell.reveal.in .problem-panel{opacity:1;transform:none;transition-delay:.14s}
.problem-shell.reveal.in .method-timeline{opacity:1;transform:none;transition-delay:.2s}
.problem-shell.reveal.in .problem-row{opacity:1;transform:none}
.problem-shell.reveal.in .problem-row:nth-child(1){transition-delay:.22s}
.problem-shell.reveal.in .problem-row:nth-child(2){transition-delay:.3s}
.problem-shell.reveal.in .problem-row:nth-child(3){transition-delay:.38s}
.problem-shell.reveal.in .problem-row:nth-child(4){transition-delay:.46s}
.problem-shell.reveal.in .problem-row:nth-child(5){transition-delay:.54s}
@media(max-width:479px){
  .problem-ring{width:30px;height:30px}
  .problem-trigger{gap:12px;padding:16px 0}
  .problem-detail-inner p{padding-left:42px}
}
@media(prefers-reduced-motion:reduce){
  .problem-shell.reveal,.problem-shell.reveal .problem-intro,.problem-shell.reveal .problem-panel,.problem-shell.reveal .problem-row,.problem-shell.reveal .method-timeline{opacity:1;transform:none;transition:none}
  .problem-trigger,.problem-row,.problem-ring,.problem-ring svg,.problem-title .lead,.problem-detail,.problem-detail-inner p,.method-timeline,.method-timeline__tracks button,.method-timeline__tracks button span{transition:none}
  .method-timeline__grid i,.method-timeline__axis span,.method-timeline__tracks button,.method-timeline__phase{animation:none}
  .method-timeline__tracks button[aria-pressed="true"]{transform:none}
}
/* marquee */
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);margin-top:40px}
.marquee-track{display:flex;gap:10px;width:max-content;animation:marquee 32s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.angle-pill{white-space:nowrap;border:1px solid var(--cloud);border-radius:9999px;background:var(--snow);padding:8px 16px;font-size:14px;color:var(--graphite)}
/* delivery */
#delivery{padding-top:clamp(72px,7.5vw,96px);padding-bottom:clamp(80px,8.5vw,112px);scroll-margin-top:84px}
.delivery{border:1px solid rgba(9,9,11,.08);border-radius:32px;background:var(--snow);padding:30px;box-shadow:0 24px 64px rgba(9,9,11,.07),0 2px 8px rgba(9,9,11,.025)}
.delivery.reveal{opacity:1;transform:none;transition:none}
.delivery-head{max-width:720px}
.delivery-head h2{font-size:clamp(29px,4vw,44px);line-height:1.06}
.delivery-head p{max-width:620px;margin-top:11px;color:var(--steel);font-size:15px;line-height:1.55}
.delivery-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:30px}
.delivery-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:94px;border:1px solid rgba(9,9,11,.025);border-radius:18px;background:#f4f4f4;padding:17px 18px;color:var(--graphite)}
.delivery-item__icon{display:grid;place-items:center;width:38px;height:38px;color:var(--obsidian)}
.delivery-item__icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.delivery-item__copy{min-width:0}
.delivery-item__copy strong,.delivery-item__copy span{display:block}
.delivery-item__copy strong{font-size:15px;font-weight:600;line-height:1.25;letter-spacing:-.012em}
.delivery-item__copy span{margin-top:3px;color:var(--fog);font-size:12.5px;line-height:1.35}
.delivery-item__type{display:grid;place-items:center;min-width:36px;height:28px;border:1px solid rgba(9,9,11,.18);border-radius:8px;padding:0 6px;color:var(--fog);font-size:9px;font-weight:600;letter-spacing:.035em;text-transform:uppercase}
.delivery-item--primary{grid-column:1/-1;border-color:var(--graphite);background:var(--graphite);color:var(--snow)}
.delivery-item--primary .delivery-item__icon{color:var(--snow)}
.delivery-item--primary .delivery-item__copy span{color:rgba(255,255,255,.62)}
.delivery-item__check{position:relative;width:28px;height:28px;border:1px solid rgba(255,255,255,.28);border-radius:8px}
.delivery-item__check:before{content:"";position:absolute;inset:7px;background:var(--snow);opacity:0;transform:scale(.35) rotate(-16deg);-webkit-mask:var(--check-shape) center/contain no-repeat;mask:var(--check-shape) center/contain no-repeat;transition:opacity .32s ease .66s,transform .6s var(--ease) .62s}
.delivery-foot{display:flex;align-items:center;justify-content:flex-end;margin-top:26px;padding:0 4px}
.delivery-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;background:var(--forest);color:var(--snow);padding:12px 18px;font-size:14px;font-weight:500;transition:background .25s ease,transform .35s var(--ease),box-shadow .35s ease}
.delivery-cta:hover{background:var(--forest-deep);transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,65,46,.16)}
.delivery-cta:hover .icon-arrow{transform:translateX(3px)}
.delivery-cta:focus-visible{outline:3px solid rgba(94,178,139,.48);outline-offset:3px}
.delivery.reveal .delivery-head,.delivery.reveal .delivery-item,.delivery.reveal .delivery-foot{opacity:0;transform:translateY(16px);transition:opacity .58s ease,transform .72s var(--ease)}
.delivery.reveal .delivery-item__icon{opacity:0;transform:scale(.88);transition:opacity .45s ease,transform .65s var(--ease)}
.delivery.reveal.in .delivery-head,.delivery.reveal.in .delivery-item,.delivery.reveal.in .delivery-foot{opacity:1;transform:none}
.delivery.reveal.in .delivery-item__icon{opacity:1;transform:none}
.delivery.reveal.in .delivery-head{transition-delay:.04s}
.delivery.reveal.in .delivery-item:nth-child(1),.delivery.reveal.in .delivery-item:nth-child(1) .delivery-item__icon{transition-delay:.12s}
.delivery.reveal.in .delivery-item:nth-child(2),.delivery.reveal.in .delivery-item:nth-child(2) .delivery-item__icon{transition-delay:.18s}
.delivery.reveal.in .delivery-item:nth-child(3),.delivery.reveal.in .delivery-item:nth-child(3) .delivery-item__icon{transition-delay:.24s}
.delivery.reveal.in .delivery-item:nth-child(4),.delivery.reveal.in .delivery-item:nth-child(4) .delivery-item__icon{transition-delay:.3s}
.delivery.reveal.in .delivery-item:nth-child(5),.delivery.reveal.in .delivery-item:nth-child(5) .delivery-item__icon{transition-delay:.38s}
.delivery.reveal.in .delivery-foot{transition-delay:.46s}
.delivery.reveal.in .delivery-item__check:before{opacity:1;transform:none}
@media(min-width:700px){.delivery{padding:42px}.delivery-grid{grid-template-columns:1fr 1fr}.delivery-item--primary{min-height:100px}.delivery-foot{margin-top:28px}}
@media(max-width:699px){.delivery-item{grid-template-columns:34px minmax(0,1fr) auto;gap:12px;min-height:86px;padding:14px}.delivery-item__icon{width:34px;height:34px}.delivery-item__icon svg{width:25px;height:25px}.delivery-cta{width:100%}}
@media(prefers-reduced-motion:reduce){.delivery.reveal .delivery-head,.delivery.reveal .delivery-item,.delivery.reveal .delivery-foot,.delivery.reveal .delivery-item__icon,.delivery-item__check:before{opacity:1;transform:none;transition:none}.delivery-cta:hover{transform:none}}
/* process */
.stepnum{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--forest);color:var(--snow);font-size:14px;font-weight:500}
.step h3{margin-top:20px}
.step p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--steel)}
/* services */
.svc p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--steel)}
.svc ul{margin-top:16px;border-top:1px solid var(--cloud);padding-top:16px;list-style:none;display:flex;flex-direction:column;gap:6px}
.svc li{display:flex;gap:8px;font-size:13px;line-height:1.4;color:var(--iron)}
.svc li:before{content:"";flex:0 0 auto;width:16px;height:16px;margin-top:1px;background:var(--ash);-webkit-mask:var(--arrow-shape) center/contain no-repeat;mask:var(--arrow-shape) center/contain no-repeat}
/* fit */
.fit ul{margin-top:20px;list-style:none;display:flex;flex-direction:column;gap:12px}
.fit li{display:flex;gap:10px;font-size:15px;color:var(--graphite)}
.fit.bad{background:var(--paper)}
.fit.bad li{color:var(--steel)}
.cross{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;margin-top:4px;border-radius:50%;background:var(--mist);color:var(--iron);font-size:10px}
.fit .honesty{margin-top:24px;border-top:1px solid var(--cloud);padding-top:20px;font-size:13px;line-height:1.6;color:var(--fog)}
/* founder */
.founder{max-width:640px;margin:0 auto;text-align:center}
.founder svg{width:48px;height:48px;margin:0 auto;color:var(--obsidian)}
.founder h2{margin-top:20px}
.founder p{margin-top:16px;line-height:1.7;color:var(--steel)}
/* divider */

/* pricing */
.plan{position:relative;display:flex;flex-direction:column;height:100%;border-width:2px}
.plan.popular{border:2px solid var(--forest)}
.plan .badge{position:absolute;top:-12px;left:28px}
.price-row{margin-top:12px;display:flex;align-items:baseline;gap:6px}
.price{font-size:36px;font-weight:600;letter-spacing:-.02em;color:var(--obsidian)}
.period{font-size:14px;color:var(--fog)}
.plan .billing-note{margin-top:5px;font-size:12px;font-weight:600;color:var(--forest)}
.plan .best{margin-top:12px;font-size:13px;line-height:1.6;color:var(--steel)}
.plan .tier-lead{margin-top:16px;font-size:12px;font-weight:600;color:var(--obsidian)}
.plan ul{margin-top:16px;margin-bottom:24px;border-top:1px solid var(--cloud);padding-top:16px;list-style:none;display:flex;flex-direction:column;gap:6px}
.plan .tier-lead+ul{margin-top:8px}
.plan li{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;color:var(--iron)}
.plan li .check{flex:0 0 18px;margin-top:0}
.plan .btn{margin-top:auto;text-align:center}
.plan .micro{margin-top:12px;text-align:center;font-size:12px;color:var(--fog)}
@media(min-width:1024px){
  .plan .btn{display:flex;align-items:center;justify-content:center;height:50px;min-height:50px;padding:0 14px;white-space:nowrap}
  .plan .micro{display:flex;align-items:flex-start;justify-content:center;min-height:35px}
}
.pricing-inclusions{max-width:880px;margin:22px auto 0;text-align:center;font-size:13px;line-height:1.6;color:var(--steel)}
.trust{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 24px;border:1px solid var(--cloud);border-radius:20px;background:var(--snow);padding:16px 24px}
.trust span{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--iron)}
.trust span:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--forest)}
.proto-note{margin-top:16px;text-align:center;font-size:12px;color:var(--ash)}
/* faq */
.faq-wrap{max-width:820px;margin:0 auto}
.faq-wrap h2{text-align:center}
.faq-list{margin-top:40px;border:1px solid var(--cloud);border-radius:36px;background:var(--snow);padding:0 28px}
@media(min-width:768px){.faq-list{padding:0 36px}}
.faq-list details{border-bottom:1px solid var(--cloud);padding:20px 0}
.faq-list details:last-child{border-bottom:0}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;font-size:16px;font-weight:500;color:var(--obsidian)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary .plus{font-size:20px;font-weight:300;color:var(--ash);transition:transform .2s}
.faq-list details[open] .plus{transform:rotate(45deg)}
.faq-list details p{margin-top:12px;max-width:640px;font-size:14px;line-height:1.7;color:var(--steel)}
/* contact */
.contact-grid{display:grid;gap:40px;align-items:start}
@media(min-width:1024px){.contact-grid{grid-template-columns:.92fr 1.25fr;gap:64px}}
.contact-left h2{font-size:clamp(32px,4.5vw,48px);line-height:1.2}
.contact-left ul{margin-top:28px;list-style:none;display:flex;flex-direction:column;gap:12px}
.contact-left li{display:flex;gap:10px;font-size:15px;color:var(--graphite)}
.form{border:1px solid var(--cloud);border-radius:36px;background:var(--snow);padding:28px;box-shadow:0 1px 1px rgba(9,9,11,.02),0 22px 70px rgba(9,9,11,.045)}
@media(min-width:768px){.form{padding:34px 36px 30px}}
.form-wizard{overflow:hidden}
.wizard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.wizard-eyebrow{display:block;color:var(--forest);font-size:11px;font-weight:600;letter-spacing:.055em;text-transform:uppercase}
.wizard-step-label{margin-top:3px;color:var(--obsidian);font-size:13px;font-weight:500}
.wizard-time{flex:none;color:var(--ash);font-size:12px}
.wizard-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;height:4px;margin-bottom:30px}
.wizard-progress span{overflow:hidden;border-radius:999px;background:var(--cloud);transition:background .3s ease}
.wizard-progress span:after{display:none}
@keyframes wizard-pulse{to{opacity:.62}}
.wizard-stage{position:relative;overflow:hidden}
.form-step{position:relative;width:100%;padding-bottom:0;visibility:visible;pointer-events:auto;opacity:1;transform:none}
.form-step[hidden]{display:none}
.step-number{display:block;margin-bottom:10px;color:var(--ash);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.form-step h3{max-width:520px;font-size:clamp(24px,3vw,31px);line-height:1.18;letter-spacing:-.025em}
.step-help{margin-top:9px;color:var(--fog);font-size:13px;line-height:1.55}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}
.choice-grid--compact{grid-template-columns:1fr}
.choice-card{position:relative;display:flex;min-height:78px;flex-direction:column;justify-content:center;border:1px solid var(--cloud);border-radius:18px;background:var(--paper);padding:14px 42px 14px 16px;cursor:pointer;transition:border-color .25s cubic-bezier(.22,1,.36,1),background .25s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,transform .35s cubic-bezier(.22,1,.36,1)}
.choice-grid--compact .choice-card{min-height:53px}
.choice-card:hover{border-color:var(--mist);background:#f8f8f8;transform:translateY(-2px)}
.choice-card:after{content:"";position:absolute;top:50%;right:16px;width:16px;height:16px;border:1.5px solid var(--mist);border-radius:50%;background:var(--snow);transform:translateY(-50%);transition:border-color .2s ease,box-shadow .2s ease}
.choice-card:before{content:"";position:absolute;z-index:1;top:50%;right:21px;width:8px;height:8px;border-radius:50%;background:var(--forest);transform:translateY(-50%) scale(0);transition:transform .38s cubic-bezier(.34,1.56,.64,1)}
.choice-card:has(input:checked){border-color:rgba(8,65,46,.48);background:rgba(8,65,46,.055);box-shadow:none}
.choice-card:has(input:checked):after{border-color:var(--forest)}
.choice-card:has(input:checked):before{transform:translateY(-50%) scale(1)}
.choice-card--multi:after{border-radius:5px}
.choice-card--multi:before{right:19px;width:11px;height:11px;border-radius:0;background:var(--forest);-webkit-mask:var(--check-shape) center/contain no-repeat;mask:var(--check-shape) center/contain no-repeat}
.choice-card:has(input:focus-visible){outline:3px solid rgba(94,178,139,.35);outline-offset:2px}
.choice-card input{position:absolute;width:1px;height:1px;opacity:0}
.choice-card span{font-size:13px;font-weight:500;color:var(--obsidian)}
.choice-card small{margin-top:3px;color:var(--fog);font-size:11px;line-height:1.35}
.step-fields{display:grid;gap:14px;margin-top:26px}
@media(min-width:640px){.step-fields{grid-template-columns:1fr 1fr}}
.field label{display:block;margin-bottom:6px;font-size:13px;color:var(--steel)}
.field label .opt{color:var(--ash)}
.field input,.field select,.field textarea{width:100%;border:1px solid transparent;border-radius:14px;background:var(--paper);padding:13px 16px;font-size:14px;color:var(--graphite);outline:none;transition:border-color .2s,background .2s,box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(8,65,46,.3);background:var(--snow);box-shadow:0 0 0 3px rgba(8,65,46,.07)}
.field input::placeholder,.field textarea::placeholder{color:var(--ash)}
.field textarea{resize:vertical;min-height:148px}
.field--large{margin-top:24px}
.apex-human-check{width:100%;min-height:0;margin-top:18px}.apex-human-check iframe{max-width:100%}
.wizard-actions{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:28px}
.wizard-back{min-height:48px;border:0;border-radius:14px;background:transparent;padding:0 12px;cursor:pointer;color:var(--fog);font-size:13px;font-weight:500;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(8px);transition:color .2s,background .2s,opacity .28s ease,transform .35s cubic-bezier(.22,1,.36,1),visibility 0s linear .35s}
.wizard-back:hover:not(:disabled){background:var(--paper);color:var(--obsidian)}
.wizard-back.show:not(:disabled){opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0);transition-delay:0s}
.wizard-back:disabled{visibility:hidden;pointer-events:none}
.wizard-next,.wizard-submit{justify-self:stretch;display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;transition:background .22s,transform .35s cubic-bezier(.22,1,.36,1),box-shadow .25s ease}
.wizard-next:hover,.wizard-submit:hover{transform:scale(1.015)}
.wizard-next:active,.wizard-submit:active{transform:scale(.985)}
.wizard-next span,.wizard-submit span{font-size:18px;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.wizard-next:hover span,.wizard-submit:hover span{transform:translateX(4px)}
.wizard-next[hidden],.wizard-submit[hidden],.wizard-actions[hidden]{display:none}
.form .response{min-height:21px;margin-top:12px;text-align:center;font-size:12px;line-height:1.55;color:var(--fog)}
.form .response.success{color:var(--forest)}
.form .response.error{color:#9a2f22}
.form .btn:disabled{cursor:wait;opacity:.68}
.form-success{padding:32px 0 24px;text-align:center}
.form-success h3{margin-inline:auto}
.form-success p{max-width:470px;margin:12px auto 0;color:var(--fog);font-size:14px;line-height:1.65}
.success-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border-radius:50%;background:var(--forest);color:var(--snow);box-shadow:0 12px 28px rgba(8,65,46,.18);transform:scale(0)}
.success-mark svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.success-mark path{stroke-dasharray:30;stroke-dashoffset:30}
.form-success.is-active .success-mark{transform:scale(1);transition:transform .5s cubic-bezier(.34,1.56,.64,1) .15s}
.form-success.is-active .success-mark path{stroke-dashoffset:0;transition:stroke-dashoffset .45s cubic-bezier(.22,1,.36,1) .5s}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:639px){
  .contact-grid{gap:30px}.form{border-radius:26px;padding:24px 20px}.wizard-head{margin-bottom:14px}.wizard-progress{margin-bottom:25px}.wizard-time{display:none}.choice-grid{grid-template-columns:1fr}.choice-card{min-height:61px}.form-step h3{font-size:25px}.wizard-actions{margin-top:24px}.wizard-next,.wizard-submit{font-size:14px;padding-inline:16px}.wizard-submit{line-height:1.25}.contact-left ul{margin-top:22px}
}
@media(prefers-reduced-motion:reduce){
  .form-step,.wizard-stage,.choice-card,.wizard-back,.wizard-next span,.wizard-submit span,.success-mark,.success-mark path{animation:none!important;transition-duration:.01ms!important}
}
/* footer */
footer{border-top:1px solid var(--cloud)}
.foot .logo{position:static;display:inline-flex;align-items:center;gap:8px;color:var(--obsidian);font-size:16px;font-weight:600;transform:none}
.foot .logo svg{width:26px;height:26px;margin:0}
.foot{display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:48px 24px 0;max-width:1200px;margin:0 auto}
@media(min-width:768px){.foot{flex-direction:row}}
.foot .tagline{margin-top:12px;max-width:260px;font-size:13px;line-height:1.6;color:var(--steel)}
.foot-cols{display:flex;flex-wrap:wrap;gap:48px}
.foot-col{display:flex;flex-direction:column;gap:10px}
.foot-col p{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--steel)}
.foot-col a{font-size:14px;color:var(--iron);transition:color .2s}
.foot-col a:hover{color:var(--obsidian)}
.copyright{max-width:1200px;margin:0 auto;padding:32px 24px 20px;font-size:12px;color:var(--steel)}
.legal-links{display:flex;justify-content:center;gap:18px;padding:0 24px 32px;font-size:12px;color:var(--steel)}
.legal-links a:hover{color:var(--obsidian)}
