/* hqlabz.com, the marketing site's one stylesheet (redesign, 2026-09-25).

   Loaded by index.html for the React pages (home, Get Started, legal) and by
   every static page the portfolio builder writes (/work, /services, /about,
   the case studies and the concept pages), so the header, the footer and the
   type are the same file everywhere and cannot drift apart.

   Everything is scoped to .hq, .hq-top or .hq-foot, so nothing here reaches
   the admin or the Command Center.

   Colour: ink and bone, with the HQ Labz logo's blue as the one accent. The
   logo's green and red appear only as the "New" sticker and small marks.
   Type: Bricolage Grotesque for display, Inter for reading. */

.hq,.hq-top,.hq-foot{
  --ink:#0B0C0E;--ink-2:#141619;--ink-3:#1E2126;--bone:#F2EFE9;--bone-2:#E9E5DD;--paper:#FFFFFF;
  --text:#0B0C0E;--mute:#4A4F57;--mute-2:#6E747D;--line:#E1DDD4;
  --on-ink:#FFFFFF;--on-ink-2:rgba(255,255,255,.76);--on-ink-3:rgba(255,255,255,.56);--dline:rgba(255,255,255,.13);
  --blue:#0073CF;--blue-ink:#1257B0;--blue-lite:#4DA3FF;--green:#50C878;--red:#BD3F3C;
  --display:"Bricolage Grotesque","Inter",system-ui,sans-serif;
  --body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1380px;--gut:clamp(20px,4.2vw,56px);--top:72px;
  --ease:cubic-bezier(.2,.7,.2,1);
  font-family:var(--body);font-size:17px;line-height:1.55;color:var(--text);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
}
@media (max-width:900px){.hq,.hq-top,.hq-foot{--top:64px;font-size:16px}}
.hq *,.hq *::before,.hq *::after,.hq-top *,.hq-foot *{box-sizing:border-box}
.hq a,.hq-top a,.hq-foot a{color:inherit;text-decoration:none}
.hq img{max-width:100%;height:auto;display:block}
.hq h1,.hq h2,.hq h3,.hq h4,.hq-foot h2{margin:0;font-weight:700}
.hq p,.hq figure,.hq ul,.hq ol{margin:0}
.hq ul,.hq ol{padding:0;list-style:none}
.hq button{font:inherit}
.hq :focus-visible,.hq-top :focus-visible,.hq-foot :focus-visible{outline:3px solid var(--blue-lite);outline-offset:3px;border-radius:8px}
body.hq{margin:0;padding-top:var(--top);background:var(--paper)}
.hq .wrap,.hq-top .wrap,.hq-foot .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.hq .skip,.hq-top .skip{position:absolute;left:12px;top:-100px;z-index:100;background:#fff;color:var(--ink);padding:10px 14px;border-radius:10px;font-weight:600}
.hq .skip:focus,.hq-top .skip:focus{top:12px}
.hq [hidden]{display:none!important}
.hq .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ------------------------------------------------------------------ type */
.hq .d1{font-family:var(--display);font-weight:800;font-size:clamp(60px,12.4vw,196px);line-height:.86;letter-spacing:-.052em}
.hq .d2{font-family:var(--display);font-weight:800;font-size:clamp(42px,6.6vw,104px);line-height:.92;letter-spacing:-.045em}
.hq .d3{font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,44px);line-height:1.02;letter-spacing:-.03em}
.hq .d4{font-family:var(--display);font-weight:700;font-size:clamp(22px,1.9vw,28px);line-height:1.1;letter-spacing:-.02em}
.hq .d1 em,.hq .d2 em{font-style:normal;color:var(--blue)}
.hq .ink .d1 em,.hq .ink .d2 em{color:var(--blue-lite)}
.hq .ey{display:block;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-ink)}
.hq .ink .ey{color:var(--blue-lite)}
.hq .lede{font-size:clamp(18px,1.5vw,22px);line-height:1.5;color:var(--mute);max-width:640px}
.hq .ink .lede{color:var(--on-ink-2)}
.hq .muted{color:var(--mute)}
.hq .ink .muted{color:var(--on-ink-2)}

/* ------------------------------------------------------------------ buttons */
.hq .b,.hq-top .b,.hq-foot .b{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;font-family:var(--body);font-weight:600;font-size:16px;line-height:1;border:1.5px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .2s var(--ease),background .2s ease,color .2s ease,border-color .2s ease}
.hq .b svg,.hq-top .b svg,.hq-foot .b svg{width:18px;height:18px;flex:none;transition:transform .2s var(--ease)}
.hq .b:hover svg,.hq-top .b:hover svg,.hq-foot .b:hover svg{transform:translateX(3px)}
.hq .b.pri,.hq-top .b.pri,.hq-foot .b.pri{background:var(--blue);color:#fff}
.hq .b.pri:hover,.hq-top .b.pri:hover,.hq-foot .b.pri:hover{background:#0A66BA}
.hq .b.dark{background:var(--ink);color:#fff}
.hq .b.dark:hover{background:#23262C}
.hq .b.line{border-color:rgba(11,12,14,.22);color:var(--ink);background:transparent}
.hq .b.line:hover{border-color:var(--ink)}
.hq .ink .b.line,.hq-foot .b.line{border-color:rgba(255,255,255,.3);color:#fff}
.hq .ink .b.line:hover,.hq-foot .b.line:hover{border-color:#fff}
.hq .b.inv{background:#fff;color:var(--ink)}
.hq .b.sm,.hq-top .b.sm{height:42px;padding:0 18px;font-size:15px}
.hq .b.lg,.hq-foot .b.lg{height:62px;padding:0 32px;font-size:17px}
.hq .tl{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--blue-ink);border-bottom:1.5px solid currentColor;padding-bottom:2px}
.hq .ink .tl{color:#fff}
.hq .tl svg{width:16px;height:16px;transition:transform .2s var(--ease)}
.hq .tl:hover svg{transform:translateX(3px)}
.hq .row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ------------------------------------------------------------------ header */
.hq-top{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--top);background:var(--ink);color:#fff;font-family:var(--body);-webkit-font-smoothing:antialiased;border-bottom:1px solid rgba(255,255,255,.06)}
.hq-top .bar{display:flex;align-items:center;gap:28px;height:var(--top)}
.hq-top .logo{display:flex;align-items:center;flex:none}
.hq-top .logo img{height:44px;width:auto;display:block}
.hq-top nav.main{display:flex;align-items:center;gap:2px;margin-left:auto}
.hq-top nav.main a{position:relative;padding:10px 14px;border-radius:999px;font-size:15px;font-weight:500;color:rgba(255,255,255,.74);transition:color .15s ease,background .15s ease}
.hq-top nav.main a:hover{color:#fff;background:rgba(255,255,255,.07)}
.hq-top nav.main a[aria-current="page"]{color:#fff}
.hq-top nav.main a[aria-current="page"]::after{content:"";position:absolute;left:50%;bottom:3px;width:5px;height:5px;border-radius:50%;background:var(--blue-lite);transform:translateX(-50%)}
.hq-top .go{flex:none}
.hq-top .burger{display:none;margin-left:auto;width:46px;height:46px;border-radius:999px;border:1.5px solid rgba(255,255,255,.22);background:transparent;color:#fff;align-items:center;justify-content:center;cursor:pointer;padding:0}
.hq-top .burger svg{width:22px;height:22px}
.hq-menu{display:none}
@media (max-width:900px){
  .hq-top .bar{gap:12px}
  .hq-top .logo img{height:38px}
  .hq-top nav.main{display:none}
  .hq-top .go{margin-left:auto;height:40px;padding:0 16px;font-size:14.5px}
  .hq-top .go svg{display:none}
  .hq-top .burger{display:inline-flex;margin-left:0}
  .hq-menu{display:flex;flex-direction:column;position:fixed;left:0;right:0;top:var(--top);bottom:0;z-index:59;background:var(--ink);color:#fff;padding:18px var(--gut) calc(28px + env(safe-area-inset-bottom));overflow-y:auto;animation:hq-menu .22s var(--ease)}
  .hq-menu[hidden]{display:none}
  .hq-menu nav{display:flex;flex-direction:column}
  .hq-menu nav a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--display);font-weight:700;font-size:38px;line-height:1;letter-spacing:-.035em;color:#fff}
  .hq-menu nav a svg{width:26px;height:26px;color:rgba(255,255,255,.5)}
  .hq-menu nav a[aria-current="page"]{color:var(--blue-lite)}
  .hq-menu .b{margin-top:28px;width:100%;height:58px;font-size:17px}
  .hq-menu .small{margin-top:auto;padding-top:28px;display:flex;gap:18px;flex-wrap:wrap;font-size:14px;color:rgba(255,255,255,.6)}
}
@keyframes hq-menu{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
html.hq-lock,html.hq-lock body{overflow:hidden}

/* ------------------------------------------------------------------ footer */
.hq-foot{background:var(--ink);color:#fff}
.hq-foot .cta{padding-top:clamp(88px,12vw,168px);padding-bottom:clamp(64px,8vw,104px);border-bottom:1px solid var(--dline)}
.hq-foot .cta .ey{display:block;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-lite)}
.hq-foot .cta h2{font-family:var(--display);font-weight:800;font-size:clamp(56px,10vw,160px);line-height:.88;letter-spacing:-.05em;margin-top:18px}
.hq-foot .cta p{font-size:clamp(17px,1.4vw,20px);color:var(--on-ink-2);max-width:560px;margin-top:22px}
.hq-foot .cta .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hq-foot .cols{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;padding-top:64px;padding-bottom:40px;font-size:15px}
.hq-foot .brand img{height:48px;width:auto;display:block}
.hq-foot .brand p{margin-top:18px;color:var(--on-ink-2);max-width:320px;line-height:1.55}
.hq-foot h3{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink-3);font-weight:600;margin:0 0 16px}
.hq-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.hq-foot ul a{color:rgba(255,255,255,.82);transition:color .15s ease}
.hq-foot ul a:hover{color:#fff}
.hq-foot .base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--dline);padding-top:24px;padding-bottom:36px;color:var(--on-ink-3);font-size:13.5px}
.hq-foot .base a:hover{color:#fff}
@media (max-width:900px){.hq-foot .cols{grid-template-columns:1fr 1fr}.hq-foot .brand{grid-column:1/-1}}
@media (max-width:520px){.hq-foot .cta .row .b{flex:1 1 100%}}

/* ------------------------------------------------------------------ sections */
.hq .s{padding:clamp(88px,11vw,168px) 0}
.hq .s.tight{padding:clamp(64px,8vw,112px) 0}
.hq .ink{background:var(--ink);color:#fff}
.hq .bone{background:var(--bone)}
.hq .paper{background:var(--paper)}
.hq .sh{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
.hq .sh .ey{margin-bottom:18px}
.hq .sh p{font-size:clamp(17px,1.35vw,20px);color:var(--mute);max-width:520px}
.hq .ink .sh p{color:var(--on-ink-2)}
.hq .sh .row{margin-top:22px}
@media (max-width:900px){.hq .sh{grid-template-columns:1fr;align-items:start}}

/* ------------------------------------------------------------------ page hero (inner pages) */
.hq .ph{background:var(--ink);color:#fff;padding:clamp(72px,10vw,150px) 0 clamp(64px,8vw,112px)}
.hq .ph .d1{font-size:clamp(58px,10.5vw,168px);margin-top:20px}
.hq .ph .lede{margin-top:28px;color:var(--on-ink-2);max-width:720px}
.hq .ph .row{margin-top:36px}
.hq .crumbs{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:500;color:var(--on-ink-2);margin-bottom:28px}
.hq .crumbs:hover{color:#fff}
.hq .crumbs svg{width:16px;height:16px}

/* ------------------------------------------------------------------ home: hero */
.hq .hero{background:var(--ink);color:#fff;padding:clamp(64px,9vw,136px) 0 clamp(40px,5vw,72px);position:relative;overflow:hidden}
.hq .hero .d1{margin-top:22px;max-width:12ch}
.hq .hero .under{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:end;margin-top:clamp(32px,4vw,56px)}
.hq .hero .lede{color:var(--on-ink-2);max-width:620px}
.hq .hero .row{justify-content:flex-end}
.hq .hero .lines{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:clamp(40px,5vw,72px);padding-top:24px;border-top:1px solid var(--dline);font-size:15px;color:var(--on-ink-2)}
.hq .hero .lines span{display:inline-flex;align-items:center;gap:10px}
.hq .hero .lines span::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--blue-lite)}
.hq .hero .lines span:nth-child(2)::before{background:var(--green)}
.hq .hero .lines span:nth-child(3)::before{background:#fff}
.hq .hero .lines span:nth-child(4)::before{background:var(--red)}
@media (max-width:900px){.hq .hero .under{grid-template-columns:1fr}.hq .hero .row{justify-content:flex-start}.hq .hero .row .b{flex:1 1 auto}}

/* ------------------------------------------------------------------ home: exploded view
   A finished page (a concept brand's drop page) that comes apart into its layers as the
   visitor scrolls, then settles back flat. JS writes --e (0 flat, 1 apart) and marks the
   layer in focus; with reduced motion it stays apart and still. */
.hq .xv{position:relative;background:var(--ink);color:#fff;height:430vh}
.hq .xv .pin{position:sticky;top:var(--top);height:calc(100vh - var(--top));height:calc(100svh - var(--top));display:grid;grid-template-columns:minmax(300px,440px) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);overflow:hidden}
.hq .xv .copy .d2{font-size:clamp(40px,4.6vw,72px)}
.hq .xv .copy .lede{margin-top:20px;font-size:clamp(16px,1.2vw,18px)}
.hq .xv .steps{margin-top:30px;display:grid;gap:4px;counter-reset:x}
.hq .xv .steps li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:12px 14px;border-radius:14px;transition:background .3s ease,opacity .3s ease;opacity:.42}
.hq .xv .steps li b{font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:-.01em}
.hq .xv .steps li span{display:block;font-size:14.5px;color:var(--on-ink-2);margin-top:2px;line-height:1.45}
.hq .xv .steps li i{font-style:normal;font-size:12.5px;font-weight:700;color:var(--blue-lite);padding-top:5px;letter-spacing:.06em}
.hq .xv .steps li.on{opacity:1;background:rgba(255,255,255,.06)}
.hq .xv .copy .fine{margin-top:18px;font-size:13px;color:var(--on-ink-3);display:flex;gap:8px;align-items:flex-start}
.hq .xv .copy .fine svg{width:15px;height:15px;flex:none;margin-top:2px}
.hq .xv .stage{position:relative;height:100%;display:flex;align-items:center;justify-content:center;perspective:2200px;perspective-origin:50% 40%}
.hq .xv .frame{width:min(100%,960px);container-type:inline-size}
.hq .xv .stack{--e:0;position:relative;width:100%;aspect-ratio:16/10.4;transform-style:preserve-3d;transform:translateY(calc(var(--e) * 9%)) rotateX(calc(var(--e) * 54deg)) rotateZ(calc(var(--e) * -32deg)) scale(calc(1 - var(--e) * .3));will-change:transform}
.hq .xv .ly{position:absolute;inset:0;border-radius:1.2cqw;transform:translateZ(calc(var(--e) * var(--z) + var(--lift,0px)));transition:opacity .35s ease;will-change:transform}
.hq .xv .ly::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid rgba(255,255,255,calc(var(--e) * .5));pointer-events:none}
.hq .xv .ly.on::after{border:2px solid rgba(77,163,255,calc(var(--e)));box-shadow:0 0 0 calc(var(--e) * 6px) rgba(77,163,255,calc(var(--e) * .18))}
.hq .xv .stack.focus .ly:not(.on){opacity:.58}
.hq .xv .ly.on{--lift:calc(var(--e) * 46px)}
.hq .xv .ly0{--z:-24cqw}.hq .xv .ly1{--z:-12cqw}.hq .xv .ly2{--z:0px}.hq .xv .ly3{--z:12cqw}.hq .xv .ly4{--z:24cqw}
.hq .xv .tag{position:absolute;left:0;top:-4.2cqw;font-size:1.9cqw;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--blue);padding:.45cqw .8cqw;border-radius:.5cqw;opacity:var(--e);white-space:nowrap}
.hq .xv .flat-shadow{position:absolute;inset:0;border-radius:1.2cqw;box-shadow:0 40px 120px rgba(0,0,0,calc(.55 - var(--e) * .45));pointer-events:none}
/* layer 0: automation (dark engine underneath) */
.hq .xv .ly0{background:#15181D;overflow:hidden;padding:4cqw;display:grid;grid-template-columns:1.2fr 1fr;gap:2.4cqw;align-content:center;font-family:var(--body)}
.hq .xv .ly0 .card{background:#1F242B;border:1px solid rgba(255,255,255,.08);border-radius:1.2cqw;padding:2cqw;color:#fff}
.hq .xv .ly0 .card h5{margin:0;font-size:1.5cqw;font-weight:600;color:rgba(255,255,255,.6);letter-spacing:.02em}
.hq .xv .ly0 .card .big{font-family:var(--display);font-size:4.2cqw;font-weight:800;letter-spacing:-.04em;margin-top:.6cqw;line-height:1}
.hq .xv .ly0 .bars{margin-top:1.6cqw;display:grid;gap:.9cqw}
.hq .xv .ly0 .bars div{display:grid;grid-template-columns:3.6cqw 1fr 4cqw;align-items:center;gap:1cqw;font-size:1.35cqw;color:rgba(255,255,255,.75)}
.hq .xv .ly0 .bars i{display:block;height:1cqw;border-radius:1cqw;background:linear-gradient(90deg,#B5532C var(--w),rgba(255,255,255,.08) var(--w))}
.hq .xv .ly0 .msg{display:flex;gap:1.2cqw;align-items:flex-start;margin-top:1.6cqw;padding-top:1.6cqw;border-top:1px solid rgba(255,255,255,.08);font-size:1.45cqw;line-height:1.35;color:rgba(255,255,255,.85)}
.hq .xv .ly0 .msg b{display:block;color:#fff}
.hq .xv .ly0 .dot{flex:none;width:2.6cqw;height:2.6cqw;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center}
.hq .xv .ly0 .dot svg{width:1.5cqw;height:1.5cqw;color:#fff}
.hq .xv .ly0 .stack2{display:grid;gap:2cqw}
/* layer 1: brand (the canvas, the mark, and the system notes that show when apart) */
.hq .xv .ly1{background:#F3ECDF;overflow:hidden}
.hq .xv .ly1 .mark{position:absolute;left:50%;top:4.1cqw;transform:translateX(-50%);display:flex;align-items:center;gap:.9cqw;color:#1E1C19}
.hq .xv .ly1 .mark svg{width:2.6cqw;height:2.6cqw}
.hq .xv .ly1 .mark span{font-family:Archivo,var(--display);font-stretch:125%;font-weight:900;letter-spacing:.2em;font-size:1.9cqw}
.hq .xv .ly1 .sys{position:absolute;left:4cqw;bottom:4cqw;display:flex;gap:1cqw;align-items:flex-end;opacity:var(--e)}
.hq .xv .ly1 .sys i{display:block;width:5.4cqw;height:5.4cqw;border-radius:.8cqw}
.hq .xv .ly1 .sys .type{margin-left:1.4cqw;color:#1E1C19;line-height:1}
.hq .xv .ly1 .sys .type b{display:block;font-family:Archivo,var(--display);font-stretch:125%;font-weight:900;font-size:3.2cqw;letter-spacing:.02em}
.hq .xv .ly1 .sys .type em{display:block;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:2.8cqw;color:#B5532C;margin-top:.4cqw}
.hq .xv .ly1 .big-mono{position:absolute;right:6cqw;top:50%;width:26cqw;height:26cqw;transform:translateY(-50%);color:#B5532C;opacity:calc(var(--e) * .9)}
/* layer 2: art direction */
.hq .xv .ly2 .photo{position:absolute;right:0;top:8.4cqw;bottom:0;width:49%;background-size:cover;background-position:50% 28%;border-radius:0 0 1.2cqw 0}
/* layer 3: web design */
.hq .xv .ly3 .strip{position:absolute;left:0;right:0;top:0;height:2.6cqw;background:#1E1C19;color:#F3ECDF;font-size:1.05cqw;font-weight:600;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;border-radius:1.2cqw 1.2cqw 0 0}
.hq .xv .ly3 .nav{position:absolute;left:4cqw;right:4cqw;top:4.5cqw;display:flex;justify-content:space-between;font-size:1.4cqw;color:#1E1C19;font-weight:500}
.hq .xv .ly3 .nav .l{display:flex;gap:2.2cqw}
.hq .xv .ly3 .txt{position:absolute;left:5cqw;top:12cqw;width:42%;color:#1E1C19}
.hq .xv .ly3 .kick{font-size:1.2cqw;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#B5532C}
.hq .xv .ly3 h4{margin:1.2cqw 0 0;font-family:Archivo,var(--display);font-stretch:125%;font-weight:900;font-size:5.5cqw;line-height:.9;letter-spacing:.005em;text-transform:uppercase}
.hq .xv .ly3 h4 em{display:block;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;text-transform:none;color:#B5532C;font-size:5.9cqw;letter-spacing:-.01em;line-height:.95}
.hq .xv .ly3 .txt p{font-size:1.35cqw;line-height:1.45;margin-top:1.6cqw;color:#5A544B;max-width:92%}
.hq .xv .ly3 .grid{position:absolute;inset:0;border-radius:inherit;background-image:linear-gradient(90deg,rgba(77,163,255,.5) 1px,transparent 1px);background-size:8.33% 100%;opacity:calc(var(--e) * .35);pointer-events:none}
/* layer 4: commerce */
.hq .xv .ly4 .count{position:absolute;left:5cqw;top:44cqw;display:flex;gap:1cqw}
.hq .xv .ly4 .count div{width:5.4cqw;padding:.8cqw 0;border:1px solid #D9CDB8;border-radius:.7cqw;text-align:center;background:#FBF8F2;color:#1E1C19}
.hq .xv .ly4 .count b{display:block;font-family:Archivo,var(--display);font-stretch:125%;font-weight:800;font-size:2.2cqw;line-height:1}
.hq .xv .ly4 .count small{display:block;font-size:.95cqw;color:#8C857A;margin-top:.3cqw;text-transform:uppercase;letter-spacing:.08em}
.hq .xv .ly4 .fm{position:absolute;left:5cqw;top:53cqw;width:38%;display:flex;gap:.8cqw}
.hq .xv .ly4 .fm span{flex:1;height:4cqw;border:1px solid #D9CDB8;background:#FBF8F2;border-radius:.6cqw;font-size:1.3cqw;color:#8C857A;display:flex;align-items:center;padding:0 1.2cqw}
.hq .xv .ly4 .fm b{height:4cqw;padding:0 1.6cqw;border-radius:.6cqw;background:#1E1C19;color:#F3ECDF;font-size:1.3cqw;display:flex;align-items:center;font-weight:600}
.hq .xv .ly4 .chip{position:absolute;right:3cqw;bottom:3cqw;display:flex;gap:1.2cqw;align-items:center;background:#FBF8F2;border-radius:1cqw;padding:1cqw 1.6cqw 1cqw 1cqw;box-shadow:0 1.2cqw 3cqw rgba(30,28,25,.25);color:#1E1C19}
.hq .xv .ly4 .chip img{width:5.6cqw;height:5.6cqw;border-radius:.6cqw;object-fit:cover}
.hq .xv .ly4 .chip b{display:block;font-size:1.45cqw}
.hq .xv .ly4 .chip span{display:block;font-size:1.25cqw;color:#8C857A;margin-top:.2cqw}
.hq .xv .done{position:absolute;left:0;right:0;bottom:4%;text-align:center;font-family:var(--display);font-weight:700;font-size:clamp(18px,1.6vw,24px);letter-spacing:-.01em;color:#fff;opacity:0;transition:opacity .4s ease}
.hq .xv .done.on{opacity:1}
.hq .xv .mcap{display:none}
.hq .xv .skipx{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:600;color:var(--on-ink-2);border-bottom:1px solid var(--dline)}
.hq .xv .skipx:hover{color:#fff}
.hq .xv .skipx svg{width:15px;height:15px}
@media (max-width:980px){
  .hq .xv{height:300vh}
  .hq .xv .pin{grid-template-columns:1fr;grid-template-rows:auto auto auto;align-content:center;align-items:start;gap:18px;padding-top:20px;padding-bottom:20px}
  .hq .xv .copy .lede,.hq .xv .copy .steps,.hq .xv .copy .fine{display:none}
  .hq .xv .copy .d2{font-size:clamp(36px,9vw,56px)}
  .hq .xv .stage{height:auto;align-self:center;perspective:1400px}
  
  .hq .xv .mcap{display:block;min-height:118px}
  .hq .xv .mcap b{display:block;font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.015em}
  .hq .xv .mcap b i{font-style:normal;color:var(--blue-lite);font-size:13px;letter-spacing:.08em;margin-right:10px;vertical-align:3px}
  .hq .xv .mcap span{display:block;color:var(--on-ink-2);font-size:15px;margin-top:6px;line-height:1.45}
  .hq .xv .mcap .fine{font-size:12.5px;color:var(--on-ink-3);margin-top:10px}
  .hq .xv .done{display:none}
}
@media (prefers-reduced-motion:reduce){
  .hq .xv{height:auto}
  .hq .xv .pin{position:relative;top:0;height:auto;padding-top:clamp(72px,10vw,120px);padding-bottom:clamp(72px,10vw,120px)}
  .hq .xv .stage{min-height:min(70vw,640px)}
  .hq .xv .steps li{opacity:1}
}

/* ------------------------------------------------------------------ work cards */
.hq .work{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.hq .wk{grid-column:span 6;position:relative;display:flex;flex-direction:column;color:inherit}
.hq .wk.xl{grid-column:span 12}
.hq .wk.l{grid-column:span 7}.hq .wk.m{grid-column:span 5}.hq .wk.third{grid-column:span 4}
.hq .wk.third h3{font-size:clamp(24px,2vw,32px)}
.hq .wk .pic.coulson{background:#4778FF}
.hq .wk .pic.coulson img{inset:auto;left:9%;top:11%;width:108%;height:auto;border-radius:10px;box-shadow:0 24px 60px rgba(11,18,32,.45);object-fit:initial}
.hq .wk:hover .pic.coulson img{transform:translate(-1.5%,-1.5%)}
.hq .wk .pic{position:relative;border-radius:clamp(18px,1.6vw,26px);overflow:hidden;background:#D9D5CC;aspect-ratio:16/10}
.hq .wk.xl .pic{aspect-ratio:21/10}
.hq .wk .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.hq .wk:hover .pic img{transform:scale(1.035)}
.hq .wk .meta{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:22px 2px 0}
.hq .wk h3{font-family:var(--display);font-weight:700;font-size:clamp(26px,2.6vw,40px);letter-spacing:-.03em;line-height:1.02}
.hq .wk .kind{font-size:14px;font-weight:600;color:var(--mute);margin-top:10px;letter-spacing:.01em}
.hq .ink .wk .kind{color:var(--on-ink-2)}
.hq .wk p{margin-top:12px;color:var(--mute);max-width:600px;font-size:16.5px}
.hq .ink .wk p{color:var(--on-ink-2)}
.hq .wk p.scope{margin-top:10px;font-size:14.5px;font-weight:500;color:var(--ink);padding-left:14px;border-left:2px solid var(--blue)}
.hq .wk .arrow{flex:none;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s var(--ease)}
.hq .ink .wk .arrow{border-color:var(--dline)}
.hq .wk .arrow svg{width:20px;height:20px}
.hq .wk:hover .arrow{background:var(--blue);border-color:var(--blue);color:#fff;transform:rotate(-45deg)}
.hq .wk.ext:hover .arrow{transform:none}
.hq .wk .note{display:inline-flex;align-items:center;gap:6px;position:absolute;left:14px;bottom:14px;background:rgba(11,12,14,.78);color:#fff;font-size:12.5px;font-weight:600;padding:7px 11px;border-radius:999px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hq .wk .note svg{width:14px;height:14px}
.hq .badge{display:inline-flex;align-items:center;gap:6px;position:absolute;left:14px;top:14px;background:rgba(11,12,14,.8);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:7px 11px;border-radius:999px}
@media (max-width:1100px) and (min-width:901px){.hq .wk.third{grid-column:span 6}.hq .wk.third:last-of-type{grid-column:span 12}}
@media (max-width:900px){.hq .wk,.hq .wk.l,.hq .wk.m,.hq .wk.third{grid-column:span 12}.hq .wk.xl .pic{aspect-ratio:16/10}}
.hq .more-work{margin-top:clamp(48px,6vw,88px);padding-top:32px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(20px,4vw,64px)}
.hq .ink .more-work{border-top-color:var(--dline)}
.hq .more-work ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px}
.hq .more-work li{position:relative;padding-left:18px;color:var(--mute);font-size:16px}
.hq .ink .more-work li{color:var(--on-ink-2)}
.hq .more-work li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:2px;background:var(--blue)}
@media (max-width:900px){.hq .more-work,.hq .more-work ul{grid-template-columns:1fr}}

/* the "New" sticker: die cut, a little crooked, stuck over the picture's corner */
.hq .sticker{position:absolute;right:clamp(12px,1.6vw,20px);top:clamp(-14px,-1vw,-10px);z-index:2;width:clamp(62px,5.2vw,78px);height:clamp(62px,5.2vw,78px);border-radius:50%;background:var(--green);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-12deg);box-shadow:0 0 0 4px #fff,0 14px 30px rgba(11,12,14,.28);font-family:var(--display);line-height:.9;text-align:center;pointer-events:none}
.hq .ink .sticker{box-shadow:0 0 0 4px var(--ink),0 14px 30px rgba(0,0,0,.45)}
.hq .sticker b{font-size:clamp(20px,1.7vw,25px);font-weight:800;letter-spacing:-.03em}
.hq .sticker small{font-family:var(--body);font-size:clamp(9.5px,.8vw,11px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-top:5px}
.hq .wk:hover .sticker{transform:rotate(-4deg) scale(1.04);transition:transform .35s var(--ease)}
.hq .sticker{transition:transform .35s var(--ease)}

/* ------------------------------------------------------------------ disciplines (what we do) */
.hq .disc{border-top:1px solid var(--line)}
.hq .ink .disc{border-top-color:var(--dline)}
.hq .disc a{display:grid;grid-template-columns:72px minmax(0,1.3fr) minmax(0,1fr) auto;gap:clamp(16px,3vw,48px);align-items:center;padding:clamp(24px,3vw,40px) 0;border-bottom:1px solid var(--line);transition:padding .3s var(--ease)}
.hq .ink .disc a{border-bottom-color:var(--dline)}
.hq .disc .n{font-size:14px;font-weight:700;color:var(--blue-ink);letter-spacing:.06em}
.hq .ink .disc .n{color:var(--blue-lite)}
.hq .disc h3{font-family:var(--display);font-weight:800;font-size:clamp(34px,4.8vw,76px);line-height:.95;letter-spacing:-.045em;transition:color .2s ease}
.hq .disc p{color:var(--mute);font-size:16.5px}
.hq .ink .disc p{color:var(--on-ink-2)}
.hq .disc .from{font-size:15px;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:14px}
.hq .disc .from svg{width:22px;height:22px;transition:transform .2s var(--ease)}
.hq .disc a:hover h3{color:var(--blue)}
.hq .ink .disc a:hover h3{color:var(--blue-lite)}
.hq .disc a:hover .from svg{transform:translateX(4px)}
@media (max-width:900px){
  .hq .disc a{grid-template-columns:44px 1fr;row-gap:10px}
  .hq .disc p,.hq .disc .from{grid-column:2}
}

/* ------------------------------------------------------------------ AI agents band */
.hq .ai{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(32px,5vw,88px);align-items:center}
.hq .ai .list{margin-top:32px;display:grid;gap:0;border-top:1px solid var(--dline)}
.hq .ai .list li{display:grid;grid-template-columns:28px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid var(--dline);font-size:17px;color:rgba(255,255,255,.88)}
.hq .ai .list svg{width:20px;height:20px;color:var(--blue-lite);margin-top:3px}
.hq .ai .shot{border-radius:clamp(14px,1.4vw,22px);overflow:hidden;box-shadow:0 50px 120px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08)}
.hq .ai .cap{margin-top:14px;font-size:13px;color:var(--on-ink-3);display:flex;gap:8px;align-items:center}
.hq .ai .cap svg{width:14px;height:14px}
@media (max-width:980px){.hq .ai{grid-template-columns:1fr}}

/* ------------------------------------------------------------------ concept cards */
.hq .cx{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.hq .cxc{display:flex;flex-direction:column;background:#fff;border-radius:clamp(18px,1.6vw,24px);overflow:hidden;border:1px solid var(--line)}
.hq .bone .cxc{border-color:transparent}
.hq .cxc .pic{position:relative;aspect-ratio:16/10;background:#D9D5CC;overflow:hidden}
.hq .cxc .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.hq .cxc:hover .pic img{transform:scale(1.035)}
.hq .cxc .body{padding:clamp(20px,2vw,28px);display:flex;flex-direction:column;flex:1}
.hq .cxc .for{font-size:13px;font-weight:600;color:var(--mute);letter-spacing:.02em}
.hq .cxc h3{font-family:var(--display);font-weight:700;font-size:clamp(22px,1.8vw,27px);letter-spacing:-.025em;line-height:1.08;margin-top:8px}
.hq .cxc p{margin-top:10px;color:var(--mute);font-size:15.5px;flex:1}
.hq .cxc .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.hq .cxc .acts .b{height:46px;padding:0 18px;font-size:15px}
.hq .cx.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.hq .cx.feature>.cxc:first-child,.hq .cx.feature>.cxc:last-child{grid-column:span 2}
.hq .cx.feature>.cxc:first-child .pic,.hq .cx.feature>.cxc:last-child .pic{aspect-ratio:auto;min-height:0;height:clamp(240px,26vw,380px)}
.hq .cxc .acts .tl{align-self:center}
@media (max-width:980px){.hq .cx,.hq .cx.two{grid-template-columns:1fr 1fr}.hq .cx.feature>.cxc:last-child{grid-column:span 1}.hq .cx.feature>.cxc:last-child .pic{height:auto;aspect-ratio:16/10}}
@media (max-width:640px){.hq .cx,.hq .cx.two{grid-template-columns:1fr}.hq .cx.feature>.cxc:first-child{grid-column:span 1}.hq .cx.feature>.cxc:first-child .pic{height:auto;aspect-ratio:16/10}}
.hq .filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
@media (max-width:640px){.hq .filters{flex-wrap:nowrap;overflow-x:auto;margin-left:calc(var(--gut) * -1);margin-right:calc(var(--gut) * -1);padding:0 var(--gut) 4px;scrollbar-width:none}.hq .filters::-webkit-scrollbar{display:none}.hq .filters button{flex:none}}
.hq .filters button{height:42px;padding:0 18px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font-weight:600;font-size:14.5px;color:var(--ink);cursor:pointer}
.hq .filters button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.hq .note{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;font-size:15px;color:var(--mute);max-width:880px}
.hq .note svg{width:18px;height:18px;flex:none;margin-top:3px;color:var(--blue-ink)}
.hq .note b{color:var(--ink)}
.hq .ink .note{background:rgba(255,255,255,.05);border-color:var(--dline);color:var(--on-ink-2)}
.hq .ink .note b{color:#fff}

/* ------------------------------------------------------------------ steps */
.hq .steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,36px);counter-reset:s}
.hq .steps4 li{border-top:2px solid var(--ink);padding-top:22px}
.hq .ink .steps4 li{border-top-color:#fff}
.hq .steps4 .n{font-family:var(--display);font-weight:800;font-size:clamp(44px,4.4vw,68px);line-height:1;letter-spacing:-.04em;color:var(--blue)}
.hq .ink .steps4 .n{color:var(--blue-lite)}
.hq .steps4 h3{font-family:var(--display);font-weight:700;font-size:23px;letter-spacing:-.02em;margin-top:18px}
.hq .steps4 p{margin-top:10px;color:var(--mute);font-size:16px}
.hq .ink .steps4 p{color:var(--on-ink-2)}
@media (max-width:900px){.hq .steps4{grid-template-columns:1fr 1fr;row-gap:40px}}
@media (max-width:520px){.hq .steps4{grid-template-columns:1fr}}

/* ------------------------------------------------------------------ government slot */
.hq .gov{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:clamp(28px,3vw,44px) clamp(24px,3vw,48px);border-radius:clamp(18px,1.6vw,26px);background:var(--ink);color:#fff}
.hq .gov h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,2.6vw,38px);letter-spacing:-.03em;line-height:1.05}
.hq .gov p{color:var(--on-ink-2);margin-top:8px;max-width:620px}

/* ------------------------------------------------------------------ services page */
.hq .jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}
.hq .jump a{height:44px;padding:0 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.22);display:inline-flex;align-items:center;font-weight:600;font-size:15px;color:#fff}
.hq .jump a:hover{border-color:#fff}
.hq .grp{padding:clamp(72px,9vw,128px) 0;border-bottom:1px solid var(--line)}
.hq .grp:nth-child(even){background:var(--bone)}
.hq .grp .gh{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}
.hq .grp .gh p{font-size:clamp(17px,1.35vw,20px);color:var(--mute);max-width:560px}
@media (max-width:900px){.hq .grp .gh{grid-template-columns:1fr}}
.hq .svc{border-top:1px solid var(--line);scroll-margin-top:calc(var(--top) + 20px)}
.hq .svc:last-child{border-bottom:1px solid var(--line)}
.hq .svc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) auto;gap:clamp(16px,3vw,48px);align-items:center;padding:clamp(22px,2.4vw,32px) 0}
.hq .svc summary::-webkit-details-marker{display:none}
.hq .svc h3{font-family:var(--display);font-weight:700;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.03em;line-height:1.05}
.hq .svc summary p{color:var(--mute);font-size:16px}
.hq .svc .from{display:flex;align-items:center;gap:16px;font-weight:600;font-size:15.5px;white-space:nowrap}
.hq .svc .from>span:first-child{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.hq .svc .from small{font-size:13px;font-weight:500;color:var(--mute-2)}
.hq .svc .from .view{font-size:14px;color:var(--blue-ink);border-bottom:1.5px solid currentColor;padding-bottom:1px}
.hq .svc[open] .from .view{color:var(--mute)}
.hq .svc .from i{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;transition:transform .25s var(--ease),background .2s ease}
.hq .svc .from svg{width:18px;height:18px}
.hq .svc[open] .from i{transform:rotate(45deg);background:var(--ink);color:#fff;border-color:var(--ink)}
.hq .svc .pk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 0 clamp(28px,3vw,40px)}
.hq .pkg{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column}
.hq .pkg.mid{background:var(--ink);color:#fff;border-color:var(--ink)}
.hq .pkg .t{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-ink)}
.hq .pkg.mid .t{color:var(--blue-lite)}
.hq .pkg h4{font-family:var(--display);font-weight:700;font-size:21px;letter-spacing:-.02em;line-height:1.15;margin-top:10px}
.hq .pkg .p{font-family:var(--display);font-weight:800;font-size:40px;letter-spacing:-.04em;margin-top:14px;line-height:1}
.hq .pkg .d{font-size:14px;color:var(--mute);margin-top:6px}
.hq .pkg.mid .d{color:var(--on-ink-2)}
.hq .pkg p{margin-top:14px;font-size:15px;color:var(--mute);flex:1}
.hq .pkg.mid p{color:var(--on-ink-2)}
.hq .pkg .b{margin-top:20px;height:46px;font-size:15px}
.hq .svc .proof{display:flex;flex-wrap:wrap;gap:10px 22px;padding:0 0 clamp(28px,3vw,40px);font-size:15px;color:var(--mute)}
.hq .svc .proof b{color:var(--ink);font-weight:600}
.hq .svc .proof a{color:var(--blue-ink);font-weight:600;border-bottom:1.5px solid currentColor}
@media (max-width:900px){
  .hq .svc summary{grid-template-columns:1fr;row-gap:10px}
  .hq .svc summary p{grid-column:1;grid-row:auto}
  .hq .svc .from{justify-content:space-between;width:100%}
  .hq .svc .from>span:first-child{align-items:flex-start}
  .hq .svc .from .view{margin-left:auto}
  .hq .svc .pk{grid-template-columns:1fr}
}

/* ------------------------------------------------------------------ about */
.hq .story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,6vw,110px);align-items:start}
.hq .story .ph-img{position:sticky;top:calc(var(--top) + 32px)}
.hq .story .ph-img img{width:100%;height:auto;border-radius:clamp(18px,1.6vw,26px);background:#D9D5CC}
.hq .story .ph-img figcaption{padding:14px 2px 0;font-size:14px;color:var(--mute)}
.hq .prose p{font-size:clamp(18px,1.45vw,21px);line-height:1.6;color:#2B2F35;margin-top:22px}
.hq .prose p:first-child{margin-top:0}
.hq .prose .d3{margin-top:56px}
.hq .prose .d3:first-child{margin-top:0}
.hq .vals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--dline)}
.hq .vals li{padding:clamp(28px,3vw,44px) clamp(0px,2vw,32px) clamp(28px,3vw,44px) 0;border-bottom:1px solid var(--dline)}
.hq .vals li:nth-child(odd){border-right:1px solid var(--dline)}
.hq .vals li:nth-child(even){padding-left:clamp(20px,3vw,48px)}
.hq .vals h3{font-family:var(--display);font-weight:700;font-size:clamp(26px,2.6vw,40px);letter-spacing:-.03em;line-height:1.02}
.hq .vals p{margin-top:12px;color:var(--on-ink-2);max-width:520px}
@media (max-width:900px){.hq .story{grid-template-columns:1fr}.hq .story .ph-img{position:relative;top:0;max-width:420px}.hq .vals{grid-template-columns:1fr}.hq .vals li:nth-child(odd){border-right:0}.hq .vals li:nth-child(even){padding-left:0}}

/* ------------------------------------------------------------------ Get Started */
.hq .start{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-areas:'intro form' 'after form';column-gap:clamp(32px,6vw,110px);row-gap:0;align-items:start}
.hq .start .intro{grid-area:intro}.hq .start .form{grid-area:form}.hq .start .after{grid-area:after}
.hq .start .next{margin-top:40px;display:grid;border-top:1px solid var(--dline)}
.hq .start .next li{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--dline)}
.hq .start .next b{font-family:var(--display);font-size:22px;color:var(--blue-lite);font-weight:800}
.hq .start .next span{color:rgba(255,255,255,.86);font-size:17px}
.hq .start .alt{margin-top:32px;font-size:15px;color:var(--on-ink-2)}
.hq .form{background:#fff;color:var(--ink);border-radius:clamp(20px,2vw,28px);padding:clamp(24px,3vw,44px)}
.hq .form h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,2.4vw,34px);letter-spacing:-.03em}
.hq .form .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hq .form .f{display:flex;flex-direction:column;gap:8px;margin-top:20px}
.hq .form label,.hq .form legend{font-size:14.5px;font-weight:600;color:var(--ink)}
.hq .form label .opt,.hq .form legend .opt{font-weight:500;color:var(--mute-2)}
.hq .form input,.hq .form select,.hq .form textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1.5px solid #D6D2C9;border-radius:14px;padding:14px 16px;transition:border-color .15s ease,box-shadow .15s ease}
.hq .form textarea{min-height:150px;resize:vertical;line-height:1.5}
.hq .form input:focus,.hq .form select:focus,.hq .form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,115,207,.15)}
.hq .form fieldset{border:0;padding:0;margin:20px 0 0;min-width:0}
.hq .form .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hq .form .chips label{position:relative;cursor:pointer}
.hq .form .chips input{position:absolute;opacity:0;width:1px;height:1px}
.hq .form .chips span{display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:999px;border:1.5px solid #D6D2C9;font-size:14.5px;font-weight:600;transition:all .15s ease}
.hq .form .chips input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.hq .form .chips input:focus-visible+span{outline:3px solid var(--blue-lite);outline-offset:2px}
.hq .form .err{color:#B42318;font-size:14px;font-weight:500}
.hq .form .hint{font-size:13px;color:var(--mute-2)}
.hq .form .send{margin-top:28px;width:100%;height:60px;font-size:17px}
.hq .form .send[disabled]{opacity:.6;cursor:progress}
.hq .form .fine{margin-top:14px;font-size:13px;color:var(--mute-2);text-align:center}
.hq .form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.hq .form.ok{text-align:left}
.hq .form .b.line{border-color:rgba(11,12,14,.22);color:var(--ink)}
.hq .form .b.line:hover{border-color:var(--ink)}
.hq .form.ok .tick{width:64px;height:64px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.hq .form.ok .tick svg{width:30px;height:30px}
.hq .form.ok h2{margin-top:22px}
.hq .form.ok p{margin-top:12px;color:var(--mute);font-size:17px}
.hq .form.ok .row{margin-top:24px}
@media (max-width:980px){.hq .start{grid-template-columns:1fr;grid-template-areas:'intro' 'form' 'after';row-gap:32px}.hq .start .next{margin-top:8px}}
@media (max-width:560px){.hq .form .grid2{grid-template-columns:1fr;gap:0}}

/* copy the address, never mailto */
.hq .copy{display:inline-flex;flex-direction:column;gap:8px}
.hq .copied{font-size:14px;color:#1F7A4A;min-height:20px}
.hq .ink .copied,.hq-foot .copied{color:#8BE3AE}
.hq .form .copied{color:#1F7A4A}

/* ------------------------------------------------------------------ case and concept pages */
.hq .notice{display:flex;gap:10px;align-items:flex-start;margin-top:26px;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid var(--dline);font-size:14.5px;color:var(--on-ink-2);max-width:760px}
.hq .notice svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--blue-lite)}
.hq .notice b{color:#fff;font-weight:600}
.hq .for-who{margin-top:18px;font-size:15px;color:var(--on-ink-2)}
.hq .for-who b{color:#fff;font-weight:600}
.hq .heroimg{margin-top:clamp(40px,5vw,72px);border-radius:clamp(16px,1.6vw,26px);overflow:hidden;background:#1a1d22;box-shadow:0 40px 100px rgba(0,0,0,.5)}
.hq .heroimg img{width:100%;height:auto}
.hq .two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,110px);align-items:start}
.hq .two .d3{margin-top:16px}
.hq .two p{margin-top:18px;font-size:clamp(17px,1.35vw,19px);color:var(--mute)}
.hq .ink .two p{color:var(--on-ink-2)}
@media (max-width:900px){.hq .two{grid-template-columns:1fr}}
.hq .feat{display:grid;gap:0;border-top:1px solid var(--line)}
.hq .ink .feat{border-top-color:var(--dline)}
.hq .feat li{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);font-size:16.5px}
.hq .ink .feat li{border-bottom-color:var(--dline);color:rgba(255,255,255,.88)}
.hq .feat svg{width:20px;height:20px;color:var(--blue);margin-top:2px}
.hq .ink .feat svg{color:var(--blue-lite)}
.hq .feat li:first-child{font-weight:600}
.hq .edge{max-width:1080px}
.hq .edge p{font-family:var(--display);font-weight:600;font-size:clamp(26px,2.9vw,44px);line-height:1.15;letter-spacing:-.025em;margin-top:22px}
.hq .edge .src{margin-top:26px;font-size:14px;color:var(--on-ink-3);display:flex;gap:6px 14px;flex-wrap:wrap}
.hq .edge .src a{color:var(--on-ink-2);border-bottom:1px solid var(--dline)}
.hq .screens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.4vw,36px)}
.hq .screens figure{display:flex;flex-direction:column}
.hq .screens .sp{border-radius:clamp(12px,1.2vw,18px);overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(11,12,14,.05),0 18px 50px rgba(11,12,14,.1)}
.hq .screens figcaption{margin-top:14px;font-size:15px;color:var(--mute);display:flex;gap:12px}
.hq .screens figcaption b{font-family:var(--display);color:var(--ink);font-weight:700}
.hq .screens .wide{grid-column:1/-1}
@media (max-width:760px){.hq .screens{grid-template-columns:1fr}}
.hq .phones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,48px)}
.hq .phones figure{display:flex;flex-direction:column;align-items:center}
.hq .phones .pf{width:100%;max-width:300px;border-radius:clamp(26px,3vw,40px);overflow:hidden;box-shadow:0 30px 70px rgba(11,12,14,.22),0 0 0 1px rgba(11,12,14,.06)}
.hq .phones figcaption{margin-top:16px;font-size:15px;color:var(--mute);text-align:center;max-width:300px}
@media (max-width:760px){.hq .phones{grid-template-columns:1fr 1fr}}
.hq .phonefig{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center;margin-top:clamp(40px,5vw,72px)}
.hq .phonefig .pf{border-radius:40px;overflow:hidden;box-shadow:0 30px 70px rgba(11,12,14,.22)}
@media (max-width:760px){.hq .phonefig{grid-template-columns:1fr}.hq .phonefig .pf{max-width:300px}}
.hq .pkgs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:900px){.hq .pkgs{grid-template-columns:1fr}}
.hq .tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.hq .ink .tiles{border-top-color:var(--dline)}
.hq .tiles li{padding:clamp(24px,2.6vw,36px) clamp(0px,2vw,28px) clamp(24px,2.6vw,36px) 0;border-bottom:1px solid var(--line)}
.hq .ink .tiles li{border-bottom-color:var(--dline)}
.hq .tiles svg{width:24px;height:24px;color:var(--blue)}
.hq .ink .tiles svg{color:var(--blue-lite)}
.hq .tiles h3{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:-.02em;margin-top:16px;line-height:1.15}
.hq .tiles p{margin-top:8px;color:var(--mute);font-size:15.5px}
.hq .ink .tiles p{color:var(--on-ink-2)}
.hq .tiles ul{margin-top:10px;display:grid;gap:6px;font-size:15px;color:var(--mute)}
.hq .ink .tiles ul{color:var(--on-ink-2)}
.hq .tiles ul li{border:0;padding:0 0 0 14px;position:relative}
.hq .tiles ul li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}
@media (max-width:900px){.hq .tiles{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.hq .tiles{grid-template-columns:1fr}}
.hq .tour{display:grid;gap:clamp(72px,9vw,140px)}
.hq .tstep{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}
.hq .tstep.flip .tshot{order:2}
.hq .tshot{border-radius:clamp(12px,1.2vw,18px);overflow:hidden;box-shadow:0 1px 2px rgba(11,12,14,.05),0 24px 70px rgba(11,12,14,.14)}
.hq .tstep .n{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-ink)}
.hq .tstep h3{margin-top:14px}
.hq .tstep p{margin-top:14px;color:var(--mute);font-size:17px}
.hq .tstep ul{margin-top:18px}
@media (max-width:900px){.hq .tstep{grid-template-columns:1fr}.hq .tstep.flip .tshot{order:0}}
.hq .day{display:grid;border-top:1px solid var(--line)}
.hq .day li{display:grid;grid-template-columns:140px minmax(0,1fr) minmax(0,1.3fr);gap:clamp(16px,3vw,48px);padding:clamp(20px,2.2vw,30px) 0;border-bottom:1px solid var(--line);align-items:baseline}
.hq .day .t{font-weight:700;font-size:15px;color:var(--blue-ink)}
.hq .day h3{font-family:var(--display);font-weight:700;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em;line-height:1.1}
.hq .day p{color:var(--mute)}
@media (max-width:760px){.hq .day li{grid-template-columns:1fr;gap:6px}}
.hq .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:clamp(48px,6vw,88px);padding-top:28px;border-top:1px solid var(--dline)}
.hq .stats b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(34px,3.6vw,56px);letter-spacing:-.04em;line-height:1}
.hq .stats span{display:block;margin-top:10px;font-size:15px;color:var(--on-ink-2)}
@media (max-width:760px){.hq .stats{grid-template-columns:1fr 1fr;row-gap:32px}}

/* ------------------------------------------------------------------ legal pages */
.hq .legal{max-width:780px}
.hq .legal h2{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.02em;margin-top:44px}
.hq .legal p,.hq .legal li{margin-top:14px;color:#2B2F35;font-size:17px;line-height:1.65}
.hq .legal ul{list-style:disc;padding-left:22px}

/* ------------------------------------------------------------------ reveal on scroll */
.hq .rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.hq .rv.in{opacity:1;transform:none}
.hq .rv.dl1{transition-delay:.08s}.hq .rv.dl2{transition-delay:.16s}.hq .rv.dl3{transition-delay:.24s}
html:not(.js) .hq .rv{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .hq .rv{opacity:1;transform:none;transition:none}
  .hq *,.hq-top *,.hq-foot *{animation:none!important;scroll-behavior:auto!important}
  .hq .wk .pic img,.hq .cxc .pic img{transition:none}
}
