:root{
  --tinta:#0e2433; --tinta-2:#17384d; --nevoa:#e9eef0; --branco:#fff;
  --sinal:#d8402f; --azul:#2a6f97; --texto:#13222c;
  --f-display:"Bricolage Grotesque","Arial Black",Arial,sans-serif;
  --f-corpo:"DM Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:4.5rem}
body{font-family:var(--f-corpo);color:var(--texto);background:var(--nevoa);line-height:1.6;font-size:1.0625rem}
a{color:inherit}
:focus-visible{outline:3px solid var(--sinal);outline-offset:3px}

.topo{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:.8rem clamp(1rem,4vw,3rem);background:var(--tinta);color:var(--branco)}
.logo{font-family:var(--f-display);font-weight:800;font-size:1.5rem;text-decoration:none;letter-spacing:-.02em}
.menu{display:flex;align-items:center;gap:1.5rem}
.menu a{text-decoration:none;font-weight:500}
.menu a:not(.btn):hover{text-decoration:underline;text-underline-offset:6px}
.menu-btn{display:none;background:none;border:1px solid #ffffff66;color:inherit;padding:.4rem .9rem;border-radius:99px;font:inherit;cursor:pointer}

.btn{display:inline-block;background:var(--sinal);color:var(--branco);padding:.85rem 1.5rem;border-radius:.4rem;font-weight:500;text-decoration:none;border:2px solid var(--sinal);transition:background .2s}
.btn:hover{background:#b9301f;border-color:#b9301f}
.btn-sm{padding:.45rem 1.1rem}
.btn-claro{background:transparent;border-color:#ffffff88}
.btn-claro:hover{background:#ffffff1f;border-color:#fff}
.btn-escuro{background:var(--tinta);border-color:var(--tinta)}
.btn-escuro:hover{background:var(--tinta-2);border-color:var(--tinta-2)}

.hero{position:relative;display:grid;grid-template-columns:auto 1fr;gap:clamp(1.2rem,5vw,4rem);align-items:stretch;min-height:78vh;padding:clamp(2rem,6vw,5rem) clamp(1rem,4vw,3rem);background:var(--tinta);color:var(--branco)}
.poste{width:clamp(34px,7vw,76px);border-radius:99px;border:3px solid var(--branco);background:repeating-linear-gradient(-45deg,var(--sinal) 0 22px,var(--branco) 22px 44px,var(--azul) 44px 66px,var(--branco) 66px 88px);background-size:100% 124px;animation:gira 2.4s linear infinite}
@keyframes gira{to{background-position:0 124px}}
.hero-txt{align-self:center;max-width:44rem}
.status{display:inline-block;font-weight:500;padding:.3rem .9rem;border-radius:99px;background:#ffffff1a;margin-bottom:1.2rem}
.status.aberto::before,.status.fechado::before{content:"";display:inline-block;width:.6rem;height:.6rem;border-radius:50%;margin-right:.5rem}
.status.aberto::before{background:#4ade80}
.status.fechado::before{background:var(--sinal)}
h1{font-family:var(--f-display);font-weight:800;font-size:clamp(3rem,10vw,7rem);line-height:.95;letter-spacing:-.035em}
.sub{margin:1.4rem 0 2rem;font-size:1.2rem;max-width:34rem;color:#d3e0e8}
.acoes{display:flex;flex-wrap:wrap;gap:.8rem}

.secao{padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);max-width:70rem;margin:0 auto}
.secao.escura{max-width:none;background:var(--tinta-2);color:var(--branco)}
.secao.escura>*{max-width:44rem;margin-inline:auto}
h2{font-family:var(--f-display);font-weight:800;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.025em;line-height:1.05;margin-bottom:1rem}
.intro{margin-bottom:2rem;color:#4b5d68}

.servicos{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:0 2.5rem}
.servicos a{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:2px solid #0e243322;text-decoration:none;font-family:var(--f-display);font-weight:500;font-size:1.3rem;transition:padding .2s,color .2s}
.servicos a::after{content:"+";color:var(--sinal);font-weight:800}
.servicos a:hover{padding-left:.6rem;color:var(--sinal)}

.horas{list-style:none;padding:0;margin-top:1.5rem}
.horas li{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #ffffff2b}
.horas li.hoje{font-weight:500;color:#fff;background:#ffffff14;padding-inline:.8rem;border-radius:.3rem;border-bottom-color:transparent}
.horas li.fechado-dia{color:#ffffff99}

address{font-style:normal;font-size:1.3rem;margin-bottom:1rem}
.tel{font-family:var(--f-display);font-weight:800;font-size:1.8rem;text-decoration:none;display:inline-block;margin-bottom:1.5rem}

.rodape{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:1.5rem clamp(1rem,4vw,3rem);background:var(--tinta);color:#c4d3dc;font-size:.95rem}
.flutuante{position:fixed;right:1rem;bottom:1rem;z-index:30;background:#1fa855;color:#fff;padding:.8rem 1.2rem;border-radius:99px;font-weight:500;text-decoration:none;box-shadow:0 4px 14px #0004}

@media (max-width:720px){
  .menu-btn{display:block}
  .menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;padding:1rem clamp(1rem,4vw,3rem) 1.5rem;background:var(--tinta);gap:1rem}
  .menu.aberto{display:flex}
  .hero{min-height:70vh}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .poste{animation:none}
  *{transition:none!important}
}
