/*
Theme Name: Grupo Locavel 2026
Theme URI: https://grupolocavel.com.br/
Author: Grupo Locavel
Description: Tema institucional moderno do Grupo Locavel, integrado ao Canal Corporativo de Denúncias.
Version: 1.2.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: grupo-locavel-2026
*/

:root{
  --locavel-blue:#051569;
  --locavel-blue-2:#102b8c;
  --locavel-blue-3:#173ca8;
  --locavel-yellow:#ffd400;
  --locavel-gold:#e9b949;
  --locavel-ink:#172033;
  --locavel-muted:#667085;
  --locavel-bg:#f5f7fa;
  --locavel-white:#fff;
  --locavel-line:#e7eaf0;
  --locavel-shadow:0 18px 48px rgba(5,21,105,.10);
  --locavel-radius:22px;
  --locavel-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--locavel-ink);background:#fff;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.65
}
img{max-width:100%;height:auto}
a{color:var(--locavel-blue-2);text-decoration:none}
h1,h2,h3,h4{
  font-family:Montserrat,Inter,system-ui,"Segoe UI",Arial,sans-serif;
  line-height:1.14;color:var(--locavel-blue);margin-top:0
}
h1{font-size:clamp(2.4rem,5.6vw,5.1rem);letter-spacing:-.045em}
h2{font-size:clamp(1.8rem,3.5vw,3.15rem);letter-spacing:-.035em}
h3{font-size:1.22rem}
p{margin:0 0 1rem}
.locavel-container{width:min(var(--locavel-container),calc(100% - 40px));margin:auto}
.locavel-skip{position:absolute;left:-9999px;background:#fff;padding:10px;z-index:10000}
.locavel-skip:focus{left:10px;top:10px}

.locavel-header{
  position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);border-bottom:1px solid rgba(5,21,105,.08)
}
.locavel-header-inner{
  min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:22px
}
.locavel-brand img{display:block;width:218px;max-height:77px;object-fit:contain}
.locavel-nav{
  display:flex;align-items:center;justify-content:flex-end;gap:3px;flex-wrap:wrap;
  list-style:none!important;margin:0!important;padding:0!important
}
.locavel-nav li{
  list-style:none!important;margin:0;padding:0
}
.locavel-nav li::marker{
  content:""!important;font-size:0
}
.locavel-nav li::before,
.locavel-nav li::after{
  content:none!important;display:none!important
}
.locavel-nav a{
  font-family:Montserrat,Inter,sans-serif;font-size:.82rem;font-weight:750;color:var(--locavel-ink);
  padding:11px 9px;border-radius:10px;white-space:nowrap
}
.locavel-nav a:hover,.locavel-nav .current-menu-item>a{background:#eef2ff;color:var(--locavel-blue-2)}
.locavel-nav .locavel-menu-report>a,.locavel-report-link{
  background:var(--locavel-blue)!important;color:#fff!important;padding:11px 14px!important
}
.locavel-nav .locavel-menu-portal>a{
  background:var(--locavel-blue-3)!important;color:#fff!important;padding:11px 14px!important
}
.locavel-nav .locavel-menu-intranet>a{
  background:var(--locavel-yellow)!important;color:var(--locavel-blue)!important;padding:11px 14px!important
}
.locavel-menu-toggle{
  display:none;border:0;background:var(--locavel-blue);color:#fff;padding:10px 15px;border-radius:10px;font-weight:800
}

.locavel-hero{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(circle at 78% 18%,rgba(255,212,0,.38),transparent 27%),
    radial-gradient(circle at 92% 88%,rgba(255,255,255,.12),transparent 24%),
    linear-gradient(125deg,#04135f 0%,#08258d 58%,#1538a3 100%)
}
.locavel-hero.has-photo:after{
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,95,.92) 0%,rgba(5,21,105,.78) 48%,rgba(5,21,105,.38) 100%);
  z-index:0
}
.locavel-hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;z-index:0}
.locavel-hero-inner{
  min-height:620px;display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center;
  padding:80px 0;position:relative;z-index:2
}
.locavel-eyebrow{
  display:inline-flex;color:var(--locavel-yellow);font:800 .8rem Montserrat,Inter,sans-serif;
  text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px
}
.locavel-hero h1{color:#fff;margin-bottom:22px}
.locavel-hero-copy{font-size:1.18rem;color:#e6ebff;max-width:720px;margin-bottom:30px}
.locavel-hero-logo{
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);
  border-radius:34px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.20);backdrop-filter:blur(10px)
}
.locavel-hero-logo img{filter:drop-shadow(0 15px 22px rgba(0,0,0,.18))}
.locavel-vehicle-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:24px}
.locavel-vehicle-mini{
  min-height:64px;border-radius:16px;background:rgba(255,255,255,.11);
  border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;
  font:800 .74rem Montserrat,Inter,sans-serif;color:#fff
}

.locavel-actions{display:flex;gap:14px;flex-wrap:wrap}
.locavel-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:12px;
  font:800 .87rem Montserrat,Inter,sans-serif;border:2px solid transparent;cursor:pointer;transition:.18s ease
}
.locavel-btn:hover{transform:translateY(-2px)}
.locavel-btn-yellow{background:var(--locavel-yellow);color:var(--locavel-blue)}
.locavel-btn-blue{background:var(--locavel-blue);color:#fff}
.locavel-btn-outline-white{border-color:rgba(255,255,255,.75);color:#fff;background:transparent}
.locavel-btn-outline{border-color:var(--locavel-blue);color:var(--locavel-blue);background:#fff}

.locavel-section{padding:92px 0}
.locavel-section-alt{background:var(--locavel-bg)}
.locavel-section-head{display:flex;justify-content:space-between;align-items:end;gap:34px;margin-bottom:42px}
.locavel-section-head p{max-width:620px;color:var(--locavel-muted);margin:0}
.locavel-cards-3,.locavel-fleet-grid,.locavel-branch-grid{display:grid;gap:22px}
.locavel-cards-3{grid-template-columns:repeat(3,1fr)}
.locavel-card,.locavel-fleet-card,.locavel-branch-card{
  background:#fff;border:1px solid var(--locavel-line);border-radius:var(--locavel-radius);
  padding:28px;box-shadow:var(--locavel-shadow)
}
.locavel-service-card{position:relative;overflow:hidden;min-height:250px}
.locavel-service-card:after{
  content:"";position:absolute;width:160px;height:160px;border-radius:50%;
  right:-70px;bottom:-70px;background:rgba(255,212,0,.14)
}
.locavel-icon{
  width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,var(--locavel-yellow),#ffe77a);
  display:grid;place-items:center;margin-bottom:22px;color:var(--locavel-blue)
}
.locavel-icon svg{width:31px;height:31px;stroke:currentColor}
.locavel-card-link{font:800 .9rem Montserrat,Inter,sans-serif}

.locavel-fleet-grid{grid-template-columns:repeat(5,1fr)}
.locavel-fleet-card{text-align:center;transition:.2s ease;overflow:hidden}
.locavel-fleet-card:hover{transform:translateY(-5px);border-color:#cad2ef}
.locavel-fleet-image{
  aspect-ratio:4/3;display:grid;place-items:center;margin:-5px -5px 16px;
  border-radius:16px;background:linear-gradient(135deg,#f8f9fc,#eef2ff);overflow:hidden
}
.locavel-fleet-image img{width:100%;height:100%;object-fit:contain}
.locavel-fleet-placeholder{font:900 1rem Montserrat,Inter,sans-serif;color:var(--locavel-blue-2)}
.locavel-fleet-card p{color:var(--locavel-muted);font-size:.92rem}

.locavel-benefits{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.locavel-benefit-panel{
  min-height:440px;border-radius:32px;padding:42px;background:linear-gradient(135deg,var(--locavel-blue),var(--locavel-blue-3));color:#fff
}
.locavel-benefit-panel h2{color:#fff}
.locavel-benefit-panel p{color:#dce4ff}
.locavel-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.locavel-check{
  display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.10);padding:18px;border-radius:16px
}
.locavel-check b{color:var(--locavel-yellow)}
.locavel-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.locavel-stat{padding:28px;border:1px solid var(--locavel-line);border-radius:22px;background:#fff}
.locavel-stat strong{display:block;font:800 1.55rem Montserrat,Inter,sans-serif;color:var(--locavel-blue);margin-bottom:7px}

.locavel-state-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.locavel-state{
  min-width:74px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid var(--locavel-line);
  text-align:center;font:800 1rem Montserrat,Inter,sans-serif;color:var(--locavel-blue);box-shadow:0 8px 25px rgba(5,21,105,.06)
}
.locavel-state:hover{background:var(--locavel-yellow)}

.locavel-integrity{
  background:linear-gradient(120deg,#051569,#102b8c);color:#fff;border-radius:34px;padding:54px;
  display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center
}
.locavel-integrity h2,.locavel-integrity h3{color:#fff}
.locavel-integrity p{color:#e5eaff}
.locavel-integrity-box{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);padding:28px;border-radius:24px}

.locavel-page-hero{
  padding:90px 0 64px;background:linear-gradient(135deg,#f7f8fb,#eef2ff);border-bottom:1px solid var(--locavel-line)
}
.locavel-page-hero h1{font-size:clamp(2.3rem,4.9vw,4.5rem);margin-bottom:16px}
.locavel-page-hero p{font-size:1.08rem;max-width:760px;color:var(--locavel-muted)}
.locavel-prose{max-width:870px}
.locavel-prose h2{margin-top:44px}
.locavel-note{padding:17px 19px;border-left:4px solid var(--locavel-blue-2);background:#f5f7ff;border-radius:14px;color:#34405c}

.locavel-branch-grid{grid-template-columns:repeat(3,1fr)}
.locavel-branch-card .state{font:800 .75rem Montserrat,Inter,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#9a7800}
.locavel-branch-card address{font-style:normal;color:#4d5870;margin:10px 0 15px}

.locavel-contact-form{
  max-width:900px;margin:auto;background:#fff;border:1px solid var(--locavel-line);
  border-radius:28px;padding:34px;box-shadow:var(--locavel-shadow)
}
.locavel-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.locavel-form-grid .full{grid-column:1/-1}
.locavel-contact-form label{display:block;font-weight:750;font-size:.92rem;margin-bottom:7px}
.locavel-contact-form input,.locavel-contact-form select,.locavel-contact-form textarea{
  width:100%;border:1px solid #d7dce6;border-radius:12px;padding:13px 14px;font:inherit;background:#fff
}
.locavel-contact-form textarea{min-height:135px;resize:vertical}
.locavel-contact-form input:focus,.locavel-contact-form textarea:focus,.locavel-contact-form select:focus{
  outline:0;border-color:var(--locavel-blue-2);box-shadow:0 0 0 4px rgba(16,43,140,.10)
}
.locavel-alert{padding:15px 18px;border-radius:13px;margin-bottom:18px}
.locavel-alert-success{background:#ecfdf3;color:#05603a;border:1px solid #abefc6}
.locavel-alert-error{background:#fff1f0;color:#7a271a;border:1px solid #fecdca}
.locavel-honeypot{position:absolute!important;left:-99999px!important;opacity:0!important}

.locavel-footer{background:#06134a;color:#dce3ff;padding:58px 0 22px}
.locavel-footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:34px}
.locavel-footer-logo{width:210px;background:#fff;border-radius:16px;padding:7px}
.locavel-footer h3{color:#fff;font-size:1rem;margin-bottom:13px}
.locavel-footer a{display:block;color:#dce3ff;margin:8px 0}
.locavel-footer a:hover{color:var(--locavel-yellow)}
.locavel-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.84rem}

@media(max-width:1120px){
  .locavel-menu-toggle{display:block}
  .locavel-nav{
    display:none;position:absolute;top:92px;left:20px;right:20px;background:#fff;padding:18px;
    border:1px solid var(--locavel-line);border-radius:18px;box-shadow:var(--locavel-shadow)
  }
  .locavel-nav.open{display:flex;flex-direction:column;align-items:stretch}
  .locavel-nav li{width:100%;list-style:none}
  .locavel-nav a{display:block;text-align:center}
  .locavel-hero-inner{grid-template-columns:1fr;min-height:auto}
  .locavel-hero-logo{max-width:650px}
  .locavel-fleet-grid{grid-template-columns:repeat(3,1fr)}
  .locavel-branch-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .locavel-cards-3,.locavel-benefits,.locavel-integrity,.locavel-footer-grid{grid-template-columns:1fr}
  .locavel-form-grid{grid-template-columns:1fr}
  .locavel-check-grid{grid-template-columns:1fr}
  .locavel-section{padding:68px 0}
}
@media(max-width:600px){
  .locavel-container{width:min(var(--locavel-container),calc(100% - 28px))}
  .locavel-brand img{width:178px}
  .locavel-header-inner{min-height:78px}
  .locavel-nav{top:78px}
  .locavel-hero-inner{padding:58px 0}
  .locavel-hero-logo{padding:22px}
  .locavel-fleet-grid,.locavel-branch-grid,.locavel-stats{grid-template-columns:1fr}
  .locavel-integrity{padding:32px 24px}
  .locavel-contact-form{padding:22px;border-radius:20px}
  .locavel-footer-bottom{flex-direction:column}
}
