/* LSKD: concept landing. Linguagem da home real: página branca, foto sangrada, fio de 1 px, caixa alta peso 400, pílula de 32 px. Sem degradê. */
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-tight-400.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-tight-500.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-tight-600.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-italic.woff2) format('woff2')}
@font-face{font-family:'Doto';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/doto-700.woff2) format('woff2')}
@font-face{font-family:'Doto';font-style:normal;font-weight:900;font-display:swap;src:url(fonts/doto-900.woff2) format('woff2')}

:root{
  /* primitivos medidos no CSS do site */
  --black:#000000;
  --white:#ffffff;
  --charcoal:#1c1d1d;
  --night:#0f0f0f;
  --grey-block:#a5a5a5;
  --grey-text:#6b7280;
  --grey-idle:#707070;
  --grey-on-black:#a6a7aa;
  --hairline:#e8e8e1;
  --dim:#f2f2f2;
  /* papéis */
  --tx:var(--black);
  --tx-soft:var(--grey-text);
  --rule:var(--grey-block);
  --rule-soft:var(--hairline);
  --acao:var(--black);
  --sobre-escuro:var(--white);
  --sans:'Inter Tight','Helvetica Neue',Helvetica,Arial,sans-serif;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --dot:'Doto',ui-monospace,'Courier New',monospace;
  --gutter:clamp(1.25rem,2.8vw,2.5rem);
  --ease-out:cubic-bezier(.23,1,.32,1);
  --ease-in-out:cubic-bezier(.77,0,.175,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;scroll-padding-top:1rem}
body{margin:0;background-color:var(--white);color:var(--tx);font-family:var(--sans);font-size:1.0625rem;line-height:1.5;font-weight:400}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit}
a,button{touch-action:manipulation}
::selection{background-color:var(--black);color:var(--white)}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}

main section{position:relative;overflow-x:clip}
.lane{max-width:115rem;margin-inline:auto;padding-inline:var(--gutter)}

/* ---------- casca do pacote ---------- */
.pular{position:absolute;left:1rem;top:-5rem;z-index:20;background-color:var(--white);color:var(--black);padding:.75rem 1.25rem;border-radius:2rem}
.pular:focus{top:1rem}
.rascunho{background-color:var(--black);color:var(--white);font-size:.75rem;line-height:1.4;text-align:center;padding:.5rem var(--gutter)}
.pacote{background-color:var(--charcoal);color:var(--white);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding:.75rem var(--gutter)}
.pacote-abas{display:flex;flex-wrap:wrap;gap:0 .25rem}
.pacote-abas a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;color:var(--white);text-decoration:none;text-transform:uppercase;font-size:.875rem;letter-spacing:.01em}
.pacote-abas a[aria-current]{text-decoration:underline;text-underline-offset:.45em;text-decoration-thickness:1px}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.75rem;border-radius:2rem;background-color:var(--white);color:var(--black);text-decoration:none;text-transform:uppercase;font-size:.875rem;white-space:nowrap}
.rodape{background-color:var(--black);color:var(--white);padding:2.5rem var(--gutter) 3rem;font-size:.875rem;border-top:1px solid var(--grey-idle);display:grid;gap:.75rem}
.rodape-chat{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.75rem;border-radius:2rem;border:1px solid var(--white);color:var(--white);text-decoration:none;text-transform:uppercase}
.rodape-fontes{color:var(--grey-on-black);font-size:.8125rem}
@media (hover:hover) and (pointer:fine){
  .pacote-abas a:hover{text-decoration:underline;text-underline-offset:.45em;text-decoration-thickness:1px}
  .chat:hover{background-color:var(--black);color:var(--white)}
  .rodape-chat:hover{background-color:var(--white);color:var(--black)}
}
.chat,.rodape-chat{transition:background-color .15s ease,color .15s ease}

/* ---------- pílula (raio 32 px da home) ---------- */
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.25rem 2.25rem;border-radius:2rem;border:1px solid var(--black);text-decoration:none;text-transform:uppercase;font-size:.9375rem;line-height:1.15;text-align:center;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .12s var(--ease-out)}
.pill-solid{background-color:var(--white);color:var(--black);border-color:var(--white)}
.pill-line{background-color:transparent;color:var(--black)}
.pill:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  .pill-solid:hover{background-color:var(--black);color:var(--white);border-color:var(--black)}
  .pill-line:hover{background-color:var(--black);color:var(--white)}
}
.pill-row{display:flex;flex-wrap:wrap;gap:.75rem 2rem}

/* ---------- linha de título de vitrine (28 px, caixa alta, à esquerda) ---------- */
.rack-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;padding-block:clamp(2.5rem,5vw,4.5rem) clamp(1.25rem,2vw,2rem)}
.rack-title{font-size:clamp(1.375rem,2vw,1.75rem);font-weight:400;line-height:1.1;letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;max-width:34ch}
.rack-side{display:flex;align-items:center;gap:.75rem;font-family:var(--serif);font-style:italic;font-size:clamp(1.25rem,1.8vw,1.625rem);line-height:1.1}
.rack-side .pill{font-family:var(--sans);font-style:normal}
.rack-count{margin-inline-end:.5rem}
.arrow{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid var(--black);background-color:var(--white);color:var(--black);cursor:pointer;padding:0;transition:background-color .15s ease,color .15s ease,transform .12s var(--ease-out)}
.arrow svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.5}
.arrow:active{transform:scale(.94)}
@media (hover:hover) and (pointer:fine){.arrow:hover{background-color:var(--black);color:var(--white)}}

/* ---------- foto sangrada (blocos de slideshow da home) ---------- */
.campaign{background-color:var(--night);color:var(--white)}
.campaign-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.campaign-open{min-height:clamp(35rem,86vh,56rem)}
.campaign-over{position:relative;min-height:inherit;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,3vw,2.5rem) var(--gutter) clamp(2.5rem,5vw,4rem);text-align:center}
.campaign-tag{font-size:.9375rem;letter-spacing:.02em;text-transform:uppercase}
.nickname{font-weight:400;text-align:center}
.born{display:block;font-size:clamp(.9375rem,1.6vw,1.375rem);letter-spacing:.02em;margin-bottom:.75em}
.loosekid{display:inline-flex;align-items:baseline;justify-content:center;white-space:nowrap;font-size:clamp(3rem,13vw,12.5rem);font-weight:500;line-height:1;letter-spacing:-.02em}
.loosekid .q{font-weight:400;opacity:.8}
.loosekid .v{display:inline-block;max-width:1em;overflow:hidden;transition:max-width .9s var(--ease-in-out),opacity .5s ease}
.loosekid .k{display:inline-block;transition:margin .9s var(--ease-in-out)}
.com-js .loosekid.tight .v{max-width:0;opacity:0}
.com-js .loosekid.tight .k{margin-inline:.11em}
.campaign-open .pill-row{justify-content:center}

.campaign-value{min-height:clamp(34rem,84vh,54rem);display:flex;align-items:flex-end}
.campaign-value .campaign-shot{opacity:.42}
.campaign-lane{position:relative;width:100%}
.campaign-value .board{padding-block:clamp(3rem,6vw,5rem)}

/* ---------- placar de valor (n/6) ---------- */
.board{padding-block:clamp(3.5rem,7vw,6.5rem)}
.board-tally{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid currentColor}
.tally-n{font-family:var(--dot);font-weight:900;font-size:clamp(1.125rem,1.7vw,1.5rem);letter-spacing:.04em;white-space:nowrap}
.pips{width:8.25rem;height:.75rem;flex:none;overflow:visible}
.pips circle{fill:none;stroke:currentColor;stroke-width:1}
.pips .on{fill:currentColor}
.board-name{margin-top:clamp(1.25rem,2.5vw,2.25rem);font-size:clamp(2.6rem,8.2vw,9.75rem);font-weight:400;line-height:.95;letter-spacing:-.035em;text-transform:uppercase}
.board-name-long{font-size:clamp(2.3rem,6.4vw,7.5rem)}
.board-name-mid{font-size:clamp(2.3rem,7vw,8.5rem)}
.board-foot{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:1.5rem clamp(2rem,5vw,5rem);margin-top:clamp(1.5rem,3vw,2.75rem);align-items:start}
.board-say{font-family:var(--serif);font-style:italic;font-size:clamp(1.625rem,2.5vw,2.5rem);line-height:1.08;text-wrap:balance}
.board-note{max-width:64ch;text-wrap:pretty}
.board .pill-row{margin-top:2rem}

/* ---------- 2 · latest drops ---------- */
.drop-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--rule)}
.drop+.drop{border-inline-start:1px solid var(--rule)}
.drop{display:flex;flex-direction:column}
.drop-shot{aspect-ratio:1/1;overflow:hidden;background-color:var(--dim)}
.drop-shot img{width:100%;height:100%;object-fit:cover}
.drop-box{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:clamp(1.25rem,2.2vw,2rem)}
.drop-name{font-size:clamp(1.75rem,3vw,2.75rem);font-weight:400;line-height:1.05;letter-spacing:-.02em;text-transform:uppercase;max-width:12ch}
.drop-say{color:var(--tx-soft);max-width:38ch;text-wrap:pretty}
.drop-box .pill{margin-top:auto}
.drops{padding-bottom:clamp(3rem,6vw,6rem)}

/* ---------- 4 · jornada ---------- */
.era-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--rule)}
.era{padding:clamp(1.5rem,2.8vw,2.5rem) var(--gutter) clamp(2rem,3vw,3rem);border-top:0 solid var(--rule);border-inline-start:1px solid var(--rule);display:flex;flex-direction:column;gap:1rem}
.era:first-child{border-inline-start-color:transparent}
.era-year{font-size:clamp(4.5rem,10vw,10rem);line-height:.9;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.era-name{font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:400;line-height:1.1;text-transform:uppercase}
.era p{text-wrap:pretty}
.era-caption{font-size:.875rem;color:var(--tx-soft);padding-top:.75rem;border-top:1px solid var(--rule-soft)}
.journey{padding-bottom:clamp(3rem,6vw,6rem)}

/* ---------- 5 · fundador ---------- */
.founder-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,5rem);padding-block:0 clamp(4rem,7vw,7rem);align-items:start}
.founder-shot{position:sticky;top:1.5rem;max-width:35rem;aspect-ratio:4/5;overflow:hidden;background-color:var(--dim)}
.founder-shot img{width:100%;height:100%;object-fit:cover}
.founder-text .rack-title{max-width:none}
.founder-date{margin-top:.5rem;color:var(--tx-soft);font-size:.875rem}
.founder-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(1.5rem,3vw,3rem);margin-top:2rem}
.founder-cols p{margin-bottom:1rem;text-wrap:pretty}
.founder-hq{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--rule);font-size:clamp(1.25rem,1.9vw,1.75rem);line-height:1.2;letter-spacing:-.01em;text-wrap:pretty}

/* ---------- 7 · tabuleiro ---------- */
.club-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid var(--rule)}
.club{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:30rem;border-top:0 solid var(--rule);border-inline-start:1px solid var(--rule)}
.club:nth-child(odd){border-inline-start-color:transparent}
.club:nth-child(n+3){border-top-width:1px}
.club-shot{overflow:hidden;background-color:var(--dim)}
.club-shot img{width:100%;height:100%;object-fit:cover}
.club-text{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem;padding:clamp(1.25rem,2.2vw,2.25rem)}
.club-name{font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:400;line-height:1.08;text-transform:uppercase;text-wrap:balance}
.club-text p{text-wrap:pretty}
.club-text .pill{margin-top:auto}
.club-flip .club-shot{order:2}
.clubs{padding-bottom:clamp(3rem,6vw,6rem)}

/* ---------- 8 · Club LSKD ---------- */
.earn-strip{background-color:var(--black);color:var(--white);text-align:center;font-size:.875rem;letter-spacing:.02em;padding:.7rem var(--gutter)}
.tier-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--rule)}
.tier{display:flex;flex-direction:column;gap:1.25rem;padding:clamp(1.25rem,2.2vw,2rem) var(--gutter) clamp(1.5rem,2.4vw,2.25rem);border-top:0 solid var(--rule);border-inline-start:1px solid var(--rule)}
.tier:first-child{border-inline-start-color:transparent}
.tier-cut{text-transform:uppercase;font-size:.9375rem}
.tier-pct{display:block;font-size:clamp(3.75rem,7vw,7rem);line-height:.9;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.tier-perks li{padding:.6rem 0;border-top:1px solid var(--rule-soft)}
.tier-gate{margin-top:auto;padding-top:1rem;border-top:1px solid var(--black);font-weight:600;text-transform:uppercase;font-size:.875rem;letter-spacing:.02em}
.redeem{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:1.5rem clamp(2rem,4vw,4rem);padding-block:clamp(2.5rem,5vw,4.5rem) clamp(3.5rem,6vw,6rem);align-items:start}
.redeem-title{font-size:clamp(1.375rem,2vw,1.75rem);font-weight:400;text-transform:uppercase;line-height:1.1}
.redeem-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:step}
.redeem-steps li{counter-increment:step;padding:0 1.25rem 0 1rem;border-inline-start:1px solid var(--rule);font-size:1.125rem;line-height:1.2}
.redeem-steps li::before{content:counter(step);display:block;font-family:var(--dot);font-weight:900;font-size:2.25rem;line-height:1;margin-bottom:.75rem}
.redeem-extra{grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem clamp(1.5rem,3vw,3rem);padding-top:1.5rem;border-top:1px solid var(--rule-soft)}
.redeem-extra strong{display:block;font-weight:600;text-transform:uppercase;font-size:.875rem;letter-spacing:.02em;margin-bottom:.35rem}

/* ---------- 9 · bloco de cor ---------- */
.sheds{background-color:var(--grey-block);color:var(--black)}
.sheds .board{padding-bottom:clamp(2rem,4vw,3.5rem)}
.days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--black);padding-bottom:clamp(3rem,6vw,5.5rem)}
.day{padding-top:1.5rem;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.1;text-transform:uppercase}
.day+.day{padding-inline-start:var(--gutter);border-inline-start:1px solid var(--black)}
.day-n{display:block;font-family:var(--dot);font-weight:900;font-size:clamp(6.5rem,17vw,16rem);line-height:.82;letter-spacing:-.02em;margin-bottom:.1em}

/* ---------- 10 · livro-razão ---------- */
.ledger{padding-bottom:clamp(3.5rem,6vw,6rem)}
.entry{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:1rem clamp(1.5rem,4vw,4rem);padding-block:clamp(1.25rem,2.4vw,2.25rem);border-top:1px solid var(--rule);align-items:start}
.entry-n{font-size:clamp(3rem,7vw,7rem);line-height:.92;letter-spacing:-.04em;white-space:nowrap;font-variant-numeric:tabular-nums}
.entry-say{display:grid;gap:.9rem;justify-items:start}
.entry-say p{font-size:clamp(1.125rem,1.7vw,1.625rem);line-height:1.3;max-width:78ch;text-wrap:pretty}

/* ---------- 12 · tecido sangrado ---------- */
.campaign-fabric{padding-block:clamp(4rem,8vw,7.5rem)}
.campaign-fabric .campaign-shot{opacity:.5}
.fabric-shout{font-size:clamp(2.6rem,7.4vw,8rem);font-weight:400;line-height:.95;letter-spacing:-.035em;text-transform:uppercase;text-wrap:balance}
.fabric-intro{columns:2;column-gap:clamp(1.5rem,4vw,4rem);margin-block:clamp(2rem,4vw,3.5rem);max-width:90rem}
.fabric-intro p{break-inside:avoid;text-wrap:pretty}
.gloss-title{padding-top:1.25rem;border-top:1px solid var(--white);font-size:clamp(1.375rem,2vw,1.75rem);font-weight:400;text-transform:uppercase}
.gloss-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem clamp(1.5rem,4vw,4rem);margin-top:2rem}
.gloss h4{font-family:var(--dot);font-weight:900;font-size:1.375rem;letter-spacing:.03em;margin-bottom:1rem}
.gloss dt{font-weight:600;font-size:.875rem;letter-spacing:.02em}
.gloss dd{margin-bottom:1rem;text-wrap:pretty}
.gloss-tags{font-size:1.25rem;line-height:1.35;text-wrap:pretty}
.chips{display:grid;grid-template-columns:repeat(5,minmax(0,6rem));gap:.5rem;margin-top:1.5rem}
.chips img{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--grey-idle);background-color:var(--charcoal)}

/* ---------- 13 · leitor de tecidos ---------- */
.fabric-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,4vw,4.5rem);align-items:start;padding-bottom:clamp(4rem,7vw,7rem)}
.reader{position:sticky;top:1.5rem;background-color:var(--black);color:var(--white);padding:clamp(1.25rem,2.2vw,2.25rem);display:grid;gap:1rem}
.reader-name{font-family:var(--dot);font-weight:900;font-size:clamp(1.125rem,1.6vw,1.5rem);letter-spacing:.04em;min-height:2.4em}
.reader-gsm{font-family:var(--dot);font-weight:900;font-size:clamp(3rem,5.2vw,6rem);line-height:.85;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.reader-mix{display:flex;gap:3px;height:.875rem}
.reader-mix span{flex:1 1 0;min-width:4px;background-color:var(--white);transition:flex-grow .45s var(--ease-in-out)}
.reader-mix span:nth-child(2){background-color:var(--grey-block)}
.reader-mix span:nth-child(3){background-color:var(--grey-idle)}
.reader-comp{min-height:3em}
.reader-origin{padding-top:1rem;border-top:1px solid var(--grey-idle);font-size:.875rem;letter-spacing:.02em}
.reader-origin b{font-weight:600;text-transform:uppercase}
.bolt{padding-block:clamp(1.5rem,2.6vw,2.5rem);border-top:1px solid var(--rule);cursor:default}
.bolt:last-child{border-bottom:1px solid var(--rule)}
.bolt-name{font-size:clamp(2rem,3.5vw,3.75rem);font-weight:400;line-height:.98;letter-spacing:-.03em;text-transform:uppercase;color:var(--grey-idle);overflow-wrap:anywhere;transition:color .2s ease}
.bolt.is-on .bolt-name{color:var(--black)}
.bolt-name{margin-bottom:1rem}
.bolt-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem clamp(1.5rem,3vw,3rem);justify-items:start;align-items:start}
.spec{grid-column:2;grid-row:1 / span 2}
.bolt-body p{text-wrap:pretty;max-width:66ch}
.spec{width:100%;border-top:1px solid var(--rule-soft)}
.spec div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:1rem;padding:.28rem 0;border-bottom:1px solid var(--rule-soft);font-size:.9375rem}
.spec dt{font-size:.8125rem;letter-spacing:.03em;color:var(--tx-soft)}
.spec dd{font-variant-numeric:tabular-nums}

/* ---------- 14 · amostras ---------- */
.swatch-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-block:1px solid var(--rule)}
.swatch{border-top:0 solid var(--rule);border-inline-start:1px solid var(--rule)}
.swatch:first-child{border-inline-start-color:transparent}
.swatch img{width:100%;aspect-ratio:4/5;object-fit:cover}
.swatch figcaption{padding:1rem clamp(.75rem,1.2vw,1.25rem) 1.5rem;font-size:.9375rem;color:var(--tx-soft);text-wrap:pretty}
.swatch b{display:block;font-weight:400;font-size:1.25rem;line-height:1.1;text-transform:uppercase;color:var(--black);margin-bottom:.35rem}
.swatches{padding-bottom:clamp(3rem,6vw,6rem)}

/* ---------- 15 · V-Contour ---------- */
.contour-top{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(2rem,5vw,5rem);align-items:end;padding-block:clamp(1rem,2vw,2rem) clamp(2rem,4vw,3.5rem)}
.contour-say{display:grid;gap:1.25rem;justify-items:start}
.contour-title{font-size:clamp(2rem,4.8vw,5rem);font-weight:400;line-height:.98;letter-spacing:-.03em;text-transform:uppercase;text-wrap:balance}
.contour-say p{font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.3;max-width:60ch;text-wrap:pretty}
.contour-shot{max-width:32rem;justify-self:end;width:100%;aspect-ratio:4/5;overflow:hidden;background-color:var(--dim)}
.contour-shot img{width:100%;height:100%;object-fit:cover}
.inseam{display:grid;grid-template-columns:repeat(7,minmax(10.5rem,1fr));overflow-x:auto;border-block:1px solid var(--rule);scrollbar-width:thin}
.inseam li{padding:1.25rem clamp(.9rem,1.4vw,1.5rem) 1.5rem;border-top:0 solid var(--rule);border-inline-start:1px solid var(--rule)}
.inseam li:first-child{border-inline-start-color:transparent}
.inseam b{display:block;font-weight:400;font-size:clamp(2.25rem,3.6vw,3.75rem);line-height:.95;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.inseam span{display:block;text-transform:uppercase;font-size:.8125rem;letter-spacing:.03em;margin:.35rem 0 .75rem}
.inseam em{display:block;font-style:normal;font-size:.9375rem;line-height:1.25;color:var(--tx-soft)}

/* faixa de produtos (carrossel da home) */
.rack{display:flex;gap:clamp(1rem,2.8vw,2.5rem);overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);padding:0 var(--gutter) 1.5rem;scrollbar-width:thin}
.kit{flex:0 0 clamp(15rem,22.4vw,20.5rem);scroll-snap-align:start;display:flex;flex-direction:column;gap:.5rem}
.kit-shot{display:block;aspect-ratio:4/5;overflow:hidden;background-color:var(--dim)}
.kit-shot img{width:100%;height:100%;object-fit:cover;outline:1px solid rgba(0,0,0,.06);outline-offset:-1px;transition:transform .5s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.kit-shot:hover img{transform:scale(1.03)}}
.kit-line{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-top:.5rem}
.kit-name{font-size:1.0625rem;font-weight:400;line-height:1.2;text-wrap:pretty}
.kit-price{flex:none;white-space:nowrap;padding-inline-start:.75rem;border-inline-start:1px solid var(--rule);font-variant-numeric:tabular-nums}
.kit-type{color:var(--tx-soft)}
.kit-facts{font-size:.875rem;line-height:1.35;color:var(--tx-soft);display:grid;gap:.25rem;padding-top:.6rem;border-top:1px solid var(--rule-soft)}
.kit-sizes{font-size:.8125rem;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.contour,.collection{padding-bottom:clamp(3rem,6vw,6rem)}
.contour .inseam+.rack-head{padding-top:clamp(2rem,4vw,3.5rem)}
.contour{padding-top:clamp(2.5rem,5vw,4.5rem)}

/* ---------- 16 · suporte ---------- */
.support-rows{padding-bottom:clamp(3.5rem,6vw,6rem)}
.level{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:1rem clamp(1.5rem,4vw,4rem);padding-block:clamp(1.25rem,2.4vw,2.25rem);border-top:1px solid var(--rule);align-items:start}
.level-name{font-size:clamp(1.5rem,2.3vw,2.25rem);font-weight:400;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.level-say{columns:2;column-gap:clamp(1.5rem,3vw,3rem)}
.level-say p{break-inside:avoid;margin-bottom:.9rem;text-wrap:pretty}

/* ---------- 17 · 2 for ---------- */
.bundle-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,5rem);align-items:start;padding-block:clamp(1rem,2vw,2rem) clamp(4rem,7vw,7rem)}
.bundle-shot{position:sticky;top:1.5rem;max-width:35rem;aspect-ratio:4/5;overflow:hidden;background-color:var(--dim);margin-top:clamp(2.5rem,5vw,4.5rem)}
.bundle-shot img{width:100%;height:100%;object-fit:cover}
.bundle-list{display:grid;justify-items:start}
.bundle-list .rack-head,.price-list{width:100%}
.price-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem clamp(1rem,2.4vw,2.5rem);padding:.7rem 0;border-top:1px solid var(--rule);font-size:clamp(1.5rem,2.7vw,2.75rem);line-height:1.1;letter-spacing:-.02em}
.price-list li:last-child{border-bottom:1px solid var(--rule)}
.price-list b{font-weight:400;min-width:5.6em;white-space:nowrap;font-variant-numeric:tabular-nums}
.price-list span{text-transform:uppercase;color:var(--grey-idle)}
.bundle-list .pill{margin-top:2rem}

/* ---------- 20 · as trocas ---------- */
.swap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(0,4.5fr) minmax(0,3.5fr);gap:1rem clamp(1.25rem,2.5vw,2.5rem);padding:clamp(1.5rem,2.8vw,2.75rem) var(--gutter);border-top:1px solid var(--rule);align-items:start}
.swap:last-child{border-bottom:1px solid var(--rule)}
.swap-year{font-family:var(--dot);font-weight:900;font-size:1.5rem;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.swap-name{font-size:clamp(3.75rem,7.6vw,8.5rem);font-weight:400;line-height:.84;letter-spacing:-.045em}
.swap-say{display:grid;gap:.9rem}
.swap-say h3{font-size:1.25rem;font-weight:400;text-transform:uppercase;line-height:1.1}
.swap-say p{text-wrap:pretty}
.swap-shot{aspect-ratio:3/2;overflow:hidden;background-color:var(--dim)}
.swap-shot img{width:100%;height:100%;object-fit:cover}
.swaps{padding-bottom:clamp(3.5rem,6vw,6rem)}

/* ---------- 21 · app ---------- */
.pocket{background-color:var(--black);color:var(--white)}
.pocket-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,3fr) minmax(0,3fr);gap:2rem clamp(1.5rem,3vw,3rem);padding-block:clamp(3rem,5vw,4.5rem);align-items:start}
.pocket-lead{display:grid;gap:1rem;justify-items:start}
.pocket-title{font-size:clamp(1.75rem,2.8vw,2.75rem);font-weight:400;line-height:1;letter-spacing:-.02em;text-transform:uppercase;text-wrap:balance}
.pocket-cut{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.2vw,2.125rem);line-height:1.1}
.pocket-item{padding-inline-start:clamp(1rem,2vw,2rem);border-inline-start:1px solid var(--grey-idle)}
.pocket-item h3{font-size:1.125rem;font-weight:400;text-transform:uppercase;line-height:1.15;margin-bottom:.75rem}
.pocket-item p{color:var(--grey-on-black);text-wrap:pretty}
.pocket-shot{aspect-ratio:3/2;overflow:hidden;background-color:var(--charcoal)}
.pocket-shot img{width:100%;height:100%;object-fit:cover}

/* ---------- 23 · escada ---------- */
.ladder-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(2rem,5vw,5rem);align-items:start;padding-bottom:clamp(4rem,7vw,7rem)}
.ladder-text .rack-title{max-width:none}
.ladder-lead{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.3vw,2.25rem);line-height:1.1;max-width:34ch;margin-bottom:1.75rem;text-wrap:balance}
.rungs{display:grid;gap:.25rem}
.rungs li{width:var(--w,100%);min-width:13.5rem;background-color:var(--black);color:var(--white);padding:.8rem 1.1rem;text-transform:uppercase;font-size:clamp(.9375rem,1.3vw,1.1875rem);letter-spacing:.01em;font-variant-numeric:tabular-nums;transform-origin:left center}
.ladder-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(1.5rem,3vw,3rem);margin-top:2rem}
.ladder-notes p{margin-bottom:1rem;text-wrap:pretty}
.ladder-shot{position:sticky;top:1.5rem;max-width:32rem;justify-self:end;width:100%;aspect-ratio:4/5;overflow:hidden;background-color:var(--dim);margin-top:clamp(2.5rem,5vw,4.5rem)}
.ladder-shot img{width:100%;height:100%;object-fit:cover}

/* ---------- 24 · fecho ---------- */
.closer{background-color:var(--black);color:var(--white);padding-top:clamp(3.5rem,7vw,6.5rem)}
.closer-lead{font-family:var(--serif);font-style:italic;font-size:clamp(1.625rem,2.6vw,2.625rem);line-height:1.08;max-width:58ch;padding-bottom:clamp(1.5rem,3vw,2.5rem)}
.closer-links{border-top:1px solid var(--grey-idle)}
.closer-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:clamp(1rem,2vw,1.75rem) var(--gutter);border-bottom:1px solid var(--grey-idle);color:var(--white);text-decoration:none;text-transform:uppercase;font-size:clamp(2.5rem,9vw,10rem);line-height:.95;letter-spacing:-.04em;transition:background-color .2s ease,color .2s ease}
.closer-go{flex:none;width:clamp(2.75rem,5vw,4.5rem);height:clamp(2.75rem,5vw,4.5rem);fill:none;stroke:currentColor;stroke-width:1.25;transition:transform .25s var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  .closer-link:hover{background-color:var(--white);color:var(--black)}
  .closer-link:hover .closer-go{transform:translateX(.35rem)}
}
.store-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.store{padding:clamp(1.5rem,2.6vw,2.5rem) var(--gutter) clamp(2.5rem,4vw,4rem);border-top:0 solid var(--grey-idle);border-inline-start:1px solid var(--grey-idle);display:grid;gap:.75rem;align-content:start}
.store:first-child{border-inline-start-color:transparent}
.store h3{font-size:.9375rem;font-weight:600;letter-spacing:.02em}
.store p{color:var(--grey-on-black);text-wrap:pretty}
.store-shot{max-width:13rem;margin-top:.75rem}
.store-shot img{width:100%;aspect-ratio:1/1;object-fit:cover}

/* ---------- revelação: estado escondido só sob .com-js ---------- */
.rv{transition:opacity .7s var(--ease-out),transform .7s var(--ease-out),clip-path .8s var(--ease-out);transition-delay:calc(var(--i,0) * 60ms)}
.com-js .rv-up:not(.in){opacity:0;transform:translateY(1.1rem)}
.com-js .rv-wipe:not(.in){clip-path:inset(0 0 100% 0)}
.com-js .board.rv:not(.in) .board-name{opacity:0;transform:translateY(1.75rem)}
.com-js .board.rv:not(.in) .board-foot{opacity:0}
.com-js .board.rv:not(.in) .pips .on{opacity:.15}
.board-name,.board-foot{transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
.board-foot{transition-delay:.16s}
.pips .on{transition:opacity .3s ease}
.pips .on:nth-child(2){transition-delay:.08s}
.pips .on:nth-child(3){transition-delay:.16s}
.pips .on:nth-child(4){transition-delay:.24s}
.pips .on:nth-child(5){transition-delay:.32s}
.pips .on:nth-child(6){transition-delay:.4s}
.com-js .rungs .rv-up:not(.in){opacity:0;transform:scaleX(.3)}

@media (prefers-reduced-motion:reduce){
  .rv,.board-name,.board-foot,.pips .on{transition:opacity .3s ease;transition-delay:0s}
  .com-js .rv:not(.in),.com-js .rv:not(.in) .board-name,.com-js .rungs .rv-up:not(.in){transform:none;clip-path:none}
  .loosekid .v,.loosekid .k,.reader-mix span,.kit-shot img,.closer-go,.pill,.arrow{transition:none}
}

/* ---------- larguras: quebra onde o conteúdo deixa de caber ---------- */
@media (max-width:1180px){
  .tier-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tier:nth-child(odd){border-inline-start-color:transparent}
  .tier:nth-child(n+3){border-top-width:1px}
  .swatch-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  .swatch:nth-child(3n+1){border-inline-start-color:transparent}
  .swatch:nth-child(n+4){border-top-width:1px}
  .swap{grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(0,6fr)}
  .swap-shot{grid-column:2 / -1;max-width:36rem}
  .pocket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .club{min-height:0;grid-template-columns:minmax(0,1fr)}
  .club-shot{aspect-ratio:4/3}
  .club-flip .club-shot{order:0}
  .store-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .store:nth-child(odd){border-inline-start-color:transparent}
  .store:nth-child(n+3){border-top-width:1px}
}
@media (max-width:900px){
  .board-foot,.founder-grid,.redeem,.entry,.fabric-grid,.contour-top,.level,.bundle-grid,.ladder-grid{grid-template-columns:minmax(0,1fr)}
  .founder-shot,.bundle-shot,.ladder-shot{position:static;max-width:none;margin-top:0}
  .contour-shot,.ladder-shot{justify-self:start;max-width:28rem}
  .bundle-grid{padding-top:clamp(2.5rem,5vw,4.5rem)}
  .redeem-extra{grid-column:1}
  .era-row{grid-template-columns:minmax(0,1fr)}
  .era{border-inline-start:0;border-top-width:1px}
  .era:first-child{border-top-width:0}
  .gloss-row{grid-template-columns:minmax(0,1fr)}
  .fabric-intro,.level-say{columns:1}
  .founder-cols,.ladder-notes,.bolt-body{grid-template-columns:minmax(0,1fr)}
  .spec{grid-column:1;grid-row:auto}
  /* leitor vira barra fixa no topo da vitrine */
  .reader{top:0;z-index:2;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem 1rem;padding:.75rem var(--gutter);margin-inline:calc(var(--gutter) * -1)}
  .reader-name{min-height:0}
  .reader-gsm{font-size:2rem;grid-row:1;grid-column:2}
  .reader-mix{grid-column:1 / -1;height:.5rem}
  .reader-comp{grid-column:1 / -1;min-height:0;font-size:.875rem}
  .reader-origin{display:none}
  .fabric-grid{gap:0}
  .drop-row{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}
  .drop{flex:0 0 76%;scroll-snap-align:start}
  .rungs li{min-width:0}
}
@media (max-width:640px){
  .club-board,.tier-row,.store-row,.pocket-grid,.swap{grid-template-columns:minmax(0,1fr)}
  .club,.tier,.store{border-inline-start:0;border-top-width:1px}
  .club:first-child,.tier:first-child,.store:first-child{border-top-width:0}
  .swap-shot{grid-column:1;max-width:none}
  .swatch-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .swatch:nth-child(3n+1){border-inline-start-color:var(--rule)}
  .swatch:nth-child(odd){border-inline-start-color:transparent}
  .swatch:nth-child(n+3){border-top-width:1px}
  .redeem-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 0}
  .redeem-extra{grid-template-columns:minmax(0,1fr)}
  .days{grid-template-columns:minmax(0,1fr)}
  .day+.day{padding-inline-start:0;border-inline-start:0;border-top:1px solid var(--black);margin-top:1.5rem}
  .pocket-item{padding-inline-start:0;border-inline-start:0;padding-top:1.25rem;border-top:1px solid var(--grey-idle)}
  .chips{grid-template-columns:repeat(5,minmax(0,1fr))}
  .kit{flex-basis:68%}
  .rack-head{align-items:flex-start}
  .board-tally{flex-wrap:wrap}
  .pill{padding-inline:1.5rem}
  .price-list b{min-width:0;width:100%}
}
