    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
    body { font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; background: linear-gradient(180deg, #0a0a0a 0%, #0d0d0d 50%, #0a0a0a 100%); color: #f0f0f0; overflow-x: hidden; }

    :root {
      --bg:         linear-gradient(180deg, #0a0a0a 0%, #0d0d0d 100%);
      --bg2:        linear-gradient(180deg, #131313 0%, #0e0e0e 100%);
      --card:       linear-gradient(145deg, #1a1a1a 0%, #141414 100%);
      --card2:      linear-gradient(145deg, #202020 0%, #191919 100%);
      --border:     #2a2a2a;
      --border2:    #333333;
      --text:       #f0f0f0;
      --muted:      #888888;
      --sub:        #b0b0b0;
      --gold:       #D4A017;
      --gold-light: #F0C040;
      --gold-dark:  #B8860B;
      --gold-bg:    rgba(212,160,23,0.08);
      --gold-bg2:   rgba(212,160,23,0.14);
    }

    h1,h2,h3 { font-weight: 600; line-height: 1.1; }
    p { line-height: 1.6; }
    a { text-decoration: none; color: inherit; }
    img { max-width: 100%; display: block; }

    .editorial { font-family: 'Montserrat', sans-serif; font-weight: 800; letter-spacing: -.01em; }

    .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 80px; }
    @media(max-width:768px){ .container { padding: 0 20px; } }

    /* ── LANG TOGGLE ── */
    .lang-pt .en, .lang-en .pt { display: none !important; }

    /* ── NAV ── */
    nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 100;
      background: rgba(10,10,10,.96); backdrop-filter: blur(20px);
      border-bottom: 1px solid var(--border);
    }
    .nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 68px; }

    .logo { display: flex; align-items: center; gap: 10px; cursor: pointer; flex-shrink: 0; }
    .logo-svg { width: 38px; height: 38px; flex-shrink: 0; }
    .logo-text { display: flex; flex-direction: column; line-height: 1; }
    .logo-text strong { font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #fff; }
    .logo-text span { font-size: 9px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); margin-top: 2px; }

    .nav-links { display: none; list-style: none; gap: 28px; align-items: center; }
    @media(min-width:900px){ .nav-links { display: flex; } }
    .nav-links a { font-size: 14px; font-weight: 500; color: var(--sub); transition: color .15s; }
    .nav-links a:hover { color: #fff; }

    .nav-right { display: none; gap: 8px; align-items: center; }
    @media(min-width:900px){ .nav-right { display: flex; } }

    .btn-phone-nav {
      display: flex; align-items: center; gap: 7px;
      padding: 9px 16px; border: 1px solid var(--border2); border-radius: 8px;
      font-size: 13px; font-weight: 600; color: var(--gold); transition: border-color .15s, background .15s;
      white-space: nowrap;
    }
    .btn-phone-nav:hover { border-color: var(--gold); background: var(--gold-bg); }
    .btn-phone-nav svg { width: 14px; height: 14px; stroke: var(--gold); fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }

    .btn-wa-nav {
      display: flex; align-items: center; gap: 8px;
      padding: 9px 18px; background: #25D366; border-radius: 8px; border: none;
      font-family: 'Inter', sans-serif; font-weight: 600; font-size: 13px; color: #fff;
      cursor: pointer; transition: opacity .15s; white-space: nowrap;
    }
    .btn-wa-nav:hover { opacity: .88; }
    .btn-wa-nav svg { width: 16px; height: 16px; fill: #fff; }

    .lang-btn {
      padding: 7px 12px; background: var(--card); border: 1px solid var(--border2); border-radius: 6px;
      font-size: 12px; font-weight: 700; letter-spacing: .05em; color: var(--sub);
      cursor: pointer; transition: color .15s, border-color .15s; white-space: nowrap;
    }
    .lang-btn:hover { color: #fff; border-color: var(--border2); }

    .hamburger { display: flex; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 4px; }
    .hamburger span { display: block; width: 22px; height: 2px; background: #fff; border-radius: 2px; transition: transform .3s, opacity .3s; }
    .hamburger.open span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
    .hamburger.open span:nth-child(2){ opacity: 0; }
    .hamburger.open span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }
    @media(min-width:900px){ .hamburger { display: none; } }

    .mobile-menu {
      position: fixed; left: 0; right: 0; z-index: 99; top: 68px;
      background: rgba(10,10,10,.99); backdrop-filter: blur(20px);
      border-bottom: 1px solid var(--border); padding: 20px 20px 28px;
      display: flex; flex-direction: column; gap: 4px;
      transform: translateY(-110%); transition: transform .3s ease;
    }
    .mobile-menu.open { transform: translateY(0); }
    .mobile-menu a, .mobile-menu button { font-weight: 500; font-size: 15px; color: var(--sub); padding: 13px 0; border-bottom: 1px solid var(--border); transition: color .15s; background: none; border-left: none; border-right: none; border-top: none; font-family: 'Inter', sans-serif; text-align: left; cursor: pointer; }
    .mobile-menu a:last-child { border: none; margin-top: 8px; text-align: center; padding: 14px; background: #25D366; color: #fff; border-radius: 8px; font-size: 14px; font-weight: 600; }

    /* ── BUTTONS ── */
    .btn-gold {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 28px; background: var(--gold); color: #000;
      font-family: inherit; font-weight: 700; font-size: 15px;
      border-radius: 10px; border: none; cursor: pointer;
      transition: background .15s; white-space: nowrap;
    }
    .btn-gold:hover { background: var(--gold-light); }
    .btn-gold svg { width: 18px; height: 18px; }

    .btn-wa {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 28px; background: #25D366; color: #fff;
      font-family: inherit; font-weight: 700; font-size: 15px;
      border-radius: 10px; border: none; cursor: pointer;
      transition: opacity .15s; white-space: nowrap;
    }
    .btn-wa:hover { opacity: .88; }
    .btn-wa svg { width: 18px; height: 18px; fill: #fff; }

    .btn-outline {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 28px; background: transparent; color: #fff;
      font-family: inherit; font-weight: 600; font-size: 15px;
      border-radius: 10px; border: 1px solid var(--border2); cursor: pointer;
      transition: border-color .15s, background .15s; white-space: nowrap;
    }
    .btn-outline:hover { border-color: var(--gold); background: var(--gold-bg); }
    .btn-outline svg { width: 18px; height: 18px; flex-shrink: 0; }

    /* ── SECTIONS ── */
    section { padding: 88px 0; }
    @media(max-width:768px){ section { padding: 64px 0; } }
    .section-eyebrow { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); margin-bottom: 12px; display: block; }
    .section-title { font-family: 'Montserrat', sans-serif; font-size: clamp(32px,5vw,52px); font-weight: 800; letter-spacing: -.01em; line-height: 1.12; letter-spacing: -.5px; color: #fff; margin-bottom: 16px; }
    .section-sub { font-size: 16px; color: var(--sub); line-height: 1.6; font-weight: 400; }

    /* ── HERO ── */
    #hero {
      min-height: 100vh; min-height: 100svh; display: flex; align-items: center;
      padding: 108px 0 64px; position: relative; overflow: hidden;
    }
    .hero-bg {
      position: absolute; inset: 0; z-index: 0;
      background: radial-gradient(ellipse 70% 60% at 70% 50%, rgba(212,160,23,.07) 0%, transparent 70%),
                  radial-gradient(ellipse 40% 40% at 20% 80%, rgba(212,160,23,.04) 0%, transparent 60%);
    }
    .hero-bg-img {
      position: absolute; inset: 0; z-index: 0;
      background-image: url('https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=1400&q=60&fit=crop&auto=format');
      background-size: cover; background-position: center;
      opacity: .06; filter: grayscale(100%);
    }
    .hero-layout { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr; gap: 48px; align-items: center; }
    @media(min-width:960px){ .hero-layout { grid-template-columns: 1fr 440px; gap: 56px; } }

    .hero-badge {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--gold-bg2); border: 1px solid rgba(212,160,23,.3);
      border-radius: 100px; padding: 6px 14px; margin-bottom: 24px;
    }
    .hero-badge-dot { width: 7px; height: 7px; background: #25D366; border-radius: 50%; animation: pulse 2s ease-in-out infinite; }
    @keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(.8)} }
    .hero-badge span { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gold); }

    .hero-title {
      font-family: 'Montserrat', sans-serif;
      font-size: clamp(48px,7.5vw,80px); font-weight: 800; line-height: 1.05;
      letter-spacing: -1.5px; margin-bottom: 24px; color: #fff;
    }
    .hero-title em { font-style: normal; font-weight: 900; color: var(--gold); }
    .hero-sub { font-size: 18px; color: var(--sub); max-width: 520px; line-height: 1.65; margin-bottom: 36px; }
    .hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 44px; }

    .hero-trust { display: flex; flex-wrap: wrap; gap: 20px; }
    .trust-pill {
      display: flex; align-items: center; gap: 8px;
      background: var(--card); border: 1px solid var(--border); border-radius: 100px;
      padding: 8px 16px;
    }
    .trust-pill svg { width: 16px; height: 16px; stroke: var(--gold); fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
    .trust-pill span { font-size: 12px; font-weight: 600; color: var(--sub); white-space: nowrap; }

    /* Hero Right - Cards */
    .hero-right { display: none; flex-direction: column; gap: 10px; }
    @media(min-width:960px){ .hero-right { display: flex; } }

    .hcard-img {
      border-radius: 16px; overflow: hidden; height: 220px; position: relative;
      background: var(--card);
    }
    .hcard-img img { width: 100%; height: 100%; object-fit: cover; }
    .hcard-img-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(0,0,0,.7) 0%, transparent 60%);
    }
    .hcard-img-label {
      position: absolute; bottom: 16px; left: 16px;
      font-size: 12px; font-weight: 700; color: #fff; letter-spacing: .06em; text-transform: uppercase;
    }

    .hcard-stat-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
    .hcard-stat {
      background: var(--card2); border: 1px solid var(--border); border-radius: 14px;
      padding: 20px; display: flex; flex-direction: column; gap: 4px;
    }
    .hcard-stat-num { font-family: 'Montserrat', sans-serif; font-size: 36px; font-weight: 800; color: var(--gold); line-height: 1; letter-spacing: -1px; }
    .hcard-stat-lbl { font-size: 11px; font-weight: 600; color: var(--muted); letter-spacing: .06em; text-transform: uppercase; }

    .hcard-dark {
      background: linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 100%); border-radius: 14px; padding: 20px 24px;
      display: flex; justify-content: space-between; align-items: center;
    }
    .hcard-dark-text { font-size: 14px; font-weight: 700; color: #000; line-height: 1.4; max-width: 200px; }
    .hcard-dark-icon { width: 40px; height: 40px; background: rgba(0,0,0,.12); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
    .hcard-dark-icon svg { width: 22px; height: 22px; stroke: #000; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }

    /* ── URGENCY BAR ── */
    #urgency {
      background: linear-gradient(90deg, var(--gold-dark) 0%, var(--gold) 50%, var(--gold-light) 100%); padding: 12px 0;
      border-top: 1px solid rgba(0,0,0,.1);
    }
    .urgency-inner { display: flex; align-items: center; justify-content: center; gap: 20px; flex-wrap: wrap; }
    .urgency-item { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: #000; }
    .urgency-item svg { width: 16px; height: 16px; stroke: #000; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
    .urgency-sep { width: 1px; height: 16px; background: rgba(0,0,0,.2); }

    /* ── COVERAGE MARQUEE ── */
    .coverage-marquee {
      background: #050505; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
      overflow: hidden; white-space: nowrap; padding: 16px 0;
    }
    .coverage-track { display: inline-flex; width: max-content; animation: marquee-scroll 30s linear infinite; }
    .coverage-set { display: inline-flex; align-items: center; }
    .coverage-set span:not(.coverage-dot) {
      font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 22px; letter-spacing: -.01em;
      color: #fff; padding: 0 20px; text-transform: uppercase;
    }
    .coverage-set span.coverage-gold { color: var(--gold); }
    .coverage-dot { color: var(--gold); font-size: 14px; }
    @keyframes marquee-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
    @media(prefers-reduced-motion: reduce){ .coverage-track { animation: none; } }
    @media(max-width:768px){
      .coverage-set span:not(.coverage-dot) { font-size: 17px; padding: 0 14px; }
      .coverage-marquee { padding: 12px 0; }
      .coverage-track { animation-duration: 24s; }
    }

    /* ── SERVICES ── */
    #servicos { background: var(--bg2); }
    .services-header { display: grid; grid-template-columns: 1fr; gap: 32px; margin-bottom: 56px; }
    @media(min-width:768px){ .services-header { grid-template-columns: 1fr 1fr; gap: 48px; align-items: end; } }
    .services-header-cta { display: flex; justify-content: flex-start; }
    @media(min-width:768px){ .services-header-cta { justify-content: flex-end; align-items: flex-end; } }

    .svc-grid { display: grid; grid-template-columns: 1fr; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; margin-bottom: 24px; }
    @media(min-width:640px){ .svc-grid { grid-template-columns: 1fr 1fr; } }

    /* ── NUKI BANNER ── */
    .nuki-banner {
      background: var(--card); border: 1px solid var(--border2); border-radius: 16px;
      padding: 36px; display: grid; grid-template-columns: 1fr; gap: 28px; align-items: center;
    }
    @media(min-width:800px){ .nuki-banner { grid-template-columns: 1.2fr 1fr; padding: 40px 44px; } }
    .nuki-badge {
      display: inline-block; font-family: var(--mono, ui-monospace, monospace); font-size: 11px; font-weight: 800;
      letter-spacing: .1em; color: #000; background: var(--gold); padding: 4px 10px; border-radius: 4px; margin-bottom: 14px;
    }
    .nuki-info h3 { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: clamp(20px,2.6vw,26px); color: #fff; margin-bottom: 10px; }
    .nuki-info p { font-size: 14px; color: var(--sub); line-height: 1.6; max-width: 420px; }
    .nuki-price-box {
      background: var(--card2); border: 1px solid var(--border); border-radius: 12px; padding: 24px;
    }
    .nuki-price { font-size: 14px; color: var(--sub); margin-bottom: 4px; }
    .nuki-price strong { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 30px; color: var(--gold); margin-left: 6px; }
    .nuki-includes { list-style: none; margin: 14px 0 20px; display: flex; flex-direction: column; gap: 7px; }
    .nuki-includes li { font-size: 13px; color: var(--sub); padding-left: 18px; position: relative; }
    .nuki-includes li::before { content: '✓'; position: absolute; left: 0; color: var(--gold); font-weight: 700; }
    .nuki-price-box .btn-wa { width: 100%; justify-content: center; }

    .svc-card { background: var(--bg2); padding: 32px 28px; transition: background .2s; }
    .svc-card:hover { background: var(--card2); }
    .svc-card--gold { background: var(--gold) !important; }
    .svc-card--gold:hover { background: var(--gold-light) !important; }
    .svc-card--gold .svc-num { color: rgba(0,0,0,.5); }
    .svc-card--gold h3 { color: #000; }
    .svc-card--gold p { color: rgba(0,0,0,.65); }
    .svc-card--gold .svc-icon { background: rgba(0,0,0,.1); }
    .svc-card--gold .svc-icon svg { stroke: #000; }

    .svc-icon { width: 44px; height: 44px; background: var(--card); border-radius: 10px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
    .svc-icon svg { width: 22px; height: 22px; stroke: var(--gold); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .svc-num { font-size: 11px; font-weight: 700; color: var(--gold); letter-spacing: .1em; margin-bottom: 10px; }
    .svc-card h3 { font-size: 16px; font-weight: 700; color: #fff; margin-bottom: 8px; line-height: 1.3; }
    .svc-card p { font-size: 13px; color: var(--sub); line-height: 1.65; }

    /* ── WHY US ── */
    #porque { background: var(--bg); }
    .why-layout { display: grid; grid-template-columns: 1fr; gap: 16px; }
    @media(min-width:960px){ .why-layout { grid-template-columns: 1fr 1fr; gap: 16px; align-items: stretch; } }

    .why-left {
      background: var(--card); border: 1px solid var(--border); border-radius: 16px;
      overflow: hidden; display: flex; flex-direction: column;
    }
    .why-left-img { height: 260px; position: relative; overflow: hidden; }
    .why-left-img img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(40%); }
    .why-left-img::after {
      content: ''; position: absolute; inset: 0;
      background: linear-gradient(to bottom, rgba(10,10,10,0) 40%, rgba(10,10,10,.9) 100%);
    }
    .why-left-content { padding: 32px; flex: 1; }
    .why-left-content h3 { font-family: 'Montserrat', sans-serif; font-size: clamp(24px,3vw,36px); font-weight: 800; color: #fff; line-height: 1.2; margin-bottom: 16px; }
    .why-left-content p { font-size: 15px; color: var(--sub); line-height: 1.7; }
    .why-left-bottom { padding: 24px 32px; border-top: 1px solid var(--border); display: flex; gap: 12px; align-items: center; }
    .why-badge { display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: var(--gold); }
    .why-badge svg { width: 14px; height: 14px; stroke: var(--gold); fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }

    .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .why-card {
      background: var(--card); border: 1px solid var(--border); border-radius: 16px;
      padding: 28px 24px; display: flex; flex-direction: column; gap: 12px;
    }
    .why-card-icon { width: 44px; height: 44px; background: var(--gold-bg2); border: 1px solid rgba(212,160,23,.2); border-radius: 10px; display: flex; align-items: center; justify-content: center; }
    .why-card-icon svg { width: 22px; height: 22px; stroke: var(--gold); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .why-card h4 { font-size: 15px; font-weight: 700; color: #fff; line-height: 1.3; }
    .why-card p { font-size: 13px; color: var(--sub); line-height: 1.6; }

    /* ── FAQ ── */
    #faq { background: var(--bg); }
    .faq-layout { display: grid; grid-template-columns: 1fr; gap: 48px; }
    @media(min-width:900px){ .faq-layout { grid-template-columns: 380px 1fr; gap: 72px; } }
    .faq-left h2 { font-family: 'Montserrat', sans-serif; font-size: clamp(28px,4vw,44px); font-weight: 800; color: #fff; margin-bottom: 16px; line-height: 1.15; }
    .faq-left p { font-size: 15px; color: var(--sub); line-height: 1.65; margin-bottom: 32px; }

    .faq-item { border-bottom: 1px solid var(--border); }
    .faq-item:first-child { border-top: 1px solid var(--border); }
    .faq-q {
      width: 100%; display: flex; justify-content: space-between; align-items: center;
      padding: 20px 0; background: none; border: none;
      color: #fff; font-family: inherit; font-size: 15px; font-weight: 600;
      cursor: pointer; text-align: left; gap: 16px; line-height: 1.4;
    }
    .faq-q:hover { color: var(--gold); }
    .faq-ico { width: 22px; height: 22px; flex-shrink: 0; transition: transform .25s; background: var(--card); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
    .faq-ico svg { width: 14px; height: 14px; stroke: var(--gold); fill: none; stroke-width: 2.5; stroke-linecap: round; }
    .faq-item.open .faq-ico { transform: rotate(45deg); background: var(--gold); }
    .faq-item.open .faq-ico svg { stroke: #000; }
    .faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
    .faq-a-inner { padding: 0 0 20px; font-size: 14px; color: var(--sub); line-height: 1.7; }

    /* ── CTA FINAL ── */
    #cta-final { background: var(--bg2); padding: 16px; }
    .cta-block {
      background: linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 55%, var(--gold-dark) 100%); border-radius: 20px; padding: 64px 56px;
      display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
      position: relative; overflow: hidden;
    }
    .cta-block::before {
      content: ''; position: absolute; top: -40px; right: -40px;
      width: 200px; height: 200px; background: rgba(0,0,0,.06); border-radius: 50%;
    }
    .cta-block::after {
      content: ''; position: absolute; bottom: -60px; left: 30%;
      width: 300px; height: 300px; background: rgba(0,0,0,.04); border-radius: 50%;
    }
    .cta-text { position: relative; z-index: 1; }
    .cta-title { font-family: 'Montserrat', sans-serif; font-size: clamp(28px,4.5vw,52px); font-weight: 800; color: #000; line-height: 1.15; letter-spacing: -.5px; margin-bottom: 10px; }
    .cta-sub { font-size: 16px; color: rgba(0,0,0,.65); }
    .cta-actions { display: flex; gap: 12px; flex-wrap: wrap; position: relative; z-index: 1; }
    .btn-cta-dark {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 28px; background: #000; color: #fff;
      font-family: inherit; font-weight: 700; font-size: 15px;
      border-radius: 10px; border: none; cursor: pointer; transition: opacity .15s; white-space: nowrap;
    }
    .btn-cta-dark:hover { opacity: .82; }
    .btn-cta-dark svg { width: 18px; height: 18px; fill: #fff; }
    .btn-cta-outline-dark {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 28px; background: transparent; color: #000;
      font-family: inherit; font-weight: 700; font-size: 15px;
      border-radius: 10px; border: 2px solid rgba(0,0,0,.3); cursor: pointer;
      transition: border-color .15s, background .15s; white-space: nowrap;
    }
    .btn-cta-outline-dark:hover { border-color: #000; background: rgba(0,0,0,.08); }
    .btn-cta-outline-dark svg { width: 16px; height: 16px; stroke: #000; fill: none; stroke-width: 2.5; stroke-linecap: round; }
    @media(max-width:768px){ .cta-block { padding: 48px 28px; flex-direction: column; align-items: flex-start; } }

    /* ── FOOTER ── */
    footer { background: linear-gradient(180deg, #060606 0%, #0a0a0a 100%); border-top: 1px solid var(--border); }
    .footer-inner { padding: 56px 80px 40px; }
    @media(max-width:768px){ .footer-inner { padding: 40px 20px 32px; } }
    .footer-grid { display: grid; grid-template-columns: 1fr; gap: 40px; margin-bottom: 48px; }
    @media(min-width:640px){ .footer-grid { grid-template-columns: 2fr 1fr 1fr; gap: 48px; } }

    .footer-desc { font-size: 14px; color: var(--muted); line-height: 1.7; max-width: 300px; margin: 14px 0 20px; }
    .footer-contact-btn {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 10px 20px; background: #25D366; border-radius: 8px;
      font-size: 13px; font-weight: 700; color: #fff; transition: opacity .15s;
    }
    .footer-contact-btn:hover { opacity: .88; }
    .footer-contact-btn svg { width: 16px; height: 16px; fill: #fff; }

    .footer-col-title { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; }
    .footer-links { list-style: none; display: flex; flex-direction: column; gap: 10px; }
    .footer-links a { font-size: 14px; color: var(--muted); transition: color .15s; }
    .footer-links a:hover { color: #fff; }
    .footer-contact-item { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--muted); margin-bottom: 10px; }
    .footer-contact-item svg { width: 15px; height: 15px; flex-shrink: 0; margin-top: 2px; stroke: var(--gold); fill: none; stroke-width: 2; stroke-linecap: round; }
    .footer-contact-item a { color: var(--gold); transition: color .15s; }
    .footer-contact-item a:hover { color: var(--gold-light); }

    .footer-bottom { border-top: 1px solid var(--border); padding-top: 20px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; }
    .footer-copy { font-size: 12px; color: var(--muted); }
    .footer-legal { font-size: 12px; color: var(--muted); display: flex; gap: 16px; }
    .footer-legal a { transition: color .15s; }
    .footer-legal a:hover { color: #fff; }

    /* ── WHATSAPP FLOAT ── */
    .wa-float {
      position: fixed; bottom: 24px; right: 20px; z-index: 50;
      display: flex; flex-direction: column; align-items: flex-end; gap: 10px;
    }
    .wa-bubble {
      background: var(--card); border: 1px solid var(--border); border-radius: 12px;
      padding: 10px 14px; font-size: 12px; font-weight: 600; color: var(--sub);
      white-space: nowrap; animation: fadeInUp .4s ease;
      box-shadow: 0 4px 16px rgba(0,0,0,.4);
    }
    @keyframes fadeInUp { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
    .wa-btn {
      width: 56px; height: 56px; background: #25D366; border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 4px 20px rgba(37,211,102,.45); transition: transform .2s;
    }
    .wa-btn:hover { transform: scale(1.08); }
    .wa-btn svg { width: 30px; height: 30px; fill: #fff; }

    /* ── ANIMATIONS ── */
    .fade-up { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
    .fade-up.in { opacity: 1; transform: translateY(0); }
    .d1{ transition-delay:.1s; } .d2{ transition-delay:.2s; } .d3{ transition-delay:.3s; } .d4{ transition-delay:.4s; }

    /* ── GOLD DIVIDER ── */
    .gold-divider { height: 3px; background: linear-gradient(to right, var(--gold-dark), var(--gold), var(--gold-light), var(--gold), transparent); }

    /* ── MOBILE HERO STATS (shown only on mobile) ── */
    .hero-mobile-stats { display: none; }
    @media(max-width:959px){
      .hero-mobile-stats {
        display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 32px;
      }
      .hero-mobile-stats .hcard-stat {
        background: var(--card2); border: 1px solid var(--border); border-radius: 14px;
        padding: 16px 18px;
      }
      .hero-mobile-stats .hcard-stat-num { font-size: 30px; }
    }

    /* ── MOBILE HERO PHOTO (shown only on mobile) ── */
    .hero-mobile-photo { display: none; }
    @media(max-width:959px){
      .hero-mobile-photo {
        display: block; margin-top: 24px; border-radius: 16px; overflow: hidden;
        height: 200px; border: 1px solid var(--border);
      }
      .hero-mobile-photo img { width: 100%; height: 100%; object-fit: cover; }
    }

    /* ── PHOTO / HOVER EFFECTS ── */
    .img-zoom { overflow: hidden; }
    .img-zoom img { transition: transform .6s cubic-bezier(.16,1,.3,1); }
    .img-zoom:hover img { transform: scale(1.08); }

    .lift {
      transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease, border-color .35s ease;
      box-shadow: 0 1px 0 rgba(255,255,255,.03) inset, 0 1px 2px rgba(0,0,0,.4);
    }
    .lift:hover {
      transform: translateY(-6px);
      box-shadow: 0 1px 0 rgba(255,255,255,.05) inset, 0 28px 48px -16px rgba(0,0,0,.65), 0 10px 20px -8px rgba(0,0,0,.5);
      border-color: var(--border2);
    }
    .svc-card--photo.lift:hover, .svc-card--photo:hover { transform: translateY(-6px); box-shadow: 0 28px 48px -16px rgba(0,0,0,.65); }

    /* Glassmorphic labels over photos */
    .glass-chip {
      backdrop-filter: blur(10px) saturate(160%); -webkit-backdrop-filter: blur(10px) saturate(160%);
      background: rgba(10,10,10,.42); border: 1px solid rgba(255,255,255,.1);
      border-radius: 8px; padding: 5px 11px; display: inline-flex; align-items: center; gap: 6px;
    }

    /* Decorative depth ring watermark */
    .ring-watermark {
      position: absolute; z-index: 0; pointer-events: none; opacity: .07;
      filter: grayscale(100%) brightness(1.4);
    }

    .btn-gold, .btn-wa { transition: background .15s, box-shadow .3s ease, transform .15s ease; }
    .btn-gold:hover { box-shadow: 0 0 0 6px var(--gold-bg2); transform: translateY(-1px); }
    .btn-wa:hover { box-shadow: 0 0 0 6px rgba(37,211,102,.16); transform: translateY(-1px); }

    /* Floating photo badge over hero image */
    .hero-photo-badge {
      position: absolute; left: -18px; bottom: -18px; width: 108px; height: 108px;
      border-radius: 14px; overflow: hidden; border: 3px solid var(--bg0);
      box-shadow: 0 12px 28px -8px rgba(0,0,0,.6); z-index: 2;
    }
    .hero-photo-badge img { width: 100%; height: 100%; object-fit: cover; }
    @media(max-width:959px){ .hero-photo-badge { display: none; } }

    /* Featured photo service cards */
    .svc-card--photo { position: relative; padding: 0 !important; min-height: 260px; display: flex; align-items: flex-end; }
    .svc-card--photo .svc-photo-bg { position: absolute; inset: 0; z-index: 0; }
    .svc-card--photo .svc-photo-bg img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.16,1,.3,1); }
    .svc-card--photo:hover .svc-photo-bg img { transform: scale(1.08); }
    .svc-card--photo .svc-photo-overlay {
      position: absolute; inset: 0; z-index: 1;
      background: linear-gradient(to top, rgba(10,10,10,.92) 10%, rgba(10,10,10,.35) 55%, rgba(10,10,10,.05) 100%);
    }
    .svc-card--photo .svc-photo-content { position: relative; z-index: 2; padding: 28px; width: 100%; }
    .svc-card--photo .svc-num { color: var(--gold); }
    .svc-card--photo h3, .svc-card--photo p { color: #fff; }
    .svc-card--photo p { color: rgba(255,255,255,.75); }

    /* CTA final ambient photo wash */
    #cta-final { position: relative; }
    #cta-final .cta-ambient {
      position: absolute; inset: 0; z-index: 0; opacity: .12; filter: grayscale(60%);
      background-image: url('chaveiro.webp'); background-size: cover; background-position: center 30%;
    }
    #cta-final .container { position: relative; z-index: 1; }

    /* ── MOBILE OVERRIDES ── */
    @media(max-width:768px){
      /* Hero */
      #hero { padding: 90px 0 40px; }
      .hero-badge { margin-bottom: 18px; }
      .hero-badge span { font-size: 11px; }
      .hero-title { letter-spacing: -1px; margin-bottom: 16px; }
      .hero-sub { font-size: 16px; margin-bottom: 28px; }
      .hero-ctas { gap: 10px; flex-direction: column; align-items: stretch; }
      .hero-ctas .btn-gold,
      .hero-ctas .btn-wa,
      .hero-ctas .btn-outline { justify-content: center; width: 100%; padding: 16px 20px; font-size: 16px; border-radius: 12px; }
      .hero-trust { gap: 10px; margin-top: 4px; }
      .trust-pill span { font-size: 11px; }

      /* Buttons general */
      .btn-gold, .btn-wa, .btn-outline { padding: 14px 22px; font-size: 14px; min-height: 48px; }

      /* Urgency bar */
      .urgency-sep { display: none; }
      #urgency { padding: 10px 0; }
      .urgency-inner { flex-direction: column; gap: 8px; }
      .urgency-item { font-size: 12px; }

      /* Services */
      #servicos { background: var(--bg2); }
      .services-header { gap: 20px; margin-bottom: 36px; }
      .svc-card { padding: 24px 20px; }
      .svc-icon { width: 40px; height: 40px; margin-bottom: 14px; }
      .svc-card h3 { font-size: 15px; }
      .svc-card p { font-size: 13px; }

      /* Why us */
      .why-right { grid-template-columns: 1fr 1fr; gap: 10px; }
      .why-card { padding: 20px 16px; }
      .why-card h4 { font-size: 13px; }
      .why-card p { font-size: 12px; }
      .why-left-img { height: 200px; }
      .why-left-content { padding: 24px 20px; }
      .why-left-bottom { padding: 16px 20px; gap: 8px; flex-wrap: wrap; }

      /* FAQ */
      .faq-layout { gap: 32px; }
      .faq-q { font-size: 14px; padding: 16px 0; }
      .faq-a-inner { font-size: 13px; }

      /* CTA final */
      .cta-block { padding: 40px 24px; border-radius: 16px; flex-direction: column; align-items: flex-start; gap: 24px; }
      .cta-title { font-size: clamp(26px,8vw,40px); }
      .cta-sub { font-size: 14px; }
      .cta-actions { flex-direction: column; width: 100%; }
      .btn-cta-dark, .btn-cta-outline-dark { width: 100%; justify-content: center; padding: 15px 20px; font-size: 15px; border-radius: 10px; }

      /* Footer */
      .footer-inner { padding: 36px 20px 28px; }
      .footer-grid { gap: 28px; }
    }

    @media(max-width:480px){
      .footer-grid { grid-template-columns: 1fr; gap: 24px; }
      .why-right { grid-template-columns: 1fr; }
      section { padding: 52px 0; }
    }

    /* ═══════════════════════ BLOG + ARTIGOS ═══════════════════════ */
    .blog-hero { padding: 128px 0 40px; background: var(--bg2); border-bottom: 1px solid var(--border); }
    .blog-hero h1 { font-family: 'Montserrat', sans-serif; font-size: clamp(30px,4.6vw,46px); font-weight: 800; color: #fff; letter-spacing: -.5px; margin-bottom: 14px; }
    .blog-hero p { font-size: 16px; color: var(--sub); max-width: 560px; line-height: 1.6; }

    .blog-list { display: grid; grid-template-columns: 1fr; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; }
    .blog-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 26px 28px; background: var(--bg); transition: background .18s; }
    .blog-card:hover { background: var(--card2); }
    .blog-card--pillar { background: var(--gold-bg2); }
    .blog-card--pillar:hover { background: var(--gold-bg2); }
    .blog-card h3 { font-size: 17px; font-weight: 700; color: #fff; margin-bottom: 6px; line-height: 1.3; }
    .blog-card p { font-size: 13px; color: var(--sub); line-height: 1.6; }
    .blog-card .blog-tag { font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); margin-bottom: 8px; display: block; }
    .blog-card .blog-meta { font-size: 12px; color: var(--muted); margin-top: 10px; }
    .blog-arrow { font-size: 20px; color: var(--gold); flex-shrink: 0; }
    @media(max-width:600px){ .blog-card { padding: 22px 20px; gap: 14px; } .blog-arrow { display: none; } }

    .post-wrap { padding: 120px 0 72px; }
    .post-wrap .container { max-width: 760px; }
    .post-back { font-size: 13px; font-weight: 600; color: var(--gold); }
    .post-eyebrow { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); display: block; margin-bottom: 14px; }
    .post-wrap h1 { font-family: 'Montserrat', sans-serif; font-size: clamp(28px,4.4vw,42px); font-weight: 800; color: #fff; letter-spacing: -.5px; line-height: 1.15; margin-bottom: 14px; }
    .post-meta { font-size: 13px; color: var(--muted); margin-bottom: 36px; padding-bottom: 24px; border-bottom: 1px solid var(--border); }
    .post-body { font-size: 16px; line-height: 1.75; color: var(--sub); }
    .post-body h2 { font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: 800; color: #fff; margin: 40px 0 14px; line-height: 1.25; }
    .post-body h3 { font-size: 18px; font-weight: 700; color: #fff; margin: 28px 0 10px; }
    .post-body p { margin-bottom: 18px; }
    .post-body ul, .post-body ol { margin: 0 0 18px 22px; }
    .post-body li { margin-bottom: 8px; }
    .post-body a { color: var(--gold); text-decoration: underline; text-underline-offset: 2px; }
    .post-body a:hover { color: var(--gold-light); }
    .post-body strong { color: #fff; }
    .post-body blockquote { border-left: 3px solid var(--gold); padding: 4px 0 4px 18px; margin: 0 0 18px; color: var(--sub); font-style: italic; }

    .post-cta { margin-top: 44px; background: var(--card); border: 1px solid var(--border2); border-radius: 16px; padding: 32px; }
    .post-cta h3 { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 20px; color: #fff; margin-bottom: 8px; }
    .post-cta p { font-size: 14px; color: var(--sub); margin-bottom: 18px; }

    .post-related { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--border); }
    .post-related h4 { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; }
    .post-related a { display: block; font-size: 15px; font-weight: 600; color: #fff; padding: 10px 0; border-bottom: 1px solid var(--border); }
    .post-related a:hover { color: var(--gold); }
