
  :root{
    --bg: #111214;
    --panel: #1A1C1F;
    --line: rgba(255,255,255,0.09);
    --line-strong: rgba(255,255,255,0.16);
    --gold: #E8722A;
    --gold-light: #F4934A;
    --text: #F5F3EE;
    --muted: #8C8B87;
    --muted-2: #605F5B;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg); color:var(--text);
    font-family:'Inter',sans-serif; line-height:1.65;
    overflow-x:hidden; -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3{ font-family:'Montserrat',sans-serif; font-weight:500; letter-spacing:-0.01em; line-height:1.12; }
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:1140px; margin:0 auto; padding:0 32px;}
  ::selection{background:var(--gold); color:#0A0A0B;}
  a:focus-visible, button:focus-visible{outline:1px solid var(--gold-light); outline-offset:3px;}

  .reveal{opacity:0; transform:translateY(30px); transition:opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);}
  .reveal-left{opacity:0; transform:translateX(-40px); transition:opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);}
  .reveal-right{opacity:0; transform:translateX(40px); transition:opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);}
  .reveal-up{opacity:0; transform:translateY(40px); transition:opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);}
  
  .is-visible{opacity:1; transform:translate(0,0);}
  
  @media (prefers-reduced-motion: reduce){ 
    .reveal, .reveal-left, .reveal-right, .reveal-up{opacity:1; transform:none; transition:none;} 
  }

  /* ---------- NAV ---------- */
  header{position:fixed; top:0; left:0; right:0; z-index:100; transition:background .4s ease, border-color .4s ease;}
  header.scrolled{background:rgba(10,10,11,0.88); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); box-shadow:0 10px 30px rgba(0,0,0,0.5);}
  nav{display:flex; align-items:center; justify-content:space-between; padding:18px 32px; max-width:1140px; margin:0 auto;}
  .nav-logo img{height:30px; width:auto;}
  .nav-cta{
    font-size:13px; font-weight:500; letter-spacing:0.02em;
    color:var(--text); border:1px solid rgba(255,255,255,0.3);
    padding:11px 22px; transition:all .25s ease;
  }
  .nav-cta:hover{border-color:var(--gold); color:var(--gold-light);}
  
  .menu-toggle, .close-menu {
    background:transparent; border:none; cursor:pointer; padding:4px;
    display:flex; align-items:center; justify-content:center;
    transition:transform .25s ease;
  }
  .menu-toggle:hover, .close-menu:hover { transform:scale(1.1); }
  
  .menu-overlay {
    position:fixed; inset:0; background:rgba(10,10,11,0.98); z-index:200;
    display:flex; align-items:center; justify-content:center;
    opacity:0; pointer-events:none; transition:opacity .3s ease;
    backdrop-filter:blur(10px);
  }
  .menu-overlay.open { opacity:1; pointer-events:auto; }
  .close-menu { position:absolute; top:24px; right:32px; }
  .menu-links { list-style:none; text-align:center; }
  .menu-links li { margin-bottom:30px; }
  .menu-link {
    font-size:26px; font-family:'Montserrat',sans-serif; font-weight:400;
    color:var(--text); transition:color .3s ease;
  }
  .menu-link:hover { color:var(--gold); }

  /* ---------- HERO ---------- */
  .hero{
    position:relative; min-height:100vh; display:flex; align-items:flex-end;
    background:#050506; overflow:hidden;
  }
  .hero-slider {
    position:absolute; inset:0; z-index:0;
    background:#050506;
  }
  .hero-slide {
    position:absolute; inset:0; opacity:0;
    transition:opacity 1.5s ease-in-out;
    background-size:cover; background-position:center;
    filter:saturate(0.85);
  }
  .hero-slide.active { opacity:1; }
  .hero-overlay {
    position:absolute; inset:0; z-index:1;
    background:linear-gradient(180deg, transparent 0%, transparent 60%, rgba(5,5,6,0.95) 100%);
  }
  .hero-content{position:relative; z-index:2; padding:0 32px 48px; max-width:1140px; margin:0 auto; width:100%; display:flex; flex-direction:column; align-items:center; text-align:center;}
  .hero-minimal-text {
    font-size:15px; letter-spacing:0.18em; text-transform:uppercase;
    color:var(--gold-light); font-weight:400; margin-bottom:24px;
  }
  .hero-actions{display:flex; align-items:center; justify-content:center; gap:28px; flex-wrap:wrap;}
  .btn-primary{
    display:inline-flex; align-items:center; gap:10px; justify-content:center;
    background:transparent; color:#FFF; font-weight:400; font-size:13px;
    padding:12px 28px; transition:all .3s ease;
    letter-spacing:0.04em; border:1px solid rgba(255,255,255,0.3); border-radius:0; text-transform:uppercase;
  }
  .btn-primary:hover{border-color:var(--gold); color:var(--gold-light);}
  .hero-badge{
    display:flex; align-items:center; gap:12px;
    padding:10px 20px; border:1px solid rgba(255,255,255,0.15);
    border-radius:0; font-size:12.5px; color:var(--muted);
  }
  .hero-badge svg{width:18px; height:18px;}
  .hero-badge span{color:var(--gold-light); font-weight:600;}

  /* ---------- MANIFESTO ---------- */
  .manifesto{padding:130px 0 110px; text-align:center;}
  .manifesto .wrap{max-width:760px;}
  .manifesto .section-tag{
    font-size:11.5px; letter-spacing:0.22em; text-transform:uppercase;
    color:var(--gold-light); font-weight:500; margin-bottom:28px; display:block;
  }
  .manifesto h2{font-size:clamp(1.7rem,3.4vw,2.5rem); font-weight:400; margin-bottom:28px;}
  .manifesto h2 em{font-style:italic; color:var(--gold-light);}
  .manifesto p{color:var(--muted); font-size:16.5px; font-weight:300; max-width:600px; margin:0 auto;}
  .manifesto-stats{
    display:flex; justify-content:center; gap:64px; margin-top:60px; flex-wrap:wrap;
  }
  .stat{text-align:center;}
  .stat .num{font-family:'Montserrat',sans-serif; font-size:2.2rem; color:var(--gold-light); font-weight:500;}
  .stat .label{font-size:12px; color:var(--muted); letter-spacing:0.04em; margin-top:6px;}

  /* ---------- SOLUTIONS INDEX (signature) ---------- */
  .solutions{padding:0 0 130px;}
  .solutions .section-head{margin-bottom:64px; text-align:center;}
  .solutions .section-tag{
    font-size:11.5px; letter-spacing:0.22em; text-transform:uppercase;
    color:var(--gold-light); font-weight:500; margin-bottom:20px; display:block;
  }
  .solutions h2{font-size:clamp(1.7rem,3.4vw,2.5rem); font-weight:400; max-width:640px; margin:0 auto;}

  .service-blocks{display:flex; flex-direction:column; gap:100px; padding-top:20px;}
  .s-block{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;}
  .s-block:nth-child(even) .s-block-content{grid-column: 1; grid-row: 1;}
  .s-block:nth-child(even) .s-block-images{grid-column: 2; grid-row: 1;}
  .s-block-img{position:relative; width:100%; border-radius:4px; overflow:hidden;}
  .s-block-img img{width:100%; height:auto; display:block; object-fit:cover;}
  .s-block-content{padding:20px 0;}
  .s-block-tag{font-size:12px; color:var(--gold-light); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:16px; display:block;}
  .s-block-title{font-size:clamp(1.5rem,3vw,2.2rem); margin-bottom:18px;}
  .s-block-desc{font-size:15.5px; color:var(--muted); font-weight:300; margin-bottom:28px;}
  .s-block-list{list-style:none; display:flex; flex-wrap:wrap; gap:12px 20px;}
  .s-block-list li{font-size:13.5px; color:var(--muted); position:relative; padding-left:14px;}
  .s-block-list li::before{content:''; position:absolute; left:0; top:8px; width:5px; height:5px; background:var(--gold); border-radius:50%;}
  .s-block-images{display:flex; flex-direction:column; gap:20px;}

  /* ---------- SCROLL DOTS ---------- */
  .scroll-dots{
    position:fixed; right:30px; top:50%; transform:translateY(-50%);
    display:flex; flex-direction:column; gap:16px; z-index:90;
  }
  .scroll-dot{
    width:10px; height:10px; border-radius:50%; border:1px solid rgba(255,255,255,0.3);
    cursor:pointer; transition:all 0.3s ease; background:transparent; padding:0; outline:none;
  }
  .scroll-dot.active{background:var(--gold); border-color:var(--gold); transform:scale(1.3);}
  .scroll-dot:hover{border-color:var(--gold-light);}

  /* ---------- W-AI SECTION ---------- */
  .wai-section{background:var(--panel); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .wai-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:64px; align-items:center;}
  .wai-photo{position:relative;}
  .wai-photo img{width:100%; border-radius:4px;}
  .wai-grid h2{font-size:clamp(1.7rem,3.2vw,2.4rem); font-weight:400; margin-bottom:20px;}
  .wai-grid h2 em{font-style:italic; color:var(--gold-light);}
  .wai-grid p{color:var(--muted); font-size:15.5px; font-weight:300; margin-bottom:16px; max-width:480px;}
  .wai-example{
    margin-top:24px; border:1px solid var(--line-strong); padding:22px 26px;
    font-size:14px; color:var(--muted); font-style:italic; max-width:480px;
  }
  .wai-example strong{color:var(--gold-light); font-style:normal; font-weight:500;}

  /* ---------- KEYPAD DESIGN SECTION ---------- */
  .keypad-section .section-head{text-align:center; margin-bottom:56px;}
  .keypad-grid{display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--line); border:1px solid var(--line);}
  .keypad-item{background:var(--bg); position:relative;}
  .keypad-item img{width:100%; height:380px; object-fit:cover;}
  .keypad-item-caption{padding:20px 26px;}
  .keypad-item-caption span{font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold-light); font-weight:600; display:block; margin-bottom:8px;}
  .keypad-item-caption p{font-size:13.5px; color:var(--muted); font-weight:300;}

  /* ---------- FULL-BLEED BREAK ---------- */
  .break-photo{position:relative; height:56vh; min-height:380px; overflow:hidden;}
  .break-photo img{width:100%; height:100%; object-fit:cover; filter:saturate(0.95) brightness(0.82);}
  .break-caption{
    position:absolute; bottom:34px; left:0; right:0; text-align:center;
    font-family:'Montserrat',sans-serif; font-style:italic; font-size:clamp(1.3rem,2.6vw,1.9rem);
    color:#fff; padding:0 32px;
  }

  /* ---------- DIFERENCIAIS ---------- */
  .diferenciais{padding:120px 0;}
  .dif-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line);}
  .dif-item{padding:44px 40px 0 0; border-right:1px solid var(--line); transition:transform .3s ease;}
  .dif-item:hover{transform:translateY(-8px);}
  .dif-item:last-child{border-right:none;}
  .dif-item .dif-num{font-family:'Montserrat',sans-serif; font-style:italic; color:var(--gold-light); font-size:16px; font-weight:500; margin-bottom:20px; display:block;}
  .dif-item h3{font-size:19px; font-weight:500; margin-bottom:14px;}
  .dif-item p{font-size:14.5px; color:var(--muted); font-weight:300;}

  /* ---------- PROCESS (minimal inline) ---------- */
  .process{padding:0 0 120px;}
  .process-inline{
    display:flex; align-items:flex-start; justify-content:space-between;
    border-top:1px solid var(--line); padding-top:48px; gap:24px;
  }
  .process-inline-item{flex:1; position:relative;}
  .process-inline-item .p-label{font-size:12px; color:var(--gold-light); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:12px; display:block;}
  .process-inline-item h4{font-size:16.5px; font-weight:500; margin-bottom:8px; font-family:'Montserrat',sans-serif;}
  .process-inline-item p{font-size:13.5px; color:var(--muted); font-weight:300; max-width:230px;}

  /* ---------- FINAL CTA ---------- */
  .final-cta{padding:130px 0 110px; text-align:center; border-top:1px solid var(--line);}
  .final-cta .section-tag{font-size:11.5px; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-light); font-weight:500; margin-bottom:26px; display:block;}
  .final-cta h2{font-size:clamp(1.9rem,4.2vw,3rem); font-weight:400; max-width:680px; margin:0 auto 26px;}
  .final-cta h2 em{font-style:italic; color:var(--gold-light);}
  .final-cta p{color:var(--muted); font-size:16px; font-weight:300; max-width:480px; margin:0 auto 42px;}
  .final-phone{margin-top:26px; font-size:13.5px; color:var(--muted);}
  .final-phone strong{color:var(--text); font-family:'Montserrat',sans-serif; font-size:17px; font-style:italic; font-weight:500;}

  /* ---------- FOOTER ---------- */
  footer{border-top:1px solid var(--line); padding:56px 0 30px;}
  .footer-row{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:32px; margin-bottom:36px;}
  .footer-logo img{height:26px;}
  .footer-links{display:flex; gap:48px; flex-wrap:wrap;}
  .footer-col h4{font-size:11px; text-transform:uppercase; letter-spacing:0.12em; color:var(--muted-2); margin-bottom:14px; font-weight:600;}
  .footer-col a, .footer-col span{display:block; font-size:14px; color:var(--muted); margin-bottom:9px; transition:color .2s ease;}
  .footer-col a:hover{color:var(--gold-light);}
  .footer-bottom{
    border-top:1px solid var(--line); padding-top:22px;
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
    font-size:11.5px; color:var(--muted-2);
  }

  /* ---------- WHATSAPP FLOAT ---------- */
  @keyframes pulseWa {
    0% { box-shadow: 0 0 0 0 rgba(232,114,42,0.6); }
    70% { box-shadow: 0 0 0 15px rgba(232,114,42,0); }
    100% { box-shadow: 0 0 0 0 rgba(232,114,42,0); }
  }
  .wa-float{
    position:fixed; bottom:26px; right:26px; z-index:90;
    background:var(--gold); color:#FFF; width:56px; height:56px;
    border-radius:50%; display:flex; align-items:center; justify-content:center;
    box-shadow:0 14px 34px -12px rgba(232,114,42,0.55);
    transition:transform .2s ease;
    animation: pulseWa 2s infinite;
  }
  .wa-float:hover{transform:scale(1.1);}
  .wa-float svg{fill:#FFF; width:28px; height:28px;}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:900px){
    .wai-grid{grid-template-columns:1fr; gap:32px;}
    .keypad-grid{grid-template-columns:1fr;}
    .s-block{grid-template-columns:1fr; gap:40px;}
    .s-block:nth-child(even) .s-block-content{grid-column: 1; grid-row: 2;}
    .s-block:nth-child(even) .s-block-images{grid-column: 1; grid-row: 1;}
    .dif-grid{grid-template-columns:1fr; }
    .dif-item{border-right:none; border-bottom:1px solid var(--line); padding:36px 0;}
    .dif-item:first-child{padding-top:0;}
    .process-inline{flex-direction:column; gap:32px;}
    .process-inline-item p{max-width:none;}
    .manifesto-stats{gap:36px;}
    .footer-row{flex-direction:column;}
  }
  @media (max-width:560px){
    .hero{min-height:92vh;}
    .hero-actions{flex-direction:column; align-items:flex-start; gap:18px;}
    .footer-links{gap:28px;}
    .scroll-dots{right:10px; transform:translateY(-50%) scale(0.8);}
  }
