/* Clínica Sorrir+ — mundo: painel de chamada da recepção, parede cobalto, papel térmico */
:root{
  --wall:#1F3CC4;--wall-deep:#172E9E;--wall-ink:#DDE3FF;
  --panel:#121110;--panel-2:#1D1B19;--panel-line:#34302C;
  --led:#FF3D22;--led-soft:#FF7A63;--led-dim:#3A1C16;
  --paper:#F2F3EE;--paper-2:#E3E5DD;--ink:#16171C;--ink-2:#4B4E58;
  --sun:#FFD23C;--sun-deep:#E8B800;
  --f-head:"Archivo",system-ui,sans-serif;--f-led:"Doto",monospace;--f-tick:"Red Hat Mono",ui-monospace,monospace;
  --gut:clamp(16px,4vw,48px);--max:1240px;
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--wall);color:#fff;font:400 1.0625rem/1.55 var(--f-head);font-stretch:100%;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
h1,h2,h3,p,ul,ol,figure{margin:0}
ul,ol{padding:0;list-style:none}
button,input,select{font:inherit;color:inherit}
::selection{background:var(--sun);color:var(--ink)}
:focus-visible{outline:3px solid var(--sun);outline-offset:3px;border-radius:2px}
.on-paper :focus-visible{outline-color:var(--wall)}
html{scrollbar-color:var(--wall-deep) var(--panel)}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--sun);color:var(--ink);padding:10px 14px;font-weight:700}
.skip:focus{top:12px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.num{font-variant-numeric:tabular-nums}

/* tipo */
.d1{font-weight:800;font-stretch:118%;font-size:clamp(2.6rem,7.4vw,5.6rem);line-height:.94;letter-spacing:-.035em;text-wrap:balance}
.d2{font-weight:800;font-stretch:115%;font-size:clamp(2rem,4.6vw,3.6rem);line-height:.98;letter-spacing:-.03em;text-wrap:balance}
.d3{font-weight:750;font-stretch:112%;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.1;letter-spacing:-.015em}
.lead{font-size:clamp(1.08rem,1.6vw,1.3rem);line-height:1.5;max-width:46ch;color:var(--wall-ink)}
.on-paper .lead{color:var(--ink-2)}
.small{font-size:.9rem}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border:0;border-radius:6px;background:var(--sun);color:var(--ink);font-weight:750;font-stretch:108%;font-size:1rem;text-decoration:none;cursor:pointer;box-shadow:0 2px 0 var(--sun-deep),0 8px 18px -8px rgba(0,0,0,.45);transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 var(--sun-deep),0 12px 22px -8px rgba(0,0,0,.5)}
.btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--sun-deep)}
.btn:disabled{background:#8B8C86;box-shadow:none;cursor:not-allowed;transform:none;color:#2a2b2e}
.btn.ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.btn.ghost:hover{box-shadow:inset 0 0 0 2px #fff}
.btn.ink{background:var(--ink);color:#fff;box-shadow:0 8px 18px -10px rgba(0,0,0,.5)}
.btn svg{width:18px;height:18px;flex:none}
.tlink{font-weight:700;text-decoration:underline;text-underline-offset:.25em}

/* marca */
.marca{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-stretch:120%;font-size:1.25rem;letter-spacing:-.02em;white-space:nowrap}
.marca svg{width:30px;height:30px;flex:none;border-radius:5px}
.marca b{color:var(--led)}

/* topo: barra preta como a moldura do painel */
.topo{background:var(--panel);color:#fff;border-bottom:1px solid var(--panel-line);position:relative;z-index:40}
.topo-in{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
.topo nav{order:3;width:100%;display:flex;gap:22px;font-size:.95rem;border-top:1px solid var(--panel-line);padding-top:10px}
.topo nav a{text-decoration:none;color:#CFCBC6;padding:4px 0}
.topo nav a:hover{color:#fff}
.topo nav a[aria-current=page]{color:#fff;box-shadow:inset 0 -2px 0 var(--led)}
.topo .btn{margin-left:auto;min-height:42px;padding:9px 16px;font-size:.95rem}
@media (min-width:760px){
  .topo{position:sticky;top:0}
  .topo nav{order:0;width:auto;border:0;padding:0;margin-left:28px}
}

/* ===== painel de LED ===== */
.painel{position:relative;background:radial-gradient(circle,#24201D 1px,transparent 1.5px) 0 0/7px 7px,var(--panel);border-radius:10px;padding:clamp(18px,3vw,30px);color:var(--led);box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 26px 50px -24px rgba(0,0,0,.75),0 6px 14px -6px rgba(0,0,0,.5)}
.painel::before,.painel::after{content:"";position:absolute;top:10px;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#6c6862,#2b2826 70%)}
.painel::before{left:10px}.painel::after{right:10px}
.led{font-family:var(--f-led);font-weight:800;letter-spacing:.02em;color:var(--led)}
.p-rot{font-size:.88rem;color:#B9B2AB;font-weight:500}
.p-big{display:block;font-family:var(--f-led);font-weight:900;font-size:clamp(4.6rem,15vw,9.5rem);line-height:.86;letter-spacing:-.01em;color:var(--led);font-variant-numeric:tabular-nums}
.p-dia{font-family:var(--f-led);font-weight:800;font-size:clamp(1.4rem,3.4vw,2.1rem);line-height:1;color:var(--led);text-transform:uppercase;letter-spacing:.04em}
.p-sep{height:1px;background:var(--panel-line);margin:20px 0 16px}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}
.slot{display:flex;align-items:center;justify-content:center;min-height:46px;padding:6px 4px;border:1px solid #4A2A23;border-radius:5px;background:rgba(255,61,34,.04);font-family:var(--f-led);font-weight:900;font-size:1.3rem;color:var(--led);text-decoration:none;cursor:pointer;font-variant-numeric:tabular-nums;transition:background .18s,color .18s,border-color .18s}
.slot:hover{background:rgba(255,61,34,.16);border-color:var(--led)}
.slot[aria-pressed=true]{background:var(--led);color:var(--panel);border-color:var(--led);text-shadow:none}
.slot:disabled{cursor:not-allowed;color:#5A3A33;border-color:#2A211E;background:transparent;text-shadow:none;text-decoration:line-through;text-decoration-thickness:2px}
.painel :focus-visible{outline-color:var(--sun)}
.p-link{display:inline-block;margin-top:16px;color:#fff;font-weight:700;font-size:.95rem}

/* entrada do painel: as linhas acendem de cima pra baixo, uma vez */
.js .acende{animation:acende .9s steps(9,end) both}
.js .acende.d2x{animation-delay:.25s}.js .acende.d3x{animation-delay:.5s}
@keyframes acende{from{clip-path:inset(0 0 100% 0);opacity:.4}to{clip-path:inset(0 0 0 0);opacity:1}}

/* ===== início ===== */
.hero{padding:clamp(28px,6vw,72px) 0 clamp(48px,7vw,96px)}
.hero-g{display:grid;gap:clamp(28px,5vw,56px);align-items:center}
.hero h1{max-width:12ch}
.hero .lead{margin-top:22px}
.hero-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-info{margin-top:30px;display:grid;gap:4px;font-size:.95rem;color:var(--wall-ink)}
.hero-info strong{color:#fff;font-weight:700}
@media (min-width:980px){.hero-g{grid-template-columns:1.08fr .92fr}}

/* rolo de papel térmico */
.rolo-sec{padding:clamp(40px,7vw,96px) 0;background:var(--wall-deep)}
.rolo-sec h2{max-width:20ch}
.rolo-wrap{margin-top:clamp(28px,4vw,48px);filter:drop-shadow(0 14px 22px rgba(0,0,0,.45))}
.papel{background:var(--paper);color:var(--ink);-webkit-mask:radial-gradient(circle at 50% 0,#0000 5px,#000 5.5px) top/14px 51% repeat-x,radial-gradient(circle at 50% 100%,#0000 5px,#000 5.5px) bottom/14px 51% repeat-x;mask:radial-gradient(circle at 50% 0,#0000 5px,#000 5.5px) top/14px 51% repeat-x,radial-gradient(circle at 50% 100%,#0000 5px,#000 5.5px) bottom/14px 51% repeat-x}
.rolo{display:grid;padding:14px 0}
.rolo li{padding:26px clamp(20px,3vw,34px);position:relative}
.rolo li+li{border-top:2px dashed #B9BCB2}
.rolo time{font-family:var(--f-tick);font-weight:700;font-size:.95rem;color:var(--wall);font-variant-numeric:tabular-nums}
.rolo h3{margin-top:8px}
.rolo p{margin-top:8px;color:var(--ink-2);max-width:40ch}
@media (min-width:860px){
  .rolo{grid-template-columns:repeat(3,1fr);padding:0 14px}
  .rolo li{padding:34px clamp(22px,2.6vw,36px) 38px}
  .rolo li+li{border-top:0;border-left:2px dashed #B9BCB2}
  .rolo-wrap .papel{-webkit-mask:radial-gradient(circle at 0 50%,#0000 5px,#000 5.5px) left/51% 14px repeat-y,radial-gradient(circle at 100% 50%,#0000 5px,#000 5.5px) right/51% 14px repeat-y;mask:radial-gradient(circle at 0 50%,#0000 5px,#000 5.5px) left/51% 14px repeat-y,radial-gradient(circle at 100% 50%,#0000 5px,#000 5.5px) right/51% 14px repeat-y}
}
.rolo-fim{margin-top:22px;color:var(--wall-ink);max-width:60ch}

/* tabela de preços (papel) */
.on-paper{background:var(--paper);color:var(--ink)}
.tabela-sec{padding:clamp(48px,8vw,110px) 0}
.tabela-g{display:grid;gap:clamp(28px,5vw,64px)}
.tabela-g .lead{margin-top:18px}
.legenda{margin-top:24px;display:grid;gap:10px;font-size:.95rem;color:var(--ink-2);max-width:40ch}
.legenda span{display:flex;gap:12px;align-items:baseline}
.legenda i{flex:none;width:34px;height:0;border-top:3px solid var(--ink);transform:translateY(-4px)}
.legenda i.var{border-top:3px dotted var(--ink)}
@media (min-width:980px){.tabela-g{grid-template-columns:.8fr 1.2fr}}
.precos{border-top:3px solid var(--ink)}
.precos li{border-bottom:1px solid #C9CCC2}
.precos a{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:16px 4px;text-decoration:none;align-items:baseline;transition:background .15s}
.precos a:hover{background:#E8EAE2}
.precos .nm{font-weight:750;font-stretch:110%;font-size:1.1rem}
.precos .vl{font-family:var(--f-tick);font-weight:700;font-size:1.05rem;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.precos .vl.var{text-decoration:underline dotted 2px;text-underline-offset:5px}
.precos .vl small{display:inline;margin-right:6px;font-weight:500;font-size:.72rem;color:var(--ink-2);text-decoration:none;font-family:var(--f-head)}
.precos .mt{font-size:.9rem;color:var(--ink-2)}
.precos .mt b{font-weight:600;color:var(--ink)}
.tabela-acts{margin-top:26px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* sala (faixa preta) */
.salas{background:var(--panel);padding:clamp(48px,8vw,110px) 0}
.salas h2{max-width:18ch}
.salas .lead{color:#C9C3BC;margin-top:18px}
.fotos{margin-top:clamp(28px,4vw,48px);display:grid;gap:12px}
.foto{position:relative;overflow:hidden;border-radius:8px;background:#222}
.foto img{width:100%;height:100%;object-fit:cover}
.foto figcaption{position:absolute;left:10px;bottom:10px;background:rgba(18,17,16,.92);padding:6px 10px 5px;border-radius:4px;font-family:var(--f-led);font-weight:900;font-size:1.1rem;color:var(--led)}
.fotos .f1{aspect-ratio:4/3}.fotos .f2,.fotos .f3{aspect-ratio:4/3}
@media (min-width:860px){.fotos{grid-template-columns:1.5fr 1fr;grid-template-rows:repeat(2,clamp(220px,22vw,320px))}.fotos .f1{grid-row:1/3;aspect-ratio:auto}.fotos .f2,.fotos .f3{aspect-ratio:auto}}

/* urgência (amarelo do dispensador de senha) */
.urg{background:var(--sun);color:var(--ink);padding:clamp(44px,7vw,90px) 0}
.urg-g{display:grid;gap:24px;align-items:end}
.urg h2{max-width:16ch}
.urg p{max-width:44ch;font-size:1.12rem;color:#3B3410}
.urg .btn{background:var(--ink);color:#fff;box-shadow:0 10px 20px -10px rgba(0,0,0,.6)}
@media (min-width:900px){.urg-g{grid-template-columns:1.2fr 1fr}}

/* ===== tratamentos ===== */
.topo-sec{padding:clamp(32px,6vw,80px) 0 clamp(36px,5vw,64px)}
.topo-sec .lead{margin-top:20px}
.trats{padding-block:clamp(20px,4vw,48px) clamp(48px,8vw,100px)}
.trat{display:grid;gap:22px;padding:clamp(28px,4vw,44px) 0;border-top:3px solid var(--ink)}
.trat:first-child{border-top:0}
.trat h2{font-weight:800;font-stretch:115%;font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1;letter-spacing:-.025em}
.trat .desc{margin-top:12px;color:var(--ink-2);max-width:46ch;font-size:1.05rem}
.inc{margin-top:18px;display:grid;gap:8px;font-size:.98rem}
.inc li{display:flex;gap:10px;align-items:baseline}
.inc li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--wall);transform:translateY(-1px)}
.trat-foto{border-radius:8px;overflow:hidden;aspect-ratio:3/2;background:var(--paper-2)}
.trat-foto img{width:100%;height:100%;object-fit:cover}
.stub-w{filter:drop-shadow(0 10px 16px rgba(20,24,40,.22));align-self:start;max-width:340px}
.stub{background:#fff;padding:22px 22px 24px;font-family:var(--f-tick);font-size:.92rem;color:var(--ink)}
.stub dl{display:grid;grid-template-columns:1fr auto;gap:6px 12px;margin:0}
.stub dt{color:var(--ink-2)}
.stub dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.stub .preco{grid-column:1/-1;display:block;font-size:1.6rem;font-weight:700;line-height:1.1;padding:8px 0 10px;margin-bottom:6px;border-bottom:2px dashed #C2C5BC;text-align:left}
.stub .preco.var span{text-decoration:underline dotted 2px;text-underline-offset:6px}
.stub .preco small{display:block;font-size:.78rem;font-weight:500;color:var(--ink-2);margin-bottom:4px}
.stub .btn{width:100%;margin-top:18px;font-family:var(--f-head)}
@media (min-width:900px){
  .trat{grid-template-columns:1.25fr .9fr 300px;column-gap:clamp(24px,3vw,48px);align-items:start}
  .trat.tem-foto .trat-foto{grid-column:2;grid-row:1}
  .trat.tem-foto .inc-w{grid-column:1}
  .trat:not(.tem-foto) .inc-w{grid-column:1/3}
  .trat:not(.tem-foto) .inc{grid-template-columns:repeat(3,auto);justify-content:start;column-gap:28px}
}
.faq{background:var(--wall-deep);padding:clamp(48px,8vw,100px) 0}
.faq-g{display:grid;gap:28px}
@media (min-width:900px){.faq-g{grid-template-columns:.8fr 1.2fr}}
.faq details{border-top:1px solid rgba(255,255,255,.28)}
.faq details:last-child{border-bottom:1px solid rgba(255,255,255,.28)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:18px 0;font-weight:700;font-stretch:108%;font-size:1.1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:12px;height:12px;margin-top:7px;border-right:2px solid var(--sun);border-bottom:2px solid var(--sun);transform:rotate(45deg);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq details p{padding:0 0 20px;color:var(--wall-ink);max-width:60ch}

/* ===== clínica ===== */
.cli-hero{display:grid;gap:clamp(28px,4vw,56px);align-items:end;padding-block:clamp(32px,6vw,80px) clamp(44px,6vw,80px)}
.cli-hero .foto{aspect-ratio:3/2}
@media (min-width:960px){.cli-hero{grid-template-columns:1fr 1fr}}
.quadro{background:var(--panel);padding:clamp(48px,8vw,100px) 0}
.quadro h2{max-width:20ch}
.quadro .lead{color:#C9C3BC;margin-top:16px}
.cons{margin-top:clamp(28px,4vw,48px);display:grid;gap:10px}
.cons li{display:grid;gap:6px 24px;padding:20px;border:1px solid var(--panel-line);border-radius:8px;background:var(--panel-2)}
.cons .led{font-size:clamp(1.5rem,3vw,2.2rem);line-height:1}
.cons h3{font-weight:750;font-stretch:112%;font-size:1.3rem}
.cons .area{color:var(--led-soft);font-weight:600}
.cons p{color:#C9C3BC;max-width:52ch}
@media (min-width:860px){.cons li{grid-template-columns:150px 1fr 1.3fr;align-items:center;padding:22px 26px}}
.equip{padding:clamp(48px,8vw,110px) 0}
.equip-g{display:grid;gap:clamp(24px,4vw,48px);align-items:center}
.equip .fotos2{display:grid;grid-template-columns:.75fr 1fr;gap:12px;align-items:end}
.equip .fotos2 .foto:first-child{aspect-ratio:3/4}.equip .fotos2 .foto:last-child{aspect-ratio:3/2}
.equip ul{margin-top:22px;display:grid;gap:0;border-top:3px solid var(--ink)}
.equip li{padding:14px 2px;border-bottom:1px solid #C9CCC2;display:grid;gap:2px}
.equip li b{font-weight:750;font-stretch:108%}
.equip li span{color:var(--ink-2);font-size:.95rem}
@media (min-width:960px){.equip-g{grid-template-columns:1fr 1fr}}
.onde{padding:clamp(44px,7vw,90px) 0;background:var(--wall-deep)}
.onde-g{display:grid;gap:28px}
.onde h3{font-weight:750;font-stretch:110%;font-size:1.15rem;margin-bottom:8px}
.onde p{color:var(--wall-ink)}
@media (min-width:860px){.onde-g{grid-template-columns:1.4fr 1fr 1fr}}

/* ===== agendar ===== */
.ag{padding:clamp(24px,5vw,64px) 0 clamp(56px,8vw,110px)}
.ag-head{max-width:760px}
.ag-head .lead{margin-top:16px}
.ag-g{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,44px);margin-top:clamp(26px,4vw,44px);align-items:start}
@media (min-width:1020px){.ag-g{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}}
.ag .painel{padding:clamp(18px,3vw,32px)}
.etapa+.etapa{margin-top:26px;padding-top:22px;border-top:1px solid var(--panel-line)}
.etapa-t{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;color:#fff}
.etapa-t h2{font-weight:700;font-stretch:110%;font-size:1.1rem}
.etapa-t span{font-size:.88rem;color:#B9B2AB}
.trat-op{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px}
.trat-op button{display:grid;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--panel-line);border-radius:6px;background:var(--panel-2);color:#EDE8E3;cursor:pointer;transition:border-color .15s,background .15s}
.trat-op button:hover{border-color:#6A615A}
.trat-op b{font-weight:700;font-size:.98rem}
.trat-op span{font-size:.82rem;color:#A9A29B;font-variant-numeric:tabular-nums}
.trat-op button[aria-pressed=true]{border-color:var(--led);background:#2A1511;box-shadow:inset 0 0 0 1px var(--led)}
.trat-op button[aria-pressed=true] span{color:var(--led-soft)}
.dias{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#4A2A23 transparent}
.dias button{flex:none;scroll-snap-align:start;width:76px;display:grid;justify-items:center;gap:2px;padding:10px 4px 9px;border:1px solid #4A2A23;border-radius:6px;background:transparent;color:var(--led);cursor:pointer;font-family:var(--f-led);font-weight:800;text-transform:uppercase;transition:background .15s,border-color .15s}
.dias button b{font-size:1.9rem;line-height:1;font-weight:900;font-variant-numeric:tabular-nums}
.dias button span{font-size:.82rem;letter-spacing:.04em}
.dias button em{font-style:normal;font-family:var(--f-head);font-size:.68rem;color:#A9A29B;text-transform:none;font-weight:500}
.dias button:hover{background:rgba(255,61,34,.12);border-color:var(--led)}
.dias button[aria-pressed=true]{background:var(--led);color:var(--panel);border-color:var(--led)}
.dias button[aria-pressed=true] em{color:var(--panel)}
.dias button.zero{opacity:.5}
.horas-vazio{color:#D8D1CA;font-size:.95rem;padding:6px 0}
.horas-vazio button{background:none;border:0;padding:0;color:var(--sun);font-weight:700;text-decoration:underline;cursor:pointer}
.turno+.turno{margin-top:14px}
.turno h3{font-size:.85rem;font-weight:600;color:#A9A29B;margin-bottom:8px}
.legenda-p{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:.84rem;color:#A9A29B}
.legenda-p span{display:inline-flex;align-items:center;gap:8px}
.legenda-p i{width:14px;height:14px;border-radius:3px;border:1px solid var(--led);background:rgba(255,61,34,.1)}
.legenda-p i.oc{border-color:#2A211E;background:transparent;position:relative}
.legenda-p i.oc::after{content:"";position:absolute;left:1px;right:1px;top:5px;height:2px;background:#5A3A33}
.legenda-p i.sel{background:var(--led)}

/* impressora e comprovante */
.imp{position:relative}
.imp-boca{height:26px;border-radius:8px 8px 4px 4px;background:var(--panel);position:relative;z-index:2;box-shadow:0 10px 20px -10px rgba(0,0,0,.6)}
.imp-boca::after{content:"";position:absolute;left:16px;right:16px;bottom:7px;height:4px;border-radius:2px;background:#000;box-shadow:0 1px 0 #2b2826}
.tk-w{margin:-6px 16px 0;filter:drop-shadow(0 16px 20px rgba(0,0,0,.4));position:relative;z-index:1}
.tk{background:#FAFAF7;padding:22px 22px 26px;font-family:var(--f-tick);color:var(--ink);font-size:.9rem;-webkit-mask:radial-gradient(circle at 50% 100%,#0000 5px,#000 5.5px) bottom/14px 100% repeat-x;mask:radial-gradient(circle at 50% 100%,#0000 5px,#000 5.5px) bottom/14px 100% repeat-x}
.tk-cab{text-align:center;padding-bottom:12px;border-bottom:2px dashed #BEC1B8}
.tk-cab .marca{font-family:var(--f-head);font-size:1.3rem;justify-content:center}
.tk-cab p{font-size:.78rem;color:var(--ink-2);margin-top:4px}
.tk-l{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:7px 0;align-items:baseline}
.tk-l dt{color:var(--ink-2)}
.tk-l dd{margin:0;text-align:right;font-weight:700;overflow-wrap:anywhere}
.tk-l dd.vazio{color:#A6A99F;font-weight:400;letter-spacing:.1em}
.tk dl{margin:10px 0 0}
.tk-hora{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0 10px;margin-top:6px;border-top:2px dashed #BEC1B8;border-bottom:2px dashed #BEC1B8}
.tk-hora span{color:var(--ink-2)}
.tk-hora b{font-size:2.2rem;line-height:1;font-variant-numeric:tabular-nums}
.tk-pe{margin-top:12px;font-size:.78rem;color:var(--ink-2);line-height:1.45}
.tk-res{display:none;margin-top:12px;background:var(--ink);color:#fff;text-align:center;padding:10px 8px;font-weight:700;letter-spacing:.06em}
.tk.ok .tk-res{display:block}
.js .tk-l dd.imprime{animation:imprime .42s steps(8,end)}
@keyframes imprime{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
.js .tk-w.saiu{animation:sai 1.1s var(--ease)}
@keyframes sai{0%{transform:translateY(-38%);clip-path:inset(38% 0 0 0)}100%{transform:none;clip-path:inset(0 0 0 0)}}

.dados{margin-top:26px;display:grid;gap:14px}
.campo{display:grid;gap:6px}
.campo label{font-weight:650;font-size:.95rem}
.campo label small{font-weight:400;color:var(--wall-ink)}
.campo input{min-height:48px;padding:10px 14px;border-radius:6px;border:2px solid transparent;background:#fff;color:var(--ink);font-size:1rem}
.campo input::placeholder{color:#6E717A}
.campo input:focus{outline:none;border-color:var(--sun)}
.campo .err{display:none;color:#fff;background:#B3261E;font-size:.85rem;font-weight:600;padding:4px 8px;border-radius:4px;justify-self:start}
.campo.bad .err{display:block}
.campo.bad input{border-color:#FF8A80}
.dados .btn{width:100%;min-height:54px;font-size:1.05rem}
.aviso{font-size:.88rem;color:var(--wall-ink)}
.feito{display:none;background:var(--paper);color:var(--ink);border-radius:8px;padding:18px 18px 20px}
.feito h2{font-weight:800;font-stretch:112%;font-size:1.4rem}
.feito p{margin-top:6px;color:var(--ink-2)}
.feito button{margin-top:14px}
form.ok .feito{display:block}
.campos{display:grid;gap:14px}
form.ok .campos{display:none}
.imp{scroll-margin-top:16px}
@media (min-width:1020px){.imp{position:sticky;top:96px}}

/* ===== rodapé ===== */
.rod{background:var(--panel);color:#D7D1CA;padding:clamp(44px,6vw,72px) 0 120px;font-size:.95rem}
.rod-g{display:grid;gap:28px}
.rod .marca{color:#fff;font-size:1.6rem}
.rod h3{color:#fff;font-size:1rem;font-weight:700;margin-bottom:8px}
.rod ul{display:grid;gap:4px}
.rod a{color:#fff}
.rod-tag{margin-top:12px;max-width:34ch}
@media (min-width:860px){.rod-g{grid-template-columns:1.5fr 1fr 1fr 1fr}.rod{padding-bottom:72px}}
.fine{margin-top:36px;padding-top:20px;border-top:1px solid var(--panel-line);display:grid;gap:10px;font-size:.8rem;color:#A9A29B;line-height:1.5}
.fine a{color:#D7D1CA}

/* barra de ação no celular */
.acao{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--panel-line)}
.acao .btn{flex:1;min-height:46px}
.acao .btn.ghost{flex:.8}
@media (min-width:760px){.acao{display:none}}

/* selo AvA (obrigatório) */
.ava{position:fixed;right:14px;bottom:14px;z-index:90;display:inline-flex;align-items:center;gap:8px;font:600 11px/1 system-ui,sans-serif;color:#fff;background:rgba(15,15,18,.82);padding:7px 12px 7px 7px;border-radius:999px;pointer-events:none}
.ava b{background:#fff;color:#111;border-radius:999px;padding:4px 8px}
@media (max-width:759px){.tem-acao .ava{bottom:82px}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}
