
/* ============ TOKENS & BASE ============ */
:root{
  --bg:#FFFFFF; --bg-2:#FFFFFF; --bg-3:#EFF6FD;
  --line:rgba(15,23,42,.11); --line-strong:rgba(15,23,42,.24);
  --text:#020617; --text-2:#1E293B; --text-3:#475569;
  --accent:#2faffb; --accent-2:#1a8fe6; --accent-light:#2faffb; --accent-ink:#0a6fb5; --on-accent:#03111f;
  --green:#4d7c0f; --red:#DC2626;
  /* logo palette, used as supporting colors */
  --c1:#2faffb; --c1i:#0a6fb5;   /* blue   */
  --c2:#ff740f; --c2i:#c2500a;   /* orange */
  --c3:#96d12a; --c3i:#4d7c0f;   /* green  */
  --c4:#22d3ee; --c4i:#0e7490;   /* cyan   */
  --navy:#071a33;
  --grad:linear-gradient(135deg,#2faffb 0%,#22d3ee 100%);
  --grad-deep:linear-gradient(135deg,#1a8fe6 0%,#2faffb 55%,#22d3ee 100%);
  --ease:cubic-bezier(.22,.61,.36,1);
  --font-d:'Poppins',system-ui,sans-serif; --font-m:'Poppins',system-ui,sans-serif; --font-code:'JetBrains Mono',ui-monospace,monospace;
  --pad:clamp(20px,4vw,56px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--bg);color:var(--text);font-family:var(--font-d);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--accent);color:var(--on-accent)}
::-webkit-scrollbar{width:10px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:#CBD5E1;border:2px solid var(--bg)}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
body::after{content:'';position:fixed;inset:0;z-index:1500;pointer-events:none;opacity:.02;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.wrap{max-width:1440px;margin:0 auto;padding-inline:var(--pad)}
.ic{width:14px;height:14px;flex:none}
[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:var(--d,0s)}
[data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-reveal]{transition:none;opacity:1;transform:none}}

a,button,.panel,.service-row,.net-row__main,.faq-item__q,.dir__row,.ledger__row{transition-timing-function:var(--ease)}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-m);font-size:12px;font-weight:500;letter-spacing:.14em;padding:15px 26px;border:1px solid transparent;cursor:pointer;text-decoration:none;text-transform:uppercase;border-radius:4px;transition:transform .35s var(--ease),background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.btn .ic{transition:transform .35s var(--ease)}
.btn:hover .ic{transform:translateX(4px)}
.btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:0 4px 14px rgba(47,175,251,.35)}
.btn--primary:hover{background:var(--accent-2);transform:translateY(-2px);box-shadow:0 10px 24px rgba(47,175,251,.45)}
.btn--ghost{border-color:var(--line-strong);color:var(--text);background:none}
.btn--ghost:hover{border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.04)}
.btn--dark{background:#0F172A;color:#FFFFFF}
.btn--dark:hover{background:#1E293B;transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.3)}
.btn--sm{padding:11px 18px;font-size:10.5px}
.pulse-dot{width:7px;height:7px;background:var(--green);border-radius:50%;display:inline-block;position:relative;flex:none}
.pulse-dot::after{content:'';position:absolute;inset:-3px;border:1px solid var(--green);border-radius:50%;animation:pd 2s ease-out infinite}
@keyframes pd{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.7);opacity:0}}
@keyframes blinkf{50%{opacity:.35}}
@keyframes tblink{50%{opacity:0}}

/* ticker */
.ticker{background:#0B1220;border-bottom:1px solid rgba(47,175,251,.35);overflow:hidden;font-family:var(--font-m);font-size:10.5px;letter-spacing:.14em;color:#CBD5E1;padding:9px 0;white-space:nowrap}
.ticker__track{display:inline-flex;animation:tick 38s linear infinite}
.ticker:hover .ticker__track{animation-play-state:paused}
.ticker em{font-style:normal;color:var(--accent);font-weight:700}
.ticker i{font-style:normal;margin:0 30px;color:rgba(47,175,251,.6)}
@keyframes tick{to{transform:translateX(-50%)}}

/* header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:background .3s}
.site-header.is-scrolled{background:rgba(255,255,255,.97);box-shadow:0 4px 20px rgba(47,175,251,.05)}
.header__inner{max-width:1440px;margin:auto;padding:0 var(--pad);height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand__mark{width:42px;height:42px;display:flex;align-items:center;justify-content:center;transition:transform .4s var(--ease);flex:none}
.brand__mark img{width:100%;height:100%;display:block;object-fit:contain}
.brand:hover .brand__mark{transform:scale(1.08) rotate(-3deg)}
.brand__name{display:block;font-weight:700;font-stretch:125%;font-size:15px;letter-spacing:.05em;line-height:1.1;color:var(--text)}
.brand__sub{display:block;font-family:var(--font-m);font-size:8.5px;letter-spacing:.34em;color:var(--text-3);margin-top:3px}
.nav{display:flex;gap:30px;align-items:center}
.nav>a{font-family:var(--font-m);font-size:10.5px;letter-spacing:.18em;color:var(--text-2);text-decoration:none;position:relative;padding:6px 0;transition:color .3s var(--ease)}
.nav>a::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--accent);transition:right .3s}
.nav>a:hover,.nav>a.is-active{color:var(--accent-ink)}
.nav>a:hover::after,.nav>a.is-active::after{right:0}
.header__actions{display:flex;align-items:center;gap:12px}
.menu-btn{display:none;width:42px;height:42px;background:none;border:1px solid var(--line-strong);color:var(--text);cursor:pointer;align-items:center;justify-content:center;border-radius:4px}

/* nav dropdown (SERVICES) */
.nav__item{position:relative}
.nav__trigger{font-family:var(--font-m);font-size:10.5px;letter-spacing:.18em;color:var(--text-2);background:none;border:none;cursor:pointer;padding:6px 0;display:flex;align-items:center;gap:7px;transition:color .2s;position:relative}
.nav__trigger::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--accent);transition:right .3s}
.nav__trigger svg{transition:transform .25s}
.nav__item:hover .nav__trigger,.nav__item.is-open .nav__trigger,.nav__item.is-active .nav__trigger{color:var(--accent-ink)}
.nav__item:hover .nav__trigger::after,.nav__item.is-active .nav__trigger::after{right:0}
.nav__item.is-open .nav__trigger svg{transform:rotate(180deg)}
.nav__sub{position:absolute;top:calc(100% + 14px);left:-18px;background:var(--bg-2);border:1px solid var(--line-strong);box-shadow:0 18px 40px rgba(47,175,251,.14);min-width:290px;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .35s var(--ease);z-index:120;border-radius:6px}
.nav__sub::before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}
.nav__item:hover .nav__sub,.nav__item.is-open .nav__sub{opacity:1;visibility:visible;transform:none}
.nav__sub a{display:flex;align-items:baseline;gap:14px;padding:11px 20px;font-family:var(--font-m);font-size:10px;letter-spacing:.16em;color:var(--text-2);text-decoration:none;transition:.15s;white-space:nowrap}
.nav__sub a i{font-style:normal;color:var(--accent-ink);font-size:9px;font-weight:700}
.nav__sub a:hover,.nav__sub a.is-active{color:var(--accent-ink);background:rgba(47,175,251,.05)}

/* mobile nav */
.mnav{position:fixed;inset:0;z-index:800;background:rgba(255,255,255,.99);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;padding:18px var(--pad) 32px;visibility:hidden;opacity:0;transition:all .35s var(--ease);overflow-y:auto}
.mnav.is-open{visibility:visible;opacity:1}
.mnav__top{display:flex;justify-content:space-between;align-items:center;height:58px}
.mnav__links{margin:auto 0;display:grid}
.mnav__links>a{display:flex;gap:18px;align-items:baseline;font-size:clamp(26px,7vw,42px);font-weight:700;font-stretch:115%;text-transform:uppercase;text-decoration:none;padding:15px 0;border-bottom:1px solid var(--line);color:var(--text)}
.mnav__links>a i{font-family:var(--font-m);font-size:11px;color:var(--accent-ink);font-style:normal;letter-spacing:.14em}
.mnav__group{border-bottom:1px solid var(--line)}
.mnav__groupbtn{width:100%;display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:15px 0;font-family:var(--font-d);font-size:clamp(26px,7vw,42px);font-weight:700;font-stretch:115%;text-transform:uppercase;color:var(--text)}
.mnav__groupbtn svg{margin-left:auto;transition:transform .3s;color:var(--text-3);width:20px;height:20px;flex:none}
.mnav__group.is-open .mnav__groupbtn svg{transform:rotate(180deg);color:var(--accent-ink)}
.mnav__sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}
.mnav__sub>div{overflow:hidden}
.mnav__group.is-open .mnav__sub{grid-template-rows: 1fr;}
.mnav__sub a{display:flex;gap:14px;align-items:baseline;font-size:clamp(16px,4.2vw,22px);font-weight:700;font-stretch:112%;text-transform:uppercase;text-decoration:none;padding:9px 0 9px 4px;color:var(--text-2);transition:color .3s var(--ease)}
.mnav__sub a:hover{color:var(--accent-ink)}
.mnav__sub a i{font-family:var(--font-m);font-size:10px;color:var(--accent-ink);font-style:normal}
.mnav__foot{display:flex;gap:12px;flex-wrap:wrap}

/* route veil */
.veil{position:fixed;inset:0;z-index:1200;background:var(--bg-3);display:flex;align-items:center;justify-content:center;transform:translateY(101%)}
.veil::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}
.veil.is-in{transform:translateY(0);transition:transform .3s cubic-bezier(.7,0,.3,1)}
.veil.is-out{transform:translateY(-101%);transition:transform .36s cubic-bezier(.7,0,.3,1)}
.veil__txt{font-family:var(--font-m);font-size:11px;letter-spacing:.2em;color:var(--text-2)}
.veil__txt b{color:var(--accent-ink);font-weight:500}
.veil-cur{display:inline-block;width:8px;height:12px;background:var(--accent);margin-left:8px;vertical-align:-1px;animation:tblink 1s steps(1) infinite}
@media (prefers-reduced-motion:reduce){.veil{display:none}}

/* pages */
.page{display:block}
.page.is-active{display:block;animation:pageIn .6s cubic-bezier(.2,.65,.25,1) both}
@keyframes pageIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.page.is-active{animation:none}}

/* panels */
.panel{position:relative;border:1px solid var(--line-strong);background:var(--bg-2);box-shadow:0 10px 30px rgba(47,175,251,.06);border-radius:6px}
.corner{position:absolute;width:14px;height:14px;z-index:6;pointer-events:none}
.corner.c1{top:-1px;left:-1px;border-top:2px solid var(--accent);border-left:2px solid var(--accent)}
.corner.c2{top:-1px;right:-1px;border-top:2px solid var(--accent);border-right:2px solid var(--accent)}
.corner.c3{bottom:-1px;left:-1px;border-bottom:2px solid var(--accent);border-left:2px solid var(--accent)}
.corner.c4{bottom:-1px;right:-1px;border-bottom:2px solid var(--accent);border-right:2px solid var(--accent)}
.panel__bar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:9.5px;letter-spacing:.18em;color:var(--text-2)}
.panel__status{color:var(--green);display:flex;gap:9px;align-items:center;font-weight:500}
.fadeable{transition:opacity .18s,transform .18s}
.fadeable.is-out{opacity:0;transform:translateY(8px)}

/* hero (home) */
.hero{position:relative;border-bottom:1px solid var(--line);background-image:radial-gradient(rgba(47,175,251,.08) 1px,transparent 1px);background-size:30px 30px}
.hero__inner{display:grid;grid-template-columns:minmax(0,22fr) minmax(0,25fr);gap:clamp(32px,4vw,72px);align-items:center;padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(48px,5vw,72px)}
.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--font-m);font-size:10.5px;letter-spacing:.24em;color:var(--accent-ink);font-weight:700}
.eyebrow i{width:8px;height:8px;background:var(--accent);flex:none}
.hero h1{margin-top:26px;font-size:clamp(30px,4vw,54px);line-height:1.1;font-weight:700;font-stretch:120%;text-transform:uppercase;letter-spacing:-.01em;color:var(--text)}
.hero h1 em{font-style:normal;color:var(--accent-ink)}
.hero__lede{margin-top:26px;max-width:54ch;color:var(--text-2);font-size:16.5px}
.hero__cta{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap}
.panel__body{position:relative;aspect-ratio:10/7.1;overflow:hidden;background:#E6F4FE;border-radius:0 0 6px 6px}
#map{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:crosshair}
.panel__foot{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 16px;border-top:1px solid var(--line);font-family:var(--font-m);font-size:9.5px;letter-spacing:.1em;color:var(--text-3);flex-wrap:wrap}
#map-readout{color:var(--text-2)}
#map-readout b{color:var(--accent-ink);font-weight:600}
#map-readout .ok{color:var(--green)}
.map-tooltip{position:absolute;pointer-events:none;background:rgba(255,255,255,.98);border:1px solid var(--line-strong);box-shadow:0 10px 25px rgba(47,175,251,.12);padding:10px 13px;font-family:var(--font-m);font-size:9.5px;line-height:1.8;letter-spacing:.08em;color:var(--text-2);opacity:0;transition:opacity .15s;z-index:5;min-width:186px;border-radius:4px}
.map-tooltip b{color:var(--accent-ink);display:block;font-size:10.5px;letter-spacing:.12em;margin-bottom:2px}
.map-tooltip .ok{color:var(--green)}
.map-tooltip.is-on{opacity:1}

/* metrics */
.hero__metrics{padding-bottom:clamp(48px,5vw,72px)}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-2)}
.metrics>div{padding:26px 28px;border-left:1px solid var(--line)}
.metrics>div:first-child{border-left:0}
.metric__num{font-family:var(--font-m);font-weight:700;font-size:clamp(26px,3vw,40px);line-height:1;color:var(--text)}
.metric__num .unit{font-size:.44em;color:var(--text-3);font-weight:500;margin-left:5px}
.metric--hot .metric__num{color:var(--accent-ink)}
.metrics label{display:flex;align-items:center;gap:8px;margin-top:12px;font-family:var(--font-m);font-size:9px;letter-spacing:.24em;color:var(--text-3);text-transform:uppercase}
.live-flag{font-style:normal;color:var(--accent-ink);border:1px solid rgba(47,175,251,.4);padding:2px 5px;font-size:8px;letter-spacing:.18em;animation:blinkf 2.2s steps(1) infinite}

/* sections */
.section{border-bottom:1px solid var(--line);padding:clamp(70px,8vw,120px) 0}
.section__head{margin-bottom:clamp(34px,4.5vw,58px)}
.section__meta{display:flex;align-items:center;gap:16px;font-family:var(--font-m);font-size:10px;letter-spacing:.22em}
.section__index{color:var(--accent-ink);font-weight:700}
.section__label{color:var(--text-2)}
.section__rule{flex:1;height:1px;background:var(--line);min-width:40px}
.section__note{color:var(--text-3);letter-spacing:.16em}
.section h2{margin-top:28px;font-size:clamp(30px,4.2vw,62px);font-weight:700;font-stretch:118%;text-transform:uppercase;line-height:1.1;letter-spacing:-.01em;max-width:20ch;color:var(--text)}

/* services master-detail (home) */
.services__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,4vw,64px);align-items:start}
.service-row{display:grid;grid-template-columns:52px 1fr auto;grid-template-rows:auto auto;align-items:center;column-gap:18px;width:100%;text-align:left;background:none;border:none;border-top:1px solid var(--line);padding:24px 4px;cursor:pointer;color:var(--text);font-family:var(--font-d);transition:padding .25s,box-shadow .25s;position:relative}
.services__list .service-row:last-of-type{border-bottom:1px solid var(--line)}
.service-row__idx{grid-row:1;font-family:var(--font-m);font-size:11px;color:var(--text-3);transition:color .25s}
.service-row__name{grid-row:1;font-size:clamp(18px,1.9vw,26px);font-weight:700;font-stretch:112%;text-transform:uppercase;line-height:1.1;transition:color .25s}
.service-row__hint{grid-row:2;grid-column:2;font-family:var(--font-m);font-size:9.5px;letter-spacing:.16em;color:var(--text-3);margin-top:7px;text-transform:uppercase}
.service-row__arrow{grid-row:1/span 2;color:var(--text-3);opacity:0;transform:translateX(-8px);transition:all .35s var(--ease)}
.service-row:hover .service-row__name{color:var(--accent-ink)}
.service-row.is-active{box-shadow:inset 3px 0 0 var(--accent);padding-left:18px;background:rgba(47,175,251,.04)}
.service-row.is-active .service-row__idx{color:var(--accent-ink)}
.service-row.is-active .service-row__name{color:var(--accent-ink)}
.service-row.is-active .service-row__arrow{opacity:1;transform:none;color:var(--accent-ink)}
.services__panel{position:sticky;top:110px;border:1px solid var(--line-strong);background:var(--bg-2);min-height:480px;box-shadow:0 10px 30px rgba(47,175,251,.05);border-radius:6px}
.detail{padding:34px;position:relative;transition:opacity .22s,transform .22s}
.detail.is-out{opacity:0;transform:translateY(8px)}
.detail__watermark{position:absolute;top:2px;right:16px;font-family:var(--font-m);font-weight:700;font-size:118px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(47,175,251,.3);user-select:none}
.detail__tag{font-family:var(--font-m);font-size:9.5px;letter-spacing:.24em;color:var(--accent-ink);font-weight:700}
.detail h3{font-stretch:115%;font-size:25px;font-weight:700;text-transform:uppercase;margin:16px 0 12px;line-height:1.1;color:var(--text)}
.detail>p{color:var(--text-2);font-size:14.5px;max-width:46ch}
.detail__fig{margin:24px 0;border:1px solid var(--line);background:#F0F8FF;padding:16px;border-radius:4px}
.detail__fig svg{width:100%;height:auto;display:block}
.spec{border-top:1px solid var(--line)}
.spec__row{display:grid;grid-template-columns:128px 1fr;gap:16px;padding:9px 0;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:10.5px;letter-spacing:.08em}
.spec__row dt{color:var(--text-3)}
.spec__row dd{color:var(--text)}
.detail .btn{margin-top:26px}

/* network board */
.net__toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filters button{font-family:var(--font-m);font-size:9.5px;letter-spacing:.18em;padding:9px 16px;background:none;border:1px solid var(--line-strong);color:var(--text-2);cursor:pointer;transition:all .35s var(--ease);border-radius:3px}
.filters button:hover{border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.05)}
.filters button.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:700}
.net__count{font-family:var(--font-m);font-size:10px;letter-spacing:.2em;color:var(--text-3)}
.net__count b{color:var(--green);font-weight:600}
.board{border:1px solid var(--line-strong);background:var(--bg-2);box-shadow:0 10px 30px rgba(47,175,251,.05);border-radius:6px;overflow:hidden}
.net-grid{display:grid;grid-template-columns:56px 1.55fr 1.05fr 88px 152px 72px 26px;gap:14px;align-items:center}
.board__head{padding:12px 20px;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:9px;letter-spacing:.22em;color:var(--text-3);background:var(--bg-3)}
.net-row{border-bottom:1px solid var(--line)}
.board .net-row:last-child{border-bottom:0}
.net-row.is-hidden{display:none}
.net-row__main{width:100%;padding:18px 20px;cursor:pointer;background:none;color:var(--text);font-family:var(--font-d);text-align:left;transition:background .2s}
.net-row__main:hover{background:rgba(47,175,251,.03)}
.net-row.is-open .net-row__main{background:var(--bg-3)}
.n-idx{font-family:var(--font-m);font-size:11px;color:var(--accent-ink);letter-spacing:.08em;font-weight:700}
.n-city{font-weight:700;font-stretch:110%;font-size:16.5px;text-transform:uppercase;line-height:1.15;color:var(--text)}
.n-city i{display:block;font-style:normal;font-family:var(--font-m);font-size:9px;letter-spacing:.2em;color:var(--text-3);margin-top:4px;font-weight:400}
.n-dc{font-family:var(--font-m);font-size:9.5px;letter-spacing:.14em;color:var(--text-2)}
.n-lat{font-family:var(--font-m);font-size:12px;color:var(--text-2)}
.n-lat b{font-weight:700;color:var(--text);transition:color .3s}
.n-lat b.tick{color:var(--accent-ink)}
.n-status{font-family:var(--font-m);font-size:9px;letter-spacing:.16em;color:var(--green);display:flex;align-items:center;gap:9px}
.ping-btn{font-family:var(--font-m);font-size:9px;letter-spacing:.16em;padding:8px 0;width:100%;background:none;border:1px solid var(--line-strong);color:var(--text-2);cursor:pointer;transition:all .35s var(--ease);border-radius:3px}
.ping-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.05)}
.ping-btn:disabled{opacity:.35;cursor:default}
.n-chev{color:var(--text-3);transition:transform .35s;justify-self:end}
.net-row.is-open .n-chev{transform:rotate(180deg);color:var(--accent-ink)}
.net-row__detail{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.4,0,.2,1)}
.net-row__detail>div{overflow:hidden}
.net-row.is-open .net-row__detail{grid-template-rows:1fr}
.net-row__detail-in{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;padding:6px 20px 26px 76px;background:var(--bg-3)}
.net-row__detail-in p{color:var(--text-2);font-size:14px;max-width:52ch}
.n-stats{list-style:none}
.n-stats li{font-family:var(--font-m);font-size:10px;letter-spacing:.1em;color:var(--text);padding:7px 0;border-bottom:1px solid var(--line);display:flex;gap:14px}
.n-stats li span{color:var(--text-3);min-width:86px}

/* terminal */
.terminal{margin-top:24px;border:1px solid var(--line-strong);background:#0F172A;box-shadow:0 10px 30px rgba(47,175,251,.1);border-radius:6px;display:flex;flex-direction:column}
.terminal__bar{display:flex;justify-content:space-between;gap:14px;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.1);font-family:var(--font-code);font-size:9.5px;letter-spacing:.16em;color:#94A3B8}
.terminal__bar b{color:#2faffb;font-weight:500}
.terminal__body{height:196px;overflow-y:auto;padding:16px 18px;font-family:var(--font-code);font-size:12px;line-height:1.9;color:#E2E8F0}
.terminal--tall .terminal__body{height:320px}
.t-line{white-space:pre-wrap;word-break:break-word}
.t-line b{color:#2faffb;font-weight:500}
.t-cmd{color:#FFFFFF}
.t-cmd::before{content:'$ ';color:#2faffb}
.t-dim{color:#94A3B8}
.t-hi{color:#2faffb}
.t-ok{color:#96d12a}
.t-cursor{display:inline-block;width:8px;height:14px;background:#2faffb;vertical-align:-2px;margin-left:3px;animation:tblink 1s steps(1) infinite}

/* platinum (home) */
.platinum{background:linear-gradient(135deg, #5bc3fd 0%, var(--accent) 45%, #1f9cf0 100%);color:var(--on-accent);position:relative}
.platinum__stripe{height:12px;background:repeating-linear-gradient(-45deg,#0B1220 0 12px,var(--accent) 12px 24px)}
.platinum__inner{max-width:1440px;margin:auto;padding:clamp(64px,8vw,110px) var(--pad) clamp(72px,8vw,116px)}
.platinum__eyebrow{font-family:var(--font-m);font-size:10.5px;letter-spacing:.26em;font-weight:700}
.platinum h2{margin-top:22px;font-size:clamp(38px,5.8vw,86px);font-weight:700;font-stretch:120%;text-transform:uppercase;line-height:1.1;letter-spacing:-.01em;color:var(--on-accent)}
.platinum__row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.platinum__row>p{margin-top:26px;max-width:56ch;font-size:16.5px;line-height:1.65;color:rgba(3,17,31,.9);font-weight:600}
.platinum__row .btn{margin-top:30px}
.platinum__tokens{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px;list-style:none}
.platinum__tokens li{border:1.5px solid var(--on-accent);padding:10px 18px;font-family:var(--font-m);font-size:11px;letter-spacing:.16em;font-weight:700;transition:all .3s var(--ease);cursor:default;color:var(--on-accent);border-radius:3px}
.platinum__tokens li:hover{background:var(--on-accent);color:var(--accent)}

/* testimonials */
.quote{border:1px solid var(--line-strong);background:var(--bg-2);padding:clamp(28px,4vw,60px);position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(47,175,251,.05);border-radius:6px}
.quote__mark{color:var(--accent-ink);font-weight:700;font-size:88px;line-height:.55;font-stretch:125%;user-select:none;opacity:.25}
.quote__slide{transition:opacity .3s,transform .3s;padding-top:26px}
.quote__slide.is-out{opacity:0;transform:translateY(10px)}
.quote__slide blockquote{font-size:clamp(20px,2.5vw,34px);font-weight:500;line-height:1.4;max-width:26ch;min-height:5.4em;color:var(--text)}
.quote__meta{display:flex;justify-content:space-between;align-items:center;margin-top:34px;gap:20px;flex-wrap:wrap}
.quote__who{display:flex;gap:16px;align-items:center}
.quote__avatar{width:52px;height:52px;border:1px solid var(--accent);color:var(--accent-ink);font-family:var(--font-m);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;background:rgba(47,175,251,.06);flex:none;border-radius:4px}
.quote__who b{display:block;font-stretch:112%;letter-spacing:.05em;font-size:14px;text-transform:uppercase;color:var(--text)}
.quote__who span{font-family:var(--font-m);font-size:9.5px;letter-spacing:.18em;color:var(--text-3)}
.quote__controls{display:flex;align-items:center;gap:10px}
.quote__idx{font-family:var(--font-m);font-size:10.5px;color:var(--text-3);letter-spacing:.16em;margin-right:8px}
.quote__btn{width:44px;height:44px;border:1px solid var(--line-strong);background:none;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease);border-radius:4px}
.quote__btn:hover{border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.05)}
.quote__progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--line)}
.quote__progress i{position:absolute;left:0;top:0;bottom:0;background:var(--accent);width:0}
.quote__progress i.is-run{animation:qprog 6s linear forwards}
.quote:hover .quote__progress i{animation-play-state:paused}
@keyframes qprog{from{width:0}to{width:100%}}

/* FAQ */
.faq__list{max-width:880px}
.faq-item{border-top:1px solid var(--line)}
.faq__list .faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item__q{width:100%;display:grid;grid-template-columns:60px 1fr 38px;gap:18px;align-items:center;background:none;border:none;padding:22px 4px;cursor:pointer;text-align:left;color:var(--text);font-family:var(--font-d);transition:all .35s var(--ease)}
.faq__idx{font-family:var(--font-m);font-size:10px;color:var(--accent-ink);letter-spacing:.16em;font-weight:700}
.faq-item__q .qtext{font-size:clamp(15px,1.6vw,18px);font-weight:600;font-stretch:108%;line-height:1.3;transition:color .2s;color:var(--text)}
.faq-item__q:hover .qtext{color:var(--accent-ink)}
.faq-icon{width:34px;height:34px;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease);color:var(--text-2);background:var(--bg-2);border-radius:4px}
.faq-item.is-open .faq-icon{transform:rotate(45deg);border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.05)}
.faq-item__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}
.faq-item__a>div{overflow:hidden}
.faq-item.is-open .faq-item__a{grid-template-rows:1fr}
.faq-item__a p{padding:2px 4px 26px 78px;color:var(--text-2);font-size:14.5px;max-width:64ch}

/* ============ SERVICE PAGE HERO ============ */
.svc-hero{border-bottom:1px solid var(--line);position:relative;overflow:hidden;background-image:radial-gradient(rgba(47,175,251,.07) 1px,transparent 1px);background-size:30px 30px}
.svc-hero__wm{position:absolute;top:-14px;right:1vw;font-weight:700;font-stretch:125%;font-size:clamp(150px,22vw,300px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(47,175,251,.34);pointer-events:none;user-select:none}
.svc-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(32px,4vw,72px);align-items:start;padding-top:clamp(52px,6.5vw,92px);padding-bottom:clamp(44px,5vw,76px)}
.svc-hero h1{margin-top:24px;font-size:clamp(30px,3.9vw,54px);line-height:1.1;font-weight:700;font-stretch:120%;text-transform:uppercase;letter-spacing:-.01em;max-width:18ch;color:var(--text)}
.svc-hero h1 em{font-style:normal;color:var(--accent-ink)}
.file__list .file__row{display:grid;grid-template-columns:96px 1fr;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line);align-items:baseline}
.file__list .file__row:last-child{border-bottom:0}
.file__row dt{font-family:var(--font-m);font-size:8.5px;letter-spacing:.22em;color:var(--text-3)}
.file__row dd{font-family:var(--font-m);font-size:10.5px;letter-spacing:.12em;color:var(--text);font-weight:500}
.file__link{display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:10.5px;letter-spacing:.14em;color:var(--text);text-decoration:none;transition:all .35s var(--ease)}
.file__link:last-child{border-bottom:0}
.file__link i{color:var(--accent-ink);font-style:normal;font-weight:700}
.file__link svg{margin-left:auto;opacity:0;transform:translateX(-6px);transition:all .35s var(--ease);color:var(--accent-ink)}
.file__link:hover{color:var(--accent-ink);background:rgba(47,175,251,.05)}
.file__link:hover svg{opacity:1;transform:none}

/* directory */
.dir{border-top:1px solid var(--line)}
.dir__row{display:grid;grid-template-columns:64px 1fr auto 36px;gap:24px;align-items:center;padding:clamp(22px,3vw,34px) 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:background .25s,padding .25s}
.dir__row:hover{background:rgba(47,175,251,.035);padding-left:18px}
.dir__idx{font-family:var(--font-m);font-size:11px;color:var(--accent-ink);letter-spacing:.1em;font-weight:700}
.dir__name{font-size:clamp(21px,3.2vw,38px);font-weight:700;font-stretch:118%;text-transform:uppercase;line-height:1;color:var(--text);transition:color .25s}
.dir__row:hover .dir__name{color:var(--accent-ink)}
.dir__hint{display:block;font-family:var(--font-m);font-size:9.5px;letter-spacing:.18em;color:var(--text-3);margin-top:9px}
.dir__meta{font-family:var(--font-m);font-size:9.5px;color:var(--text-3);text-align:right;letter-spacing:.14em;line-height:2}
.dir__arrow{color:var(--text-3);transition:all .35s var(--ease)}
.dir__row:hover .dir__arrow{color:var(--accent-ink);transform:translateX(5px)}

/* ledger + steps */
.ledger{border-top:1px solid var(--line)}
.ledger__row{display:grid;grid-template-columns:56px 230px 1fr;gap:22px;padding:20px 4px;border-bottom:1px solid var(--line);transition:background .2s,padding .2s;align-items:baseline}
.ledger__row:hover{background:rgba(47,175,251,.025);padding-left:14px}
.ledger__idx{font-family:var(--font-m);font-size:10.5px;color:var(--accent-ink);letter-spacing:.1em;font-weight:700}
.ledger__term{font-weight:700;font-stretch:110%;text-transform:uppercase;font-size:15px;line-height:1.2;color:var(--text)}
.ledger__det{color:var(--text-2);font-size:14.5px;max-width:70ch}
.steps{position:relative;max-width:840px}
.steps::before{content:'';position:absolute;left:19px;top:10px;bottom:10px;width:1px;background:var(--line)}
.step{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:20px 0;position:relative}
.step__dot{width:13px;height:13px;background:var(--bg);border:2px solid var(--accent);margin-top:8px;justify-self:center;border-radius:50%}
.step__head{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}
.step__idx{font-family:var(--font-m);font-size:10.5px;color:var(--accent-ink);letter-spacing:.14em;font-weight:700}
.step h3{font-stretch:112%;font-size:17px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text)}
.step__meta{margin-left:auto;font-family:var(--font-m);font-size:9px;letter-spacing:.18em;color:var(--text-3)}
.step p{color:var(--text-2);margin-top:8px;font-size:14.5px;max-width:62ch}
.pill{font-family:var(--font-m);font-size:9px;letter-spacing:.18em;padding:5px 10px;border:1px solid rgba(77,124,15,.4);color:var(--green);background:rgba(77,124,15,.05);white-space:nowrap;border-radius:2px}
.pill--warn{color:var(--accent-ink);border-color:rgba(47,175,251,.4);background:rgba(47,175,251,.05)}
.pill--bad{color:var(--red);border-color:rgba(239,68,68,.5);background:rgba(239,68,68,.05);animation:blinkf 1s steps(1) infinite}

/* ============ HOSTING SIMULATOR ============ */
.sim__grid{display:grid;grid-template-columns:280px 1fr}
.sim__ctrl{border-right:1px solid var(--line);padding:26px 24px;display:grid;gap:26px;align-content:start;background:var(--bg-2)}
.ctrl__label{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-m);font-size:9px;letter-spacing:.24em;color:var(--text-3);margin-bottom:12px;font-weight:600}
.ctrl__val{color:var(--accent-ink);font-size:10px;letter-spacing:.1em;font-weight:700}
.ctrl__note{font-family:var(--font-m);font-size:9px;letter-spacing:.08em;line-height:1.8;color:var(--text-3);margin-top:10px}
.ctrl-row{display:flex;justify-content:space-between;align-items:center;gap:14px}
.range{-webkit-appearance:none;appearance:none;width:100%;height:3px;background:var(--line-strong);outline:none;cursor:pointer;border-radius:2px}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--accent);border:none;border-radius:50%;cursor:grab;box-shadow:0 2px 6px rgba(47,175,251,.35)}
.range::-moz-range-thumb{width:18px;height:18px;background:var(--accent);border:none;border-radius:50%;cursor:grab}
.switch{width:54px;height:28px;border:1px solid var(--line-strong);background:var(--bg);cursor:pointer;position:relative;padding:0;flex:none;border-radius:14px}
.switch i{position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--text-3);transition:all .35s var(--ease);border-radius:50%}
.switch.is-on{border-color:var(--accent);background:rgba(47,175,251,.1)}
.switch.is-on i{left:29px;background:var(--accent)}
.stepper{display:flex;align-items:stretch;border:1px solid var(--line-strong);background:var(--bg);border-radius:4px;overflow:hidden}
.stepper button{width:40px;background:none;border:none;color:var(--text);font-family:var(--font-m);font-size:15px;cursor:pointer;transition:color .3s var(--ease)}
.stepper button:hover{color:var(--accent-ink);background:rgba(47,175,251,.05)}
.stepper span{flex:1;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--line);border-right:1px solid var(--line);font-family:var(--font-m);font-size:12px;color:var(--accent-ink);font-weight:700}
.sim__viz{padding:24px;display:grid;gap:16px;align-content:start}
.sim__chart{position:relative;border:1px solid var(--line);background:var(--bg);height:238px;overflow:hidden;border-radius:4px}
.sim__chart canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.sim__legend{display:flex;gap:22px;flex-wrap:wrap;font-family:var(--font-m);font-size:9px;letter-spacing:.16em;color:var(--text-3)}
.lg{display:inline-block;width:14px;height:3px;margin-right:8px;vertical-align:middle;border-radius:1px}
.lg--accent{background:var(--accent)}
.lg--green{background:var(--green)}
.legend-note{margin-left:auto}
.sim__slots{display:grid;grid-template-columns:repeat(12,1fr);gap:6px}
.sim__slots i{aspect-ratio:1;border:1px solid var(--line);border-radius:3px;transition:background .35s,border-color .35s;background:var(--bg-2)}
.sim__slots i.on{background:var(--accent);border-color:var(--accent)}
.sim__read{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:var(--bg-2)}
.sim__read>div{padding:18px 24px;border-left:1px solid var(--line)}
.sim__read>div:first-child{border-left:0}
.sim__read label{display:block;font-family:var(--font-m);font-size:8.5px;letter-spacing:.22em;color:var(--text-3);margin-bottom:8px}
.sim__read b{font-family:var(--font-m);font-weight:700;font-size:24px;line-height:1;color:var(--text)}
.sim__read small{font-family:var(--font-m);font-size:9px;color:var(--text-3);margin-left:5px;letter-spacing:.1em}
.sim__read b.warn{color:var(--accent-ink)}
.sim__read b.bad{color:var(--red)}

/* ============ DEV PIPELINE ============ */
.pipe__toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:6px}
.pipe__count{font-family:var(--font-m);font-size:10px;letter-spacing:.2em;color:var(--text-3)}
.pipe__count b{color:var(--accent-ink);font-weight:600}
.pipe__track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);margin:36px 0 30px}
.pipe__railbox{position:absolute;top:19px;left:10%;right:10%;height:3px;background:var(--line);border-radius:2px}
#pipe-fill{position:absolute;left:0;top:0;height:3px;width:0;background:var(--accent);transition:width .5s cubic-bezier(.6,0,.3,1)}
.pipe__node{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:11px;color:var(--text);font-family:var(--font-d);position:relative;z-index:1;padding:0 4px}
.pipe__mark{width:40px;height:40px;border:1px solid var(--line-strong);background:var(--bg);display:flex;align-items:center;justify-content:center;font-family:var(--font-m);font-size:11px;color:var(--text-3);transition:all .35s var(--ease);border-radius:50%}
.pipe__node:hover .pipe__mark{border-color:var(--accent);color:var(--accent-ink)}
.pipe__node.is-done .pipe__mark{border-color:var(--accent);color:var(--accent-ink);background:rgba(47,175,251,.06)}
.pipe__node.is-active .pipe__mark{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:700}
.pipe__name{font-size:11.5px;font-weight:700;font-stretch:112%;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);transition:all .35s var(--ease);text-align:center}
.pipe__node.is-active .pipe__name,.pipe__node.is-done .pipe__name{color:var(--text)}
.pipe__dur{font-family:var(--font-m);font-size:8.5px;letter-spacing:.16em;color:var(--text-3)}
.pipe__body{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}
.pipe-detail{padding:32px;overflow:hidden;background:var(--bg-2)}
.pipe-detail h3{font-stretch:115%;font-size:24px;font-weight:700;text-transform:uppercase;margin:14px 0 10px;line-height:1.1;color:var(--text)}
.pipe-detail>p{color:var(--text-2);font-size:14.5px;max-width:48ch}
.pd-items{list-style:none;margin-top:20px}
.pd-items li{font-family:var(--font-m);font-size:10.5px;letter-spacing:.1em;color:var(--text);padding:9px 0;border-bottom:1px solid var(--line);display:flex;gap:12px}
.pd-items li i{color:var(--accent-ink);font-style:normal;font-weight:700}

/* handover */
.handover{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,64px);align-items:start}
.handover h2{font-size:clamp(30px,4vw,56px);color:var(--text)}
.handover h2 em{font-style:normal;color:var(--accent-ink)}
.handover__list{list-style:none;border-top:1px solid var(--line)}
.handover__list li{font-family:var(--font-m);font-size:11px;letter-spacing:.12em;color:var(--text);padding:13px 0;border-bottom:1px solid var(--line);display:flex;gap:14px}
.handover__list li i{color:var(--accent-ink);font-style:normal;font-weight:700}

/* ============ CMS CUSTOMIZER ============ */
.cust{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}
.cust__ctrl{border:1px solid var(--line-strong);background:var(--bg-2);padding:26px;display:grid;gap:28px;position:sticky;top:110px;border-radius:6px}
.swatches{display:flex;gap:10px}
.swatch{width:34px;height:34px;border:1px solid var(--line-strong);cursor:pointer;background:var(--sw);transition:all .35s var(--ease);border-radius:4px}
.swatch:hover{transform:translateY(-2px)}
.swatch.is-active{outline:2px solid var(--accent);outline-offset:2px}
.seg{display:flex;border:1px solid var(--line-strong);border-radius:4px;overflow:hidden;background:var(--bg)}
.seg button{flex:1;padding:10px 4px;background:none;border:none;border-left:1px solid var(--line);color:var(--text-2);font-family:var(--font-m);font-size:9px;letter-spacing:.14em;cursor:pointer;transition:all .35s var(--ease)}
.seg button:first-child{border-left:0}
.seg button:hover{color:var(--accent-ink);background:rgba(47,175,251,.04)}
.seg button.is-active{background:var(--accent);color:var(--on-accent);font-weight:700}
.demo{border:1px solid var(--line-strong);background:var(--bg-2);border-radius:6px;overflow:hidden}
.demo__bar{display:flex;align-items:center;gap:14px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg-3)}
.demo__dots{display:flex;gap:6px}
.demo__dots i{width:7px;height:7px;background:var(--line-strong);border-radius:50%}
.demo__url{flex:1;font-family:var(--font-m);font-size:9.5px;color:var(--text-3);letter-spacing:.12em;border:1px solid var(--line);padding:5px 10px;background:var(--bg);border-radius:3px}
.demo__site{--d-accent:#2faffb;--d-font:var(--font-d);--d-bg:#FFFFFF;--d-fg:#0F172A;--d-line:rgba(15,23,42,.12);--d-rad:0px;background:var(--d-bg);color:var(--d-fg);font-family:var(--d-font);padding:clamp(22px,3vw,44px);transition:background .35s,color .35s}
.demo__site.is-dark{--d-bg:#0F172A;--d-fg:#F8FAFC;--d-line:rgba(248,250,252,.15)}
.ds-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:2px solid var(--d-fg);gap:16px;flex-wrap:wrap}
.ds-logo{font-weight:700;letter-spacing:.16em;font-size:13px}
.ds-nav{display:flex;gap:18px;font-size:10px;letter-spacing:.22em;font-weight:600}
.ds-nav span{cursor:pointer;transition:color .3s var(--ease)}
.ds-nav span:hover{color:var(--d-accent)}
.ds-hero{padding:32px 0 26px;max-width:540px}
.ds-kicker{font-size:9.5px;letter-spacing:.3em;color:var(--d-accent);font-weight:700}
.ds-hero h4{font-size:clamp(26px,3.2vw,40px);line-height:1.05;margin:12px 0;font-weight:700}
.ds-stand{font-size:13.5px;line-height:1.65;opacity:.78;max-width:46ch}
.ds-btn{display:inline-block;margin-top:22px;background:var(--d-accent);color:var(--d-on,#FFFFFF);padding:12px 22px;font-size:10px;font-weight:700;letter-spacing:.2em;border-radius:var(--d-rad);cursor:pointer}
.ds-img{display:block;width:100%;filter:saturate(.95);border-radius:var(--d-rad)}
.ds-list{margin-top:6px}
.ds-list span{display:flex;gap:14px;align-items:baseline;padding:13px 0;border-bottom:1px solid var(--d-line);font-size:12.5px;font-weight:600}
.ds-list i{font-style:normal;font-size:9.5px;color:var(--d-accent)}
.ds-list em{font-style:normal;margin-left:auto;font-size:9px;letter-spacing:.18em;opacity:.6}
.tokencode{margin-top:22px;border:1px solid var(--line);background:var(--bg-2);padding:18px 22px;font-family:var(--font-code);font-size:12px;line-height:2;color:var(--text-2);overflow-x:auto;border-radius:6px}
.tokencode .k{color:var(--text-3)}
.tokencode .v{color:var(--accent-ink)}

/* matrix */
.matrixwrap{border:1px solid var(--line-strong);overflow-x:auto;border-radius:6px;background:var(--bg-2)}
.matrix{width:100%;min-width:760px;border-collapse:collapse}
.matrix th{font-family:var(--font-m);font-size:9px;letter-spacing:.2em;color:var(--text-3);text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);font-weight:600;white-space:nowrap;background:var(--bg-3)}
.matrix td{padding:15px 18px;border-bottom:1px solid var(--line);text-align:center}
.matrix tbody tr:last-child td{border-bottom:0}
.matrix tbody tr{transition:background .2s}
.matrix tbody tr:hover{background:rgba(47,175,251,.025)}
.matrix td.plat{text-align:left}
.matrix td.plat b{font-weight:700;font-stretch:112%;text-transform:uppercase;font-size:15px;letter-spacing:.02em;color:var(--text)}
.matrix td.plat i{display:block;font-style:normal;font-family:var(--font-m);font-size:8.5px;letter-spacing:.18em;color:var(--text-3);margin-top:3px}
.matrix .yes{color:var(--accent-ink)}
.matrix .no{color:var(--text-3);font-family:var(--font-m)}
.matrix__foot{font-family:var(--font-m);font-size:9px;letter-spacing:.14em;color:var(--text-3);margin-top:14px}
.plat-cta{border:1px solid rgba(47,175,251,.3);background:rgba(47,175,251,.03);padding:clamp(26px,4vw,44px);display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;transition:background .25s;border-radius:6px}
.plat-cta:hover{background:rgba(47,175,251,.06)}
.plat-cta h3{font-size:clamp(22px,2.6vw,32px);font-weight:700;font-stretch:118%;text-transform:uppercase;line-height:1.05;color:var(--text)}
.plat-cta p{color:var(--text-2);margin-top:12px;max-width:60ch;font-size:14.5px}
.plat-cta .tag{font-family:var(--font-m);font-size:10px;letter-spacing:.26em;color:var(--accent-ink);display:block;margin-bottom:12px;font-weight:700}

/* ============ SEO ============ */
.serp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;align-items:start}
.serp__form{display:grid;gap:22px}
.field label{display:block;font-family:var(--font-m);font-size:9px;letter-spacing:.22em;color:var(--text-3);margin-bottom:9px;text-transform:uppercase;font-weight:600}
.field input{width:100%;background:var(--bg-2);border:1px solid var(--line-strong);color:var(--text);padding:13px 14px;font-family:var(--font-m);font-size:12.5px;transition:border-color .2s;border-radius:4px}
.field input:focus{border-color:var(--accent);outline:none}
.serp .field input{background:#FFFFFF}
.meter{margin-top:10px}
.meter i{display:block;height:3px;width:0;background:var(--accent);transition:width .25s,background .25s;border-radius:2px}
.meter i.ok{background:var(--green)}
.meter i.over{background:var(--red)}
.meter span{display:block;margin-top:6px;font-family:var(--font-m);font-size:9px;letter-spacing:.16em;color:var(--text-3);text-align:right}
.score{border:1px solid var(--line-strong);background:var(--bg-2);padding:22px 24px;display:grid;gap:16px;border-radius:6px}
.score__top{display:flex;align-items:baseline;gap:12px}
.score__num{font-family:var(--font-m);font-weight:700;font-size:42px;line-height:1;color:var(--accent-ink)}
.score__max{font-family:var(--font-m);font-size:12px;color:var(--text-3)}
.score__verdict{margin-left:auto;font-family:var(--font-m);font-size:10px;letter-spacing:.2em;color:var(--text-2);font-weight:600}
.score__bar{height:3px;background:var(--line);border-radius:2px;overflow:hidden}
.score__bar i{display:block;height:3px;width:0;background:var(--accent);transition:width .4s}
.score__bar i.ok{background:var(--green)}
.score__bar i.over{background:var(--red)}
.serp__preview{border:1px solid var(--line-strong);background:var(--bg-2);padding:30px;position:sticky;top:110px;border-radius:6px}
.serp__cap{font-family:var(--font-m);font-size:9px;letter-spacing:.2em;color:var(--text-3);margin-bottom:18px;display:flex;gap:10px;align-items:center}
.gcard{background:#FFFFFF;padding:24px 26px;max-width:540px;font-family:Arial,Helvetica,sans-serif;color:#202124;border:1px solid var(--line);border-radius:6px;box-shadow:0 2px 12px rgba(15,23,42,.05)}
.gcard__site{display:flex;gap:10px;align-items:center;font-size:14px;margin-bottom:4px;color:#202124}
.gcard__fav{width:24px;height:24px;border-radius:4px;background:var(--accent);color:var(--on-accent);font-family:var(--font-m);font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;flex:none}
.gcard__title{color:#1a0dab;font-size:20px;line-height:1.3;margin:4px 0;cursor:pointer}
.gcard__title:hover{text-decoration:underline}
.gcard__url{color:#4d5157;font-size:14px;margin-bottom:10px;word-break:break-all}
.gcard__desc{color:#4d5157;font-size:14px;line-height:1.6}
.gcard__desc b,.gcard__title b,.gcard__url b{font-weight:700}
.vitals{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line-strong);background:var(--bg-2);border-radius:6px}
.vital{padding:34px 26px;border-left:1px solid var(--line);text-align:center;display:grid;gap:14px;justify-items:center}
.vital:first-child{border-left:0}
.vital__track,.vital__arc{fill:none;stroke-width:6;stroke-linecap:round}
.vital__track{stroke:rgba(15,23,42,.08)}
.vital__arc{stroke:var(--green);transition:stroke-dasharray 1.1s cubic-bezier(.3,.7,.3,1)}
@media (prefers-reduced-motion:reduce){.vital__arc{transition:none}}
.vital svg{width:128px;height:128px}
.vital__val{font-family:var(--font-m);font-weight:700;font-size:30px;line-height:1;color:var(--text)}
.vital__val small{font-size:12px;color:var(--text-3);font-weight:500;margin-left:4px}
.vital__name{font-family:var(--font-m);font-size:10px;letter-spacing:.24em;color:var(--text-2);font-weight:700}
.vital__good{font-family:var(--font-m);font-size:9px;letter-spacing:.16em;color:var(--green);font-weight:600}
.vitals__run{display:flex;justify-content:center;margin-top:26px}

/* ============ PAGINATION ============ */
.pgnav__all{border-top:1px solid var(--line);text-align:center;padding:15px;background:var(--bg-2)}
.pgnav__all a{font-family:var(--font-m);font-size:9.5px;letter-spacing:.22em;color:var(--text-3);text-decoration:none;transition:color .2s;font-weight:600}
.pgnav__all a:hover{color:var(--accent-ink)}
.pgnav{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.pgnav a{padding:clamp(24px,3.5vw,42px) var(--pad);text-decoration:none;display:flex;flex-direction:column;gap:9px;transition:background .25s;background:var(--bg-2)}
.pgnav a:hover{background:rgba(47,175,251,.04)}
.pgnav a span{font-family:var(--font-m);font-size:9px;letter-spacing:.22em;color:var(--text-3);font-weight:600}
.pgnav a b{font-stretch:118%;font-weight:700;text-transform:uppercase;font-size:clamp(16px,2vw,24px);line-height:1.05;color:var(--text);transition:color .3s var(--ease)}
.pgnav a:hover b{color:var(--accent-ink)}
.pgnav .next{text-align:right;border-left:1px solid var(--line);align-items:flex-end}
.pgnav .empty{cursor:default}
.pgnav .empty:hover{background:var(--bg-2)}
.pgnav .empty b{color:var(--text-3)}

/* ============ FOOTER ============ */
.site-footer{overflow:hidden;background:#FFFFFF;border-top:1px solid var(--line)}
.footer__top{display:grid;grid-template-columns:1.2fr 2fr;gap:56px;padding-top:clamp(56px,6vw,88px);padding-bottom:52px}
.footer__status{margin-top:26px;font-family:var(--font-m);font-size:10px;letter-spacing:.16em;color:var(--green);display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-weight:500}
.footer__status .dim{color:var(--text-3)}
.footer__mail{display:inline-block;margin-top:16px;font-family:var(--font-m);font-size:11px;letter-spacing:.14em;color:var(--text-2);text-decoration:none;transition:color .2s;font-weight:600}
.footer__mail:hover{color:var(--accent-ink)}
.footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:32px}
.footer__cols h4{font-family:var(--font-m);font-size:9.5px;letter-spacing:.26em;color:var(--text-3);margin-bottom:18px;font-weight:700}
.footer__cols a{display:block;color:var(--text-2);text-decoration:none;font-size:14px;padding:5px 0;transition:all .35s var(--ease);cursor:pointer}
.footer__cols a:hover{color:var(--accent-ink);transform:translateX(4px)}
.footer__word{font-stretch:125%;font-weight:700;font-size:clamp(40px,10vw,150px);line-height:.8;text-align:center;color:transparent;-webkit-text-stroke:1px rgba(47,175,251,.5);text-transform:uppercase;letter-spacing:.02em;user-select:none;white-space:nowrap;transition:-webkit-text-stroke-color .4s}
.footer__word:hover{-webkit-text-stroke-color:rgba(47,175,251,.95)}
.footer__bar{border-top:1px solid var(--line);margin-top:-4px;padding-top:18px;padding-bottom:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--font-m);font-size:9.5px;letter-spacing:.16em;color:var(--text-3)}
.footer__bar a{color:var(--text-3);text-decoration:none;transition:color .2s;cursor:pointer}
.footer__bar a:hover{color:var(--accent-ink)}
.footer__bar .links{display:flex;gap:24px}

/* ============ MODAL & TOAST ============ */
.modal{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;opacity:0;transition:all .35s var(--ease)}
.modal.is-open{visibility:visible;opacity:1}
.modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.modal__panel{position:relative;width:min(520px,100%);background:var(--bg-2);border:1px solid var(--line-strong);transform:translateY(18px) scale(.98);transition:all .35s var(--ease);border-radius:6px;box-shadow:0 20px 40px rgba(47,175,251,.15)}
.modal.is-open .modal__panel{transform:none}
.modal__bar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:10px;letter-spacing:.22em;color:var(--accent-ink);background:var(--bg-3);font-weight:700;border-radius:6px 6px 0 0}
.modal__bar button{background:none;border:1px solid var(--line-strong);color:var(--text-2);width:32px;height:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease);border-radius:4px}
.modal__bar button:hover{border-color:var(--accent);color:var(--accent-ink)}
.modal form{padding:26px;display:grid;gap:18px}
.subject-tag{font-family:var(--font-m);font-size:10px;letter-spacing:.14em;color:var(--accent-ink);border:1px dashed rgba(47,175,251,.45);padding:9px 13px;display:none;background:rgba(47,175,251,.04);border-radius:4px}
.subject-tag.is-on{display:block}
.field textarea{width:100%;background:#F8FAFC;border:1px solid var(--line-strong);color:var(--text);padding:13px 14px;font-family:var(--font-m);font-size:12.5px;transition:border-color .2s;resize:vertical;min-height:96px;border-radius:4px}
.field textarea:focus{border-color:var(--accent);outline:none;background:#FFFFFF}
.modal .btn{justify-content:center}
.toast{position:fixed;right:24px;bottom:24px;z-index:1000;background:var(--bg-2);border:1px solid var(--line-strong);border-left:3px solid var(--accent);padding:16px 20px;font-family:var(--font-m);font-size:11px;letter-spacing:.1em;color:var(--text);transform:translateY(150%);transition:transform .45s cubic-bezier(.2,.9,.3,1.1);max-width:min(420px,calc(100vw - 48px));border-radius:4px;box-shadow:0 10px 30px rgba(47,175,251,.15)}
.toast.is-on{transform:none}

/* ============ RESPONSIVE ============ */
@media (max-width:1120px){
  .hero__inner{grid-template-columns:1fr}
  .hero__panel{max-width:680px}
  .services__grid{grid-template-columns:1fr}
  .services__panel{position:static}
  .svc-hero__inner{grid-template-columns:1fr}
  .svc-hero .file{max-width:560px}
  .cust{grid-template-columns:1fr}
  .cust__ctrl{position:static}
  .serp{grid-template-columns:1fr}
  .serp__preview{position:static}
  .pipe__body{grid-template-columns:1fr}
  .footer__top{grid-template-columns:1fr;gap:44px}
}
@media (max-width:960px){
  .nav{display:none}
  .menu-btn{display:flex}
  .header__actions .btn--ghost{display:none}
}
@media (max-width:920px){
  .net-grid{grid-template-columns:44px 1.4fr 74px 66px 22px}
  .n-dc,.n-status,.board__head{display:none}
  .board__head.net-grid{display:none}
  .net-row__detail-in{grid-template-columns:1fr;gap:18px;padding:2px 20px 24px}
}
@media (max-width:820px){
  .metrics{grid-template-columns:1fr 1fr}
  .metrics>div{border-left:0;border-top:1px solid var(--line)}
  .metrics>div:nth-child(-n+2){border-top:0}
  .metrics>div:nth-child(even){border-left:1px solid var(--line)}
  .section__note{display:none}
  .sim__grid{grid-template-columns:1fr}
  .sim__ctrl{border-right:0;border-bottom:1px solid var(--line)}
  .sim__read{grid-template-columns:1fr 1fr}
  .sim__read>div:nth-child(odd){border-left:0}
  .sim__read>div{border-top:1px solid var(--line)}
  .sim__read>div:nth-child(-n+2){border-top:0}
  .vitals{grid-template-columns:1fr}
  .vital{border-left:0;border-top:1px solid var(--line)}
  .vital:first-child{border-top:0}
  .pgnav{grid-template-columns:1fr}
  .pgnav .next{border-left:0;border-top:1px solid var(--line);align-items:flex-start;text-align:left}
  .ledger__row{grid-template-columns:44px 1fr}
  .ledger__det{grid-column:2}
  .handover{grid-template-columns:1fr}
  .dir__row{grid-template-columns:44px 1fr 28px}
  .dir__meta{display:none}
  .svc-hero__wm{font-size:150px}
  .terminal__body{height:168px}
  .terminal--tall .terminal__body{height:260px}
}
@media (max-width:640px){
  .faq-item__q{grid-template-columns:40px 1fr 34px}
  .faq-item__a p{padding-left:4px}
  .sim__slots{grid-template-columns:repeat(8,1fr)}
  .pipe__name{font-size:9px;letter-spacing:.04em}
  .detail{padding:26px}
  .detail__watermark{font-size:80px}
  .net-row__detail-in{padding:2px 16px 22px}
  .toast{right:16px;bottom:16px}
}

/* ============================================================
   HI-TECH COLOR LAYER — white + blue dominant, logo colors as accents
============================================================ */
/* logo-color signature strip on top of the header */
.site-header::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--c1) 0%,var(--c4) 38%,var(--c3) 66%,var(--c2) 100%)}
.ticker em{color:var(--c1)}
.ticker i{color:var(--c2)}

/* hero: blue aurora + faint orange/green glow + tech grid */
.hero,.svc-hero{background-color:#fff;background-image:
  radial-gradient(55% 60% at 88% 0%,rgba(47,175,251,.28),transparent 70%),
  radial-gradient(40% 50% at 0% 100%,rgba(255,116,15,.13),transparent 70%),
  radial-gradient(40% 45% at 55% 112%,rgba(150,209,42,.16),transparent 70%),
  linear-gradient(rgba(47,175,251,.10) 1px,transparent 1px),
  linear-gradient(90deg,rgba(47,175,251,.10) 1px,transparent 1px);
  background-size:auto,auto,auto,44px 44px,44px 44px}
.hero h1 em,.svc-hero h1 em,.handover h2 em{font-style:normal;background:linear-gradient(100deg,#0a6fb5 0%,#1a8fe6 50%,#14a8d6 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.eyebrow{width:fit-content;padding:7px 14px 7px 12px;border:1px solid rgba(47,175,251,.45);background:linear-gradient(90deg,rgba(47,175,251,.16),rgba(34,211,238,.06));border-radius:14px;color:var(--c1i)}
.eyebrow i{border-radius:50%;background:var(--c2);box-shadow:0 0 0 3px rgba(255,116,15,.22)}

/* buttons */
.btn--primary{background:var(--grad-deep)}
.btn--primary:hover{background:linear-gradient(135deg,#1581d1 0%,#2faffb 70%,#22d3ee 100%)}
.btn--ghost{border-color:rgba(47,175,251,.55)}

/* section heads */
.section__index{background:var(--grad);color:var(--on-accent);padding:3px 10px;border-radius:3px;letter-spacing:.16em}
.section__rule{background:linear-gradient(90deg,rgba(47,175,251,.5),transparent)}
.section h2::after{content:'';display:block;width:68px;height:4px;margin-top:22px;border-radius:2px;background:linear-gradient(90deg,var(--c1),var(--c4) 55%,var(--c2))}

/* panels: gradient top edge + multi-color corner brackets */
.board{position:relative}
.panel::before,.services__panel::before,.board::before,.quote::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;z-index:5;pointer-events:none;border-radius:6px 6px 0 0;background:linear-gradient(90deg,var(--c,var(--c1)),var(--c4))}
.corner.c2{border-color:var(--c4)}
.corner.c3{border-color:var(--c2)}
.corner.c4{border-color:var(--c3)}
.panel__body{background:linear-gradient(160deg,#DDF0FF 0%,#F4FAFF 60%,#EAFBF1 100%)}

/* four-color rhythm for metrics, lists and steps */
.metrics>div:nth-child(1){box-shadow:inset 0 3px 0 var(--c1)}
.metrics>div:nth-child(2){box-shadow:inset 0 3px 0 var(--c2)}
.metrics>div:nth-child(3){box-shadow:inset 0 3px 0 var(--c3)}
.metrics>div:nth-child(4){box-shadow:inset 0 3px 0 var(--c4)}
.metrics>div:nth-child(1) .metric__num{color:var(--c1i)}
.metrics>div:nth-child(2) .metric__num{color:var(--c2i)}
.metrics>div:nth-child(3) .metric__num{color:var(--c3i)}
.metrics>div:nth-child(4) .metric__num{color:var(--c4i)}
.ledger__row:nth-child(4n+1),.step:nth-child(4n+1),.dir__row:nth-child(4n+1),.faq-item:nth-child(4n+1),.net-row:nth-of-type(4n+1),.handover__list li:nth-child(4n+1),.pd-items li:nth-child(4n+1),.pipe__node:nth-of-type(4n+1),.service-row:nth-of-type(4n+1){--c:var(--c1);--ci:var(--c1i)}
.ledger__row:nth-child(4n+2),.step:nth-child(4n+2),.dir__row:nth-child(4n+2),.faq-item:nth-child(4n+2),.net-row:nth-of-type(4n+2),.handover__list li:nth-child(4n+2),.pd-items li:nth-child(4n+2),.pipe__node:nth-of-type(4n+2),.service-row:nth-of-type(4n+2){--c:var(--c2);--ci:var(--c2i)}
.ledger__row:nth-child(4n+3),.step:nth-child(4n+3),.dir__row:nth-child(4n+3),.faq-item:nth-child(4n+3),.net-row:nth-of-type(4n+3),.handover__list li:nth-child(4n+3),.pd-items li:nth-child(4n+3),.pipe__node:nth-of-type(4n+3),.service-row:nth-of-type(4n+3){--c:var(--c3);--ci:var(--c3i)}
.ledger__row:nth-child(4n),.step:nth-child(4n),.dir__row:nth-child(4n),.faq-item:nth-child(4n),.net-row:nth-of-type(4n),.handover__list li:nth-child(4n),.pd-items li:nth-child(4n),.pipe__node:nth-of-type(4n),.service-row:nth-of-type(4n){--c:var(--c4);--ci:var(--c4i)}
.ledger__idx,.step__idx,.dir__idx,.faq__idx,.n-idx,.handover__list li i,.pd-items li i,.service-row__idx{color:var(--ci,var(--accent-ink))}
.step__dot{border-color:var(--c,var(--accent));box-shadow:0 0 0 4px color-mix(in srgb,var(--c,var(--accent)) 20%,transparent)}
.ledger__row:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--c,#2faffb) 9%,transparent),transparent 75%)}
.dir__row:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--c,#2faffb) 11%,transparent),transparent 75%)}
.dir__row:hover .dir__name,.dir__row:hover .dir__arrow,.faq-item__q:hover .qtext,.service-row:hover .service-row__name{color:var(--ci,var(--accent-ink))}
.faq-item.is-open .faq-icon{border-color:var(--c);color:var(--ci);background:color-mix(in srgb,var(--c) 12%,#fff)}
.service-row.is-active{box-shadow:inset 4px 0 0 var(--c);background:linear-gradient(90deg,color-mix(in srgb,var(--c) 14%,transparent),transparent 75%)}
.service-row.is-active .service-row__idx,.service-row.is-active .service-row__name,.service-row.is-active .service-row__arrow{color:var(--ci)}
.detail__tag{color:var(--ci,var(--accent-ink))}
.detail__watermark{-webkit-text-stroke:1px color-mix(in srgb,var(--c,#2faffb) 45%,transparent)}
.pipe__node.is-done .pipe__mark{border-color:var(--c);color:var(--ci);background:color-mix(in srgb,var(--c) 12%,#fff)}
.pipe__node.is-active .pipe__mark{background:var(--c);border-color:var(--c);color:var(--on-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 25%,transparent)}
#pipe-fill{background:linear-gradient(90deg,var(--c1),var(--c4),var(--c3),var(--c2))}
.lg--green{background:var(--c3)}
.vital__arc{stroke:var(--c3)}
.quote__mark{color:var(--c2);opacity:.4}
.quote__avatar{background:var(--grad);color:var(--on-accent);border:0}
.plat-cta{border-color:rgba(47,175,251,.45);background:linear-gradient(135deg,rgba(47,175,251,.12),rgba(34,211,238,.06) 55%,rgba(255,116,15,.09))}
.terminal{background:#071426}

/* platinum band: deep navy tech panel */
.platinum{background:
  radial-gradient(60% 80% at 85% 0%,rgba(47,175,251,.5),transparent 65%),
  radial-gradient(45% 60% at 4% 100%,rgba(255,116,15,.3),transparent 70%),
  radial-gradient(40% 50% at 60% 112%,rgba(150,209,42,.24),transparent 70%),
  linear-gradient(135deg,#061226 0%,#0a2349 55%,#0b3366 100%);color:#fff;overflow:hidden}
.platinum::after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:44px 44px}
.platinum__inner{position:relative;z-index:1}
.platinum__stripe{height:6px;position:relative;z-index:2;background:linear-gradient(90deg,var(--c1) 0%,var(--c4) 40%,var(--c3) 70%,var(--c2) 100%)}
.platinum__eyebrow{color:var(--c3)}
.platinum h2{color:#fff}
.platinum__row>p{color:rgba(226,238,255,.92);font-weight:500}
.platinum__tokens li{border:1.5px solid rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.07)}
.platinum__tokens li:hover{background:var(--c1);border-color:var(--c1);color:var(--on-accent)}
.platinum .btn--dark{background:var(--grad-deep);color:var(--on-accent);box-shadow:0 6px 20px rgba(47,175,251,.45)}
.platinum .btn--dark:hover{background:linear-gradient(135deg,#1581d1 0%,#2faffb 70%,#22d3ee 100%);box-shadow:0 12px 28px rgba(47,175,251,.55)}

/* footer: navy tech base */
.site-footer{position:relative;border-top:0;color:#cbd5e1;background:radial-gradient(60% 70% at 92% 0%,rgba(47,175,251,.28),transparent 65%),radial-gradient(40% 50% at 0% 100%,rgba(255,116,15,.12),transparent 70%),linear-gradient(180deg,#071a33,#040f1f)}
.site-footer::before{content:'';position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--c1),var(--c4),var(--c3),var(--c2))}
.site-footer .brand__name{color:#fff}
.site-footer .brand__sub{color:#94a3b8}
.footer__status{color:var(--c3)}
.footer__status .dim{color:#94a3b8}
.site-footer .pulse-dot{background:var(--c3)}
.site-footer .pulse-dot::after{border-color:var(--c3)}
.footer__mail{color:#e2f1ff}
.footer__mail:hover{color:var(--c1)}
.footer__cols h4{color:var(--c1)}
.footer__cols a{color:#cbd5e1}
.footer__cols a:hover{color:var(--c1)}
.footer__bar{border-top-color:rgba(255,255,255,.14);color:#94a3b8}
.footer__bar a{color:#94a3b8}
.footer__bar a:hover{color:var(--c1)}

/* ============================================================
   PRICING CARDS (hosting page)
============================================================ */
.pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);align-items:stretch;padding-top:16px}
.plan{--pc:#94a3b8;--pci:#475b73;--pg:linear-gradient(90deg,#cbd5e1,#94a3b8,#e2e8f0);--pt:var(--text);--pt2:var(--text-2);--pt3:var(--text-3);--pl:var(--line);
  position:relative;display:flex;flex-direction:column;background:#fff;color:var(--pt);border:1px solid var(--line-strong);border-radius:16px;padding:32px 26px 22px;overflow:hidden;
  box-shadow:0 14px 34px rgba(15,23,42,.07);transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease)}
.plan::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;background:var(--pg)}
.plan::after{content:'';position:absolute;right:-80px;top:-80px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,var(--pc) 0%,transparent 68%);opacity:.2;pointer-events:none;transition:opacity .5s var(--ease)}
.plan:hover{transform:translateY(-8px);box-shadow:0 28px 56px rgba(15,23,42,.15)}
.plan:hover::after{opacity:.38}
.plan--silver{--pc:#9fb3c8;--pci:#4a6078}
.plan--gold{--pc:#ff740f;--pci:#c2500a;--pg:linear-gradient(90deg,#ffb24d,#ff740f,#ffb24d);border-color:rgba(255,116,15,.6);box-shadow:0 24px 54px rgba(255,116,15,.22);transform:translateY(-14px);background:linear-gradient(180deg,#fff8f1 0%,#fff 38%)}
.plan--gold:hover{transform:translateY(-22px);box-shadow:0 34px 64px rgba(255,116,15,.3)}
.plan--platinum{--pc:#2faffb;--pci:#7fd0ff;--pg:linear-gradient(90deg,#2faffb,#22d3ee,#96d12a);--pt:#fff;--pt2:#d3e3f7;--pt3:#98afcc;--pl:rgba(255,255,255,.15);
  background:radial-gradient(70% 50% at 100% 0%,rgba(47,175,251,.35),transparent 70%),linear-gradient(160deg,#061226 0%,#0a2349 60%,#0b3366 100%);border-color:rgba(47,175,251,.55);box-shadow:0 22px 50px rgba(7,26,51,.35)}
.plan__badge{position:absolute;top:18px;right:16px;z-index:2;font-size:9px;font-weight:700;letter-spacing:.18em;color:#2a1100;padding:6px 12px;border-radius:99px;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.7) 50%,transparent 65%) no-repeat,linear-gradient(135deg,#ff740f,#ffb24d);background-size:250% 100%,100% 100%;animation:shine 3s linear infinite;box-shadow:0 6px 16px rgba(255,116,15,.4)}
@keyframes shine{0%{background-position:150% 0,0 0}100%{background-position:-100% 0,0 0}}
@media (prefers-reduced-motion:reduce){.plan__badge{animation:none}}
.plan__head{display:flex;align-items:center;gap:14px}
.plan--gold .plan__head{margin-top:16px}
@media (max-width:1040px){.plan--gold .plan__head{margin-top:16px}}
.plan__icon{width:46px;height:46px;border-radius:12px;background:var(--pg);display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 6px 16px color-mix(in srgb,var(--pc) 40%,transparent)}
.plan__icon svg{width:26px;height:26px}
.plan__name{font-size:22px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.1;color:var(--pt)}
.plan__tag{display:block;font-size:9.5px;letter-spacing:.24em;color:var(--pci);font-weight:600;margin-top:5px}
.plan__price{display:flex;align-items:flex-start;gap:4px;margin:26px 0 6px}
.plan__cur{font-size:24px;font-weight:600;color:var(--pci);margin-top:10px}
.plan__amt{font-size:68px;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--pt)}
.plan--gold .plan__amt{background:linear-gradient(135deg,#ff740f,#e8530a);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.plan--platinum .plan__amt{background:linear-gradient(135deg,#fff,#8fdcff);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.plan__per{align-self:flex-end;margin:0 0 10px 6px;font-size:13px;font-weight:500;color:var(--pt3)}
.plan__note{font-size:11px;color:var(--pt3);letter-spacing:.04em;margin-bottom:20px}
.plan__cta{width:100%;justify-content:center}
.plan--silver .plan__cta{background:#0F172A;color:#fff;border-color:#0F172A}
.plan--silver .plan__cta:hover{background:#1E293B}
.plan--gold .plan__cta{background:linear-gradient(135deg,#ff740f,#ffa23d);color:#2a1100;border:0;box-shadow:0 8px 22px rgba(255,116,15,.42)}
.plan--gold .plan__cta:hover{background:linear-gradient(135deg,#e8630a,#ff8f26);box-shadow:0 14px 30px rgba(255,116,15,.52)}
.plan__specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 18px}
.plan__spec{border-radius:10px;padding:12px 14px;background:color-mix(in srgb,var(--pc) 11%,transparent);border:1px solid color-mix(in srgb,var(--pc) 28%,transparent)}
.plan__spec b{display:block;font-size:21px;font-weight:700;line-height:1.1;color:var(--pt)}
.plan__spec b.sm{font-size:15px;padding:3px 0}
.plan__spec span{display:block;margin-top:5px;font-size:9px;letter-spacing:.2em;color:var(--pt3);font-weight:600}
.plan__list{list-style:none;display:grid;gap:9px;margin-bottom:22px}
.plan__list li{display:flex;gap:10px;font-size:13px;line-height:1.45;color:var(--pt2)}
.plan__list li::before{content:'✓';flex:none;width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--pc) 22%,transparent);color:var(--pci);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}
.plan__list li.hl{font-weight:600;color:var(--pt)}
.plan__more{margin-top:auto;width:100%;display:flex;justify-content:space-between;align-items:center;padding:13px 4px 4px;background:none;border:0;border-top:1px dashed var(--pl);cursor:pointer;color:var(--pci);font-family:var(--font-m);font-size:10.5px;font-weight:700;letter-spacing:.18em;transition:color .3s var(--ease)}
.plan__more:hover{color:var(--pt)}
.plan__more svg{width:16px;height:16px;transition:transform .45s var(--ease)}
.plan.is-open .plan__more svg{transform:rotate(45deg)}
.plan__full{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.plan__full>div{overflow:hidden}
.plan.is-open .plan__full{grid-template-rows:1fr}
.pf-group{padding-top:20px}
.pf-group h4{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.24em;font-weight:700;color:var(--pci);margin-bottom:12px}
.pf-group h4::after{content:'';flex:1;height:1px;background:var(--pl)}
.pf-rows div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--pl);font-size:12px}
.pf-rows dt{color:var(--pt2)}
.pf-rows dd{font-weight:600;color:var(--pt);text-align:right}
.pf-rows dd.ok{color:var(--pci)}
.pf-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.pf-chips li{display:inline-flex;align-items:center;gap:6px;font-size:11px;line-height:1.3;padding:5px 10px;border-radius:99px;border:1px solid var(--pl);color:var(--pt2);background:color-mix(in srgb,var(--pc) 6%,transparent)}
.pf-chips li::before{content:'✓';font-size:9px;font-weight:700;color:var(--pci)}
.pf-chips li b{font-weight:700;color:var(--pt)}
.pricing__trust{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;margin-top:44px}
.pricing__trust li{display:flex;align-items:center;gap:9px;padding:9px 16px;border:1px solid var(--line-strong);border-radius:99px;background:#fff;font-family:var(--font-m);font-size:10px;letter-spacing:.16em;font-weight:600;color:var(--text-2)}
.pricing__trust li i{font-style:normal;width:18px;height:18px;border-radius:50%;background:var(--grad);color:var(--on-accent);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}
@media (max-width:1040px){
  .pricing{grid-template-columns:1fr;max-width:520px;margin-inline:auto;padding-top:8px}
  .plan--gold{transform:none}
  .plan--gold:hover{transform:translateY(-8px)}
}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.btn:disabled{opacity:.65;cursor:wait;transform:none}
/* ============ INDONESIA NOTICE BAR STYLES ============ */
.id-notice{background:linear-gradient(135deg,#0a6fb5 0%,#2faffb8f 100%);color:#fff;font-family:var(--font-m);font-size:11px;letter-spacing:.08em;padding:9px 16px;position:relative;z-index:110;border-bottom:1px solid rgba(255,255,255,.2)}
.id-notice__inner{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.id-notice__inner b{color:#96d12a}
#id-notice-close{background:none;border:0;color:#fff;font-size:18px;cursor:pointer;padding:0 6px;line-height:1;opacity:.8;transition:opacity .2s}
#id-notice-close:hover{opacity:1}

@media (max-width:720px){.header__actions .btn--primary{display:none}.header__actions{gap:8px}.lang{padding:10px 11px}}
.lang{font-family:var(--font-m);font-size:10.5px;letter-spacing:.14em;font-weight:600;color:var(--text-2);text-decoration:none;border:1px solid var(--line-strong);border-radius:4px;padding:10px 12px}.lang:hover{color:var(--accent-ink);border-color:var(--accent)}
