/* ==========================================================================
   Costa Vertical — folha de estilo do site público
   Paleta derivada do Costa Vertical (theme-color #F54C15)
   ========================================================================== */

:root{
  /* ---- base: azul-marinho do logo em vez de quase-preto ---- */
  --rocha:#0F1A28;          /* fundo — marinho profundo, não preto */
  --rocha-2:#16253A;        /* superfícies */
  --rocha-3:#1D3049;        /* superfície elevada */
  --linha:#27405E;
  --linha-2:#345273;
  --areia:#F2EEE8;          /* texto quente sobre o azul */
  --areia-dim:#9DB0C6;

  /* ---- marca ---- */
  --laranja:#F54C15;
  --laranja-cl:#FF7A45;
  --laranja-esc:#B8330A;
  --marinho:#0A2A4B;

  /* ---- família de acentos: cada área do site tem a sua cor ---- */
  --sol:#FFB03A;            /* nascer do sol, avisos, destaques quentes */
  --agua:#2BC4B4;           /* canyoning, água */
  --ceu:#57A6F0;            /* clima, informação */
  --verde:#5BC489;          /* trilha, condição boa */
  --mar:var(--ceu);         /* compatibilidade com etiquetas antigas */
  --ok:#5BC489;
  --alerta:#FFB03A;

  /* ---- gradientes vivos ---- */
  --grad-sol:linear-gradient(120deg,#FFB03A,#F54C15 62%,#E0342B);
  --grad-mar:linear-gradient(140deg,#2BC4B4,#57A6F0);
  --brilho-sol:radial-gradient(ellipse at center,rgba(255,176,58,.24),rgba(245,76,21,.14) 42%,transparent 70%);

  --rail:76px;
  --pad:clamp(18px,4vw,56px);
  --max:1240px;

  /* raios — nada mais é caixa de canto vivo */
  --r-xs:8px;
  --r:14px;
  --r-lg:22px;
  --r-xl:30px;
  --pill:999px;

  /* profundidade em camadas, nunca uma sombra só */
  --sombra:0 1px 2px rgba(4,12,22,.4), 0 14px 34px -22px rgba(4,12,22,.95);
  --sombra-alta:0 2px 4px rgba(4,12,22,.45), 0 28px 60px -30px rgba(4,12,22,1);
  --curva:cubic-bezier(.22,.68,.28,1);
  color-scheme:dark;
}

html[data-tema="claro"]{
  --rocha:#F7F4EF;
  --rocha-2:#FFFFFF;
  --rocha-3:#F1ECE4;
  --linha:#E2DACE;
  --linha-2:#CDC1B2;
  --areia:#16212E;
  --areia-dim:#63707F;
  --laranja:#E04310;
  --laranja-cl:#F54C15;
  --marinho:#0A2A4B;
  --sol:#E08A00;
  --agua:#0E9C90;
  --ceu:#2C7FCB;
  --verde:#2F9A62;
  --mar:var(--ceu);
  --ok:#2F9A62;
  --alerta:#E08A00;
  --brilho-sol:radial-gradient(ellipse at center,rgba(255,176,58,.3),rgba(245,76,21,.16) 42%,transparent 70%);
  --sombra:0 1px 2px rgba(60,45,30,.06), 0 16px 34px -24px rgba(60,45,30,.45);
  --sombra-alta:0 2px 6px rgba(60,45,30,.08), 0 30px 60px -32px rgba(60,45,30,.5);
  color-scheme:light;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1100px 620px at 82% -8%, color-mix(in srgb,var(--ceu) 13%,transparent), transparent 62%),
    radial-gradient(900px 520px at -10% 12%, color-mix(in srgb,var(--laranja) 9%,transparent), transparent 60%),
    var(--rocha);
  background-attachment:fixed;
  color:var(--areia);
  font-family:"Instrument Sans",system-ui,-apple-system,sans-serif;
  font-size:15.5px;line-height:1.62;-webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;letter-spacing:-.005em;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--laranja-cl);outline-offset:3px;border-radius:2px}
::selection{background:var(--laranja);color:#fff}

.mono{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
h1,h2,h3,h4,.disp{font-family:"Big Shoulders Display","Instrument Sans",sans-serif;font-weight:900;line-height:.92;letter-spacing:-.015em;text-transform:uppercase}
em.hl{font-style:normal;color:var(--laranja)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.sec{padding:clamp(38px,6vw,64px) 0;scroll-margin-top:72px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- corda de rapel (elemento assinatura) ---------- */
.rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail);z-index:40;pointer-events:none;display:none}
.rail::before{content:"";position:absolute;left:38px;top:0;bottom:0;width:1px;background:var(--linha)}
.rail-paid{position:absolute;left:38px;top:0;width:2px;border-radius:var(--pill);height:0;background:linear-gradient(180deg,var(--sol),var(--laranja));box-shadow:0 0 14px color-mix(in srgb,var(--laranja) 55%,transparent)}
.rail-dot{position:absolute;left:33px;top:0;width:11px;height:11px;border-radius:50%;background:var(--laranja);border:2px solid var(--rocha)}
.rail-tick{position:absolute;left:22px;display:flex;align-items:center;gap:8px;transform:translateY(-50%)}
.rail-tick i{display:block;width:33px;height:1px;background:var(--linha);transition:background .3s}
.rail-tick span{font-family:"IBM Plex Mono",monospace;font-size:9.5px;color:var(--areia-dim);letter-spacing:.1em;white-space:nowrap;transition:color .3s}
.rail-tick.on i{background:var(--laranja)}
.rail-tick.on span{color:var(--areia)}
.topline{position:fixed;top:0;left:0;height:3px;width:0;background:var(--grad-sol);z-index:60}

/* ---------- topo ---------- */
header.top{position:fixed;top:0;left:0;right:0;z-index:50;backdrop-filter:blur(14px);
  background:color-mix(in srgb,var(--rocha) 82%,transparent);border-bottom:1px solid var(--linha)}
.nav{display:flex;align-items:center;gap:18px;padding:12px var(--pad);max-width:var(--max);margin:0 auto}
.brand{display:flex;align-items:center;gap:9px;margin-right:auto}
.brand img{width:34px;height:34px;flex:none;border-radius:50%}
.brand b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:20px;letter-spacing:.02em;text-transform:uppercase;line-height:1;display:block}
.brand small{display:block;font-size:9.5px;letter-spacing:.22em;color:var(--areia-dim);text-transform:uppercase;font-family:"IBM Plex Mono",monospace}
.menu{display:none;gap:20px;align-items:center}
.menu a{font-size:13px;color:var(--areia-dim);transition:color .18s;position:relative}
.menu a:hover,.menu a[aria-current]{color:var(--areia)}
.menu a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;border-radius:var(--pill);background:var(--laranja)}
.icobtn{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--linha);border-radius:var(--pill);background:none;cursor:pointer;transition:.22s var(--curva)}
.icobtn:hover{border-color:var(--laranja);color:var(--laranja);transform:translateY(-1px)}
.btn{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;padding:10px 18px;border-radius:var(--pill);border:1px solid var(--linha);background:none;cursor:pointer;transition:.22s var(--curva)}
.btn:hover{border-color:var(--areia-dim);transform:translateY(-1px)}
.btn-p{background:var(--laranja);border-color:var(--laranja);color:#fff;box-shadow:0 8px 20px -12px var(--laranja)}
.btn-p:hover{background:var(--laranja-cl);border-color:var(--laranja-cl);color:#fff;box-shadow:0 12px 26px -12px var(--laranja)}
.btn-sm{padding:7px 14px;font-size:12.5px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.hamb{display:grid}
.drawer{position:fixed;inset:0;z-index:55;background:var(--rocha);padding:70px var(--pad) 30px;transform:translateY(-100%);transition:transform .32s cubic-bezier(.3,.8,.3,1);overflow:auto}
.drawer.open{transform:none}
.drawer a{display:block;font-family:"Big Shoulders Display",sans-serif;font-weight:700;text-transform:uppercase;font-size:32px;padding:11px 0;border-bottom:1px solid var(--linha);transition:color .2s,padding-left .2s var(--curva)}
.drawer a:hover{color:var(--laranja);padding-left:8px}
@media (min-width:860px){ .menu{display:flex} .hamb{display:none} }
@media (min-width:1120px){ .rail{display:block} body{padding-left:var(--rail)} header.top{left:var(--rail)} }

/* ---------- hero ---------- */
.hero{padding:112px 0 36px;position:relative;overflow:hidden}
.hero-marca{position:absolute;right:-8%;top:2%;width:min(52vw,440px);opacity:.05;pointer-events:none;
  filter:saturate(0);z-index:0}
html[data-tema="claro"] .hero-marca{opacity:.07}
.hero::after{content:"";position:absolute;inset:auto -14% -48% 30%;height:74vh;
  background:var(--brilho-sol);pointer-events:none;filter:blur(6px)}
.hero::before{content:"";position:absolute;left:calc(var(--pad)*-1);right:0;top:78px;height:1px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--laranja) 55%,transparent),transparent);
  pointer-events:none}
.hero-grid{display:grid;gap:28px;position:relative;z-index:1}
.eyebrow{display:flex;align-items:center;gap:9px;color:var(--areia-dim);margin-bottom:14px}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--sol);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--sol) 22%,transparent);animation:brilha 3s ease-in-out infinite}
@keyframes brilha{50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--sol) 6%,transparent)}}
.hero h1{font-size:clamp(56px,14vw,142px);margin-bottom:16px}
.hero h1 span{display:block}
.hero h1 .l2{margin-left:.05em;background:var(--grad-sol);-webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent}
.lead{font-size:clamp(15px,2vw,17px);color:var(--areia-dim);max-width:50ch}
.lead b{color:var(--areia);font-weight:600}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);margin-top:34px}
.stats div{padding:16px 0}
.stats div+div{border-left:1px solid var(--linha);padding-left:16px}
.stats b{display:block;font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:38px;line-height:1;
  background:var(--grad-sol);-webkit-background-clip:text;background-clip:text;color:transparent}
.stats span{color:var(--areia-dim);font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}

.ficha{border:1px solid var(--linha);background:linear-gradient(165deg,var(--rocha-2),var(--rocha));border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sombra)}
.ficha h4{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--areia-dim);
  padding:13px 18px;border-bottom:1px solid var(--linha);font-weight:500;display:flex;justify-content:space-between;align-items:center}
.ficha ul{list-style:none}
.ficha li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 18px;border-bottom:1px dashed var(--linha);font-size:13px}
.ficha li:last-child{border-bottom:0}
.ficha li span:first-child{color:var(--areia-dim);font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}
.ficha li b{font-weight:600;text-align:right}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(75,163,122,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 7px rgba(75,163,122,0)}100%{box-shadow:0 0 0 0 rgba(75,163,122,0)}}

/* ---------- cabeçalho de seção ---------- */
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  padding-bottom:15px;border-bottom:1px solid var(--linha);margin-bottom:28px}
.shead .mono{color:var(--laranja);display:inline-flex;align-items:center;gap:7px;margin-bottom:9px}
.shead .mono::before{content:"";width:18px;height:2px;border-radius:var(--pill);background:var(--grad-sol)}
.shead h2{font-size:clamp(28px,5vw,50px)}
.shead a{font-size:12.5px;color:var(--areia-dim);white-space:nowrap;border-bottom:1px solid var(--linha);padding-bottom:2px;transition:.18s}
.shead a{border-radius:var(--pill);border-bottom:0;padding:6px 13px;border:1px solid var(--linha)}
.shead a:hover{color:var(--areia);border-color:var(--laranja);transform:translateY(-1px)}

/* ---------- diário / posts ---------- */
.post{display:grid;grid-template-columns:1fr;gap:6px;padding:22px 0;border-bottom:1px solid var(--linha);position:relative;transition:.25s var(--curva)}
.post::before{content:"";position:absolute;left:calc(var(--pad)*-1);top:0;bottom:0;width:3px;border-radius:var(--pill);background:var(--laranja);transform:scaleY(0);transform-origin:top;transition:transform .35s var(--curva)}
.post:hover::before{transform:scaleY(1)}
.post:hover h3{color:var(--laranja-cl)}
.pmeta{display:flex;flex-wrap:wrap;gap:5px 13px;color:var(--areia-dim);align-items:center}
.tag{color:var(--mar);border:1px solid color-mix(in srgb,var(--mar) 40%,transparent);padding:3px 10px;border-radius:var(--pill);font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.tag{background:color-mix(in srgb,var(--mar) 12%,transparent)}
.tag.laranja{color:var(--laranja);border-color:color-mix(in srgb,var(--laranja) 40%,transparent);background:color-mix(in srgb,var(--laranja) 12%,transparent)}
.tag.mar,.tag.ceu{color:var(--ceu);border-color:color-mix(in srgb,var(--ceu) 40%,transparent);background:color-mix(in srgb,var(--ceu) 12%,transparent)}
.tag.agua{color:var(--agua);border-color:color-mix(in srgb,var(--agua) 40%,transparent);background:color-mix(in srgb,var(--agua) 12%,transparent)}
.tag.verde{color:var(--verde);border-color:color-mix(in srgb,var(--verde) 40%,transparent);background:color-mix(in srgb,var(--verde) 12%,transparent)}
.tag.sol{color:var(--sol);border-color:color-mix(in srgb,var(--sol) 40%,transparent);background:color-mix(in srgb,var(--sol) 14%,transparent)}
.post h3{font-size:clamp(22px,3.4vw,30px);transition:color .2s}
.post p{color:var(--areia-dim);max-width:70ch;font-size:14px}
.post .num{position:absolute;right:0;top:18px;font-family:"IBM Plex Mono",monospace;font-size:10px;color:var(--linha-2)}
.post-capa{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--r);border:1px solid var(--linha)}

/* ---------- notícias ---------- */
.news{display:grid;gap:14px}
.news-card{border:1px solid var(--linha);border-radius:var(--r-lg);background:var(--rocha-2);overflow:hidden;display:flex;flex-direction:column;
  transition:transform .3s var(--curva),border-color .3s,box-shadow .3s}
.news-card:hover{border-color:color-mix(in srgb,var(--laranja) 50%,transparent);transform:translateY(-3px);box-shadow:var(--sombra)}
.news-card figure{aspect-ratio:16/9;background:var(--rocha-3);overflow:hidden}
.news-card figure img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.news-card:hover figure img{transform:scale(1.04)}
.news-card .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:7px;flex:1}
.news-card h3{font-size:21px}
.news-card p{font-size:13px;color:var(--areia-dim);flex:1}
.news-card .data{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--areia-dim)}
.news-strip{display:flex;gap:12px;align-items:center;border:1px solid var(--linha);
  background:var(--rocha-2);border-radius:var(--pill);padding:11px 20px;font-size:13.5px;flex-wrap:wrap;
  transition:transform .3s var(--curva),border-color .3s}
.news-strip:hover{border-color:color-mix(in srgb,var(--laranja) 55%,transparent);transform:translateY(-1px)}
.news-strip b{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:#fff;background:var(--grad-sol);padding:4px 11px;border-radius:var(--pill)}

/* ---------- serviços ---------- */
.grid-4{display:grid;gap:14px}
.card{border:1px solid var(--linha);background:var(--rocha-2);border-radius:var(--r-lg);padding:20px;display:flex;flex-direction:column;gap:9px;
  transition:transform .3s var(--curva),border-color .3s,box-shadow .3s,background .3s}
.card::after,.tool::after{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:var(--r-lg) var(--r-lg) 0 0;
  background:var(--grad-sol);opacity:0;transition:opacity .3s}
.card{position:relative}
.card:hover::after,.tool:hover::after{opacity:1}
.card:hover{border-color:color-mix(in srgb,var(--laranja) 50%,transparent);background:var(--rocha-3);transform:translateY(-3px);box-shadow:var(--sombra-alta)}
.card .ico,.tool .ico{font-size:20px;line-height:1;width:44px;height:44px;display:grid;place-items:center;
  border-radius:var(--r-xs);background:color-mix(in srgb,var(--laranja) 15%,transparent);
  border:1px solid color-mix(in srgb,var(--laranja) 26%,transparent);margin-bottom:2px}
.tools .tool:nth-child(2) .ico{background:color-mix(in srgb,var(--agua) 15%,transparent);border-color:color-mix(in srgb,var(--agua) 30%,transparent)}
.tools .tool:nth-child(3) .ico{background:color-mix(in srgb,var(--ceu) 15%,transparent);border-color:color-mix(in srgb,var(--ceu) 30%,transparent)}
.tools .tool:nth-child(4) .ico{background:color-mix(in srgb,var(--verde) 15%,transparent);border-color:color-mix(in srgb,var(--verde) 30%,transparent)}
.grid-4 .card:nth-child(2) .ico{background:color-mix(in srgb,var(--agua) 15%,transparent);border-color:color-mix(in srgb,var(--agua) 30%,transparent)}
.grid-4 .card:nth-child(3) .ico{background:color-mix(in srgb,var(--sol) 15%,transparent);border-color:color-mix(in srgb,var(--sol) 30%,transparent)}
.grid-4 .card:nth-child(4) .ico{background:color-mix(in srgb,var(--ceu) 15%,transparent);border-color:color-mix(in srgb,var(--ceu) 30%,transparent)}
.card h3{font-size:23px}
.card p{font-size:13.5px;color:var(--areia-dim);flex:1}
.card .foot{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px dashed var(--linha)}
.price{font-family:"Big Shoulders Display",sans-serif;font-weight:700;font-size:23px}
.price small{font-family:"IBM Plex Mono",monospace;font-size:10px;color:var(--areia-dim);font-weight:400}
.lvl{display:flex;gap:3px;align-items:center}
.lvl i{width:5px;height:5px;border-radius:50%;background:var(--linha-2);display:block}
.lvl i.on{background:var(--verde)}
.lvl.n2 i.on{background:var(--sol)}
.lvl.n3 i.on{background:var(--laranja)}
.lvl span{font-family:"IBM Plex Mono",monospace;font-size:9.5px;color:var(--areia-dim);letter-spacing:.1em;text-transform:uppercase;margin-left:5px}

/* ---------- ferramentas ---------- */
.tools{display:grid;gap:12px}
.tool{border:1px solid var(--linha);border-radius:var(--r-lg);background:var(--rocha-2);padding:20px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;
  transition:transform .3s var(--curva),border-color .3s,box-shadow .3s}
.tool:hover{border-color:color-mix(in srgb,var(--laranja) 55%,transparent);transform:translateY(-3px);box-shadow:var(--sombra)}

.tool h3{font-size:22px}
.tool p{font-size:13px;color:var(--areia-dim);flex:1}
.tool .selo{position:absolute;top:14px;right:14px;border-radius:var(--pill);font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;
  border:1px solid color-mix(in srgb,var(--laranja) 45%,transparent);color:var(--laranja);padding:2px 6px;border-radius:2px}
.tool .go{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--laranja)}

/* ---------- formulários ---------- */
.campo{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}
.campo label{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--areia-dim)}
.campo input,.campo select,.campo textarea{
  background:var(--rocha);border:1px solid var(--linha);border-radius:var(--r-xs);padding:11px 14px;font-size:14.5px;transition:.2s;width:100%}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--laranja);outline:none;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--laranja) 14%,transparent)}
.campo textarea{min-height:110px;resize:vertical;border-radius:var(--r)}
.campo .dica{font-size:11.5px;color:var(--areia-dim)}
.painel{border:1px solid var(--linha);background:var(--rocha-2);border-radius:var(--r-lg);padding:20px}
.aviso{border:1px solid var(--linha);border-left:3px solid var(--alerta);background:var(--rocha-2);border-radius:var(--r);padding:13px 16px;font-size:13.5px;color:var(--areia-dim)}
.aviso.ok{border-left-color:var(--verde)}
.aviso.erro{border-left-color:var(--laranja)}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{border:1px solid var(--linha);border-radius:var(--pill);padding:7px 15px;font-size:12.5px;cursor:pointer;background:none;
  transition:.22s var(--curva);user-select:none}
.chip:hover{border-color:var(--areia-dim);transform:translateY(-1px)}
.chip.on{border-color:transparent;background:var(--grad-sol);color:#fff;box-shadow:0 8px 18px -12px var(--laranja)}

/* ---------- IA ---------- */
.ia-saida{border:1px solid var(--linha);border-left:3px solid var(--ceu);background:var(--rocha-2);border-radius:var(--r);
  padding:18px 20px;white-space:pre-wrap;font-size:14.5px;line-height:1.65;min-height:60px}
.ia-saida h4{font-size:19px;margin:14px 0 6px}
.ia-saida h4:first-child{margin-top:0}
.ia-saida ul{margin:6px 0 6px 18px}
.ia-saida strong{color:var(--areia)}
.pensando{display:inline-flex;gap:4px;align-items:center;color:var(--areia-dim);font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.pensando i{width:6px;height:6px;border-radius:50%;background:var(--ceu);animation:blink 1.2s infinite}
.pensando i:nth-child(2){background:var(--sol)}
.pensando i:nth-child(3){background:var(--laranja)}
.pensando i:nth-child(2){animation-delay:.2s}
.pensando i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,60%,100%{opacity:.25}30%{opacity:1}}

/* ---------- artigo ---------- */
.artigo{max-width:74ch}
.artigo h1{font-size:clamp(34px,6.5vw,64px);margin-bottom:14px}
.artigo .capa{margin:22px 0;border-radius:var(--r-lg);border:1px solid var(--linha);box-shadow:var(--sombra)}
.artigo .conteudo{font-size:16px;line-height:1.72}
.artigo .conteudo p{margin-bottom:15px}
.artigo .conteudo h2{font-size:30px;margin:26px 0 10px}
.artigo .conteudo h3{font-size:23px;margin:22px 0 8px}
.artigo .conteudo ul,.artigo .conteudo ol{margin:0 0 15px 20px}
.artigo .conteudo li{margin-bottom:5px}
.artigo .conteudo img{border-radius:var(--r);border:1px solid var(--linha);margin:18px 0}
.artigo .conteudo blockquote{border-left:3px solid var(--laranja);border-radius:0 var(--r) var(--r) 0;background:var(--rocha-2);padding:12px 16px;margin:20px 0;color:var(--areia-dim);font-style:italic}
.artigo .conteudo a{color:var(--ceu);border-bottom:1px solid color-mix(in srgb,var(--ceu) 45%,transparent)}
.artigo .conteudo a:hover{color:var(--laranja);border-color:var(--laranja)}

/* ---------- paginação / final / rodapé ---------- */
.pag{display:flex;gap:6px;flex-wrap:wrap;margin-top:26px}
.pag a,.pag span{border:1px solid var(--linha);border-radius:var(--pill);padding:8px 14px;font-family:"IBM Plex Mono",monospace;font-size:12px;transition:.2s var(--curva)}
.pag a:hover{border-color:var(--laranja);transform:translateY(-1px)}
.pag .atual{background:var(--grad-sol);border-color:transparent;color:#fff}
.final{border:1px solid var(--linha);border-radius:var(--r-xl);padding:clamp(28px,5.5vw,52px);box-shadow:var(--sombra);text-align:center;
  background:var(--brilho-sol),
             linear-gradient(160deg,color-mix(in srgb,var(--ceu) 16%,var(--rocha-2)),var(--rocha-2))}
.final h2{font-size:clamp(30px,6vw,60px);margin-bottom:12px}
.final p{color:var(--areia-dim);max-width:46ch;margin:0 auto 18px}
.final .cta-row{justify-content:center}
footer.rodape{border-top:1px solid var(--linha);margin-top:50px;padding:28px 0 24px;color:var(--areia-dim);font-size:12.5px}
.fgrid{display:grid;gap:22px}
.social{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.social a{border:1px solid var(--linha);border-radius:var(--pill);padding:6px 13px;font-size:11.5px;transition:.22s var(--curva)}
.social a:hover{border-color:var(--laranja);color:var(--areia);transform:translateY(-1px)}
.fcol h5{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--areia);margin-bottom:9px;font-weight:500}
.fcol a{display:block;padding:3px 0;transition:color .18s}
.fcol a:hover{color:var(--laranja)}
.fbottom{border-top:1px solid var(--linha);margin-top:22px;padding-top:15px;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;font-size:11.5px}

.reveal{opacity:0;transform:translateY(18px)}
.reveal.in{opacity:1;transform:none;transition:opacity .7s ease,transform .7s var(--curva)}

@media (min-width:720px){
  .hero-grid{grid-template-columns:1.55fr .95fr;align-items:end}
  .grid-4,.news,.tools{grid-template-columns:repeat(2,1fr)}
  .post{grid-template-columns:150px 1fr;gap:6px 26px}
  .post .pmeta{flex-direction:column;align-items:flex-start;gap:5px}
  .fgrid{grid-template-columns:1.6fr 1fr 1fr}
  .clima-hoje{grid-template-columns:auto 1fr}
  .col2{display:grid;grid-template-columns:1.5fr 1fr;gap:26px;align-items:start}
}
@media (min-width:1020px){
  .grid-4,.tools{grid-template-columns:repeat(4,1fr)}
  .news{grid-template-columns:repeat(3,1fr)}
}
@media print{
  .rail,.topline,header.top,.rodape,.cta-row,.btn{display:none!important}
  body{background:#fff;color:#000;padding:0}
  .check-grupo,.item{break-inside:avoid;border-color:#ccc}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
  *{transition:none!important;animation:none!important}
}

/* ==========================================================================
   Rotas — cards e página interna
   ========================================================================== */
.rota-grid{display:grid;gap:18px}
@media (min-width:640px){ .rota-grid{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1000px){ .rota-grid{grid-template-columns:repeat(3,1fr)} }

.rota-card{display:flex;flex-direction:column;background:var(--rocha-2);border:1px solid var(--linha);
  border-radius:var(--r-lg);overflow:hidden;position:relative;
  transition:transform .35s var(--curva),border-color .35s,box-shadow .35s}
.rota-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--laranja) 55%,transparent);box-shadow:var(--sombra-alta)}
.rota-card figure{position:relative;aspect-ratio:4/3;overflow:hidden;
  background:linear-gradient(150deg,color-mix(in srgb,var(--ceu) 26%,var(--rocha-3)),var(--rocha-3));
  display:grid;place-items:center}
.rota-card[data-nivel="medio"] figure{background:linear-gradient(150deg,color-mix(in srgb,var(--sol) 26%,var(--rocha-3)),var(--rocha-3))}
.rota-card[data-nivel="avancado"] figure,.rota-card[data-nivel="extremo"] figure{background:linear-gradient(150deg,color-mix(in srgb,var(--laranja) 26%,var(--rocha-3)),var(--rocha-3))}
.rota-card figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--curva)}
.rota-card:hover figure img{transform:scale(1.05)}
.rota-card .sem-capa{font-size:44px;opacity:.28}
.rota-card figure::after{content:"";position:absolute;inset:auto 0 0 0;height:56%;
  background:linear-gradient(transparent,color-mix(in srgb,var(--rocha-2) 92%,transparent))}
.rota-card .etiqueta{position:absolute;top:12px;left:12px;z-index:2;font-family:"IBM Plex Mono",monospace;
  font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:var(--pill);
  background:color-mix(in srgb,var(--rocha) 72%,transparent);backdrop-filter:blur(8px);
  border:1px solid color-mix(in srgb,var(--verde) 55%,transparent);color:var(--verde)}
.rota-card[data-nivel="medio"] .etiqueta{border-color:color-mix(in srgb,var(--sol) 55%,transparent);color:var(--sol)}
.rota-card[data-nivel="avancado"] .etiqueta,.rota-card[data-nivel="extremo"] .etiqueta{
  border-color:color-mix(in srgb,var(--laranja) 55%,transparent);color:var(--laranja-cl)}
.rota-card .corpo{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.rota-card .local{color:var(--areia-dim);font-size:10px}
.rota-card h3{font-size:25px;line-height:.98;transition:color .25s}
.rota-card:hover h3{color:var(--laranja-cl)}
.rota-card p{font-size:13.5px;color:var(--areia-dim);flex:1}
.ficha-linha{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--areia-dim);font-size:10px}
.rota-card .price{color:var(--areia)}
.rota-card .rodape-card{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding-top:12px;margin-top:2px;border-top:1px dashed var(--linha)}
.rota-card .seta{width:30px;height:30px;border-radius:var(--pill);display:grid;place-items:center;
  border:1px solid var(--linha);font-size:13px;color:var(--areia-dim);
  transition:transform .3s var(--curva),background .3s,color .3s,border-color .3s}
.rota-card:hover .seta{background:var(--laranja);border-color:var(--laranja);color:#fff;transform:translateX(3px)}
.rota-card.mini figure{display:none}
.rota-grid.compacta{gap:14px}

/* página da rota */
.rota-pagina .voltar{display:inline-flex;align-items:center;gap:6px;color:var(--areia-dim);
  border:1px solid var(--linha);border-radius:var(--pill);padding:6px 14px;margin-bottom:18px;transition:.22s var(--curva)}
.rota-pagina .voltar:hover{color:var(--areia);border-color:var(--laranja);transform:translateX(-2px)}
.rota-topo .local{color:var(--sol)}
.rota-topo{display:grid;gap:24px;align-items:center;margin-bottom:24px}
@media (min-width:860px){ .rota-topo{grid-template-columns:1.05fr .95fr} }
.rota-topo h1{font-size:clamp(38px,7vw,74px);margin:10px 0 12px}
.rota-topo .local{color:var(--laranja)}
.rota-capa{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-xl);
  border:1px solid var(--linha);box-shadow:var(--sombra-alta)}
.rota-numeros{border-radius:var(--r-lg)}
.rota-lateral{display:flex;flex-direction:column;gap:14px;position:sticky;top:86px}
@media (max-width:719px){ .rota-lateral{position:static} }
.cabeca-lateral{font-size:18px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--linha)}
.lista-check,.lista-levar{list-style:none;display:flex;flex-direction:column;gap:7px;font-size:13.5px}
.lista-check li,.lista-levar li{display:flex;gap:9px;align-items:flex-start;color:var(--areia-dim)}
.lista-check li::before{content:"✓";color:var(--verde);font-weight:700;flex:none}
.lista-levar li::before{content:"◆";color:var(--ceu);font-size:10px;padding-top:4px;flex:none}
.reserva{background:var(--brilho-sol),linear-gradient(160deg,color-mix(in srgb,var(--ceu) 18%,var(--rocha-2)),var(--rocha-2));
  text-align:center;box-shadow:var(--sombra-alta)}
.reserva .price.grande{background:var(--grad-sol);-webkit-background-clip:text;background-clip:text;color:transparent}
.price.grande{font-size:38px;display:block;line-height:1}
.bloco-clima{margin-top:22px}
.bloco-clima h3{font-size:20px;margin-bottom:12px}
.bloco-clima .clima-dias{margin-top:0}

/* ==========================================================================
   Interação — estados que informam, não enfeitam
   ========================================================================== */

/* topo compacto ao rolar */
header.top{transition:padding .3s var(--curva),background .3s,box-shadow .3s}
header.top.compacto{box-shadow:0 10px 30px -24px rgba(0,0,0,.9)}
header.top.compacto .nav{padding-top:7px;padding-bottom:7px}
header.top.compacto .brand img{width:28px;height:28px}
header.top.compacto .brand small{opacity:0;height:0;overflow:hidden}
.brand img{transition:width .3s var(--curva),height .3s var(--curva)}
.brand small{transition:opacity .25s}
.menu a.ativo{color:var(--areia)}
.menu a.ativo::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;
  border-radius:var(--pill);background:var(--grad-sol)}

/* painel de condições ao vivo */
.cond-painel{border:1px solid var(--linha);border-radius:var(--r-lg);overflow:hidden;
  background:linear-gradient(160deg,color-mix(in srgb,var(--ceu) 12%,var(--rocha-2)),var(--rocha-2));
  box-shadow:var(--sombra)}
.cond-abas{display:flex;gap:2px;overflow-x:auto;padding:8px 8px 0;scrollbar-width:none}
.cond-abas::-webkit-scrollbar{display:none}
.cond-aba{flex:none;border:0;background:none;color:var(--areia-dim);cursor:pointer;
  font:inherit;font-size:13px;padding:9px 15px;border-radius:var(--r-xs) var(--r-xs) 0 0;
  position:relative;transition:color .2s,background .2s;white-space:nowrap}
.cond-aba:hover{color:var(--areia);background:color-mix(in srgb,var(--areia) 5%,transparent)}
.cond-aba.on{color:var(--areia);background:var(--rocha-2)}
.cond-aba.on::after{content:"";position:absolute;inset:auto 12px 0 12px;height:2px;
  border-radius:var(--pill);background:var(--grad-sol)}
.cond-corpo{display:grid;gap:18px;padding:20px;border-top:1px solid var(--linha);
  background:var(--rocha-2);transition:opacity .18s}
.cond-corpo.trocando{opacity:.35}
@media (min-width:820px){ .cond-corpo{grid-template-columns:auto 1.15fr 1fr;align-items:center} }
.cond-agora{display:flex;align-items:center;gap:14px}
.cond-emoji{font-size:42px;line-height:1}
.cond-temp{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:46px;line-height:.9;
  display:block;color:var(--areia)}
.cond-temp b{font-weight:900}
.cond-desc{color:var(--areia-dim);margin-top:4px;font-size:10.5px}
.cond-nota{border-left:3px solid var(--sol);padding-left:16px;display:flex;flex-direction:column;gap:5px;position:relative}
.cond-nota.bom{border-left-color:var(--verde)}
.cond-nota.ruim{border-left-color:var(--laranja)}
.cond-nota .mono{color:var(--areia-dim)}
.cond-nota b{font-family:"Big Shoulders Display",sans-serif;font-size:29px;text-transform:uppercase;line-height:1;color:var(--sol)}
.cond-nota.bom b{color:var(--verde)}
.cond-nota.ruim b{color:var(--laranja-cl)}
.cond-nota p{font-size:13px;color:var(--areia-dim)}
.cond-barra{height:5px;border-radius:var(--pill);background:var(--linha);overflow:hidden;margin-top:3px}
.cond-barra i{display:block;height:100%;border-radius:var(--pill);background:var(--grad-sol);
  transition:width .6s var(--curva)}
.cond-nota.bom .cond-barra i{background:linear-gradient(90deg,var(--agua),var(--verde))}
.cond-valor{color:var(--areia-dim)}
.cond-extra{display:flex;flex-direction:column;gap:11px;border-left:1px solid var(--linha);padding-left:18px}
@media (max-width:819px){ .cond-extra{border-left:0;border-top:1px solid var(--linha);padding:16px 0 0} }
.cond-extra .mono{display:block;color:var(--areia-dim);font-size:9.5px}
.cond-extra b{font-family:"Big Shoulders Display",sans-serif;font-size:23px;text-transform:uppercase;line-height:1.05;color:var(--areia)}
.cond-extra .btn{align-self:flex-start}
.cond-rodape{padding:9px 20px;border-top:1px solid var(--linha);color:var(--areia-dim);
  background:color-mix(in srgb,var(--rocha) 45%,transparent);font-size:9.5px}

/* filtro instantâneo */
.filtro-barra{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:22px}
.busca-inline{display:flex;align-items:center;gap:12px;flex:1;min-width:230px;justify-content:flex-end}
.busca-inline input{background:var(--rocha-2);border:1px solid var(--linha);border-radius:var(--pill);
  padding:9px 16px;font-size:13.5px;min-width:210px;transition:.2s}
.busca-inline input:focus{outline:none;border-color:var(--laranja);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--laranja) 14%,transparent)}
.contador{color:var(--areia-dim);white-space:nowrap}
.vazio-filtro{text-align:center;color:var(--areia-dim);padding:34px 16px;font-size:14px;
  border:1px dashed var(--linha);border-radius:var(--r-lg);display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}
.rota-card[hidden]{display:none}

/* carregar mais */
.mais-wrap{display:flex;align-items:center;gap:14px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.mais-wrap .mono{color:var(--areia-dim)}

/* barra fixa de reserva */
.barra-reserva{position:fixed;left:0;right:0;bottom:0;z-index:45;
  background:color-mix(in srgb,var(--rocha) 88%,transparent);backdrop-filter:blur(14px);
  border-top:1px solid var(--linha);padding:10px 0;animation:sobe .3s var(--curva)}
@keyframes sobe{from{transform:translateY(100%)}}
.barra-reserva .wrap{display:flex;align-items:center;gap:14px}
.barra-reserva .info{flex:1;min-width:0}
.barra-reserva .info b{display:block;font-family:"Big Shoulders Display",sans-serif;font-size:21px;
  text-transform:uppercase;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra-reserva .info .mono{color:var(--areia-dim);font-size:9.5px}
.barra-reserva .price{white-space:nowrap}
@media (max-width:600px){ .barra-reserva .info .mono{display:none} .barra-reserva .price small{display:none} }
@media (min-width:1120px){ .barra-reserva{left:var(--rail)} }

/* ==========================================================================
   Hub de ferramentas no hero
   ========================================================================== */
.hub{border:1px solid var(--linha);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sombra-alta);
  background:linear-gradient(165deg,color-mix(in srgb,var(--ceu) 14%,var(--rocha-2)),var(--rocha-2))}
.hub h4{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--areia-dim);padding:13px 18px;border-bottom:1px solid var(--linha);font-weight:500;
  display:flex;justify-content:space-between;align-items:center;gap:10px}
.selo-gratis{color:var(--verde);border:1px solid color-mix(in srgb,var(--verde) 45%,transparent);
  padding:3px 10px;border-radius:var(--pill);font-size:9px;letter-spacing:.12em}
.hub-item{display:flex;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid var(--linha);
  transition:background .25s,padding-left .25s var(--curva);position:relative}
.hub-item:last-of-type{border-bottom:0}
.hub-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--grad-sol);
  transform:scaleY(0);transform-origin:center;transition:transform .3s var(--curva)}
.hub-item:hover{background:color-mix(in srgb,var(--areia) 4%,transparent);padding-left:22px}
.hub-item:hover::before{transform:scaleY(1)}
.hub-ico{font-size:23px;line-height:1;width:42px;height:42px;flex:none;display:grid;place-items:center;
  border-radius:var(--r-xs);background:color-mix(in srgb,var(--ceu) 14%,transparent);
  border:1px solid color-mix(in srgb,var(--ceu) 26%,transparent)}
.hub-item:nth-of-type(2) .hub-ico{background:color-mix(in srgb,var(--verde) 14%,transparent);border-color:color-mix(in srgb,var(--verde) 28%,transparent)}
.hub-item:nth-of-type(3) .hub-ico{background:color-mix(in srgb,var(--laranja) 14%,transparent);border-color:color-mix(in srgb,var(--laranja) 28%,transparent)}
.hub-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.hub-txt b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:22px;line-height:1;
  text-transform:uppercase;transition:color .2s}
.hub-item:hover .hub-txt b{color:var(--laranja-cl)}
.hub-txt .mono{color:var(--areia-dim);font-size:9.5px}
.hub-barra{display:block;height:4px;border-radius:var(--pill);background:var(--linha);overflow:hidden;margin-top:5px;max-width:190px}
.hub-barra i{display:block;height:100%;border-radius:var(--pill);background:linear-gradient(90deg,var(--agua),var(--verde));
  width:0;transition:width .6s var(--curva)}
.hub-dado{flex:none;text-align:right;display:flex;flex-direction:column;align-items:flex-end;line-height:1}
.hub-dado b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:30px;color:var(--sol)}
.hub-dado.bom b{color:var(--verde)}
.hub-dado.ruim b{color:var(--laranja-cl)}
.hub-dado i{font-style:normal;font-family:"IBM Plex Mono",monospace;font-size:9px;color:var(--areia-dim);margin-left:1px}
.hub-dado .mono{font-size:8.5px;color:var(--areia-dim);margin-top:3px}
.hub-seta{flex:none;width:30px;height:30px;border-radius:var(--pill);display:grid;place-items:center;
  border:1px solid var(--linha);color:var(--areia-dim);font-size:13px;
  transition:transform .3s var(--curva),background .3s,color .3s,border-color .3s}
.hub-item:hover .hub-seta{background:var(--laranja);border-color:var(--laranja);color:#fff;transform:translateX(3px)}
.hub-item.em-andamento .hub-seta{border-color:color-mix(in srgb,var(--verde) 50%,transparent);color:var(--verde)}
.hub-selo{flex:none;color:var(--laranja);border:1px solid color-mix(in srgb,var(--laranja) 45%,transparent);
  padding:3px 9px;border-radius:var(--pill);font-size:9px}
.hub-rodape{padding:11px 18px;border-top:1px solid var(--linha);color:var(--areia-dim);font-size:9px;
  background:color-mix(in srgb,var(--rocha) 45%,transparent);text-transform:none;letter-spacing:.04em}

/* próximas datas na página da rota */
.datas{list-style:none;display:flex;flex-direction:column;gap:9px}
.datas li{display:flex;align-items:center;gap:10px;padding-bottom:9px;border-bottom:1px dashed var(--linha)}
.datas li:last-child{border-bottom:0;padding-bottom:0}
.datas .quando{flex:1;min-width:0}
.datas .quando b{display:block;font-size:14px}
.datas .quando .mono{color:var(--areia-dim);font-size:9.5px}
.datas .vagas{color:var(--verde);font-size:9.5px;white-space:nowrap}
.datas .vagas.poucas{color:var(--sol)}
.datas .vagas.esgotado{color:var(--areia-dim)}

/* selo de próxima data no card de rota */
.selo-data{align-self:flex-start;color:var(--sol);border:1px solid color-mix(in srgb,var(--sol) 40%,transparent);
  background:color-mix(in srgb,var(--sol) 12%,transparent);padding:3px 10px;border-radius:var(--pill);font-size:9px}

/* números do hero clicáveis */
.stats a{display:block;padding:16px 0;transition:transform .25s var(--curva)}
.stats a:hover{transform:translateY(-2px)}
.stats a:hover b{filter:brightness(1.15)}

/* ==========================================================================
   Checklist de equipamentos
   ========================================================================== */
.check-layout{display:grid;gap:20px;align-items:start}
@media (min-width:960px){ .check-layout{grid-template-columns:1fr 320px} }
.check-lateral{display:flex;flex-direction:column;gap:14px}
@media (min-width:960px){ .check-lateral{position:sticky;top:84px} }

/* abas de atividade */
.atv-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:20px}
.atv-tab{display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid var(--linha);
  border-radius:var(--r);background:var(--rocha-2);transition:.25s var(--curva);position:relative;overflow:hidden}
.atv-tab:hover{border-color:var(--linha-2);transform:translateY(-2px)}
.atv-tab.on{border-color:transparent;background:linear-gradient(150deg,color-mix(in srgb,var(--laranja) 22%,var(--rocha-2)),var(--rocha-2));
  box-shadow:var(--sombra)}
.atv-tab.on::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad-sol)}
.atv-tab .ico{font-size:22px;line-height:1}
.atv-tab .nome{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:22px;
  text-transform:uppercase;line-height:1;flex:1}
.atv-tab .mono{color:var(--areia-dim);font-size:9.5px}

/* painel de progresso */
.progresso{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:18px 20px;margin-bottom:14px;
  border:1px solid var(--linha);border-radius:var(--r-lg);box-shadow:var(--sombra);
  background:linear-gradient(150deg,color-mix(in srgb,var(--ceu) 14%,var(--rocha-2)),var(--rocha-2));
  position:sticky;top:70px;z-index:20;backdrop-filter:blur(8px);transition:background .4s}
.progresso.pronto{background:linear-gradient(150deg,color-mix(in srgb,var(--verde) 20%,var(--rocha-2)),var(--rocha-2))}
.anel{position:relative;width:66px;height:66px;flex:none}
.anel svg{width:100%;height:100%;transform:rotate(-90deg)}
.anel circle{fill:none;stroke-width:4;stroke-linecap:round}
.anel .trilho{stroke:var(--linha)}
.anel .marca{stroke:var(--laranja);transition:stroke-dashoffset .6s var(--curva),stroke .4s}
.progresso.pronto .anel .marca{stroke:var(--verde)}
.anel .pct{position:absolute;inset:0;display:grid;place-items:center;
  font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:19px}
.progresso-txt{flex:1;min-width:180px}
.progresso-txt b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:24px;
  text-transform:uppercase;line-height:1;display:block;color:var(--sol)}
.progresso.pronto .progresso-txt b{color:var(--verde)}
.contadores{display:flex;gap:14px;flex-wrap:wrap;margin-top:7px}
.cont{color:var(--areia-dim);display:flex;align-items:center;gap:5px;font-size:10px}
.cont::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--laranja)}
.cont.opcional::before{background:var(--ceu)}
.cont b{color:var(--areia);font-size:13px}
.progresso-acoes{display:flex;gap:7px;flex-wrap:wrap}

/* filtros */
.check-filtros{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.check-filtros .contador{margin-left:auto;color:var(--areia-dim)}

/* grupos */
.grupo{border:1px solid var(--linha);border-radius:var(--r-lg);background:var(--rocha-2);
  margin-bottom:12px;overflow:hidden;transition:border-color .3s}
.grupo.completo{border-color:color-mix(in srgb,var(--verde) 40%,transparent)}
.grupo-cab{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--linha)}
.grupo-toggle{display:flex;align-items:center;gap:9px;background:none;border:0;cursor:pointer;
  color:inherit;font:inherit;padding:0;flex:1;text-align:left}
.grupo-toggle .seta{color:var(--areia-dim);font-size:11px;transition:transform .25s var(--curva)}
.grupo.fechado .grupo-toggle .seta{transform:rotate(-90deg)}
.grupo-cab h3{font-size:20px;line-height:1}
.grupo.completo h3{color:var(--verde)}
.grupo-info{display:flex;align-items:center;gap:9px}
.grupo-info .mono{color:var(--areia-dim);font-size:10px}
.grupo-barra{width:54px;height:4px;border-radius:var(--pill);background:var(--linha);overflow:hidden}
.grupo-barra i{display:block;height:100%;width:0;border-radius:var(--pill);
  background:linear-gradient(90deg,var(--agua),var(--verde));transition:width .45s var(--curva)}
.grupo-ok{color:var(--verde);font-size:14px}
.grupo-itens{display:block}
.grupo.fechado .grupo-itens,.grupo.fechado .add-item{display:none}

/* item */
.item{display:flex;gap:13px;align-items:flex-start;padding:12px 16px;cursor:pointer;
  border-bottom:1px dashed var(--linha);transition:background .18s;position:relative}
.item:last-child{border-bottom:0}
.item:hover{background:color-mix(in srgb,var(--areia) 4%,transparent)}
.item input{position:absolute;opacity:0;width:0;height:0}
.marca-box{flex:none;width:20px;height:20px;margin-top:1px;border-radius:6px;border:1.5px solid var(--linha-2);
  display:grid;place-items:center;transition:.22s var(--curva)}
.marca-box::after{content:"✓";font-size:12px;font-weight:700;color:#fff;opacity:0;transform:scale(.5);
  transition:.22s var(--curva)}
.item input:checked ~ .marca-box{background:var(--verde);border-color:var(--verde)}
.item input:checked ~ .marca-box::after{opacity:1;transform:scale(1)}
.item input:focus-visible ~ .marca-box{outline:2px solid var(--laranja-cl);outline-offset:2px}
.item .txt{flex:1;font-size:14.5px;transition:opacity .25s}
.item .txt small{display:block;color:var(--areia-dim);font-size:12.5px;margin-top:2px}
.item.feito .txt{opacity:.4;text-decoration:line-through}
.item.feito .txt small{text-decoration:none}
.item .obg{flex:none;font-family:"IBM Plex Mono",monospace;font-size:8.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--laranja);border:1px solid color-mix(in srgb,var(--laranja) 40%,transparent);
  background:color-mix(in srgb,var(--laranja) 10%,transparent);padding:3px 8px;border-radius:var(--pill);margin-top:2px}
.item.feito .obg{opacity:.35}
.item[hidden]{display:none}
.item .remover{flex:none;background:none;border:0;color:var(--areia-dim);cursor:pointer;font-size:17px;
  line-height:1;padding:0 4px;transition:color .2s}
.item .remover:hover{color:var(--laranja)}

/* meus itens */
.add-item{display:flex;gap:8px;padding:12px 16px;border-top:1px dashed var(--linha)}
.add-item input{flex:1;background:var(--rocha);border:1px solid var(--linha);border-radius:var(--pill);
  padding:9px 15px;font-size:13.5px;transition:.2s}
.add-item input:focus{outline:none;border-color:var(--laranja);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--laranja) 14%,transparent)}

/* salvar lista */
.salvar-lista .dica{font-size:12.5px;color:var(--areia-dim);margin-bottom:12px;display:block}
.codigo-caixa{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 14px;margin-bottom:11px;
  border:1px dashed color-mix(in srgb,var(--verde) 50%,transparent);border-radius:var(--r);
  background:color-mix(in srgb,var(--verde) 10%,transparent)}
.codigo-caixa .mono{color:var(--areia-dim);font-size:9px;width:100%}
.codigo-caixa b{font-family:"IBM Plex Mono",monospace;font-size:20px;letter-spacing:.12em;color:var(--verde);flex:1}
.recuperar{display:flex;gap:7px;margin-top:11px}
.recuperar input{flex:1;background:var(--rocha);border:1px solid var(--linha);border-radius:var(--pill);
  padding:8px 14px;font-family:"IBM Plex Mono",monospace;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.recuperar input:focus{outline:none;border-color:var(--laranja)}
.aviso-seguranca{border-left:3px solid var(--sol)}

@media print{
  .check-lateral,.check-filtros,.progresso-acoes,.add-item,.atv-tabs,.item .remover{display:none!important}
  .progresso{position:static;box-shadow:none;background:none;border-color:#ccc}
  .grupo{break-inside:avoid;border-color:#ccc}
  .marca-box{border-color:#666}
}

/* ==========================================================================
   Briefing de montanha
   ========================================================================== */
.busca-lugar{position:relative;margin-bottom:18px;max-width:620px}
.campo-busca{display:flex;align-items:center;gap:10px;border:1px solid var(--linha);border-radius:var(--pill);
  background:var(--rocha-2);padding:4px 6px 4px 18px;transition:.22s var(--curva)}
.campo-busca:focus-within{border-color:var(--laranja);box-shadow:0 0 0 3px color-mix(in srgb,var(--laranja) 14%,transparent)}
.campo-busca .lupa{color:var(--areia-dim);font-size:19px;line-height:1}
.campo-busca input{flex:1;background:none;border:0;padding:12px 0;font-size:15.5px;outline:none}
.campo-busca .carregando{width:15px;height:15px;margin-right:12px;border-radius:50%;
  border:2px solid var(--linha);border-top-color:var(--laranja);animation:gira .7s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.dica-busca{color:var(--areia-dim);margin-top:8px;padding-left:18px;font-size:9.5px}
.sugestoes{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;list-style:none;
  background:var(--rocha-2);border:1px solid var(--linha);border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra-alta)}
.sugestoes .sug{display:flex;align-items:center;gap:10px;padding:11px 16px;cursor:pointer;
  border-bottom:1px solid var(--linha);transition:background .16s}
.sugestoes .sug:last-child{border-bottom:0}
.sugestoes .sug:hover,.sugestoes .sug.marcado{background:var(--rocha-3)}
.sugestoes .sug b{font-size:14.5px}
.sugestoes .sug .mono{color:var(--areia-dim);font-size:10px;flex:1}
.sugestoes .sug .alt{color:var(--sol);font-size:10px}
.sugestoes .vazio{padding:14px 16px;color:var(--areia-dim);font-size:13.5px}

.regioes{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:24px}
.regiao{border:1px solid var(--linha);border-radius:var(--r);background:var(--rocha-2);padding:13px 15px;
  display:flex;flex-direction:column;gap:3px;transition:.25s var(--curva);position:relative;overflow:hidden}
.regiao:hover{transform:translateY(-2px);border-color:var(--linha-2)}
.regiao.on{border-color:transparent;background:linear-gradient(150deg,color-mix(in srgb,var(--laranja) 20%,var(--rocha-2)),var(--rocha-2))}
.regiao.on::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad-sol)}
.regiao b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:21px;text-transform:uppercase;line-height:1}
.regiao .mono{color:var(--areia-dim);font-size:9.5px}

/* relatório */
.relatorio{border:1px solid var(--linha);border-radius:var(--r-xl);overflow:hidden;background:var(--rocha-2);
  box-shadow:var(--sombra-alta)}
.rel-capa{padding:clamp(22px,4vw,38px);background:
  radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--laranja) 20%,transparent),transparent 60%),
  linear-gradient(160deg,color-mix(in srgb,var(--marinho) 70%,var(--rocha-2)),var(--rocha-2))}
.rel-capa.bom{background:radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--verde) 20%,transparent),transparent 60%),
  linear-gradient(160deg,color-mix(in srgb,var(--marinho) 70%,var(--rocha-2)),var(--rocha-2))}
.rel-marca{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.rel-marca img{border-radius:50%}
.rel-marca b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:17px;
  text-transform:uppercase;letter-spacing:.04em;display:block;line-height:1}
.rel-marca small{color:var(--areia-dim);font-size:8.5px;display:block;margin-top:2px}
.relatorio h1{font-size:clamp(38px,7vw,66px);line-height:.94;margin-bottom:8px}
.rel-sub{color:var(--areia-dim);font-size:15px;margin-bottom:22px}
.rel-veredito{border-left:3px solid var(--laranja);padding-left:16px;margin-bottom:22px;max-width:70ch}
.rel-capa.bom .rel-veredito{border-left-color:var(--verde)}
.rel-veredito .mono{color:var(--areia-dim);font-size:9px;display:block;margin-bottom:4px}
.rel-veredito b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:27px;
  text-transform:uppercase;color:var(--sol);line-height:1;display:block;margin-bottom:6px}
.rel-capa.bom .rel-veredito b{color:var(--verde)}
.rel-capa.ruim .rel-veredito b{color:var(--laranja-cl)}
.rel-veredito p{color:var(--areia-dim);font-size:14px}
.rel-numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}
.rel-numeros div{border:1px solid var(--linha);border-radius:var(--r);padding:14px 16px;background:color-mix(in srgb,var(--rocha) 40%,transparent)}
.rel-numeros b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:40px;line-height:.9;display:block;
  background:var(--grad-sol);-webkit-background-clip:text;background-clip:text;color:transparent}
.rel-numeros b i{font-style:normal;font-size:16px}
.rel-numeros span{display:block;color:var(--areia-dim);font-size:11.5px;margin-top:7px;line-height:1.35}
.rel-ficha{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;padding:14px 0;
  border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);margin-bottom:20px}
.rel-ficha span{color:var(--areia-dim);font-size:9px;display:flex;flex-direction:column;gap:4px;
  border-left:2px solid var(--laranja);padding-left:10px}
.rel-ficha b{color:var(--areia);font-size:14px;font-family:"Instrument Sans",sans-serif;text-transform:none;letter-spacing:0}
.rel-acoes{display:flex;gap:9px;flex-wrap:wrap}

/* dias */
.rel-dias{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:1px;background:var(--linha);
  border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.rel-dia{background:var(--rocha-2);padding:13px 8px;text-align:center;display:flex;flex-direction:column;gap:5px;
  transition:background .2s;position:relative}
.rel-dia:hover{background:var(--rocha-3)}
.rel-dia.on{background:var(--rocha-3)}
.rel-dia.on::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad-sol)}
.rel-dia .mono{color:var(--areia-dim);font-size:9px}
.rel-dia .emo{font-size:20px}
.rel-dia .temp{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:19px}
.rel-dia .temp i{font-style:normal;color:var(--areia-dim);font-size:13px}
.rel-dia .nota{font-size:9px;color:var(--areia-dim)}
.rel-dia.bom .nota{color:var(--verde)}
.rel-dia.ruim .nota{color:var(--laranja-cl)}

/* blocos do relatório */
.rel-bloco{padding:clamp(20px,3.5vw,34px);border-bottom:1px solid var(--linha)}
.num-secao{color:var(--laranja);display:block;margin-bottom:8px}
.rel-bloco h2{font-size:clamp(26px,4vw,38px);margin-bottom:12px}
.rel-texto{color:var(--areia-dim);max-width:72ch;font-size:14.5px;line-height:1.65;margin-bottom:16px}
.rel-texto b{color:var(--areia)}
.rel-tabela{width:100%;border-collapse:collapse;font-size:13.5px}
.rel-tabela th{text-align:left;font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--areia-dim);padding:9px 12px;border-bottom:1px solid var(--linha);white-space:nowrap}
.rel-tabela td{padding:11px 12px;border-bottom:1px solid var(--linha);white-space:nowrap}
.rel-tabela tr:last-child td{border-bottom:0}
.rel-tabela tr.destaque{background:color-mix(in srgb,var(--laranja) 12%,transparent)}
.rel-tabela tr.destaque td{font-weight:600}
.rel-tabela td .mono{color:var(--laranja);font-size:9px;margin-left:6px}
.rel-tabela td.frio{color:var(--ceu);font-weight:700}

.alertas{display:grid;gap:12px}
.alerta{border:1px solid var(--linha);border-left:3px solid var(--sol);border-radius:var(--r);padding:14px 16px;
  background:color-mix(in srgb,var(--sol) 7%,transparent)}
.alerta.frio{border-left-color:var(--ceu);background:color-mix(in srgb,var(--ceu) 8%,transparent)}
.alerta.chuva,.alerta.rocha{border-left-color:var(--laranja);background:color-mix(in srgb,var(--laranja) 8%,transparent)}
.alerta b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:20px;text-transform:uppercase;
  display:block;margin-bottom:5px}
.alerta p{color:var(--areia-dim);font-size:13.5px}

.mar-nuvens{display:grid;gap:18px}
@media (min-width:760px){ .mar-nuvens{grid-template-columns:200px 1fr;align-items:start} }
.mar-medidor{border:1px solid var(--linha);border-radius:var(--r);padding:16px;text-align:center;
  background:color-mix(in srgb,var(--ceu) 10%,transparent)}
.mar-medidor .valor{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:52px;line-height:1;
  display:block;color:var(--ceu)}
.mar-medidor .barra{display:block;height:6px;border-radius:var(--pill);background:var(--linha);overflow:hidden;margin:10px 0 8px}
.mar-medidor .barra i{display:block;height:100%;border-radius:var(--pill);background:var(--grad-mar)}
.mar-medidor .mono{color:var(--areia-dim);font-size:8.5px;line-height:1.5;text-transform:none;letter-spacing:.04em}

.roupa{list-style:none;display:grid;gap:1px;background:var(--linha);border:1px solid var(--linha);
  border-radius:var(--r);overflow:hidden}
.roupa li{background:var(--rocha-2);padding:13px 16px;display:grid;gap:3px}
@media (min-width:700px){ .roupa li{grid-template-columns:230px 1fr;gap:16px;align-items:baseline} }
.roupa b{font-size:14.5px}
.roupa span{color:var(--areia-dim);font-size:13px}
.sel-ia{background:var(--rocha);border:1px solid var(--linha);border-radius:var(--pill);padding:10px 16px;font-size:13.5px}
.rel-rodape{padding:16px clamp(20px,3.5vw,34px);background:color-mix(in srgb,var(--rocha) 45%,transparent)}
.rel-rodape .mono{color:var(--areia-dim);font-size:9px;text-transform:none;letter-spacing:.04em;line-height:1.6}

@media print{
  .busca-lugar,.regioes,.rel-acoes,.rel-dias,.sel-ia,#btnIA{display:none!important}
  .relatorio{border:0;box-shadow:none}
}

/* ==========================================================================
   Briefing de montanha — busca, regiões e relatório
   ========================================================================== */

/* busca de lugar */
.busca-lugar{position:relative;margin-bottom:18px;max-width:640px}
.campo-busca{display:flex;align-items:center;gap:11px;border:1px solid var(--linha);border-radius:var(--pill);
  background:var(--rocha-2);padding:4px 6px 4px 18px;transition:.22s var(--curva);box-shadow:var(--sombra)}
.campo-busca:focus-within{border-color:var(--laranja);box-shadow:0 0 0 4px color-mix(in srgb,var(--laranja) 14%,transparent)}
.campo-busca .lupa{color:var(--areia-dim);font-size:19px;line-height:1}
.campo-busca input{flex:1;background:none;border:0;outline:none;padding:12px 0;font-size:15.5px;min-width:0}
.campo-busca input::-webkit-search-cancel-button{filter:grayscale(1) opacity(.5)}
.carregando{width:15px;height:15px;margin-right:12px;border-radius:50%;flex:none;
  border:2px solid var(--linha);border-top-color:var(--laranja);animation:gira .7s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.dica-busca{color:var(--areia-dim);margin-top:8px;padding-left:18px;font-size:9.5px}

.sugestoes{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;list-style:none;
  background:var(--rocha-2);border:1px solid var(--linha);border-radius:var(--r);overflow:hidden;
  box-shadow:var(--sombra-alta);max-height:330px;overflow-y:auto}
.sugestoes .sug{display:flex;align-items:baseline;gap:10px;padding:11px 16px;cursor:pointer;
  border-bottom:1px solid var(--linha);transition:background .15s}
.sugestoes .sug:last-child{border-bottom:0}
.sugestoes .sug:hover,.sugestoes .sug.marcado{background:var(--rocha-3)}
.sugestoes .sug b{font-size:14.5px}
.sugestoes .sug .mono{color:var(--areia-dim);flex:1;font-size:9.5px}
.sugestoes .sug .alt{color:var(--ceu);font-size:9.5px}
.sugestoes .vazio{padding:14px 16px;color:var(--areia-dim);font-size:13.5px}

/* regiões em destaque */
.regioes{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:24px}
.regiao{border:1px solid var(--linha);border-radius:var(--r);background:var(--rocha-2);padding:13px 15px;
  display:flex;flex-direction:column;gap:3px;transition:.25s var(--curva);position:relative;overflow:hidden}
.regiao:hover{transform:translateY(-2px);border-color:var(--linha-2)}
.regiao.on{border-color:transparent;background:linear-gradient(150deg,color-mix(in srgb,var(--ceu) 24%,var(--rocha-2)),var(--rocha-2))}
.regiao.on::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad-sol)}
.regiao b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:20px;text-transform:uppercase;line-height:1.02}
.regiao .mono{color:var(--areia-dim);font-size:9.5px}

/* ---------------- relatório ---------------- */
.relatorio{border:1px solid var(--linha);border-radius:var(--r-xl);overflow:hidden;background:var(--rocha-2);
  box-shadow:var(--sombra-alta)}
.rel-capa{padding:clamp(22px,4vw,38px);position:relative;
  background:var(--brilho-sol),linear-gradient(160deg,color-mix(in srgb,var(--marinho) 70%,var(--rocha-2)),var(--rocha-2))}
.rel-capa.bom{background:radial-gradient(ellipse at 70% 0%,color-mix(in srgb,var(--verde) 22%,transparent),transparent 62%),
  linear-gradient(160deg,color-mix(in srgb,var(--marinho) 70%,var(--rocha-2)),var(--rocha-2))}
.rel-marca{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.rel-marca img{border-radius:50%}
.rel-marca b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:17px;letter-spacing:.06em;
  text-transform:uppercase;display:block;line-height:1}
.rel-marca small{display:block;color:var(--areia-dim);font-size:8.5px;margin-top:2px}
.rel-capa h1{font-size:clamp(34px,6.5vw,62px);line-height:.94;margin-bottom:8px}
.rel-sub{color:var(--areia-dim);font-size:14.5px;margin-bottom:20px}
.rel-veredito{border-left:3px solid var(--laranja);padding:2px 0 2px 16px;margin-bottom:22px;max-width:70ch}
.rel-capa.bom .rel-veredito{border-left-color:var(--verde)}
.rel-veredito .mono{color:var(--areia-dim);display:block;margin-bottom:4px}
.rel-veredito b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:27px;
  text-transform:uppercase;line-height:1;color:var(--sol);display:block;margin-bottom:6px}
.rel-capa.bom .rel-veredito b{color:var(--verde)}
.rel-capa.ruim .rel-veredito b{color:var(--laranja-cl)}
.rel-veredito p{font-size:14px;color:var(--areia-dim)}
.rel-numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}
.rel-numeros div{border-top:2px solid var(--laranja);padding-top:11px}
.rel-numeros div:nth-child(2){border-top-color:var(--sol)}
.rel-numeros div:nth-child(3){border-top-color:var(--ceu)}
.rel-numeros b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:44px;line-height:.9;display:block}
.rel-numeros b i{font-style:normal;font-size:17px;color:var(--areia-dim);margin-left:2px}
.rel-numeros span{display:block;color:var(--areia-dim);font-size:11.5px;margin-top:5px;max-width:24ch}
.rel-ficha{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;
  padding:14px 0;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);margin-bottom:18px}
.rel-ficha span{display:block;color:var(--areia-dim);font-size:8.5px;border-left:2px solid var(--linha-2);padding-left:10px}
.rel-ficha b{display:block;color:var(--areia);font-size:13px;letter-spacing:0;margin-top:3px;font-family:"Instrument Sans",sans-serif}
.rel-acoes{display:flex;gap:9px;flex-wrap:wrap}

/* dias */
.rel-dias{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:1px;background:var(--linha);
  border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.rel-dia{background:var(--rocha-2);padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;
  transition:background .22s;position:relative}
.rel-dia:hover{background:var(--rocha-3)}
.rel-dia.on{background:var(--rocha-3)}
.rel-dia.on::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad-sol)}
.rel-dia .mono{color:var(--areia-dim);font-size:9px}
.rel-dia .emo{font-size:19px}
.rel-dia .temp{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:19px}
.rel-dia .temp i{font-style:normal;color:var(--areia-dim);font-size:13px}
.rel-dia .nota{font-size:8.5px;color:var(--areia-dim)}
.rel-dia.bom .nota{color:var(--verde)}
.rel-dia.ruim .nota{color:var(--laranja-cl)}

/* blocos do relatório */
.rel-bloco{padding:clamp(20px,3.6vw,32px);border-bottom:1px solid var(--linha)}
.num-secao{color:var(--laranja);display:block;margin-bottom:7px}
.rel-bloco h2{font-size:clamp(26px,4.4vw,38px);margin-bottom:12px}
.rel-texto{color:var(--areia-dim);font-size:14.5px;max-width:72ch;margin-bottom:16px;line-height:1.7}
.rel-texto b{color:var(--areia)}

.rel-tabela{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px}
.rel-tabela th{text-align:left;font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--areia-dim);padding:10px 12px;background:color-mix(in srgb,var(--marinho) 45%,transparent);
  white-space:nowrap;font-weight:500}
.rel-tabela th:first-child{border-radius:var(--r-xs) 0 0 0}
.rel-tabela th:last-child{border-radius:0 var(--r-xs) 0 0}
.rel-tabela td{padding:10px 12px;border-bottom:1px solid var(--linha);white-space:nowrap}
.rel-tabela tbody tr:hover{background:color-mix(in srgb,var(--areia) 3%,transparent)}
.rel-tabela tr.destaque{background:color-mix(in srgb,var(--laranja) 12%,transparent)}
.rel-tabela tr.destaque td{border-bottom-color:color-mix(in srgb,var(--laranja) 30%,transparent);font-weight:600}
.rel-tabela tr.destaque .mono{color:var(--laranja);font-size:8.5px;display:block}
.rel-tabela td.frio{color:var(--ceu);font-weight:600}

/* alertas */
.alertas{display:grid;gap:11px}
@media (min-width:760px){ .alertas{grid-template-columns:repeat(2,1fr)} }
.alerta{border:1px solid var(--linha);border-left:3px solid var(--sol);border-radius:var(--r);padding:14px 16px;
  background:color-mix(in srgb,var(--sol) 7%,transparent)}
.alerta.alto{border-left-color:var(--laranja);background:color-mix(in srgb,var(--laranja) 8%,transparent)}
.alerta.info{border-left-color:var(--ceu);background:color-mix(in srgb,var(--ceu) 7%,transparent)}
.alerta b{display:block;font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:20px;
  text-transform:uppercase;line-height:1;margin-bottom:6px;color:var(--sol)}
.alerta.alto b{color:var(--laranja-cl)}
.alerta.info b{color:var(--ceu)}
.alerta p{font-size:13.5px;color:var(--areia-dim)}

/* mar de nuvens */
.mar-nuvens{display:grid;gap:20px}
@media (min-width:760px){ .mar-nuvens{grid-template-columns:210px 1fr;align-items:start} }
.mar-medidor{border:1px solid var(--linha);border-radius:var(--r);padding:18px;text-align:center;
  background:linear-gradient(160deg,color-mix(in srgb,var(--ceu) 16%,var(--rocha-2)),var(--rocha-2))}
.mar-medidor .valor{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:52px;line-height:1;
  display:block;background:var(--grad-mar);-webkit-background-clip:text;background-clip:text;color:transparent}
.mar-medidor .barra{display:block;height:6px;border-radius:var(--pill);background:var(--linha);overflow:hidden;margin:11px 0 9px}
.mar-medidor .barra i{display:block;height:100%;border-radius:var(--pill);background:var(--grad-mar);transition:width .6s var(--curva)}
.mar-medidor .mono{color:var(--areia-dim);font-size:8.5px;text-transform:none;letter-spacing:.04em}

/* roupa */
.roupa{list-style:none;display:grid;gap:1px;background:var(--linha);border:1px solid var(--linha);
  border-radius:var(--r);overflow:hidden}
.roupa li{background:var(--rocha-2);padding:13px 16px;display:grid;gap:3px}
@media (min-width:700px){ .roupa li{grid-template-columns:270px 1fr;gap:16px;align-items:baseline} }
.roupa b{font-size:14.5px}
.roupa span{color:var(--areia-dim);font-size:13px}
.sel-ia{background:var(--rocha);border:1px solid var(--linha);border-radius:var(--pill);padding:10px 16px;font-size:13.5px}
.sel-ia:focus{outline:none;border-color:var(--laranja)}

.rel-rodape{padding:16px clamp(20px,3.6vw,32px);background:color-mix(in srgb,var(--rocha) 45%,transparent)}
.rel-rodape .mono{color:var(--areia-dim);font-size:9px;text-transform:none;letter-spacing:.04em;line-height:1.7}

@media print{
  .busca-lugar,.regioes,.rel-acoes,.rel-dias,.shead a{display:none!important}
  .relatorio{border:0;box-shadow:none}
  .rel-bloco{break-inside:avoid}
}

/* ==========================================================================
   Planejador de aventura
   ========================================================================== */
.pl-wizard{border:1px solid var(--linha);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sombra-alta);
  background:linear-gradient(165deg,color-mix(in srgb,var(--ceu) 12%,var(--rocha-2)),var(--rocha-2));max-width:820px}

/* progresso */
.pl-progresso{padding:16px clamp(18px,3vw,26px) 0;position:relative}
.pl-trilha{height:3px;border-radius:var(--pill);background:var(--linha);overflow:hidden;margin-bottom:-14px}
.pl-trilha i{display:block;height:100%;width:0;border-radius:var(--pill);background:var(--grad-sol);
  transition:width .5s var(--curva)}
.pl-etapas{display:flex;align-items:center;justify-content:space-between;position:relative}
.pl-etapa{width:26px;height:26px;border-radius:50%;border:1px solid var(--linha);background:var(--rocha-2);
  color:var(--areia-dim);display:grid;place-items:center;cursor:pointer;padding:0;
  font-family:"IBM Plex Mono",monospace;font-size:10px;transition:.25s var(--curva)}
.pl-etapa:disabled{cursor:default}
.pl-etapa.on{border-color:transparent;background:var(--grad-sol);color:#fff;transform:scale(1.12)}
.pl-etapa.feito{border-color:color-mix(in srgb,var(--verde) 55%,transparent);color:var(--verde)}
.pl-etapa.fim{border-style:dashed}
.pl-conta{display:block;margin-top:14px;color:var(--areia-dim)}

/* passos */
.pl-passo{border:0;padding:clamp(18px,3vw,28px);display:none;animation:entraPasso .32s var(--curva)}
.pl-passo.on{display:block}
@keyframes entraPasso{from{opacity:0;transform:translateX(14px)}}
.pl-passo h3{font-size:clamp(24px,4vw,34px);margin-bottom:6px}
.pl-ajuda{color:var(--areia-dim);font-size:13.5px;margin-bottom:18px}
.pl-opcoes{display:grid;gap:10px}
@media (min-width:620px){ .pl-opcoes{grid-template-columns:repeat(2,1fr)} }
.pl-opcao{display:flex;align-items:center;gap:13px;text-align:left;padding:14px 16px;cursor:pointer;
  border:1px solid var(--linha);border-radius:var(--r);background:var(--rocha-2);color:inherit;font:inherit;
  transition:.25s var(--curva);position:relative;overflow:hidden}
.pl-opcao:hover{border-color:var(--linha-2);transform:translateY(-2px)}
.pl-opcao .ico{font-size:24px;line-height:1;flex:none;width:44px;height:44px;display:grid;place-items:center;
  border-radius:var(--r-xs);background:color-mix(in srgb,var(--ceu) 13%,transparent);
  border:1px solid color-mix(in srgb,var(--ceu) 24%,transparent);transition:.25s}
.pl-opcao .txt{flex:1;min-width:0}
.pl-opcao .txt b{display:block;font-size:14.5px;line-height:1.25}
.pl-opcao .txt small{color:var(--areia-dim);font-size:12px}
.pl-opcao .check{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--linha);color:transparent;font-size:11px;transition:.25s var(--curva)}
.pl-opcao.on{border-color:transparent;background:linear-gradient(150deg,color-mix(in srgb,var(--laranja) 20%,var(--rocha-2)),var(--rocha-2));
  box-shadow:var(--sombra)}
.pl-opcao.on .ico{background:color-mix(in srgb,var(--laranja) 18%,transparent);border-color:color-mix(in srgb,var(--laranja) 35%,transparent)}
.pl-opcao.on .check{background:var(--laranja);border-color:var(--laranja);color:#fff}

.pl-final .campo{max-width:520px}
.pl-resumo{margin-top:18px;padding-top:16px;border-top:1px dashed var(--linha)}
.pl-resumo .mono{color:var(--areia-dim);display:block;margin-bottom:8px}
.pl-tags{display:flex;flex-wrap:wrap;gap:7px}
.pl-tags span{border:1px solid var(--linha);border-radius:var(--pill);padding:5px 13px;font-size:12.5px;
  background:color-mix(in srgb,var(--areia) 4%,transparent)}
.pl-nav{display:flex;gap:9px;justify-content:flex-end;padding:0 clamp(18px,3vw,28px) 22px}

/* gerando */
.pl-gerando{border:1px solid var(--linha);border-radius:var(--r-xl);padding:48px 26px;text-align:center;
  background:var(--rocha-2);max-width:820px;box-shadow:var(--sombra)}
.pl-gerando b{display:block;font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:27px;
  text-transform:uppercase;margin-bottom:6px}
.pl-gerando .mono{color:var(--areia-dim);font-size:10px}
.pl-corda{width:2px;height:70px;margin:0 auto 22px;background:var(--linha);border-radius:var(--pill);position:relative}
.pl-corda i{position:absolute;left:-5px;width:12px;height:12px;border-radius:50%;background:var(--laranja);
  box-shadow:0 0 16px color-mix(in srgb,var(--laranja) 70%,transparent);animation:desce 1.9s var(--curva) infinite}
@keyframes desce{0%{top:-6px}55%{top:62px}100%{top:-6px}}

/* plano pronto */
.pl-plano{border:1px solid var(--linha);border-radius:var(--r-xl);overflow:hidden;background:var(--rocha-2);
  box-shadow:var(--sombra-alta);animation:entra .4s var(--curva)}
.pln-topo{padding:clamp(20px,3.4vw,30px);background:var(--brilho-sol),
  linear-gradient(160deg,color-mix(in srgb,var(--marinho) 65%,var(--rocha-2)),var(--rocha-2))}
.pln-topo .mono{color:var(--sol);display:block;margin-bottom:8px}
.pln-topo h2{font-size:clamp(28px,5vw,46px);line-height:.96;max-width:26ch}

.pln-rota{display:grid;gap:0;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
@media (min-width:760px){ .pln-rota{grid-template-columns:300px 1fr} }
.pln-rota figure{background:var(--rocha-3);min-height:190px}
.pln-rota figure img{width:100%;height:100%;object-fit:cover}
.pln-rota .corpo{padding:clamp(18px,3vw,26px);display:flex;flex-direction:column;gap:9px}
.pln-rota .corpo .mono{color:var(--areia-dim);font-size:9.5px}
.pln-rota h3{font-size:clamp(24px,3.6vw,32px);line-height:1}
.pln-rota p{color:var(--areia-dim);font-size:14.5px;flex:1}
.pln-dados{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--areia-dim);font-size:10px}
.pln-rodape{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding-top:12px;border-top:1px dashed var(--linha)}

.pln-faixa{display:grid;gap:1px;background:var(--linha);border-bottom:1px solid var(--linha)}
@media (min-width:620px){ .pln-faixa{grid-template-columns:1fr 1fr} }
.pln-cond,.pln-saida{background:var(--rocha-2);padding:15px 18px;display:flex;align-items:center;gap:14px}
.pln-cond{transition:background .22s}
.pln-cond:hover{background:var(--rocha-3)}
.pln-cond > b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:38px;line-height:1;color:var(--sol)}
.pln-cond.bom > b{color:var(--verde)}
.pln-cond.ruim > b{color:var(--laranja-cl)}
.pln-cond > b i{font-style:normal;font-size:13px;color:var(--areia-dim)}
.pln-cond .rot{display:block;font-family:"Big Shoulders Display",sans-serif;font-size:19px;text-transform:uppercase}
.pln-cond .mono,.pln-saida .mono{color:var(--areia-dim);font-size:9.5px}
.pln-saida{flex-direction:column;align-items:flex-start;gap:3px}
.pln-saida b{font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:23px;text-transform:uppercase}

.pln-bloco{padding:clamp(20px,3.4vw,30px);border-bottom:1px solid var(--linha)}
.pln-bloco h3{font-size:clamp(23px,3.4vw,30px);margin-bottom:16px}

.linha-tempo{list-style:none;position:relative;padding-left:8px}
.linha-tempo::before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;border-radius:var(--pill);
  background:linear-gradient(180deg,var(--sol),var(--laranja),transparent)}
.linha-tempo li{position:relative;padding:0 0 18px 26px}
.linha-tempo li:last-child{padding-bottom:0}
.linha-tempo li::before{content:"";position:absolute;left:2px;top:6px;width:12px;height:12px;border-radius:50%;
  background:var(--laranja);border:2px solid var(--rocha-2)}
.linha-tempo .hora{color:var(--sol);display:block;margin-bottom:2px;font-size:10px}
.linha-tempo b{font-size:15.5px;display:block;margin-bottom:2px}
.linha-tempo p{color:var(--areia-dim);font-size:13.5px}

.pln-cards{display:grid;gap:11px}
@media (min-width:700px){ .pln-cards{grid-template-columns:repeat(2,1fr)} }
.pln-card{border:1px solid var(--linha);border-left:3px solid var(--ceu);border-radius:var(--r);padding:14px 16px;
  background:color-mix(in srgb,var(--ceu) 6%,transparent)}
.pln-card.risco{border-left-color:var(--laranja);background:color-mix(in srgb,var(--laranja) 7%,transparent)}
.pln-card b{display:block;font-family:"Big Shoulders Display",sans-serif;font-weight:900;font-size:19px;
  text-transform:uppercase;line-height:1;margin-bottom:6px;color:var(--ceu)}
.pln-card.risco b{color:var(--laranja-cl)}
.pln-card p{color:var(--areia-dim);font-size:13.5px}

.pln-acoes{display:flex;gap:9px;flex-wrap:wrap;padding:clamp(18px,3vw,26px);
  background:color-mix(in srgb,var(--rocha) 45%,transparent)}

.pl-catalogo{margin-top:20px;max-width:820px;border:1px dashed var(--linha);border-radius:var(--r);padding:16px 18px}
.pl-catalogo > .mono{color:var(--areia-dim);display:block;margin-bottom:10px}
.pl-catalogo ul{list-style:none;display:grid;gap:7px;margin-bottom:12px}
.pl-catalogo li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:13.5px}
.pl-catalogo li .mono{color:var(--areia-dim);font-size:9.5px}
.pl-catalogo p{color:var(--areia-dim);font-size:9px;text-transform:none;letter-spacing:.04em;line-height:1.7}

/* =========================================================================
   Modernização — nada aqui altera cor, tipografia ou espaçamento.
   ========================================================================= */

/* Com width/height no HTML, o navegador reserva o espaço da foto antes de
   ela chegar (acaba o pulo de layout). height:auto mantém a proporção
   quando a largura é esticada. Onde já existe height explícito, aquela
   regra continua vencendo por vir depois. */
img{height:auto}

/* Atalho de teclado: primeira parada de quem navega por Tab ou leitor de
   tela. Fica fora da tela até receber foco. */
.pular{position:absolute;top:-100%;left:var(--pad);z-index:200;
  background:var(--laranja);color:#fff;padding:10px 16px;
  border-radius:0 0 var(--r) var(--r);text-decoration:none;
  font-family:"Big Shoulders Display",system-ui,sans-serif;
  font-weight:700;letter-spacing:.04em}
.pular:focus{top:0}

/* text-wrap: balance/pretty ficou FORA de propósito. Melhora a tipografia,
   mas muda as quebras de linha dos títulos já existentes — e o combinado
   aqui é fidelidade ao visual atual. Para ativar um dia, descomente:
     h1,h2,h3,.disp{text-wrap:balance}
     p,li{text-wrap:pretty}                                                */

/* Transição entre páginas. Chrome, Edge e Safari 18.2+ aplicam; Firefox
   ainda não implementou entre documentos e simplesmente navega sem ela. */
@view-transition{navigation:auto}
@media (prefers-reduced-motion:no-preference){
  ::view-transition-old(root){animation:cv-sai .16s ease both}
  ::view-transition-new(root){animation:cv-entra .26s var(--curva) both}
  @keyframes cv-sai{to{opacity:0}}
  @keyframes cv-entra{from{opacity:0;transform:translateY(6px)}}
}

/* =========================================================================
   Guia de dificuldade
   ========================================================================= */
.gd-sec{padding-top:34px;padding-bottom:34px}
.gd-sec+.gd-sec{border-top:1px solid var(--linha)}
.gd-texto{max-width:70ch;font-size:16px;line-height:1.72;color:var(--areia-dim);margin-bottom:15px}
.gd-texto b{color:var(--areia);font-weight:600}
.gd-fonte{font-size:10.5px;color:var(--areia-dim);margin-top:6px}

/* tipos de percurso */
.gd-tipos{display:grid;gap:14px;margin:20px 0 10px}
@media(min-width:720px){.gd-tipos{grid-template-columns:repeat(3,1fr)}
  .gd-tipos-2{grid-template-columns:repeat(2,1fr)}}
.gd-tipo{border:1px solid var(--linha);background:var(--rocha-2);border-radius:var(--r-lg);
  overflow:hidden;margin:0}
.gd-tipo svg{width:100%;height:auto;display:block;background:var(--rocha-3);
  border-bottom:1px solid var(--linha)}
.gd-tipo figcaption{padding:14px 16px;font-size:13.5px;line-height:1.6;color:var(--areia-dim)}
.gd-tipo figcaption b{display:block;color:var(--areia);font-family:"Big Shoulders Display",system-ui,sans-serif;
  font-size:20px;letter-spacing:.02em;margin-bottom:4px}

/* critérios */
.gd-criterios{display:grid;gap:14px;margin-top:20px}
@media(min-width:720px){.gd-criterios{grid-template-columns:repeat(2,1fr)}}
.gd-criterio h3{font-size:21px;margin-bottom:8px}
.gd-criterio p{font-size:13.5px;line-height:1.65;color:var(--areia-dim);margin-bottom:8px}
.gd-medida{font-size:10.5px;color:var(--areia-dim);border-top:1px dashed var(--linha);
  padding-top:9px;margin-bottom:0!important}

/* a régua */
.gd-niveis{display:grid;gap:14px;margin-top:20px}
@media(min-width:900px){.gd-niveis{grid-template-columns:repeat(2,1fr)}}
.gd-nivel{border:1px solid var(--linha);background:var(--rocha-2);border-radius:var(--r-lg);
  padding:20px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden}
.gd-nivel::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--cor-nivel)}
.gd-nivel[data-nivel="iniciante"]{--cor-nivel:var(--verde)}
.gd-nivel[data-nivel="medio"]{--cor-nivel:var(--sol)}
.gd-nivel[data-nivel="avancado"]{--cor-nivel:var(--laranja)}
.gd-nivel[data-nivel="extremo"]{--cor-nivel:color-mix(in srgb,var(--laranja) 70%,#000)}
.gd-nivel h3{font-size:26px;margin:6px 0 4px}
.gd-escala{display:flex;gap:4px;align-items:center}
.gd-escala i{width:22px;height:5px;border-radius:3px;background:var(--linha-2);display:block;opacity:.5}
.gd-escala i.on{background:var(--cor-nivel);opacity:1}
.gd-resumo{font-size:13.5px;color:var(--areia-dim)}
.gd-linhas{display:grid;gap:2px}
.gd-linhas dt{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--areia-dim);margin-top:9px}
.gd-linhas dd{font-size:13.5px;line-height:1.6}
.gd-notas{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin-top:auto;padding-top:12px;
  border-top:1px dashed var(--linha)}
.gd-notas li{border:1px solid var(--linha);border-radius:var(--pill);padding:4px 10px;
  font-size:10px;color:var(--areia-dim)}
.gd-nivel footer{padding-top:2px}

/* aviso e referências */
.gd-honesto{border-left:3px solid var(--sol)}
.gd-honesto .gd-texto:last-child{margin-bottom:0}
.gd-refs{list-style:none;display:grid;gap:10px;max-width:76ch}
.gd-refs li{font-size:13px;line-height:1.6;color:var(--areia-dim);padding-left:16px;
  border-left:2px solid var(--linha)}
.gd-refs i{color:var(--areia)}

/* ---------- trilhas ---------- */
.rota-grid-2{grid-template-columns:1fr}
@media(min-width:980px){.rota-grid-2{grid-template-columns:minmax(0,1.6fr) minmax(0,340px)!important}}
.tr-galeria{display:grid;gap:12px}
@media(min-width:600px){.tr-galeria{grid-template-columns:repeat(2,1fr)}}
.tr-galeria figure{margin:0;border:1px solid var(--linha);border-radius:var(--r-lg);overflow:hidden;
  background:var(--rocha-2)}
.tr-galeria img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.tr-galeria figcaption{padding:10px 13px;font-size:12.5px;color:var(--areia-dim);line-height:1.5}
.tr-galeria figcaption .mono{display:block;font-size:10px;margin-top:3px;opacity:.75}

/* .medidor era usada em rota.php e post.php mas nunca foi definida — a régua
   de números empilhava em vez de virar colunas. Segue a linguagem de .stats,
   com colunas que se ajustam sozinhas ao número de itens. */
.medidor{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  border:1px solid var(--linha);border-radius:var(--r-lg);background:var(--rocha-2);overflow:hidden}
.medidor div{padding:14px 16px}
.medidor div+div{border-left:1px solid var(--linha)}
.medidor b{display:block;font-family:"Big Shoulders Display",system-ui,sans-serif;font-weight:900;
  font-size:30px;line-height:1.05;letter-spacing:.01em}
.medidor span{display:block;margin-top:3px;color:var(--areia-dim);font-family:"IBM Plex Mono",monospace;
  font-size:9.5px;letter-spacing:.13em;text-transform:uppercase}
@media(max-width:520px){.medidor div+div{border-left:0;border-top:1px solid var(--linha)}}
.tr-foot{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:flex-start}
