  :root{
    --bg: #0b0b0d;
    --bg-2: #131315;
    --surface: #18181b;
    --surface-2: #1f1f23;
    --line: rgba(243,241,236,0.10);
    --red: #e31e24;
    --red-dim: #a5171b;
    --amber: #ffb100;
    --amber-dim: #cc8d00;
    --off: #f3f1ec;
    --off-dim: rgba(243,241,236,0.62);
    --steel: #3d4145;
    --shadow: 0 20px 60px rgba(0,0,0,0.5);
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--off);
    font-family:'Inter',sans-serif;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;}

  .disp{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:0.01em;}
  .mono{font-family:'Space Mono',monospace;}

  ::selection{background:var(--red);color:var(--off);}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
    .ticker-track{animation-duration:16s !important; animation-iteration-count:infinite !important;}
  }

  /* ---------- utility ---------- */
  .wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
  .eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-family:'Space Mono',monospace;
    font-size:12px;letter-spacing:0.18em;text-transform:uppercase;
    color:var(--amber);
    margin-bottom:18px;
  }
  .eyebrow::before{content:"";width:22px;height:2px;background:var(--amber);display:inline-block;}
  .section{padding:110px 0;position:relative;}
  @media (max-width:768px){.section{padding:70px 0;}}
  h2.title{
    font-size:clamp(32px,5vw,52px);
    line-height:1.05;
    font-weight:700;
    margin-bottom:22px;
  }
  .lead{font-size:18px;line-height:1.7;color:var(--off-dim);max-width:60ch;}

  a:focus-visible, button:focus-visible{outline:3px solid var(--amber); outline-offset:3px;}

  /* ---------- header / nav ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    display:flex;align-items:center;justify-content:space-between;
    padding:16px 24px;
    background:linear-gradient(to bottom, rgba(11,11,13,0.92), rgba(11,11,13,0));
    transition:background .3s ease, backdrop-filter .3s ease;
  }
  header.scrolled{background:rgba(11,11,13,0.88); backdrop-filter:blur(10px); border-bottom:1px solid var(--line);}
  .main-nav{display:flex;align-items:center;gap:22px;margin-left:auto;margin-right:24px;}
  .main-nav a{color:var(--off-dim);font:11px 'Space Mono',monospace;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;}
  .main-nav a:hover{color:var(--amber);}
  .brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
  .brand img{width:38px;height:38px;border-radius:8px;object-fit:cover;}
  .brand-text{font-family:'Oswald',sans-serif;font-weight:700;letter-spacing:0.03em;font-size:16px;line-height:1;}
  .brand-text span{display:block;color:var(--red);font-size:11px;letter-spacing:0.18em;margin-top:3px;}
  .nav-cta{
    display:flex;align-items:center;gap:8px;
    background:var(--amber);color:#141400;
    font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:0.04em;text-transform:uppercase;
    padding:11px 18px;border-radius:4px;text-decoration:none;
    box-shadow:0 6px 20px rgba(255,177,0,0.25);
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(255,177,0,0.35);}
  .menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:4px;width:42px;height:42px;padding:10px;cursor:pointer;}
  .menu-toggle span{display:block;height:2px;background:var(--off);margin:4px 0;transition:transform .2s ease,opacity .2s ease;}
  .mobile-nav{display:none;}

  /* ---------- hero ---------- */
  .hero{
    position:relative;
    min-height:100svh;
    display:flex;align-items:flex-end;
    overflow:hidden;
  }
  .hero-bg{
    position:absolute;inset:0;
    background-image:url('images/caminhao_noite_farol.webp');
    background-size:cover;background-position:center 30%;
    filter:grayscale(15%) contrast(1.08) brightness(0.68);
    transform:scale(1.06);
  }
  .hero-scrim{
    position:absolute;inset:0;
    background:
      linear-gradient(to top, rgba(11,11,13,1) 0%, rgba(11,11,13,0.55) 42%, rgba(11,11,13,0.35) 65%, rgba(11,11,13,0.75) 100%),
      linear-gradient(to right, rgba(11,11,13,0.55) 0%, rgba(11,11,13,0.05) 50%);
  }
  /* rotating beacon sweep — signature element, echoes the truck's amber warning light */
  .beacon{
    position:absolute; top:-10%; left:50%;
    width:1px;height:1px;
    pointer-events:none;
  }
  .beacon-sweep{
    position:absolute;
    width:2400px;height:2400px;
    left:50%;top:8%;
    transform:translate(-50%,-50%) rotate(0deg);
    background:conic-gradient(from 0deg,
      rgba(255,177,0,0) 0deg,
      rgba(255,177,0,0.16) 8deg,
      rgba(255,177,0,0) 20deg,
      rgba(255,177,0,0) 340deg);
    animation:sweep 4.5s linear infinite;
    mix-blend-mode:screen;
  }
  @keyframes sweep{ to{ transform:translate(-50%,-50%) rotate(360deg);} }

  .hero-inner{position:relative;z-index:2;width:100%;padding:0 24px 88px;}
  .hero-content{max-width:1180px;margin:0 auto;}
  .hero-eyebrow{
    font-family:'Space Mono',monospace;font-size:13px;letter-spacing:0.2em;
    color:var(--amber);text-transform:uppercase;margin-bottom:20px;
    display:flex;align-items:center;gap:10px;
  }
  .pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 rgba(227,30,36,0.6);animation:pulse 1.8s infinite;}
  @keyframes pulse{
    0%{box-shadow:0 0 0 0 rgba(227,30,36,0.55);}
    70%{box-shadow:0 0 0 12px rgba(227,30,36,0);}
    100%{box-shadow:0 0 0 0 rgba(227,30,36,0);}
  }
  .hero h1{
    font-size:clamp(52px,9.5vw,120px);
    line-height:0.92;
    font-weight:700;
    color:var(--off);
    text-shadow:0 4px 40px rgba(0,0,0,0.5);
  }
  .hero h1 .hi-red{color:var(--red);}
  .hero-sub{
    font-family:'Oswald',sans-serif;font-weight:500;
    font-size:clamp(18px,2.4vw,26px);
    color:var(--off-dim);
    text-transform:none;letter-spacing:0.01em;
    margin:18px 0 34px;
    max-width:640px;
  }
  .hero-ctas{display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-family:'Oswald',sans-serif;font-weight:600;font-size:15px;letter-spacing:0.03em;text-transform:uppercase;
    padding:17px 28px;border-radius:4px;text-decoration:none;border:none;cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  }
  .btn-primary{background:var(--red);color:var(--off);box-shadow:0 10px 30px rgba(227,30,36,0.35);}
  .btn-primary:hover{background:#ff2530;transform:translateY(-2px);box-shadow:0 14px 34px rgba(227,30,36,0.45);}
  .btn-outline{background:transparent;color:var(--off);border:1.5px solid rgba(243,241,236,0.35);}
  .btn-outline:hover{border-color:var(--off);background:rgba(243,241,236,0.06);}
  .btn-emergency{background:rgba(243,241,236,.08);color:var(--off);border:1px solid rgba(243,241,236,.3);}
  .btn-emergency:hover{background:var(--amber);color:#141400;border-color:var(--amber);}
  .emergency-panel{max-width:560px;margin-top:18px;padding:18px 20px;border-left:3px solid var(--red);background:rgba(11,11,13,.78);display:grid;gap:7px;}
  .emergency-panel[hidden]{display:none;}
  .emergency-panel strong{font:600 20px 'Oswald',sans-serif;text-transform:uppercase;}
  .emergency-panel span{color:var(--off-dim);font-size:14px;line-height:1.5;}
  .emergency-panel a{color:var(--amber);font:11px 'Space Mono',monospace;text-transform:uppercase;text-decoration:none;margin-top:5px;}
  .btn svg{width:18px;height:18px;flex-shrink:0;}

  /* ---------- ticker ---------- */
  .ticker-strip{
    background:var(--red);
    overflow:hidden;white-space:nowrap;
    border-top:1px solid rgba(0,0,0,0.2);border-bottom:1px solid rgba(0,0,0,0.2);
    position:relative;z-index:3;
  }
  .ticker-track{
    display:flex;
    width:max-content;
    will-change:transform;
    animation:ticker 16s linear infinite;
  }
  .ticker-group{
    display:flex;
    flex-shrink:0;
  }
  .ticker-track span{
    font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:0.12em;text-transform:uppercase;
    color:var(--off);
    padding:13px 0;
  }
  .ticker-track span::after{content:"◆";margin:0 22px;color:rgba(11,11,13,0.5);font-size:10px;}
  @keyframes ticker{ from{transform:translateX(0);} to{transform:translateX(-25%);} }

  .safety-strip{background:var(--red);color:var(--off);}
  .safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-top:24px;padding-bottom:24px;}
  .safety-grid>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;}
  .safety-index{grid-row:span 2;color:rgba(11,11,13,.62);font-size:12px;}
  .safety-grid strong{font:600 16px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.02em;}
  .safety-grid small{color:rgba(243,241,236,.75);font-size:12px;}

  /* ---------- sobre ---------- */
  .sobre-grid{
    display:grid;grid-template-columns:1.05fr 0.95fr;gap:64px;align-items:center;
  }
  @media (max-width:860px){.sobre-grid{grid-template-columns:1fr;gap:40px;}}
  .sobre-photo{
    position:relative;border-radius:6px;overflow:hidden;box-shadow:var(--shadow);
    border:1px solid var(--line);
  }
  .sobre-photo img{width:100%;height:460px;object-fit:cover;}
  .sobre-tag{
    position:absolute;bottom:16px;left:16px;
    background:rgba(11,11,13,0.82);backdrop-filter:blur(6px);
    padding:10px 14px;border-radius:4px;border:1px solid var(--line);
    font-family:'Space Mono',monospace;font-size:12px;letter-spacing:0.04em;
    display:flex;align-items:center;gap:8px;
  }
  .sobre-tag b{color:var(--amber);}
  .founder-row{
    display:flex;align-items:center;gap:16px;margin-top:34px;
    padding-top:26px;border-top:1px solid var(--line);
  }
  .founder-badge{
    width:52px;height:52px;border-radius:50%;
    background:var(--surface-2);border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    font-family:'Oswald',sans-serif;font-weight:700;color:var(--amber);font-size:18px;
    flex-shrink:0;
  }
  .founder-name{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;}
  .founder-role{font-size:13px;color:var(--off-dim);margin-top:2px;}

  /* ---------- servicos ---------- */
  .services-section{background:var(--bg);}
  .services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:52px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
  .service-item{background:var(--surface);padding:28px 24px;min-height:240px;display:flex;flex-direction:column;align-items:flex-start;}
  .service-number{color:var(--red);font-size:12px;margin-bottom:28px;}
  .service-item h3{font-family:'Oswald',sans-serif;font-size:20px;text-transform:uppercase;margin-bottom:10px;}
  .service-item p{font-size:14px;line-height:1.6;color:var(--off-dim);}
  .service-item a{margin-top:auto;padding-top:22px;color:var(--amber);font:11px 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;}
  .service-item a:hover{color:var(--off);}
  @media (max-width:960px){.services-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.services-grid{grid-template-columns:1fr;}.service-item{min-height:210px;}}

  /* ---------- diferenciais: plate badges ---------- */
  .plates-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:56px;
  }
  @media (max-width:960px){.plates-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.plates-grid{grid-template-columns:1fr;}}
  .plate-card{
    background:var(--surface);border:1px solid var(--line);border-radius:8px;
    overflow:hidden;
    transition:transform .2s ease, border-color .2s ease;
  }
  .plate-card:hover{transform:translateY(-4px);border-color:rgba(255,177,0,0.35);}
  .plate-strip{
    background:linear-gradient(135deg,#0033a0,#0044c9);
    height:34px;display:flex;align-items:center;justify-content:center;gap:3px;
    position:relative;
  }
  .plate-strip .flag-dot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,0.85);}
  .plate-strip small{
    font-family:'Space Mono',monospace;color:#fff;font-size:9px;letter-spacing:0.1em;position:absolute;bottom:3px;
  }
  .plate-body{padding:22px 20px 24px;}
  .plate-icon{font-size:26px;margin-bottom:14px;display:block;}
  .plate-body h3{font-family:'Oswald',sans-serif;font-size:17px;font-weight:600;text-transform:uppercase;letter-spacing:0.02em;margin-bottom:8px;}
  .plate-body p{font-size:14px;line-height:1.6;color:var(--off-dim);}

  /* ---------- galeria ---------- */
  .gallery-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:52px;
  }
  @media (max-width:960px){.gallery-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.gallery-grid{grid-template-columns:1fr;}}
  .gallery-item{
    position:relative;border-radius:6px;overflow:hidden;
    aspect-ratio:3/4;border:1px solid var(--line);
  }
  .gallery-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in;}
  .gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,opacity .25s ease;background:var(--surface-2);}
  .gallery-item img:not([src]){opacity:0;}
  .gallery-item:hover img{transform:scale(1.08);}
  .gallery-overlay{
    position:absolute;inset:0;
    background:linear-gradient(to top, rgba(11,11,13,0.92) 0%, rgba(11,11,13,0) 45%);
    display:flex;align-items:flex-end;padding:16px;
  }
  .gallery-overlay span{
    font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:0.02em;
  }

  /* ---------- como funciona ---------- */
  .steps{
    display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
    margin-top:56px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;
  }
  @media (max-width:860px){.steps{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.steps{grid-template-columns:1fr;}}
  .step{background:var(--surface);padding:32px 26px;}
  .step-num{
    font-family:'Space Mono',monospace;font-size:13px;color:var(--red);letter-spacing:0.08em;margin-bottom:18px;display:block;
  }
  .step h3{font-family:'Oswald',sans-serif;font-size:17px;font-weight:600;text-transform:uppercase;margin-bottom:10px;letter-spacing:0.01em;}
  .step p{font-size:14px;color:var(--off-dim);line-height:1.6;}

  /* ---------- atendimento / radar ---------- */
  .atend{
    background:var(--bg-2);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  }
  .atend-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  @media (max-width:860px){.atend-grid{grid-template-columns:1fr;gap:50px;}}
  .radar{
    position:relative;width:100%;aspect-ratio:1/1;max-width:420px;margin:0 auto;
    display:flex;align-items:center;justify-content:center;
  }
  .radar-ring{
    position:absolute;border:1px solid rgba(255,177,0,0.28);border-radius:50%;
  }
  .radar-ring.r1{width:30%;height:30%;}
  .radar-ring.r2{width:56%;height:56%;}
  .radar-ring.r3{width:82%;height:82%;}
  .radar-ring.r4{width:100%;height:100%;border-color:rgba(255,177,0,0.14);}
  .radar-ping{
    position:absolute;width:30%;height:30%;border-radius:50%;
    border:1.5px solid var(--amber);
    animation:ping 2.6s cubic-bezier(0,0,0.3,1) infinite;
  }
  .radar-ping.delay{animation-delay:1.3s;}
  @keyframes ping{
    0%{transform:scale(1);opacity:0.9;}
    100%{transform:scale(3.1);opacity:0;}
  }
  .radar-center{
    position:relative;z-index:2;width:14px;height:14px;border-radius:50%;
    background:var(--red);box-shadow:0 0 0 6px rgba(227,30,36,0.18), 0 0 24px rgba(227,30,36,0.6);
  }
  .radar-label{
    position:absolute;bottom:2%;left:50%;transform:translateX(-50%);
    font-family:'Space Mono',monospace;font-size:11px;letter-spacing:0.1em;color:var(--amber);
    white-space:nowrap;background:var(--bg-2);padding:2px 8px;
  }
  .atend-list{list-style:none;margin-top:28px;}
  .atend-list li{
    display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);
    font-size:15px;color:var(--off-dim);
  }
  .atend-list li:last-child{border-bottom:none;}
  .atend-list b{color:var(--off);font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:0.01em;min-width:170px;text-transform:uppercase;font-size:13px;}

  /* ---------- cta final ---------- */
  .cta-final{
    text-align:center;position:relative;overflow:hidden;
    background:
      radial-gradient(ellipse at 50% 0%, rgba(227,30,36,0.18), transparent 60%),
      var(--bg);
  }
  .cta-final h2{font-size:clamp(30px,6vw,58px);line-height:1.06;font-weight:700;margin-bottom:20px;}
  .cta-final .lead{margin:0 auto 40px;text-align:center;}
  .cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
  .phone-plate{
    display:inline-flex;align-items:center;gap:10px;margin-top:34px;
    font-family:'Space Mono',monospace;font-size:16px;letter-spacing:0.06em;
    background:var(--surface);border:1px solid var(--line);padding:12px 20px;border-radius:4px;
  }
  .quick-form{
    max-width:920px;margin:42px auto 0;padding:24px;text-align:left;
    background:var(--surface);border:1px solid var(--line);border-radius:8px;
  }
  .quick-form-heading{font-family:'Oswald',sans-serif;font-size:20px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:18px;}
  .quick-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;}
  .quick-form label{display:grid;gap:7px;font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--off-dim);}
  .quick-form input,.quick-form select{width:100%;height:48px;min-height:48px;padding:0 13px;border:1px solid var(--line);border-radius:4px;background:var(--bg-2);color:var(--off);font:14px 'Inter',sans-serif;box-sizing:border-box;}
  .location-field{display:flex;gap:6px;min-width:0;}
  .location-field input{min-width:0;}
  .location-button{width:48px;min-width:48px;height:48px;border:1px solid var(--line);border-radius:4px;background:var(--bg-2);color:var(--amber);font-size:24px;line-height:1;cursor:pointer;}
  .location-button:hover{background:var(--surface-2);border-color:var(--amber);}
  .quick-form-photo input{padding:12px 10px;font-size:12px;}
  .quick-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--amber) 50%),linear-gradient(135deg,var(--amber) 50%,transparent 50%);background-position:calc(100% - 17px) 20px,calc(100% - 12px) 20px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px;}
  .quick-form input::placeholder{color:rgba(243,241,236,.4);}
  .quick-form .btn{min-height:48px;padding:12px 18px;white-space:nowrap;}
  .quick-form-description{grid-column:span 3;}
  .form-status{min-height:18px;margin-top:12px;color:var(--amber);font-size:13px;}
  @media (max-width:860px){.quick-form-grid{grid-template-columns:1fr 1fr;}.quick-form-description{grid-column:span 2;}.quick-form .btn{width:100%;}}
  @media (max-width:560px){.quick-form{padding:18px;}.quick-form-grid{grid-template-columns:1fr;}.quick-form-description{grid-column:auto;}}

  /* ---------- mapa ---------- */
  .map-section{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .map-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center;}
  .map-frame{height:390px;border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:var(--shadow);background:var(--surface);}
  .map-frame iframe{width:100%;height:100%;border:0;filter:grayscale(25%) contrast(1.05);}
  .availability{display:flex;align-items:center;gap:10px;margin:28px 0;color:var(--off);font-size:14px;}
  .availability span{width:9px;height:9px;border-radius:50%;background:#1fb955;box-shadow:0 0 0 5px rgba(31,185,85,.12);}
  .availability small{color:var(--off-dim);font-size:12px;margin-left:4px;}
  .map-link{margin-top:4px;}
  .map-actions{display:flex;flex-wrap:wrap;gap:10px;}
  .map-actions .btn{font-size:12px;padding:13px 16px;}
  @media (max-width:860px){.map-grid{grid-template-columns:1fr;gap:36px;}.map-frame{height:330px;}}
  @media (max-width:760px){.main-nav{display:none;}.map-actions .btn{flex:1 1 180px;}}

  /* ---------- faq ---------- */
  .faq-section{background:var(--bg);}
  .faq-list{max-width:820px;margin-top:48px;border-top:1px solid var(--line);}
  .faq-list details{border-bottom:1px solid var(--line);}
  .faq-list summary{list-style:none;cursor:pointer;padding:22px 42px 22px 0;position:relative;font:600 20px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.02em;}
  .faq-list summary::-webkit-details-marker{display:none;}
  .faq-list summary::after{content:'+';position:absolute;right:4px;top:17px;color:var(--amber);font:28px 'Oswald',sans-serif;}
  .faq-list details[open] summary::after{content:'−';}
  .faq-list details p{max-width:68ch;padding:0 40px 22px 0;color:var(--off-dim);font-size:15px;line-height:1.7;}

  /* ---------- avaliacoes ---------- */
  .reviews-section{background:var(--bg);}
  .review-callout{display:flex;align-items:center;justify-content:space-between;gap:48px;padding:42px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .review-callout .title{margin-bottom:16px;}
  .review-callout .btn{flex-shrink:0;}
  @media (max-width:700px){.review-callout{display:block;}.review-callout .btn{margin-top:26px;}}

  .quote-section{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  .quote-form{display:grid;gap:14px;background:var(--surface);border:1px solid var(--line);padding:24px;border-radius:8px;}
  .quote-form label{display:grid;gap:7px;font:10px 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--off-dim);}
  .quote-form input,.quote-form select{height:48px;padding:0 13px;border:1px solid var(--line);border-radius:4px;background:var(--bg-2);color:var(--off);font:14px 'Inter',sans-serif;}
  .partner-strip{padding:68px 0;background:var(--bg);border-bottom:1px solid var(--line);}
  .partner-inner{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:center;}
  .partner-inner .title{font-size:clamp(30px,4vw,46px);margin:0;}
  .partner-inner .lead{font-size:15px;line-height:1.6;}
  .partner-inner .eyebrow{margin-bottom:14px;}
  @media (max-width:860px){.quote-grid,.partner-inner{grid-template-columns:1fr;gap:30px;}.partner-inner .btn{justify-self:start;}}
  @media (max-width:600px){.safety-grid{grid-template-columns:1fr;gap:16px;}.safety-grid strong{font-size:14px;}.emergency-panel{margin-bottom:4px;}.quote-form{padding:18px;}}

  /* ---------- lightbox ---------- */
  .lightbox[hidden]{display:none;}
  .lightbox{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:24px;background:rgba(5,5,6,.94);}
  .lightbox figure{max-width:min(92vw,1000px);max-height:90vh;margin:0;text-align:center;}
  .lightbox img{max-width:100%;max-height:78vh;width:auto;height:auto;margin:auto;border:1px solid var(--line);box-shadow:var(--shadow);}
  .lightbox figcaption{margin-top:14px;color:var(--off);font:16px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;}
  .lightbox-close{position:absolute;top:18px;right:22px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--off);font-size:30px;line-height:1;cursor:pointer;}
  .lightbox-close:hover{background:var(--red);}
  .lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--off);font-size:24px;cursor:pointer;}
  .lightbox-nav:hover{background:var(--red);}
  .lightbox-prev{left:22px;}
  .lightbox-next{right:22px;}
  @media (max-width:600px){.lightbox-nav{top:auto;bottom:24px;transform:none;}.lightbox-prev{left:calc(50% - 58px);}.lightbox-next{right:calc(50% - 58px);}.lightbox figure{max-height:78vh;}.lightbox img{max-height:68vh;}}

  .footer-credit{margin-top:18px;text-align:center;color:var(--off-dim);font-size:12px;letter-spacing:.04em;}
  .footer-credit strong{color:var(--amber);font-weight:600;}
  .privacy-link{display:block;margin-top:20px;text-align:center;color:var(--off-dim);font-size:12px;}
  .privacy-link:hover{color:var(--amber);}
  .privacy-section{padding:34px 0 110px;background:var(--bg);color:var(--off-dim);}
  .privacy-section h2{font:600 22px 'Oswald',sans-serif;text-transform:uppercase;color:var(--off);margin-bottom:12px;}
  .privacy-section p{max-width:70ch;font-size:13px;line-height:1.7;margin-top:8px;}

  .back-to-top{position:fixed;right:22px;bottom:94px;z-index:190;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--off);display:grid;place-items:center;text-decoration:none;font-size:20px;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,background .2s ease;}
  .back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0);}
  .back-to-top:hover{background:var(--red);}

  /* ---------- footer ---------- */
  footer{
    padding:52px 0 34px;border-top:1px solid var(--line);
  }
  .footer-grid{
    display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:32px;
  }
  .footer-brand{display:flex;align-items:center;gap:12px;}
  .footer-brand img{width:44px;height:44px;border-radius:8px;}
  .footer-links{display:flex;gap:36px;flex-wrap:wrap;}
  .footer-col h4{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:0.14em;color:var(--amber);text-transform:uppercase;margin-bottom:12px;}
  .footer-col a, .footer-col p{display:block;font-size:14px;color:var(--off-dim);text-decoration:none;margin-bottom:8px;}
  .footer-col a:hover{color:var(--off);}
  .footer-bottom{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);font-size:12.5px;color:var(--off-dim);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}

  /* ---------- floating whatsapp ---------- */
  .float-wa{
    position:fixed;right:22px;bottom:22px;z-index:200;
    width:60px;height:60px;border-radius:50%;
    background:#1fb955;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 24px rgba(31,185,85,0.4);
    text-decoration:none;
    animation:floatpulse 2.4s infinite;
  }
  .float-wa svg{width:30px;height:30px;fill:#fff;}
  @keyframes floatpulse{
    0%{box-shadow:0 8px 24px rgba(31,185,85,0.4), 0 0 0 0 rgba(31,185,85,0.5);}
    70%{box-shadow:0 8px 24px rgba(31,185,85,0.4), 0 0 0 14px rgba(31,185,85,0);}
    100%{box-shadow:0 8px 24px rgba(31,185,85,0.4), 0 0 0 0 rgba(31,185,85,0);}
  }

  /* reveal on scroll */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}

  .mobile-actions{display:none;}

  @media (max-width:760px){
    header{padding:12px 16px;}
    .brand-text{font-size:14px;}
    .brand-text span{font-size:9px;}
    .nav-cta{font-size:11px;padding:10px 12px;}
    .nav-cta svg{display:none;}
    .menu-toggle{display:block;margin-left:8px;}
    .mobile-nav{position:fixed;top:66px;left:12px;right:12px;z-index:99;display:flex;flex-direction:column;background:rgba(24,24,27,.98);border:1px solid var(--line);border-radius:6px;padding:8px;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease;}
    .mobile-nav.open{opacity:1;pointer-events:auto;transform:translateY(0);}
    .mobile-nav a{padding:15px 14px;color:var(--off-dim);font:12px 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--line);}
    .mobile-nav a:last-child{border-bottom:0;}
    .mobile-nav a:hover{color:var(--amber);}
    .hero-inner{padding:0 16px 104px;}
    .hero-eyebrow{font-size:10px;letter-spacing:.1em;}
    .hero-sub{font-size:20px;line-height:1.45;}
    .hero-ctas .btn{width:100%;justify-content:center;}
    .wrap{padding:0 16px;}
    .mobile-actions{position:fixed;display:grid;grid-template-columns:1fr 1fr;left:0;right:0;bottom:0;z-index:180;background:rgba(11,11,13,.96);border-top:1px solid var(--line);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px;}
    .mobile-actions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:4px;font:600 13px 'Oswald',sans-serif;text-transform:uppercase;text-decoration:none;}
    .mobile-actions a:first-child{background:var(--surface-2);}
    .mobile-actions a:last-child{background:#1fb955;color:#fff;}
    .mobile-actions span{font-size:18px;}
    .float-wa{display:none;}
    .back-to-top{bottom:76px;right:16px;}
    .faq-list summary{font-size:18px;}
  }
