/* Galaxy Street Digital, theme #26 "Ink and Ember".
   Hero rules are ported 1:1 from _source/Theme26HeroAuto.dc.html;
   `.lt X` in the artboard is `[data-theme=light] X` here. */

@font-face{font-family:"Archivo";src:url("/fonts/archivo-latin-800-normal.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

/* ---------- Tokens ---------- */
:root,[data-theme=dark]{
  color-scheme:dark;
  --bg:#0B0B0C;
  --panel:#171718;
  --panel-2:#1F1F21;
  --text:#F4EFEA;
  --muted:#BDB8B3;
  --accent:#FF5A1F;
  --btn:#FF5A1F;
  --btn-text:#0B0B0C;
  --amber:#FFB020;
  --graphite:#3A3A3C;
  --line:rgba(244,239,234,.14);
  --line-strong:rgba(244,239,234,.28);
  --hard:#FFB020;          /* hover offset shadow */
  --focus:#FFB020;
  --glow:rgba(255,90,31,.34);
}
[data-theme=light]{
  color-scheme:light;
  --bg:#F6F1EA;
  --panel:#EDE5DA;
  --panel-2:#E6DCCF;
  --text:#141416;
  --muted:#4A4744;
  --accent:#C2410C;
  --btn:#FF5A1F;
  --btn-text:#0B0B0C;
  --amber:#F29A0E;
  --graphite:#3A3A3C;
  --line:rgba(20,20,22,.14);
  --line-strong:rgba(20,20,22,.28);
  --hard:#141416;
  --focus:#C2410C;
  --glow:rgba(255,90,31,.2);
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;background-color:var(--bg);color:var(--text);font:400 17px/1.6 "IBM Plex Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .3s,color .3s}
a{color:inherit}
img{max-width:100%;height:auto}
h1,h2,h3{margin:0}
p{margin:0}
button{font:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-80px;z-index:100;padding:12px 16px;border-radius:2px;background:var(--btn);color:var(--btn-text);font-weight:600;text-decoration:none}
.skip:focus{top:12px}
.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 56px}
@media (max-width:760px){.wrap{padding:0 20px}}

/* ---------- Hero (ported) ---------- */
.root{position:relative;overflow:hidden;min-height:720px;display:flex;flex-direction:column;font-family:"IBM Plex Sans",sans-serif;font-size:16px;line-height:normal;background-color:#0B0B0C;background-image:radial-gradient(ellipse 42% 52% at 80% 46%,rgba(255,90,31,.34),rgba(255,176,32,.08) 48%,rgba(255,90,31,0) 72%);color:#F4EFEA;transition:color .3s}
[data-theme=light] .root{background-color:#F6F1EA;background-image:radial-gradient(ellipse 42% 52% at 80% 46%,rgba(255,90,31,.2),rgba(255,176,32,.1) 48%,rgba(255,90,31,0) 72%);color:#141416}
.embers{position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;overflow:hidden}
.nav{position:relative;z-index:20;display:flex;flex-wrap:wrap;gap:4px 24px;align-items:center;justify-content:space-between;width:100%;max-width:1280px;margin:0 auto;box-sizing:border-box;padding:20px 56px}
.brand{display:flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;color:inherit}
.wordmark{font:800 16px/1.12 "Archivo",sans-serif;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;color:#F4EFEA;opacity:.85;transition:color .15s,opacity .15s}
[data-theme=light] .nav .wordmark{color:#1A1A1C;opacity:.82}
.brand:hover .wordmark{color:#FF5A1F;opacity:1}
[data-theme=light] .brand:hover .wordmark{color:#C2410C;opacity:1}
.foot .wordmark{color:var(--text);opacity:1;font-size:15px}
.foot .brand:hover .wordmark{color:var(--accent)}
.wm-br{display:none}
.nav-tools{display:flex;align-items:center}
.logo{height:56px;width:auto;display:block;transition:filter .3s}
[data-theme=light] .logo{filter:brightness(0)}
.nav-menu{display:flex;flex-wrap:wrap;align-items:center}
.nav-sep{opacity:.35}
.nl{display:inline-block;padding:12px 10px;color:#F4EFEA;opacity:.85;text-decoration:none;font-size:15px}
.nl:hover{color:#FF5A1F;opacity:1}
[data-theme=light] .nl{color:#1A1A1C;opacity:.82}
[data-theme=light] .nl:hover{color:#C2410C;opacity:1}
.nl[aria-current=page]{opacity:1;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:6px}
.tg,.lg,.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-left:10px;padding:0;border:1px solid rgba(244,239,234,.28);border-radius:2px;background:transparent;color:#F4EFEA;cursor:pointer;transition:border-color .15s,color .15s}
.tg:hover,.lg:hover,.menu-btn:hover{border-color:#FF5A1F;color:#FF5A1F}
[data-theme=light] .tg,[data-theme=light] .lg,[data-theme=light] .menu-btn{border-color:rgba(20,20,22,.28);color:#141416}
[data-theme=light] .tg:hover,[data-theme=light] .lg:hover,[data-theme=light] .menu-btn:hover{border-color:#C2410C;color:#C2410C}
.lg{flex-direction:column;gap:2px;text-decoration:none;font:600 12px/1 "IBM Plex Sans",sans-serif;letter-spacing:.06em}
.lg .globe{display:block;width:15px;height:15px}
.tg .sun{display:block}.tg .moon{display:none}
[data-theme=light] .tg .sun{display:none}[data-theme=light] .tg .moon{display:block}
.menu-btn{display:none;margin-left:0}
.menu-btn .x{display:none}
.menu-btn[aria-expanded=true] .x{display:block}
.menu-btn[aria-expanded=true] .bars{display:none}
.main{position:relative;z-index:1;flex:1;display:flex;align-items:center;width:100%;max-width:1280px;margin:0 auto;box-sizing:border-box;padding:24px 56px 72px}
.left{position:relative;flex:1 1 auto;min-width:0}
.hl{position:relative;z-index:2;margin:0;max-width:640px;font:800 clamp(38px,5vw,64px)/1.02 "Archivo",sans-serif;text-transform:uppercase;letter-spacing:-.01em}
.acc{color:#FF5A1F}
[data-theme=light] .acc{color:#C2410C}
.w{display:inline-block;animation:slam .7s cubic-bezier(.2,.9,.25,1.15) both}
.hero-sub{position:relative;z-index:2;margin:22px 0 30px;font-size:18px;line-height:1.5;max-width:440px;opacity:.85}
.cta{display:inline-block;padding:14px 26px;border-radius:2px;background:#FF5A1F;color:#0B0B0C;font-weight:700;font-size:16px;line-height:normal;text-decoration:none;border:0;cursor:pointer;transition:transform .12s steps(2),box-shadow .12s steps(2)}
.cta:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 #FFB020}
[data-theme=light] .cta:hover{box-shadow:4px 4px 0 #141416}
.cta:focus-visible,.nl:focus-visible,.tg:focus-visible,.lg:focus-visible,.menu-btn:focus-visible,.nav .brand:focus-visible{outline:2px solid #FFB020;outline-offset:3px}
[data-theme=light] .cta:focus-visible,[data-theme=light] .nl:focus-visible,[data-theme=light] .tg:focus-visible,[data-theme=light] .lg:focus-visible,[data-theme=light] .menu-btn:focus-visible,[data-theme=light] .nav .brand:focus-visible{outline-color:#C2410C}
.root .cta{position:relative;z-index:2}
.wg{position:absolute;z-index:1;right:-24px;top:-20px;width:300px;height:320px;perspective:900px;perspective-origin:150px 190px;pointer-events:none}
.glow{position:absolute;left:-60px;top:40px;width:420px;height:320px;background:radial-gradient(ellipse at 50% 50%,rgba(255,90,31,.42),rgba(255,176,32,.1) 45%,rgba(255,90,31,0) 70%);animation:pulse 5s ease-in-out infinite}
[data-theme=light] .glow{background:radial-gradient(ellipse at 50% 50%,rgba(255,90,31,.26),rgba(255,176,32,.1) 45%,rgba(255,90,31,0) 70%)}
.stars{position:absolute;left:250px;top:40px;width:2px;height:2px;background:#FFB020;box-shadow:16px 22px 0 #FF5A1F,-210px 14px 0 #FFB020,-230px 90px 0 #FF5A1F,24px 120px 0 #FFB020,-120px -20px 0 #FF5A1F}
[data-theme=light] .stars{background:#F29A0E;box-shadow:16px 22px 0 #FF5A1F,-210px 14px 0 #F29A0E,-230px 90px 0 #FF5A1F,24px 120px 0 #F29A0E,-120px -20px 0 #FF5A1F}
.sc{position:absolute;left:150px;top:190px;width:0;height:0;transform-style:preserve-3d;transform:rotateX(-14deg)}
.disc{position:absolute;left:-84px;top:-84px;width:168px;height:168px;border-radius:50%;transform:rotateX(14deg);background:radial-gradient(circle at 33% 27%,rgba(255,255,255,.42),rgba(255,255,255,0) 16%),radial-gradient(circle at 80% 86%,rgba(255,90,31,.55),rgba(255,90,31,0) 42%),radial-gradient(circle at 36% 30%,#6B6B71 0%,#45454A 24%,#29292C 52%,#151517 78%,#0B0B0C 100%);box-shadow:inset -12px -14px 26px rgba(0,0,0,.55),inset 4px 5px 10px rgba(255,255,255,.1),0 0 0 1.5px rgba(255,90,31,.45),0 0 46px rgba(255,90,31,.42)}
[data-theme=light] .disc{background:radial-gradient(circle at 33% 27%,rgba(255,255,255,.45),rgba(255,255,255,0) 16%),radial-gradient(circle at 80% 86%,rgba(255,90,31,.5),rgba(255,90,31,0) 42%),radial-gradient(circle at 36% 30%,#A39C94 0%,#77716B 24%,#514C48 52%,#34302D 78%,#211F1D 100%);box-shadow:inset -12px -14px 26px rgba(0,0,0,.45),inset 4px 5px 10px rgba(255,255,255,.12),0 0 0 1.5px rgba(255,90,31,.45),0 0 40px rgba(255,90,31,.28)}
.orb{position:absolute;left:-132px;top:-132px;width:264px;height:264px;border-radius:50%;border:1.5px dashed rgba(255,176,32,.5);box-sizing:border-box;animation:orb 40s linear infinite}
[data-theme=light] .orb{border-color:rgba(194,65,12,.5)}
.orb::after{content:"";position:absolute;left:50%;top:-4px;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:#FFB020;box-shadow:0 0 10px #FF5A1F}
[data-theme=light] .orb::after{background:#FF5A1F;box-shadow:0 0 8px rgba(255,90,31,.7)}
.roll{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;animation:roll 18s linear infinite}
.slot{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d}
.slot>div{position:absolute;left:0;bottom:0;transform:translateX(-50%)}
.cr{position:absolute;display:block;border-radius:50%;background:radial-gradient(circle at 60% 62%,rgba(0,0,0,.45),rgba(0,0,0,.18) 70%);box-shadow:inset 1.5px 1.5px 0 rgba(255,255,255,.12),inset -1px -1px 0 rgba(0,0,0,.4)}
.bd{background:#3A3A3C;box-shadow:inset 0 0 0 1px #4A4A4E,1.5px 1.5px 0 #141415}
.bh::before{content:"";position:absolute;left:-2px;right:-2px;top:-7px;height:7px;background:#FF5A1F;clip-path:polygon(0 100%,50% 0,100% 100%)}
.bh::after{content:"";position:absolute;left:3px;top:3.5px;width:3px;height:3px;background:#FFB020;box-shadow:7px 0 0 #FFB020}
.bs::before{content:"";position:absolute;left:-1px;right:-1px;top:0;height:4px;background:repeating-linear-gradient(90deg,#FF5A1F 0 3px,#F4EFEA 3px 6px)}
.bs::after{content:"";position:absolute;left:2px;right:2px;bottom:0;height:6px;background:linear-gradient(90deg,#FFB020 0 62%,#0B0B0C 62% 70%,#FF5A1F 70% 100%)}
.bw::before{content:"";position:absolute;left:50%;margin-left:-.5px;top:-5px;width:1px;height:5px;background:#FFB020}
.bw::after{content:"";position:absolute;left:2px;right:2px;top:3px;bottom:2px;background:repeating-linear-gradient(0deg,#3A3A3C 0 2px,rgba(58,58,60,0) 2px 4px),repeating-linear-gradient(90deg,#FFB020 0 2px,rgba(255,176,32,0) 2px 4px)}
.bw2::after{background:repeating-linear-gradient(0deg,#3A3A3C 0 2px,rgba(58,58,60,0) 2px 4px),repeating-linear-gradient(90deg,#FF5A1F 0 2px,rgba(255,90,31,0) 2px 4px)}
.bk{width:2px;height:5px;background:#8A5222;box-shadow:none}
.bk::before{content:"";position:absolute;left:-4px;bottom:3px;width:10px;height:10px;background:#D9731E;clip-path:polygon(25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%,0 25%,25% 25%)}
.bk::after{content:"";position:absolute;left:-2px;bottom:8px;width:2px;height:2px;background:#FFB020;box-shadow:3px 2px 0 #FFB020,1px -3px 0 #FFB020}
.shw{position:absolute;left:-14px;top:-14px;width:28px;height:28px;transform:translateY(-84.6px) rotateX(90deg)}
.shd{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.75),rgba(0,0,0,0) 70%);animation:shd 1s ease-in-out infinite}
.bot{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;transform:translateY(-84px) scale(.5)}
.hop{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;animation:hop 1s linear infinite}
.rb{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;transform:rotateY(60deg);animation:sway 2.4s ease-in-out infinite alternate}
.c{position:absolute;width:calc(var(--w)*1px);height:calc(var(--h)*1px);transform-style:preserve-3d}
.c>i{position:absolute;display:block;background:var(--k);backface-visibility:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.28)}
[data-theme=light] .c>i{box-shadow:inset 0 0 0 1px rgba(0,0,0,.5)}
.c>.f{left:0;top:0;width:100%;height:100%;transform:translateZ(calc(var(--d)*.5px))}
.c>.k{left:0;top:0;width:100%;height:100%;transform:rotateY(180deg) translateZ(calc(var(--d)*.5px));filter:brightness(.6)}
.c>.r{top:0;height:100%;width:calc(var(--d)*1px);left:calc((var(--w) - var(--d))*.5px);transform:rotateY(90deg) translateZ(calc(var(--w)*.5px));filter:brightness(.7)}
.c>.l{top:0;height:100%;width:calc(var(--d)*1px);left:calc((var(--w) - var(--d))*.5px);transform:rotateY(-90deg) translateZ(calc(var(--w)*.5px));filter:brightness(.88)}
.c>.t{left:0;width:100%;height:calc(var(--d)*1px);top:calc((var(--h) - var(--d))*.5px);transform:rotateX(90deg) translateZ(calc(var(--h)*.5px));filter:brightness(1.18)}
.c>.u{left:0;width:100%;height:calc(var(--d)*1px);top:calc((var(--h) - var(--d))*.5px);transform:rotateX(-90deg) translateZ(calc(var(--h)*.5px));filter:brightness(.55)}
.cLL{--w:10;--h:14;--d:10;--k:#FF5A1F;left:-17px;top:-14px;animation:legs 1s ease-in-out infinite}
.cLR{--w:10;--h:14;--d:10;--k:#FF5A1F;left:7px;top:-14px;animation:legs 1s ease-in-out -.08s infinite}
.cBd{--w:34;--h:26;--d:26;--k:#F4EFEA;left:-17px;top:-39px}
.cCh{--w:12;--h:8;--d:3;--k:#FF5A1F;left:-6px;top:-33px;transform:translateZ(14.5px)}
.cAL{--w:8;--h:20;--d:8;--k:#FF5A1F;left:-26px;top:-38px;transform-origin:50% 0;animation:armL 1s ease-in-out infinite}
.cAR{--w:8;--h:20;--d:8;--k:#FF5A1F;left:18px;top:-38px;transform-origin:50% 0;animation:armR 1s ease-in-out infinite}
.cHd{--w:44;--h:34;--d:38;--k:#F4EFEA;left:-22px;top:-72px}
[data-theme=light] .cBd,[data-theme=light] .cHd{--k:#FFFDF9}
.cVs{--w:36;--h:12;--d:3;--k:#0B0B0C;left:-18px;top:-62px;transform:translateZ(20.5px)}
.cEL{--w:7;--h:5;--d:3;--k:#FFB020;left:-11px;top:-58px;transform:translateZ(23px)}
.cER{--w:7;--h:5;--d:3;--k:#FFB020;left:4px;top:-58px;transform:translateZ(23px)}
.cOL{--w:5;--h:12;--d:12;--k:#FF5A1F;left:-27px;top:-61px}
.cOR{--w:5;--h:12;--d:12;--k:#FF5A1F;left:22px;top:-61px}
.cSt{--w:4;--h:10;--d:4;--k:#3A3A3C;left:-2px;top:-82px}
.cTp{--w:9;--h:9;--d:9;--k:#FFB020;left:-4.5px;top:-91px}
.cTp>i{animation:tipglow 1.1s ease-in-out infinite alternate}
.em{position:absolute;bottom:-12px;border-radius:50%;background:#FF5A1F;box-shadow:0 0 8px #FF5A1F;opacity:0;animation:riseA 9s linear infinite}
.em.yb{animation-name:riseB;background:#FFB020;box-shadow:0 0 8px #FFB020}
[data-theme=light] .em{box-shadow:0 0 6px rgba(255,90,31,.6)}
[data-theme=light] .em.yb{background:#F29A0E;box-shadow:0 0 6px rgba(242,154,14,.6)}
@keyframes slam{0%{opacity:0;transform:translateY(46px) scale(1.35) rotate(-2deg)}60%{opacity:1}100%{opacity:1;transform:none}}
@keyframes roll{to{transform:rotateZ(360deg)}}
@keyframes orb{from{transform:rotateX(90deg) rotateZ(0deg)}to{transform:rotateX(90deg) rotateZ(360deg)}}
@keyframes pulse{0%,100%{opacity:.8}50%{opacity:1}}
@keyframes hop{0%{transform:translateY(0) scale(1.14,.84);animation-timing-function:cubic-bezier(.2,.8,.3,1)}12%{transform:translateY(-8px) scale(.94,1.08);animation-timing-function:cubic-bezier(.2,.7,.4,1)}50%{transform:translateY(-72px) scale(1,1);animation-timing-function:cubic-bezier(.6,0,.9,.5)}88%{transform:translateY(-8px) scale(.96,1.06);animation-timing-function:ease-in}100%{transform:translateY(0) scale(1.14,.84)}}
@keyframes shd{0%,100%{transform:scale(1.1);opacity:.9}50%{transform:scale(.5);opacity:.3}}
@keyframes sway{from{transform:rotateY(54deg)}to{transform:rotateY(66deg)}}
@keyframes legs{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes armL{0%,100%{transform:rotateZ(10deg)}50%{transform:rotateZ(130deg)}}
@keyframes armR{0%,100%{transform:rotateZ(-10deg)}50%{transform:rotateZ(-130deg)}}
@keyframes tipglow{from{background:#FF8A2B}to{background:#FFE08A}}
@keyframes riseA{0%{transform:translate(0,0);opacity:0}10%{opacity:.9}100%{transform:translate(28px,-760px);opacity:0}}
@keyframes riseB{0%{transform:translate(0,0);opacity:0}10%{opacity:.9}100%{transform:translate(-24px,-700px);opacity:0}}

/* Inner-page header: same ink-and-ember ground, shorter */
.root.page-head{min-height:0}
.page-head .main{padding:40px 56px 88px}
.page-lede{position:relative;z-index:2;margin-top:22px;max-width:620px;font-size:18px;line-height:1.55;opacity:.85}
.page-lede.page-note{margin-top:10px;font-size:16px}

/* ---------- Mobile nav ---------- */
@media (max-width:760px){
  .nav{padding:12px 20px;flex-wrap:nowrap}
  .main{padding:8px 20px 40px}
  .page-head .main{padding:16px 20px 56px}
  .wg{position:relative;right:auto;top:auto;margin:4px auto -10px}
}
/* The nav collapses into the menu button below 1000px: the full name beside the logo
   plus links, theme and language buttons don't fit one row on tablets. */
@media (max-width:999px){
  .nav{padding-top:12px;padding-bottom:12px;flex-wrap:nowrap}
  .js .menu-btn{display:inline-flex}
  .js .nav-menu{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;padding:8px 20px 20px;background-color:var(--panel);border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(0,0,0,.25)}
  .js .nav-menu.open{display:flex}
  .js .nav-sep{display:none}
  .js .nav-menu .nl{display:flex;align-items:center;min-height:48px;padding:0 4px;font-size:17px;border-bottom:1px solid var(--line)}
  .js .nav-menu .nav-tools{margin-top:16px;align-self:flex-start;gap:10px}
  .js .nav-menu .tg,.js .nav-menu .lg{margin:0}
  .nav{flex-wrap:wrap}
  .js .nav{flex-wrap:nowrap}
}
/* Phones: the wordmark stacks in two lines (GALAXY STREET / DIGITAL) so it clears the menu button */
@media (max-width:520px){
  .nav .wm-br{display:inline}
  .nav .wordmark{font-size:14px;letter-spacing:.05em}
  .nav .brand{gap:10px}
}

/* ---------- Sections ---------- */
.section{padding:104px 0}
.section + .section{border-top:1px solid var(--line)}
@media (max-width:760px){.section{padding:72px 0}}
.h2{font:800 clamp(30px,4.2vw,52px)/1.02 "Archivo",sans-serif;text-transform:uppercase;letter-spacing:-.01em;max-width:18ch;text-wrap:balance}
.h2 .acc,.h3 .acc{color:var(--accent)}
.lede{margin-top:20px;max-width:60ch;font-size:18px;color:var(--muted)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 40px;margin-bottom:48px}
.sec-head .lede{margin-top:16px}
.h3{font:800 20px/1.15 "Archivo",sans-serif;text-transform:uppercase;letter-spacing:0}
.icon{width:24px;height:24px;flex:none}

/* Secondary button: same hard hover as .cta */
.btn-line{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 22px;border:1.5px solid var(--text);border-radius:2px;background:transparent;color:var(--text);font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;transition:transform .12s steps(2),box-shadow .12s steps(2),color .15s,border-color .15s}
.btn-line:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--hard);border-color:var(--accent);color:var(--accent)}
.btn-line .icon{width:18px;height:18px}
.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--accent);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}
.text-link:hover{text-decoration-thickness:3px}
.text-link .icon{width:18px;height:18px}

/* Headline slam for section headings (JS adds the words) */
.js.motion .slam .w{animation:none;opacity:0}
.js.motion .slam.in .w{animation:slam .7s cubic-bezier(.2,.9,.25,1.15) both}
/* The slam starts each word at 1.35x; near the right edge that briefly widened the page (7px in English, 15px with Spanish's longer headings). Clip sideways overflow at main. */
main{overflow-x:clip}

/* ---------- What I do (layout in the polish section) ---------- */
.tag{display:inline-flex;align-items:center;align-self:flex-start;padding:3px 9px;border:1px solid currentColor;border-radius:2px;font-size:13px;font-weight:600;line-height:1.4;letter-spacing:.02em;color:var(--accent)}
.tag.quiet{color:var(--muted)}
.svc-foot strong{font:800 22px/1.1 "Archivo",sans-serif;text-transform:uppercase}

/* ---------- Work strip ---------- */
.strip-nav{display:flex;gap:10px}
.strip-btn{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1.5px solid var(--line-strong);border-radius:2px;background:transparent;color:var(--text);cursor:pointer;transition:border-color .15s,color .15s}
.strip-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
.strip-btn:disabled{opacity:.35;cursor:default}
.strip{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(270px,30vw,360px);gap:16px;margin:0;padding:6px 6px 22px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:6px;scrollbar-width:thin;scrollbar-color:var(--graphite) transparent;overscroll-behavior-x:contain}
.strip>li{scroll-snap-align:start}
.wcard{display:flex;flex-direction:column;height:100%;background-color:var(--panel);border:1px solid var(--line);border-radius:2px;text-decoration:none;color:var(--text);transition:transform .12s steps(2),box-shadow .12s steps(2),border-color .15s}
.wcard:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--hard);border-color:var(--accent)}
.wcard img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top left;border-bottom:1px solid var(--line);background-color:var(--panel-2)}
.wbody{display:flex;flex-direction:column;gap:6px;padding:18px 18px 20px}
.wtype{color:var(--muted);font-size:15px}
.wbody .tag{margin-top:8px;font-size:12px}
.strip-foot{margin-top:28px}
@media (max-width:760px){.strip-nav{display:none}.strip{grid-auto-columns:78%;margin:0 -20px;padding:6px 20px 20px;scroll-padding-left:20px}}

/* ---------- How it works ---------- */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;counter-reset:step}
.step{position:relative;padding:28px 26px 30px;border:1px solid var(--line);background-color:var(--panel);border-radius:2px;counter-increment:step}
.step::before{content:counter(step);display:block;margin-bottom:18px;font:800 44px/1 "Archivo",sans-serif;color:var(--accent)}
.step .h3{margin-bottom:10px}
.step p{color:var(--muted)}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* ---------- CTA band ---------- */
.band{position:relative;overflow:hidden;padding:96px 0;background-color:var(--panel);background-image:radial-gradient(ellipse 50% 90% at 88% 50%,var(--glow),rgba(255,90,31,0) 70%);border-top:1px solid var(--line)}
.band .wrap{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px 48px}
.band .h2{max-width:14ch}
.band p{margin-top:16px;max-width:46ch;font-size:18px;color:var(--muted)}
@media (max-width:760px){.band{padding:72px 0}}

/* ---------- Footer ---------- */
.foot{padding:64px 0 36px;border-top:1px solid var(--line);font-size:15px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:36px 48px}
.foot .logo{height:48px}
.foot-where{margin-top:16px;color:var(--muted)}
.foot h2{margin-bottom:10px;font:600 13px/1.4 "IBM Plex Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.foot ul{margin:0;padding:0;list-style:none}
.foot-links a,.foot-mail{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:none}
.foot-links a:hover,.foot-mail:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.foot-mail .icon{width:18px;height:18px;color:var(--accent)}
.foot-base{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted)}
.foot-prefs{display:flex;flex-wrap:wrap;align-items:center;gap:0 24px}
.auto-theme,.auto-lang{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;border:0;background:none;color:var(--accent);font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.auto-theme[hidden],.auto-lang[hidden]{display:none}
.auto-theme .icon,.auto-lang .icon{width:16px;height:16px}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .roll{animation-duration:240s}
  .orb{animation:none;transform:rotateX(90deg)}
  .hop,.shd,.cLL,.cLR,.cAL,.cAR,.rb,.em,.cTp>i,.w,.glow{animation:none}
  .em{display:none}
  .cta,.btn-line,.wcard{transition:none}
  body,.root,.logo{transition:none}
}

/* "And more" line */
.more-ask{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}
#content:focus{outline:none}

/* =====================================================================
   Inner pages
   ===================================================================== */
.founder{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:10px 16px;border:1.5px solid var(--accent);border-radius:2px;color:var(--accent);font-weight:600}
.founder .icon{width:18px;height:18px}
.prose p+p{margin-top:18px}
.prose{max-width:62ch;font-size:18px}
.prose p{color:var(--text)}

/* ---------- Work ---------- */
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.wk{display:flex;flex-direction:column;background-color:var(--panel);border:1px solid var(--line);border-radius:2px;scroll-margin-top:24px}
.wk-img{display:block;overflow:hidden;border-bottom:1px solid var(--line);background-color:var(--panel-2)}
.wk-img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top left}
.wk-body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:24px 24px 26px;flex:1}
.wk-body .h3{font-size:24px}
.wk-body .btn-line{margin-top:18px}
.wk:first-child{grid-column:1/-1;flex-direction:row}
.wk:first-child .wk-img{flex:0 0 62%;border-bottom:0;border-right:1px solid var(--line)}
.wk:first-child .wk-body{justify-content:center;padding:36px}
.wk:first-child .wk-body .h3{font-size:clamp(26px,2.6vw,34px)}
@media (max-width:860px){.work-grid{grid-template-columns:1fr}.wk:first-child{flex-direction:column}.wk:first-child .wk-img{flex:none;border-right:0;border-bottom:1px solid var(--line)}.wk:first-child .wk-body{padding:24px 24px 26px}}

/* ---------- Flip-cards ---------- */
.flip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.flip{position:relative;perspective:1200px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.flip-inner{display:grid;height:100%;min-height:360px;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.face{grid-area:1/1;display:flex;flex-direction:column;gap:14px;padding:30px 28px 28px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel);-webkit-backface-visibility:hidden;backface-visibility:hidden}
.face-back{transform:rotateY(180deg);background-color:var(--panel-2)}
.flip .icon-lg{width:34px;height:34px;color:var(--accent)}
.flip .h3{font-size:24px}
.face p{color:var(--muted)}
.face-front .blurb{font-size:18px;color:var(--text)}
.flip-hint{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--accent)}
.flip-hint .icon{width:18px;height:18px}
.hint-touch{display:none}
@media (hover:none){.hint-touch{display:inline}.hint-hover{display:none}}
.price{font:800 clamp(36px,3.6vw,48px)/1 "Archivo",sans-serif;letter-spacing:-.01em}
.price small{display:block;margin-top:8px;font:600 15px/1.4 "IBM Plex Sans",sans-serif;letter-spacing:0;color:var(--muted)}
.price-from{display:block;margin-bottom:6px;font:600 14px/1 "IBM Plex Sans",sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.tiers{margin:4px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.tiers li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.tiers strong{font-weight:600;white-space:nowrap}
.flip-btn{position:absolute;inset:0;z-index:3;width:100%;height:100%;padding:0;border:0;border-radius:2px;background:transparent;cursor:pointer}
.flip-btn:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
/* Flipped by hover (mouse) or by the button (tap, Enter, Space). */
.js .flip.is-flipped .flip-inner{transform:rotateY(180deg)}
@media (hover:hover) and (pointer:fine){.js .flip:hover .flip-inner{transform:rotateY(180deg)}.js .flip.is-flipped:hover .flip-inner{transform:rotateY(180deg)}}
/* No JS: show both faces stacked, nothing hidden. */
html:not(.js) .flip-inner{display:flex;flex-direction:column;gap:12px;min-height:0}
html:not(.js) .face-back{transform:none}
html:not(.js) .flip-btn,html:not(.js) .flip-hint{display:none}
/* Each face also swaps opacity at the half-way point of the turn, so the card reads
   right even where 3D back faces aren't hidden. Opacity (not visibility) keeps both
   faces in the accessibility tree, so screen readers always get the price. */
.face-front{transition:opacity 0s linear .3s}
.face-back{opacity:0;transition:opacity 0s linear .3s}
.js .flip.is-flipped .face-front{opacity:0}
.js .flip.is-flipped .face-back{opacity:1}
@media (hover:hover) and (pointer:fine){.js .flip:hover .face-front{opacity:0}.js .flip:hover .face-back{opacity:1}}
html:not(.js) .face-back{opacity:1}
@media (prefers-reduced-motion:reduce){
  .flip-inner{transition:none;transform:none!important}
  .face-back{transform:none}
  .face-front,.face-back{transition:none}
}
.face .price,.face p.h3{color:var(--text)}
.care-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:24px;padding:18px 22px;border:1px dashed var(--line-strong);border-radius:2px}
.care-note .icon{color:var(--accent)}
.care-note strong{font-weight:600}
@media (max-width:980px){.flip-grid{grid-template-columns:1fr;max-width:560px}.flip-inner{min-height:300px}}

/* ---------- Add-ons panel ---------- */
.addons-panel{padding:40px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel)}
.addons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin:0;padding:0;list-style:none}
.ao{padding:22px 0;border-bottom:1px solid var(--line)}
.ao-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
.ao-head .h3{font-size:18px}
.ao-price{font-weight:600;color:var(--accent);white-space:nowrap}
.ao p{margin-top:6px;color:var(--muted);font-size:16px}
.ao-rows{margin:10px 0 0;padding:0;list-style:none}
.ao-rows li{display:flex;justify-content:space-between;gap:16px;padding:6px 0;font-size:16px;color:var(--muted)}
.ao-rows li span:last-child{flex:none;font-weight:600;color:var(--text)}
.ao.later .ao-price{color:var(--muted)}
@media (max-width:860px){.addons{grid-template-columns:1fr}.addons-panel{padding:8px 22px 22px}}

/* ---------- Estimator ---------- */
.est{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.est-form{display:flex;flex-direction:column;gap:16px}
.est fieldset{margin:0;padding:24px 24px 20px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel);min-width:0}
.est legend{float:left;width:100%;margin-bottom:6px;padding:0;font:800 18px/1.2 "Archivo",sans-serif;text-transform:uppercase}
.est legend+*{clear:both}
.est .hint{margin-bottom:10px;font-size:15px;color:var(--muted)}
.opt{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 0;border-bottom:1px solid var(--line);cursor:pointer}
.opt:last-child{border-bottom:0}
.opt input{flex:none;width:20px;height:20px;margin:0;accent-color:#FF5A1F;cursor:pointer}
.opt .opt-label{flex:1}
.opt .opt-price{flex:none;font-weight:600;font-size:15px;color:var(--muted);white-space:nowrap}
.opt.is-disabled{cursor:not-allowed}
.opt.is-disabled .opt-label,.opt.is-disabled .opt-price{opacity:.6}
.opt .req{display:block;font-size:13px;color:var(--muted)}
.step-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:56px;padding:6px 0;border-bottom:1px solid var(--line)}
.step-row:last-child{border-bottom:0}
.step-row label{flex:1 1 200px}
.step-row .opt-price{display:block;font-size:14px;font-weight:600;color:var(--muted)}
.stepper{display:inline-flex;align-items:stretch;border:1.5px solid var(--line-strong);border-radius:2px}
.stepper button{width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--text);font-size:22px;line-height:1;cursor:pointer}
.stepper button:hover:not(:disabled){color:var(--accent)}
.stepper button:disabled{opacity:.35;cursor:default}
.stepper input{width:52px;height:44px;padding:0;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);background:transparent;color:var(--text);font:600 17px/1 "IBM Plex Sans",sans-serif;text-align:center;-moz-appearance:textfield;appearance:textfield}
.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.seg{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.seg label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid var(--line-strong);border-radius:2px;cursor:pointer}
.seg input{width:18px;height:18px;margin:0;accent-color:#FF5A1F}
.est-total{position:sticky;top:24px;padding:28px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel)}
.est-total .h3{margin-bottom:16px}
.totals{display:grid;gap:14px;margin:0 0 18px}
.totals div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.totals dt{color:var(--muted);font-weight:600}
.totals dd{margin:0;font:800 30px/1 "Archivo",sans-serif;text-align:right}
.est-lines{margin:0 0 18px;padding:14px 0 0;list-style:none;border-top:1px solid var(--line);font-size:15px;max-height:280px;overflow:auto}
.est-lines li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;color:var(--muted)}
.est-lines li span:last-child{flex:none;color:var(--text);font-weight:600}
.est-empty{color:var(--muted);font-size:15px;margin-bottom:18px}
.est-note{margin-bottom:20px;font-size:15px;color:var(--muted)}
.est-total .cta{width:100%;text-align:center}
@media (max-width:980px){
  .est{grid-template-columns:1fr}
  .est-total{position:sticky;top:auto;bottom:0;z-index:5;margin:0 -20px;padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-width:1px 0 0;border-top-color:var(--line-strong);box-shadow:0 -12px 24px rgba(0,0,0,.18)}
  .est-total .h3,.est-total .est-lines,.est-total .est-empty{display:none}
  .totals{grid-template-columns:1fr 1fr;gap:8px 16px;margin-bottom:10px}
  .totals div{flex-direction:column;align-items:flex-start;gap:4px}
  .totals dt{font-size:13px}
  .totals dd{font-size:22px;text-align:left}
  .est-note{margin-bottom:10px;font-size:13px}
}

/* ---------- About ---------- */
.about{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start}
.cred{padding:28px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel)}
.cred ul{margin:16px 0 0;padding:0;list-style:none}
.cred li{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.cred li .icon{color:var(--accent);margin-top:2px}
.cred li strong{display:block;font-weight:600}
.cred li span{color:var(--muted);font-size:15px}
@media (max-width:900px){.about{grid-template-columns:1fr;gap:36px}}

/* ---------- Contact ---------- */
.contact{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.form{display:grid;gap:22px;padding:36px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label,.form legend{font-weight:600}
.field .opt-tag{font-weight:400;color:var(--muted)}
.field input,.field textarea{width:100%;min-height:48px;padding:12px 14px;border:1.5px solid var(--line-strong);border-radius:2px;background-color:var(--bg);color:var(--text);font:400 17px/1.4 "IBM Plex Sans",sans-serif}
.field textarea{min-height:160px;resize:vertical}
.field input:focus,.field textarea:focus{outline:2px solid var(--focus);outline-offset:1px;border-color:transparent}
.field [aria-invalid=true]{border-color:#E5484D}
.err{font-size:15px;font-weight:600;color:#E5484D}
[data-theme=light] .err{color:#B42318}
[data-theme=light] .field [aria-invalid=true]{border-color:#B42318}
.form fieldset{margin:0;padding:0;border:0;min-width:0}
.form legend{margin-bottom:10px;padding:0}
.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.checks label{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}
.checks input{flex:none;width:20px;height:20px;margin:0;accent-color:#FF5A1F}
.est-box{padding:18px 20px;border:1px dashed var(--accent);border-radius:2px}
.est-box-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.est-box pre{margin:0;white-space:pre-wrap;font:400 15px/1.55 "IBM Plex Sans",sans-serif;color:var(--muted)}
.est-box[hidden]{display:none}
.linkbtn{min-height:44px;padding:0 4px;border:0;background:none;color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.form-status{font-weight:600}
.form-status.bad{color:#E5484D}
[data-theme=light] .form-status.bad{color:#B42318}
.sent{padding:40px 36px;border:1px solid var(--line);border-radius:2px;background-color:var(--panel)}
.sent .h2{font-size:clamp(28px,3vw,40px)}
.sent p{margin-top:14px;color:var(--muted);font-size:18px}
.side{display:flex;flex-direction:column;gap:16px}
.side-card{padding:26px;border:1px solid var(--line);border-radius:2px}
.side-card .h3{margin-bottom:8px;font-size:18px}
.side-card p{color:var(--muted)}
.side-card a{color:var(--accent);font-weight:600;word-break:break-word}
@media (max-width:900px){.contact{grid-template-columns:1fr}}
@media (max-width:620px){.row2,.checks{grid-template-columns:1fr}.form{padding:24px 20px}}
html:not(.js) .est{display:none}

/* Spacing pass after the first full-page review */
.band .h2{max-width:20ch}
.page-head .main{padding-bottom:64px}
.page-head + main > .section:first-child{padding-top:72px}
.flip-inner{min-height:300px}
@media (max-width:760px){.page-head .main{padding-bottom:48px}.page-head + main > .section:first-child{padding-top:48px}}

/* Light theme: #C2410C is 4.15:1 on #EDE5DA and 3.82:1 on #E6DCCF, short of 4.5:1 for
   small text. Inside panels the accent deepens to #A8380A (4.97:1 / 4.79:1). */
[data-theme=light] :is(.wcard,.wk,.face,.addons-panel,.est fieldset,.est-total,.form,.side-card,.cred,.step){--accent:#A8380A;--focus:#A8380A}
/* Nav links: 15px text on a 20px line plus 12px padding = 44px target */
.nl{line-height:20px}
.foot-links a{min-width:44px}

/* Narrow phones (320px): keep everything inside the screen */
@media (max-width:980px){.est{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){.contact,.about{grid-template-columns:minmax(0,1fr)}}
@media (max-width:620px){.row2,.checks{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.foot-grid{grid-template-columns:minmax(0,1fr)}.foot-mail{overflow-wrap:anywhere}}
@media (max-width:359px){.hl{font-size:9.4vw}}
.form{grid-template-columns:minmax(0,1fr)}

/* =====================================================================
   Polish pass
   ===================================================================== */
/* Browser surfaces carry the palette too */
::selection{background-color:#FF5A1F;color:#0B0B0C}
input,textarea{caret-color:var(--accent)}
.price,.totals dd,.tiers strong,.ao-price,.ao-rows li span:last-child,.opt-price,.est-lines li span:last-child,.stepper input{font-variant-numeric:tabular-nums}

/* What I do: an editorial index, not a grid of identical cards */
.svc-grid{display:block;margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}
.svc{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,1.25fr);align-items:baseline;gap:4px 28px;padding:26px 4px;background-color:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}
.svc .icon{align-self:center;width:28px;height:28px;color:var(--accent)}
.svc.later .icon{color:var(--muted)}
.svc .h3{font-size:clamp(20px,2vw,26px);line-height:1.1}
.svc p{font-size:17px;color:var(--muted)}
.svc.later .h3{color:var(--muted)}
.svc .h3 .tag{margin-left:10px;vertical-align:middle;font-family:"IBM Plex Sans",sans-serif;text-transform:none;font-size:12px}
.svc-foot{margin-top:28px}
@media (max-width:760px){
  .svc{grid-template-columns:32px minmax(0,1fr);padding:22px 0}
  .svc p{grid-column:2}
  .svc .h3 .tag{display:inline-flex;margin:8px 0 0}
}



/* Pause the hero's ember and planet animations while they're off screen */
.root.is-offscreen *,.root.is-offscreen *::before,.root.is-offscreen *::after{animation-play-state:paused!important}
