/* AeroSoft Technologies — "Counter-top" layout: wide-set headings, left-aligned editorial grid,
   receipts and spec sheets as recurring objects, the logo's three slanted bars as the only ornament. */
:root{
  --paper:#F7F9FC; --surface:#FFFFFF; --sunk:#EEF3FA; --ink:#0D1420; --muted:#5B677A; --line:#E1E8F2;
  --blue:#1360D9; --blue-ink:#0B49AE; --cyan:#1FA3E0; --red:#E2332A; --yellow:#F2AE00;
  --on-blue:#FFFFFF; --good:#13804B; --tile:#FFFFFF; --shadow:0 1px 2px rgba(13,20,32,.06),0 8px 24px -12px rgba(13,20,32,.18);
  --logo-light:block; --logo-dark:none;
  --f-display:"Archivo","Arial Narrow",Arial,sans-serif;
  --f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --r:10px; --wrap:1400px; --gut:clamp(16px,4vw,48px); color-scheme:light;
}
:root[data-theme="dark"]{
  --paper:#0A0F17; --surface:#111925; --sunk:#0D141E; --ink:#E8EDF5; --muted:#97A3B6; --line:#233044;
  --blue:#4A8BF5; --blue-ink:#8DB6FA; --cyan:#4DBAEC; --red:#F0574E; --yellow:#F6C23A; --on-blue:#06101F; --good:#4CC488;
  --tile:#FFFFFF; --shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px -12px rgba(0,0,0,.6);
  --logo-light:none; --logo-dark:block; color-scheme:dark }

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html,body{max-width:100%;overflow-x:clip}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--blue-ink)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}
h1,h2,h3,h4{font-family:var(--f-display);font-stretch:112%;line-height:1.08;margin:0;text-wrap:balance;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,5.4vw,4rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.4vw,2.6rem);font-weight:800}
h3{font-size:1.2rem;font-weight:700}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gut)}
.mono{font-family:var(--f-mono)}
.muted{color:var(--muted)}
.eyebrow{font:600 .74rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--blue-ink);display:inline-flex;align-items:center;gap:10px}
.bars{display:inline-flex;flex-direction:column;gap:2px}
.bars i{display:block;width:16px;height:3px;transform:skewX(-28deg)}
.bars i:nth-child(1){background:var(--red)}.bars i:nth-child(2){background:var(--blue)}.bars i:nth-child(3){background:var(--yellow)}
.lede{font-size:1.12rem;color:var(--muted);max-width:62ch}
.section{padding-block:clamp(56px,8vw,104px)}
.section.alt{background:linear-gradient(180deg,#FFFFFF,#F3F7FD);border-block:1px solid var(--line)}
:root[data-theme="dark"] .section.alt{background:linear-gradient(180deg,var(--surface),var(--paper))}
.sec-head{display:grid;gap:14px;margin-bottom:40px;max-width:760px}
.sec-head.row{max-width:none;grid-template-columns:1fr auto;align-items:end;gap:24px}
@media (max-width:720px){.sec-head.row{grid-template-columns:1fr}}

/* Buttons */
.btn{--bg:var(--blue);--fg:var(--on-blue);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:8px;border:1px solid transparent;background:var(--bg);color:var(--fg);font:600 .95rem/1 var(--f-body);text-decoration:none;cursor:pointer;transition:transform .15s,background .15s,border-color .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn.ghost{--bg:transparent;--fg:var(--ink);border-color:var(--line)}
.btn.ghost:hover{border-color:var(--ink)}
.btn.dark{--bg:var(--ink);--fg:var(--paper)}
.btn.sm{padding:9px 14px;font-size:.86rem}
.btn.block{width:100%}
.link-arrow{font-weight:600;text-decoration:none;color:var(--blue-ink);display:inline-flex;gap:6px;align-items:center}
.link-arrow:hover{text-decoration:underline}
.i-inline{width:1em;height:1em;display:inline-block;vertical-align:-0.15em;flex:none}
[data-ico]{display:inline-flex;align-items:center;justify-content:center}
[data-ico] svg{width:1.1em;height:1.1em}
.icon-btn [data-ico] svg{width:19px;height:19px}

/* Top bar + header */
.site-header{position:sticky;top:0;padding-top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;gap:24px;min-height:88px;transition:min-height .25s}
.site-header.scrolled{background:var(--surface);box-shadow:0 8px 24px -18px rgba(13,20,32,.38)}
.site-header.scrolled .wrap{min-height:70px}
.site-header.scrolled .brand img{height:46px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none;line-height:0;overflow:visible}
.brand img{height:58px;width:auto;max-width:100%;object-fit:contain;display:block;transition:height .25s}
.brand .l{display:var(--logo-light)}.brand .d{display:var(--logo-dark)}
.brand small{font:600 .6rem/1 var(--f-mono);letter-spacing:.32em;color:var(--muted);display:none;margin-top:5px}
.nav{display:flex;flex:1 1 auto;align-items:center;justify-content:center;gap:4px;min-width:0;margin-left:0;white-space:nowrap}
.nav>a,.nav .dd>button{font:500 .93rem/1 var(--f-body);color:var(--ink);text-decoration:none;padding:10px 10px;white-space:nowrap;border-radius:7px;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:5px}
.nav>a:hover,.nav .dd>button:hover{background:var(--sunk)}
.nav a[aria-current="page"],.nav .dd.active>button{color:var(--blue-ink);font-weight:600}
.dd{position:relative}
.dd>button svg{width:10px;height:10px;transition:transform .15s}
.dd-menu{position:absolute;top:calc(100% + 6px);left:-8px;min-width:260px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px;display:none}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:grid}
.dd:hover>button svg{transform:rotate(180deg)}
.dd-menu a{display:grid;gap:2px;padding:10px 12px;border-radius:8px;text-decoration:none;color:var(--ink)}
.dd-menu a:hover{background:var(--sunk)}
.dd-menu a b{font-weight:600;font-size:.92rem}
.dd-menu a span{font-size:.8rem;color:var(--muted)}
.hdr-tools{display:flex;flex:none;align-items:center;gap:8px;margin-left:auto}
.cur-select{font:600 .82rem/1 var(--f-mono);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:9px 8px;cursor:pointer}
.icon-btn{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.icon-btn svg{width:19px;height:19px}
.theme-btn [data-ico] svg{width:19px;height:19px}
.icon-btn .count{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;border-radius:10px;background:var(--red);color:#fff;font:700 .7rem/19px var(--f-mono);text-align:center;padding:0 4px}
.menu-btn{display:none}
@media (max-width:1280px){
  .nav{position:fixed;inset:0 0 0 auto;width:min(360px,88vw);flex-direction:column;align-items:stretch;gap:0;background:var(--surface);border-left:1px solid var(--line);padding:calc(76px + env(safe-area-inset-top,0px)) 16px 24px;transform:translateX(102%);transition:transform .25s;overflow-y:auto;z-index:60;margin:0}
  .nav:not(.open){visibility:hidden}
  .nav.open{transform:none;box-shadow:var(--shadow)}
  .site-header:has(.nav.open){z-index:60}
  .nav>a,.nav .dd>button{padding:13px 10px;font-size:1rem;width:100%}
  .dd-menu{position:static;display:grid;box-shadow:none;border:0;padding:0 0 6px 10px;min-width:0}
  .dd>button svg{display:none}
  .menu-btn{display:grid}
  .hdr-tools{margin-left:auto}
  .hdr-cta{display:none}
}
.scrim{position:fixed;inset:0;background:rgba(5,9,15,.5);z-index:55}
.nav-close{display:none}
@media (max-width:1180px){.nav-close{display:grid;position:absolute;top:calc(16px + env(safe-area-inset-top,0px));right:16px}}

/* Currency notice */
.cur-note{background:var(--sunk);border-bottom:1px solid var(--line);font-size:.88rem}
.cur-note .wrap{display:flex;align-items:center;gap:12px;padding-block:9px;flex-wrap:wrap}
.cur-note button{font:inherit}

/* Brand-led home hero */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:640px;padding-block:80px 120px;background:linear-gradient(180deg,#FFFFFF 0%,#F2F7FF 100%)}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,52fr) minmax(0,48fr);gap:clamp(28px,4vw,60px);align-items:center}
.hero-copy{max-width:620px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:9px 13px;border-radius:999px;background:#EAF1FD;color:#0B49AE;font:600 .76rem/1 var(--f-mono);letter-spacing:.04em}
.hero-eyebrow .bars{flex-direction:row;gap:3px}
.hero-eyebrow .bars i{width:11px;height:3px}
.hero h1{margin-top:22px;font-size:clamp(1.65rem,3.4vw,2.6rem);font-weight:800;line-height:1.06;letter-spacing:-.035em}
.hero-title-line{display:block;white-space:nowrap}
.hero h1 .hero-rotator{color:var(--blue)}
.hero-rotator{display:inline-grid;vertical-align:bottom;position:relative;white-space:nowrap}
.hero-rotator__sizer,.hero-word{grid-area:1/1}
.hero-rotator__sizer{visibility:hidden;height:0}
.hero-word{opacity:0;transform:translateY(18px);transition:opacity .45s ease,transform .45s ease}
.hero-word.is-active{opacity:1;transform:none}
.hero-word.is-leaving{opacity:0;transform:translateY(-18px)}
.hero .lede{margin-top:22px;max-width:52ch;font-size:1.15rem}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-primary{box-shadow:0 8px 20px -10px rgba(19,96,217,.75)}
.hero-primary:hover{box-shadow:0 12px 24px -10px rgba(19,96,217,.55)}
.hero-arrow{width:18px;height:18px;transition:transform .2s}
.hero-primary:hover .hero-arrow{transform:translateX(4px)}
.hero .ctas .btn.ghost{background:#fff}
.hero-trust{display:flex;align-items:center;gap:16px;margin-top:30px;color:var(--muted);font:500 .73rem/1 var(--f-mono)}
.hero-trust .logos{display:flex;align-items:center;gap:18px}
.hero-trust img{width:auto;height:34px;max-width:120px;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter .2s,opacity .2s}
.hero-trust img:hover{filter:none;opacity:1}
.hero-value-words{position:absolute;z-index:2;right:max(14px,calc((100vw - var(--wrap))/2 - 34px));top:50%;writing-mode:vertical-rl;white-space:nowrap;transform:translateY(-50%);border-left:2px solid var(--blue);padding-left:10px;color:var(--muted);font:500 .67rem/1 var(--f-mono);letter-spacing:.25em}
.hero-map{position:absolute;z-index:0;right:3%;top:50%;width:60%;height:520px;max-height:90%;transform:translateY(-50%);opacity:.35;pointer-events:none}
.hero-waves{position:absolute;z-index:1;left:-5%;bottom:-2px;width:110%;height:125px;pointer-events:none;animation:hero-wave 12s ease-in-out infinite alternate}
@keyframes hero-wave{to{transform:translateX(2.5%)}}
.hero-ribbon{position:absolute;z-index:3;width:150px;height:82px;pointer-events:none}
.hero-ribbon--tl{left:-34px;top:-17px;transform:skewX(-35deg)}
.hero-ribbon--br{right:-34px;bottom:-18px;transform:skewX(-35deg)}
.hero-ribbon i{position:absolute;display:block;width:18px;height:86px;border-radius:2px;animation:hero-ribbon-in .9s ease-out both}
.hero-ribbon i:nth-child(1){left:30px;background:var(--red);animation-delay:0ms}
.hero-ribbon i:nth-child(2){left:56px;background:var(--blue);animation-delay:120ms}
.hero-ribbon i:nth-child(3){left:82px;background:var(--yellow);animation-delay:240ms}
.hero-ribbon--tl i{transform:translateX(-90px)}
.hero-ribbon--br i{transform:translateX(90px)}
@keyframes hero-ribbon-in{to{transform:translateX(0)}}
.hero-stage{position:relative;min-width:0;padding:48px 12px 126px;perspective:1200px}
.hero-dashboard{position:relative;z-index:2;padding:20px;border:1px solid #E1E8F2;border-radius:16px;background:#fff;color:#0D1420;box-shadow:0 30px 60px -20px rgba(19,96,217,.25),0 8px 20px -8px rgba(13,20,32,.12);transform:perspective(1200px) rotateY(-8deg) rotateX(4deg);transition:transform .3s ease;transform-style:preserve-3d}
.dashboard-top{display:flex;align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid #E8EDF5;font:600 .76rem/1 var(--f-mono)}
.dashboard-dots{display:flex;gap:4px}
.dashboard-dots i{width:7px;height:7px;border-radius:50%;background:#D9E1EC}
.dashboard-top .online{margin-left:auto;color:#13804B;font-size:.68rem}
.dashboard-top .online::before{content:"";display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#21A567}
.dashboard-kpis{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;padding-block:18px}
.dashboard-kpi{min-width:0;padding:12px;border-radius:9px;background:#F5F8FD}
.dashboard-kpi small{display:block;color:#5B677A;font:500 .62rem/1.2 var(--f-mono)}
.dashboard-kpi strong{display:block;margin-top:8px;color:#0D1420;font:700 clamp(.88rem,1.5vw,1.2rem)/1 var(--f-mono);white-space:nowrap}
.dashboard-kpi:first-child{background:#EAF1FD}
.dashboard-chart{display:flex;align-items:end;justify-content:space-between;gap:10px;height:112px;padding:13px 16px 0;border:1px solid #E8EDF5;border-radius:10px;background:linear-gradient(#fff,#F9FBFE)}
.chart-day{display:grid;justify-items:center;align-items:end;gap:7px;height:100%;font:500 .58rem/1 var(--f-mono);color:#7C8798}
.chart-bar{width:clamp(12px,2vw,22px);height:0;max-height:74px;border-radius:4px 4px 0 0;background:#4A8BF5;transform-origin:bottom;transition:height .8s cubic-bezier(.2,.7,.2,1)}
.chart-day:nth-child(1) .chart-bar{--bar:42%}.chart-day:nth-child(2) .chart-bar{--bar:58%}.chart-day:nth-child(3) .chart-bar{--bar:51%}.chart-day:nth-child(4) .chart-bar{--bar:70%}.chart-day:nth-child(5) .chart-bar{--bar:64%}.chart-day:nth-child(6) .chart-bar{--bar:88%}.chart-day:nth-child(7) .chart-bar{--bar:76%;background:var(--red)}
.chart-day:nth-child(2) .chart-bar{transition-delay:.08s}.chart-day:nth-child(3) .chart-bar{transition-delay:.16s}.chart-day:nth-child(4) .chart-bar{transition-delay:.24s}.chart-day:nth-child(5) .chart-bar{transition-delay:.32s}.chart-day:nth-child(6) .chart-bar{transition-delay:.4s}.chart-day:nth-child(7) .chart-bar{transition-delay:.48s}
.dashboard-chart.is-ready .chart-bar{height:var(--bar)}
.dashboard-orders{margin-top:16px}
.dashboard-orders-head{display:flex;justify-content:space-between;color:#0D1420;font:600 .68rem/1 var(--f-mono)}
.dashboard-orders-head span:last-child{color:#7C8798;font-weight:500}
.dashboard-order{display:grid;grid-template-columns:minmax(0,1fr) 34px auto;gap:9px;align-items:center;padding-block:10px;border-bottom:1px solid #EEF1F6;color:#263347;font-size:.72rem}
.dashboard-order:last-child{border-bottom:0;padding-bottom:0}
.dashboard-order small{color:#7C8798;text-align:center;font:500 .63rem/1 var(--f-mono)}
.dashboard-order b{font:600 .68rem/1 var(--f-mono);white-space:nowrap}
.hero-receipt{position:absolute;z-index:1;right:12px;bottom:0;width:115px;padding:13px 11px 19px;background:white;color:#0D1420;border:1px solid #E1E8F2;box-shadow:0 12px 26px -12px rgba(13,20,32,.28);font:500 .53rem/1.6 var(--f-mono);animation:receipt-print 2.5s 0.35s ease-out forwards,receipt-float 5s 3s ease-in-out infinite}
.hero-receipt::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:8px;background:radial-gradient(circle at 4px 0,transparent 4px,#fff 4.5px) 0 0/10px 10px repeat-x}
.hero-receipt strong{display:block;padding-bottom:6px;border-bottom:1px dashed #C8D2E1;font-size:.58rem}
.hero-receipt div{display:flex;justify-content:space-between;gap:4px}
@keyframes receipt-print{to{transform:translateY(0)}}
@keyframes receipt-float{50%{transform:translateY(-5px)}}
.hero-chip{position:absolute;z-index:4;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #E5EBF3;border-radius:9px;background:white;color:#263347;box-shadow:0 12px 28px -14px rgba(13,20,32,.35);font:600 .68rem/1 var(--f-mono);white-space:nowrap;animation:chip-float 6s ease-in-out infinite}
.hero-chip .chip-icon{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#E7F6EF;color:#13804B}
.hero-chip .chip-icon svg{width:14px;height:14px}
.hero-chip--order{left:12px;top:0}
.hero-chip--lead{left:12px;bottom:0;animation-delay:-3s}
.hero-chip--lead .chip-icon{background:#EAF1FD;color:var(--blue)}
@keyframes chip-float{50%{translate:0 -8px}}
.hero-map-land{display:none}
@media (max-width:1439px){.hero-value-words,.hero-ribbon--br{display:none}}
@media (max-width:1099px){.hero-receipt{display:none}.hero-stage{padding-bottom:60px}}
@media (max-width:900px){.hero{min-height:0;padding-block:70px 120px}.hero .wrap{grid-template-columns:minmax(0,1fr);gap:52px}.hero-copy{min-width:0;max-width:720px}.hero-stage{width:min(100%,620px);margin-inline:auto}.hero-map{width:80%;right:0}.hero h1{max-width:none}}
@media (max-width:640px){.hero{padding-block:60px 70px}.hero h1{font-size:clamp(1.7rem,8vw,2rem);font-stretch:80%}.hero .ctas{display:grid;grid-template-columns:1fr}.hero .ctas .btn{width:100%}.hero-trust{align-items:flex-start;flex-direction:column;gap:12px}.hero-trust .logos{width:100%;justify-content:space-between;gap:9px}.hero-trust img{max-width:22%;height:28px}.hero-dashboard{padding:14px;transform:none}.dashboard-kpis{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr))}.dashboard-chart{gap:5px;padding-inline:9px}.dashboard-order{font-size:.66rem}.hero-chip--lead{display:none}}
@media (max-width:380px){.hero-dashboard{padding:11px}.dashboard-kpis{gap:6px}.dashboard-kpi{padding:9px 7px}.dashboard-kpi strong{font-size:.82rem}.dashboard-order{grid-template-columns:minmax(0,1fr) 24px auto;font-size:.6rem}.hero-chip{padding:8px 10px;font-size:.6rem}}

/* Strip of three service lines (from the badge) */
.lines{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}
.lines a{display:grid;gap:8px;padding:26px;text-decoration:none;color:var(--ink);border-right:1px solid var(--line);transition:background .15s}
.lines a:last-child{border-right:0}
.lines a:hover{background:var(--sunk)}
.lines .k{font:600 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}
.lines a:nth-child(1) .k{color:var(--red)}.lines a:nth-child(2) .k{color:var(--blue-ink)}.lines a:nth-child(3) .k{color:#9A6C00}
:root[data-theme="dark"] .lines a:nth-child(3) .k{color:var(--yellow)}
.lines h3{font-size:1.35rem}
.lines p{color:var(--muted);font-size:.95rem}
@media (max-width:760px){.lines{grid-template-columns:1fr}.lines a{border-right:0;border-bottom:1px solid var(--line)}.lines a:last-child{border-bottom:0}}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px}
.stat b{display:block;font:800 clamp(2rem,4vw,2.8rem)/1 var(--f-display);font-stretch:115%;font-variant-numeric:tabular-nums}
.stat span{color:var(--muted);font-size:.9rem}
@media (max-width:720px){.stats{grid-template-columns:repeat(2,1fr)}}

/* Latest deals ticker */
.deals-ticker{height:64px;width:100%;display:flex;align-items:stretch;gap:16px;padding-inline:max(var(--gut),calc((100vw - var(--wrap))/2 + var(--gut)));overflow:visible;background:var(--surface);border-block:1px solid var(--line)}
.deals-ticker__label{position:relative;display:flex;align-items:center;gap:10px;flex:none;padding-inline:0 20px;background:var(--surface);z-index:2}
.deals-ticker__label::after{content:"";position:absolute;z-index:2;top:0;right:-32px;width:32px;height:100%;background:linear-gradient(90deg,var(--surface),transparent);pointer-events:none}
.deals-ticker__latest{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:var(--blue);color:#fff;font:700 .65rem/1 var(--f-mono);letter-spacing:.08em}
.deals-ticker__latest i{width:6px;height:6px;border-radius:50%;background:#F0574E;animation:deals-dot-pulse 1.5s ease-in-out infinite}
@keyframes deals-dot-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--red) 18%,transparent)}}
.deals-ticker__label>b{font-size:.87rem;white-space:nowrap;line-height:1}
.deals-ticker__viewport{position:relative;flex:1;min-width:0;overflow:hidden;display:flex;align-items:center;align-self:stretch;height:100%;padding-left:16px;box-sizing:border-box}
.deals-ticker__track{display:flex;align-items:center;height:100%;width:max-content;animation:deals-marquee var(--ticker-duration,40s) linear infinite;will-change:transform}
.deals-ticker:hover .deals-ticker__track,.deals-ticker:focus-within .deals-ticker__track,.deals-ticker.is-touching .deals-ticker__track{animation-play-state:paused}
.deals-ticker__group{display:flex;align-items:center;flex:none;width:max-content;height:100%;padding-right:28px}
.deals-ticker__item{display:inline-flex;align-items:center;gap:10px;flex:none;flex-wrap:nowrap;max-width:none;height:100%;padding:8px 4px;color:var(--ink);text-decoration:none;white-space:nowrap;line-height:1}
.deals-ticker__item:hover>b{text-decoration:underline;text-decoration-color:var(--blue)}
.deals-ticker__item>svg:first-child{width:18px;height:18px;color:var(--blue-ink)}
.deals-ticker__item>.offer-type,.deals-ticker__item>.offer-prices,.deals-ticker__item>.offer-countdown,.deals-ticker__item>.offer-hot,.deals-ticker__item>svg{flex:none}
.deals-ticker__title{display:block;max-width:360px;overflow:hidden;text-overflow:ellipsis;font-size:.88rem}
.deals-ticker__separator{display:flex;align-items:center;gap:3px;flex:none;height:12px;margin:0 18px;transform:skewX(-28deg)}
.deals-ticker__separator i{width:3px;height:12px;background:var(--blue)}
.deals-ticker__separator i:first-child{background:var(--red)}.deals-ticker__separator i:last-child{background:var(--yellow)}
.deals-ticker__all{position:relative;display:flex;align-items:center;gap:6px;flex:none;padding-inline:16px;color:var(--blue-ink);font-size:.82rem;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;background:var(--surface);z-index:2}
.deals-ticker__all::before{content:"";position:absolute;top:0;left:-32px;width:32px;height:100%;background:linear-gradient(90deg,transparent,var(--surface));pointer-events:none}
.deals-ticker__all:hover{text-decoration:underline}
@keyframes deals-marquee{to{transform:translateX(-50%)}}
.offer-type{display:inline-flex;align-items:center;width:max-content;padding:5px 7px;border-radius:5px;font:600 .68rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.offer-type--deal{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}
.offer-type--job{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue-ink)}
.offer-type--internship{background:color-mix(in srgb,var(--cyan) 16%,transparent);color:var(--cyan)}
.offer-type--training{background:color-mix(in srgb,var(--yellow) 28%,transparent);color:#4A3600}
.offer-type--news{background:var(--sunk);color:var(--muted)}
.offer-type--event{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good)}
.offer-prices{display:inline-flex;align-items:center;gap:6px;flex:none;line-height:1;white-space:nowrap}
.offer-prices .price{font-weight:700}
.offer-prices s{font:500 .76rem/1 var(--f-mono);color:var(--muted)}
.offer-prices .offer-saving{display:inline-flex;align-items:center;white-space:nowrap;padding:4px 6px;font-size:.65rem}
.offer-saving{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good)}
.offer-hot{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}
.offer-countdown,.offer-valid,.offer-terms{color:var(--muted);font-size:.82rem}
.offer-countdown{font:600 .75rem/1.3 var(--f-mono);color:var(--red)}
.offer-grid{align-items:stretch}
.offer-card{position:relative}
.offer-card__meta{display:flex;gap:7px;align-items:center}
.offer-card h2{font-size:1.25rem}
.offer-image{width:100%;height:160px;object-fit:cover;border-radius:7px;background:var(--sunk)}
.offer-empty{display:grid;justify-items:start;gap:14px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.offer-empty .ctas{display:flex;gap:10px;flex-wrap:wrap}
.offer-empty-filter{grid-column:1/-1;color:var(--muted)}
@media (max-width:760px){
  .deals-ticker{height:56px;gap:8px}
  .deals-ticker__label{gap:0;padding-inline:0 10px}
  .deals-ticker__viewport{padding-left:8px}
  .deals-ticker__label>b,.deals-ticker__all{display:none}
  .deals-ticker__latest{padding:7px}
  .deals-ticker__label::after{right:-16px;width:16px}
  .deals-ticker__item{gap:7px}
  .deals-ticker__title{max-width:40vw}
  .offer-prices s{font-size:.68rem}
  .deals-ticker__separator{margin-inline:10px}
}
@media (prefers-reduced-motion:reduce){
  .deals-ticker__latest i{animation:none}
  .deals-ticker__viewport{overflow-x:auto;scroll-snap-type:x mandatory;mask-image:none;-webkit-mask-image:none}
  .deals-ticker__track{animation:none!important;transform:none!important;will-change:auto}
  .deals-ticker__group[aria-hidden="true"]{display:none}
  .deals-ticker__item{scroll-snap-align:start}
}

/* Grids & cards */
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid[data-render="products"]{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}
.grid[data-render="service-cards"]{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
@media(max-width:1000px){.grid[data-render="service-cards"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.grid[data-render="service-cards"]{grid-template-columns:1fr}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
.card:hover{border-color:color-mix(in srgb,var(--blue) 40%,var(--line))}
.card .foot{margin-top:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:8px}
.tag{display:inline-block;font:600 .7rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding:5px 7px;border-radius:5px;background:var(--sunk);color:var(--muted)}
.tag.blue{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue-ink)}
.tag.red{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}
.tag.sample{background:color-mix(in srgb,var(--yellow) 22%,transparent);color:var(--ink)}
.ico{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:var(--sunk);color:var(--blue-ink)}
.ico svg{width:24px;height:24px}
.price{font-family:var(--f-mono);font-weight:600;font-variant-numeric:tabular-nums}
.from{font-size:.88rem;color:var(--muted)}
.from .price{color:var(--ink);font-size:1.05rem}
ul.ticks{list-style:none;padding:0;margin:0;display:grid;gap:8px}
ul.ticks li{display:flex;gap:10px;font-size:.94rem}
ul.ticks li::before{content:"";flex:none;width:14px;height:8px;margin-top:7px;border-left:2.5px solid var(--good);border-bottom:2.5px solid var(--good);transform:rotate(-45deg) translate(2px,-1px)}

/* Product detail rows */
.prod{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);padding-block:56px;border-top:1px solid var(--line);scroll-margin-top:100px}
.prod:first-of-type{border-top:0}
.prod .meta{display:grid;gap:16px;align-content:start}
.prod .meta .row{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:900px){.prod{grid-template-columns:1fr}}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:640px){.plans{grid-template-columns:1fr}}
.plan{border:1px solid var(--line);border-radius:var(--r);padding:18px;background:var(--surface);display:grid;gap:8px;align-content:start}
.plan.hot{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue) inset}
.plan .nm{font:700 .95rem/1.2 var(--f-display);font-stretch:108%}
.plan .pr{font:600 1.5rem/1 var(--f-mono);font-variant-numeric:tabular-nums}
.plan .pr small{font-size:.75rem;color:var(--muted);font-weight:500}
.plan p{font-size:.84rem;color:var(--muted)}
.screen{border:1px solid var(--line);border-radius:12px;background:var(--sunk);padding:14px;display:grid;gap:10px;font:500 .75rem/1.3 var(--f-mono)}
.screen .bar{display:flex;gap:6px}.screen .bar i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.screen .rowx{display:grid;grid-template-columns:1.4fr .6fr .6fr;gap:8px;background:var(--surface);border-radius:6px;padding:8px 10px}
.screen .rowx span:not(:first-child){text-align:right}
.screen .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.screen .kpis div{background:var(--surface);border-radius:6px;padding:8px 10px}
.screen .kpis b{display:block;font-size:1rem}

/* Sub-nav chips / filters */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{font:500 .88rem/1 var(--f-body);padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none}
.chip[aria-pressed="true"],.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* Page hero (inner pages) */
.phero{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(44px,6vw,80px) clamp(32px,4vw,48px);border-bottom:1px solid var(--line);background:radial-gradient(circle,#DCE6F5 1px,transparent 1.3px) right top/18px 18px,linear-gradient(var(--surface),var(--paper))}
.phero::before{content:"";position:absolute;z-index:-1;right:7%;top:-8px;width:14px;height:56px;background:var(--blue);box-shadow:-22px 9px 0 var(--red),22px -9px 0 var(--yellow);opacity:.9;transform:translateX(70px) skewX(-35deg);animation:phero-ribbon-in .9s .12s ease-out forwards}
@keyframes phero-ribbon-in{to{transform:translateX(0) skewX(-35deg)}}
.phero .wrap>*{animation:phero-head-in .65s ease-out both}
.phero .wrap>*:nth-child(2){animation-delay:.12s}
@keyframes phero-head-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.phero .crumbs{font:500 .78rem/1 var(--f-mono);color:var(--muted);margin-bottom:18px}
.phero .crumbs a{color:var(--muted);text-decoration:none}
.phero h1{font-size:clamp(2rem,4.6vw,3.4rem);max-width:20ch}
.phero .lede{margin-top:16px}
.phero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

/* Process */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
.steps li{list-style:none;padding:22px 20px 0 0;display:grid;gap:8px;align-content:start}
.steps .n{font:700 .8rem/1 var(--f-mono);color:var(--blue-ink)}
.steps p{color:var(--muted);font-size:.93rem}
ol.steps{padding:0;margin:0}
@media (max-width:820px){.steps{grid-template-columns:1fr 1fr;row-gap:24px}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* Pricing tables */
.svc-block{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:32px;padding-block:44px;border-top:1px solid var(--line);scroll-margin-top:100px}
@media (max-width:900px){.svc-block{grid-template-columns:1fr}}
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:760px){.tiers{grid-template-columns:1fr}}
.tier{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:12px}
.tier.hot{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue) inset}
.tier .nm{display:flex;justify-content:space-between;align-items:center;gap:8px;font:700 1rem/1 var(--f-display);font-stretch:108%}
.tier .pr{font:600 1.9rem/1 var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.tier .pr small{font-size:.8rem;color:var(--muted);font-weight:500;letter-spacing:0}
.tier .btn{margin-top:auto}
.rate-note{font-size:.84rem;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* Store */
.store-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px}
@media (max-width:900px){.store-layout{grid-template-columns:1fr}}
.store-side{position:sticky;top:96px;align-self:start;display:grid;gap:6px}
@media (max-width:900px){.store-side{position:static;display:flex;flex-wrap:wrap}}
.store-side button{text-align:left;font:500 .93rem/1 var(--f-body);padding:11px 12px;border-radius:8px;border:1px solid transparent;background:none;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;gap:10px}
.store-side button:hover{background:var(--sunk)}
.store-side button[aria-pressed="true"]{background:var(--surface);border-color:var(--line);font-weight:600}
.store-side button span{color:var(--muted);font:500 .8rem/1 var(--f-mono)}
@media (max-width:900px){.store-side button{border-color:var(--line);border-radius:999px}}
.item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.item .pic{aspect-ratio:4/3;background:var(--sunk);display:grid;place-items:center;color:var(--muted);position:relative;border-bottom:1px solid var(--line)}
.item .pic svg{width:46%;height:auto;color:var(--ink);opacity:.85}
.item .pic .tag{position:absolute;top:10px;left:10px}
.item .body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.item h3{font-size:1rem;font-stretch:104%;line-height:1.25}
.item .spec{font:500 .76rem/1.45 var(--f-mono);color:var(--muted)}
.item .buy{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:6px}
.item .buy .price{font-size:1.1rem}
.bundle{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px;align-items:center}
.bundle.hot{border-color:var(--blue)}
.bundle .inc{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.bundle .side{text-align:right;display:grid;gap:10px;justify-items:end}
.bundle .side .price{font-size:1.7rem}
.bundle s{color:var(--muted);font-family:var(--f-mono);font-size:.85rem}
@media (max-width:700px){.bundle{grid-template-columns:1fr}.bundle .side{text-align:left;justify-items:start}}

/* Drawer (cart) */
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--surface);border-left:1px solid var(--line);z-index:80;display:flex;flex-direction:column;transform:translateX(102%);transition:transform .25s;padding-top:env(safe-area-inset-top,0px)}
.drawer:not(.open){visibility:hidden}
.drawer.open{transform:none;box-shadow:var(--shadow)}
.drawer header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
.drawer .list{flex:1;overflow-y:auto;padding:12px 20px;display:grid;gap:12px;align-content:start}
.drawer .ci{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding-bottom:12px;border-bottom:1px dashed var(--line)}
.drawer .ci b{font-weight:600;font-size:.94rem}
.qty{justify-self:start;display:inline-flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.qty button{width:30px;height:30px;border:0;background:var(--sunk);color:var(--ink);cursor:pointer;font-size:1rem}
.qty span{min-width:32px;display:grid;place-items:center;font:600 .85rem/1 var(--f-mono)}
.drawer footer{border-top:1px solid var(--line);padding:16px 20px calc(18px + env(safe-area-inset-bottom,0px));display:grid;gap:12px}
.drawer .total{display:flex;justify-content:space-between;font:700 1.1rem/1 var(--f-mono)}
.empty{color:var(--muted);text-align:center;padding:40px 10px}

/* Portfolio */
.work{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0;height:100%;container-type:inline-size}
.work .work-picture{aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--line);background:var(--sunk)}
.work .work-picture img{display:block;width:100%;height:100%;object-fit:cover}
.work .shot{aspect-ratio:16/10;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:var(--sunk)}
.work .shot .win{position:absolute;inset:14px 14px 0;border-radius:8px 8px 0 0;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.work .shot .wbar{height:22px;display:flex;align-items:center;gap:5px;padding:0 9px;background:var(--sunk);border-bottom:1px solid var(--line);font:500 .62rem/1 var(--f-mono);color:var(--muted)}
.work .shot .wbar i{width:7px;height:7px;border-radius:50%;background:var(--line)}
.work .shot .wbar em{font-style:normal;margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.work .shot .mock{padding:12px;display:grid;gap:8px;height:calc(100% - 22px);grid-template-rows:minmax(0,3fr) auto minmax(0,2fr) auto}
.work .shot .mock .h{height:auto;border-radius:5px}
.work .shot .mock .r{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.work .shot .mock .r i{height:auto;border-radius:4px;background:var(--sunk)}
.work .shot .mock .t{height:7px;border-radius:3px;background:var(--line);width:70%}
.work .body{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}
.work .body>p{flex:1}
.work .body .tag{align-self:flex-start;width:auto}
.work .body .tech{margin-top:auto}
.work .body .foot{margin-top:0;display:flex;align-items:center;gap:10px;flex-wrap:nowrap;padding-top:8px}
.work .body .foot .btn{height:44px;padding:0 18px;font-size:15px;white-space:nowrap}
.btn.wa-btn{--bg:#25D366;--fg:#fff;border-color:#25D366;cursor:pointer;position:relative}
.work .body .foot .btn.wa-btn{width:44px;padding:0;flex:none;margin-left:auto}
.btn.wa-btn:hover{--bg:#1EBE5A;border-color:#1EBE5A}
.btn.wa-btn::after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 8px);padding:5px 8px;border-radius:6px;background:var(--ink);color:var(--surface);font:500 .72rem/1 var(--f-mono);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease}
.btn.wa-btn:hover::after,.btn.wa-btn:focus-visible::after{opacity:1}
@container (max-width:420px){.work .body .foot .btn:not(.wa-btn){flex:1 1 0;min-width:0;padding-inline:10px;font-size:14px}}

/* Team */
.person{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.person .ph{aspect-ratio:1/1;display:grid;place-items:center;font:800 2.6rem/1 var(--f-display);font-stretch:120%;color:#fff;position:relative}
.person .ph::after{content:"";position:absolute;left:16px;bottom:16px;width:40px;height:14px;background:linear-gradient(var(--red) 0 33%,transparent 33% 40%,#fff 40% 66%,transparent 66% 73%,var(--yellow) 73%);transform:skewX(-28deg);opacity:.9}
.person .body{padding:18px;display:grid;gap:6px}
.person .role{font:600 .74rem/1.2 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue-ink)}
.person dl{margin:8px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:.86rem}
.person dt{color:var(--muted);font-family:var(--f-mono);font-size:.76rem;padding-top:2px}
.person dd{margin:0;overflow-wrap:anywhere}
.person .skills{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}

/* Company / certificates */
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}
.facts div{padding:16px 20px;border-bottom:1px solid var(--line);display:grid;gap:4px}
.facts div:nth-child(odd){border-right:1px solid var(--line)}
.facts dt{font:600 .7rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:0;font-weight:500}
@media (max-width:640px){.facts{grid-template-columns:1fr}.facts div:nth-child(odd){border-right:0}}
.cert{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px;display:flex;flex-direction:column;gap:12px}
.cert .doc{aspect-ratio:1/1.3;border:6px double color-mix(in srgb,var(--blue) 45%,var(--line));border-radius:4px;display:grid;place-items:center;text-align:center;padding:16px;background:var(--paper);gap:6px;align-content:center}
.cert .doc .seal{width:46px;height:46px;border-radius:50%;border:2px solid var(--yellow);display:grid;place-items:center;margin:0 auto;color:var(--yellow)}
.cert .doc b{font:700 .9rem/1.2 var(--f-display);font-stretch:108%}
.cert .doc small{font:500 .66rem/1.3 var(--f-mono);color:var(--muted)}
.cert .cap{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:0 4px 4px;font-size:.88rem;font-weight:600}

/* Partners */
.logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:14px}
@media (max-width:900px){.logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.logo-tile{width:min(180px,100%);height:110px;background:var(--tile);border:1px solid var(--line);border-radius:var(--r);display:grid;place-items:center;padding:16px}
.logo-tile img{max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain}
.marquee{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee .track{display:flex;align-items:center;gap:14px;width:max-content;animation:slide 32s linear infinite}
.marquee .logo-tile{width:180px;height:110px;flex:none}
@media(max-width:600px){.logo-tile,.marquee .logo-tile{width:140px;height:90px}}
.marquee:hover .track{animation-play-state:paused}
@keyframes slide{to{transform:translateX(calc(-50% - 7px))}}
.partner{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px}
@media (max-width:600px){.partner{grid-template-columns:1fr}}

/* Forms */
.form{display:grid;gap:14px}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.form .two{grid-template-columns:1fr}}
.field{display:grid;gap:6px}
.field label{font:600 .8rem/1 var(--f-body)}
.field input,.field select,.field textarea{font:400 .96rem/1.4 var(--f-body);padding:12px 13px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);width:100%}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid color-mix(in srgb,var(--blue) 50%,transparent);border-color:var(--blue)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:clamp(20px,3vw,32px)}
.done{border:1px solid color-mix(in srgb,var(--good) 45%,var(--line));background:color-mix(in srgb,var(--good) 8%,var(--surface));border-radius:10px;padding:16px;display:grid;gap:10px}
.done pre{white-space:pre-wrap;font:500 .8rem/1.5 var(--f-mono);margin:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;max-height:220px;overflow:auto}
.done .row{display:flex;gap:8px;flex-wrap:wrap}
.contact-list{display:grid;gap:16px}
.contact-list div{display:grid;gap:3px}
.contact-list dt{font:600 .7rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.contact-list dd{margin:0;font-weight:500;user-select:all}

/* Blog */
.post{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.post .cover{height:120px;position:relative;overflow:hidden}
.post .cover i{position:absolute;height:22px;width:70%;transform:skewX(-28deg);left:-10%}
.post .body{padding:20px;display:grid;gap:10px}
.post details summary{cursor:pointer;font-weight:600;color:var(--blue-ink);list-style:none}
.post details summary::-webkit-details-marker{display:none}
.post details p{margin-top:10px;color:var(--muted);font-size:.94rem}
.post details p+p{margin-top:8px}

/* FAQ */
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font:700 1.05rem/1.3 var(--f-display);font-stretch:104%;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"";width:8px;height:8px;align-self:center;flex:none;border-right:1.5px solid var(--blue-ink);border-bottom:1.5px solid var(--blue-ink);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq summary::-webkit-details-marker{display:none}
.faq p{margin-top:10px;color:var(--muted);max-width:70ch}

/* Scroll reveal, hover polish, and reduced-motion fallbacks */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
.card,.item,.work,.person,.post,.tier,.plan{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.js .rv.in.card:hover,.js .rv.in.item:hover,.js .rv.in.work:hover,.js .rv.in.person:hover,.js .rv.in.post:hover,.js .rv.in.tier:hover,.js .rv.in.plan:hover,.card:hover,.item:hover,.work:hover,.person:hover,.post:hover,.tier:hover,.plan:hover{transform:translateY(-4px);box-shadow:0 16px 30px -20px rgba(13,20,32,.38);border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}
.work .shot .win{transition:transform .35s ease}
.work:hover .shot .win{transform:none}
.js .rv.in.work:hover,.work:hover{transform:none;border-color:var(--blue)}
.item .pic svg{transition:transform .25s ease}
.item:hover .pic svg{transform:scale(1.06)}
.btn:not(.ghost):hover{box-shadow:0 8px 22px -12px rgba(19,96,217,.7)}
.nav>a,.nav .dd>button{position:relative}
.nav>a::after,.nav .dd>button::after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .22s}
.nav>a:hover::after,.nav .dd>button:hover::after,.nav>a[aria-current="page"]::after,.nav .dd.active>button::after{transform:scaleX(1)}
:root[data-theme="dark"] .hero{background:linear-gradient(180deg,#111925 0%,#0A0F17 100%)}
:root[data-theme="dark"] .hero-waves path{stroke:#263B59}
:root[data-theme="dark"] .hero-eyebrow{background:#182A45;color:#A9C6F7}
:root[data-theme="dark"] .hero .ctas .btn.ghost{background:var(--surface)}
.stat .stat-suffix{display:inline;font:inherit;vertical-align:baseline;margin-left:2px;color:inherit}
@media (prefers-reduced-motion:reduce){
  .js .rv,.js .rv.in{opacity:1!important;transform:none!important;transition:none!important}
  .hero-word{display:none}
  .hero-word:not(:nth-of-type(2)){display:none}
  .hero-word:nth-of-type(2){display:inline;opacity:1;transform:none}
  .chart-bar{height:var(--bar)}
  .hero-dashboard{transform:none!important}
  .hero-chip{animation:none}
  .hero-receipt{animation:none;transform:none}
  .hero-waves{animation:none}
  .btn:hover,.card:hover,.item:hover,.work:hover,.person:hover,.post:hover,.tier:hover,.plan:hover,.work:hover .shot .win,.item:hover .pic svg,.hero-primary:hover .hero-arrow{transform:none!important}
  .phero .wrap>*{animation:none;opacity:1;transform:none}
  .phero::before{animation:none;transform:skewX(-35deg)}
}

/* Careers */
.career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.career-card,.career-panel{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:clamp(18px,2.5vw,26px)}
.career-card{display:grid;align-content:start;gap:12px}
.career-card h2,.career-panel h2{font-size:1.3rem}
.career-card .row,.career-tags,.career-shortcuts,.career-facts-inline{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.career-salary{font-weight:700;color:var(--blue-ink)}
.career-stats,.career-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}
.career-stats .career-panel{display:grid;gap:5px}
.career-stats span{color:var(--muted);font-size:.88rem}
.career-stats strong{font:700 1.7rem/1.2 var(--f-mono)}
.career-types{grid-template-columns:repeat(2,minmax(0,1fr))}
.career-types p,.career-panel>p{color:var(--muted);margin-top:8px}
.career-board{margin-block:clamp(40px,6vw,72px)}
.career-filters{display:grid;grid-template-columns:2fr repeat(4,minmax(0,1fr));align-items:end;gap:12px;margin-bottom:14px}
.career-filters .field{min-width:0}
.career-filters input,.career-filters select{min-width:0}
.career-grid .career-card .career-panel{padding:12px}
.career-empty{margin-top:16px;padding:24px;text-align:center;background:var(--sunk);border-radius:var(--r)}
.career-panels{grid-template-columns:repeat(2,minmax(0,1fr));margin-block:28px}
.career-chip-list,.career-shortcuts{display:flex;flex-wrap:wrap;gap:8px}
.career-chip-list .chip{cursor:pointer}
.career-chip-list input{accent-color:var(--blue)}
.consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:.9rem}
.consent input{margin-top:5px;accent-color:var(--blue)}
.career-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.career-message{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--good) 10%,var(--surface));color:var(--good)}
.career-message.is-error,.career-panel.is-error,.career-panel.is-revoked{background:color-mix(in srgb,var(--red) 9%,var(--surface));color:var(--red)}
.career-panel.is-verified{background:color-mix(in srgb,var(--good) 9%,var(--surface));border-color:color-mix(in srgb,var(--good) 45%,var(--line))}
.career-panel.is-verified .tag{background:color-mix(in srgb,var(--good) 13%,var(--surface));color:var(--good)}
.career-partner-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-block:16px}
.career-faq{margin-top:48px}
.career-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.career-detail{display:grid;gap:22px}
.career-detail h1{font-size:clamp(2rem,4vw,3.2rem)}
.career-detail section{display:grid;gap:10px}
.career-detail section h2{font-size:1.35rem}
.career-sticky{position:sticky;top:24px}
.career-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding-block:18px}
.career-facts dt{color:var(--muted);font-size:.84rem}
.career-facts dd{margin:0;text-align:right;font-weight:600}
.career-apply{margin-top:12px}
.career-related{margin-top:48px}
.career-related>.career-grid{margin-top:18px}
.batch-card{margin:24px auto;max-width:var(--wrap);width:calc(100% - 2*var(--gut))}
.batch-card progress{width:100%;height:10px;accent-color:var(--blue)}
.career-facts-inline{margin-block:16px}
.course-outline{display:grid;gap:8px;margin-block:16px}
.course-outline details{border-bottom:1px solid var(--line);padding:9px 0}
.course-outline summary{cursor:pointer;font-weight:600}
.course-outline ul{padding-left:20px;color:var(--muted)}
.career-home-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.8fr);gap:18px}
.career-home-aside{display:grid;align-content:start;gap:12px}
.career-shortcuts{margin-top:20px}
.career-shortcuts .chip{display:inline-flex;align-items:center;gap:8px}
.career-shortcuts svg{width:18px;height:18px}
.status-timeline{list-style:none;display:grid;gap:0;margin:20px 0;padding:0;border-left:2px solid var(--line)}
.status-timeline li{position:relative;display:flex;justify-content:space-between;gap:12px;padding:0 0 18px 20px}
.status-timeline li::before{position:absolute;content:"";left:-7px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--line)}
.status-timeline li.is-current::before{background:var(--blue)}
.status-timeline time{color:var(--muted);font-size:.86rem}
.tag.urgent{background:color-mix(in srgb,var(--red) 12%,var(--surface));color:var(--red)}
@media(max-width:900px){.career-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.career-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.career-detail-grid{grid-template-columns:1fr}.career-sticky{position:static}.career-home-grid{grid-template-columns:1fr}}
@media(max-width:560px){.career-grid,.career-types,.career-panels,.career-stats{grid-template-columns:1fr 1fr}.career-filters{grid-template-columns:1fr 1fr}.career-stats .career-panel{padding:14px}.career-stats strong{font-size:1.35rem}.career-home-grid>.career-grid{grid-template-columns:1fr}.career-facts{grid-template-columns:1fr 1fr}.career-facts-inline{display:grid}.career-shortcuts .chip{font-size:.78rem}}
@media(max-width:360px){.career-grid,.career-types,.career-panels,.career-stats,.career-filters{grid-template-columns:1fr}}

/* CTA band */
.cta-band{background:var(--ink);color:var(--paper);border-radius:16px;padding:clamp(28px,5vw,56px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;right:-30px;top:0;bottom:0;width:240px;background:repeating-linear-gradient(-62deg,transparent 0 30px,color-mix(in srgb,var(--blue) 40%,transparent) 30px 42px);opacity:.5}
.cta-band>*{position:relative}
.cta-band p{color:color-mix(in srgb,var(--paper) 72%,transparent);margin-top:10px;max-width:56ch}
.cta-band .btn.ghost{--fg:var(--paper);border-color:color-mix(in srgb,var(--paper) 30%,transparent)}
.cta-band .ctas{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:760px){.cta-band{grid-template-columns:1fr}}

/* Footer */
.site-footer{margin-top:clamp(56px,8vw,96px);background:var(--surface);border-top:1px solid var(--line);padding-block:56px 28px;font-size:.92rem}
.site-footer .cols{display:grid;grid-template-columns:1.4fr repeat(5,1fr);gap:32px}
@media (max-width:900px){.site-footer .cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.site-footer h4{font:600 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-stretch:100%}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.site-footer ul a{color:var(--ink);text-decoration:none}
.site-footer ul a:hover{color:var(--blue-ink)}
.site-footer .legal{margin-top:44px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.84rem}
.site-footer .brand img{height:26px}

/* Floating buttons + chat */
.fab-wa{position:fixed;left:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;width:52px;height:52px;border-radius:50%;background:#1FAF55;color:#fff;display:grid;place-items:center;box-shadow:var(--shadow)}
.fab-wa svg{width:26px;height:26px}
.chat-fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;gap:10px;padding:12px 18px 12px 14px;border-radius:999px;background:var(--blue);color:var(--on-blue);border:0;box-shadow:var(--shadow);font:600 .92rem/1 var(--f-body);cursor:pointer}
.chat-fab svg{width:22px;height:22px}
.chat{position:fixed;right:18px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:75;width:min(390px,calc(100vw - 24px));height:min(600px,calc(100vh - 120px));background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}
@media (max-width:480px){.chat{right:12px}}
.chat header{padding:14px 16px;background:var(--ink);color:var(--paper);display:flex;align-items:center;gap:12px}
.chat header .av{width:38px;height:38px;border-radius:50%;background:var(--blue);display:grid;place-items:center;font:800 .9rem/1 var(--f-display);color:#fff;flex:none}
.chat header b{display:block;font-size:.95rem}
.chat header small{font-size:.76rem;opacity:.75;display:flex;align-items:center;gap:6px}
.chat header small::before{content:"";width:7px;height:7px;border-radius:50%;background:#3ddc84}
.chat header button{margin-left:auto;background:none;border:0;color:var(--paper);cursor:pointer;font-size:1.4rem;line-height:1}
.chat .msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--paper)}
.msg{max-width:86%;padding:10px 13px;border-radius:12px;font-size:.9rem;line-height:1.5;white-space:pre-line}
.msg.bot{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start}
.msg.me{background:var(--blue);color:var(--on-blue);border-bottom-right-radius:4px;align-self:flex-end}
.msg a{color:inherit;font-weight:600}
.msg-products{max-width:100%;width:100%}
.chat-product-results{display:grid;gap:8px}
.chat-product-results article{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.chat-product-results small{color:var(--muted)}
.chat-product-results p{margin:0}
.chat-product-results a{justify-self:start;color:var(--blue-ink)}
.quick{display:flex;gap:6px;flex-wrap:wrap;padding:10px 12px 0;background:var(--surface);border-top:1px solid var(--line)}
.quick button{font:500 .78rem/1 var(--f-body);padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.quick button:hover{border-color:var(--blue)}
.chat #chatForm{display:flex;gap:8px;padding:10px 12px 12px;background:var(--surface)}
.chat #chatForm input{flex:1;min-width:0;font:400 .92rem/1 var(--f-body);padding:11px 12px;border-radius:9px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.chat #chatForm button{border:0;border-radius:9px;background:var(--blue);color:var(--on-blue);padding:0 14px;cursor:pointer;font-weight:600}
.lead-mini{display:grid;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;align-self:stretch}
.lead-mini input{font:400 .88rem/1 var(--f-body);padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.typing{display:inline-flex;gap:4px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{50%{opacity:.25}}

.toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:11px 18px;border-radius:9px;font-size:.9rem;z-index:90;box-shadow:var(--shadow)}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.tech{display:flex;flex-wrap:wrap;gap:8px}
.tech span{font:500 .84rem/1 var(--f-mono);padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.note{font-size:.84rem;color:var(--muted);border-left:3px solid var(--yellow);padding:4px 0 4px 12px}
.mt-s{margin-top:16px}.mt-m{margin-top:28px}.mt-l{margin-top:48px}

@media (max-width:1340px){.hdr-cta{display:none}.nav>a,.nav .dd>button{font-size:.9rem;padding:10px 8px}}
@media (max-width:520px){.brand img{height:42px}.brand small{font-size:.5rem;letter-spacing:.26em}.site-header .wrap{gap:10px;min-height:72px}.site-header.scrolled .wrap{min-height:62px}.site-header.scrolled .brand img{height:38px}.hdr-tools{gap:6px}.cur-select{padding:8px 4px}.icon-btn{width:36px;height:36px}}

/* Responsive header and shared touch layouts */
@media(min-width:1281px){
  .site-header .wrap{gap:24px;min-height:88px}
  .site-header.scrolled .wrap{min-height:70px}
  .site-header.scrolled .brand img{height:46px}
  .brand img{height:58px}
  .brand small{font-size:.54rem;letter-spacing:.25em}
  .nav{gap:4px;flex:1 1 auto;justify-content:center;min-width:0;white-space:nowrap}
  .nav>a,.nav .dd>button{padding:8px 10px;font-size:clamp(.78rem,.84vw,.9rem);gap:3px}
  .hdr-tools{gap:6px;flex:none;margin-left:auto}
  .cur-select{width:76px;height:40px;padding:7px 5px}
  .hdr-tools>.icon-btn{width:40px;height:40px}
  .hdr-cta{height:40px;padding:0 12px;display:inline-flex}
  .site-header:not(.nav-compact) .menu-btn{display:none!important}
  body:not(.nav-compact) .nav-mobile-footer{display:none!important}
}
@media(max-width:1400px){.brand small{display:none}}
@media(max-width:1280px){
  .site-header .wrap{min-height:72px;gap:12px}
  .site-header.scrolled .wrap{min-height:62px}
  .site-header.scrolled .brand img{height:38px}
  .brand img{height:50px}
  .nav{position:fixed;inset:0 0 0 auto;z-index:62;width:min(380px,100vw,100%);max-width:100%;height:100vh;height:100dvh;max-height:100dvh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2px;margin:0;padding:calc(64px + env(safe-area-inset-top,0px)) 18px calc(16px + env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border-left:1px solid var(--line);transform:translateX(102%);transition:transform .24s ease,visibility .24s;visibility:hidden}
  .nav:not(.open){pointer-events:none}
  .nav.open{transform:translateX(0);visibility:visible;pointer-events:auto;box-shadow:var(--shadow)}
  .site-header.nav-open{z-index:60}
  .nav>a,.nav .dd>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:12px 10px;font-size:1rem;white-space:normal}
  .nav .dd{width:100%;flex:none}
  .nav .dd>button svg{display:block;width:14px;height:14px;transition:transform .18s ease}
  .nav .dd.is-expanded>button svg{transform:rotate(180deg)}
  .nav .dd-menu{position:static;display:none;min-width:0;padding:2px 0 7px 10px;border:0;box-shadow:none;background:transparent}
  .nav .dd.is-expanded>.dd-menu{display:grid}
  .nav .dd-menu a{min-height:44px;padding:9px 12px}
  .nav .dd-menu a b{font-size:.95rem}
  .nav .dd-menu a span{font-size:.82rem}
  .nav-close{display:grid;position:absolute;top:calc(10px + env(safe-area-inset-top,0px));right:14px;width:44px;height:44px}
  .hdr-tools{margin-left:auto;gap:8px}
  .hdr-tools>.cur-select,.hdr-tools>.theme-btn{display:none}
  .hdr-tools>[data-open-cart],.menu-btn{width:44px;height:44px}
  .menu-btn{display:grid;order:2}
  .hdr-cta{display:inline-flex;order:3;height:44px;padding-inline:14px}
  .hdr-tools>[data-open-cart]{order:1}
  .nav-mobile-footer{display:grid;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
  .nav-mobile-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .nav-mobile-controls .cur-select{height:44px;min-width:96px;font-size:.95rem}
  .nav-mobile-controls .theme-btn{width:44px;height:44px}
  .nav-mobile-quote{width:100%;min-height:48px}
  .nav-mobile-phone{display:block;min-height:44px;padding:10px 2px;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}
  .scrim{z-index:55}
  body.nav-open{overflow:hidden}
}
@media(min-width:1281px){
  body.nav-compact .nav{position:fixed;inset:0 0 0 auto;z-index:62;width:min(380px,100vw);max-width:100%;height:100vh;height:100dvh;max-height:100dvh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2px;margin:0;padding:calc(64px + env(safe-area-inset-top,0px)) 18px calc(16px + env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border-left:1px solid var(--line);transform:translateX(102%);transition:transform .24s ease,visibility .24s;visibility:hidden}
  body.nav-compact .nav:not(.open){pointer-events:none}
  body.nav-compact .nav.open{transform:translateX(0);visibility:visible;pointer-events:auto;box-shadow:var(--shadow)}
  body.nav-compact .nav>a,body.nav-compact .nav .dd>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:12px 10px;font-size:1rem;white-space:normal}
  body.nav-compact .nav .dd{width:100%;flex:none}
  body.nav-compact .nav .dd>button svg{display:block;width:14px;height:14px}
  body.nav-compact .nav .dd.is-expanded>button svg{transform:rotate(180deg)}
  body.nav-compact .nav .dd-menu{position:static;display:none;min-width:0;padding:2px 0 7px 10px;border:0;box-shadow:none;background:transparent}
  body.nav-compact .nav .dd.is-expanded>.dd-menu{display:grid}
  body.nav-compact .nav .dd-menu a{min-height:44px;padding:9px 12px}
  body.nav-compact .nav .dd-menu a b{font-size:.95rem}
  body.nav-compact .nav .dd-menu a span{font-size:.82rem}
  body.nav-compact .nav-close{display:grid;position:absolute;top:calc(10px + env(safe-area-inset-top,0px));right:14px;width:44px;height:44px}
  .site-header.nav-compact .hdr-tools{margin-left:auto;gap:8px}
  .site-header.nav-compact .hdr-tools>.cur-select,.site-header.nav-compact .hdr-tools>.theme-btn{display:none}
  .site-header.nav-compact .hdr-tools>[data-open-cart],.site-header.nav-compact .menu-btn{width:44px;height:44px}
  .site-header.nav-compact .menu-btn{display:grid;order:2}
  .site-header.nav-compact .hdr-tools>[data-open-cart]{order:1}
  .site-header.nav-compact .hdr-cta{display:none}
  body.nav-compact .nav-mobile-footer{display:grid;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
  body.nav-compact .nav-mobile-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
  body.nav-compact .nav-mobile-controls .cur-select{height:44px;min-width:96px;font-size:.95rem}
  body.nav-compact .nav-mobile-controls .theme-btn{width:44px;height:44px}
  body.nav-compact .nav-mobile-quote{width:100%;min-height:48px}
  body.nav-compact .nav-mobile-phone{display:block;min-height:44px;padding:10px 2px;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}
  body.nav-compact.nav-open{overflow:hidden}
}
@media(min-width:481px) and (max-width:1280px){.hdr-cta{display:inline-flex}}
@media(max-width:480px){
  .hdr-cta{display:none}
  .site-header .wrap{gap:8px}
  .brand img{height:26px}
  .hdr-tools{gap:7px}
}
@media(max-width:760px){
  body{padding-bottom:88px}
  .hero{padding-bottom:32px}
  .hero h1{font-size:clamp(1.9rem,8vw,2.4rem);line-height:1.1}
  .hero-title-line{white-space:normal}
  .hero-rotator{white-space:nowrap}
  .hero .ctas{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  .hero .ctas .btn{width:100%}
  .hero-trust{align-items:flex-start;flex-direction:column;gap:12px}
  .hero-trust .logos{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;justify-items:center;gap:8px}
  .hero-trust img{width:100%;max-width:100%;height:28px;object-fit:contain}
  .hero-stage{width:100%;padding:0;perspective:none}
  .hero-dashboard{width:100%;padding:16px;transform:none}
  .dashboard-chart{height:90px}
  .dashboard-orders,.hero-receipt,.hero-chip,.hero-value-words,.hero-ribbon{display:none}
  .fab-wa{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;height:56px}
  .chat-fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;height:56px;padding:0;justify-content:center;border-radius:50%;background:var(--blue);color:#fff}
  .chat-fab>span{display:block}
  .chat-fab svg{width:26px;height:26px}
  .chat-fab{font-size:0}
  body.chat-open .fab-wa,body.chat-open .chat-fab{display:none}
  body.chat-open .chat{inset:0;width:100%;height:100vh;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
}
@media(min-width:768px) and (max-width:1100px){
  .hero{min-height:0;padding-block:70px 60px}
  .hero .wrap{grid-template-columns:minmax(0,1fr);gap:36px}
  .hero-copy{max-width:720px}
  .hero-stage{width:min(100%,560px);margin-inline:auto;padding:48px 0 80px}
  .hero-dashboard{transform:none}
  .hero-receipt{display:none}
  .hero-value-words,.hero-ribbon--br{display:none}
}
@media(max-width:600px){
  h1{font-size:clamp(1.85rem,8vw,2.55rem);overflow-wrap:normal}
  .hero-title-line{white-space:normal}
  .hero-rotator{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .wrap{padding-inline:max(16px,var(--gut))}
  input,select,textarea,button{font-size:16px}
  button,.btn,.icon-btn,.chip,summary{min-height:44px}
  input,select{min-height:44px}
  .field input,.field select,.field textarea,.cur-select{font-size:16px}
  .field input,.field select,.field textarea{min-height:44px}
  .grid.g3,.grid.g4,.grid.g5,.g3,.g4,.g5{grid-template-columns:minmax(0,1fr)!important}
  .grid.g2,.g2{grid-template-columns:repeat(1,minmax(0,1fr))}
  .hero .ctas .btn{min-height:48px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plans{grid-template-columns:minmax(0,1fr)}
  .site-footer .cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fab-wa{left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:46px;height:46px}
  .chat-fab{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:46px;height:46px;padding:0;justify-content:center}
  .chat-fab>span{display:none}
  .chat{inset:0;width:100%;height:100vh;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  .chat #chatForm{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}
  .chat #chatForm input,.lead-mini input{font-size:16px}
  .quick{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain}
  .quick button{flex:none;min-height:40px}
  .chat header button,.chat #chatForm button{min-width:44px;min-height:44px}
  .site-footer ul{gap:12px}
  .site-footer ul a{display:inline-flex;min-height:40px;align-items:center}
}
@media(hover:none),(pointer:coarse){
  .hero-dashboard{transform:none}
  .hero-map{animation:none}
}
@media(prefers-reduced-motion:reduce){
  .site-header .wrap{transition:none}
  .nav{transition:none}
}
@media(min-width:1281px){.site-header.scrolled .wrap{min-height:70px}}
@media(max-width:1280px){.site-header.scrolled .wrap{min-height:64px}}
@media(max-width:600px){
  .btn:hover{transform:none}
  .chips,.career-chip-list,.career-shortcuts{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px}
  .chips::-webkit-scrollbar,.career-chip-list::-webkit-scrollbar,.career-shortcuts::-webkit-scrollbar{display:none}
  .chips>.chip,.career-chip-list>.chip,.career-shortcuts>.chip{flex:none;min-height:44px;display:inline-flex;align-items:center}
  .career-grid,.career-types,.career-panels,.career-stats{grid-template-columns:minmax(0,1fr)}
  .career-filters{grid-template-columns:minmax(0,1fr)}
  .career-filters input,.career-filters select{width:100%;min-height:44px;font-size:16px}
  .career-detail-grid:has(.career-sticky){padding-bottom:78px}
  .career-sticky{position:fixed!important;inset:auto 0 0;z-index:48;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:0 -8px 24px -18px rgba(13,20,32,.38);pointer-events:none}
  .career-sticky>:not(a){display:none}
  .career-sticky .btn{pointer-events:auto;min-height:48px}
  .store-side{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:4px}
  .store-side button{flex:none;min-height:44px;white-space:nowrap}
  .item .buy{align-items:stretch;flex-direction:column}
  .item .buy .btn{width:100%}
  .bundle{padding:18px}
  .drawer{width:100%;height:100vh;height:100dvh;max-height:100dvh;border-left:0}
  .drawer header{min-height:64px;padding:10px 16px}
  .drawer .list{min-height:0;padding:12px 16px}
  .drawer footer{max-height:58dvh;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px))}
  .drawer .total{position:sticky;top:0;z-index:1;padding-block:6px;background:var(--surface)}
  .qty button{width:44px;height:44px}
  .qty span{min-width:40px}
  .form input,.form select,.form textarea{width:100%;min-height:44px;font-size:16px}
  .form textarea{min-height:100px}
  .form .two{grid-template-columns:minmax(0,1fr)}
  .item{min-width:0}
  .partner-marquee,.ticker-track{touch-action:pan-x}
}

.media-square{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:12px;background:var(--sunk);min-width:0}
.media-square img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.media-square[data-fit="contain"] img{object-fit:contain;padding:10%}
.phero.has-banner .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,360px);align-items:center;gap:clamp(24px,5vw,64px)}
.phero.has-banner .phero-copy{min-width:0}
.phero-banner{width:100%;max-width:360px;justify-self:end}
.phero-banner.is-empty{display:block}
.cms-image-empty{position:absolute;inset:0;display:grid;place-items:center;border:2px dashed var(--blue);color:var(--blue-ink);font-weight:700}
.video-home{padding-block:clamp(48px,7vw,88px)}
.home-video-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.8fr);gap:24px;align-items:start}
.video-stage{min-width:0}
.video-stage h3{margin:14px 0 6px}
.video-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:var(--ink)}
.video-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.video-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:64px;height:64px;transform:translate(-50%,-50%);border:1px solid #fff;background:color-mix(in srgb,var(--blue) 86%,transparent);border-radius:50%;color:#fff;cursor:pointer}
.video-play svg{width:28px;height:28px;fill:currentColor}
.video-duration{position:absolute;right:10px;bottom:10px;padding:4px 7px;border-radius:5px;background:rgb(0 0 0 / .78);color:#fff;font:600 .75rem/1 var(--f-mono)}
.video-frame{position:relative;aspect-ratio:16/9;background:#000}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.home-video-list{display:grid;gap:12px}
.home-video-link{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:12px;width:100%;padding:0;border:0;background:none;text-align:left;color:var(--ink);cursor:pointer}
.home-video-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:var(--ink)}
.home-video-thumb img{width:100%;height:100%;object-fit:cover}
.home-video-thumb .video-play{width:36px;height:36px}
.home-video-thumb .video-play svg{width:18px;height:18px}
.home-video-link>b,.home-video-link span>b{display:block}
.home-video-link small{display:block;margin-top:5px;color:var(--muted)}
.video-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:30px}
.video-filters .chips{flex:1;min-width:min(100%,320px);overflow-x:auto;flex-wrap:nowrap}
.video-filters label{display:grid;gap:7px;min-width:190px;color:var(--muted);font-size:.86rem}
.video-filters input,.video-filters select{min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit}
.video-featured{max-width:960px;margin:0 auto 40px}
.video-featured>.eyebrow{display:block;margin-bottom:12px}
.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.video-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.video-card__body{display:grid;justify-items:start;gap:10px;padding:18px}
.video-card h3,.video-card p{margin:0}
.video-product{color:var(--muted);font-size:.84rem}
.video-card .link-arrow{border:0;background:none;color:var(--blue-ink);font:inherit;font-weight:600;cursor:pointer}
.video-empty,.video-empty-filter{padding:32px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.video-empty{display:grid;justify-items:start;gap:12px}
.video-empty .ico{color:var(--blue-ink)}
.video-empty-filter{grid-column:1/-1;color:var(--muted)}
.video-lightbox{position:fixed;inset:0;width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:56px 20px 20px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink)}
.video-lightbox::backdrop{background:rgb(5 12 24 / .84)}
.video-dialog-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:8px;background:var(--sunk);color:var(--ink);cursor:pointer}
.video-dialog-close svg{width:21px;height:21px}
.video-dialog-content{max-height:calc(100dvh - 110px);overflow:auto}
.product-video-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.product-video-links .i-inline{width:1em;height:1em;vertical-align:-.15em}
.offer-image-square,.bundle-image,.store-item-image,.portfolio-image,.team-image,.blog-image,.career-card-image{margin-bottom:14px}
.job-employer-logo{width:48px;height:48px;border-radius:8px}
.job-employer-logo[data-fit="contain"] img,.job-detail-logo[data-fit="contain"] img{object-fit:contain;padding:4px}
.job-employer-logo-fallback{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:var(--sunk);color:var(--blue-ink)}
.job-employer-logo-fallback svg{width:24px;height:24px}
.job-detail-logo{width:96px;height:96px;margin-bottom:16px}
@media (max-width:760px){
  .phero.has-banner .wrap{grid-template-columns:minmax(0,1fr);gap:20px}
  .phero-banner{width:min(280px,100%);max-width:280px;justify-self:center}
  .video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-video-layout{grid-template-columns:minmax(0,1fr)}
  .home-video-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-video-link{grid-template-columns:minmax(0,1fr);align-content:start}
}
@media (max-width:520px){
  .video-grid,.home-video-list{grid-template-columns:minmax(0,1fr)}
  .video-filters{align-items:stretch}
  .video-filters label{width:100%;min-width:0}
  .video-play{width:52px;height:52px}
  .video-lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:64px 12px 12px;border:0;border-radius:0}
  .video-dialog-content{max-height:calc(100dvh - 88px)}
}

/* Home page careers preview */
.hc-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:20px;align-items:stretch}
.hc-jobs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hc-aside{display:grid;grid-auto-rows:1fr;gap:20px}
.hc-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px;font-size:15px;line-height:1.5;transition:box-shadow .25s ease,border-color .25s ease}
.hc-card:hover{border-color:var(--blue);box-shadow:var(--shadow)}
.hc-card h3{margin:0;font-size:1.1rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hc-card p{margin:0}
.hc-muted{color:var(--muted)}
.hc-deadline{font-weight:600;color:color-mix(in srgb,var(--yellow) 65%,var(--ink))}
.hc-deadline.is-urgent{color:var(--red)}
.hj-top{display:flex;align-items:center;gap:12px;min-width:0}
.hj-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;overflow:hidden;background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue-ink)}
.hj-icon .media-square,.hj-icon .job-employer-logo{width:44px;height:44px;border-radius:12px}
.hj-badges{display:flex;flex-wrap:nowrap;gap:6px;min-width:0;overflow:hidden}
.hj-badges .tag{white-space:nowrap}
.hj-meta{display:flex;flex-wrap:nowrap;align-items:center;gap:12px;overflow:hidden;color:var(--muted);font-size:.85rem}
.hj-meta span{display:inline-flex;align-items:center;gap:5px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-transform:capitalize}
.hj-meta svg{flex:none}
.hj-salary{font-weight:700;color:var(--blue-ink)}
.hc-actions{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:6px}
.hc-actions .btn{height:44px;padding:0 18px;white-space:nowrap}
.hc-actions .hc-share{width:44px;padding:0;flex:none;margin-left:auto}
.hc-seats{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--muted);font-size:.85rem}
.hc-seats b{color:var(--ink);font-weight:600}
.hc-bar{height:8px;border-radius:99px;background:var(--sunk);overflow:hidden}
.hc-bar i{display:block;height:100%;border-radius:inherit;background:var(--blue)}
.hc-shortcuts{margin-top:24px;flex-wrap:wrap!important;overflow:visible!important}
.hc-shortcuts .chip{display:inline-flex;align-items:center;gap:8px}
@media(max-width:1000px){.hc-grid{grid-template-columns:minmax(0,1fr)}.hc-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-aside{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.hc-jobs,.hc-aside{grid-template-columns:minmax(0,1fr)}}

/* Home page POS Store setups */
.pos-head{align-items:end}
.pos-head .lede{max-width:640px}
.pos-head-actions{display:flex;align-items:center;gap:12px}
.cur-chip{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.8rem}
.pos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.pos-card{position:relative;display:flex;flex-direction:column;gap:16px;min-width:0;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px;transition:box-shadow .25s ease,border-color .25s ease}
.pos-card:hover{border-color:var(--blue);box-shadow:var(--shadow)}
.pos-card.is-popular{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue) inset}
.pos-top{display:flex;align-items:center;min-height:26px}
.pos-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:99px;background:var(--sunk);color:var(--muted);font:600 .7rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.pos-badge.is-popular{background:var(--blue);color:var(--on-blue)}
.pos-media{display:grid;place-items:center;aspect-ratio:16/10;padding:16px;border-radius:12px;background:var(--sunk);overflow:hidden;color:var(--muted)}
.pos-media img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.pos-illus{width:70%;height:auto}
.pos-body{display:flex;flex-direction:column;gap:14px;flex:1}
.pos-body h3{margin:0;font-size:1.3rem}
.pos-best{margin:4px 0 0;color:var(--muted);font-size:.92rem}
.pos-included{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.pos-inc-title{display:block;margin-bottom:8px;color:var(--muted);font:600 .7rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.pos-chips{display:flex;flex-wrap:wrap;gap:6px}
.pos-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:99px;background:var(--sunk);color:var(--muted);font-size:.74rem;line-height:1.2}
.pos-chip svg{width:13px;height:13px;flex:none}
.pos-bottom{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-top:16px;border-top:1px solid var(--line)}
.pos-price{display:grid;gap:2px}
.pos-price s{color:var(--muted);font-size:.85rem}
.pos-amount{font:700 1.8rem/1.1 var(--f-body);color:var(--ink)}
.pos-price small{color:var(--muted);font-size:.74rem}
.pos-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-left:auto}
.pos-actions .btn{height:44px;padding:0 16px;white-space:nowrap}
.pos-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;list-style:none;margin:28px 0 0;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.pos-trust li{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.88rem;line-height:1.45}
.pos-trust-ico{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue-ink)}
.pos-trust-ico .i-inline{width:18px;height:18px}
@media(max-width:1000px){.pos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pos-trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pos-head-actions{flex-wrap:wrap}}
@media(max-width:640px){.pos-grid,.pos-trust{grid-template-columns:minmax(0,1fr)}.pos-bottom{flex-direction:column;align-items:stretch}.pos-actions{margin-left:0}.pos-actions .btn{flex:1 1 0}}

/* Home page custom software */
.video-home:empty{display:none!important}
.cs-section{padding-block:96px}
.cs-grid{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:clamp(32px,5vw,72px);align-items:center}
.cs-left{display:grid;gap:20px;align-content:center;min-width:0}
.cs-left h2,.cs-left p{margin:0}
.cs-built{display:grid;gap:10px}
.cs-label{font-size:.85rem;font-weight:600;color:var(--muted)}
.cs-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.cs-chips li{padding:7px 12px;border:1px solid var(--line);border-radius:99px;background:var(--surface);color:var(--ink);font-size:.85rem;line-height:1.2}
.cs-ctas{display:flex;flex-wrap:wrap;gap:12px}
.cs-trust{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;margin:0;padding:0;color:var(--muted);font-size:.88rem}
.cs-trust li{display:inline-flex;align-items:center;gap:8px}
.cs-trust .i-inline{width:18px;height:18px;color:var(--blue-ink)}
.cs-steps{display:grid;gap:28px;list-style:none;margin:0;padding:28px;border-radius:20px;background:linear-gradient(160deg,color-mix(in srgb,var(--blue) 8%,var(--surface)),var(--surface) 70%);min-width:0}
.cs-card{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:16px;transition:box-shadow .25s ease,border-color .25s ease}
.cs-card:hover{border-color:var(--blue);box-shadow:var(--shadow)}
.cs-card:not(:last-child)::after{content:"";position:absolute;left:43px;top:100%;height:28px;border-left:2px dashed var(--blue);opacity:.55}
.cs-num{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--blue);color:var(--on-blue);font:700 1.05rem/1 var(--f-body)}
.cs-body{display:grid;gap:4px;min-width:0}
.cs-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cs-step{color:var(--blue-ink);font:600 .75rem/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase}
.cs-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue-ink)}
.cs-ico .i-inline{width:18px;height:18px}
.cs-body h3{margin:2px 0 0;font-size:1.15rem}
.cs-body p{margin:0;color:var(--muted);font-size:.95rem}
.cs-meta{margin-top:4px;color:var(--muted);font-size:.8rem;opacity:.9}
@media(max-width:900px){.cs-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.cs-section{padding-block:64px}.cs-steps{padding:16px;gap:24px}.cs-card{padding:18px;grid-template-columns:40px minmax(0,1fr);gap:12px}.cs-num{width:40px;height:40px}.cs-card:not(:last-child)::after{left:37px;height:24px}.cs-ctas .btn{flex:1 1 100%}}
/* Home page custom software: compact 2x2 timeline */
.cs-section{padding-bottom:104px}
.cs-grid{align-items:center}
.cs-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;align-items:stretch}
.cs-card{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:12px;row-gap:4px;align-content:start;padding:20px}
.cs-body,.cs-head{display:contents}
.cs-num{grid-column:1;grid-row:1;position:relative;z-index:1;width:40px;height:40px;font-size:1rem}
.cs-ico{grid-column:2;grid-row:1;justify-self:end;position:relative;z-index:1;width:36px;height:36px}
.cs-step{grid-column:1/-1;grid-row:2;margin-top:10px}
.cs-body h3{grid-column:1/-1;margin:0;font-size:20px;line-height:1.25}
.cs-body p{grid-column:1/-1;font-size:15px;line-height:1.5}
.cs-meta{grid-column:1/-1;margin-top:2px;font-size:13px}
.cs-card:not(:last-child)::after{content:none}
.cs-card:nth-child(odd){z-index:2}
.cs-card:nth-child(odd)::after{content:"";position:absolute;left:60px;top:39px;width:calc(100% - 60px + 16px + 20px);height:0;border:0;border-top:2px dashed var(--blue);opacity:.55;z-index:0}
@media(max-width:1100px){.cs-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){
  .cs-section{padding-bottom:96px}
  .cs-steps{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
  .cs-card{padding:18px}
  .cs-card:nth-child(odd)::after{content:none}
  .cs-card:not(:last-child)::after{content:"";position:absolute;left:37px;top:100%;width:0;height:16px;border:0;border-left:2px dashed var(--blue);opacity:.55}
}
/* Home page custom software: balanced columns */
.cs-section{padding-top:96px;padding-bottom:120px}
.cs-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:center}
.cs-left{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.cs-left .eyebrow{margin:0}
.cs-left h2{max-width:560px;margin:12px 0 0}
.cs-left p.lede{max-width:560px;margin:20px 0 0}
.cs-built{display:grid;gap:10px;margin-top:28px}
.cs-chips{gap:10px}
.cs-ctas{margin-top:28px;align-items:center}
.cs-ctas .btn{height:48px;padding:0 22px;white-space:nowrap}
.cs-trust{margin-top:20px}
.cs-steps{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:16px;padding:20px;border-radius:24px}
.cs-card{align-content:start}
.cs-num,.cs-ico{align-self:center}
.cs-card::after,.cs-card:nth-child(odd)::after,.cs-card:not(:last-child)::after{content:none!important}
@media(max-width:1100px){.cs-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
@media(max-width:767px){.cs-section{padding-top:64px;padding-bottom:96px}.cs-steps{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;padding:16px}.cs-ctas .btn{flex:1 1 100%}}

/* Home page services and pricing */
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;align-items:stretch}
.svc-card{position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:18px;transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease}
.svc-card:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:var(--shadow)}
.svc-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.svc-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:99px;background:var(--sunk);color:var(--muted);font:600 .72rem/1 var(--f-body);letter-spacing:.04em}
.svc-badge.is-blue{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue-ink)}
.svc-card h3{margin:0}
.svc-desc{margin:0;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.svc-points{margin:0;font-size:14px}
.svc-points li{font-size:14px}
.svc-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.svc-price{display:flex;align-items:baseline;gap:6px;flex-wrap:nowrap;white-space:nowrap}
.svc-price small{color:var(--muted);font-size:14px}
.svc-price strong{font:700 22px/1.2 var(--f-body);font-variant-numeric:tabular-nums;color:var(--ink)}
.svc-link{display:inline-flex;align-items:center;gap:6px;color:var(--blue-ink);font-weight:600;white-space:nowrap;text-decoration:none}
.svc-link::after{content:"";position:absolute;inset:0;border-radius:18px}
.svc-link .i-inline{transition:transform .2s ease}
.svc-card:hover .svc-link .i-inline{transform:translateX(3px)}
.svc-trust{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 26px;margin:28px 0 0;padding:0;list-style:none;color:var(--muted);font-size:.9rem}
.svc-trust li{display:inline-flex;align-items:center;gap:8px}
.svc-trust .i-inline{width:18px;height:18px;color:var(--blue-ink)}
.svc-trust a{color:var(--blue-ink);font-weight:600}
@media(max-width:1000px){.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.svc-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}.svc-card{padding:24px}}

/* Home page pillars and statistics */
.pillars-section{padding-block:72px}
.pillars-section+.section.alt{border-top:0}
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}
.pillar{--ac:var(--blue-ink);--bar:var(--blue);position:relative;display:flex;flex-direction:column;gap:12px;padding:28px;background:var(--surface);color:var(--ink);text-decoration:none;border-right:1px solid var(--line);transition:background .2s ease}
.pillar:last-child{border-right:0}
.pillar-1{--ac:var(--red);--bar:var(--red)}
.pillar-2{--ac:var(--blue-ink);--bar:var(--blue)}
.pillar-3{--ac:#9A6C00;--bar:var(--yellow)}
:root[data-theme="dark"] .pillar-3{--ac:var(--yellow)}
.pillar::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--bar);opacity:0;transition:opacity .2s ease}
.pillar:hover{background:color-mix(in srgb,var(--ac) 5%,var(--surface))}
.pillar:hover::before{opacity:1}
.pillar-top{display:flex;align-items:center;gap:12px;min-width:0}
.pillar-ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--ac) 12%,var(--surface));color:var(--ac)}
.pillar-ico svg{width:22px;height:22px}
.pillar .k{font:600 .75rem/1.3 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--ac)}
.pillar h3{margin:0;font-size:1.35rem}
.pillar p{margin:0;color:var(--muted);font-size:.95rem}
.pillar-link{margin-top:auto;padding-top:8px;display:inline-flex;align-items:center;gap:8px;color:var(--ac);font-weight:600}
.pillar-link .i-inline{transition:transform .2s ease}
.pillar:hover .pillar-link .i-inline{transform:translateX(3px)}
.stats{margin-top:48px;padding:32px;gap:0;border-radius:18px;background:var(--sunk)}
.stat{display:grid;justify-items:center;align-content:start;gap:8px;padding:4px 16px;text-align:center;border-left:1px solid var(--line)}
.stat:first-child{border-left:0}
.stat-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue-ink)}
.stat-ico svg{width:20px;height:20px}
.stat b{font:800 44px/1 var(--f-body);font-stretch:100%;font-variant-numeric:tabular-nums}
.stat .stat-label{color:var(--muted);font-size:15px}
@media(max-width:900px){.pillars{grid-template-columns:minmax(0,1fr)}.pillar{border-right:0;border-bottom:1px solid var(--line)}.pillar:last-child{border-bottom:0}.stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px;padding:24px}.stat:nth-child(odd){border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line);padding-top:24px}}
@media(max-width:560px){.pillars-section{padding-block:56px}.stat b{font-size:36px}}
/* Footer bottom bar: copyright and developer credit */
.site-footer{padding-bottom:96px}
.site-footer .legal{align-items:center}
.site-footer .dev-credit{color:var(--muted);font:400 14px/1.5 var(--f-body);text-align:right}
.site-footer .dev-credit a{color:var(--blue-ink);text-decoration:none}
.site-footer .dev-credit a:hover{text-decoration:underline}
.dev-wa svg{margin-left:4px;vertical-align:-1px}
@media(max-width:760px){.site-footer{padding-bottom:48px}.site-footer .legal{flex-direction:column;align-items:center;text-align:center}.site-footer .dev-credit{text-align:center}}

/* ===== Site-wide design pass (public pages only) ===== */
body:not(.admin-shell){font:400 17px/1.5 var(--f-body)}
:where(body:not(.admin-shell)) h1,:where(body:not(.admin-shell)) h2,:where(body:not(.admin-shell)) h3,:where(body:not(.admin-shell)) h4{line-height:1.1}
:where(body:not(.admin-shell)) h1{font-size:clamp(36px,5vw,64px)}
:where(body:not(.admin-shell)) h2{font-size:clamp(30px,3.4vw,44px)}
:where(body:not(.admin-shell)) h3{font-size:22px}
:where(body:not(.admin-shell)) .lede,:where(body:not(.admin-shell)) .sec-head p,:where(body:not(.admin-shell)) .phero p{max-width:680px}
:where(body:not(.admin-shell)) .mono,:where(body:not(.admin-shell)) .eyebrow,:where(body:not(.admin-shell)) .brand small,:where(body:not(.admin-shell)) .cur-select,:where(body:not(.admin-shell)) .icon-btn .count,:where(body:not(.admin-shell)) .hero-eyebrow,:where(body:not(.admin-shell)) .hero-trust,:where(body:not(.admin-shell)) .deals-ticker__latest,:where(body:not(.admin-shell)) .offer-type,:where(body:not(.admin-shell)) .offer-prices s,:where(body:not(.admin-shell)) .offer-countdown,:where(body:not(.admin-shell)) .tag,:where(body:not(.admin-shell)) .price,:where(body:not(.admin-shell)) .plan .pr,:where(body:not(.admin-shell)) .phero .crumbs,:where(body:not(.admin-shell)) .steps .n,:where(body:not(.admin-shell)) .tier .pr,:where(body:not(.admin-shell)) .store-side button span,:where(body:not(.admin-shell)) .item .spec,:where(body:not(.admin-shell)) .bundle s,:where(body:not(.admin-shell)) .qty span,:where(body:not(.admin-shell)) .drawer .total,:where(body:not(.admin-shell)) .person .role,:where(body:not(.admin-shell)) .person dt,:where(body:not(.admin-shell)) .facts dt,:where(body:not(.admin-shell)) .cert .doc small,:where(body:not(.admin-shell)) .contact-list dt,:where(body:not(.admin-shell)) .career-stats strong,:where(body:not(.admin-shell)) .site-footer h4,:where(body:not(.admin-shell)) .tech span,:where(body:not(.admin-shell)) .video-duration,:where(body:not(.admin-shell)) .pos-badge,:where(body:not(.admin-shell)) .pos-inc-title,:where(body:not(.admin-shell)) .lines .k,:where(body:not(.admin-shell)) .work .shot .wbar,:where(body:not(.admin-shell)) .hero-chip{font-family:var(--f-body)}
:where(body:not(.admin-shell)) .eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em}
:where(body:not(.admin-shell)) .section,:where(body:not(.admin-shell)) .pillars-section,:where(body:not(.admin-shell)) .cs-section,:where(body:not(.admin-shell)) .video-home{padding-block:96px}
:where(body:not(.admin-shell)) .section.alt{background:#F3F7FC;border-block:0}
:root[data-theme="dark"] :where(body:not(.admin-shell)) .section.alt{background:var(--sunk)}
:where(body:not(.admin-shell)) .sec-head{margin-bottom:40px}
:where(body:not(.admin-shell)) .btn{min-height:44px;padding:10px 22px;border-radius:10px;font:600 15px/1.2 var(--f-body)}
:where(body:not(.admin-shell)) .btn.sm{min-height:44px;padding:10px 20px;font-size:15px}
:where(body:not(.admin-shell)) .btn svg,:where(body:not(.admin-shell)) .btn .i-inline,:where(body:not(.admin-shell)) .btn [data-ico] svg{width:18px;height:18px}
:where(body:not(.admin-shell)) .btn:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 45%,transparent);outline-offset:2px}
:where(body:not(.admin-shell)) .btn.ghost{border-color:color-mix(in srgb,var(--ink) 18%,var(--line))}
:where(body:not(.admin-shell)) .btn.ghost:hover{border-color:var(--blue);color:var(--blue-ink);filter:none}
:where(body:not(.admin-shell)) .hero .btn{min-height:48px;padding:12px 26px}
:where(body:not(.admin-shell)) .link-arrow{font:600 15px/1.2 var(--f-body)}
:root[data-theme="dark"] :where(body:not(.admin-shell)) .hero .ctas .btn.ghost{background:var(--surface)}
:where(body:not(.admin-shell)) .card,:where(body:not(.admin-shell)) .item,:where(body:not(.admin-shell)) .person,:where(body:not(.admin-shell)) .post,:where(body:not(.admin-shell)) .tier,:where(body:not(.admin-shell)) .plan,:where(body:not(.admin-shell)) .cert,:where(body:not(.admin-shell)) .partner,:where(body:not(.admin-shell)) .work,:where(body:not(.admin-shell)) .bundle,:where(body:not(.admin-shell)) .career-card,:where(body:not(.admin-shell)) .career-panel{border-radius:16px}
:where(body:not(.admin-shell)) .card,:where(body:not(.admin-shell)) .item,:where(body:not(.admin-shell)) .person,:where(body:not(.admin-shell)) .post,:where(body:not(.admin-shell)) .tier,:where(body:not(.admin-shell)) .plan,:where(body:not(.admin-shell)) .cert,:where(body:not(.admin-shell)) .partner,:where(body:not(.admin-shell)) .work,:where(body:not(.admin-shell)) .bundle,:where(body:not(.admin-shell)) .pos-card,:where(body:not(.admin-shell)) .svc-card,:where(body:not(.admin-shell)) .hc-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
:where(body:not(.admin-shell)) .card:hover,:where(body:not(.admin-shell)) .item:hover,:where(body:not(.admin-shell)) .person:hover,:where(body:not(.admin-shell)) .post:hover,:where(body:not(.admin-shell)) .tier:hover,:where(body:not(.admin-shell)) .plan:hover,:where(body:not(.admin-shell)) .cert:hover,:where(body:not(.admin-shell)) .partner:hover,:where(body:not(.admin-shell)) .work:hover,:where(body:not(.admin-shell)) .bundle:hover,:where(body:not(.admin-shell)) .career-card:hover,:where(body:not(.admin-shell)) .career-panel:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--blue)}
.js :where(body:not(.admin-shell)) .rv.in.card:hover,.js :where(body:not(.admin-shell)) .rv.in.item:hover,.js :where(body:not(.admin-shell)) .rv.in.work:hover,.js :where(body:not(.admin-shell)) .rv.in.person:hover,.js :where(body:not(.admin-shell)) .rv.in.post:hover,.js :where(body:not(.admin-shell)) .rv.in.tier:hover,.js :where(body:not(.admin-shell)) .rv.in.plan:hover{transform:translateY(-2px)}
:where(body:not(.admin-shell)) .tag{font:600 12px/1 var(--f-body);letter-spacing:.02em;text-transform:none;padding:6px 10px;border-radius:999px}
:where(body:not(.admin-shell)) .tag.green{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good)}
:where(body:not(.admin-shell)) .tag.amber{background:color-mix(in srgb,var(--yellow) 22%,transparent);color:#7A5400}
:root[data-theme="dark"] :where(body:not(.admin-shell)) .tag.amber{color:var(--yellow)}
:where(body:not(.admin-shell)) .field label{font:600 14px/1.3 var(--f-body)}
:where(body:not(.admin-shell)) .field input,:where(body:not(.admin-shell)) .field select,:where(body:not(.admin-shell)) .field textarea{min-height:48px;padding:12px 14px;border-radius:10px;font:400 16px/1.4 var(--f-body)}
:where(body:not(.admin-shell)) .field textarea{min-height:120px}
:where(body:not(.admin-shell)) .field input:focus,:where(body:not(.admin-shell)) .field select:focus,:where(body:not(.admin-shell)) .field textarea:focus{outline:3px solid color-mix(in srgb,var(--blue) 30%,transparent);outline-offset:0;border-color:var(--blue)}
:where(body:not(.admin-shell)) .field input:user-invalid,:where(body:not(.admin-shell)) .field select:user-invalid,:where(body:not(.admin-shell)) .field textarea:user-invalid{border-color:var(--red)}
:where(body:not(.admin-shell)) .form button[type=submit],:where(body:not(.admin-shell)) .form .btn[type=submit]{min-height:48px}
:where(body:not(.admin-shell)) .site-header .wrap{align-items:center}
:where(body:not(.admin-shell)) .nav>a,:where(body:not(.admin-shell)) .nav .dd>button{min-height:44px;padding:0 12px}
:where(body:not(.admin-shell)) .nav a[aria-current="page"],:where(body:not(.admin-shell)) .nav .dd.active>button{background:color-mix(in srgb,var(--blue) 10%,transparent)}
:where(body:not(.admin-shell)) .site-footer h4{font:600 13px/1 var(--f-body);letter-spacing:.1em}
:where(body:not(.admin-shell)) .site-footer .brand img{height:44px}
:where(body:not(.admin-shell)) .fab-wa{left:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));width:56px;height:56px;background:#25D366}
:where(body:not(.admin-shell)) .chat-fab{right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));min-height:56px}
:where(body:not(.admin-shell)) .chat{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
:where(body:not(.admin-shell)) img,:where(body:not(.admin-shell)) svg,:where(body:not(.admin-shell)) video,:where(body:not(.admin-shell)) iframe{max-width:100%}
:where(body:not(.admin-shell)) pre,:where(body:not(.admin-shell)) table{max-width:100%;overflow-x:auto}
.js :where(body:not(.admin-shell)) .rv{transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.js :where(body:not(.admin-shell)) .rv.in{transform:none}
@media (max-width:1024px){
:where(body:not(.admin-shell)) .section,:where(body:not(.admin-shell)) .pillars-section,:where(body:not(.admin-shell)) .cs-section,:where(body:not(.admin-shell)) .video-home{padding-block:64px}
}
@media (max-width:640px){
:where(body:not(.admin-shell)) .section,:where(body:not(.admin-shell)) .pillars-section,:where(body:not(.admin-shell)) .cs-section,:where(body:not(.admin-shell)) .video-home{padding-block:56px}
}
@media (max-width:1000px){
:where(body:not(.admin-shell)) .nav>a,:where(body:not(.admin-shell)) .nav .dd>button{min-height:48px}
}
@media (max-width:760px){
:where(body:not(.admin-shell)) .fab-wa{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
:where(body:not(.admin-shell)) .chat-fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;padding:0}
}

/* Partner logos: balanced, fully visible, full colour */
.logo-tile{width:200px;max-width:100%;height:110px;padding:14px;display:flex;align-items:center;justify-content:center;background:var(--tile);border:1px solid var(--line);border-radius:14px;transition:transform .2s ease,box-shadow .2s ease}
.logo-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.logo-tile img{max-width:100%;max-height:72px;width:auto;height:auto;object-fit:contain;filter:none;opacity:1}
.logo-tile img[data-shape="wide"]{max-height:56px}
.logo-tile img[data-shape="square"]{max-height:80px}
.marquee .logo-tile{width:200px;height:110px;flex:none}
.marquee .logo-tile img,.marquee .logo-tile img[data-shape]{max-height:56px}
.partner{grid-template-columns:200px minmax(0,1fr)}
@media(max-width:1024px){.logo-tile,.marquee .logo-tile{width:170px;height:96px}.logo-tile img{max-height:60px}.logo-tile img[data-shape="wide"]{max-height:48px}.logo-tile img[data-shape="square"]{max-height:68px}.partner{grid-template-columns:170px minmax(0,1fr)}}
@media(max-width:600px){.logo-tile,.marquee .logo-tile{width:150px;height:84px}.logo-tile img{max-height:52px}.logo-tile img[data-shape="wide"]{max-height:44px}.logo-tile img[data-shape="square"]{max-height:56px}.partner{grid-template-columns:1fr}}

/* Home careers: compact cards, wrapping meta, visible share button */
.hc-grid{align-items:start}
.hc-aside{grid-auto-rows:auto;align-items:start}
.hc-card .hc-actions{margin-top:8px;padding-top:0}
.hj-meta{flex-wrap:wrap;gap:6px 14px;overflow:visible}
.hj-meta span{overflow:visible;text-overflow:clip;text-transform:none}
.hc-actions .btn.hc-share{width:44px;min-width:44px;padding:0;flex:none;margin-left:0}
.hc-actions .btn.hc-share svg{width:18px;height:18px;flex:none;color:var(--ink)}
.hc-shortcuts{margin-top:16px}

/* Ask AI pill and chat topic */
.ask-ai{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:1px solid color-mix(in srgb,var(--ink) 18%,var(--line));border-radius:999px;background:transparent;color:var(--ink);font:600 14px/1 var(--f-body);cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease;white-space:nowrap}
.ask-ai:hover{border-color:var(--blue);color:var(--blue-ink);background:color-mix(in srgb,var(--blue) 6%,transparent)}
.ask-ai svg{width:16px;height:16px;flex:none}
.ask-ai-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.phero .wrap>.ask-ai{margin-top:16px}
.sec-head>.ask-ai{justify-self:start}
#cart>header .ask-ai{margin-left:auto;margin-right:8px;height:32px;padding:0 10px;font-size:13px}
.chat-topic{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;background:var(--sunk);border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}
.chat-topic b{color:var(--ink)}
.chat-topic button{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}
.chat-topic button:hover{background:var(--line);color:var(--ink)}
.chat-ctas{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}

/* Home careers: full-width jobs, wide programme cards, quick links bar */
.hc-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:6px}
.hc-count{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--good) 12%,transparent);color:var(--good);font:600 12px/1 var(--f-body)}
.hc-count i{width:7px;height:7px;border-radius:50%;background:var(--good)}
.hc-jobs{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.hc-jobs .hc-card:not(:hover){border-color:var(--line);box-shadow:none}
.hc-programs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}
.hc-wide{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:28px;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.hc-wide:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--blue)}
.hc-intern{background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 9%,var(--surface)),var(--surface) 75%)}
.hc-train{background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 14%,var(--surface)),var(--surface) 75%)}
.hc-watermark{position:absolute;top:-18px;right:-18px;opacity:.08;pointer-events:none;color:var(--ink)}
.hc-watermark svg{width:160px;height:160px}
.hc-wide-main{position:relative;display:grid;gap:8px;min-width:0}
.hc-wide-main h3{margin:0;font-size:22px}
.hc-wide-main p{margin:0}
.hc-line{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.hc-chips{display:flex;flex-wrap:wrap;gap:8px}
.hc-wide-side{position:relative;display:grid;justify-items:center;gap:10px}
.hc-seatring{--p:0;display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:radial-gradient(closest-side,var(--surface) 72%,transparent 74%),conic-gradient(var(--blue) calc(var(--p)*1%),var(--line) 0)}
.hc-seatring b{font:800 22px/1 var(--f-body);color:var(--ink)}
.hc-seatlabel{color:var(--muted);font-size:13px}
.btn.hc-amber{--bg:var(--yellow);--fg:#1A1200}
.hc-link{color:var(--blue-ink);font-weight:600;font-size:14px}
.hc-quick{display:flex;align-items:center;gap:20px;margin-top:20px;padding:16px 24px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.hc-quick-label{flex:none;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.hc-quick-links{display:flex;flex:1;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 24px}
.hc-quick-links a{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-weight:600;font-size:15px;text-decoration:none}
.hc-quick-links a:hover{color:var(--blue-ink)}
.hc-quick-links svg{flex:none}
section[data-section="index.section-alt-3"]{padding-bottom:112px}
@media(max-width:1024px){.hc-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-programs{grid-template-columns:minmax(0,1fr)}.hc-quick{flex-wrap:wrap}}
@media(max-width:640px){.hc-jobs{grid-template-columns:minmax(0,1fr)}.hc-wide{grid-template-columns:minmax(0,1fr);padding:22px}.hc-wide-side{justify-items:stretch}.hc-wide-side .btn{width:100%}.hc-seatring{justify-self:start}.hc-seatlabel{justify-self:start}.hc-quick{display:grid;gap:12px}.hc-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}section[data-section="index.section-alt-3"]{padding-bottom:96px}}

/* ===== Mobile pass (public pages only) ===== */
:where(body:not(.admin-shell)) body.nav-open .fab-wa,:where(body:not(.admin-shell)) body.nav-open .chat-fab{display:none}
@media (max-width:1024px){
:where(body:not(.admin-shell)) .icon-btn,:where(body:not(.admin-shell)) .menu-btn,:where(body:not(.admin-shell)) .theme-btn{width:44px;height:44px}
}
@media (max-width:640px){
body:not(.admin-shell){font-size:16px}
:where(body:not(.admin-shell)) main p,:where(body:not(.admin-shell)) main li,:where(body:not(.admin-shell)) main h1,:where(body:not(.admin-shell)) main h2,:where(body:not(.admin-shell)) main h3,:where(body:not(.admin-shell)) .site-footer a{overflow-wrap:anywhere}
:where(body:not(.admin-shell)) .sec-head.row>.btn,:where(body:not(.admin-shell)) .sec-head.row .pos-head-actions,:where(body:not(.admin-shell)) .sec-head.row .ask-ai-actions,:where(body:not(.admin-shell)) .sec-head.row .pos-head-actions .btn{width:100%}
:where(body:not(.admin-shell)) .sec-head.row .pos-head-actions,:where(body:not(.admin-shell)) .sec-head.row .ask-ai-actions{flex-wrap:wrap}
:where(body:not(.admin-shell)) .cta-band .btn,:where(body:not(.admin-shell)) .cs-ctas .btn,:where(body:not(.admin-shell)) .hero .ctas .btn{width:100%}
:where(body:not(.admin-shell)) .drawer{width:100%;max-width:none}
:where(body:not(.admin-shell)) .drawer>header{position:sticky;top:0;z-index:2;background:var(--surface)}
:where(body:not(.admin-shell)) .drawer>footer{position:sticky;bottom:0;z-index:2;background:var(--surface);padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
:where(body:not(.admin-shell)) .fab-wa,:where(body:not(.admin-shell)) .chat-fab{width:52px;height:52px}
:where(body:not(.admin-shell)) table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media (pointer:coarse){
:where(body:not(.admin-shell)) .btn,:where(body:not(.admin-shell)) .chip,:where(body:not(.admin-shell)) .ask-ai,:where(body:not(.admin-shell)) .cur-select{min-height:44px}
:where(body:not(.admin-shell)) .icon-btn,:where(body:not(.admin-shell)) .menu-btn,:where(body:not(.admin-shell)) .theme-btn{min-width:44px;min-height:44px}
:where(body:not(.admin-shell)) .site-footer ul a{display:inline-flex;align-items:center;min-height:44px}
:where(body:not(.admin-shell)) .nav a,:where(body:not(.admin-shell)) .nav-mobile-footer a{min-height:48px}
}

/* Home careers polish: pills, watermark, matching programme cards, quick links grid */
.hc-wide-main{justify-items:start}
.hc-wide-main .tag{display:inline-flex;width:auto;align-self:flex-start;justify-self:start}
.hc-wide-main>*{position:relative;z-index:1}
.hc-wide-main>.hc-watermark{position:absolute;z-index:0;top:auto;left:auto;right:0;bottom:-8px;width:120px;height:120px;opacity:.06;pointer-events:none;color:var(--ink)}
.hc-watermark svg{width:120px;height:120px}
.hc-wide{align-items:center;min-height:100%}
.hc-wide-main{flex:1;min-width:0}
.hc-wide-main .hc-line{-webkit-line-clamp:2;line-clamp:2}
.hc-wide-side{align-self:center;justify-items:center;align-content:center;gap:12px;min-width:170px}
.hc-side-top{display:grid;justify-items:center;align-content:center;gap:8px;min-height:124px}
.hc-seatring{width:88px;height:88px}
.hc-seatring b{font-size:26px}
.hc-train-ico{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--yellow) 28%,var(--surface));color:#7A5400}
:root[data-theme="dark"] .hc-train-ico{color:var(--yellow)}
.hc-jobs .hc-card{border:1px solid var(--line)!important;box-shadow:none!important}
.hc-jobs .hc-card:hover{border-color:var(--blue)!important;box-shadow:var(--shadow)!important}
.hc-quick{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px}
.hc-quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px}
.hc-quick-links a{justify-content:center}
.hc-quick-links a:hover span{text-decoration:underline}
.hc-quick-links a>svg:last-child{transition:transform .2s ease}
.hc-quick-links a:hover>svg:last-child{transform:translateX(3px)}
@media(max-width:1024px){.hc-quick{grid-template-columns:minmax(0,1fr)}.hc-quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-quick-label{text-align:left}}
@media(max-width:640px){
  .hc-wide{grid-template-columns:minmax(0,1fr);align-items:start}
  .hc-wide-side{justify-items:stretch;min-width:0}
  .hc-side-top{justify-items:start;min-height:0}
  .hc-wide-side .btn{width:100%}
  .hc-wide-side .hc-link{justify-self:center}
  .hc-quick-label{display:none}
  .hc-quick-links a{justify-content:flex-start}
}

/* Internship tracks */
.track-facts{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;margin:6px 0 0;padding:0}
.track-facts li{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:15px;font-weight:600}
.track-facts svg{color:var(--blue-ink);flex:none}
.track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.track-card{--accent:var(--blue);position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:28px;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:18px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.track-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--accent)}
.track-card:nth-child(5n+1){--accent:var(--blue)}.track-card:nth-child(5n+2){--accent:var(--red)}.track-card:nth-child(5n+3){--accent:var(--yellow)}.track-card:nth-child(5n+4){--accent:#7A4FD6}.track-card:nth-child(5n+5){--accent:#1E9E5A}
.track-card.track-help{--accent:var(--line);background:var(--sunk);border-style:dashed}
.track-card:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:var(--shadow)}
.track-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.track-ico{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;overflow:hidden;background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue-ink)}
.track-ico .media-square,.track-ico .track-image{width:48px;height:48px;border-radius:12px}
.track-card h3{margin:0;font-size:22px}
.track-desc{margin:0;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.track-label{display:block;margin-bottom:8px;color:var(--muted);font:600 12px/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase}
.track-card .ticks{margin:0;font-size:15px}
.track-tools{display:flex;flex-wrap:wrap;gap:6px}
.track-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line)}
.track-meta{color:var(--muted);font-size:14px;font-weight:600}
.track-foot .btn{margin-left:auto}
@media(max-width:1024px){.track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.track-grid{grid-template-columns:minmax(0,1fr)}.track-card{padding:24px}.track-foot .btn{width:100%;margin-left:0}}

/* Floating buttons on phones: keep the icon, hide only the text label */
:where(body:not(.admin-shell)) .chat-fab>[data-ico]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none}
:where(body:not(.admin-shell)) .chat-fab svg{display:block;width:24px;height:24px;flex:none;fill:none;stroke:currentColor;color:#fff}
:where(body:not(.admin-shell)) .chat-fab::after{content:"";position:absolute;top:5px;right:5px;width:11px;height:11px;border-radius:50%;background:#12B76A;border:2px solid var(--blue);animation:fab-pulse 2.2s ease-out infinite}
@keyframes fab-pulse{0%{box-shadow:0 0 0 0 rgba(18,183,106,.55)}70%,100%{box-shadow:0 0 0 9px rgba(18,183,106,0)}}
:where(body:not(.admin-shell)) .dev-wa svg{width:14px;height:14px;display:inline-block;flex:none;vertical-align:-2px}
@media(max-width:760px){
  :where(body:not(.admin-shell)) .chat-fab,:where(body:not(.admin-shell)) .fab-wa{width:56px;height:56px;min-height:56px;padding:0;gap:0;display:flex;align-items:center;justify-content:center}
  :where(body:not(.admin-shell)) .chat-fab{font-size:16px;border-radius:50%;color:#fff}
  :where(body:not(.admin-shell)) .chat-fab>.chat-fab-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;display:block}
  :where(body:not(.admin-shell)) .fab-wa{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
  :where(body:not(.admin-shell)) .chat-fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
  :where(body:not(.admin-shell)) .site-footer{padding-bottom:88px}
}

/* ===== Premium hero: entrance, blobs, dashboard motion, chips, marquee ===== */
@keyframes hero-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.hero-eyebrow,.hero h1,.hero .lede,.hero .ctas,.hero-trust,.hero-stage{animation:hero-rise .5s ease-out both}
.hero-eyebrow{animation-delay:0ms}.hero h1{animation-delay:80ms}.hero .lede{animation-delay:160ms}.hero .ctas{animation-delay:240ms}.hero-trust{animation-delay:320ms}.hero-stage{animation-delay:400ms}
.hero-blobs{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hero-blobs i{position:absolute;display:block;border-radius:50%;filter:blur(70px);opacity:.3;will-change:transform;animation:blob-drift 22s ease-in-out infinite alternate}
.hero-blobs i:nth-child(1){left:-6%;top:-12%;width:420px;height:420px;background:#1360D9}
.hero-blobs i:nth-child(2){right:-4%;top:18%;width:360px;height:360px;background:#F2AE00;opacity:.18;animation-duration:26s;animation-delay:-8s}
.hero-blobs i:nth-child(3){left:38%;bottom:-18%;width:320px;height:320px;background:#E2332A;opacity:.12;animation-duration:30s;animation-delay:-14s}
@keyframes blob-drift{to{transform:translate3d(60px,40px,0) scale(1.12)}}
.hero.is-paused *,.hero.is-paused *::before,.hero.is-paused *::after{animation-play-state:paused!important}
.dashboard-top,.dashboard-kpi small,.dashboard-kpi strong,.chart-day,.dashboard-orders-head,.dashboard-order small,.dashboard-order b{font-family:var(--f-body)}
.dashboard-top .online::before{animation:online-pulse 1.8s ease-out infinite}
@keyframes online-pulse{0%{box-shadow:0 0 0 0 rgba(33,165,103,.55)}70%,100%{box-shadow:0 0 0 7px rgba(33,165,103,0)}}
.hero-dashboard{animation:card-float 6s ease-in-out infinite}
@keyframes card-float{50%{translate:0 -6px}}
.hero-toast{position:absolute;top:-16px;right:14px;z-index:6;padding:9px 13px;border-radius:9px;background:#0D1420;color:#fff;font:600 .72rem/1 var(--f-body);white-space:nowrap;box-shadow:0 12px 26px -12px rgba(13,20,32,.5);opacity:0;transform:translateY(-8px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
.hero-toast.is-visible{opacity:1;transform:none}
.hero-chip--receipt{right:8px;top:6px;animation-delay:-1.5s}
.hero-chip--stock{right:-6px;top:44%;animation-delay:-4.5s}
.hero-chip--fbr{left:34%;bottom:-6px;animation-delay:-2.5s}
.hero-chip--stock .chip-icon,.hero-chip--fbr .chip-icon,.hero-chip--receipt .chip-icon{background:#EAF1FD;color:var(--blue)}
.hero-primary{position:relative;overflow:hidden}
.hero-primary::after{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:translateX(-140%) skewX(-18deg);pointer-events:none}
.hero-primary:hover::after,.hero-primary:active::after{transform:translateX(320%) skewX(-18deg);transition:transform .7s ease}
.site-header.scrolled{background:color-mix(in srgb,var(--paper) 82%,transparent);-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px)}
@media(max-width:900px){.hero-chip--stock,.hero-chip--fbr{display:none}.hero-blobs i:nth-child(3){display:none}.hero-blobs i{filter:blur(48px);opacity:.22}}
@media(max-width:640px){
  .hero{padding-top:24px}
  .hero .wrap{gap:28px}
  .hero h1{font-size:clamp(1.7rem,8.6vw,2.25rem);line-height:1.1}
  .hero .lede{font-size:16px}
  .hero-trust{margin-top:28px;width:100%}
  .hero .ctas .btn{min-height:52px}
  .brand img{height:40px}
  .hero-trust .logos.is-marquee{display:block;width:100%;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
  .logos-track{display:flex;align-items:center;gap:28px;width:max-content;animation:hero-marquee 18s linear infinite}
  .hero-trust .logos.is-marquee img{width:auto;max-width:none;height:40px;flex:none;filter:none;opacity:1}
  .logos.is-touching .logos-track{animation-play-state:paused}
}
@keyframes hero-marquee{to{transform:translateX(calc(-50% - 14px))}}

/* Hero card: toast inside the card body, press bounce for touch */
.hero-toast{top:66px;right:12px;max-width:70%;overflow:hidden;text-overflow:ellipsis}
.hero-dashboard{touch-action:pan-y;will-change:transform}
.hero-dashboard.is-bounce{animation:card-float 6s ease-in-out infinite,card-bounce .45s cubic-bezier(.3,1.6,.5,1)}
@keyframes card-bounce{0%{scale:1}35%{scale:.97}70%{scale:1.025}100%{scale:1}}

/* ===== Hero spacing: even padding on desktop, tablet and phone ===== */
.hero{padding-block:72px 96px}
.hero .wrap{gap:64px;align-items:center}
.hero-eyebrow{margin:0}
.hero h1{margin-top:20px}
.hero .lede{margin-top:20px}
.hero .ctas{gap:12px;margin-top:32px}
.hero-trust{gap:12px;margin-top:36px}
.hero-trust .logos{gap:18px}
.hero-stage{min-width:0}
.hero-dashboard{width:100%;max-width:560px;margin-inline:auto;padding:24px}
.dashboard-top{box-sizing:border-box;height:40px;padding:0 0 0;margin-bottom:12px;border-bottom:1px solid #E8EDF5;align-items:center}
.dashboard-top>span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-top .online,.dashboard-dots{flex:none}
.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-block:0 16px}
.dashboard-kpi{padding:14px}
.dashboard-kpi small{font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-kpi strong{margin-top:8px;font-size:clamp(15px,1.5vw,18px);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-chart{box-sizing:border-box;height:136px;padding:16px;gap:10px;overflow:hidden}
.chart-day{gap:8px}
.dashboard-orders{margin-top:16px}
.hero-toast{top:76px;right:12px;max-width:calc(100% - 24px)}
@media(max-width:1024px){
  .hero{padding-block:56px 72px}
}
@media(max-width:900px){
  .hero .wrap{gap:40px}
  .hero-stage{width:min(100%,620px)}
}
@media(max-width:640px){
  .hero{padding-block:24px 56px}
  .hero .wrap{gap:28px}
  .hero h1{margin-top:16px}
  .hero .lede{margin-top:14px}
  .hero .ctas{margin-top:24px}
  .hero-trust{margin-top:28px}
  .hero-stage{width:100%;padding-inline:0}
  .hero-dashboard{max-width:none;padding:16px}
  .dashboard-kpis{gap:8px}
  .dashboard-kpi{padding:10px}
  .dashboard-kpi strong{font-size:clamp(13px,4vw,15px)}
  .dashboard-chart{height:124px;padding:12px}
  .hero-toast{top:68px}
}
