:root{
  --paper:#F5F6F7; --surface:#FFFFFF; --ink:#14171A; --muted:#5A6067; --line:#DCDFE3;
  --tile:#E4E6E9; --tile-2:#C9CDD2; --key:#14171A; --key-fg:#F5F6F7;
  --orange:#EC6A23; --orange-ink:#B9500F; --orange-soft:#FCE9DE;
  --emerald:var(--orange); --pgreen:#0B6A12;
  --display:"Jost","Futura","Century Gothic",system-ui,sans-serif;
  --body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
  --wrap:1200px; --gut:clamp(16px,4vw,40px);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#0E1012; --surface:#16191C; --ink:#ECEEF0; --muted:#9BA1A7; --line:#2A2F34;
  --tile:#1E2226; --tile-2:#363C42; --key:#ECEEF0; --key-fg:#0E1012;
  --orange:#F27A36; --orange-ink:#F59258; --orange-soft:#2B1C13; --emerald:var(--orange); --pgreen:#4CC97A; color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#0E1012; --surface:#16191C; --ink:#ECEEF0; --muted:#9BA1A7; --line:#2A2F34;
  --tile:#1E2226; --tile-2:#363C42; --key:#ECEEF0; --key-fg:#0E1012;
  --orange:#F27A36; --orange-ink:#F59258; --orange-soft:#2B1C13; --emerald:var(--orange); --pgreen:#4CC97A; color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gut)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.1;margin:0;text-wrap:balance}
p{margin:0}
.eyebrow{font-family:var(--display);font-weight:500;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-ink)}
.lead{font-size:clamp(17px,1.6vw,20px);color:var(--muted);max-width:60ch}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:2px}
.tlink{display:inline-flex;align-items:center;gap:10px;font-weight:500;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}
.tlink .arr{transition:transform .2s}.tlink:hover{color:var(--orange-ink);border-color:var(--orange)}.tlink:hover .arr{transform:translateX(4px)}


.tk{display:inline-block;width:14px;height:14px;background:var(--tile-2);flex-shrink:0}
.tk.key{background:var(--key);border-top-left-radius:100%}
.tk.or{background:var(--orange);border-top-left-radius:100%}
.tk.bl{border-bottom-left-radius:100%}
.tk.br{border-bottom-right-radius:100%}
.tk.dash{background:none;border:1.5px dashed var(--muted)}


header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:24px;height:76px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.logo svg{width:50px;height:auto;display:block}
.logo .wm{display:flex;flex-direction:column;line-height:1}
.logo .wm b{font-family:var(--display);font-weight:500;font-size:24px;letter-spacing:.06em;color:var(--ink)}
.logo .wm b span{color:var(--orange)}
.logo .wm i{font-style:normal;font-family:var(--body);font-weight:500;font-size:12px;color:var(--ink);opacity:.75;margin-top:5px}
.mk-tile{fill:var(--tile-2)} .mk-key{fill:var(--key)}
nav.main{display:flex;align-items:center;gap:4px;margin-left:auto}
nav.main>.item>button,nav.main>.item>a{font:500 15px var(--body);color:var(--ink);background:none;border:0;padding:10px 14px;border-radius:6px;cursor:pointer;text-decoration:none;display:flex;align-items:center;gap:6px}
nav.main>.item>button:hover,nav.main>.item>a:hover,nav.main>.item>button[aria-expanded="true"]{background:var(--tile)}
nav.main svg.chev{width:10px;height:10px;transition:transform .2s}
nav.main button[aria-expanded="true"] svg.chev{transform:rotate(180deg)}
.btn{display:inline-flex;align-items:center;gap:10px;font:500 15px var(--body);padding:12px 20px;border-radius:3px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-primary{background:var(--ink);color:var(--paper)}
.btn-primary:hover{background:var(--orange);color:#fff}
.btn-ghost{border-color:var(--line);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--ink)}
.btn .arr{transition:transform .2s} .btn:hover .arr{transform:translateX(3px)}
.bar .cta{margin-left:12px}

.mega{position:absolute;left:0;right:0;top:100%;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 24px 48px -24px rgba(0,0,0,.18)}
.mega .wrap{display:grid;grid-template-columns:260px 1fr;gap:48px;padding-block:36px 40px}
.mega .intro h3{font-size:26px;margin:10px 0 12px}
.mega .intro p{color:var(--muted);font-size:14px}
.mega .intro a{display:inline-block;margin-top:18px;font-size:14px;font-weight:500;color:var(--orange-ink);text-decoration:none}
.mega .links{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px 18px;align-content:start}
.mega .links a{display:block;padding:14px 16px;border-radius:4px;text-decoration:none;border-left:2px solid transparent}
.mega .links a:hover{background:var(--paper);border-left-color:var(--orange)}
.mega .links a strong{display:block;font-weight:600;font-size:15px}
.mega .links a span{display:block;color:var(--muted);font-size:13.5px;line-height:1.45;margin-top:3px}
.mega .links a em{font-style:normal;font-family:var(--display);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-ink);margin-left:8px}

.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:6px;padding:9px 11px;cursor:pointer;color:var(--ink)}
.drawer{border-top:1px solid var(--line);background:var(--surface);padding-block:8px 24px;max-height:calc(100vh - 76px);overflow:auto}
.drawer details{border-bottom:1px solid var(--line)}
.drawer summary{list-style:none;padding:16px 0;font-weight:600;cursor:pointer;display:flex;justify-content:space-between}
.drawer summary::-webkit-details-marker{display:none}
.drawer details a{display:block;padding:10px 0 10px 12px;text-decoration:none;font-size:15px}
.drawer details a span{display:block;font-size:13px;color:var(--muted)}
.drawer>.wrap>a.plain{display:block;padding:16px 0;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line)}
.drawer .btn{margin-top:20px;width:100%;justify-content:center}
@media (max-width:980px){nav.main,.bar .cta{display:none}.burger{display:block}}


.hero{padding-block:clamp(48px,8vw,96px) clamp(48px,7vw,88px)}
.hero .wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.hero h1{font-size:clamp(40px,5.6vw,72px);font-weight:300;margin:18px 0 24px}
.hero h1 b{font-weight:500}
.hero h1 .o{color:var(--orange)}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:40px;font-family:var(--display);font-weight:500;font-size:13px;letter-spacing:.06em;color:var(--muted)}
.hero-meta span{display:inline-flex;align-items:center;gap:8px}
.hero-meta .tk{width:8px;height:8px;background:var(--orange)}

.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(6px,.9vw,10px);width:100%;max-width:520px;justify-self:end}
.tile{aspect-ratio:1;background:var(--tile);position:relative;text-decoration:none;color:var(--ink);padding:clamp(12px,1.6vw,20px);display:flex;flex-direction:column;justify-content:flex-end;transition:background .25s,color .25s;overflow:hidden}
.tile:hover{background:var(--orange);color:#fff}
.tile:hover small{color:#fff}
.tile b{font-family:var(--display);font-weight:500;font-size:clamp(15px,1.6vw,20px);line-height:1.15}
.tile small{display:block;font-size:clamp(11px,1vw,12.5px);color:var(--muted);margin-top:4px;line-height:1.35}
.tile.tr{border-top-left-radius:100%;background:var(--key);color:var(--key-fg);text-align:right;align-items:flex-end}
.tile.tr small{color:color-mix(in srgb,var(--key-fg) 70%,transparent)}
.tile.tr:hover{background:var(--orange)}
.tile.bl{border-bottom-left-radius:100%;justify-content:flex-start;text-align:right;align-items:flex-end}
.tile.br{border-bottom-right-radius:100%;justify-content:flex-start}
@media (prefers-reduced-motion:no-preference){
  .tile{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
  .tile:nth-child(2){animation-delay:.06s}.tile:nth-child(3){animation-delay:.12s}
  .tile:nth-child(4){animation-delay:.18s}.tile:nth-child(5){animation-delay:.24s}.tile:nth-child(6){animation-delay:.3s}
}
@keyframes rise{from{transform:translateY(10px)}to{transform:none}}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr}.tiles{justify-self:start}}


section.band{padding-block:clamp(56px,8vw,104px);border-top:1px solid var(--line)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:24px 64px;margin-bottom:52px;align-items:end}
.sec-head h2{font-size:clamp(30px,3.6vw,46px);margin-top:12px}
.sec-head p{color:var(--muted);max-width:56ch}
@media (max-width:820px){.sec-head{grid-template-columns:1fr}}


.proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 40px;padding-block:36px;border-top:1px solid var(--line)}
.proof div{display:grid;grid-template-columns:14px 1fr;gap:4px 14px;align-items:start}
.proof .tk{margin-top:5px}
.proof strong{font-family:var(--display);font-weight:500;font-size:18px;line-height:1.3}
.proof span:last-child{grid-column:2;font-size:14px;color:var(--muted)}
@media (max-width:900px){.proof{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.proof{grid-template-columns:1fr}}


.svc-list{border-top:1px solid var(--ink)}
.svc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) 40px;gap:24px 48px;padding:30px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:start;transition:padding .2s}
.svc:hover{padding-left:12px}
.svc h3{font-size:clamp(22px,2.4vw,30px)}
.svc .k{font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;display:block}
.svc p{color:var(--muted)}
.svc ul{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px;font-size:14px}
.svc li::before{content:"";display:inline-block;width:5px;height:5px;background:var(--orange);margin-right:9px;vertical-align:2px}
.svc .go{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:background .2s,border-color .2s,color .2s}
.svc:hover .go{background:var(--orange);border-color:var(--orange);color:#fff}
@media (max-width:820px){.svc{grid-template-columns:1fr}.svc .go{display:none}.svc ul{grid-template-columns:1fr}}


.arch{border-top:1px solid var(--ink)}
.arch-row{display:grid;grid-template-columns:28px minmax(0,220px) minmax(0,1fr);gap:20px 24px;padding:24px 0;border-bottom:1px solid var(--line);align-items:baseline}
.arch-row .tk{width:18px;height:18px;align-self:center}
.arch-row h3{font-size:22px}
.arch-row p{color:var(--muted);font-size:15.5px}
.arch-row p b{color:var(--ink);font-weight:500}
.arch-row p b+b::before{content:" / ";color:var(--line);font-weight:400}
.arch-row.core h3{font-weight:500}
.arch-row.core p b{color:var(--ink)}
.arch-row.across{border-bottom:1px dashed var(--muted)}
@media (max-width:700px){.arch-row{grid-template-columns:28px 1fr}.arch-row p{grid-column:2}}


.floor{position:relative}
.floor-line{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding-top:38px}
.floor-line::before{content:"";position:absolute;left:0;right:0;top:12px;height:2px;background:var(--ink)}
.floor-line .pulse{position:absolute;top:9px;left:0;width:56px;height:8px;background:linear-gradient(90deg,transparent,var(--orange),transparent)}
@media (prefers-reduced-motion:no-preference){.floor-line .pulse{animation:flow 5s linear infinite}}
@keyframes flow{from{left:-56px}to{left:100%}}
.fs{position:relative;padding-right:14px}
.fs .tk{position:absolute;top:-35px;left:0;width:22px;height:22px;background:var(--tile-2);outline:4px solid var(--paper)}
.fs:last-child .tk{border-bottom-right-radius:100%}
.fs b{display:block;font-family:var(--display);font-weight:500;font-size:18px}
.fs span{display:block;font-size:13.5px;color:var(--muted);margin-top:6px;line-height:1.45}
.floor-across{margin-top:30px;padding-top:16px;border-top:1px dashed var(--muted);display:grid;grid-template-columns:auto 1fr;gap:6px 20px;align-items:baseline}
.floor-across .eyebrow{color:var(--muted)}
.floor-across p{font-size:14.5px}
.floor-pulse{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.floor-pulse .tk{width:34px;height:34px}
.floor-pulse b{font-family:var(--display);font-weight:500;font-size:18px;display:block}
.floor-pulse span{font-size:13.5px;color:var(--muted)}
@media (max-width:700px){
  .floor-line{grid-template-columns:1fr;padding-top:0;padding-left:40px;gap:22px}
  .floor-line::before{left:10px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .floor-line .pulse{display:none}
  .fs .tk{top:0;left:-40px}
  .floor-across{grid-template-columns:1fr}
}


.x2p-wrap{overflow-x:auto;min-width:0}
.x2p-flow{width:100%;min-width:500px;height:auto;display:block}
.x2p-flow .ln{fill:var(--ink);font:500 14px var(--body)}
.x2p-flow .ls{fill:var(--muted);font:400 12px var(--body)}
.x2p-flow .mk{fill:var(--tile-2)}
.x2p-flow .wire{fill:none;stroke:var(--ink);stroke-width:1.3;opacity:.45}
.x2p-flow .g{fill:var(--tile-2)}
.x2p-flow .gk{fill:var(--emerald)}
.x2p-flow .gl{fill:var(--ink);font:500 13px var(--display);letter-spacing:.02em}
.x2p-flow .gs{fill:var(--muted);font:400 11.5px var(--body)}
.x2p-flow .ar{stroke:var(--ink);stroke-width:1.3;fill:none}
.x2p-flow .audit{stroke:var(--muted);stroke-dasharray:3 4;fill:none}
.x2p-flow .at{fill:var(--muted);font:500 11px var(--display);letter-spacing:.16em}


.ind-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:20px}
.ind{border:1px solid var(--line);border-radius:8px;padding:28px;background:var(--surface);text-decoration:none;display:flex;flex-direction:column;gap:12px;min-height:260px}
.ind:hover{border-color:var(--ink)}
.ind h3{font-size:26px}
.ind p{color:var(--muted);font-size:15px}
.ind .more{margin-top:auto;font-weight:500;color:var(--orange-ink);font-size:14px}
.ind.lead{background:var(--key);color:var(--key-fg);border-color:var(--key)}
.ind.lead p{color:color-mix(in srgb,var(--key-fg) 72%,transparent)}
.ind.lead .eyebrow,.ind.lead .more{color:var(--orange)}
.badge{align-self:flex-start;font-family:var(--display);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;border-radius:3px;background:var(--orange-soft);color:var(--orange-ink)}
@media (max-width:1100px){.ind-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ind-grid{grid-template-columns:1fr}}


.engage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.engage div{padding:28px 28px 8px 0}
.engage div+div{padding-left:28px;border-left:1px solid var(--line)}
.engage h3{font-size:22px;margin-bottom:10px}
.engage p{color:var(--muted);font-size:15px}
@media (max-width:820px){.engage{grid-template-columns:1fr}.engage div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}}


.cta-band{background:var(--key);color:var(--key-fg);padding-block:clamp(56px,8vw,96px);position:relative;overflow:hidden}
.cta-band .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:32px;align-items:end;position:relative}
.cta-band h2{font-size:clamp(32px,4.4vw,56px);font-weight:300}
.cta-band h2 b{font-weight:500;color:var(--orange)}
.cta-band p{color:color-mix(in srgb,var(--key-fg) 70%,transparent);margin-top:16px;max-width:52ch}
.cta-band .btn-primary{background:var(--orange);color:#fff}
.cta-band .btn-primary:hover{background:var(--key-fg);color:var(--key)}
.cta-band .ghostmark{position:absolute;right:-60px;bottom:-80px;width:420px;opacity:.07;pointer-events:none}
.cta-band .ghostmark path,.cta-band .ghostmark rect{fill:var(--key-fg)}
@media (max-width:760px){.cta-band .wrap{grid-template-columns:1fr}}


footer.site{padding-block:64px 40px;border-top:1px solid var(--line);background:var(--surface)}
.foot{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:32px}
.foot h4{font-family:var(--display);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:14px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:14px}
.foot ul a{text-decoration:none}
.foot ul a:hover{color:var(--orange-ink)}
.foot .about p{color:var(--muted);font-size:14px;margin-top:18px;max-width:34ch}
.offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line);font-size:14px}
.offices b{display:block;font-weight:600;margin-bottom:4px}
.offices span{color:var(--muted)}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;font-size:13px;color:var(--muted)}
@media (max-width:900px){.foot{grid-template-columns:repeat(2,minmax(0,1fr))}.foot .about{grid-column:1/-1}}
@media (max-width:520px){.offices{grid-template-columns:1fr}}


.crumbs{font-family:var(--display);font-weight:500;font-size:13px;color:var(--muted);letter-spacing:.04em;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--orange-ink)}
.d-hero{padding-block:clamp(40px,6vw,80px) clamp(40px,5vw,64px)}
.d-hero .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:end}
.d-hero h1{font-size:clamp(38px,5vw,64px);font-weight:300;margin:22px 0 22px}
.d-hero h1 b{font-weight:500}
.d-hero h1 em{font-style:normal;font-weight:500;color:var(--emerald)}
.d-aside{border-left:2px solid var(--orange);padding-left:20px;color:var(--muted);font-size:15px}
.d-aside strong{display:block;color:var(--ink);font-family:var(--display);font-weight:500;font-size:19px;margin-bottom:6px}
@media (max-width:860px){.d-hero .wrap{grid-template-columns:1fr}}
.d-visual{padding-block:clamp(32px,4vw,56px);border-top:1px solid var(--line)}
.offer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;border-top:1px solid var(--ink)}
.offer div{padding:26px 0 28px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:18px 1fr;gap:6px 16px}
.offer .tk{margin-top:6px}
.offer h3{font-size:21px}
.offer h3 a{text-decoration:none}.offer h3 a:hover{color:var(--orange-ink)}
.offer p{grid-column:2;color:var(--muted);font-size:15px}
@media (max-width:760px){.offer{grid-template-columns:1fr}}
.sec-t{font-size:clamp(26px,3vw,36px);margin-bottom:28px}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
@media (max-width:820px){.two{grid-template-columns:1fr}}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:12px;font-size:15.5px}
.checks li::before{content:"";width:14px;height:14px;margin-top:5px;border-radius:0 0 0 100%;background:var(--orange)}
.int-row{font-family:var(--display);font-size:20px;line-height:1.7}
.int-row span+span::before{content:" / ";color:var(--muted)}
.related{border-top:1px solid var(--ink);margin-top:18px}
.related a{display:grid;grid-template-columns:1fr auto;gap:4px 24px;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:center}
.related a b{font-family:var(--display);font-weight:500;font-size:19px}
.related a span{font-size:14px;color:var(--muted)}
.related a i{font-style:normal;grid-row:1/3;grid-column:2;transition:transform .2s}
.related a:hover b{color:var(--orange-ink)}.related a:hover i{transform:translateX(4px)}
.note{border-left:2px solid var(--orange);padding:4px 0 4px 20px;font-size:15.5px;max-width:72ch}
.note b{color:var(--orange-ink)}


.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}
.form label{display:grid;gap:6px;font-size:13.5px;font-weight:500}
.form .full{grid-column:1/-1}
.form input,.form select,.form textarea{font:16px var(--body);padding:10px 0;border:0;border-bottom:1px solid var(--muted);border-radius:0;background:transparent;color:var(--ink);width:100%}
.form textarea{min-height:110px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-bottom-color:var(--orange)}
.form .msg{grid-column:1/-1;font-size:14px;color:var(--orange-ink)}
@media (max-width:620px){.form{grid-template-columns:1fr}}
.contact-side{display:grid;gap:28px;align-content:start;border-left:1px solid var(--line);padding-left:32px}
.contact-side b{display:block;font-family:var(--display);font-weight:500;font-size:19px;margin-bottom:4px}
.contact-side span{color:var(--muted);font-size:15px;display:block}
.copy{font:500 13px var(--body);background:none;border:1px solid var(--line);color:var(--ink);border-radius:3px;padding:4px 10px;margin-top:8px;cursor:pointer}
@media (max-width:820px){.contact-side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:28px}}

.insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.post{border-top:1px solid var(--ink);padding-top:18px;display:grid;gap:10px;align-content:start}
.post h3{font-size:22px}
.post p{color:var(--muted);font-size:15px}
@media (max-width:820px){.insights{grid-template-columns:1fr}}



.stackd{display:grid;grid-template-columns:minmax(0,1fr) 210px;grid-template-rows:repeat(4,auto);gap:8px}
.sl{grid-column:1;display:grid;grid-template-columns:64px minmax(0,210px) minmax(0,1fr) 40px;align-items:center;gap:0 22px;min-height:84px;padding:10px 18px 10px 10px;background:var(--tile);transition:transform .25s}
.sl:hover{transform:translateX(6px)}
.sl .cap{width:64px;height:64px;background:var(--tile-2)}
.sl-name b{display:block;font-family:var(--display);font-weight:500;font-size:20px;line-height:1.2}
.sl-name span{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.sl-items{display:flex;flex-wrap:wrap;gap:6px 0;font-size:15px;font-weight:500}
.sl-items span+span::before{content:"";display:inline-block;width:4px;height:4px;background:currentColor;opacity:.35;margin:0 14px;vertical-align:3px}
.sl-go{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;text-decoration:none;border:1px solid color-mix(in srgb,currentColor 25%,transparent);transition:background .2s,color .2s,border-color .2s}
.sl-go:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.l-int{background:var(--orange-soft)}
.l-int .cap{background:var(--orange);border-top-left-radius:100%}
.l-int .sl-name b{color:var(--orange-ink)}
.l-ops .cap{background:var(--tile-2)}
.l-core{background:var(--key);color:var(--key-fg)}
.l-core .cap{background:var(--orange);border-top-left-radius:100%}
.l-core .sl-name span{color:color-mix(in srgb,var(--key-fg) 65%,transparent)}
.l-core .sl-name b{font-size:22px}
.l-fnd .cap{border-bottom-left-radius:100%}
.across{grid-column:2;grid-row:1/5;display:flex;flex-direction:column;gap:14px;padding:22px;border:1.5px dashed var(--muted);border-bottom-right-radius:72px;text-decoration:none;position:relative;background:var(--paper)}
.across .ac-k{font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.across b{font-family:var(--display);font-weight:500;font-size:18px;line-height:1.25;padding-left:14px;border-left:2px solid var(--orange)}
.across .ac-go{margin-top:auto;font-weight:500;font-size:14px}
.across:hover{border-color:var(--orange)}.across:hover .ac-go{color:var(--orange-ink)}
@media (max-width:900px){
  .stackd{grid-template-columns:1fr;grid-template-rows:none}
  .across{grid-column:1;grid-row:auto;border-bottom-right-radius:48px}
  .sl{grid-template-columns:48px minmax(0,1fr) 36px;gap:10px 16px}
  .sl .cap{width:48px;height:48px}
  .sl-items{grid-column:1/-1;grid-row:2;font-size:14px}
  .sl-go{grid-column:3;grid-row:1}
}
@media (prefers-reduced-motion:reduce){.sl:hover{transform:none}}



.psec{padding-block:clamp(40px,5vw,72px)}
.pbig{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center;background:var(--tile);padding:clamp(32px,4.5vw,64px)}
.p-eos{border-top-left-radius:clamp(80px,11vw,180px);padding-top:clamp(64px,7vw,96px);padding-left:clamp(40px,6vw,96px)}
.p-x2p{border-bottom-right-radius:clamp(80px,11vw,180px);padding-bottom:clamp(64px,7vw,96px)}
.p-x2p .pb-copy{order:2}
.pb-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-bottom:20px;margin-bottom:26px;border-bottom:1px solid var(--tile-2)}
.pb-word{font-family:var(--display);font-weight:500;font-size:clamp(26px,2.6vw,34px);line-height:1}
.pb-word em{font-style:normal;color:var(--emerald)}
.x2p-mark{display:block;width:clamp(86px,8vw,108px);aspect-ratio:360/169;background:var(--emerald);-webkit-mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWgAAACpAQMAAAA86DUzAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAABQlJREFUeNq1WTGy3DYMfcJqHBWefJWpYh0hJ4h1hBzBR8gNvsqUOYKPwiIH0aT6pZxxIWdkIoVEEiAhrlSEzd/VYqDH90AAxAcurB+YJ1xdDTNvAADKf/rA+9rSo58BPGznwVq8m5mZF9P6JVgvAjUzexPJGj78GD78tIOfTvafQXndv86W9SNaz4kRZub1jC71c3iZt3Cn1UrYQGNZc8K0/xnCdxcfyTVGUA4A4u6aP2tI8CkA2Fdv4XbyZ2nw3rJOvHaHzbGoyslOSp+4tawX6UxQAkyG9SqdCYbURyNQeArhGkKh9L3pQBCfe8Paq1fr32ucYIjBcjBaWnOFUcP3JMXsriNR4gAEwmt+oJ2UflD8EByy983nbyLM0DsX0reZftOebnzh5eORr1guR7CT0F8mBYQ16ftIaeT7VAgPDEcUTSmgRD70R77wR6jNlEVRXG8HZQDwN74FJD6FbieEl04+H7z3RwTP8e2bzFk7Ah9ALiQFHoRP1jG8AUBHMorK1QHAVwDfQ1Ql6Ud5LKcYjkuMTJIZcpK6u4hwDl9bkonuJKZSOqTdWzXMpwiHhFvS0R1Y4phmiMS+Wn3OzPjeqawY+aQtIUnf2Sd+K0/xcNDlT+oEQnVluaWt2h7Qgbk/t1lT3JAICCU8RmPvJChWwp8xGHJEJvyUZYzpsDalb2DIQFkJck+RrJbwZElFiNJrKdsz32bB6s6sfTrJXiVub1nzLrsW/lMVSZ9hmaygofBLpwtxc8rgQbISnnQRl09nAK0W/j2quInKWrbkGyH91MmTcd5fM8tUf9QbJ/IvmNmn9/8hhW+Qh1jKOBsA/Ha1RMdudNN9tawEj4iEi9TRm92Ep9POJAuqNgGc8g7MFT1Tl6xdVuIbFML35eZnRUmRLTYym4z35dOh9OJUx+PycpJ1+6rfYFl5G1lds4o6FnRTeRHxSttV+n45egihg1eOFIG/l4GyqsZ3Fr6b0CkJiKu6a30W7n5VBL+qi1ykZPcde+yJrN5uPOlnJ+XNyV1spe/A4yzF2599NbpnQhlArR1TKd5fOGvuDlgKyRZ8r3Jfw8kNJFpvRblmnN9tHvLEi+OvkMQbjBcveJxQgmjNyGqbVZSdynuL5MeVSHRfdVj/ckJJsiZxas8o8foEORE73uyYqKi8zRklb3pWkR+cbJcu+u4T1A61BjX16e9ETKHwLSYLQ0L86YSSf5P1CGDrqpS8QUv5YYrHbCmRTNp6/uhi2poLazHJaarJGADwT7LehR+HmIxH+1raJind9CWwU1LyJS/dDS/64AjcKvS7KKMVJd8ancV7AExoT+tTkfN9W6NEWg+7lGTWp8J6jKG9R0l9GrgLH5oGMe3LRmYJ9zIAU2MMRXIke7s2AuO7PNwM6/iCoatPC0gIH3OJezYTZW6YeXllPTmwBoMvzOwfzLzmA1CLk16P7bb6vGsIwrcHMDyLk627MMeleNfur45+g/D2yna5J+/lKhIAmNeL1heuXMK6fcKyIbwY29Z32VWnazmS/ZLFF60H4OmUQDO4XUZy3LXddeFnMbGvctJc/ldCxD0/u8qr4bAzbnwVKdXYtoK7u06i6H38Jetwu+ZL1sP1cCVzbFuxjkOWE+lnS/hrSJonE9s7c+Tc+vqJz8eqz31fP8P3cffXQuSwviG8dYGrWo+3kN8QHnRH+LsM/n/Cg+4Ifxf3HeFBd4QHjTeEv4n7lvD4D26y0xkn831tAAAAAElFTkSuQmCC) left/contain no-repeat;mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWgAAACpAQMAAAA86DUzAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAABQlJREFUeNq1WTGy3DYMfcJqHBWefJWpYh0hJ4h1hBzBR8gNvsqUOYKPwiIH0aT6pZxxIWdkIoVEEiAhrlSEzd/VYqDH90AAxAcurB+YJ1xdDTNvAADKf/rA+9rSo58BPGznwVq8m5mZF9P6JVgvAjUzexPJGj78GD78tIOfTvafQXndv86W9SNaz4kRZub1jC71c3iZt3Cn1UrYQGNZc8K0/xnCdxcfyTVGUA4A4u6aP2tI8CkA2Fdv4XbyZ2nw3rJOvHaHzbGoyslOSp+4tawX6UxQAkyG9SqdCYbURyNQeArhGkKh9L3pQBCfe8Paq1fr32ucYIjBcjBaWnOFUcP3JMXsriNR4gAEwmt+oJ2UflD8EByy983nbyLM0DsX0reZftOebnzh5eORr1guR7CT0F8mBYQ16ftIaeT7VAgPDEcUTSmgRD70R77wR6jNlEVRXG8HZQDwN74FJD6FbieEl04+H7z3RwTP8e2bzFk7Ah9ALiQFHoRP1jG8AUBHMorK1QHAVwDfQ1Ql6Ud5LKcYjkuMTJIZcpK6u4hwDl9bkonuJKZSOqTdWzXMpwiHhFvS0R1Y4phmiMS+Wn3OzPjeqawY+aQtIUnf2Sd+K0/xcNDlT+oEQnVluaWt2h7Qgbk/t1lT3JAICCU8RmPvJChWwp8xGHJEJvyUZYzpsDalb2DIQFkJck+RrJbwZElFiNJrKdsz32bB6s6sfTrJXiVub1nzLrsW/lMVSZ9hmaygofBLpwtxc8rgQbISnnQRl09nAK0W/j2quInKWrbkGyH91MmTcd5fM8tUf9QbJ/IvmNmn9/8hhW+Qh1jKOBsA/Ha1RMdudNN9tawEj4iEi9TRm92Ep9POJAuqNgGc8g7MFT1Tl6xdVuIbFML35eZnRUmRLTYym4z35dOh9OJUx+PycpJ1+6rfYFl5G1lds4o6FnRTeRHxSttV+n45egihg1eOFIG/l4GyqsZ3Fr6b0CkJiKu6a30W7n5VBL+qi1ykZPcde+yJrN5uPOlnJ+XNyV1spe/A4yzF2599NbpnQhlArR1TKd5fOGvuDlgKyRZ8r3Jfw8kNJFpvRblmnN9tHvLEi+OvkMQbjBcveJxQgmjNyGqbVZSdynuL5MeVSHRfdVj/ckJJsiZxas8o8foEORE73uyYqKi8zRklb3pWkR+cbJcu+u4T1A61BjX16e9ETKHwLSYLQ0L86YSSf5P1CGDrqpS8QUv5YYrHbCmRTNp6/uhi2poLazHJaarJGADwT7LehR+HmIxH+1raJind9CWwU1LyJS/dDS/64AjcKvS7KKMVJd8ancV7AExoT+tTkfN9W6NEWg+7lGTWp8J6jKG9R0l9GrgLH5oGMe3LRmYJ9zIAU2MMRXIke7s2AuO7PNwM6/iCoatPC0gIH3OJezYTZW6YeXllPTmwBoMvzOwfzLzmA1CLk16P7bb6vGsIwrcHMDyLk627MMeleNfur45+g/D2yna5J+/lKhIAmNeL1heuXMK6fcKyIbwY29Z32VWnazmS/ZLFF60H4OmUQDO4XUZy3LXddeFnMbGvctJc/ldCxD0/u8qr4bAzbnwVKdXYtoK7u06i6H38Jetwu+ZL1sP1cCVzbFuxjkOWE+lnS/hrSJonE9s7c+Tc+vqJz8eqz31fP8P3cffXQuSwviG8dYGrWo+3kN8QHnRH+LsM/n/Cg+4Ifxf3HeFBd4QHjTeEv4n7lvD4D26y0xkn831tAAAAAElFTkSuQmCC) left/contain no-repeat}
.pb-kick{font-family:var(--display);font-weight:500;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.pb-copy h2{font-size:clamp(32px,3.8vw,50px);font-weight:300;line-height:1.08}
.pb-copy h2 em{font-style:normal;font-weight:500;color:var(--emerald)}
.pb-sub{font-family:var(--display);font-size:clamp(17px,1.5vw,20px);margin-top:16px}
.pb-d{color:var(--muted);margin-top:14px;max-width:48ch}
.pb-feat{display:flex;flex-wrap:wrap;gap:8px 0;font-size:14.5px;font-weight:500;margin-top:22px}
.pb-feat span+span::before{content:"";display:inline-block;width:5px;height:5px;background:var(--emerald);margin:0 12px;vertical-align:3px}
.pb-int{font-size:14px;color:var(--muted);margin-top:12px}
.pb-int b{color:var(--ink);font-weight:500}
.pb-copy .tlink{margin-top:28px}
.pb-vis{min-width:0}

.pbig .fs .tk{background:var(--surface);outline-color:var(--tile)}
.pbig .fs:last-child .tk{background:var(--emerald)}
.pbig .floor-line .pulse{background:linear-gradient(90deg,transparent,var(--emerald),transparent)}
.pbig .floor-pulse .tk{background:var(--emerald);border-top-left-radius:100%}
.pbig .floor-across{border-top-color:var(--tile-2)}
.pbig .x2p-flow .mk,.pbig .x2p-flow .g{fill:var(--surface)}
.pbig .x2p-flow{min-width:460px}
@media (max-width:980px){.pbig{grid-template-columns:1fr}.p-x2p .pb-copy{order:0}.p-eos{padding-left:clamp(28px,5vw,48px)}}


.xf{display:flex;flex-direction:column;width:100%}
.xf .tk{background:var(--tile-2)}
.pbig .xf .tk{background:var(--surface)}
.xf-req{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.xf-req>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.xf-req .tk{width:30px;height:30px;margin-bottom:6px}
.xf-req b{font-family:var(--display);font-weight:500;font-size:clamp(15px,1.4vw,18px);line-height:1.2}
.xf-req span{font-size:13px;color:var(--muted);line-height:1.35}
.xf-wires{width:100%;height:70px;display:block;margin-block:12px 8px}
.xf-wires path{fill:none;stroke:var(--ink);stroke-width:1.4;opacity:.45;vector-effect:non-scaling-stroke}
.xf-steps{display:grid;gap:22px;position:relative}
.xf-steps::before{content:"";position:absolute;left:50%;top:30px;bottom:30px;width:1.5px;background:var(--ink);opacity:.45;transform:translateX(-50%)}
.xf-step{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:20px;align-items:center;position:relative}
.xf-step .tk{width:60px;height:60px;position:relative;z-index:1}
.xf-step .tk.em{background:var(--emerald);border-top-left-radius:100%}
.xf-v{justify-self:end;font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.xf-step b{display:block;font-family:var(--display);font-weight:500;font-size:clamp(17px,1.6vw,20px);line-height:1.2}
.xf-step span:not(.xf-v){display:block;font-size:13.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.xf-step:last-child b{color:var(--emerald)}
.xf-audit{margin-top:26px;padding-top:14px;border-top:1.5px dashed var(--muted);text-align:center;font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.d-visual .xf{max-width:820px;margin-inline:auto}
@media (max-width:560px){
  .xf-req{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}
  .xf-wires{display:none}
  .xf-steps{margin-top:26px}
  .xf-step{grid-template-columns:48px minmax(0,1fr)}
  .xf-step .tk{width:48px;height:48px}
  .xf-v{display:none}
  .xf-steps::before{left:24px}
}



.sec-head h2{font-size:clamp(36px,4.6vw,62px);font-weight:300;line-height:1.04}
.sec-head h2 b{font-weight:500}
.sec-head h2 .o{color:var(--orange)}
.sec-head{margin-bottom:60px}

.manifest{padding-block:clamp(56px,7vw,96px) 8px;border-top:1px solid var(--line)}
.mf-big{font-family:var(--display);font-weight:300;font-size:clamp(30px,4.2vw,56px);line-height:1.1;letter-spacing:-.01em;max-width:22ch;text-wrap:balance}
.mf-big b{font-weight:500}
.mf-big .o{color:var(--orange);font-weight:500}
.manifest .proof{margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--ink)}

.svc{grid-template-columns:72px minmax(0,.9fr) minmax(0,1.2fr) 44px;padding:36px 0;align-items:center}
.svc-tile{width:56px;height:56px;background:var(--tile);transition:background .25s,transform .25s}
.svc-tile.key{background:var(--key);border-top-left-radius:100%}
.svc-tile.bl{border-bottom-left-radius:100%}
.svc-tile.br{border-bottom-right-radius:100%}
.svc:hover .svc-tile{background:var(--orange);transform:rotate(-4deg)}
.svc h3{font-size:clamp(26px,3.1vw,42px);font-weight:300}
.svc:hover h3{font-weight:400}
.svc .go{width:44px;height:44px}
@media (max-width:820px){.svc{grid-template-columns:56px minmax(0,1fr)}.svc>div:last-of-type{grid-column:1/-1}.svc-tile{width:44px;height:44px}}

.ind-grid{gap:10px}
.ind{border:0;border-radius:0;background:var(--tile);padding:clamp(28px,3vw,40px);min-height:340px;position:relative;overflow:hidden;transition:background .25s}
.ind:hover{background:var(--tile-2)}
.ind h3{font-size:clamp(28px,2.8vw,36px);font-weight:300;margin-top:4px}
.ind.lead h3{font-weight:500;font-size:clamp(32px,3.4vw,44px)}
.ind.lead{background:var(--key);border-top-left-radius:clamp(80px,9vw,140px);padding-top:clamp(60px,6vw,84px)}
.ind.lead:hover{background:var(--key)}
.ind-ghost{position:absolute;right:-40px;bottom:-56px;width:300px;opacity:.08;pointer-events:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.ind-ghost rect,.ind-ghost path{fill:var(--key-fg)}
.ind.lead:hover .ind-ghost{transform:translate(-10px,-10px)}
.ind>*{position:relative}
.ind.i-sq::after,.ind.i-br::after{content:"";position:absolute;right:28px;bottom:28px;width:64px;height:64px;background:var(--tile-2);transition:background .25s}
.ind.i-br::after{border-bottom-right-radius:100%}
.ind.i-sq:hover::after,.ind.i-br:hover::after{background:var(--orange)}
.ind .more{padding-right:90px}

.engage div{padding-top:36px}
.eg-tile{display:block;width:64px;height:64px;background:var(--tile);margin-bottom:24px}
.eg-tile.bl{border-bottom-left-radius:100%}
.eg-tile.key{background:var(--orange);border-top-left-radius:100%}
.engage h3{font-size:clamp(24px,2.4vw,32px);font-weight:400}

.x2p-mark,.x2p-logo{background:var(--pgreen)!important}
.pb-word em,.pt-word em,.pname em{color:var(--pgreen)!important}


.agrid{display:grid;grid-template-columns:minmax(0,200px) repeat(4,minmax(0,1fr)) minmax(0,1.1fr);grid-auto-rows:minmax(104px,auto);gap:8px}
.al{display:flex;flex-direction:column;justify-content:center;padding-right:16px;border-right:2px solid var(--line)}
.al b{font-family:var(--display);font-weight:500;font-size:clamp(18px,1.6vw,22px);line-height:1.15}
.al span{font-size:13px;color:var(--muted);margin-top:4px}
.al.r-core{border-right-color:var(--ink)}
.al.r-int b{color:var(--orange-ink)}
.at{display:flex;align-items:flex-end;padding:16px 18px;background:var(--tile);color:var(--ink);text-decoration:none;transition:background .25s,color .25s}
.at b{font-family:var(--display);font-weight:500;font-size:clamp(14px,1.25vw,17px);line-height:1.2}
.at:hover{background:var(--orange);color:#fff}
.at.int{background:var(--orange-soft);color:var(--orange-ink)}
.at.int:hover{background:var(--orange);color:#fff}
.at.core{background:var(--key);color:var(--key-fg)}
.at.core:hover{background:var(--orange);color:#fff}
.at.c1{border-top-left-radius:56px}
.at.c1 b{font-size:clamp(16px,1.5vw,20px)}
.at.f1{border-bottom-left-radius:72px;justify-content:flex-end;text-align:right}
.atal{grid-column:6;grid-row:1/5;display:flex;flex-direction:column;gap:12px;padding:22px;background:var(--tile);color:var(--ink);text-decoration:none;border-bottom-right-radius:clamp(80px,9vw,140px);transition:background .25s,color .25s}
.atal span{font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.atal b{font-family:var(--display);font-weight:500;font-size:clamp(16px,1.4vw,19px);line-height:1.2;padding-top:12px;border-top:1px solid var(--tile-2)}
.atal i{font-style:normal;font-weight:500;margin-top:auto;font-size:14px}
.atal:hover{background:var(--orange);color:#fff}.atal:hover span{color:#fff}.atal:hover b{border-top-color:rgba(255,255,255,.35)}
@media (prefers-reduced-motion:no-preference){.at,.atal{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}}
@media (max-width:980px){
  .agrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}
  .al{grid-column:1/-1;border-right:0;border-bottom:2px solid var(--line);padding:18px 0 10px}
  .al.r-int{padding-top:0}
  .al.r-core{border-bottom-color:var(--ink)}
  .at{min-height:84px}
  .atal{grid-column:1/-1;grid-row:auto;margin-top:16px;border-bottom-right-radius:72px}
}


.arch2{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,230px);gap:8px 14px;align-items:stretch}
.axis{position:relative;display:flex;justify-content:center}
.axis::before{content:"";position:absolute;top:14px;bottom:0;left:50%;width:2px;background:var(--ink);transform:translateX(-50%)}
.ax-arrow{position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid var(--ink)}
.axis span{writing-mode:vertical-rl;transform:rotate(180deg);align-self:center;background:var(--paper);position:relative;padding-block:10px;font-family:var(--display);font-weight:500;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.arows{display:flex;flex-direction:column;gap:8px;min-width:0}
.arow{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr));gap:6px;padding:6px;background:var(--tile)}
.alab{display:flex;align-items:center;gap:14px;padding:10px 12px}
.acap{width:40px;height:40px;flex-shrink:0;background:var(--tile-2)}
.acap.or{background:var(--orange);border-top-left-radius:100%}
.acap.bl{border-bottom-left-radius:100%}
.alab b{display:block;font-family:var(--display);font-weight:500;font-size:clamp(17px,1.5vw,21px);line-height:1.15}
.alab span{display:block;font-size:13px;color:var(--muted);margin-top:3px;line-height:1.35}
.ax{display:flex;align-items:flex-end;min-height:88px;padding:14px 14px;background:var(--surface);color:var(--ink);text-decoration:none;font-family:var(--display);font-weight:500;font-size:clamp(14px,1.2vw,16px);line-height:1.2;transition:background .25s,color .25s}
.ax:hover{background:var(--orange);color:#fff}
.r-int{background:var(--orange-soft)}
.r-int .alab b,.r-int .ax{color:var(--orange-ink)}
.r-int .ax:hover{color:#fff}
.r-core{background:var(--key)}
.r-core .alab b{color:var(--key-fg)}
.r-core .alab span{color:color-mix(in srgb,var(--key-fg) 65%,transparent)}
.r-core .ax{background:color-mix(in srgb,var(--key-fg) 11%,var(--key));color:var(--key-fg)}
.r-core .ax.lead{border-top-left-radius:44px;font-size:clamp(15px,1.35vw,18px)}
.r-core .ax:hover{background:var(--orange);color:#fff}
.r-fnd .ax:first-of-type{border-bottom-left-radius:48px;justify-content:flex-end;text-align:right}
.atal2{display:flex;flex-direction:column;gap:10px;padding:22px;background:var(--tile);color:var(--ink);text-decoration:none;border-bottom-right-radius:clamp(80px,9vw,140px);transition:background .25s,color .25s}
.atal2 .k{font-family:var(--display);font-weight:500;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.atal2 .t{font-family:var(--display);font-weight:500;font-size:clamp(19px,1.7vw,24px);line-height:1.15;margin-bottom:8px}
.atal2 .li{font-size:14.5px;font-weight:500;padding:10px 0;border-top:1px solid var(--tile-2)}
.atal2 i{font-style:normal;font-weight:500;margin-top:auto;font-size:14px}
.atal2:hover{background:var(--orange);color:#fff}.atal2:hover .k{color:#fff}.atal2:hover .li{border-top-color:rgba(255,255,255,.35)}
@media (prefers-reduced-motion:no-preference){.arow,.atal2{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}.arow:nth-child(2){animation-delay:.06s}.arow:nth-child(3){animation-delay:.12s}.arow:nth-child(4){animation-delay:.18s}}
@media (max-width:1060px){.arow{grid-template-columns:repeat(4,minmax(0,1fr))}.alab{grid-column:1/-1}}
@media (max-width:860px){.arch2{grid-template-columns:22px minmax(0,1fr)}.atal2{grid-column:1/-1;border-bottom-right-radius:72px}}
@media (max-width:560px){.arow{grid-template-columns:repeat(2,minmax(0,1fr))}.ax{min-height:64px}}



.d-hero h1{font-size:clamp(38px,5.2vw,68px);line-height:1.04}
.d-hero h1 .o,.sec-t .o{color:var(--orange)}
.sec-t{font-size:clamp(30px,3.8vw,50px);font-weight:300;line-height:1.05;margin-bottom:36px}
.sec-t b{font-weight:500}
.two .sec-t{margin-bottom:0}
.offer h3{font-weight:500}
.d-aside strong{font-weight:500}
.d-logo{margin-top:30px;line-height:1}
.d-logo-eos{font-size:clamp(44px,5vw,66px)!important;font-weight:600!important}
.d-logo-x2p{width:clamp(160px,16vw,220px)!important}
.offer h3 .d-logo-eos{font-size:24px!important}
.offer h3 .d-logo-x2p{display:inline-block;width:68px!important;vertical-align:-4px}
.related a b .d-logo-eos{font-size:21px!important}
.related a b .d-logo-x2p{width:62px!important}
.int-row{font-size:clamp(20px,2vw,24px);font-weight:300}
.int-row span:first-child{font-weight:500;color:var(--orange-ink)}
.checks li{font-size:17px}
.d-visual .fs:last-child .tk{background:var(--orange)}
.d-visual .floor-pulse .tk{background:var(--orange);border-top-left-radius:100%}
.d-visual .floor-line .pulse{background:linear-gradient(90deg,transparent,var(--orange),transparent)}


.sk-span{position:relative;overflow:hidden}
.sk-span>.sketch{position:absolute;top:0;right:-3%;width:min(78%,1060px);height:auto;pointer-events:none;z-index:0}
.sk-span>section{position:relative;z-index:1}
.sk-span .d-visual{border-top-color:transparent}
.sk-span h1,.sk-span .lead,.sk-span .d-aside,.sk-span .crumbs,.sk-span .xf,.sk-span .floor{text-shadow:0 0 2px var(--paper),0 0 10px var(--paper)}
.sketch path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.sketch .sk-k{stroke:var(--ink)}
.sketch .sk-o{stroke:var(--orange)}
.sketch .sk-g{stroke:var(--pgreen)}
@media (max-width:860px){.sk-span>.sketch{width:150%;right:-45%;opacity:.6}}
.sk-span>.sketch{opacity:.62}
.sk-span .d-hero .wrap{grid-template-columns:minmax(0,560px)}
.sk-span .d-aside{margin-top:4px}
.sk-span>.sketch{width:min(47%,640px);right:0;top:24px;opacity:.75}
@media (max-width:860px){.sk-span>.sketch{width:90%;right:-20%;opacity:.55}}
.sk-span>.sketch{overflow:visible}
@media (max-width:860px){.sk-span>.sketch{overflow:hidden}}
.sk-span>.sketch.sk-x2p{right:clamp(40px,9vw,150px)}
@media (max-width:860px){.sk-span>.sketch.sk-x2p{right:-10%}}
.sk-span>.sketch.sk-eos{width:min(37.6%,512px)}
@media (max-width:860px){.sk-span>.sketch.sk-eos{width:72%}}
.sk-span>.sketch.sk-eos{right:15%;top:calc(24px + 10vh)}
@media (max-width:860px){.sk-span>.sketch.sk-eos{right:-20%;top:24px}}


.ic{display:block;flex-shrink:0;background:var(--paper)}
.ic .ic-svg{display:block;width:100%;height:100%}
.ic-svg path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.ic-svg .sk-k{stroke:var(--ink)}.ic-svg .sk-o{stroke:var(--orange)}.ic-svg .sk-g{stroke:var(--pgreen)}
.pbig .ic{background:var(--tile)}
.floor-line{padding-top:72px}
.floor-line::before{top:30px}
.floor-line .pulse{top:27px}
.fs .ic{position:absolute;top:-70px;left:-6px;width:56px;height:56px;padding:4px;outline:6px solid var(--paper)}
.pbig .fs .ic{outline-color:var(--tile)}
.floor-pulse .ic{width:56px;height:56px}
.xf-req .ic{width:60px;height:60px;margin-bottom:4px;background:transparent}
.xf-step .ic.st{width:72px;height:72px;padding:8px;background:var(--tile);position:relative;z-index:1}
.pbig .xf-step .ic.st{background:var(--surface)}
.xf-step .ic.st.pay{background:var(--orange-soft);border-top-left-radius:44px}
.xf-step{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)}
.xf-steps::before{top:36px;bottom:36px}
@media (max-width:700px){
  .floor-line{padding-top:0;padding-left:70px}
  .floor-line::before{left:26px}
  .fs .ic{top:-6px;left:-70px;width:52px;height:52px}
  .fs{min-height:52px}
}
@media (max-width:560px){
  .xf-step{grid-template-columns:56px minmax(0,1fr)}
  .xf-step .ic.st{width:56px;height:56px;padding:6px}
  .xf-steps::before{left:28px}
}


.post{text-decoration:none;color:inherit}
.post .more{font-weight:500;font-size:14px;margin-top:6px}
.post:hover h3,.post:hover .more{color:var(--orange-ink)}
.art-hero h1{max-width:20ch}
.art-by{margin-top:22px;font-size:14px;color:var(--muted);font-family:var(--display);letter-spacing:.04em}
.art-band{padding-top:clamp(40px,5vw,64px)}
.art-body{max-width:720px}
.art-body>p{font-size:clamp(17px,1.4vw,19px);line-height:1.75;margin:0 0 22px;color:var(--ink)}
.art-body>p:first-child{font-size:clamp(19px,1.7vw,22px);line-height:1.6;color:var(--ink)}
.art-body h2{font-size:clamp(26px,2.6vw,34px);font-weight:400;margin:44px 0 16px;padding-top:24px;border-top:1px solid var(--line)}
.art-body h3{font-size:20px;font-weight:500;margin:26px 0 8px}
.art-body ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:12px}
.art-body li{display:grid;grid-template-columns:18px 1fr;gap:10px;font-size:17px;line-height:1.65}
.art-body li::before{content:"";width:8px;height:8px;margin-top:10px;background:var(--orange)}
.art-body li b{font-weight:600}
.art-body blockquote{margin:36px 0;padding:6px 0 6px 26px;border-left:3px solid var(--orange);font-family:var(--display);font-weight:300;font-size:clamp(22px,2.2vw,28px);line-height:1.35;color:var(--ink)}
.art-cta{margin-top:48px;padding:28px;background:var(--tile);border-top-left-radius:56px;display:grid;gap:8px;justify-items:start}
.art-cta b{font-family:var(--display);font-weight:500;font-size:22px}
.art-cta span{color:var(--muted)}
.art-cta .btn{margin-top:10px}
.form button[disabled]{opacity:.6;cursor:wait}
@media (max-width:820px){.offices{grid-template-columns:1fr}}
.ind-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr)}
.ind-grid .ind{min-height:280px}
.ind-grid .ind.lead{grid-row:span 2}
.ind-grid .ind.i-br{grid-column:span 2}
@media (max-width:1100px){.ind-grid{grid-template-columns:1fr 1fr}.ind-grid .ind.lead{grid-row:auto;grid-column:span 2}.ind-grid .ind.i-br{grid-column:span 2}}
@media (max-width:640px){.ind-grid{grid-template-columns:1fr}.ind-grid .ind.lead,.ind-grid .ind.i-br{grid-column:auto}}


#readbar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--orange);z-index:80}
.mast{position:relative;overflow:hidden;background:var(--key);color:var(--key-fg);padding-block:28px clamp(56px,7vw,96px)}
.mast-ghost{position:absolute;right:-80px;bottom:-110px;width:min(560px,70vw);opacity:.06;pointer-events:none}
.mast-ghost rect,.mast-ghost path{fill:var(--key-fg)}
.mast .wrap{position:relative}
.mast-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--key-fg) 18%,transparent);font-size:13px;color:color-mix(in srgb,var(--key-fg) 65%,transparent)}
.mast-brand{font-family:var(--display);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--key-fg);text-decoration:none}
.mast-brand b{color:var(--orange);font-weight:500}
.mast-body{max-width:900px;padding-top:clamp(40px,6vw,80px)}
.mast-k{display:inline-block;font-family:var(--display);font-weight:500;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange)}
.mast h1{font-size:clamp(38px,5.4vw,74px);font-weight:300;line-height:1.04;margin:18px 0 22px;color:var(--key-fg)}
.mast h1 b{font-weight:500}.mast h1 .o,.idx-h .o{color:var(--orange)}
.mast-dek{font-size:clamp(18px,1.7vw,22px);line-height:1.5;color:color-mix(in srgb,var(--key-fg) 78%,transparent);max-width:56ch}
.mast-by{display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px;margin-top:36px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--key-fg) 18%,transparent)}
.mast-by i{font-style:normal;width:44px;height:44px;display:grid;place-items:center;background:var(--orange);color:#fff;font-family:var(--display);font-weight:500;font-size:14px;letter-spacing:.06em;border-top-left-radius:22px}
.mast-by b{display:block;font-family:var(--display);font-weight:500;font-size:16px;color:var(--key-fg)}
.mast-by span{display:block;font-size:13px;color:color-mix(in srgb,var(--key-fg) 65%,transparent)}
.mast-by .mast-meta{margin-left:auto;font-family:var(--display);letter-spacing:.08em}
.art-wrap{padding-block:clamp(48px,6vw,80px)}
.art-grid{display:grid;grid-template-columns:220px minmax(0,720px);gap:clamp(32px,6vw,88px);align-items:start}
.art-side{position:sticky;top:calc(env(safe-area-inset-top,0px) + 100px);display:grid;gap:22px}
.art-toc b{display:block;font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.art-toc ol{list-style:none;padding:0;margin:0;border-left:1px solid var(--line)}
.art-toc button{display:block;width:100%;text-align:left;background:none;border:0;padding:7px 0 7px 14px;margin-left:-1px;border-left:2px solid transparent;font:14px/1.4 var(--body);color:var(--ink);cursor:pointer}
.art-toc button:hover{color:var(--orange-ink);border-left-color:var(--orange)}
.art-share{justify-self:start}
.art-take{background:var(--tile);border-top-left-radius:48px;padding:30px 30px 26px;margin-bottom:40px}
.art-take b,.art-qs>b{display:block;font-family:var(--display);font-weight:500;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-ink);margin-bottom:14px}
.art-take ul,.art-qs ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.art-take li,.art-qs li{display:grid;grid-template-columns:22px 1fr;gap:10px;font-size:17px;line-height:1.55}
.art-take li::before,.art-qs li::before{content:"";width:12px;height:12px;margin-top:6px;background:var(--orange);border-top-left-radius:100%}
.art-body{max-width:none}
.art-body>p{font-size:18px;line-height:1.78;margin:0 0 22px}
.art-body>p:first-child{font-size:clamp(19px,1.6vw,21px);line-height:1.7}
.art-body>p:first-child::first-letter{float:left;font-family:var(--display);font-weight:500;font-size:4.4em;line-height:.86;margin:6px 12px 0 0;color:var(--orange)}
.art-body h2{scroll-margin-top:100px;font-size:clamp(26px,2.6vw,34px);font-weight:400;margin:52px 0 16px;padding-top:26px;border-top:1px solid var(--ink)}
.art-body h3{font-size:20px;font-weight:500;margin:28px 0 8px}
.art-body h3+p{margin-bottom:16px}
.art-body ul{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:10px}
.art-body li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;font-size:17px;line-height:1.65}
.art-body li::before{content:"";width:7px;height:7px;margin-top:11px;background:var(--orange)}
.art-body blockquote{margin:44px 0;padding:0 0 0 30px;border-left:3px solid var(--orange)}
.art-body blockquote p{font-family:var(--display);font-weight:300;font-size:clamp(24px,2.5vw,32px);line-height:1.3;color:var(--ink);margin:0}
.art-body blockquote cite{display:block;margin-top:12px;font-style:normal;font-family:var(--display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-ink)}
.art-tw{overflow-x:auto;margin:8px 0 30px}
.art-table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.art-table th{text-align:left;font-family:var(--display);font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:10px 14px 10px 0;border-bottom:1.5px solid var(--ink)}
.art-table td{padding:13px 14px 13px 0;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}
.art-table td:first-child{font-weight:600;color:var(--ink)}
.art-note{margin:26px 0 30px;padding:20px 24px;background:var(--orange-soft);border-left:3px solid var(--orange)}
.art-note b{display:block;font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-ink);margin-bottom:6px}
.art-note p{margin:0;font-size:16.5px;line-height:1.6}
.art-phases{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0 30px}
.art-phases>div{background:var(--tile);padding:20px}
.art-phases>div:last-child{background:var(--orange-soft);border-bottom-right-radius:40px}
.art-phases span{display:block;font-family:var(--display);font-weight:500;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-ink)}
.art-phases b{display:block;font-family:var(--display);font-weight:500;font-size:21px;margin:6px 0 6px}
.art-phases p{margin:0;font-size:14.5px;line-height:1.5;color:var(--muted)}
.art-qs{margin:44px 0 10px;padding:30px;background:var(--key);color:var(--key-fg);border-bottom-right-radius:56px}
.art-qs>b{color:var(--orange)}
.art-qs li{color:var(--key-fg)}
.art-end{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:52px;padding-top:28px;border-top:1px solid var(--ink)}
.art-end b{display:block;font-family:var(--display);font-weight:500;font-size:22px}
.art-end span{color:var(--muted)}
.idx-h{font-size:clamp(40px,5.6vw,78px);font-weight:300;line-height:1.04;margin:clamp(40px,6vw,72px) 0 clamp(36px,5vw,56px);color:var(--key-fg)}
.idx-h b{font-weight:500}
.feat{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:clamp(28px,3.4vw,44px);background:color-mix(in srgb,var(--key-fg) 7%,var(--key));color:var(--key-fg);text-decoration:none;border-top-left-radius:clamp(56px,7vw,110px);transition:background .25s}
.feat:hover{background:color-mix(in srgb,var(--key-fg) 12%,var(--key))}
.feat h2{font-size:clamp(28px,3.2vw,44px);font-weight:400;margin:14px 0 12px;color:var(--key-fg);max-width:24ch}
.feat p{color:color-mix(in srgb,var(--key-fg) 72%,transparent);max-width:60ch}
.feat-go{font-weight:500;color:var(--orange);white-space:nowrap}
.ins-band{border-top:0}
.ins-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--ink)}
.ins-count{font-size:14px;color:var(--muted);text-decoration:none}
a.ins-count:hover{color:var(--orange-ink)}
.ins-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ins-grid.ins-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ins-card{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,2.6vw,34px);background:var(--tile);text-decoration:none;color:var(--ink);min-height:250px;transition:background .25s}
.ins-card:hover{background:var(--tile-2)}
.ins-k{font-family:var(--display);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-ink)}
.ins-card h3{font-size:clamp(21px,2vw,27px);font-weight:400;line-height:1.2}
.ins-card p{color:var(--muted);font-size:15px}
.ins-meta{margin-top:auto;display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}
.ins-meta i{font-style:normal;font-weight:500;color:var(--ink);transition:transform .2s}
.ins-card:hover .ins-meta i{transform:translateX(4px)}
.ins-grid .ins-card:first-child{border-top-left-radius:56px}
.ins-grid .ins-card:last-child{border-bottom-right-radius:56px}
@media (max-width:980px){.art-grid{grid-template-columns:1fr}.art-side{position:static;order:2}.ins-grid.ins-3{grid-template-columns:1fr}}
@media (max-width:720px){.ins-grid{grid-template-columns:1fr}.feat{grid-template-columns:1fr}.mast-by .mast-meta{margin-left:0}}
.art-main{min-width:0}
@media (max-width:980px){.art-grid{grid-template-columns:minmax(0,1fr)}}
.page[hidden]{display:none!important}

/* Product brochure downloads */
.d-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:28px;position:relative;z-index:2}
.d-meta{font:400 13px var(--body);color:var(--muted);letter-spacing:.02em}
.btn .arr.dl{display:inline-block}
.btn:hover .arr.dl{transform:translateY(2px)}
.dl-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font:500 14px var(--body);color:var(--orange-ink);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.dl-link:hover{color:var(--orange)}
.dl-link span{transition:transform .2s}.dl-link:hover span{transform:translateY(2px)}
@media (max-width:560px){.d-ctas .btn{width:100%;justify-content:center}}
.offer > div > .dl-link{grid-column:2/-1;justify-self:start;white-space:nowrap;margin-top:12px}
