/* ===== v2: light panels, graphics ===== */
.ico{width:22px;height:22px;flex:none}
.ico-tile{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(180,230,104,.12);color:var(--lime);border:1px solid rgba(180,230,104,.28)}
.ico-tile.plum{background:rgba(165,80,154,.14);color:var(--plum-soft);border-color:rgba(165,80,154,.35)}
.ico-tile .ico{width:24px;height:24px}

/* light sections */
.light{background:#F2F6EF;color:#4A5158;--text:#16181D;--text-2:#4A5158;--text-3:#6B737B;--line:#DFE6DA;--line-strong:#CBD5C4;--surface:#FFFFFF;--surface-2:#F7FAF4;--bg-alt:#E9F0E3;color-scheme:light}
.light h1,.light h2,.light h3{color:#16181D}
.light .card{box-shadow:0 1px 2px rgba(22,24,29,.04),0 12px 32px -18px rgba(22,24,29,.18)}
.light .ico-tile{background:#EDF7DB;color:#2E7F72;border-color:#D3E8B8}
.light .textlink,.light p a,.light li a{color:#2E7F72}
.light .svc li::before,.light .plain li::before{background:#62B093}
.light .eyebrow .dot{box-shadow:none;background:#62B093}
.light .grad{background:linear-gradient(100deg,#7EBD6F 0%,#62B093 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.light .btn-ghost{border-color:#16181D;color:#16181D!important}
.light .btn-ghost:hover{background:rgba(22,24,29,.05)}
.light details.faq{background:#fff}
.light details summary::after{color:#2E7F72}
.light .num{border-color:#CBD5C4;color:#4A5158}
.light .stat b.l{color:#1F7A38}
section.light.block{padding-block:96px}
@media (max-width:700px){section.light.block{padding-block:60px}}

/* hero visual */
.mock{position:relative;min-height:420px}
.mock .glass{position:absolute;background:rgba(16,23,42,.92);border:1px solid var(--line-strong);border-radius:20px;padding:18px 20px;box-shadow:0 30px 70px -30px rgba(0,0,0,.9);backdrop-filter:blur(8px)}
.mock .tag-ill{position:absolute;top:0;right:0;font:500 11px var(--mono);letter-spacing:.12em;color:var(--warn);border:1px solid rgba(245,197,81,.35);border-radius:999px;padding:4px 10px}
.mock .c1{top:40px;left:0;right:70px}
.mock .c2{top:190px;left:60px;right:0}
.mock .c3{top:318px;left:18px;width:250px}
.mrow{display:flex;align-items:center;gap:14px}
.mrow b{color:var(--text);font-size:15px;display:block}
.mrow small{color:var(--text-3);font-size:12.5px}
.ok-pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#0B1508;background:var(--lime);border-radius:999px;padding:5px 10px}
.ok-pill .ico{width:14px;height:14px}
.avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#97E4D9,#56B231);display:grid;place-items:center;color:#0B1508;font-weight:700}
.addr{font:500 13px var(--mono);color:var(--text)}
.bars{display:flex;gap:6px;margin-top:14px}
.bars span{height:6px;flex:1;border-radius:4px;background:rgba(255,255,255,.1)}
.bars span.on{background:var(--lime)}
.mock .chain{position:absolute;left:34px;top:120px;bottom:90px;width:2px;background:linear-gradient(var(--lime),rgba(165,80,154,.8))}
@media (max-width:980px){.mock{min-height:400px;max-width:520px}}
@media (max-width:480px){.mock .c1{right:20px}.mock .c2{left:20px}.mock .c3{width:220px}}

/* icon cards */
.icard{display:flex;flex-direction:column;gap:14px}
.icard h3{font-size:20px}
.icard p{font-size:15.5px}
.step-no{font:500 12px var(--mono);letter-spacing:.1em;color:var(--text-3)}
.price-line{font-size:13.5px;font-weight:600;color:var(--text)}

/* flow diagram */
.flow2{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;margin-top:8px}
.flow2::before{content:"";position:absolute;left:10%;right:10%;top:36px;height:2px;background:linear-gradient(90deg,var(--lime),var(--plum))}
.flow2 > div{position:relative;display:grid;justify-items:center;text-align:center;gap:10px;padding:0 10px}
.node{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line-strong);color:var(--lime);box-shadow:0 0 0 6px var(--bg)}
.node .ico{width:30px;height:30px}
.flow2 > div:nth-child(n+3) .node{color:var(--plum-soft)}
.flow2 h3{font-size:17px}
.flow2 p{font-size:14px;color:var(--text-3);max-width:22ch}
@media (max-width:820px){.flow2{grid-template-columns:1fr;gap:18px}.flow2::before{left:35px;right:auto;top:10px;bottom:10px;width:2px;height:auto;background:linear-gradient(var(--lime),var(--plum))}.flow2 > div{grid-template-columns:72px 1fr;justify-items:start;text-align:left;align-items:center;column-gap:18px}.flow2 > div .node{grid-row:span 2}.flow2 p{max-width:none}}

/* hub diagram */
.hub{position:relative;aspect-ratio:1/1;max-width:440px;width:100%;margin-inline:auto}
.hub svg{width:100%;height:100%;display:block}
.hub-label{font:600 13px var(--font)}

/* timeline */
.tl{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tl > div{border-radius:18px;padding:18px;border:1px solid var(--line);background:var(--surface)}
.tl .d{font:500 12px var(--mono);color:var(--text-3);letter-spacing:.06em}
.tl b{display:block;color:var(--text);font-size:16px;margin-top:6px}
.tl .now{border-color:rgba(245,197,81,.45)}
@media (max-width:640px){.tl{grid-template-columns:1fr}}

.hero-2col{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
@media (max-width:980px){.hero-2col{grid-template-columns:1fr}}
.center-head{text-align:center;margin-inline:auto}
.center-head p{margin-inline:auto}
.photo-slot{display:none}
.band-wrap{padding-block:28px}
.band-text{max-width:52ch}
.center-head{justify-items:center}
.flow2 > div{align-content:start}
.lockup::after{content:"INNOVATION EXEMPTION";font-weight:600;font-size:11px;letter-spacing:.18em;color:var(--lime);padding-left:10px;margin-left:1px;border-left:1px solid rgba(255,255,255,.22);line-height:1.2;white-space:nowrap}
@media (max-width:640px){.lockup{display:grid;grid-template-columns:auto auto;column-gap:9px;row-gap:3px}.lockup img{grid-row:1/3;align-self:center}.ir-word{align-self:end;line-height:1}.lockup::after{align-self:start;border:0;padding:0;margin:0;font-size:9px;letter-spacing:.16em;line-height:1}}
