/* Audit fixes (alignment on every device) and smooth-scroll performance. Loaded last. */

/* ---- tap targets: everything you tap is at least 44 px ---- */
.nav__brand{min-height:44px}
.mint__plans button{min-height:44px}
.foot__row a{display:flex;align-items:center;min-height:44px}
.nudge__x{width:44px;height:44px}

/* ---- the ticket's submit button: dark on the gold ticket, so it can't disappear ---- */
.coupon .lf__go{background:#0f4a37!important;color:#f4d98f!important;box-shadow:0 12px 26px -14px #0f4a37}

/* ---- the deadline chip on very small phones (320 px) wraps instead of spilling ---- */
.dl-chip{max-width:100%}
@media(max-width:359px){.story__dl{flex-wrap:wrap}.story__dl span{white-space:normal!important}}

/* ---- the story: centred content on wide screens ---- */
@media(min-width:1500px){.story__pin{padding-left:calc((100vw - 1400px) / 2);padding-right:calc((100vw - 1400px) / 2)}
  .story__tabs{margin:0 calc((100vw - 1400px) / -2)}.story__note{right:calc((100vw - 1400px) / 2)}}

/* ---- in-page links land below the fixed nav ---- */
section[id],[id=mint],[id=coupon]{scroll-margin-top:84px}

/* ---- scroll progress: a thin gold line that fills as you read ---- */
.progress{position:fixed;left:0;top:0;right:0;height:3px;z-index:60;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#b98f42,#f4d98f);pointer-events:none}
.lite .progress{display:none}

/* ---- smooth scrolling ---- */
/* sections below the fold are skipped by the renderer until they come near the screen */
.said,.mint,.proof,.flow,.moments,.about,.faq,.contact{content-visibility:auto;contain-intrinsic-size:auto 900px}
/* the moving parts of the story get their own layers */
.full .tpos,.full .note,.full .payout,.full .bal{will-change:transform}
/* phones: drop the effects that cost the GPU on every scrolled frame (background blur, full-screen blending) */
@media(max-width:860px),(hover:none){
  .full .nav,.story__tabs,.dock,.nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .nav{background:#06170ff2!important}
  .story__tabs{background:#06170ff7!important}
  .hero__felt::after{mix-blend-mode:normal;opacity:.06}
  .tcard__holo{mix-blend-mode:normal;opacity:.18}
}
@media(prefers-reduced-motion:reduce){.progress{display:none}}
/* 320 px: the six chapter tabs scroll sideways with room for each label */
@media(max-width:359px){.story__tabs{grid-template-columns:repeat(6,minmax(66px,1fr))}}
/* inside the gold ticket, small print and messages need dark ink */
.coupon .lf__fine{color:#5b4a1e}.coupon .lf__ok{color:#2b2210!important}.coupon .lf__msg.is-err{color:#8a1f12}.coupon .lf__msg.is-ok{color:#0f4a37}.coupon .lf__msg{color:#2b2210}
/* the banknotes keep their real shape (the width/height attributes are for layout only) */
.note{height:auto!important;aspect-ratio:760/346}

/* ---- the trump card front: bull mark in the seal, name clear of "துருப்பு", watermark clear of the footer ---- */
.tcard__row{padding-right:30%}
.tcard__logo{flex:none;width:17%;aspect-ratio:1;border-radius:50%;background:#fbf6e8;display:grid;place-items:center;box-shadow:0 0 0 2px #e8c97b66}
.tcard__logo img{width:78%;height:auto}
.tcard__name{font-size:clamp(10px,1.05vw,15px);letter-spacing:.08em;line-height:1.2}
.tcard__name small{letter-spacing:.18em}
.tcard__engrave{width:40%!important;right:5%!important;bottom:20%!important;opacity:.28!important}
.tcard__foot{bottom:6%!important}

/* ---- proof tiles: ₹0 deposit is the gold highlight; online payment gets its own full row ---- */
.tile--hl{background:linear-gradient(150deg,#f4d98f,#e8c97b 55%,#c9952f)!important;color:#0b2a1e}
.tile--hl b{color:#0b2a1e!important;font-size:clamp(72px,9vw,120px)!important}
.tile--hl span{color:#2b2210!important;font-weight:600;font-size:17px!important}
.tile--wide{flex-direction:row!important;align-items:center;justify-content:flex-start!important;gap:20px!important}
.tile--wide b{font-size:clamp(52px,6vw,80px)!important}
.tile--wide span{font-size:18px!important;color:#e9e3d2!important}
@media(max-width:860px){
  .tile--hl,.tile--wide{grid-column:span 2}
  .tile--hl{min-height:190px}
  .tile--wide{min-height:120px}
}
@media(min-width:861px){.tile--wide{grid-column:span 2}}

/* ---- the card builder: type any amount ---- */
.mint__type{display:grid;gap:8px;margin:14px 0 4px}
.mint__type label{font-weight:700;color:var(--ink)}
.mint__in{display:flex;max-width:320px}
.mint__in b{display:grid;place-items:center;padding:0 14px;border-radius:12px 0 0 12px;background:var(--gold);color:#0b2a1e;font:700 18px var(--sans)}
.mint__in input{flex:1;min-width:0;min-height:50px;padding:0 14px;border:1.5px solid #e8c97b77;border-left:0;border-radius:0 12px 12px 0;background:#fbf6e8;color:#0b2a1e;font:700 19px ui-monospace,"JetBrains Mono",monospace}
.mint__in input:focus{outline:3px solid var(--gold);outline-offset:1px}
.mint__typemsg p{margin:0;font-size:15px;color:var(--muted)}
.mint__typemsg p.ok{color:#bff0cf;font-weight:600}
.mint__typemsg .near{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.mint__typemsg .near button{min-height:44px;padding:0 16px;border-radius:12px;border:1.5px solid #e8c97b66;background:#0f2a1f;color:var(--ink);font:700 16px var(--sans);cursor:pointer}
.mint__typemsg .near .ask{background:var(--gold);color:#0b2a1e;border-color:var(--gold)}

/* ---- the plan picker: every plan visible as a card; festival chits vs Nambikai (any time) ---- */
.mint__grp{margin:14px 0 6px;font:700 13px/1.3 var(--sans);letter-spacing:.06em;color:var(--gold)}
.mint__grp--fest{margin-top:4px}
.mint__plans button small{display:block;font:500 13px/1.3 var(--sans);color:var(--muted);letter-spacing:0}
.mint__plans button b{font:inherit}
@media(min-width:861px){.mint__plans button{flex-wrap:wrap;row-gap:0}.mint__plans button small{flex-basis:100%;padding-left:calc(.45em + 14px)}}
@media(max-width:860px){
  .mint__plans{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important;overflow:visible!important;padding:0!important}
  .mint__plans .liquid{display:none!important}
  .mint__grp{grid-column:1/-1;margin:6px 0 0}
  .mint__plans button{all:unset;box-sizing:border-box;cursor:pointer;display:flex!important;flex-direction:column;align-items:flex-start;gap:4px!important;min-height:86px;padding:14px 14px 12px 18px!important;border-radius:16px;
    background:linear-gradient(160deg,#12301f,#0b2219);border:1.5px solid #e8c97b2e;position:relative;overflow:hidden;box-shadow:0 10px 22px -16px #000;white-space:normal!important;transition:transform .2s,border-color .2s,background .2s}
  .mint__plans button::before{content:""!important;position:absolute;left:0;top:0;bottom:0;width:6px!important;height:auto!important;border-radius:0!important;opacity:1!important;background:var(--c,#e8c97b)!important}
  .mint__plans button b{font:700 21px/1.15 var(--sans);color:var(--ink)}
  .mint__plans button small{font-size:12.5px}
  .mint__plans button[aria-selected=true]{border-color:var(--gold);background:linear-gradient(160deg,#1c4a33,#10301f);transform:translateY(-2px);box-shadow:0 14px 28px -16px #000,0 0 0 1px var(--gold)}
  .mint__plans button[aria-selected=true]::after{content:"✓";position:absolute;right:12px;top:10px;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#0b2a1e;display:grid;place-items:center;font:700 14px/1 var(--sans)}
  .mint__plans button:last-child{grid-column:1/-1}
}

/* ---- the team: faces you'll meet ---- */
.team{padding:clamp(56px,8vw,120px) var(--m);display:grid;gap:22px;max-width:1240px;margin:0 auto}
.team__head{display:grid;gap:10px}
.team__head h2{font-size:clamp(32px,6vw,72px);line-height:1.08}
.team__lead{margin:0;color:var(--muted);font-size:var(--s2);max-width:46ch}
.team__photo{position:relative;margin:0;border-radius:calc(var(--r) * 1.6);overflow:hidden;box-shadow:0 0 0 2px #b98f4299,0 40px 80px -40px #000}
.team__photo img{display:block;width:100%;height:auto;aspect-ratio:1616/1080;object-fit:cover}
.team__photo figcaption{position:absolute;left:14px;bottom:14px;display:grid;gap:2px;padding:10px 14px;border-radius:12px;background:#06170fd9;font-size:14px;color:var(--muted)}
.team__photo figcaption b{color:var(--gold);font-size:16px}
.team__trust{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.team__trust li{display:grid;gap:4px;padding:16px 18px;border-radius:var(--r);background:var(--ground-3);border-left:4px solid var(--gold)}
.team__trust b{font:700 18px/1.2 var(--sans);color:var(--ink)}
.team__trust span{color:var(--muted);font-size:15px}
.team__cta{justify-self:start}
@media(min-width:861px){.team{grid-template-columns:1fr 1fr;align-items:end}.team__photo{grid-column:1/-1}.team__trust{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.team__cta{grid-column:1/-1}}
@media(max-width:860px){.team__cta{width:100%;justify-content:center}}

/* ---- footer: the closing credits ---- */
.foot__credits{display:grid;gap:22px;justify-items:center;text-align:center;padding:10px 0 30px;border-bottom:1px solid #ffffff14}
.foot__brand{display:flex;align-items:center;gap:14px;text-align:left}
.foot__brand img{width:78px;height:auto}
.foot__brand b{display:block;font:700 clamp(20px,3vw,30px)/1.1 var(--serif);font-style:normal;letter-spacing:.04em;color:var(--gold)}
.foot__brand sup{font-size:.45em}
.foot__brand span{display:block;margin-top:4px;font:600 11px/1 var(--sans);letter-spacing:.32em;color:#9fb1a3}
.foot__tag{margin:0;font:600 clamp(20px,3.4vw,30px)/1.3 var(--sans)}
.foot__tag em{color:var(--gold)}
.foot__nums{display:grid;gap:10px;width:min(100%,440px)}
.foot__num{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:16px;background:linear-gradient(160deg,#fbf6e8,#efe2c2);color:#0b2a1e;text-decoration:none;text-align:left}
.foot__num i{flex:none;width:48px;height:48px;border-radius:50%;background:#0f4a37;color:#f4d98f;display:grid;place-items:center;font:700 22px/1 var(--sans);font-style:normal}
.foot__num small{display:block;font:600 13px var(--sans);color:#7a5512}
.foot__num b{font:700 clamp(24px,6vw,30px)/1.1 var(--sans);letter-spacing:.02em}
.foot__social{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.foot__social a{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;border:1px solid #e8c97b55;color:var(--ink);text-decoration:none;font:600 15px var(--sans);transition:background .2s,border-color .2s}
.foot__social a:hover{background:#e8c97b14;border-color:var(--gold)}
.foot__social svg{width:20px;height:20px;color:var(--gold)}
.foot__up{color:var(--muted);text-decoration:none;font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.foot__bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:18px;color:#7f8c80;font-size:13px}
.foot__powered{display:inline-flex;align-items:center;gap:10px;font:600 11px/1 var(--sans);letter-spacing:.28em;color:#9fb1a3}
.foot__powered b{font-size:14px;letter-spacing:.2em;color:var(--ink)}
.foot__powered i{display:inline-block;width:44px;height:1.5px;background:var(--gold)}
@media(max-width:860px){.foot__bottom{justify-content:center;text-align:center}.foot__mark{font-size:clamp(46px,15vw,90px)}}
.foot,.foot *{opacity:1}

/* ---- phones: the plan deck (shuffle.js). --d = distance from centre in card widths ---- */
.mint__plans button .tag{display:none}
@media(max-width:860px){
  .mint__plans.plan-deck{display:flex!important;grid-template-columns:none!important;gap:0!important;overflow-x:auto!important;overflow-y:visible!important;scroll-snap-type:x mandatory;
    width:100vw;box-sizing:border-box;padding:22px 20vw 26px!important;margin:0 0 0 calc(50% - 50vw)!important;scrollbar-width:none;perspective:900px;-webkit-overflow-scrolling:touch}
  .mint__plans.plan-deck::-webkit-scrollbar{display:none}
  .mint__plans.plan-deck .mint__grp{display:none}
  .mint__plans.plan-deck button{--d:0;--a:0;flex:0 0 66vw!important;max-width:300px;min-height:150px!important;margin:0 -7vw;scroll-snap-align:center;padding:16px 18px 16px 22px!important;justify-content:flex-end;gap:6px!important;
    transform:translateZ(calc(var(--a) * -120px)) rotateY(calc(var(--d) * -22deg)) rotateZ(calc(var(--d) * 4deg)) scale(calc(1 - var(--a) * .12));
    filter:brightness(calc(1 - var(--a) * .45));
    box-shadow:0 calc(24px - var(--a) * 14px) 40px -18px #000e!important;transition:border-color .2s,background .2s!important}
  .mint__plans.plan-deck button .tag{display:inline-block;align-self:flex-start;margin-bottom:auto;padding:4px 10px;border-radius:999px;font:700 11.5px/1.2 var(--sans);font-style:normal;letter-spacing:.04em;background:#e8c97b22;color:var(--gold)}
  .mint__plans.plan-deck button[data-k=nambikai] .tag{background:#7fe3b022;color:#a8f0c8}
  .mint__plans.plan-deck button b{font-size:30px!important}
  .mint__plans.plan-deck button small{font-size:13.5px!important}
  .mint__plans.plan-deck button:last-child{grid-column:auto}
  .mint__plans.plan-deck button[aria-selected=true]{transform:translateZ(calc(var(--a) * -120px)) rotateY(calc(var(--d) * -22deg)) rotateZ(calc(var(--d) * 4deg)) scale(calc(1 - var(--a) * .12))}
  .deck__dots{display:flex;justify-content:center;gap:8px;margin:-8px 0 6px}
  .deck__dots i{width:8px;height:8px;border-radius:50%;background:#ffffff2e;transition:width .25s,background .25s}
  .deck__dots i.on{width:26px;border-radius:5px;background:var(--c,var(--gold))}
  .lite .mint__plans.plan-deck button{transform:none!important;filter:none!important;margin:0 6px}
}
.mint__hint{display:none}
@media(max-width:860px){.mint__hint{display:block;margin:0;font-size:14px;color:var(--muted)}.mint__hint::before{content:"⇆ ";color:var(--gold)}}
@media(min-width:700px){.foot__nums{grid-template-columns:1fr 1fr;width:min(100%,880px)}}
.coupon__phones{line-height:1.9}
.mint__list{min-width:0}
@media(max-width:860px){.mint__plans.plan-deck button:first-of-type{margin-left:0}.mint__plans.plan-deck button:last-of-type{margin-right:0}}
@media(max-width:860px){.mint__plans.plan-deck{padding-left:0!important;padding-right:0!important}.mint__plans.plan-deck::before,.mint__plans.plan-deck::after{content:"";flex:0 0 17vw}}
@media(max-width:860px){.mint__plans.plan-deck button{min-width:0!important;width:66vw!important;max-width:300px}.mint__plans.plan-deck button small{overflow-wrap:anywhere}}
/* the countdown chip keeps light text even inside the gold ticket */
.dl-chip,.dl-chip span,.dl-chip b{color:#fff4e0!important}
.coupon__phones a{white-space:nowrap}
/* founder portrait: face-first framing, caption below the chin */
.about__photo img{object-position:50% 18%}
.about__photo figcaption{bottom:14px!important}
@media(max-width:860px){.about__photo{margin-bottom:24px!important;width:100%!important}}

/* ---- loader: the same trump card as the story, so it can fly into place ---- */
.loader__card{width:min(64vw,260px)!important;aspect-ratio:1.586!important}
.loader__back,.loader__face{border-radius:14px!important}
.loader__face{background:linear-gradient(135deg,#0f3b2c 0%,#0a2a1f 45%,#13402f 100%)!important;border:1px solid #e8c97b80!important;display:block!important;overflow:hidden;box-shadow:0 30px 60px -24px #000}
.loader__face .lf__seal{position:absolute;left:6%;top:9%;width:15%;aspect-ratio:1;border-radius:50%;background:#fbf6e8;display:grid;place-items:center;box-shadow:0 0 0 1.5px #e8c97b66}
.loader__face .lf__seal img{width:78%;height:auto}
.loader__face .lf__name{position:absolute;left:25%;top:11%;font:700 clamp(8px,2.3vw,10px)/1.2 var(--sans);letter-spacing:.08em;color:var(--gold)}
.loader__face .lf__name small{display:block;font-size:.62em;letter-spacing:.18em;color:#d7c79a}
.loader__face .lf__trump{position:absolute;right:7%;top:8%;font:400 clamp(14px,4vw,18px)/1 var(--serif);font-style:italic;color:var(--gold)}
.loader__face .lf__chip{position:absolute;left:7%;top:42%;width:15%;aspect-ratio:1.3;border-radius:5px;background:linear-gradient(135deg,#f6e2b3,#b8924d 50%,#ecd08f)}
.loader__face .lf__mark{position:absolute;right:5%;bottom:14%;width:40%;height:auto;opacity:.28;filter:grayscale(1) brightness(1.4)}
/* while the card flies, the dark screen lifts away underneath it */
.loader.is-handing{background:transparent!important;transition:background .55s ease .1s}
.loader.is-handing .loader__line{opacity:0;transition:opacity .2s}
.loader.is-handing::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ground);animation:lift .6s ease .12s forwards}
@keyframes lift{to{opacity:0}}
.loader.is-done{transition:opacity .25s,visibility .25s!important}

/* ---- founder section on laptops: photo left; headline, two points and the button beside it ---- */
@media(min-width:861px){
  .about__panel{min-height:0!important;grid-template-columns:minmax(300px,440px) minmax(0,1fr)!important;grid-template-rows:auto 1fr;grid-template-areas:"photo head" "photo text";gap:28px 56px!important;padding:56px!important;align-items:start}
  .about__panel h2{grid-area:head;grid-column:auto!important;font-size:clamp(44px,4.6vw,76px)!important;line-height:1.05;align-self:end}
  .about__photo{grid-area:photo;grid-column:auto!important;width:100%!important;margin:0!important;align-self:stretch;aspect-ratio:auto!important;min-height:520px}
  .about__text{grid-area:text;grid-column:auto!important;grid-row:auto!important;grid-template-columns:1fr 1fr;gap:28px 36px!important;padding-top:0!important;align-content:start}
  .about__text .btn{grid-column:1/-1;justify-self:start}
}
@media(min-width:861px) and (max-width:1100px){.about__text{grid-template-columns:1fr}}
.loader__face .lf__trump{text-align:right}.loader__face .lf__trump small{display:block;margin-top:3px;font:700 6px/1 var(--sans);letter-spacing:.3em;color:#d7c79a;font-style:normal}
.loader__face .lf__foot{position:absolute;left:7%;bottom:7%;font:500 clamp(6px,1.7vw,7.5px)/1 var(--sans);color:#cdd7c9}
@media(min-width:861px){
  .about__panel{grid-template-areas:none!important;align-items:center!important}
  .about__panel h2{grid-column:2!important;grid-row:1!important}
  .about__photo{grid-column:1!important;grid-row:1 / span 2!important;min-height:0!important;aspect-ratio:.8!important;align-self:start!important}
  .about__text{grid-column:2!important;grid-row:2!important}
}
@media(min-width:861px){.about__panel h2{overflow-wrap:normal!important;font-size:clamp(34px,4.1vw,76px)!important}}
@media(min-width:861px) and (max-width:1000px){.about__panel h2{font-size:32px!important}.about__panel{grid-template-columns:minmax(260px,340px) minmax(0,1fr)!important;padding:40px!important;gap:24px 36px!important}}
