/* Estilo do site da loja. Tema da barbearia por padrão; data-linha="blz" no html troca para o salão. */
@font-face{font-family:"Instrument Sans";src:url(fontes/InstrumentSans-var.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fontes/InstrumentSerif-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fontes/InstrumentSerif-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Aileron";src:url(fontes/Aileron-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Aileron";src:url(fontes/Aileron-Bold.woff2) format("woff2");font-weight:700;font-display:swap}

:root{--lado:clamp(20px,5.5vw,80px);--max:1120px;--r:20px;--r-p:12px;--barra:44px}
html[data-linha="barber"]{
  --bg:#F4F4F1;--ink:#0B0B0B;--panel:#E5E5E0;--card:#FFFFFF;--mut:#565654;--line:#BDBDB8;
  --acc:#0B0B0B;--acc-ink:#F4F4F1;--dark:#0B0B0B;--dark-ink:#F4F4F1;
  --f-tit:"Instrument Sans","Aileron","Segoe UI",Arial,sans-serif;--tit-w:700;--tit-ls:-.035em;--tit-it:normal;
}
html[data-linha="blz"]{
  --bg:#F3ECE1;--ink:#2B1E18;--panel:#E8DCCB;--card:#FBF7F0;--mut:#6B5A4E;--line:#DDD0BD;
  --acc:#B4532F;--acc-ink:#FBF7F0;--dark:#2B1E18;--dark-ink:#F3ECE1;
  --f-tit:"Instrument Serif",Georgia,"Times New Roman",serif;--tit-w:400;--tit-ls:-.01em;--tit-it:italic;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 "Aileron","Segoe UI",Roboto,Arial,sans-serif}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--f-tit);font-weight:var(--tit-w);letter-spacing:var(--tit-ls);line-height:1.06;margin:0 0 .5em}
h1{font-size:clamp(40px,7vw,84px)}
h2{font-size:clamp(30px,4.4vw,52px)}
h3{font-size:clamp(21px,2.2vw,26px);line-height:1.15}
html[data-linha="blz"] h1 em,html[data-linha="blz"] h2 em{font-style:italic;color:var(--acc)}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--lado)}
.sec{padding:clamp(56px,8vw,112px) 0}
.mut{color:var(--mut)}
.peq{font-size:14px}
.rot{font:700 12px/1 "Aileron",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:18px;display:block}


/* cabeçalho do site */
.topo{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px var(--lado);max-width:calc(var(--max) + 2*var(--lado));margin:0 auto}
.marca{font:700 22px/1 "Instrument Sans",sans-serif;letter-spacing:-.03em;text-decoration:none}
.marca small{font:400 13px/1 "Aileron",sans-serif;letter-spacing:0;color:var(--mut);margin-left:8px}
.topo nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.topo nav a{text-decoration:none;font-size:15px}
.topo nav a:hover{text-decoration:underline}

/* botões */
.btn{display:inline-block;background:var(--acc);color:var(--acc-ink);border:0;border-radius:99px;padding:15px 28px;font:700 16px/1 "Aileron",sans-serif;text-decoration:none;cursor:pointer}
.btn:hover{filter:brightness(1.12)}
.btn.sec2{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.btn.peq{padding:10px 18px;font-size:14px}
.btn[disabled]{opacity:.45;cursor:not-allowed}

/* blocos */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(20px,2.4vw,32px)}
.card.esc{background:var(--dark);color:var(--dark-ink);border-color:var(--dark)}
.card.esc .mut{color:inherit;opacity:.72}
.card .selo{display:inline-block;font:700 11px/1 "Aileron",sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:99px;margin-bottom:16px}
.selo.ok{background:var(--acc);color:var(--acc-ink)}
.selo.obra{background:transparent;border:1.5px dashed currentColor}
.preco{font:700 clamp(40px,5vw,60px)/1 "Instrument Sans",sans-serif;letter-spacing:-.04em}
.lista{padding-left:1.1em;margin:0 0 1em}
.lista li{margin:.35em 0}
.faixa{background:var(--dark);color:var(--dark-ink)}
.faixa .mut{color:inherit;opacity:.7}

/* formulários */
label{display:block;font:700 14px/1.3 "Aileron",sans-serif;margin:16px 0 6px}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:400 17px/1.3 "Aileron",sans-serif;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-p);background:var(--card);color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--acc);outline-offset:1px}
.chk{display:flex;gap:10px;align-items:flex-start;font:400 14px/1.4 "Aileron",sans-serif;margin:14px 0}
.chk input{margin-top:3px;width:18px;height:18px;flex:none}
.erro{color:#a1301b;font-size:14px;margin-top:6px;min-height:1em}

.tabela{width:100%;border-collapse:collapse;font-size:15px}
.tabela th,.tabela td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.tabela th{font:700 12px/1 "Aileron",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}

/* rodapé */
.rodape{background:var(--dark);color:var(--dark-ink);padding:44px var(--lado);margin-top:60px}
.rodape .wrap{padding:0;display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}
.rodape a{opacity:.85}
.rodape h4{font:700 12px/1 "Aileron",sans-serif;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;opacity:.7}
.rodape ul{list-style:none;margin:0;padding:0}
.rodape li{margin:8px 0;font-size:15px}
.legal{opacity:.7;font-size:13px;margin-top:22px}

/* modal */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:60}
.modal.on{display:flex}
.modal .caixa{background:var(--bg);color:var(--ink);border-radius:var(--r);max-width:560px;width:100%;padding:28px;max-height:88vh;overflow:auto}

@media (max-width:820px){
  .grid3,.grid2,.rodape .wrap{grid-template-columns:1fr}
  .topo nav{gap:14px}
  .topo nav a{font-size:14px}
}

/* classes de apoio (o site não usa estilo em linha, por causa do CSP) */
.estreito{max-width:640px}.medio{max-width:760px}.largo{max-width:820px}
.sec.topo-sec{padding-top:clamp(24px,4vw,56px)}
.t-form{font-size:clamp(32px,4.4vw,52px)}
.t-ok{font-size:clamp(34px,5vw,60px)}
.grande{font-size:19px}
.mt{margin-top:14px}.mt2{margin-top:24px}
.lado{align-items:start;gap:clamp(24px,5vw,64px)}
.fixo{position:sticky;top:20px}
.total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:18px}
.acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
[hidden]{display:none !important}
.aviso{border:1.5px solid var(--line);background:var(--card);border-radius:12px;padding:12px 14px;font-size:14px;margin:18px 0}
.erro-campo{color:#a1301b;font-size:14px;margin-top:6px;min-height:1em}
.ok-msg{color:var(--ink);font-size:15px;margin-top:6px}
input[type=password]{width:100%;font:400 17px/1.3 "Aileron",sans-serif;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-p);background:var(--card);color:var(--ink)}
input[type=password]:focus{outline:2px solid var(--acc);outline-offset:1px}
.linkbtn{all:unset;cursor:pointer;text-decoration:underline;font-size:15px}
.confirma{margin-top:14px;padding:16px;border:1.5px solid var(--ink);border-radius:var(--r-p);background:var(--card)}
.itens h3 .qtd{font-size:14px;color:var(--mut)}
