@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/montserrat-400.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/montserrat-600.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/montserrat-700.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/montserrat-800.woff2) format('woff2')}

:root{--ink:#0b0f12;--steel:#1e252c;--blue:#1755c7;--orange:#ff8029;--mist:#f1f3f4;--text:#1d2429;--soft:#3b464d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:400 16px/1.6 'Montserrat',system-ui,sans-serif;color:var(--text);background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* bloco do pacote */
.pular{position:absolute;left:-999px;top:8px;z-index:100;background:#000;color:#fff;padding:12px 18px;font-weight:700;text-decoration:none}
.pular:focus{left:8px}
.rascunho{background:var(--orange);color:#111;font:600 13px/1.4 'Montserrat',sans-serif;text-align:center;padding:8px 16px}
.pacote{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:8px 16px;background:#fff;border-bottom:1px solid #e1e3e4}
.pacote-abas{display:flex;flex-wrap:wrap;gap:4px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font:600 14px 'Montserrat',sans-serif;color:var(--text);text-decoration:none;border-radius:2px}
.pacote-abas a:hover{background:var(--mist)}
.pacote-abas a[aria-current="page"]{background:#000;color:#fff}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;background:var(--blue);color:#fff;font:700 14px 'Montserrat',sans-serif;border-radius:999px;text-decoration:none}
.chat:hover{background:#0f3f99}
.rodape{background:var(--steel);color:#e8edf0;padding:40px 24px;text-align:center;font-size:14px}
.rodape p{margin:0 auto 14px;max-width:760px}
.rodape a{color:#fff}
.rodape-chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 26px;background:var(--blue);border-radius:999px;font-weight:700;text-decoration:none}
.rodape-fontes{color:#aab4bb;font-size:13px}

/* estrutura */
.sec{position:relative;overflow-x:clip;padding:72px 0}
.wrap{position:relative;z-index:2;width:min(1200px,calc(100% - 48px));margin-inline:auto}
.head{max-width:760px;margin-bottom:40px}
.head.center{margin-inline:auto;text-align:center}
.head.center .lead{margin-inline:auto}
.head.right{margin-left:auto;text-align:right}
.head.right .lead{margin-left:auto}
h1,h2,h3{margin:0}
h1{font:800 clamp(40px,6.4vw,84px)/1.02 'Montserrat',sans-serif;letter-spacing:-.02em;margin-bottom:22px}
h2{font:800 clamp(28px,4vw,52px)/1.08 'Montserrat',sans-serif;letter-spacing:-.01em;margin-bottom:18px}
.lead{font-size:18px;max-width:60ch;margin:0 0 18px}
.eyebrow{font:700 12px/1.4 'Montserrat',sans-serif;letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px;color:#ff9a52}
.eyebrow.ink-blue{color:var(--blue)}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;font:700 14px 'Montserrat',sans-serif;border:2px solid transparent;border-radius:999px;text-decoration:none;text-align:center;transition:background .2s,color .2s}
.btn-line{border-color:#fff;color:#fff;background:transparent}
.btn-line:hover{background:#fff;color:var(--ink)}
.btn-solid{background:#fff;color:var(--ink)}
.btn-solid:hover{background:var(--orange)}
.btn-ink{background:#000;color:#fff;border-radius:2px;width:100%}
.btn-ink:hover{background:var(--blue)}
.sheet-text .btn-ink,.station-text .btn-ink{width:auto}

/* fotos de fundo (fundo da seção fica transparente; a cor vive no .bg) */
.foto .bg{position:absolute;inset:0;background:#0b0f12}
.foto .bg img{width:100%;height:100%;max-width:2000px;margin-inline:auto;object-fit:cover}
.veil{position:absolute;inset:0;z-index:1}
.foto{color:#fff;display:flex;align-items:center}

/* 1 hero */
.hero{min-height:880px;align-items:flex-end;padding:140px 0 72px}
.hero-in>*{max-width:740px}
.hero-in .lead{font-size:19px}
.hero-in>.jump{max-width:none}
.jump ul{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,max-content);gap:8px}
.jump a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.55);border-radius:999px;font:600 13px 'Montserrat',sans-serif;text-decoration:none;color:#fff}
.jump a:hover{background:#fff;color:var(--ink)}

/* 2 lanes */
.lanes{padding:56px 0}
.lane-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lane{text-align:center}
.lane .tile{background:var(--mist);border-radius:8px;height:150px;display:grid;place-items:center;margin-bottom:12px}
.lane .tile img{width:112px;height:112px;object-fit:contain}
.lane h3{font:700 15px 'Montserrat',sans-serif;margin-bottom:4px}
.lane p{margin:0;font-size:14px;color:var(--soft)}

/* 3 ridge, 9 club, 15 summit */
.ridge{min-height:720px}
.ridge-in{max-width:620px;margin-left:max(24px,calc((100% - 1200px)/2))}
.ridge-in,.club-in{width:min(620px,calc(100% - 48px))}
.ridge h2{font-size:clamp(40px,6vw,84px)}
.club{min-height:600px}
.club-in{margin-left:max(24px,calc((100% - 1200px)/2))}
.summit{min-height:640px;text-align:center}
.summit-in{max-width:780px}
.summit .btns{justify-content:center}
.summit .lead{margin-inline:auto}

/* 4 weigh-in */
.escuro{background-color:var(--steel);color:#e8edf0}
.rows{list-style:none;margin:0;padding:0}
.row{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid rgba(255,255,255,.14)}
.thumb{flex:0 0 72px;height:72px;background:#2c3640;border-radius:6px;display:grid;place-items:center}
.thumb img{width:56px;height:56px;object-fit:contain}
.mid{display:contents}
.nm{flex:0 0 230px;font:700 14px 'Montserrat',sans-serif;letter-spacing:.04em}
.track{flex:1 1 auto;min-width:0;height:12px;background:#2c3640;border-radius:6px;overflow:hidden}
.bar{display:block;height:100%;width:calc(var(--w) * 100%);background:var(--orange);border-radius:6px;transform-origin:left;transform:scaleX(1);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.kg{flex:0 0 160px;text-align:right;font:800 18px 'Montserrat',sans-serif}
.note{margin:28px 0 0;max-width:70ch;color:#aab4bb;font-size:15px}

/* cartões (3, 5, 10, 13) */
.cards{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:var(--mist);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:8px;min-width:0}
.claro .card{background:#fff}
.card .tile{background:#fff;border-radius:8px;aspect-ratio:1/1;display:grid;place-items:center}
.claro .card .tile{background:var(--mist)}
.card .tile img{width:84%;height:84%;object-fit:contain}
.card h3{font:700 15px/1.3 'Montserrat',sans-serif;letter-spacing:.03em;text-transform:uppercase;margin:8px 0 0;color:#000}
.desc{margin:0;font-size:14px;color:var(--soft);flex:1}
.rate{margin:0;font-size:13px;color:var(--soft)}
.stars{color:#e69100;letter-spacing:1px}
.price{margin:4px 0;font:700 15px 'Montserrat',sans-serif;color:#000}
.was{text-decoration:line-through;color:#56626a;font-weight:400;font-size:13px}
.badge{display:inline-block;background:var(--blue);color:#fff;font:700 11px 'Montserrat',sans-serif;padding:2px 8px;border-radius:2px;margin-left:6px}
.card.wide{flex-direction:row;align-items:stretch;gap:20px;padding:16px}
.card.wide .tile{flex:0 0 40%;aspect-ratio:auto;min-height:220px}
.card-body{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;justify-content:center}
.card-body h3{margin-top:0}
.air .head{margin-bottom:32px}

/* 6 duo */
.cor{background-color:var(--blue);color:#fff}
.duo{padding:40px 0}
.duo .wrap{width:min(1440px,calc(100% - 32px))}
.duo .eyebrow{color:#fff}
.duo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.duo-tile{background:#0f3a8a;border-radius:4px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:620px;min-width:0}
.duo-tile h2{font-size:clamp(26px,3vw,40px);text-transform:uppercase}
.duo-tile p{margin:0 0 14px}
.duo-img{flex:1;min-height:260px;display:grid;place-items:center}
.duo-img img{width:auto;height:100%;max-height:400px;object-fit:contain}

/* 7 founders */
.trail .head{margin-bottom:32px}
.story{columns:2;column-gap:48px;max-width:1100px;color:#2a343a}
.story p{margin:0 0 16px}
.trio{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.trio img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:6px}
.trio li:last-child img{object-position:50% 100%}

/* 8 datasheet, 12 station, 14 notes */
.claro{background-color:#eceff1}
#shelf-camp.claro{background-color:var(--mist)}
.sheet-grid,.station-grid,.notes-grid{display:grid;gap:48px;align-items:stretch}
.sheet-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.station-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.notes-grid{grid-template-columns:minmax(0,4fr) minmax(0,6fr)}
.sheet-img{background:#fff;border-radius:8px;min-height:420px;position:relative;overflow:hidden}
.sheet-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:16px}
.chip{display:inline-block;font:700 11px 'Montserrat',sans-serif;letter-spacing:.06em;background:var(--orange);color:#111;padding:3px 8px;border-radius:2px;vertical-align:middle;margin-left:8px}
.spec{margin:0 0 20px}
.spec div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #cdd3d7}
.spec dt{font-weight:600;color:var(--soft)}
.spec dd{margin:0;font-weight:700;text-align:right}
.station-imgs{display:flex;flex-direction:column;gap:16px}
.station-imgs .tile{flex:1;min-height:220px;background:var(--mist);border-radius:8px;display:grid;place-items:center}
.station-imgs img{width:auto;height:100%;max-height:300px;object-fit:contain}
.notes-imgs{display:flex;flex-direction:column;gap:16px}
.notes-imgs .og{width:100%;border-radius:6px}
.notes-imgs .fill{flex:1 1 0;min-height:240px;position:relative;border-radius:6px;overflow:hidden}
.notes-imgs .fill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.faq{margin:0}
.faq div{padding:18px 0;border-top:1px solid #d8dde0}
.faq dt{font:700 17px/1.4 'Montserrat',sans-serif;margin-bottom:6px}
.faq dd{margin:0;color:#2f3a41}
.after{margin:28px auto 0;max-width:70ch;color:var(--soft);font-size:15px}
.after p{margin:0 0 8px}
.lineup{margin:8px 0 0;padding-left:20px}
.lineup li{margin-bottom:6px}
.notes-text .after{margin-left:0}

/* 11 numbers */
.nums{background-color:var(--orange);color:var(--ink)}
.nums .eyebrow{color:#111}
.stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.stat{background:#fff;border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:10px;text-align:center;min-width:0}
.big{margin:0;font:800 clamp(26px,3vw,40px)/1.1 'Montserrat',sans-serif;color:var(--blue)}
.cap{margin:0;font-size:14px;color:var(--soft);flex:1}
.mini{display:flex;gap:12px;justify-content:center}
.mini img{width:96px;height:96px;object-fit:contain;background:var(--mist);border-radius:6px;padding:8px}
.nums .note{color:var(--ink);margin-inline:auto;text-align:center}

/* revelação: estado invisível só com JS */
.rv{transition:opacity .7s ease,transform .7s ease}
.com-js .rv:not(.in){opacity:0;transform:translateY(18px)}
.com-js .row.rv:not(.in) .bar{transform:scaleX(0)}
@media (prefers-reduced-motion:reduce){
  .rv,.bar{transition:none}
  .com-js .rv:not(.in){opacity:1;transform:none}
  .com-js .row.rv:not(.in) .bar{transform:scaleX(1)}
  html{scroll-behavior:auto}
}

@media (max-width:1000px){
  .c4,.c3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lane-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .duo-grid,.stats{grid-template-columns:minmax(0,1fr)}
  .sheet-grid,.station-grid,.notes-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .story{columns:1}
  .trio{grid-template-columns:minmax(0,1fr)}
  .station-imgs{flex-direction:row}
  .station-imgs .tile{min-height:200px}
  .notes-imgs .fill{min-height:300px}
  .hero{min-height:720px}
}
@media (max-width:700px){
  .pacote-abas .longo{display:none}
  .pacote-abas .curto{display:inline}
  .pacote-abas a{padding:0 9px;font-size:13px}
  .c2{grid-template-columns:minmax(0,1fr)}
  .card.wide{flex-direction:column}
  .card.wide .tile{flex:none;min-height:220px}
  .thumb{flex-basis:56px;height:56px}
  .mid{display:flex;flex-direction:column;gap:10px;flex:1 1 0;min-width:0}
  .nm{flex:none;min-width:0}
  .track{flex:none;width:100%}
  .kg{flex:0 0 auto;max-width:42%}
  .jump ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jump a{text-align:center;padding:0 10px}
  .sec{padding:56px 0}
  .ridge,.club,.summit{min-height:0}
  .duo-tile{padding:24px;min-height:0}
}
@media (max-width:520px){
  .c4,.c3{grid-template-columns:minmax(0,1fr)}
  .station-imgs{flex-direction:column}
  .lead{font-size:16px}
}
