
:root{
  --blue:#0a63f2; --blue2:#1c76ff; --navy:#06182f; --navy2:#0a2857;
  --green:#14924b; --orange:#ff6b18; --ink:#0b1c37; --muted:#5d6878;
  --soft:#f5f8fc; --line:#e4eaf2; --white:#fff; --max:1380px;
  --shadow:0 18px 46px rgba(6,24,47,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(calc(100% - 44px),var(--max));margin:auto}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px;border-radius:8px}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.98);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 5px 22px rgba(0,0,0,.035)}
.nav{height:82px;display:flex;align-items:center;gap:25px}
.brand{width:120px;flex:0 0 120px}
.brand img{width:100%;height:66px;object-fit:contain}
.main-menu{display:flex;gap:23px;align-items:center;margin-left:auto}
.main-menu>a,.dropdown>button{font:700 .9rem/1 Inter,Segoe UI,Arial,sans-serif;white-space:nowrap;background:none;border:0;color:var(--ink);padding:30px 0 28px;cursor:pointer}
.main-menu>a:hover,.dropdown>button:hover{color:var(--blue)}
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:62px;left:50%;transform:translateX(-50%);width:310px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow)}
.dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:11px 12px;border-radius:9px;font-size:.88rem;font-weight:700}
.dropdown-menu a:hover{background:var(--soft);color:var(--blue)}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}
.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px auto}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:10px;font-weight:800;border:1px solid transparent;transition:.2s ease}
.btn:hover{transform:translateY(-2px)}
.primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;box-shadow:0 10px 25px rgba(10,99,242,.23)}
.outline{border-color:var(--blue);color:var(--blue);background:#fff}

/* Hero */
.hero{background:linear-gradient(90deg,#fff 0 49%,#eef5ff 49%);overflow:hidden}
.hero-layout{min-height:600px;display:grid;grid-template-columns:49% 51%;align-items:stretch}
.hero-copy{align-self:center;padding:62px 42px 34px 0}
.eyebrow,.section-heading>span,.experience-copy>span,.responsible>span{color:var(--blue);font-size:.75rem;font-weight:900;letter-spacing:.16em}
.eyebrow.light{color:#8bbaff}
.hero h1{font-size:clamp(3.2rem,4.7vw,5.1rem);line-height:1.01;letter-spacing:-.055em;margin:16px 0 16px;max-width:760px}
.hero h1 span{color:var(--blue)}
.accent{width:72px;height:3px;background:var(--blue);margin:18px 0 20px}
.lead{max-width:690px;color:#46546a;font-size:1.06rem}
.hero-actions{display:flex;gap:14px;margin:26px 0}
.trust-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.trust-points div{padding-right:12px;border-right:1px solid var(--line)}
.trust-points div:last-child{border-right:0}
.trust-points strong,.trust-points span{display:block}
.trust-points strong{font-size:.82rem}
.trust-points span{font-size:.73rem;color:var(--muted);margin-top:3px}
.hero-media{position:relative;min-width:0;overflow:hidden}
.hero-media>img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-badge{position:absolute;right:0;bottom:0;width:min(70%,650px);display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#0b58df,#082963);color:#fff;padding:24px 28px 24px 76px;clip-path:polygon(17% 0,100% 0,100% 100%,0 100%)}
.hero-badge strong,.hero-badge span{display:block}
.hero-badge strong{font-size:.9rem;letter-spacing:.04em}
.hero-badge span{font-size:.78rem;margin-top:4px}
.badge-icon{font-size:2rem}

/* Headings */
.section{padding:68px 0}
.section-heading{max-width:850px;margin:0 auto 34px;text-align:center}
.section-heading h2{font-size:2.25rem;line-height:1.1;margin:8px 0 8px}
.section-heading p{margin:0;color:var(--muted)}

/* Pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pillar{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:var(--shadow)}
.pillar>img{width:100%;height:230px;object-fit:cover}
.pillar.blue>img{object-position:center}
.pillar.green>img{object-position:center}
.pillar.orange>img{object-position:center}
.pillar-content{padding:24px 26px 28px}
.pillar h3{font-size:1.1rem;margin:0 0 10px}
.pillar p{font-size:.9rem;color:var(--muted)}
.pillar ul{list-style:none;padding:0;margin:18px 0 0}
.pillar li{font-size:.84rem;margin:8px 0;padding-left:20px;position:relative}
.pillar li:before{content:"✓";position:absolute;left:0;font-weight:900}
.pillar.blue h3,.pillar.blue li:before{color:var(--blue)}
.pillar.green h3,.pillar.green li:before{color:var(--green)}
.pillar.orange h3,.pillar.orange li:before{color:var(--orange)}

/* Services */
.services-section{background:var(--soft)}
.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.services-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 16px;text-align:center;box-shadow:0 8px 24px rgba(6,24,47,.055)}
.service-icon{width:48px;height:48px;border-radius:14px;margin:0 auto 13px;display:grid;place-items:center;background:#eef5ff;color:var(--blue);font-size:1.4rem;font-weight:900}
.services-grid h3{font-size:.94rem;line-height:1.18;margin:0 0 8px}
.services-grid p{font-size:.78rem;color:var(--muted);margin:0}

/* Vehicle */
.vehicle-section{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff}
.vehicle-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:center}
.vehicle-section h2{font-size:2.35rem;line-height:1.08;margin:10px 0 15px}
.vehicle-section p{color:#d0dced}
.vehicle-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vehicle-list span{padding:15px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.05);font-size:.86rem}

/* Partners */
.partners-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.partners-grid article{border:1px solid var(--line);border-radius:15px;padding:28px;background:#fff;box-shadow:var(--shadow)}
.partners-grid strong{display:block;font-size:1.35rem;color:#143e80}
.partners-grid span{display:inline-block;margin:12px 0 6px;padding:3px 8px;border:1px solid var(--blue);border-radius:5px;color:var(--blue);font-weight:900;font-size:.65rem}
.partners-grid .client span{border-color:var(--orange);color:var(--orange)}
.partners-grid p{font-size:.87rem;color:var(--muted)}
.partner-note{text-align:center;color:var(--muted);font-size:.78rem;margin-top:18px}

/* Experience */
.experience-section{background:#f7f9fc}
.experience-layout{display:grid;grid-template-columns:1fr 1fr}
.experience-copy{background:linear-gradient(135deg,#071d3e,#05152d);color:#fff;padding:50px}
.experience-copy h2{font-size:2.2rem;line-height:1.12;margin:10px 0 14px}
.experience-copy p{color:#d5e0ed}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tags span{font-size:.76rem;padding:7px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px}
.responsible{padding:50px 0 42px 52px}
.responsible h2{font-size:2.25rem;margin:10px 0 16px}
.responsible ul{list-style:none;padding:0;margin:0 0 24px}
.responsible li{margin:8px 0}
.responsible li:before{content:"✓";color:var(--blue);font-weight:900;margin-right:10px}
.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:linear-gradient(135deg,#0758dc,#0c68f1);color:#fff;border-radius:14px;padding:24px}
.contact-card strong,.contact-card small,.contact-card a{display:block}
.contact-card small{font-size:.76rem;margin-top:5px}
.contact-card a{font-size:.86rem;margin:5px 0}

/* Footer */
.site-footer{background:#05152c;color:#d2deec;padding:42px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:46px}
.footer-brand img{width:125px;height:95px;object-fit:contain;background:#fff;border-radius:12px;padding:8px}
.site-footer h3{color:#fff;margin:0 0 12px}
.site-footer a,.site-footer span{display:block;font-size:.85rem;color:#bccbdd;margin:6px 0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;font-size:.78rem;color:#91a6bf}
.floating-wa{position:fixed;right:16px;bottom:16px;z-index:80;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#17aa5a;color:#fff;font-weight:950;box-shadow:0 12px 28px rgba(0,0,0,.2)}

/* Responsive */
@media(max-width:1180px){
  .desktop-cta{display:none}
  .main-menu{gap:15px}
  .main-menu>a,.dropdown>button{font-size:.83rem}
  .services-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1024px){
  .nav{height:72px}
  .brand{width:98px;flex-basis:98px}
  .brand img{height:58px}
  .menu-toggle{display:block}
  .main-menu{display:none;position:absolute;top:70px;left:14px;right:14px;margin:0;padding:10px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 88px);overflow:auto}
  .main-menu.open{display:flex}
  .main-menu>a,.dropdown>button{width:100%;text-align:left;padding:13px 14px;border-bottom:1px solid var(--line)}
  .dropdown-menu{display:block;position:static;transform:none;width:100%;box-shadow:none;border:0;background:var(--soft);margin:6px 0}
  .hero{background:#fff}
  .hero-layout{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:44px 0 30px}
  .hero-media{aspect-ratio:16/9;border-radius:22px;margin-bottom:32px}
  .hero-badge{width:min(88%,680px);padding:20px 22px 20px 64px}
  .pillars{grid-template-columns:1fr}
  .pillar{display:grid;grid-template-columns:40% 60%}
  .pillar>img{height:100%;min-height:280px}
  .vehicle-layout{grid-template-columns:1fr}
  .experience-layout{grid-template-columns:1fr}
  .responsible{padding-left:0}
}
@media(max-width:760px){
  .container{width:calc(100% - 24px)}
  .nav{height:66px}
  .brand{width:76px;flex-basis:76px}
  .brand img{height:54px}
  .main-menu{top:64px}
  .hero-copy{padding:32px 0 24px}
  .hero h1{font-size:2.45rem}
  .lead{font-size:.98rem}
  .hero-actions{display:grid}
  .hero-actions .btn{width:100%}
  .trust-points{grid-template-columns:1fr}
  .trust-points div{border-right:0;border-bottom:1px solid var(--line);padding:8px 0}
  .hero-media{aspect-ratio:4/3;border-radius:18px}
  .hero-badge{position:static;width:100%;clip-path:none;padding:18px;border-radius:0 0 18px 18px}
  .section{padding:50px 0}
  .section-heading h2{font-size:1.75rem}
  .pillar{display:block}
  .pillar>img{height:220px;min-height:0}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .vehicle-list{grid-template-columns:1fr}
  .partners-grid{grid-template-columns:1fr}
  .experience-copy{padding:36px 24px}
  .responsible{padding:38px 0}
  .contact-card{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:26px}
}
@media(max-width:430px){
  .hero h1{font-size:2.2rem}
  .pillar>img{height:190px}
  .services-grid{grid-template-columns:1fr}
}


/* =========================================================
   FASE 4 v1 — ARQUITETURA DE CONTEÚDO E CONVERSÃO
   ========================================================= */
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.solution-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:var(--shadow);overflow:hidden}
.solution-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}
.blue-line:before{background:var(--blue)}
.green-line:before{background:var(--green)}
.orange-line:before{background:var(--orange)}
.solution-number{font-size:2rem;font-weight:950;color:#dbe5f2}
.solution-card h3{font-size:1.12rem;margin:8px 0 10px}
.solution-card p{font-size:.88rem;color:var(--muted)}
.solution-card a{display:inline-block;margin-top:10px;color:var(--blue);font-size:.84rem;font-weight:850}
.green-line a{color:var(--green)}
.orange-line a{color:var(--orange)}

.detail-section{background:#fff}
.safety-detail{background:#f7faf8}
.detail-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.detail-layout.reverse{grid-template-columns:.8fr 1.2fr}
.detail-intro h2{font-size:2.25rem;line-height:1.1;margin:10px 0 14px}
.detail-intro>p{color:var(--muted);margin-bottom:24px}
.detail-label{font-size:.73rem;font-weight:900;letter-spacing:.15em}
.blue-text{color:var(--blue)}
.green-text{color:var(--green)}
.green-btn{background:linear-gradient(135deg,#118944,#20a85b);color:#fff;box-shadow:0 10px 25px rgba(20,146,75,.20)}
.detail-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.detail-cards article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;box-shadow:0 8px 24px rgba(6,24,47,.05)}
.detail-cards h3{font-size:.94rem;margin:0 0 7px}
.detail-cards p{font-size:.8rem;color:var(--muted);margin:0}

.vehicle-detail{background:linear-gradient(145deg,#071b39,#08285a);color:#fff}
.vehicle-detail-head{max-width:900px;margin-bottom:32px}
.vehicle-detail-head>span{color:#ffad76;font-size:.73rem;font-weight:900;letter-spacing:.15em}
.vehicle-detail-head h2{font-size:2.35rem;line-height:1.1;margin:10px 0 12px}
.vehicle-detail-head p{color:#cfdaea}
.vehicle-process{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0}
.vehicle-process article{border:1px solid rgba(255,255,255,.14);border-radius:13px;padding:20px;background:rgba(255,255,255,.045)}
.vehicle-process b{color:#ff8a42;font-size:1.4rem}
.vehicle-process h3{margin:7px 0 6px;font-size:.98rem}
.vehicle-process p{margin:0;color:#cbd8e9;font-size:.79rem}
.vehicle-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.vehicle-services-grid article{background:#fff;color:var(--ink);border-radius:13px;padding:20px}
.vehicle-services-grid h3{font-size:.95rem;margin:0 0 7px}
.vehicle-services-grid p{font-size:.8rem;color:var(--muted);margin:0}
.vehicle-cta{margin-top:28px;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:rgba(255,255,255,.055)}
.vehicle-cta strong,.vehicle-cta span{display:block}
.vehicle-cta span{font-size:.82rem;color:#cfdaea;margin-top:4px}
.orange-btn{background:linear-gradient(135deg,#ef651a,#ff833a);color:#fff;white-space:nowrap}

.decision-cta{background:#eef5ff;padding:42px 0}
.decision-layout{display:flex;align-items:center;justify-content:space-between;gap:35px}
.decision-layout>div{max-width:800px}
.decision-layout span{color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.14em}
.decision-layout h2{font-size:1.85rem;line-height:1.15;margin:7px 0 0}

@media(max-width:1024px){
  .solution-grid{grid-template-columns:1fr}
  .detail-layout,.detail-layout.reverse{grid-template-columns:1fr}
  .vehicle-process{grid-template-columns:repeat(2,1fr)}
  .vehicle-services-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .detail-intro h2,.vehicle-detail-head h2{font-size:1.8rem}
  .detail-cards{grid-template-columns:1fr}
  .vehicle-process,.vehicle-services-grid{grid-template-columns:1fr}
  .vehicle-cta,.decision-layout{display:block}
  .vehicle-cta .btn,.decision-layout .btn{width:100%;margin-top:20px}
  .decision-layout h2{font-size:1.55rem}
}


/* =========================================================
   FASE 4 APROVADA — HERO CONGELADO
   Regra: não cortar OBM SOLUTIONS, capacete, tablet ou faixa.
   ========================================================= */
.hero-media{
  display:flex;
  align-items:stretch;
  justify-content:center;
  overflow:hidden;
  background:#eef4fb;
}
.hero-media>img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center center !important;
  background:#eef4fb;
}
.hero-badge{display:none!important}

@media(max-width:1024px){
  .hero-media{
    aspect-ratio:auto!important;
    height:auto!important;
    min-height:0!important;
  }
  .hero-media>img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
}
@media(max-width:760px){
  .hero-media{
    border-radius:18px!important;
    overflow:hidden!important;
  }
  .hero-media>img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
}

/* FASE 5 v1 — expansão Engenharia Veicular */
.vehicle-niche{padding:26px 0;background:#fff3eb;border-top:1px solid #ffe0cc;border-bottom:1px solid #ffe0cc}
.niche-layout{display:flex;align-items:center;justify-content:space-between;gap:30px}
.niche-layout>div{max-width:850px}
.niche-layout span{display:block;color:var(--orange);font-size:.7rem;font-weight:900;letter-spacing:.14em}
.niche-layout strong{display:block;font-size:1.35rem;margin:4px 0}
.niche-layout p{margin:0;color:var(--muted);font-size:.88rem}
.audience-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0 10px}
.audience-strip strong{margin-right:6px;font-size:.82rem}
.audience-strip span{padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:.73rem;background:rgba(255,255,255,.06)}
.phase5-heading{margin:38px 0 16px}
.phase5-heading span{color:#ffad76;font-size:.7rem;font-weight:900;letter-spacing:.14em}
.phase5-heading h3{font-size:1.5rem;margin:5px 0}
.phase5-services{grid-template-columns:repeat(3,1fr)}
.scope-boundary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}
.scope-boundary>div{border-radius:14px;padding:22px}
.scope-boundary span{font-size:.67rem;font-weight:900;letter-spacing:.12em}
.scope-boundary h3{font-size:1rem;margin:7px 0}
.scope-boundary p{font-size:.8rem;margin:0}
.scope-ok{background:#eef8f2;color:#173d28;border:1px solid #cfe9d9}
.scope-ok span{color:#168247}
.scope-external{background:#fff7ee;color:#4a2d19;border:1px solid #f4d9bd}
.scope-external span{color:#d56520}
@media(max-width:1024px){
  .phase5-services{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .niche-layout{display:block}
  .niche-layout .btn{width:100%;margin-top:18px}
  .phase5-services,.scope-boundary{grid-template-columns:1fr}
}
