/* Dkolla home page (loads after dk.css) */
.sec{padding-block:var(--py);position:relative}
.sec.alt{background:linear-gradient(180deg,rgba(10,21,38,.0),var(--ink2) 14%,var(--ink2) 86%,rgba(10,21,38,.0))}
.sec-head{max-width:64ch;margin-bottom:clamp(1.8rem,4vw,3rem)}
.sec-head h2,.h2{font-family:var(--fd);font-weight:500;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.08;letter-spacing:-.015em;text-wrap:balance;color:var(--t1)}
.sec-head p{color:var(--t2);margin-top:.9rem;font-size:1.06rem;line-height:1.7;max-width:58ch}
.num{font-variant-numeric:tabular-nums lining-nums}
.dash{color:var(--t3)}

/* ---------- Hero ---------- */
.hero{padding-top:calc(var(--nav-h) + clamp(2.2rem,5.5vw,4.5rem));padding-bottom:clamp(2rem,4vw,3.5rem)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero h1{font-family:var(--fd);font-weight:500;font-size:clamp(2.5rem,4.5vw,4.2rem);line-height:1.04;letter-spacing:-.022em;text-wrap:balance;color:var(--t1)}
.hero-sub{margin-top:1.4rem;font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.7;color:var(--t2);max-width:50ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.hero-note{margin-top:1.1rem;font-size:.88rem;color:var(--t3)}

/* The mint dial: the one memorable thing on the page */
.dial-wrap{display:flex;flex-direction:column;align-items:center;gap:1.1rem}
.dial{position:relative;width:min(100%,560px);aspect-ratio:1;container-type:inline-size;margin:0}
.dial-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dial-rosette{transform-box:fill-box;transform-origin:center;opacity:.62;animation:rosette 2.2s cubic-bezier(.2,.7,.2,1) both}
@keyframes rosette{from{transform:rotate(-28deg) scale(.96);opacity:0}to{transform:none;opacity:.62}}
.dial-readout{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 23%;gap:.15em}
.dial-label{font-size:clamp(11px,2.5cqw,15px);color:var(--t2);font-weight:500}
.dial-num{font-family:var(--fd);font-weight:500;font-size:clamp(22px,7.4cqw,42px);line-height:1.05;letter-spacing:-.01em;color:var(--brass-hi);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
.dial-readout.long .dial-num{font-size:clamp(18px,5.4cqw,32px)}
.dial-of{font-size:clamp(11px,2.5cqw,15px);color:var(--t2)}
.dial-cap2{font-size:.95rem;color:var(--t2);text-align:center}
.dial-cap2 b{color:var(--t1);font-weight:600}

/* Ledger strip */
.ledger{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(2rem,4vw,3.2rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lg{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:.25rem;padding:1.25rem 1.4rem;border-left:1px solid var(--line)}
.lg:first-child{border-left:0;padding-left:0}
.lg dt{font-size:.92rem;color:var(--t2)}
.lg dd{font-size:clamp(1.55rem,2.7vw,2.15rem);font-weight:600;letter-spacing:-.01em;color:var(--t1);font-variant-numeric:tabular-nums lining-nums;line-height:1.15}
.live-line{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-top:1rem;font-size:.88rem;color:var(--t2)}
.live-now{padding-left:.6rem;border-left:1px solid var(--line2);font-variant-numeric:tabular-nums lining-nums}
.live-now[hidden]{display:none}
.live-dot{position:relative;width:8px;height:8px;border-radius:50%;background:var(--t3);flex:none}
.live-dot.is-live{background:var(--live)}
.live-dot.is-live::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--live);opacity:0;animation:ping 2.4s ease-out infinite}
.live-dot.is-stale{background:var(--warn)}
@keyframes ping{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.5);opacity:0}}

/* ---------- How it works ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,4vw,3.5rem)}
.step{border-top:1px solid var(--line2);padding-top:1.3rem}
.step-n{font-family:var(--fd);font-size:2.6rem;line-height:1;color:var(--brass);font-weight:500;margin-bottom:.9rem}
.step h3{font-size:1.15rem;font-weight:600;margin-bottom:.45rem;color:var(--t1)}
.step p{color:var(--t2);font-size:.98rem;line-height:1.7;max-width:36ch}

/* ---------- Presale ---------- */
.ps{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(1.8rem,4.5vw,4rem);align-items:start}
.ps-card{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--ink3),var(--ink2));border:1px solid var(--line2);border-radius:24px;padding:clamp(1.4rem,3vw,2.4rem)}
.ps-card::after{content:"";position:absolute;right:-150px;top:-150px;width:420px;height:420px;background:url(/assets/guilloche-dial.svg) center/contain no-repeat;opacity:.13;pointer-events:none}
.ps-card>*{position:relative;z-index:1}
.ps-state{display:inline-flex;align-items:center;gap:.5rem;font-size:.86rem;font-weight:500;padding:.32rem .8rem;border-radius:99px;border:1px solid var(--line2);color:var(--t1)}
.ps-state::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--t3)}
.ps-state.is-open::before{background:var(--live)}
.ps-state.is-paused::before{background:var(--warn)}
.ps-priceline{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem 1rem;margin-top:1.3rem}
.ps-price{font-family:var(--fd);font-weight:500;font-size:clamp(3.2rem,6.4vw,4.8rem);line-height:1;letter-spacing:-.02em;color:var(--brass-hi);font-variant-numeric:lining-nums}
.ps-per{font-size:1.05rem;color:var(--t2)}
.ps-ref{margin-top:.55rem;color:var(--t2);font-size:.98rem}
.ps-ref b{color:var(--t1);font-weight:600}
.ps-ref s{color:var(--t3)}
.ps-bar-wrap{margin-top:1.9rem}
.bar{height:12px;border-radius:99px;background:rgba(216,182,106,.13);overflow:hidden}
.bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--brass-lo),var(--brass) 55%,var(--brass-hi))}
.bar-labels{display:flex;justify-content:space-between;gap:1rem;margin-top:.7rem;font-size:.92rem;color:var(--t2)}
.bar-labels b{color:var(--t1);font-weight:600}
.bar-labels>div:last-child{text-align:right}
.ps-facts{margin-top:1.4rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.ps-facts dt{font-size:.85rem;color:var(--t3)}
.ps-facts dd{font-size:1rem;color:var(--t1);font-weight:500;font-variant-numeric:tabular-nums}
.ps-cta{margin-top:1.6rem;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}
.ps-fine{margin-top:1rem;font-size:.84rem;line-height:1.6;color:var(--t3);max-width:60ch}
.ps-fine a{color:var(--t2);text-decoration:underline;text-underline-offset:3px}
.how h3{font-family:var(--fd);font-weight:500;font-size:1.6rem;margin-bottom:.4rem}
.how>p{color:var(--t2);font-size:.98rem;margin-bottom:.6rem}
.how ol{margin-top:.8rem}
.how li{display:grid;grid-template-columns:2.4rem 1fr;gap:1rem;padding:1.05rem 0;border-top:1px solid var(--line)}
.how li:last-child{border-bottom:1px solid var(--line)}
.how-n{font-family:var(--fd);font-size:1.5rem;color:var(--brass);line-height:1.1}
.how li b{display:block;font-weight:600;color:var(--t1);margin-bottom:.15rem}
.how li span{color:var(--t2);font-size:.95rem;line-height:1.65}

/* ---------- Leaderboard ---------- */
.lb-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(2rem,5vw,5rem);align-items:start}
.lb{min-width:0}
.lb-aside{position:sticky;top:96px;border:1px solid var(--line);border-radius:20px;padding:1.6rem;background:var(--glass)}
.lb-aside h3{font-family:var(--fd);font-weight:500;font-size:1.6rem;margin-bottom:.5rem}
.lb-aside p{color:var(--t2);font-size:.98rem;line-height:1.7;margin-bottom:1.3rem}
.tabs{display:inline-flex;flex-wrap:wrap;gap:.25rem;padding:.3rem;border:1px solid var(--line);border-radius:12px;background:var(--ink2)}
.tab{padding:.62rem 1.15rem;border-radius:9px;border:0;background:none;color:var(--t2);font-weight:600;font-size:.95rem;cursor:pointer;transition:background var(--tf),color var(--tf)}
.tab:hover{color:var(--t1)}
.tab[aria-selected="true"]{background:var(--c2);color:var(--t1)}
.lb-list{margin-top:1.1rem;min-height:120px}
.lb-row{display:grid;grid-template-columns:2.6rem minmax(0,1fr) auto;grid-template-areas:"rank id val" "rank bar bar";column-gap:1rem;align-items:center;padding:.85rem 0;border-top:1px solid var(--line)}
.lb-row:last-child{border-bottom:1px solid var(--line)}
.lb-rank{grid-area:rank;justify-self:center;font-variant-numeric:tabular-nums;color:var(--t3);font-weight:600;width:2rem;height:2rem;display:grid;place-items:center;border-radius:50%}
.lb-row.top .lb-rank{color:#1a1405;font-weight:700}
.lb-row.top1 .lb-rank{background:linear-gradient(160deg,var(--brass-hi),var(--brass-lo))}
.lb-row.top2 .lb-rank{background:linear-gradient(160deg,#e3e8ef,#8b97a8)}
.lb-row.top3 .lb-rank{background:linear-gradient(160deg,#e0b184,#8d5f37)}
.lb-id{grid-area:id;color:var(--t1);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-val{grid-area:val;color:var(--t1);font-variant-numeric:tabular-nums;white-space:nowrap}
.lb-val b{font-weight:600}
.lb-val small{color:var(--t3);font-size:.82rem}
.lb-bar{grid-area:bar;height:3px;margin-top:.55rem;border-radius:3px;background:rgba(216,182,106,.1);overflow:hidden}
.lb-bar i{display:block;height:100%;background:var(--brass);border-radius:3px}
.lb-empty{padding:1.4rem 0;color:var(--t2);border-top:1px solid var(--line);list-style:none}
.lb-empty.is-loading{display:grid;gap:.9rem}
.sk{display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,rgba(216,182,106,.06),rgba(216,182,106,.16),rgba(216,182,106,.06));background-size:200% 100%;animation:sk 1.4s linear infinite}
.sk:nth-child(2){width:82%}.sk:nth-child(3){width:64%}
@keyframes sk{to{background-position:-200% 0}}
.lb-note{margin-top:.9rem;font-size:.85rem;color:var(--t3)}

/* ---------- App showcase ---------- */
.showcase{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.phone{width:min(330px,74vw);margin-inline:auto;padding:9px;border-radius:46px;background:linear-gradient(160deg,#2c3c58,#0b1525);box-shadow:0 0 0 1px rgba(255,255,255,.09) inset,0 44px 90px -34px rgba(0,0,0,.85),0 0 140px -50px rgba(216,182,106,.3)}
.phone-screen{position:relative;border-radius:38px;overflow:hidden;aspect-ratio:720/1600;background:#05080f}
.phone-screen img{width:100%;height:100%;object-fit:cover;object-position:bottom center}
.feat{margin-top:.4rem}
.feat li{display:grid;grid-template-columns:46px 1fr;gap:1.1rem;padding:1.2rem 0;border-top:1px solid var(--line)}
.feat li:last-child{border-bottom:1px solid var(--line)}
.feat-ico{width:46px;height:46px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;color:var(--brass)}
.feat-ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.feat b{display:block;font-size:1.08rem;font-weight:600;margin-bottom:.2rem}
.feat span{color:var(--t2);font-size:.98rem;line-height:1.65}

/* ---------- Partner apps ---------- */
.apps{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(1.5rem,4vw,3.5rem)}
.pa{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:1.1rem;align-items:center;padding:1.15rem 0;border-top:1px solid var(--line)}
.pa:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
.pa img{width:60px;height:60px;border-radius:14px;object-fit:cover;background:var(--ink3)}
.pa h3{font-size:1.08rem;font-weight:600}
.pa p{color:var(--t2);font-size:.92rem;line-height:1.5;margin-top:.1rem}
.pa-links{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}
.pa-links a{font-size:.88rem;font-weight:600;color:var(--brass);padding:.15rem 0;white-space:nowrap}
.pa-links a:hover{color:var(--brass-hi)}
.pa-links a+a{color:var(--t2);font-weight:500}
.apps-note{margin-top:1.4rem;color:var(--t3);font-size:.9rem;max-width:70ch}

/* ---------- Roadmap ---------- */
.rm{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2.5vw,2.2rem)}
.rm-item{border-top:2px solid var(--line2);padding-top:1.1rem}
.rm-item.done{border-top-color:var(--brass)}
.rm-item.now{border-image:linear-gradient(90deg,var(--brass),var(--line2)) 1}
.rm-st{display:inline-flex;align-items:center;gap:.45rem;font-size:.84rem;color:var(--t2);margin-bottom:.55rem}
.rm-st::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--t3)}
.done .rm-st::before{background:var(--live)}
.now .rm-st::before{background:var(--brass)}
.rm-item h3{font-family:var(--fd);font-weight:500;font-size:1.35rem;line-height:1.2;margin-bottom:.8rem}
.rm-item li{color:var(--t2);font-size:.94rem;line-height:1.5;padding:.28rem 0 .28rem 1rem;position:relative}
.rm-item li::before{content:"";position:absolute;left:0;top:.95em;width:6px;height:1px;background:var(--brass)}
.rm-foot{margin-top:2rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;color:var(--t3);font-size:.9rem}

/* ---------- FAQ ---------- */
.faq-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.faq-wrap .sec-head{position:sticky;top:96px;margin-bottom:0}
.fq{border-top:1px solid var(--line)}
.fq:last-of-type{border-bottom:1px solid var(--line)}
.fq summary{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;cursor:pointer;list-style:none;padding:1.2rem 0;font-size:1.05rem;font-weight:600;color:var(--t1)}
.fq summary::-webkit-details-marker{display:none}
.fq summary:hover{color:var(--brass-hi)}
.fq-body{padding:0 2rem 1.4rem 0;color:var(--t2);line-height:1.75;max-width:62ch}
.fq-body a{color:var(--brass);text-decoration:underline;text-underline-offset:3px}

/* ---------- Closing call to action ---------- */
.cta{position:relative;overflow:hidden;background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:clamp(3.5rem,8vw,6rem)}
.cta::before{content:"";position:absolute;left:50%;top:50%;width:min(1100px,150vw);aspect-ratio:1;transform:translate(-50%,-50%);background:url(/assets/guilloche-dial.svg) center/contain no-repeat;opacity:.07;pointer-events:none}
.cta-in{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem}
.cta h2{font-family:var(--fd);font-weight:500;font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1.05;letter-spacing:-.02em;max-width:18ch;text-wrap:balance}
.cta p{color:var(--t2);margin-top:.9rem;max-width:46ch}
.cta-links{display:flex;flex-wrap:wrap;gap:.9rem 1.6rem;margin-top:1.2rem;font-size:.95rem}
.cta-links a{color:var(--t2);text-decoration:underline;text-underline-offset:4px}
.cta-links a:hover{color:var(--brass-hi)}

/* ---------- Responsive ---------- */
@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr}
  .dial-wrap{order:2}
  .ps,.showcase,.faq-wrap,.lb-grid{grid-template-columns:1fr}
  .lb-aside{position:static}
  .faq-wrap .sec-head{position:static}
  .rm{grid-template-columns:1fr 1fr}
  .apps{grid-template-columns:1fr}
  .pa:nth-last-child(-n+2){border-bottom:0}
  .pa:last-child{border-bottom:1px solid var(--line)}
}
@media(max-width:720px){
  .ledger{grid-template-columns:1fr 1fr}
  .lg{padding:1.1rem .9rem}
  .lg:nth-child(3){border-left:0;padding-left:0}
  .lg:nth-child(n+3){border-top:1px solid var(--line)}
  .steps{grid-template-columns:1fr;gap:1.6rem}
  .step p{max-width:none}
  .rm{grid-template-columns:1fr}
  .ps-facts{grid-template-columns:1fr}
}
@media(max-width:520px){
  .hero-cta .btn{width:100%}
  .hero-note{display:none}
  .bar-labels{flex-direction:column;gap:.25rem}
  .bar-labels>div:last-child{text-align:left}
  .pa{grid-template-columns:52px minmax(0,1fr)}
  .pa img{width:52px;height:52px}
  .pa-links{grid-column:2;flex-direction:row;gap:1.2rem;align-items:center}
  .tabs{display:flex;width:100%}
  .tab{flex:1;padding:.62rem .3rem;font-size:.86rem;white-space:nowrap;text-align:center}
  .cta .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.dial-rosette{animation:none}.sk{animation:none}.live-dot.is-live::after{animation:none}}
