/* FISHTEX v6 — Expert palette & layout */
:root{
  --c-primary:#046E8F;
  --c-support:#6EB6D9;
  --c-accent:#8C9440;
  --c-ink:#1E1E1E;
  --c-muted:#5A5F63;
  --c-line:#E6E9EC;
  --c-bg:#FAFAFA;

  --radius-1:10px; --radius-2:14px; --radius-3:20px;
  --sh-1:0 8px 24px rgba(0,0,0,.06);
  --sh-2:0 20px 40px rgba(0,0,0,.08);

  --container:1200px;
  --s-1:.5rem; --s-2:.75rem; --s-3:1rem; --s-4:1.5rem; --s-5:2rem; --s-6:3rem; --s-7:4rem;
  --step--1:clamp(.95rem, .8rem + .2vw, 1rem);
  --step-0:clamp(1rem, .86rem + .5vw, 1.125rem);
  --step-1:clamp(1.25rem, 1.05rem + .8vw, 1.5rem);
  --step-2:clamp(1.75rem, 1.35rem + 1.8vw, 2.25rem);
  --step-3:clamp(2.25rem, 1.8rem + 2.6vw, 3rem);
}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial;color:var(--c-ink);background:var(--c-bg);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;display:block}
a{color:var(--c-primary);text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--s-3)}
.section{padding-block:var(--s-7)}
h1,h2,h3{margin:0 0 var(--s-3);font-weight:700}
.h1{font-size:var(--step-3);line-height:1.12;letter-spacing:-.01em}
.h2{font-size:var(--step-2)}
.lead{font-size:var(--step-1);color:var(--c-muted)}
.muted{color:var(--c-muted)}

/* Header */
.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:saturate(150%) blur(8px);border-bottom:1px solid var(--c-line)}
.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:var(--s-2)} .brand .name{font-weight:800;letter-spacing:.06em}
.nav{display:flex;align-items:center;gap:var(--s-4)}
.nav a{color:var(--c-ink);font-weight:600;position:relative;text-decoration:none}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:transparent;transform:scaleX(0);transition:.2s}
.nav a:hover::after,.nav a[aria-current="page"]::after{background:var(--c-primary);transform:scaleX(1)}
.nav-cta{display:none}
.nav-toggle{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--c-line);background:#fff}
.nav-toggle div{width:18px;height:2px;background:var(--c-ink);box-shadow:0 6px 0 var(--c-ink),0 -6px 0 var(--c-ink)}
@media(min-width:960px){.nav-cta{display:inline-flex}.nav-toggle{display:none}}
.mobile{display:none;border-top:1px solid var(--c-line);background:#fff}
.mobile a{display:block;padding:.9rem 1rem;color:var(--c-ink)} .mobile a:hover{background:#F4F7FA}

/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.85rem 1.25rem;border-radius:var(--radius-2);background:var(--c-primary);color:#fff;border:1px solid transparent;font-weight:700;letter-spacing:.01em;box-shadow:var(--sh-1);transition:transform .12s,filter .2s,box-shadow .3s}
.button:hover{transform:translateY(-1px);filter:brightness(.98)}
.button--ghost{background:#fff;color:var(--c-ink);border-color:var(--c-line)}
.button--accent{background:var(--c-accent);color:#111}

/* Hero */
.hero{background:linear-gradient(180deg,var(--c-support) 0%,#FFFFFF 70%)}
.hero-grid{display:grid;gap:var(--s-6);align-items:center}
@media(min-width:980px){.hero-grid{grid-template-columns:1.05fr .95fr}}
.hero-media{position:relative}
.hero-media img{border-radius:var(--radius-3);box-shadow:var(--sh-2)}
.hero-badge{position:absolute;left:-10px;bottom:-10px;background:#fff;border:1px solid var(--c-line);border-radius:14px;padding:.55rem .9rem;font-weight:700;box-shadow:var(--sh-1)}
.kicker{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:var(--c-accent);color:#101;font-weight:800;letter-spacing:.04em}

/* Cards */
.grid-3{display:grid;gap:var(--s-4)} @media(min-width:860px){.grid-3{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius-2);padding:var(--s-4);box-shadow:var(--sh-1)}
.card .meta{color:var(--c-muted);font-size:var(--step--1)}

/* Products grid */
.products{display:grid;gap:var(--s-4)} @media(min-width:760px){.products{grid-template-columns:repeat(3,1fr)}}
.product img{border-radius:var(--radius-2);aspect-ratio:4/3;object-fit:cover;margin-bottom:.75rem}

/* Search */
.search{position:relative;max-width:440px}
.search input{width:100%;padding:.7rem 2.4rem .7rem .9rem;border-radius:14px;border:1px solid var(--c-line);background:#fff;outline:none}
.search input:focus{box-shadow:0 0 0 4px rgba(4,110,143,.18)}
.search svg{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#9aa3ab}

/* Lists & quotes */
.list{margin:0;padding-left:1.2rem} .list li{margin:.32rem 0;color:var(--c-muted)}
.quote{background:#EFF6FA;border-left:4px solid var(--c-primary);padding:var(--s-3);border-radius:10px}

/* Forms */
.form{display:grid;gap:var(--s-3);max-width:560px}
.form label{font-weight:700}
.form input,.form textarea{width:100%;padding:.7rem .9rem;border-radius:12px;border:1px solid var(--c-line);outline:none;background:#fff}
.form input:focus,.form textarea:focus{box-shadow:0 0 0 4px rgba(4,110,143,.18)}

/* Footer */
/* Footer Moderno */
.site-footer {
  background: #023047;
  color: #f1f1f1;
  padding: 3rem 1rem 1rem;
}
.footer-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 2.5rem;
  margin-bottom: 2rem;
}
.footer-col h4 {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #8ecae6;
}
.footer-col p, 
.footer-col a {
  font-size: 0.95rem;
  color: #f1f1f1;
}
.footer-col a:hover {
  color: #ffb703;
  transition: color 0.3s ease;
}
.footer-map iframe {
  width: 100%;
  border: none;
}
.footer-bottom {
  text-align: center;
  font-size: 0.9rem;
  border-top: 1px solid rgba(255,255,255,0.2);
  padding-top: 1rem;
  color: #adb5bd;
}

.contato-grid {
  display: grid;
  gap: var(--s-5);
  grid-template-columns: 1fr;
  align-items: start;
}

@media (min-width: 900px) {
  .contato-grid {
    grid-template-columns: 1fr 1fr; /* formulário | infos+mapa lado a lado */
  }
}

.contato-grid form {
  background: #fff;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.contato-grid .card {
  background: #fff;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* WhatsApp FAB */
.fab{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:var(--sh-2);z-index:90}
.fab::after{content:"";position:absolute;inset:0;border-radius:50%;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.45)}70%{box-shadow:0 0 0 26px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

/* Accessibility */
:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(4,110,143,.35)}
@media (prefers-reduced-motion: reduce){.fab::after{animation:none}}
