
  :root{
    --red:#D9342B; --red-deep:#5E120C; --yellow:#F6C21C; --yellow-deep:#4A3606;
    --blue:#3FA9DC; --blue-deep:#0C2E45; --line:rgba(255,255,255,.14);
    --txt:#F2F3F5; --muted:#C4C9CF;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Inter',sans-serif;color:var(--txt);line-height:1.6;
    background:linear-gradient(165deg, #B0402F 0%, #C07B2C 30%, #C9A23A 48%, #3E7FA8 72%, #2E6E97 100%) fixed;
  }
  h1,h2,h3{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.02em;line-height:1.1}
  img{display:block;max-width:100%}
  .wrap{max-width:1180px;margin:0 auto;padding:0 24px}
  .eyebrow{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.26em;font-size:11.5px;font-weight:600;color:var(--yellow)}
  .eyebrow::before{content:'— '}
  .btn{display:inline-block;position:relative;overflow:hidden;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:14px;padding:14px 32px;border:none;cursor:pointer;text-decoration:none;border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .25s ease, box-shadow .25s ease}
  .btn::after{content:'';position:absolute;top:0;left:-80%;width:45%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .55s ease}
  .btn:hover{transform:translateY(-3px) scale(1.02)}
  .btn:hover::after{left:130%}
  .btn-red{background:rgba(217,52,43,.82);color:#fff;border:1px solid rgba(255,255,255,.4);box-shadow:0 8px 26px rgba(217,52,43,.35)}
  .btn-red:hover{background:rgba(176,36,25,.9);box-shadow:0 14px 34px rgba(217,52,43,.45)}
  .btn-line{background:rgba(255,255,255,.26);color:#000;border:1px solid rgba(255,255,255,.6);box-shadow:0 6px 20px rgba(0,0,0,.15)}
  .btn-line:hover{background:rgba(255,255,255,.4)}
  .sec-head{margin-bottom:44px}
  .sec-head.center{text-align:center;max-width:620px;margin:0 auto 44px}
  .sec-head h2{font-size:clamp(26px,3.8vw,38px);margin-top:10px;color:#fff}
  .sec-head h2 .r{color:var(--yellow)}

  /* NAV */
  nav{position:sticky;top:0;z-index:50;background:linear-gradient(90deg, rgba(94,18,12,.92), rgba(74,54,6,.92), rgba(12,46,69,.92));backdrop-filter:blur(8px);border-bottom:2px solid var(--yellow)}
  .nav-in{display:flex;align-items:center;justify-content:space-between;height:70px}
  .brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}
  .brand img{height:42px;width:auto}
  .brand-name{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;font-size:16px;line-height:1.1}
  .brand-name small{display:block;font-family:'Inter',sans-serif;font-size:9.5px;font-weight:500;letter-spacing:.2em;color:var(--muted)}
  .nav-links{display:flex;gap:24px;list-style:none;align-items:center}
  .nav-links a{text-decoration:none;color:#F0F1F3;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
  .nav-links a:hover{color:var(--yellow)}
  .nav-cta{position:relative;overflow:hidden;background:rgba(217,52,43,.85);color:#fff !important;padding:10px 20px;font-family:'Oswald',sans-serif;border-radius:999px;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(8px);transition:transform .2s, box-shadow .2s}
  .nav-cta::after{content:'';position:absolute;top:0;left:-80%;width:45%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .55s ease}
  .nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(217,52,43,.4)}
  .nav-cta:hover::after{left:130%}
  @media(max-width:900px){.nav-links li:not(:last-child){display:none}}

  /* HERO — vídeo limpo ao centro, gradiente da marca só nas BORDAS */
  .hero{position:relative;min-height:660px;display:flex;align-items:center;overflow:hidden;background:#111}
  .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  /* molduras de gradiente CLARO nas bordas — centro do vídeo fica intocado */
  .hero-edge{position:absolute;inset:0;pointer-events:none;
    background:
      linear-gradient(90deg, rgba(224,90,70,.55) 0%, rgba(224,90,70,.25) 12%, transparent 28%),
      linear-gradient(270deg, rgba(110,190,230,.5) 0%, rgba(110,190,230,.22) 10%, transparent 24%),
      linear-gradient(180deg, rgba(250,210,90,.38) 0%, transparent 13%),
      linear-gradient(0deg, rgba(250,210,90,.3) 0%, transparent 18%);
  }
  .hero-in{position:relative;padding:80px 0}
  .hero-brand{position:relative;width:fit-content;margin-bottom:22px}
  .hero-brand img{height:170px;width:auto;filter:drop-shadow(0 4px 14px rgba(0,0,0,.45))}
  .hero-brand .over{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;
    font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:24px;letter-spacing:.06em;color:#000;
    text-shadow:0 1px 6px rgba(255,255,255,.55)}
  .hero-brand .over small{display:block;font-family:'Inter',sans-serif;font-size:10px;font-weight:600;letter-spacing:.3em;text-align:center;color:#1A1A1A}
  .hero h1{font-size:clamp(40px,6.4vw,68px);font-weight:700;color:#000;max-width:620px;text-shadow:0 1px 10px rgba(255,255,255,.45)}
  .hero h1 .y{color:var(--red)}
  .hero p{max-width:480px;margin:18px 0 30px;font-size:16.5px;color:#000;text-shadow:0 1px 8px rgba(255,255,255,.4)}
  .hero-ctas{display:flex;gap:14px;flex-wrap:wrap}
  .hero-bar{position:absolute;left:0;right:0;bottom:0;height:8px;display:flex}
  .hero-bar span{flex:1}
  .hero-bar .r{background:var(--red)}.hero-bar .y{background:var(--yellow)}.hero-bar .b{background:var(--blue)}

  /* CAPACIDADES — cards com imagem de fundo e texto à frente */
  .caps{background:linear-gradient(135deg, rgba(217,90,60,.3), rgba(63,169,220,.3));padding:80px 0;border-top:4px solid var(--red)}
  .caps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
  .cap{position:relative;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px 20px;text-align:left;overflow:hidden;border:1px solid var(--line);background-size:cover;background-position:center;transition:transform .3s ease}
  .cap:hover{transform:translateY(-6px)}
  .cap::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.05) 30%, rgba(0,0,0,.72) 100%);transition:background .3s}
  .cap:hover::before{background:linear-gradient(180deg, rgba(217,52,43,.15) 20%, rgba(0,0,0,.8) 100%)}
  .cap > *{position:relative}
  .cap h3{font-size:17px;letter-spacing:.05em;margin-bottom:6px;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
  .cap p{font-size:12.5px;color:#E8EAEC;text-shadow:0 1px 5px rgba(0,0,0,.7)}
  .cap a{display:inline-block;position:relative;overflow:hidden;margin-top:12px;font-family:'Oswald',sans-serif;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);padding:9px 20px;border-radius:999px;backdrop-filter:blur(8px);text-decoration:none;transition:transform .2s, background .2s}
  .cap a::after{content:'';position:absolute;top:0;left:-80%;width:45%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .55s ease}
  .cap a:hover{transform:translateY(-2px);background:rgba(217,52,43,.75)}
  .cap a:hover::after{left:130%}

  /* PROJECTS */
  .projects{padding:88px 0}
  .proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
  .proj{background:rgba(20,24,30,.4);border:1px solid var(--line)}
  .proj .ph{overflow:hidden;aspect-ratio:16/10}
  .proj .ph img, .proj .ph video{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
  .proj:hover .ph img{transform:scale(1.06)}
  .proj .body{padding:20px 20px 22px;border-top:3px solid var(--yellow)}
  .proj:nth-child(3n+2) .body{border-top-color:var(--red)}
  .proj:nth-child(3n) .body{border-top-color:var(--blue)}
  .proj .body b{font-family:'Oswald',sans-serif;text-transform:uppercase;font-size:16px;letter-spacing:.04em;display:block;color:#fff}
  .proj .body span{font-size:12.5px;color:var(--muted)}
  .proj .body a{display:inline-block;position:relative;overflow:hidden;margin-top:12px;font-family:'Oswald',sans-serif;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);padding:8px 18px;border-radius:999px;backdrop-filter:blur(8px);text-decoration:none;transition:transform .2s, background .2s}
  .proj .body a:hover{transform:translateY(-2px);background:rgba(217,52,43,.7)}

  /* SEGURANÇA / NÚMEROS */
  .safety{background:linear-gradient(100deg, rgba(217,52,43,.9) 0%, rgba(176,36,25,.85) 45%, rgba(246,194,28,.75) 100%);padding:72px 0;color:#fff}
  .safety-head{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:40px}
  .safety-head h2{font-size:clamp(26px,4vw,40px)}
  .safety-head p{color:#FFF3E8;font-size:14px;max-width:420px}
  .num-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:2px;background:rgba(255,255,255,.22)}
  .num{background:rgba(0,0,0,.3);padding:30px 18px;text-align:center}
  .num .val{font-family:'Oswald',sans-serif;font-size:48px;font-weight:700;color:#fff}
  .num .lab{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:#FFE9C7;margin-top:6px}

  /* PROCESSO */
  .process{padding:88px 0;background:linear-gradient(135deg, rgba(63,169,220,.28), rgba(217,52,43,.24))}
  .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px;counter-reset:step}
  .step{position:relative;padding:26px 22px;background:rgba(10,12,16,.55);border:1px solid var(--line);border-left:3px solid var(--yellow)}
  .step:nth-child(2){border-left-color:var(--red)}
  .step:nth-child(3){border-left-color:var(--blue)}
  .step:nth-child(4){border-left-color:var(--yellow)}
  .step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:'Oswald',sans-serif;font-size:38px;font-weight:700;color:var(--yellow);opacity:.55;position:absolute;top:10px;right:16px}
  .step h3{font-size:16px;margin-bottom:8px;color:#fff}
  .step p{font-size:13px;color:var(--muted)}

  /* MARCAS */
  .brands{padding:46px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.1)}
  .brands .lab{text-align:center;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.24em;font-size:11px;color:var(--muted);margin-bottom:24px}
  .brand-row{display:flex;justify-content:center;gap:48px;flex-wrap:wrap;align-items:center}
  .brand-row a{font-family:'Oswald',sans-serif;text-transform:uppercase;font-size:20px;letter-spacing:.1em;color:#F0F1F3;text-decoration:none;border-bottom:3px solid var(--yellow);padding-bottom:4px;transition:color .2s, border-color .2s}
  .brand-row a:hover{color:var(--yellow);border-color:var(--red)}

  /* CITAÇÃO */
  .quote{padding:88px 0}
  .quote-box{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}
  .quote-img{background:url('/imagens/interior-lounge-teto-acustico.jpg') center/cover;min-height:340px}
  .quote-txt{padding:50px 44px;background:linear-gradient(135deg, rgba(176,64,47,.6), rgba(46,110,151,.6));border-left:4px solid var(--yellow)}
  .quote-txt blockquote{font-size:19px;font-weight:500;line-height:1.55;color:#F2F3F5}
  .quote-txt blockquote::before{content:'“';font-family:'Oswald',sans-serif;font-size:64px;color:var(--yellow);display:block;line-height:.6;margin-bottom:16px}
  .quote-txt cite{display:block;margin-top:22px;font-style:normal;font-size:13px;color:var(--muted)}
  @media(max-width:760px){.quote-box{grid-template-columns:1fr}}

  /* CTA FINAL */
  .cta-final{padding:92px 0;background:linear-gradient(100deg, rgba(217,52,43,.55), rgba(246,194,28,.4), rgba(63,169,220,.5));border-top:2px solid var(--yellow)}
  .cta-in{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
  .cta-in h2{font-size:clamp(30px,4.6vw,50px);color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.4)}
  .cta-in h2 .y{color:var(--yellow)}
  .cta-in p{color:#F0F1F3;max-width:440px;margin-top:10px}

  /* CONTACTO + MAPA */
  .contact{padding:88px 0}
  .contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:26px;align-items:stretch}
  @media(max-width:820px){.contact-grid{grid-template-columns:1fr}}
  .contact-card{background:rgba(10,12,16,.5);border:1px solid var(--line);border-left:4px solid var(--yellow);padding:34px 30px;border-radius:18px}
  .contact-card h3{color:#fff;font-size:20px;margin-bottom:18px}
  .contact-card p{font-size:14.5px;color:#E4E6E9;margin-bottom:14px;line-height:1.7}
  .contact-card a{color:var(--yellow);text-decoration:none;font-weight:600}
  .contact-card a:hover{color:#fff}
  .contact-card .lbl{display:block;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:10.5px;color:var(--muted);margin-bottom:2px}
  .map-box{border-radius:18px;overflow:hidden;border:1px solid var(--line);min-height:340px;background:rgba(10,12,16,.4)}
  .map-box iframe{width:100%;height:100%;min-height:340px;border:0;display:block}

  /* MODAIS "Saber mais" */
  .modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:22px}
  .modal.open{display:flex}
  .modal .back{position:absolute;inset:0;background:rgba(10,10,12,.72);backdrop-filter:blur(3px)}
  .modal .panel{position:relative;max-width:640px;width:100%;max-height:86vh;overflow:auto;background:linear-gradient(160deg,#FDFBF7,#F2EFE9);color:#17181C;border-top:6px solid var(--red)}
  .modal .head{padding:26px 30px 0}
  .modal .head h3{font-size:24px;color:#17181C}
  .modal .head span{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:var(--red)}
  .modal .bodyx{padding:16px 30px 30px;font-size:14.5px;line-height:1.7;color:#33353B}
  .modal .bodyx ul{margin:14px 0 0;padding-left:0;list-style:none}
  .modal .bodyx li{padding:9px 0 9px 26px;position:relative;border-bottom:1px solid rgba(0,0,0,.07)}
  .modal .bodyx li::before{content:'✔';position:absolute;left:0;color:var(--red);font-weight:700}
  .modal .close{position:absolute;top:10px;right:14px;background:none;border:none;font-size:26px;cursor:pointer;color:#17181C;line-height:1}
  .modal .cta{display:inline-block;position:relative;overflow:hidden;margin-top:18px;background:rgba(217,52,43,.85);color:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:13px;padding:12px 26px;text-decoration:none;border-radius:999px;border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(8px);box-shadow:0 6px 18px rgba(217,52,43,.35);transition:transform .2s, box-shadow .2s}
  .modal .cta::after{content:'';position:absolute;top:0;left:-80%;width:45%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .55s ease}
  .modal .cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(217,52,43,.45)}
  .modal .cta:hover::after{left:130%}

  /* FAQ */
  .faq{padding:88px 0;background:rgba(255,255,255,.10)}
  .faq details{background:rgba(10,12,16,.45);border:1px solid var(--line);border-left:3px solid var(--yellow);margin-bottom:12px}
  .faq summary{cursor:pointer;padding:18px 20px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:15px;color:#fff;list-style:none;position:relative;padding-right:44px}
  .faq summary::after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--yellow)}
  .faq details[open] summary::after{content:'–'}
  .faq .a{padding:0 20px 18px;font-size:14px;color:#E4E6E9;line-height:1.7}

  footer{background:linear-gradient(90deg, rgba(94,18,12,.9), rgba(74,54,6,.9), rgba(12,46,69,.9));color:#D5D8DC;padding:54px 0 26px;font-size:13.5px;border-top:2px solid var(--red)}
  .foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;margin-bottom:36px}
  footer h4{font-family:'Oswald',sans-serif;color:var(--yellow);text-transform:uppercase;font-size:14px;margin-bottom:12px;letter-spacing:.08em}
  footer a{color:#D5D8DC;text-decoration:none}
  footer a:hover{color:var(--yellow)}
  .foot-brand img{height:50px;margin-bottom:12px}
  .foot-base{border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;opacity:.8}

/* ---- páginas interiores ---- */
.page-hero{position:relative;min-height:320px;display:flex;align-items:flex-end;background-size:cover;background-position:center}
.page-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,14,.15),rgba(10,10,14,.72))}
.page-hero .wrap{position:relative;padding-bottom:44px;padding-top:120px}
.page-hero h1{font-size:clamp(30px,5vw,52px);color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.6)}
.page-hero .crumb{font-size:13px;color:#FFE9A8;margin-bottom:8px}
.page-hero .crumb a{color:#FFE9A8;text-decoration:none}
.content{padding:70px 0}
.content .lead{font-size:18px;max-width:760px;line-height:1.75;color:#F5F6F8}
.content h2{font-size:clamp(22px,3vw,32px);color:#fff;margin:44px 0 18px}
.content p{max-width:760px;margin-bottom:16px;color:#EDEff2;line-height:1.75}
.benefits{margin:26px 0;padding:0;list-style:none;max-width:760px}
.benefits li{padding:13px 0 13px 34px;position:relative;border-bottom:1px solid rgba(255,255,255,.14);color:#F2F3F5;line-height:1.65}
.benefits li::before{content:'✔';position:absolute;left:0;top:13px;color:var(--yellow);font-weight:700}
.media-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:36px 0}
.media-row img,.media-row video{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.18)}
.cta-inline{margin-top:40px}
