/* Órbita Viagens: o ano como instrumento. Céu encoberto, tinta de tempestade e a escala de temperatura. */
:root{
  --sky:#DCE2E3;        /* chão: céu encoberto */
  --sky-2:#E9EDED;      /* superfícies elevadas */
  --sky-3:#C9D1D3;      /* trilho, células vazias */
  --ink:#132235;        /* tinta de tempestade */
  --ink-2:#3F5061;      /* texto secundário */
  --line:rgba(19,34,53,.16);
  --line-2:rgba(19,34,53,.32);
  --hot:#D9502F;        /* topo da escala, usado para o cursor e foco */
  --cold:#1B3A7A;
  --on-ink:#F1F4F4;
  --f-d:"Funnel Display",system-ui,sans-serif;
  --f-b:"Funnel Sans",system-ui,sans-serif;
  --gut:clamp(16px,4vw,48px);
  --max:1320px;
  --cg:clamp(10px,1.6vw,24px);
  --sec:clamp(80px,11vw,152px);
  --nav:64px;
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav) + 16px);scrollbar-color:var(--ink-2) var(--sky)}
body{margin:0;background:var(--sky);color:var(--ink);font-family:var(--f-b);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip;font-variant-numeric:tabular-nums}
::selection{background:var(--ink);color:var(--on-ink)}
h1,h2,h3,p,figure,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}
a{color:inherit}img{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible{outline:3px solid var(--hot);outline-offset:3px}
input,select,textarea{caret-color:var(--hot);accent-color:var(--ink)}
.skip{position:absolute;left:12px;top:-80px;z-index:300;background:var(--ink);color:var(--on-ink);padding:10px 16px;text-decoration:none}.skip:focus{top:12px}
.wrap{width:min(var(--max),100% - 2*var(--gut));margin-inline:auto}
.g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--cg)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* tipografia */
h1,h2,h3,.disp{font-family:var(--f-d);font-weight:800;letter-spacing:-.03em;line-height:.98;text-wrap:balance}
.t-xl{font-size:clamp(2.6rem,7.4vw,6rem)}
.t-lg{font-size:clamp(2rem,4.6vw,3.9rem)}
.t-md{font-size:clamp(1.45rem,2.4vw,2.1rem);letter-spacing:-.02em;line-height:1.05}
.t-sm{font-size:1.2rem;letter-spacing:-.01em;line-height:1.15;font-weight:700}
.lead{font-size:clamp(1.06rem,1.3vw,1.22rem);line-height:1.55;color:var(--ink-2);max-width:56ch;text-wrap:pretty}
.mut{color:var(--ink-2)}.sm{font-size:.9rem}
p{text-wrap:pretty}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:0 22px;background:var(--ink);color:var(--on-ink);font-weight:600;font-size:1rem;text-decoration:none;border-radius:3px;transition:background .2s,transform .2s var(--ease)}
.btn:hover{background:#0A1524}.btn:active{transform:scale(.98)}
.btn .sw{width:14px;height:14px;border-radius:2px;background:var(--sw,var(--hot));flex:none}
.btn.out{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-2)}.btn.out:hover{box-shadow:inset 0 0 0 1.5px var(--ink);background:rgba(255,255,255,.25)}
.btn[disabled]{opacity:.55;cursor:default}
.lnk{font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-color:var(--line-2)}.lnk:hover{text-decoration-color:currentColor}
.acts{display:flex;flex-wrap:wrap;gap:10px}

/* cabeçalho */
.top{position:sticky;top:0;z-index:100;height:var(--nav);background:color-mix(in srgb,var(--sky) 92%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.top .wrap{height:100%;display:flex;align-items:center;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-d);font-weight:800;font-size:1.4rem;letter-spacing:-.03em;text-decoration:none;margin-right:auto}
.brand svg{width:30px;height:30px;flex:none}
.brand .dot{transition:transform .7s var(--ease);transform-origin:16px 16px}
.menu{display:flex;gap:4px}
.menu a{padding:8px 12px;text-decoration:none;font-weight:500;border-radius:3px}
.menu a:hover{background:rgba(255,255,255,.4)}
.menu a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--ink)}
.top .btn{min-height:42px;padding:0 16px;font-size:.95rem}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:3px}
.burger svg{width:22px;height:22px}
.sheet{position:fixed;inset:var(--nav) 0 auto 0;z-index:99;background:var(--sky);border-bottom:1px solid var(--line);padding:12px var(--gut) 20px;display:none;flex-direction:column}
.sheet.open{display:flex}
.sheet a{padding:14px 0;font-family:var(--f-d);font-weight:700;font-size:1.5rem;text-decoration:none;border-bottom:1px solid var(--line)}
@media (max-width:820px){.menu{display:none}.burger{display:inline-flex}}
@media (max-width:400px){.top .btn{padding:0 12px;font-size:.9rem}}

/* seções */
.sec{padding-block:var(--sec)}
.sec.tight{padding-top:0}
.hd{margin-bottom:clamp(32px,4vw,56px)}
.hd .lead{margin-top:18px}

/* ===== a régua do ano (assinatura) ===== */
.ano{position:relative;--name:minmax(170px,240px);--out:minmax(150px,210px);--rowh:50px;--gap:3px;user-select:none;-webkit-user-select:none}
.ano-head,.row{display:grid;grid-template-columns:var(--name) repeat(12,minmax(0,1fr)) var(--out);column-gap:var(--gap);align-items:stretch}
.ano-head{position:relative;z-index:2;margin-bottom:6px}
.ano-head .lab{align-self:end;font-size:.82rem;color:var(--ink-2);padding-bottom:8px}
.ano-head .lab.r{padding-left:14px}
.mbtn{height:44px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.92rem;border-radius:3px;color:var(--ink-2);transition:color .2s,background .2s;touch-action:pan-y}
.mbtn:hover{background:rgba(255,255,255,.45);color:var(--ink)}
.mbtn[aria-checked=true],.mbtn[aria-pressed=true]{color:var(--on-ink);background:var(--ink)}
.rows{position:relative;z-index:1}
.row{min-height:var(--rowh);margin-bottom:var(--gap);position:relative}
.row-name{display:flex;flex-direction:column;justify-content:center;padding-right:12px;text-decoration:none;line-height:1.15;min-width:0}
.row-name b{font-family:var(--f-d);font-weight:700;font-size:1.06rem;letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row-name span{font-size:.82rem;color:var(--ink-2)}
.row-name:hover b{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
.cell{position:relative;border-radius:2px;background:var(--c);color:var(--ct);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;filter:saturate(.62) brightness(1.04);opacity:.9;transition:filter .45s var(--ease),opacity .45s var(--ease);transition-delay:var(--d,0ms);touch-action:pan-y;cursor:pointer;overflow:hidden}
.cell i{position:absolute;left:0;right:0;bottom:0;height:var(--rain);background:rgba(19,34,53,.34)}
.cell em{font-style:normal;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s var(--ease);position:relative}
.cell.on{filter:none;opacity:1}
.cell.on em{opacity:1;transform:none}
.cell.best::before{content:"";position:absolute;top:4px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:currentColor;opacity:.75}
.row-out{display:flex;flex-direction:column;justify-content:center;padding-left:14px;line-height:1.2;font-size:.9rem;min-width:0}
.row-out b{font-weight:700;font-size:1rem}
.row-out .why{color:var(--ink-2)}
.row.off .row-name,.row.off .row-out{opacity:.62}
.row.in .row-out b{color:var(--ink)}
.cursor{position:absolute;top:0;bottom:0;left:0;width:0;z-index:3;pointer-events:none;border:3px solid var(--ink);border-radius:5px;transition:transform .6s var(--ease),width .6s var(--ease);margin:-4px 0 -1px -3px}
.cursor::after{content:"";position:absolute;left:50%;bottom:-12px;margin-left:-6px;border:6px solid transparent;border-top-color:var(--ink)}
.ano-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.ano-sum{font-family:var(--f-d);font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);letter-spacing:-.02em;line-height:1.15;max-width:30ch}
.legend{display:flex;align-items:center;gap:10px;font-size:.8rem;color:var(--ink-2)}
.legend .ramp{width:120px;height:10px;border-radius:2px;background:linear-gradient(90deg,#1B3A7A,#2F64A8 18%,#6E9CCB 32%,#AFCBE0 44%,#E7E5D8 56%,#F5C48E 65%,#EE8D52 76%,#D9502F 88%,#9E1F26)}
.legend .rn{display:inline-block;width:12px;height:10px;background:rgba(19,34,53,.34);border-radius:1px;vertical-align:-1px}
@media (max-width:900px){
  .ano{--gap:2px}
  .ano-head{grid-template-columns:repeat(12,minmax(0,1fr))}
  .ano-head .lab{display:none}
  .row{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 34px;row-gap:6px;margin-bottom:14px;min-height:0}
  .row-name{grid-column:1/8;grid-row:1;padding:0}
  .row-out{grid-column:8/13;grid-row:1;padding:0;text-align:right;align-items:flex-end}
  .row .cell{grid-row:2}
  .mbtn{font-size:.74rem;height:38px}
  .cell{font-size:.7rem}
  .cell.best::before{top:3px;width:4px;height:4px;margin-left:-2px}
  .cursor{border-width:2px;margin:-3px 0 0 -2px}
}
@media (max-width:420px){.row-out{font-size:.8rem}.row-out b{font-size:.9rem}.row-name b{font-size:.98rem}}

/* ===== início ===== */
.hero{padding:clamp(28px,5vw,64px) 0 clamp(56px,7vw,96px)}
.hero-top{align-items:end;margin-bottom:clamp(28px,4vw,48px);row-gap:20px}
.hero-top h1{grid-column:1/10;font-size:clamp(2.6rem,6.2vw,5.4rem)}
.hero-top .lead{grid-column:10/13;align-self:end}
@media (max-width:900px){.hero-top h1,.hero-top .lead{grid-column:1/-1}}

/* climograma */
.clima-sec .g12{row-gap:40px;align-items:start}
.clima-txt{grid-column:1/6}
.clima-txt .lead+.lead{margin-top:16px}
.clima-fig{grid-column:7/13}
.climo{border-top:1.5px solid var(--line-2);position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;height:clamp(280px,32vw,400px);align-items:end}
.climo .col{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end}
.climo .rain{position:absolute;top:0;left:18%;right:18%;height:var(--h);background:rgba(19,34,53,.26);border-radius:0 0 2px 2px}
.climo .tmp{height:var(--h);background:var(--c);border-radius:2px 2px 0 0;display:flex;align-items:flex-start;justify-content:center;padding-top:6px;color:var(--ct);font-weight:600;font-size:.82rem}
.climo-ax{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin-top:8px;font-size:.8rem;color:var(--ink-2);text-align:center}
.climo .note{position:absolute;bottom:calc(var(--h) + 10px);left:50%;width:max-content;max-width:150px;font-size:.82rem;line-height:1.25;font-weight:600;background:var(--sky-2);padding:6px 9px;border-radius:3px;box-shadow:0 6px 16px -10px rgba(19,34,53,.5);transform:translateX(-50%);z-index:2}
.climo .note.l{left:auto;right:-6px;transform:none}
.climo .note.r{left:-6px;transform:none}
.climo-cap{margin-top:16px;font-size:.84rem;color:var(--ink-2);display:flex;gap:18px;flex-wrap:wrap}
.climo-cap span{display:inline-flex;align-items:center;gap:7px}
.climo-cap i{display:inline-block;width:14px;height:10px;border-radius:1px}
.clima-ph{margin-top:28px;aspect-ratio:3/2;overflow:hidden;border-radius:3px;background:var(--sky-3)}
.clima-ph img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.clima-txt,.clima-fig{grid-column:1/-1}.climo .note{font-size:.72rem;max-width:110px;padding:5px 7px}}

/* foto com leitura de clima */
.leitura{position:relative;overflow:hidden;border-radius:3px;background:var(--sky-3)}
.leitura img{width:100%;aspect-ratio:21/9;object-fit:cover}
.leitura figcaption{position:absolute;left:clamp(12px,2.4vw,32px);bottom:clamp(12px,2.4vw,32px);background:var(--sky-2);padding:clamp(16px,2vw,26px);max-width:420px;border-radius:3px;box-shadow:0 18px 40px -24px rgba(19,34,53,.6)}
.leitura .strip{display:grid;grid-template-columns:repeat(12,1fr);gap:2px;margin:14px 0 16px}
.leitura .strip span{height:14px;border-radius:1px;background:var(--c);opacity:.45}
.leitura .strip span.b{opacity:1}
@media (max-width:700px){.leitura img{aspect-ratio:4/3}.leitura figcaption{position:static;max-width:none;border-radius:0;box-shadow:none}}

/* processo */
.passos{counter-reset:p}
.passos li{grid-column:span 4;padding-top:18px;position:relative}
.passos .bar{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;margin-bottom:22px}
.passos .bar span{height:12px;border-radius:1px;background:var(--sky-3)}
.passos .bar span.f{background:var(--ink)}
.passos .n{font-family:var(--f-d);font-weight:800;font-size:3.2rem;line-height:1;letter-spacing:-.04em;display:block;margin-bottom:10px}
.passos h3{margin-bottom:8px}
@media (max-width:820px){.passos li{grid-column:1/-1;padding-top:0;margin-bottom:36px}}

/* plantão 24h */
.plantao{background:var(--ink);color:var(--on-ink);border-radius:3px;padding:clamp(24px,4vw,56px)}
.plantao .lead{color:#C3CCD3}
.plantao h2{color:var(--on-ink)}
.fuso{display:flex;flex-wrap:wrap;gap:6px;margin:28px 0 22px}
.fuso button{min-height:40px;padding:0 14px;border-radius:3px;box-shadow:inset 0 0 0 1.5px rgba(241,244,244,.3);color:var(--on-ink);font-weight:500}
.fuso button[aria-pressed=true]{background:var(--on-ink);color:var(--ink);box-shadow:none}
.horas{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:2px}
.horas span{height:40px;border-radius:2px;background:rgba(241,244,244,.12);position:relative}
.horas span.on{background:#6E9CCB}
.horas span.agora{background:var(--on-ink);box-shadow:0 0 0 2px var(--hot)}
.horas-ax{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:2px;font-size:.72rem;color:#AAB6BF;margin-top:6px}
.horas-ax span:nth-child(odd){visibility:hidden}
.plantao-st{margin-top:18px;font-family:var(--f-d);font-weight:700;font-size:1.3rem;letter-spacing:-.015em}
@media (max-width:600px){.horas span{height:30px}.horas-ax span{visibility:hidden}.horas-ax span:nth-child(6n+1){visibility:visible}}

/* fechamento */
.fecho{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--cg);row-gap:24px;align-items:end}
.fecho h2{grid-column:1/8}
.fecho .acts{grid-column:8/13;justify-content:flex-end}
@media (max-width:820px){.fecho h2,.fecho .acts{grid-column:1/-1;justify-content:flex-start}}

/* ===== roteiros (lista) ===== */
.filtros{position:sticky;top:var(--nav);z-index:20;background:var(--sky);padding:14px 0 12px;border-bottom:1px solid var(--line);margin-bottom:28px}
.meses{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:3px}
.meses .mbtn{height:42px}
.meses .mbtn.all{font-size:.8rem}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chip{min-height:36px;padding:0 13px;border-radius:3px;box-shadow:inset 0 0 0 1.5px var(--line);font-size:.9rem;font-weight:500;color:var(--ink-2)}
.chip:hover{box-shadow:inset 0 0 0 1.5px var(--line-2);color:var(--ink)}
.chip[aria-pressed=true]{background:var(--ink);color:var(--on-ink);box-shadow:none}
.chips .sep{width:1px;background:var(--line-2);margin:4px 6px}
.cont{font-size:.95rem;color:var(--ink-2);margin-bottom:18px}
.cont b{color:var(--ink);font-weight:700}
.lista>li{border-top:1px solid var(--line-2);padding:clamp(20px,2.6vw,32px) 0;row-gap:16px;align-items:start;transition:opacity .3s}
.lista>li:last-child{border-bottom:1px solid var(--line-2)}
.lista .ph{grid-column:1/5;aspect-ratio:4/3;overflow:hidden;border-radius:3px;background:var(--sky-3)}
.lista .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.lista a.ph:hover img{transform:scale(1.03)}
.lista .tx{grid-column:5/9}
.lista .tx .where{font-size:.88rem;color:var(--ink-2);margin-bottom:8px}
.lista .tx h2{font-size:clamp(1.6rem,2.6vw,2.3rem);letter-spacing:-.025em;line-height:1.02;margin-bottom:12px}
.lista .tx h2 a{text-decoration:none}.lista .tx h2 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.lista .tx p{color:var(--ink-2);max-width:44ch}
.lista .num{grid-column:9/13}
.mini{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2px}
.mini span{height:30px;border-radius:2px;background:var(--c);opacity:.38;position:relative}
.mini span.b{opacity:1}
.mini span.on{outline:2.5px solid var(--ink);outline-offset:1px;z-index:1}
.mini-ax{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2px;font-size:.68rem;color:var(--ink-2);text-align:center;margin-top:4px}
.estado{margin-top:14px;font-size:.92rem;line-height:1.35}
.estado b{font-weight:700}
.preco{margin-top:16px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.preco b{font-family:var(--f-d);font-weight:800;font-size:1.7rem;letter-spacing:-.03em}
.preco span{font-size:.88rem;color:var(--ink-2)}
.lista .acts{margin-top:16px}
.lista li.fora .ph,.lista li.fora .tx{opacity:.7}
.vazio{padding:48px 0;border-top:1px solid var(--line-2)}
.vazio p{margin-top:12px}
@media (max-width:900px){.lista .ph{grid-column:1/-1;aspect-ratio:16/9}.lista .tx,.lista .num{grid-column:1/-1}.meses{grid-template-columns:repeat(6,minmax(0,1fr))}.meses .mbtn.all{grid-column:span 6;height:38px}.meses .mbtn{height:38px}}

/* ===== roteiro ===== */
.r-top{padding:clamp(28px,4vw,56px) 0 0}
.r-top .g12{row-gap:18px;align-items:end}
.r-top .where{grid-column:1/-1;font-size:.95rem;color:var(--ink-2)}
.r-top h1{grid-column:1/9}
.r-top .lead{grid-column:9/13}
.r-top .r-fotos{margin-top:clamp(28px,4vw,48px);row-gap:var(--cg);align-items:stretch}
.r-fotos figure{overflow:hidden;border-radius:3px;background:var(--sky-3)}
.r-fotos figure img{width:100%;height:100%;object-fit:cover}
.r-fotos .a{grid-column:1/9;aspect-ratio:3/2}
.r-fotos .b{grid-column:9/13}
@media (max-width:900px){.r-top h1,.r-top .lead{grid-column:1/-1}.r-fotos .a{grid-column:1/-1}.r-fotos .b{display:none}}
.r-ano{margin-top:clamp(48px,6vw,80px)}
.r-ano .t-md{margin-bottom:8px}
.r-band{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin-top:22px;position:relative}
.r-band button{position:relative;height:clamp(64px,8vw,96px);border-radius:3px;background:var(--c);color:var(--ct);display:flex;flex-direction:column;justify-content:space-between;padding:8px 6px;text-align:left;filter:saturate(.6) brightness(1.04);opacity:.88;transition:filter .4s var(--ease),opacity .4s var(--ease);overflow:hidden}
.r-band button .m{font-size:.8rem;font-weight:600;position:relative}
.r-band button .tv{font-family:var(--f-d);font-weight:800;font-size:clamp(.95rem,1.8vw,1.5rem);letter-spacing:-.03em;position:relative}
.r-band button i{position:absolute;left:0;right:0;bottom:0;height:var(--rain);background:rgba(19,34,53,.3)}
.r-band button.b{filter:saturate(.8);opacity:.95}
.r-band button[aria-checked=true]{filter:none;opacity:1;box-shadow:0 0 0 3px var(--sky),0 0 0 6px var(--ink);z-index:1}
.r-band button.b::after{content:"";position:absolute;top:8px;right:7px;width:6px;height:6px;border-radius:50%;background:currentColor}
.r-read{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px 28px;align-items:baseline}
.r-read .big{font-family:var(--f-d);font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);letter-spacing:-.02em}
@media (max-width:600px){.r-band{gap:2px}.r-band button{padding:5px 3px;height:62px}.r-band button .m{font-size:.66rem}.r-band button .tv{font-size:.82rem}.r-band button.b::after{top:5px;right:4px;width:4px;height:4px}}
.r-corpo{margin-top:clamp(56px,7vw,96px);align-items:start;row-gap:48px}
.dias{grid-column:1/8}
.dias h2{margin-bottom:28px}
.dia{display:grid;grid-template-columns:88px 1fr;column-gap:20px;padding:22px 0;border-top:1px solid var(--line-2)}
.dia:last-child{border-bottom:1px solid var(--line-2)}
.dia .n{font-family:var(--f-d);font-weight:800;font-size:2.6rem;line-height:.9;letter-spacing:-.04em}
.dia .n small{display:block;font-family:var(--f-b);font-weight:500;font-size:.78rem;letter-spacing:0;color:var(--ink-2);margin-bottom:6px}
.dia h3{margin-bottom:6px}
.dia p{color:var(--ink-2);max-width:56ch}
.dia.livre .n{color:var(--ink-2);font-size:1.9rem}
.dias .nota{margin-top:18px;font-size:.9rem;color:var(--ink-2)}
.conta{grid-column:9/13;position:sticky;top:calc(var(--nav) + 20px);background:var(--sky-2);border-radius:3px;padding:clamp(20px,2.4vw,30px);box-shadow:0 22px 50px -34px rgba(19,34,53,.55)}
.conta h2{font-size:1.5rem;letter-spacing:-.02em;margin-bottom:18px}
.linha{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.linha .k{font-size:.92rem;color:var(--ink-2)}
.linha .v{font-weight:600;text-align:right}
.step{display:inline-flex;align-items:center;gap:4px}
.step button{width:40px;height:40px;border-radius:3px;box-shadow:inset 0 0 0 1.5px var(--line-2);display:inline-flex;align-items:center;justify-content:center}
.step button:hover:not([disabled]){box-shadow:inset 0 0 0 1.5px var(--ink)}
.step button[disabled]{opacity:.35;cursor:default}
.step button svg{width:14px;height:14px}
.step output{min-width:40px;text-align:center;font-family:var(--f-d);font-weight:800;font-size:1.5rem}
.total{margin:20px 0 6px;font-family:var(--f-d);font-weight:800;font-size:clamp(2.2rem,3.6vw,3rem);letter-spacing:-.035em;line-height:1;display:flex;align-items:baseline}
.total .s{font-size:.5em;margin-right:.2em;letter-spacing:0}
.roll{display:inline-flex;overflow:hidden;height:1em;line-height:1}
.roll .d{display:inline-block;height:1em;overflow:hidden}
.roll .d span{display:flex;flex-direction:column;transition:transform .7s var(--ease)}
.roll .d span i{font-style:normal;height:1em;display:block}
.roll .p{display:inline-block}
.por{font-size:.9rem;color:var(--ink-2)}
.temporada{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:.9rem;font-weight:600}
.temporada i{width:12px;height:12px;border-radius:2px;background:var(--c,var(--ink))}
.inclui{margin:20px 0;font-size:.92rem;color:var(--ink-2)}
.inclui li{padding:6px 0 6px 22px;position:relative}
.inclui li::before{content:"";position:absolute;left:0;top:10px;width:13px;height:11px;background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 13 11%27%3E%3Cpath d=%27M1 5.5l3.8 3.8L12 1.5%27 fill=%27none%27 stroke=%27%23132235%27 stroke-width=%272%27/%3E%3C/svg%3E") no-repeat}
.conta .btn{width:100%}
.conta .fine{margin-top:12px;font-size:.8rem;color:var(--ink-2)}
@media (max-width:900px){.dias,.conta{grid-column:1/-1}.conta{position:static}}
.outros li{border-top:1px solid var(--line-2)}
.outros li:last-child{border-bottom:1px solid var(--line-2)}
.outros a{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:center;padding:14px 0;text-decoration:none}
.outros img{width:96px;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.outros b{font-family:var(--f-d);font-weight:700;font-size:1.25rem;letter-spacing:-.02em;display:block}
.outros span{font-size:.88rem;color:var(--ink-2)}
.outros a:hover b{text-decoration:underline;text-underline-offset:3px}
.outros .p{text-align:right;font-weight:600}
@media (max-width:600px){.dia{grid-template-columns:60px 1fr;column-gap:14px}.dia .n{font-size:2.1rem}.dia.livre .n{font-size:1.5rem}.outros a{grid-template-columns:80px 1fr;gap:14px}.outros img{width:80px}.outros .p{grid-column:2;text-align:left;margin-top:-10px}}

/* ===== orçamento ===== */
.o-top{padding:clamp(28px,4vw,56px) 0 clamp(28px,4vw,48px)}
.o-top h1{max-width:18ch;font-size:clamp(2.4rem,6vw,5rem)}
.o-top .lead{margin-top:18px}
.o-grid{align-items:start;row-gap:40px;padding-bottom:var(--sec)}
.form{grid-column:1/8}
.resumo{grid-column:9/13;position:sticky;top:calc(var(--nav) + 20px)}
@media (max-width:900px){.form,.resumo{grid-column:1/-1}.resumo{position:static}}
fieldset{border:0;margin:0;padding:0;min-width:0}
.blk{padding:26px 0;border-top:1px solid var(--line-2)}
.blk>legend,.blk>.lg{float:left;width:100%;font-family:var(--f-d);font-weight:700;font-size:1.25rem;letter-spacing:-.015em;margin-bottom:6px;padding:0}
.blk>legend+*{clear:both}
.blk .hint{font-size:.88rem;color:var(--ink-2);margin-bottom:14px;clear:both}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:560px){.f2{grid-template-columns:1fr}}
.fld{display:flex;flex-direction:column;gap:6px}
.fld label{font-size:.92rem;font-weight:600}
.fld input,.fld select,.fld textarea{min-height:50px;padding:12px 14px;border:0;border-radius:3px;background:var(--sky-2);box-shadow:inset 0 0 0 1.5px var(--line);font-size:1rem;width:100%}
.fld textarea{min-height:110px;resize:vertical}
.fld input:hover,.fld select:hover,.fld textarea:hover{box-shadow:inset 0 0 0 1.5px var(--line-2)}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ink)}
.fld ::placeholder{color:#55626D}
.fld .err,.blk .err{display:none;font-size:.86rem;font-weight:600;color:#A3271A}
.fld.bad input,.fld.bad select{box-shadow:inset 0 0 0 2px #A3271A}
.fld.bad .err,.blk.bad .err{display:block}
.blk.bad .o-mes{outline:2px solid #A3271A;outline-offset:4px;border-radius:3px}
.o-mes{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
.o-mes label{position:relative;cursor:pointer}
.o-mes input{position:absolute;opacity:0;inset:0}
.o-mes span{height:56px;border-radius:3px;background:var(--c,var(--sky-3));color:var(--ct,var(--ink));display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;filter:saturate(.6) brightness(1.04);opacity:.88;position:relative;transition:filter .3s,opacity .3s;line-height:1.1}
.o-mes span small{font-size:.72rem;font-weight:500}
.o-mes label.b span{filter:saturate(.85);opacity:.95}.o-mes label.b span::after{content:"";position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:currentColor}
.o-mes input:checked+span{filter:none;opacity:1;box-shadow:0 0 0 2px var(--sky),0 0 0 5px var(--ink)}
.o-mes input:focus-visible+span{outline:3px solid var(--hot);outline-offset:5px}
@media (max-width:560px){.o-mes{grid-template-columns:repeat(6,minmax(0,1fr))}}
.opts{display:flex;flex-wrap:wrap;gap:6px}
.opts label{position:relative;cursor:pointer}
.opts input{position:absolute;opacity:0;inset:0}
.opts span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:3px;box-shadow:inset 0 0 0 1.5px var(--line-2);font-weight:500}
.opts input:checked+span{background:var(--ink);color:var(--on-ink);box-shadow:none}
.opts input:focus-visible+span{outline:3px solid var(--hot);outline-offset:3px}
.envio{padding-top:26px;border-top:1px solid var(--line-2);display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.envio p{font-size:.86rem;color:var(--ink-2);max-width:40ch}
.resumo .box{background:var(--sky-2);border-radius:3px;padding:clamp(20px,2.4vw,28px);box-shadow:0 22px 50px -34px rgba(19,34,53,.55)}
.resumo h2{font-size:1.4rem;letter-spacing:-.02em;margin-bottom:6px}
.resumo .ph{aspect-ratio:16/10;overflow:hidden;border-radius:2px;margin:14px 0 4px;background:var(--sky-3)}
.resumo .ph img{width:100%;height:100%;object-fit:cover}
.resumo .total{font-size:2.2rem;margin-top:14px}
.ok{display:none}
.form.sent .ok{display:block;background:var(--ink);color:var(--on-ink);border-radius:3px;padding:clamp(22px,3vw,36px);margin-top:26px}
.form.sent .ok h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:10px}
.form.sent .ok p{color:#C3CCD3}

/* rodapé */
.pe{background:var(--ink);color:var(--on-ink);padding:clamp(56px,7vw,96px) 0 32px;margin-top:0}
.pe .g12{row-gap:32px}
.pe .marca{grid-column:1/6}
.pe .marca p{margin-top:14px;color:#C3CCD3;max-width:38ch}
.pe .marca .brand{font-size:2rem}
.pe .col{grid-column:span 2}
.pe h3{font-family:var(--f-b);font-weight:600;font-size:.86rem;letter-spacing:0;color:#AAB6BF;margin-bottom:12px}
.pe ul li{padding:3px 0}
.pe a{text-decoration:none}.pe a:hover{text-decoration:underline;text-underline-offset:3px}
.pe .fine{grid-column:1/-1;border-top:1px solid rgba(241,244,244,.18);padding-top:22px;margin-top:20px;font-size:.8rem;color:#AAB6BF;display:grid;gap:10px}
.pe .fine a{text-decoration:underline;text-underline-offset:2px}
.pe .fine strong{color:var(--on-ink);font-weight:600}
@media (max-width:820px){.pe .marca{grid-column:1/-1}.pe .col{grid-column:span 6}}

.ava{position:fixed;right:12px;bottom:12px;z-index:90;display:inline-flex;align-items:center;gap:8px;font:600 11px/1 var(--f-b),system-ui,sans-serif;color:var(--on-ink);background:rgba(19,34,53,.88);padding:6px 11px 6px 6px;border-radius:3px;pointer-events:none}
.ava b{background:var(--on-ink);color:var(--ink);border-radius:2px;padding:4px 7px}
@media (max-width:700px){body{padding-bottom:44px}.ava{bottom:8px;right:8px}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;transition-delay:0ms!important;animation:none!important}}
