/* MENDSUL Radiocomunicação — estilos do site one-page */

:root{
  --ocean-900:#0A2A34; --ocean-800:#08384A; --ocean-700:#0B5B73; --ocean-500:#1B8DA6;
  --ocean-200:#B8D6DE; --ocean-100:#DFEFF3; --lagoa-300:#6FD3D8;
  --coral-500:#FF6B5B; --coral-600:#F05444; --coral-700:#C93D2F; --sol-400:#FBC85B;
  --mata-600:#1F9D55; --mata-700:#18834A;
  --areia-50:#FAF7F1; --areia-100:#F2EDE2; --areia-300:#DCD3C0;
  --cinza-500:#6B7A82; --cinza-600:#56646B; --branco:#FFFFFF;
  --font-display:'Bricolage Grotesque',sans-serif;
  --font-body:'IBM Plex Sans',sans-serif;
  --font-mono:'IBM Plex Mono',monospace;
  --shadow-sm:0 1px 2px rgba(10,42,52,.06);
  --shadow-md:0 6px 16px -4px rgba(10,42,52,.10),0 2px 4px rgba(10,42,52,.06);
  --shadow-lg:0 24px 48px -16px rgba(10,42,52,.18);

  --raio-card:12px; --raio-botao:8px; --raio-pill:999px;
  --transicao:220ms cubic-bezier(.2,.8,.2,1);
  --altura-header:76px;
  --fundo-vitrine:#F1F0F0;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--altura-header) + 16px)}
body{
  margin:0;background:var(--areia-50);color:var(--ocean-900);
  font-family:var(--font-body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--font-display);font-weight:700;margin:0}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
button{font:inherit;color:inherit;cursor:pointer}
.mono{font-family:var(--font-mono)}

a{color:var(--ocean-700);text-decoration:none;transition:color var(--transicao)}
a:hover{text-decoration:underline;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--ocean-500);outline-offset:2px;border-radius:4px}

.container{max-width:1200px;margin:0 auto;padding:0 24px}

.pular{position:absolute;left:16px;top:-60px;z-index:100;background:var(--branco);padding:8px 16px;border-radius:var(--raio-botao)}
.pular:focus{top:16px}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:1ms!important}
}

/* ---------- Tipografia de seção ---------- */
.eyebrow{
  font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;
  color:var(--ocean-700);margin-bottom:12px;
}
.titulo-secao{font-size:40px;line-height:1.1;letter-spacing:-0.02em;margin-bottom:20px}
.texto-grande{font-size:18px;color:var(--cinza-600);margin-bottom:16px}
.texto-grande strong{color:var(--ocean-900);font-weight:600}
.link-seta{font-weight:600}

@media (max-width:640px){
  .titulo-secao{font-size:32px}
}

/* ---------- Botões ---------- */
.botao{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:12px 22px;border-radius:var(--raio-botao);
  border:1px solid transparent;font-weight:600;font-size:15px;line-height:1.2;
  text-decoration:none;white-space:nowrap;
  transition:background-color var(--transicao),border-color var(--transicao),color var(--transicao);
}
.botao:hover{text-decoration:none}
.botao--coral{background:var(--coral-500);color:var(--ocean-900)}
.botao--coral:hover{background:var(--coral-600);color:var(--ocean-900)}
.botao--contorno{border-color:rgba(255,255,255,.3);color:var(--branco)}
.botao--contorno:hover{border-color:var(--branco);color:var(--branco)}
.botao--oceano{background:var(--ocean-900);color:var(--branco)}
.botao--oceano:hover{background:var(--ocean-800);color:var(--branco)}

/* ---------- Placeholders de imagem ---------- */
.ph{
  position:relative;display:flex;align-items:flex-end;overflow:hidden;
  background:repeating-linear-gradient(135deg,var(--areia-100) 0 12px,var(--areia-300) 12px 13px);
  border-radius:var(--raio-card);
}
.ph--escuro{background:repeating-linear-gradient(135deg,var(--ocean-800) 0 12px,var(--ocean-700) 12px 13px)}
.ph__legenda{
  margin:12px;padding:4px 8px;border-radius:4px;
  background:rgba(250,247,241,.85);color:var(--cinza-600);
  font-family:var(--font-mono);font-size:12px;
}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph.tem-imagem .ph__legenda{display:none}

/* ---------- Header ---------- */
.header{
  position:sticky;top:0;z-index:50;background:var(--branco);
  border-bottom:1px solid var(--areia-100);
}
.header__in{display:flex;align-items:center;gap:24px;height:var(--altura-header)}

.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ocean-900)}
.logo:hover{text-decoration:none}
.logo__img{height:48px;width:auto;flex:none}
@media (max-width:460px){.logo__img{height:40px}}

.nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.nav__lista{display:flex;align-items:center;gap:4px}
.nav__link{
  display:inline-flex;align-items:center;gap:4px;padding:10px 12px;
  background:none;border:0;border-radius:var(--raio-botao);
  color:var(--ocean-900);font-weight:500;font-size:15px;
}
.nav__link:hover{color:var(--ocean-700);text-decoration:none}

.menu-botao{
  display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--areia-300);
  border-radius:var(--raio-botao);background:var(--branco);
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.menu-botao span{width:20px;height:2px;background:var(--ocean-900);transition:transform var(--transicao),opacity var(--transicao)}
.menu-botao[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-botao[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-botao[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:1024px){
  .menu-botao{display:inline-flex}
  .nav{
    position:absolute;top:100%;left:0;right:0;margin:0;
    flex-direction:column;align-items:stretch;gap:16px;
    padding:16px 24px 24px;background:var(--branco);
    border-bottom:1px solid var(--areia-100);box-shadow:var(--shadow-md);
    max-height:calc(100vh - var(--altura-header));overflow-y:auto;
  }
  .nav:not(.is-aberto){display:none}
  .nav__lista{flex-direction:column;align-items:stretch}
  .nav__link{width:100%;justify-content:space-between;padding:12px 0;font-size:16px}
  .nav__cta{width:100%}
}

/* ---------- Hero ---------- */
/* Fundo do hero = mesmo cinza-claro das imagens da vitrine, para a troca se misturar ao fundo */
.hero{background:var(--fundo-vitrine);color:var(--ocean-900);padding:40px 0 48px}
.hero .botao--contorno{border-color:rgba(10,42,52,.3);color:var(--ocean-900)}
.hero .botao--contorno:hover{border-color:var(--ocean-900);color:var(--ocean-900)}
.hero__grade{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.hero__titulo{
  font-size:clamp(40px,5.4vw,64px);line-height:1.02;letter-spacing:-0.02em;
  font-stretch:90%;font-variation-settings:"wdth" 90;margin-bottom:20px;
}
.hero__lead{font-size:18px;color:var(--cinza-600);max-width:34em;margin-bottom:24px}
.hero__botoes{display:flex;gap:12px;flex-wrap:wrap}
/* Vitrine de produtos (fundo claro igual ao dos cartazes) */
.hero__vitrine{position:relative;aspect-ratio:5/4;width:100%;border-radius:16px;overflow:hidden;background:var(--fundo-vitrine)}
.hero__produto{
  position:absolute;inset:0;display:block;
  opacity:0;visibility:hidden;transition:opacity 700ms cubic-bezier(.2,.8,.2,1),visibility 700ms;
}
.hero__produto.is-ativo{opacity:1;visibility:visible}
.hero__produto img{width:100%;height:100%;object-fit:cover}
.hero__produto-nome{
  position:absolute;left:16px;bottom:16px;padding:8px 14px;border-radius:var(--raio-pill);
  background:var(--ocean-900);color:var(--branco);font-size:14px;font-weight:600;
}
.hero__produto:hover{text-decoration:none}

@media (max-width:860px){
  .hero{padding:24px 0 32px}
  .hero__grade{grid-template-columns:1fr;gap:24px}
  .hero__vitrine{order:-1}
}

/* ---------- Seções ---------- */
.secao{padding:56px 0}
.secao--branca{background:var(--branco)}
@media (max-width:640px){.secao{padding:40px 0}}

.duas-colunas{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.quem__foto{aspect-ratio:4/3;width:100%}
@media (max-width:860px){.duas-colunas{grid-template-columns:1fr;gap:24px}}

.grade{display:grid;gap:24px}
.grade--solucoes{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:20px}

/* Soluções */
.solucao{
  display:flex;flex-direction:column;
  background:var(--branco);border:1px solid var(--areia-100);border-radius:var(--raio-card);
  overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--transicao);
}
.solucao:hover{box-shadow:var(--shadow-md)}
/* cartaz A1 inteiro (proporção 640×906) */
.solucao__img{display:block;aspect-ratio:640/906;background:var(--areia-100);border-bottom:1px solid var(--areia-100)}
.solucao__img img{width:100%;height:100%;object-fit:cover}
.solucao__corpo{display:flex;flex-direction:column;flex:1;padding:20px}
.solucao h3{font-size:20px;line-height:1.2;letter-spacing:-0.01em;margin-bottom:8px}
.solucao p{color:var(--cinza-600);font-size:15px;margin-bottom:16px}
.solucao .link-seta{margin-top:auto}

/* Faixa CTA */
.secao--cta{padding:0 0 56px;background:var(--branco)}
.cta{
  display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;
  padding:40px;border-radius:24px;background:linear-gradient(180deg,#FF6B5B,#FBC85B);
}
.cta .titulo-secao{margin-bottom:12px}
.cta .texto-grande{color:var(--ocean-900);margin:0;max-width:32em}
.cta__botoes{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:640px){.cta{padding:28px 20px}.secao--cta{padding-bottom:40px}}

/* ---------- Footer ---------- */
/* em telas até 1340px, reserva à direita a coluna dos botões flutuantes para não cobrirem o rodapé */
.footer{background:var(--ocean-900);color:var(--ocean-200);padding:48px 0;font-size:15px}
@media (max-width:1340px){.footer .container{padding-right:96px}}
/* logo à esquerda; Contato e Menu encostados à direita (no celular, empilham) */
.footer__colunas{display:flex;flex-wrap:wrap;align-items:flex-start;gap:28px 64px}
.footer__colunas > :first-child{margin-right:auto}
.footer__desc{margin-top:16px;max-width:22em}
.footer__titulo{font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--branco);margin-bottom:16px}
.footer li + li{margin-top:8px}
.footer a{color:var(--ocean-200)}
.footer a:hover{color:var(--branco)}
.footer__base{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:32px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;
}

/* ---------- Botões flutuantes (Instagram e WhatsApp) ---------- */
.flutuante{
  position:fixed;right:24px;bottom:24px;z-index:60;
  display:flex;flex-direction:column;gap:12px;
}
.flutuante__botao{
  width:56px;height:56px;border-radius:50%;
  display:grid;place-items:center;color:var(--branco);
  box-shadow:var(--shadow-lg);transition:background-color var(--transicao);
}
.flutuante__botao:hover{color:var(--branco);text-decoration:none}
.flutuante__botao svg{width:28px;height:28px;fill:currentColor}
/* cores das próprias marcas */
.flutuante__botao--instagram{background:#D62976}
.flutuante__botao--instagram:hover{background:#B81F63}
.flutuante__botao--whatsapp{background:#25D366}
.flutuante__botao--whatsapp:hover{background:#1DA851}
@media (max-width:460px){
  .flutuante{right:16px;bottom:16px;gap:10px}
  .flutuante__botao{width:52px;height:52px}
}
