@font-face{font-family:"Red Hat Display";src:url("fonts/RedHatDisplay-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Red Hat Display";src:url("fonts/RedHatDisplay-SemiBold.ttf") format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"Red Hat Display";src:url("fonts/RedHatDisplay-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
:root{
  /* Paleta da identidade visual 7Flow */
  --escuro:#002B5E;--escuro2:#0B3A72;--azul:#3177A6;--verde:#60B34F;
  --texto:#13233A;--suave:#4a5a6e;--claro:#EAF0F6;--borda:#d3dde8;
  --ambar:#F5D139;--ambar2:#E8C11F;--h2o:#60B34F;--branco:#fff;--zap:#1f7a4d
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Red Hat Display",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--texto);background:var(--branco);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ambar);outline-offset:2px}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.pular{position:absolute;left:-9999px}
.pular:focus{left:16px;top:8px;background:#fff;padding:8px 12px;z-index:20}

/* Cabeçalho */
header{background:var(--escuro);color:var(--branco);position:sticky;top:0;z-index:10}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
header{border-bottom:4px solid;border-image:linear-gradient(90deg,var(--ambar),var(--verde),var(--azul)) 1}
.logo{display:flex;align-items:center;text-decoration:none;font-weight:700;font-size:22px;letter-spacing:.3px}
.logo img{height:52px;width:auto;display:block}
.logo span{color:var(--ambar)}
nav{display:flex;gap:22px;align-items:center}
nav a{text-decoration:none;font-size:15px}
nav a:not(.btn):hover{color:var(--ambar)}

/* Botões */
.btn{display:inline-block;background:var(--ambar);color:var(--texto);font-weight:600;text-decoration:none;padding:12px 22px;border-radius:6px;border:2px solid var(--ambar);font-size:16px;line-height:1.2;cursor:pointer}
.btn:hover{background:var(--ambar2);border-color:var(--ambar2)}
.btn.contorno{background:transparent;color:var(--branco);border-color:var(--branco)}
.btn.contorno:hover{background:rgba(255,255,255,.1)}

/* Hero: a foto img/hero.jpg é opcional; sem ela fica o degradê */
.hero{color:var(--branco);padding:104px 0 96px;background:
  linear-gradient(rgba(0,43,94,.82),rgba(0,43,94,.82)),
  url("../img/hero.jpg") center/cover no-repeat,
  linear-gradient(135deg,#3177A6,#002B5E 65%)}
.hero h1{font-size:clamp(30px,4.6vw,48px);line-height:1.14;margin:0 0 18px;max-width:800px;letter-spacing:-.5px}
.hero p{max-width:690px;font-size:19px;opacity:.93;margin:0 0 30px}
.acoes{display:flex;gap:12px;flex-wrap:wrap}

/* Seções */
section{padding:76px 0}
section.cinza{background:var(--claro)}
h2{font-size:clamp(26px,3.2vw,34px);line-height:1.2;margin:0 0 12px;letter-spacing:-.3px}
.intro{max-width:700px;margin:0 0 36px;color:var(--suave)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.card{background:var(--branco);border:1px solid var(--borda);border-radius:10px;padding:26px;display:flex;flex-direction:column}
.card svg{width:40px;height:40px;color:var(--escuro);margin-bottom:14px}
.card h3{margin:0 0 8px;font-size:19px;line-height:1.3}
.card p{margin:0 0 16px;flex:1;font-size:16px;color:var(--suave)}
.card a{font-weight:700;text-decoration:none;color:var(--azul)}
.card a:hover{text-decoration:underline}
.tag{display:inline-block;background:var(--verde);color:var(--escuro);font-size:12px;font-weight:600;border-radius:4px;padding:2px 8px;margin-bottom:8px;width:max-content}

.sobre{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.sobre p{margin:0 0 16px}
.passos{display:grid;gap:22px;margin:0;padding:0;list-style:none;counter-reset:p}
.passos li{counter-increment:p;display:grid;grid-template-columns:40px 1fr;gap:14px}
.passos li::before{content:counter(p);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--escuro);color:var(--ambar);font-weight:700}
.passos strong{display:block}
.passos span{color:var(--suave)}

.setores{display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:0;list-style:none}
.setores li{background:var(--claro);border:1px solid var(--borda);border-radius:999px;padding:10px 20px;font-weight:600}
.marcas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;padding:0;margin:0;list-style:none}
.marcas li{background:var(--branco);border:1px solid var(--borda);border-radius:10px;min-height:96px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;letter-spacing:.3px;color:var(--escuro);text-align:center;padding:12px}

.cta{background:var(--escuro);color:var(--branco);text-align:center}
.cta p{max-width:620px;margin:0 auto 28px;opacity:.92}

/* Contato */
.contato{display:grid;grid-template-columns:1.35fr 1fr;gap:48px}
form{display:grid;gap:14px}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{font-size:14px;font-weight:600;display:grid;gap:5px}
input,select,textarea{font:inherit;font-size:16px;padding:11px 12px;border:1px solid #aab7c1;border-radius:6px;width:100%;background:#fff;color:var(--texto)}
textarea{min-height:120px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:15px}
.check input{width:20px;height:20px;margin-top:3px;flex:none}
.mel{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso{border-radius:8px;padding:14px 16px;margin:0 0 18px;font-weight:600}
.aviso.ok{background:#e3f4ea;color:#14532d}
.aviso.erro{background:#fde8e8;color:#7f1d1d}
.aviso[hidden]{display:none}
.dados dl{margin:0}
.dados dt{font-weight:600;margin-top:16px}
.dados dt:first-child{margin-top:0}
.dados dd{margin:0}
.dados a{text-decoration:none;color:var(--azul);font-weight:600}
.dados a:hover{text-decoration:underline}

/* Rodapé */
.faixa{background:var(--escuro2);color:#d9e2e8;font-size:14px;padding:14px 0}
footer{background:var(--escuro);color:#b7c4cd;font-size:14px;padding:20px 0}
footer .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* Barra fixa no celular */
.barra{display:none}

/* Página de texto (privacidade) */
.texto{max-width:760px;padding:56px 16px 72px;margin:0 auto}
.texto h1{font-size:34px;line-height:1.2;margin:0 0 8px}
.texto h2{font-size:21px;margin:32px 0 8px}
.texto .data{color:var(--suave);margin:0 0 24px}

@media (max-width:820px){
  nav > a:not(.btn){display:none}
  .sobre,.contato{grid-template-columns:1fr;gap:36px}
  section{padding:56px 0}
  .hero{padding:72px 0 64px}
  .barra{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:15;box-shadow:0 -2px 10px rgba(0,0,0,.15)}
  .barra a{text-align:center;padding:15px;font-weight:600;text-decoration:none}
  .barra .z{background:var(--zap);color:#fff}
  .barra .c{background:var(--ambar);color:var(--texto)}
  footer{padding-bottom:76px}
}
@media (max-width:520px){
  .duas{grid-template-columns:1fr}
  header .btn{display:none}
  .logo img{height:40px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.destaque-titulo{font-size:19px;margin:36px 0 14px}
.destaques{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}
.tag2{display:inline-block;color:var(--suave);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}
.glenlock{background:var(--escuro);color:var(--branco)}
.glenlock .tag{background:var(--ambar);color:var(--texto)}
.glen{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.glen p{opacity:.92;margin:0 0 26px}
.lista{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.lista li{background:var(--escuro2);border-left:4px solid var(--ambar);border-radius:6px;padding:14px 18px}
.lista strong{color:var(--ambar)}
@media (max-width:820px){.glen{grid-template-columns:1fr;gap:28px}}
.cards.tres{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.marcas img{max-height:52px;max-width:80%;width:auto;object-fit:contain}
.fotos{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.foto{margin:0;background:var(--branco);border:1px solid var(--borda);border-radius:10px;overflow:hidden}
.foto-img{aspect-ratio:4/3;background:linear-gradient(135deg,#3177A6,#002B5E) center/cover no-repeat;background-size:cover;background-position:center}
.foto figcaption{padding:16px 18px 20px}
.foto strong{display:block;font-size:18px;margin-bottom:4px}
.foto span{color:var(--suave);font-size:15px}
.hero .selo{display:inline-block;background:rgba(245,209,57,.15);border:1px solid var(--ambar);color:var(--ambar);font-weight:700;font-size:14px;letter-spacing:.4px;border-radius:999px;padding:6px 14px;margin:0 0 18px!important}
.marcas{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.glen-foto{display:block;width:100%;border-radius:10px;margin:0 0 24px;aspect-ratio:4/3;object-fit:cover}
@media (min-width:1000px){.card.largo{grid-column:span 2}}
/* Seletor de idioma */
.idiomas{display:flex;gap:2px;font-size:13px;font-weight:700;letter-spacing:.4px}
.idiomas a{padding:5px 7px;border-radius:4px;text-decoration:none;opacity:.78}
.idiomas a:hover{opacity:1;color:var(--ambar)}
.idiomas a[aria-current]{opacity:1;color:var(--ambar);background:rgba(255,255,255,.12)}
/* Selo Hydrasun em "Quem somos" */
.rep{display:flex;align-items:center;gap:18px;margin-top:8px;padding:14px 20px;background:var(--branco);border:1px solid var(--borda);border-left:4px solid var(--ambar);border-radius:8px;width:max-content;max-width:100%}
.rep img{height:44px;width:auto;display:block}
.rep span{font-weight:700;color:var(--escuro);font-size:15px;line-height:1.3}
.marcas img.quadrado{max-height:72px}
.sobre > *{min-width:0}
.rep{flex-wrap:wrap;gap:10px 18px}
@media (max-width:820px){.sobre{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.rep{padding:12px 16px}.rep img{height:36px}}
