:root{
    /* Light theme — pages internas */
    --bg:#ffffff;
    --bg-soft:#fafafa;
    --bg-card:#ffffff;
    --bg-grey:#f1f1f1;
    --line:#e6e6e6;
    --line-soft:#efefef;
    --text:#2a2a2a;
    --text-mute:#6e6e6e;
    --text-dim:#9a9a9a;

    /* Coral / laranja — assinatura do catálogo */
    --coral:#ed7e5b;
    --coral-light:#f4925f;
    --coral-pale:#fbe5dc;
    --coral-deep:#d65a3b;
    --coral-grad-from:#f4a285;
    --coral-grad-to:#ed7e5b;

    /* Bordô / vinho — usado em títulos da família Neurodyn */
    --maroon:#9c2d2d;
    --maroon-deep:#6f1f1f;

    /* Dark accent — capa Dermomed roxo premium */
    --dark:#1a0a2e;            /* roxo muito escuro (película preta sobre roxo) */
    --dark-soft:#2d1547;
    --purple:#4a2679;          /* roxo Dermomed (cor da logo) */
    --purple-deep:#3a1d63;
    --purple-light:#6b3aa0;
    --gold:#f5b042;            /* dourado/laranja Dermomed - acento */
    --gold-bright:#ffc864;
    --gold-pale:#ffd99a;

    --display:'Bebas Neue', 'Arial Narrow', sans-serif;
    --italic:'Playfair Display', Georgia, serif;
    --body:'Manrope', system-ui, sans-serif;
  }

  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    background:var(--bg);color:var(--text);font-family:var(--body);font-weight:400;
    line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;
  }
  ::selection{background:var(--coral);color:#fff}
  img{max-width:100%;display:block}
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}

  /* ============ NAV ============ */
  nav.topbar{
    position:fixed;top:0;left:0;right:0;z-index:100;
    padding:1.1rem 2.5rem;
    display:flex;justify-content:space-between;align-items:center;
    background:linear-gradient(180deg, rgba(26,10,46,.85), rgba(26,10,46,.3));
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    transition:all .35s ease;
  }
  nav.topbar.scrolled{
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--line);
    padding:.75rem 2.5rem;
    box-shadow:0 4px 30px rgba(0,0,0,.04);
  }
  nav.topbar.scrolled .nav-links a{color:var(--text-mute)}
  nav.topbar.scrolled .nav-links a:hover{color:var(--purple)}
  nav.topbar.scrolled .nav-cta{border-color:var(--purple);color:var(--purple)}
  nav.topbar.scrolled .nav-cta:hover{background:var(--purple);color:#fff}

  .brand{display:flex;align-items:center;gap:.9rem}
  .brand-mark{height:42px;display:flex;align-items:center;transition:filter .35s}
  .brand-mark img{height:100%;width:auto;display:block}
  .brand-tagline{
    font-family:var(--body);
    font-size:.58rem;
    letter-spacing:.32em;
    line-height:1.4;
    color:var(--gold-pale);
    font-weight:600;
    padding-left:.9rem;
    border-left:1px solid rgba(245,176,66,.35);
    text-transform:uppercase;
    transition:color .35s, border-color .35s;
  }
  nav.topbar.scrolled .brand-tagline{
    color:var(--text-mute);
    border-left-color:var(--line);
  }

  /* Logo no navbar: 2 versões, switch baseado em scroll */
  .brand-mark .logo-light{display:block}
  .brand-mark .logo-dark{display:none}
  nav.topbar.scrolled .brand-mark .logo-light{display:none}
  nav.topbar.scrolled .brand-mark .logo-dark{display:block}
  .brand-mark img{height:100%;width:auto;display:block}

  .nav-links{display:flex;gap:2rem;align-items:center}
  .nav-links a{
    font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;
    color:var(--gold-pale);font-weight:500;transition:color .25s;
  }
  .nav-links a:hover{color:var(--gold-bright)}
  .nav-cta{
    padding:.6rem 1.3rem;border:1px solid var(--gold);color:var(--gold-bright);
    font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;
    font-weight:600;transition:all .3s;border-radius:0;
  }
  .nav-cta:hover{background:var(--gold);color:#000}
  .hamburger{display:none;cursor:pointer;color:var(--gold-pale);font-size:1.4rem}
  nav.topbar.scrolled .hamburger{color:var(--text)}

  /* ============ HERO (capa Dermomed) ============ */
  .hero{
    position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;
    padding:8rem 2rem 4rem;text-align:center;overflow:hidden;
    background:
      /* Película preta translúcida no topo e na base para o efeito premium */
      linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.15) 35%, rgba(0,0,0,.15) 65%, rgba(0,0,0,.65) 100%),
      /* Brilho dourado sutil */
      radial-gradient(ellipse 80% 50% at 50% 60%, rgba(245,176,66,.15), transparent 70%),
      radial-gradient(ellipse 50% 30% at 50% 100%, rgba(255,200,100,.10), transparent 70%),
      /* Base roxo profundo Dermomed */
      linear-gradient(180deg, var(--purple) 0%, var(--dark) 100%);
    color:#fff;
  }
  .beam{position:absolute;pointer-events:none;mix-blend-mode:screen;opacity:.5}
  .beam.b1{top:-10%;left:30%;width:60%;height:120%;
    background:linear-gradient(180deg,transparent,rgba(244,201,93,.28),transparent);
    transform:rotate(-18deg);filter:blur(40px)}
  .beam.b2{top:-10%;left:50%;width:40%;height:120%;
    background:linear-gradient(180deg,transparent,rgba(212,160,46,.2),transparent);
    transform:rotate(15deg);filter:blur(60px)}
  .beam.b3{bottom:-30%;left:50%;width:80%;height:60%;transform:translateX(-50%);
    background:radial-gradient(ellipse at center,rgba(244,201,93,.2),transparent 60%);
    filter:blur(30px)}

  .hero-inner{position:relative;z-index:2;max-width:1000px}
  .hero-eyebrow{
    display:inline-block;font-size:.7rem;letter-spacing:.6em;text-transform:uppercase;
    color:var(--gold-bright);font-weight:600;padding:.45rem 1.4rem;
    border:1px solid rgba(212,160,46,.4);border-radius:0;margin-bottom:2.2rem;
    animation:fadeUp 1.2s ease both;
  }
  .hero h1{
    font-family:var(--display);font-weight:400;
    font-size:clamp(3rem, 9vw, 7.5rem);line-height:.92;letter-spacing:.015em;
    margin-bottom:2.5rem;animation:fadeUp 1.2s .15s ease both;
    color:#fff;
  }
  .hero h1 .l1{display:block;font-size:.55em;letter-spacing:.4em;font-weight:400;color:#ffd9b8;margin-bottom:.3em}
  .hero h1 .l2{
    display:block;
    background:linear-gradient(180deg, #ffb088 0%, var(--coral) 45%, var(--coral-deep) 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    text-shadow:0 0 80px rgba(237,126,91,.35);
  }
  .hero-logo{display:none}
  .hero p.lead{
    font-size:clamp(1rem,1.4vw,1.12rem);color:#d4c4e5;
    max-width:620px;margin:0 auto 2.8rem;font-weight:300;line-height:1.75;
    animation:fadeUp 1.2s .4s ease both;
  }
  .hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;animation:fadeUp 1.2s .55s ease both}

  .btn{
    display:inline-flex;align-items:center;gap:.7rem;
    padding:1.05rem 2.1rem;font-size:.76rem;letter-spacing:.28em;text-transform:uppercase;
    font-weight:600;border-radius:0;transition:all .35s;cursor:pointer;
    border:1px solid transparent;
  }
  .btn-gold{
    background:linear-gradient(180deg,var(--gold-bright),var(--gold));
    color:#0a0705;box-shadow:0 12px 40px -10px rgba(212,160,46,.5);
  }
  .btn-gold:hover{transform:translateY(-2px);box-shadow:0 18px 50px -10px rgba(212,160,46,.7)}
  .btn-ghost-gold{border-color:rgba(212,160,46,.5);color:var(--gold-bright)}
  .btn-ghost-gold:hover{background:rgba(212,160,46,.1);border-color:var(--gold)}
  .btn-coral{
    background:linear-gradient(180deg, var(--coral-light), var(--coral));
    color:#fff;box-shadow:0 12px 30px -8px rgba(237,126,91,.45);
  }
  .btn-coral:hover{transform:translateY(-2px);box-shadow:0 18px 40px -8px rgba(237,126,91,.6)}
  .btn-ghost{border-color:var(--coral);color:var(--coral)}
  .btn-ghost:hover{background:var(--coral);color:#fff}
  .btn svg{width:14px;height:14px}

  .scroll-cue{
    position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);
    display:flex;flex-direction:column;align-items:center;gap:.8rem;
    color:rgba(212,160,46,.55);font-size:.6rem;letter-spacing:.4em;text-transform:uppercase;
    animation:fadeUp 1.5s 1s ease both;font-weight:600;
  }
  .scroll-cue .line{width:1px;height:50px;background:linear-gradient(180deg,var(--gold),transparent);animation:cue 2.5s infinite}
  @keyframes cue{0%,100%{opacity:.4;transform:scaleY(.5)}50%{opacity:1;transform:scaleY(1)}}
  @keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

  /* ============ SECTIONS ============ */
  section{padding:6.5rem 2rem;position:relative}
  .container{max-width:1280px;margin:0 auto}

  /* Section header — replicando estilo do catalogo */
  .section-head{text-align:center;margin-bottom:5rem;max-width:780px;margin-left:auto;margin-right:auto}
  .kicker{
    display:inline-block;padding:.5rem 1.6rem;
    background:linear-gradient(180deg, var(--coral-grad-from), var(--coral-grad-to));
    color:#fff;font-size:.72rem;letter-spacing:.4em;text-transform:uppercase;
    font-weight:700;margin-bottom:1.5rem;
    border-radius:50px;
  }
  .kicker.dark{background:linear-gradient(180deg, var(--maroon), var(--maroon-deep))}
  .section-head h2{
    font-family:var(--display);font-weight:400;
    font-size:clamp(2.4rem,5.5vw,4.8rem);line-height:1;color:var(--text);
    margin-bottom:1rem;letter-spacing:.01em;
  }
  .section-head h2 em{
    font-family:var(--italic);font-style:italic;font-weight:500;
    color:var(--coral);font-size:.92em;letter-spacing:0;
  }
  .section-head p{color:var(--text-mute);font-size:1rem;font-weight:400;line-height:1.7}

  /* ============ INTRO / PILLARS ============ */
  .intro{background:var(--bg);border-top:1px solid var(--line-soft)}
  .pillars{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem;margin-top:4rem;
  }
  .pillar{
    padding:2.3rem 1.8rem;background:var(--bg-card);
    border:1px solid var(--line);position:relative;transition:all .4s ease;
    border-radius:4px;overflow:hidden;
  }
  .pillar::before{
    content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
    background:linear-gradient(180deg,var(--coral-light),var(--coral));
    transform:scaleY(0);transform-origin:top;transition:transform .4s;
  }
  .pillar:hover{transform:translateY(-4px);box-shadow:0 20px 40px -10px rgba(0,0,0,.08);border-color:var(--coral-pale)}
  .pillar:hover::before{transform:scaleY(1)}
  .pillar-icon{
    width:50px;height:50px;display:grid;place-items:center;
    background:linear-gradient(180deg,var(--coral-pale),#fff);
    border:1px solid var(--coral-pale);border-radius:50%;color:var(--coral);
    margin-bottom:1.4rem;
  }
  .pillar h3{
    font-family:var(--display);font-size:1.55rem;font-weight:400;
    color:var(--text);margin-bottom:.6rem;letter-spacing:.04em;
  }
  .pillar p{color:var(--text-mute);font-size:.9rem;line-height:1.65}

  /* ============ FEATURED ============ */
  .featured{
    background:linear-gradient(180deg,#fafafa 0%, #ffffff 100%);
    border-top:1px solid var(--line-soft);
    position:relative;overflow:hidden;
  }
  /* decorative coral curves like the catalog */
  .featured::before{
    content:"";position:absolute;top:0;right:-100px;width:400px;height:400px;
    background:radial-gradient(circle,rgba(244,162,133,.12),transparent 60%);
    pointer-events:none;
  }
  .featured::after{
    content:"";position:absolute;bottom:0;left:-100px;width:400px;height:400px;
    background:radial-gradient(circle,rgba(237,126,91,.08),transparent 60%);
    pointer-events:none;
  }

  .featured-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;position:relative;z-index:2;
  }
  .feature-card{
    background:#fff;border:1px solid var(--line);
    border-radius:6px;overflow:hidden;
    display:flex;flex-direction:column;
    transition:all .45s;
    position:relative;
  }
  .feature-card:hover{
    transform:translateY(-6px);
    box-shadow:0 30px 60px -20px rgba(237,126,91,.18);
    border-color:var(--coral-pale);
  }
  .feature-tag{
    position:absolute;top:1.2rem;left:1.2rem;z-index:3;
    padding:.4rem 1rem;background:linear-gradient(180deg,var(--coral-light),var(--coral));
    color:#fff;font-size:.64rem;letter-spacing:.3em;text-transform:uppercase;font-weight:700;
    border-radius:50px;
  }
  .feature-tag.dark{background:linear-gradient(180deg,var(--dark),#1a0e08);color:var(--gold-bright)}

  .feature-img{
    aspect-ratio: 5/7;
    background:linear-gradient(180deg, #f8f8f8, #efefef);
    display:grid;place-items:center;overflow:hidden;
    position:relative;
    padding:1.2rem;
  }
  .feature-img img{
    width:100%;height:100%;object-fit:contain;transition:transform .6s;
    box-shadow:0 12px 30px -8px rgba(0,0,0,.25), 0 2px 6px rgba(0,0,0,.1);
    border-radius:2px;
  }
  .feature-card:hover .feature-img img{transform:scale(1.04)}

  .feature-body{padding:2rem 1.8rem 2rem;display:flex;flex-direction:column;flex:1}
  .feature-card h3{
    font-family:var(--display);font-size:2.2rem;color:var(--text);
    font-weight:400;line-height:1;margin-bottom:.4rem;letter-spacing:.025em;
  }
  .feature-card .sub{
    font-family:var(--italic);font-style:italic;font-size:1rem;
    color:var(--coral);margin-bottom:1.4rem;font-weight:500;
  }
  .feature-card p.desc{color:var(--text-mute);font-size:.92rem;margin-bottom:1.5rem;line-height:1.7}
  .feature-specs{list-style:none;display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.8rem}
  .feature-specs li{
    font-size:.85rem;color:var(--text);display:flex;gap:.7rem;align-items:flex-start;
  }
  .feature-specs li::before{
    content:"";width:6px;height:6px;background:var(--coral);
    border-radius:50%;margin-top:.55rem;flex-shrink:0;
  }
  .product-cta{
    margin-top:auto;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;
    color:var(--coral);font-weight:700;display:inline-flex;align-items:center;gap:.5rem;
    cursor:pointer;transition:gap .3s;background:none;border:none;padding:0;align-self:flex-start;
  }
  .product-cta:hover{gap:.85rem;color:var(--coral-deep)}
  .product-cta svg{width:12px;height:12px}

  /* ============ CATALOG (linhas) ============ */
  .catalog{background:#fff;border-top:1px solid var(--line-soft)}

  .line-block{margin-bottom:5.5rem}
  .line-block:last-child{margin-bottom:0}

  .line-header{
    display:flex;align-items:flex-end;justify-content:space-between;
    margin-bottom:2.8rem;padding-bottom:1.5rem;
    border-bottom:1px solid var(--line);
    gap:2rem;flex-wrap:wrap;
    position:relative;
  }
  .line-header::after{
    content:"";position:absolute;bottom:-1px;left:0;height:2px;width:80px;
    background:linear-gradient(90deg,var(--coral),var(--coral-light));
  }
  .line-kicker{
    font-size:.66rem;letter-spacing:.55em;text-transform:uppercase;
    color:var(--coral);font-weight:700;margin-bottom:.6rem;
  }
  .line-header-text h3{
    font-family:var(--display);font-size:clamp(2rem,4vw,3.2rem);
    font-weight:400;color:var(--text);letter-spacing:.025em;line-height:1;
  }
  .line-header-text p{color:var(--text-mute);font-size:.95rem;max-width:560px;margin-top:.7rem;line-height:1.65}
  .line-count{
    font-family:var(--display);font-size:1.2rem;color:var(--text-dim);
    letter-spacing:.3em;white-space:nowrap;
  }
  .line-count span{color:var(--coral);font-size:2rem}

  .product-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.3rem;
  }
  .product{
    background:#fff;border:1px solid var(--line);border-radius:6px;
    overflow:hidden;display:flex;flex-direction:column;
    transition:all .35s ease;position:relative;
  }
  .product::before{
    content:"";position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--coral-light),var(--coral));
    transform:scaleX(0);transform-origin:left;transition:transform .4s;z-index:2;
  }
  .product:hover{transform:translateY(-4px);border-color:var(--coral-pale);box-shadow:0 20px 40px -15px rgba(237,126,91,.18)}
  .product:hover::before{transform:scaleX(1)}

  .product-img{
    aspect-ratio: 5/7;
    background:linear-gradient(180deg, #f8f8f8, #efefef);
    overflow:hidden;
    display:grid;place-items:center;
    padding:1rem;
  }
  .product-img img{
    width:100%;height:100%;object-fit:contain;transition:transform .55s;
    box-shadow:0 8px 20px -6px rgba(0,0,0,.2), 0 2px 4px rgba(0,0,0,.08);
    border-radius:2px;
  }
  .product:hover .product-img img{transform:scale(1.05)}

  .product-body{padding:1.5rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
  .product-type{
    font-size:.62rem;letter-spacing:.32em;text-transform:uppercase;
    color:var(--coral);font-weight:700;
  }
  .product-name{
    font-family:var(--display);font-size:1.7rem;color:var(--text);
    font-weight:400;line-height:1;letter-spacing:.03em;
  }
  .product-desc{color:var(--text-mute);font-size:.85rem;line-height:1.6;flex:1}
  .product-specs{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem}
  .spec-tag{
    font-size:.66rem;padding:.3rem .65rem;background:var(--coral-pale);
    color:var(--coral-deep);letter-spacing:.05em;font-weight:600;
    border-radius:50px;
  }
  .product-select{
    margin-top:.8rem;font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;
    color:var(--coral);font-weight:700;
    display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;
    transition:gap .3s;background:none;border:none;padding:0;align-self:flex-start;
  }
  .product-select:hover{gap:.85rem;color:var(--coral-deep)}
  .product-select svg{width:12px;height:12px}

  /* ============ FORM (volta para o dark roxo da capa) ============ */
  .contact{
    background:
      linear-gradient(180deg, rgba(0,0,0,.4) 0%, rgba(0,0,0,.15) 50%, rgba(0,0,0,.5) 100%),
      radial-gradient(ellipse 60% 40% at 50% 50%, rgba(245,176,66,.12), transparent 70%),
      linear-gradient(180deg, var(--purple) 0%, var(--dark) 100%);
    color:#fff;border-top:1px solid var(--dark);
    position:relative;overflow:hidden;
  }
  .contact .beam{opacity:.4}
  .contact-inner{
    display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;
    max-width:1180px;margin:0 auto;align-items:center;position:relative;z-index:2;
  }
  .contact-text .kicker{
    background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#0a0705;
  }
  .contact-text h2{
    font-family:var(--display);font-weight:400;color:#fff;
    font-size:clamp(2.2rem,5vw,4rem);line-height:1.02;
    margin-bottom:1.5rem;letter-spacing:.01em;
  }
  .contact-text h2 em{font-family:var(--italic);font-style:italic;color:var(--gold-bright);font-size:.92em}
  .contact-text > p{color:#d4c4e5;font-size:1rem;line-height:1.75;margin-bottom:2.5rem}
  .contact-perks{list-style:none;display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem}
  .contact-perks li{
    display:flex;gap:1rem;align-items:flex-start;color:#fff;font-size:.92rem;
  }
  .contact-perks li svg{flex-shrink:0;color:var(--gold-bright);margin-top:3px}

  form.lead-form{
    background:linear-gradient(180deg,rgba(74,38,121,.4),rgba(26,10,46,.85));
    border:1px solid rgba(245,176,66,.3);
    padding:3rem 2.8rem;border-radius:4px;position:relative;
    box-shadow:0 30px 80px -20px rgba(0,0,0,.7);
  }
  form.lead-form::before{
    content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
    width:60%;height:1px;
    background:linear-gradient(90deg,transparent,var(--gold),transparent);
  }
  .form-title{
    font-family:var(--display);font-size:1.9rem;color:var(--gold-bright);
    margin-bottom:.4rem;font-weight:400;letter-spacing:.04em;
  }
  .form-subtitle{font-size:.85rem;color:#a89878;margin-bottom:2rem}
  .field{margin-bottom:1.3rem}
  .field label{
    display:block;font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;
    color:var(--gold);font-weight:700;margin-bottom:.6rem;
  }
  .field input,.field select{
    width:100%;padding:.95rem 1rem;background:rgba(0,0,0,.4);
    border:1px solid rgba(212,160,46,.25);color:#f5ebd6;
    font-family:var(--body);font-size:.95rem;
    border-radius:3px;transition:all .25s;font-weight:400;
  }
  .field input:focus,.field select:focus{
    outline:none;border-color:var(--gold);background:rgba(0,0,0,.55);
    box-shadow:0 0 0 3px rgba(212,160,46,.12);
  }
  .field input::placeholder{color:#6b5e44}
  .field select{
    appearance:none;-webkit-appearance:none;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1L6 6L11 1' stroke='%23d4a02e' stroke-width='1.5'/></svg>");
    background-repeat:no-repeat;background-position:right 1rem center;
    background-color:rgba(0,0,0,.4);padding-right:2.5rem;cursor:pointer;
  }
  .field select option{background:#15100a;color:#f5ebd6}
  .field select optgroup{color:var(--gold-bright);font-style:italic;background:#0a0705}

  .submit-btn{
    width:100%;padding:1.1rem;margin-top:.6rem;
    background:linear-gradient(180deg,#25d366,#128c7e);
    color:#fff;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;
    font-weight:700;border-radius:3px;cursor:pointer;
    display:flex;align-items:center;justify-content:center;gap:.8rem;
    transition:all .3s;border:none;
    box-shadow:0 10px 30px -10px rgba(37,211,102,.4);
  }
  .submit-btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px -10px rgba(37,211,102,.6)}
  .submit-btn svg{width:18px;height:18px}
  .form-note{margin-top:1.3rem;font-size:.75rem;color:#6b5e44;text-align:center;line-height:1.5}

  /* ============ FOOTER ============ */
  footer{
    background:linear-gradient(180deg, var(--dark) 0%, #0a0212 100%);
    color:#c9b8d8;
    padding:5rem 2rem 2.5rem;position:relative;
    border-top:1px solid rgba(245,176,66,.15);
  }
  .footer-grid{
    max-width:1180px;margin:0 auto;
    display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem;
    padding-bottom:3rem;border-bottom:1px solid rgba(245,176,66,.12);
  }
  .footer-brand p{color:#a89bbf;font-size:.9rem;margin-top:1.2rem;max-width:340px;line-height:1.7}
  .footer-col h4{
    font-family:var(--display);font-size:1.3rem;color:var(--gold-bright);
    margin-bottom:1.3rem;font-weight:400;letter-spacing:.05em;
  }
  .social-row{display:flex;flex-direction:column;gap:.7rem}
  .social-row a{
    display:inline-flex;align-items:center;gap:.85rem;
    padding:.75rem 1rem;background:rgba(74,38,121,.25);
    border:1px solid rgba(245,176,66,.15);border-radius:3px;
    font-size:.82rem;color:#f5ebd6;transition:all .3s;
  }
  .social-row a:hover{border-color:rgba(245,176,66,.4);background:rgba(74,38,121,.4);color:var(--gold-bright);transform:translateX(3px)}
  .social-row a svg{width:18px;height:18px;color:var(--gold-bright);flex-shrink:0}
  .col-links{display:flex;flex-direction:column;gap:.45rem}
  .col-links a{font-size:.85rem;color:#a89bbf;transition:color .2s;padding:.25rem 0}
  .col-links a:hover{color:var(--gold-bright)}

  .footer-bottom{
    max-width:1180px;margin:2.5rem auto 0;
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
    font-size:.75rem;color:#7a6b8f;letter-spacing:.08em;
  }

  /* Floating WhatsApp */
  .float-whats{
    position:fixed;bottom:1.8rem;right:1.8rem;z-index:90;
    width:60px;height:60px;border-radius:50%;
    background:linear-gradient(180deg,#25d366,#128c7e);
    display:grid;place-items:center;color:#fff;
    box-shadow:0 10px 30px rgba(37,211,102,.45), 0 0 0 0 rgba(37,211,102,.5);
    transition:transform .3s;animation:wp 2.4s infinite;
  }
  .float-whats:hover{transform:scale(1.08)}
  @keyframes wp{0%{box-shadow:0 10px 30px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,.5)}70%{box-shadow:0 10px 30px rgba(37,211,102,.4),0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 10px 30px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,0)}}

  /* ============ RESPONSIVE ============ */
  @media (max-width: 980px){
    nav.topbar{padding:1rem 1.3rem}
    nav.topbar.scrolled{padding:.7rem 1.3rem}
    .nav-links{display:none}
    .hamburger{display:block}
    .brand-tagline{display:none}
    .featured-grid{grid-template-columns:1fr}
    .contact-inner{grid-template-columns:1fr;gap:3rem}
    .footer-grid{grid-template-columns:1fr;gap:2.5rem}
    section{padding:5rem 1.3rem}
    form.lead-form{padding:2.2rem 1.6rem}
    .product-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
  }
  @media (max-width: 560px){
    .hero{padding:7rem 1.2rem 3rem;min-height:auto}
    .hero-ctas{flex-direction:column;align-items:stretch}
    .btn{justify-content:center}
    .brand-text{font-size:1.1rem;letter-spacing:.2em}
    .brand-text small{font-size:.48rem}
    .nav-cta{padding:.5rem .9rem;font-size:.65rem}
    .pillars{grid-template-columns:1fr}
    .line-header{flex-direction:column;align-items:flex-start}
    .line-count{align-self:flex-end}
  }