/* ============================================================
   Anjani Premium Water — style.css
   Place this file in the /css/ folder on GitHub
   GitHub path: /css/style.css
============================================================ */

:root {
    --ocean: #0077B6;
    --deep: #023E8A;
    --sky: #90E0EF;
    --foam: #CAF0F8;
    --white: #FFFFFF;
    --off: #F8FCFF;
    --text: #1a2a3a;
    --muted: #6b8ca4;
    --gold: #C9A84C;
  }

  * { margin:0; padding:0; box-sizing:border-box; }

  html { scroll-behavior: smooth; }

  body {
    font-family: 'DM Sans', sans-serif;
    color: var(--text);
    background: var(--white);
    overflow-x: hidden;
  }

  /* ── NAV ── */
  nav {
    position: fixed; top:0; left:0; right:0; z-index:1000;
    display:flex; align-items:center; justify-content:space-between;
    padding: 18px 5%;
    background: rgba(255,255,255,0.92);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(0,119,182,0.1);
    transition: box-shadow 0.3s;
  }
  nav.scrolled { box-shadow: 0 4px 30px rgba(0,119,182,0.12); }

  .nav-logo {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.7rem;
    font-weight: 600;
    color: var(--deep);
    letter-spacing: 0.02em;
    text-decoration: none;
  }
  .nav-logo span { color: var(--ocean); }

  .nav-links { display:flex; gap:32px; list-style:none; }
  .nav-links a {
    font-size: 0.88rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text);
    text-decoration: none;
    transition: color 0.2s;
  }
  .nav-links a:hover { color: var(--ocean); }

  .nav-cta {
    background: var(--ocean);
    color: white !important;
    padding: 10px 22px;
    border-radius: 50px;
    font-size: 0.82rem !important;
    transition: background 0.2s, transform 0.2s !important;
  }
  .nav-cta:hover { background: var(--deep) !important; transform: translateY(-1px); }

  .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; }
  .hamburger span { display:block; width:24px; height:2px; background:var(--deep); border-radius:2px; transition:0.3s; }

  /* ── HERO ── */
  .hero {
    min-height: 100vh;
    display:flex; align-items:center;
    position:relative;
    overflow:hidden;
    background: linear-gradient(135deg, #e8f4fd 0%, #cce8f7 40%, #a8d8f0 100%);
    padding-top: 80px;
  }

  .hero-bg {
    position:absolute; inset:0;
    background: radial-gradient(ellipse at 70% 50%, rgba(0,119,182,0.15) 0%, transparent 60%),
                radial-gradient(ellipse at 20% 80%, rgba(144,224,239,0.3) 0%, transparent 50%);
  }

  .wave-container {
    position:absolute; bottom:0; left:0; right:0;
  }

  .hero-inner {
    position:relative; z-index:2;
    display:grid; grid-template-columns:1fr 1fr;
    align-items:center; gap:60px;
    padding: 0 5%; max-width:1300px; margin:0 auto; width:100%;
  }

  .hero-text { animation: fadeUp 0.9s ease both; }
  .hero-eyebrow {
    display:inline-block;
    font-size:0.78rem; font-weight:600;
    letter-spacing:0.2em; text-transform:uppercase;
    color: var(--ocean);
    background: rgba(0,119,182,0.1);
    padding: 6px 16px; border-radius:50px;
    margin-bottom: 20px;
  }

  .hero-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(3rem, 5.5vw, 5.5rem);
    font-weight: 300;
    line-height: 1.05;
    color: var(--deep);
    margin-bottom: 24px;
  }
  .hero-title em { font-style:italic; color: var(--ocean); }

  .hero-sub {
    font-size: 1.05rem;
    color: var(--muted);
    line-height: 1.7;
    max-width: 460px;
    margin-bottom: 40px;
  }

  .hero-btns { display:flex; gap:16px; flex-wrap:wrap; }

  .btn-primary {
    background: var(--ocean);
    color: white;
    padding: 15px 36px;
    border-radius: 50px;
    font-size: 0.92rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-decoration: none;
    border: none; cursor: pointer;
    transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
    box-shadow: 0 8px 30px rgba(0,119,182,0.3);
    display:inline-flex; align-items:center; gap:8px;
  }
  .btn-primary:hover { background: var(--deep); transform: translateY(-2px); box-shadow: 0 12px 40px rgba(0,119,182,0.4); }

  .btn-outline {
    background: transparent;
    color: var(--ocean);
    padding: 14px 36px;
    border-radius: 50px;
    font-size: 0.92rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-decoration: none;
    border: 2px solid var(--ocean);
    cursor: pointer;
    transition: all 0.2s;
    display:inline-flex; align-items:center; gap:8px;
  }
  .btn-outline:hover { background: var(--ocean); color: white; transform: translateY(-2px); }

  .hero-visual {
    display:flex; justify-content:center; align-items:center;
    animation: fadeUp 0.9s 0.2s ease both;
    position:relative;
  }

  .bottle-wrap {
    position:relative;
    width: 320px; height: 480px;
    display:flex; align-items:center; justify-content:center;
  }

  /* Pulsing glow halo behind the bottle */
  .bottle-glow {
    position:absolute;
    inset: -50px;
    background: radial-gradient(circle, rgba(0,119,182,0.25) 0%, rgba(144,224,239,0.12) 50%, transparent 70%);
    border-radius:50%;
    animation: pulse 3s ease-in-out infinite;
    z-index:0;
  }

  /* Real photo bottle image */
  .bottle-svg {
    position:relative; z-index:2;
    width:100%; height:100%;
    object-fit: contain;          /* ensures photo fits without crop */
    object-position: center;
    filter: drop-shadow(0 24px 48px rgba(0,119,182,0.45));
    animation: float 4s ease-in-out infinite;
    border-radius: 0;             /* no clipping on transparent PNGs */
  }

  /* Animated water droplets floating around bottle */
  .droplets {
    position:absolute; inset:0; z-index:3; pointer-events:none;
  }

  .droplet {
    position:absolute;
    width:10px; height:15px;
    background: radial-gradient(circle at 35% 35%, rgba(144,224,239,0.9), rgba(0,119,182,0.6));
    border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
    box-shadow: inset -2px -2px 4px rgba(255,255,255,0.4);
    animation: drip 3s ease-in-out infinite;
  }
  .droplet:nth-child(1) { top:15%; left:2%; animation-delay:0s; width:10px; height:15px; }
  .droplet:nth-child(2) { top:35%; right:0%; animation-delay:1.2s; width:7px; height:10px; }
  .droplet:nth-child(3) { top:58%; left:0%; animation-delay:2.1s; width:8px; height:12px; }
  .droplet:nth-child(4) { top:75%; right:5%; animation-delay:0.7s; width:5px; height:8px; }
  .droplet:nth-child(5) { top:25%; right:3%; animation-delay:1.8s; width:6px; height:9px; }

  .hero-stats {
    display:flex; gap:40px; margin-top:48px; padding-top:40px;
    border-top: 1px solid rgba(0,119,182,0.2);
  }
  .stat { }
  .stat-num {
    font-family:'Cormorant Garamond', serif;
    font-size:2.2rem; font-weight:600; color:var(--deep); line-height:1;
  }
  .stat-label { font-size:0.78rem; color:var(--muted); letter-spacing:0.08em; text-transform:uppercase; margin-top:4px; }

  /* ── SECTIONS COMMON ── */
  section { padding: 100px 5%; }
  .section-inner { max-width:1300px; margin:0 auto; }
  .section-tag {
    font-size:0.75rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase;
    color:var(--ocean); margin-bottom:14px; display:block;
  }
  .section-title {
    font-family:'Cormorant Garamond', serif;
    font-size: clamp(2.2rem, 3.5vw, 3.2rem);
    font-weight:300; color:var(--deep); line-height:1.15;
    margin-bottom: 20px;
  }
  .section-sub { font-size:1rem; color:var(--muted); line-height:1.7; max-width:560px; }

  /* ── MARQUEE BAND ── */
  .marquee-band {
    background: var(--deep); color:white;
    padding: 16px 0; overflow:hidden;
    display:flex; gap:0;
  }
  .marquee-track {
    display:flex; gap:60px;
    animation: marquee 25s linear infinite;
    white-space: nowrap; flex-shrink:0;
  }
  .marquee-item {
    font-size:0.82rem; font-weight:500; letter-spacing:0.15em; text-transform:uppercase;
    display:flex; align-items:center; gap:20px;
  }
  .marquee-dot { width:4px; height:4px; border-radius:50%; background:var(--sky); flex-shrink:0; }

  /* ── PRODUCTS ── */
  #products { background: var(--off); }

  .products-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:60px; flex-wrap:wrap; gap:20px; }

  .products-grid {
    display:grid; grid-template-columns: repeat(4, 1fr); gap:24px;
  }

  .product-card {
    background: white;
    border-radius: 24px;
    overflow:hidden;
    transition: transform 0.3s, box-shadow 0.3s;
    position:relative;
    cursor:pointer;
  }
  .product-card:hover { transform: translateY(-8px); box-shadow: 0 24px 60px rgba(0,119,182,0.18); }
  .product-card.featured { grid-column: span 2; }

  .product-img {
    height: 220px;
    display:flex; align-items:center; justify-content:center;
    font-size:5rem;
    position:relative; overflow:hidden;
  }
  .product-card.featured .product-img { height:280px; font-size:7rem; }

  .product-badge {
    position:absolute; top:16px; left:16px;
    font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase;
    padding:5px 12px; border-radius:50px;
  }
  .badge-own { background: var(--ocean); color:white; }
  .badge-partner { background: rgba(0,0,0,0.07); color:var(--text); }

  .product-body { padding: 24px; }
  .product-brand { font-size:0.72rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; color:var(--muted); margin-bottom:6px; }
  .product-name { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:600; color:var(--deep); margin-bottom:8px; }
  .product-desc { font-size:0.87rem; color:var(--muted); line-height:1.6; margin-bottom:20px; }
  .product-price { font-size:0.85rem; color:var(--ocean); font-weight:600; display:flex; align-items:center; gap:8px; margin-bottom:16px; }
  .product-order {
    width:100%; padding:12px;
    background: var(--ocean); color:white;
    border:none; border-radius:12px;
    font-size:0.88rem; font-weight:600; cursor:pointer;
    transition: background 0.2s;
  }
  .product-order:hover { background: var(--deep); }

  /* product bg colours */
  .bg-anjani { background: linear-gradient(135deg, #cce8f7 0%, #90E0EF 100%); }
  .bg-bisleri { background: linear-gradient(135deg, #e0f7e9 0%, #b8e8c8 100%); }
  .bg-bailey { background: linear-gradient(135deg, #fdf0e0 0%, #f5d9a8 100%); }
  .bg-clear { background: linear-gradient(135deg, #ede8fd 0%, #c9bef5 100%); }

  /* product real images */
  .product-img img {
    height: 85%; width: auto; max-width: 80%;
    object-fit: contain; position: relative; z-index: 2;
    filter: drop-shadow(0 8px 24px rgba(0,0,0,0.18));
    transition: transform 0.3s;
  }
  .product-card:hover .product-img img { transform: scale(1.07) translateY(-5px); }
  .anjani-placeholder {
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:8px; width:100%; height:100%; padding:16px; text-align:center;
  }
  .anjani-placeholder-icon { font-size:3rem; }
  .anjani-placeholder-label {
    font-size:0.72rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase;
    color:var(--ocean); background:rgba(0,119,182,0.12); padding:4px 14px; border-radius:50px;
  }
  .anjani-upload-hint { font-size:0.7rem; color:var(--muted); line-height:1.5; max-width:150px; }

  /* ── WHY US ── */
  #why { background: var(--white); }
  .why-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; margin-top:60px; }
  .why-features { display:grid; gap:28px; }
  .why-feature { display:flex; gap:20px; align-items:flex-start; }
  .why-icon {
    width:52px; height:52px; border-radius:16px;
    background: rgba(0,119,182,0.1);
    display:flex; align-items:center; justify-content:center;
    font-size:1.4rem; flex-shrink:0;
    color: var(--ocean);
  }
  .why-feature-text h4 { font-size:1rem; font-weight:600; color:var(--deep); margin-bottom:6px; }
  .why-feature-text p { font-size:0.88rem; color:var(--muted); line-height:1.65; }

  .why-visual {
    background: linear-gradient(135deg, var(--deep) 0%, var(--ocean) 100%);
    border-radius:32px;
    padding:50px;
    color:white; text-align:center;
    position:relative; overflow:hidden;
  }
  .why-visual::before {
    content:'';
    position:absolute; top:-60px; right:-60px;
    width:200px; height:200px;
    background:rgba(255,255,255,0.05); border-radius:50%;
  }
  .why-visual-emoji { font-size:4rem; margin-bottom:20px; display:block; }
  .why-visual h3 {
    font-family:'Cormorant Garamond',serif;
    font-size:2.2rem; font-weight:300; margin-bottom:16px;
  }
  .why-visual p { font-size:0.9rem; opacity:0.75; line-height:1.7; }
  .coverage-chip {
    display:inline-block; margin-top:24px;
    background:rgba(255,255,255,0.15); padding:10px 24px; border-radius:50px;
    font-size:0.82rem; font-weight:600; letter-spacing:0.1em;
  }

  /* ── FREE SAMPLE ── */
  #sample {
    background: linear-gradient(135deg, var(--deep) 0%, #0077B6 60%, #00B4D8 100%);
    padding: 80px 5%;
    text-align:center; color:white;
    position:relative; overflow:hidden;
  }
  #sample::before {
    content:'';
    position:absolute; top:-100px; left:-100px;
    width:400px; height:400px;
    background:rgba(255,255,255,0.04); border-radius:50%;
  }
  #sample::after {
    content:'';
    position:absolute; bottom:-80px; right:-80px;
    width:300px; height:300px;
    background:rgba(255,255,255,0.04); border-radius:50%;
  }
  .sample-inner { position:relative; z-index:2; max-width:700px; margin:0 auto; }
  .sample-inner .section-tag { color:var(--sky); }
  .sample-inner .section-title { color:white; margin-bottom:16px; }
  .sample-inner p { color:rgba(255,255,255,0.75); font-size:1rem; line-height:1.7; margin-bottom:36px; }
  .btn-white {
    background:white; color:var(--ocean);
    padding:16px 44px; border-radius:50px;
    font-size:0.95rem; font-weight:700;
    text-decoration:none; border:none; cursor:pointer;
    display:inline-flex; align-items:center; gap:8px;
    transition: transform 0.2s, box-shadow 0.2s;
    box-shadow: 0 8px 30px rgba(0,0,0,0.2);
  }
  .btn-white:hover { transform:translateY(-2px); box-shadow:0 14px 40px rgba(0,0,0,0.3); }

  /* ── FORMS SECTION ── */
  #forms { background: var(--off); }
  .forms-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:60px; }

  .form-card {
    background:white;
    border-radius:28px;
    padding:40px;
    box-shadow:0 4px 40px rgba(0,119,182,0.08);
  }
  .form-card h3 {
    font-family:'Cormorant Garamond',serif;
    font-size:1.8rem; font-weight:600; color:var(--deep); margin-bottom:8px;
  }
  .form-card p { font-size:0.88rem; color:var(--muted); margin-bottom:28px; line-height:1.6; }

  .form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .form-group { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; }
  .form-group label { font-size:0.78rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); }
  .form-group input,
  .form-group select,
  .form-group textarea {
    padding:13px 16px;
    border:1.5px solid #e2edf5;
    border-radius:12px;
    font-size:0.9rem;
    font-family:'DM Sans',sans-serif;
    color:var(--text);
    background:var(--off);
    transition:border-color 0.2s, box-shadow 0.2s;
    outline:none;
  }
  .form-group input:focus,
  .form-group select:focus,
  .form-group textarea:focus {
    border-color:var(--ocean);
    box-shadow:0 0 0 3px rgba(0,119,182,0.1);
    background:white;
  }
  .form-group textarea { resize:vertical; min-height:100px; }

  .form-submit {
    width:100%; padding:15px;
    background:var(--ocean); color:white;
    border:none; border-radius:14px;
    font-size:0.95rem; font-weight:600;
    cursor:pointer; margin-top:8px;
    transition:background 0.2s, transform 0.2s;
    display:flex; align-items:center; justify-content:center; gap:8px;
  }
  .form-submit:hover { background:var(--deep); transform:translateY(-1px); }
  .form-submit:disabled { opacity:0.6; cursor:not-allowed; transform:none; }

  .success-msg {
    display:none; text-align:center; padding:20px;
    color:var(--ocean); font-weight:600;
    background:rgba(0,119,182,0.07); border-radius:12px; margin-top:12px;
  }

  /* ── SUBSCRIPTION SECTION ── */
  #subscribe { background:white; }
  .subscribe-grid { display:grid; grid-template-columns:1fr 2fr; gap:60px; align-items:start; margin-top:60px; }
  .subscribe-plans { display:grid; gap:20px; }
  .plan-card {
    border:2px solid #e2edf5; border-radius:20px; padding:28px;
    transition: border-color 0.2s, box-shadow 0.2s;
    cursor:pointer;
  }
  .plan-card:hover, .plan-card.active { border-color:var(--ocean); box-shadow:0 4px 20px rgba(0,119,182,0.12); }
  .plan-card h4 { font-size:1rem; font-weight:600; color:var(--deep); margin-bottom:4px; }
  .plan-card p { font-size:0.85rem; color:var(--muted); }

  /* ── TESTIMONIALS ── */
  #testimonials { background: var(--off); }
  .testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:60px; }
  .testi-card {
    background:white; border-radius:24px; padding:32px;
    box-shadow:0 2px 20px rgba(0,119,182,0.07);
    transition:transform 0.3s;
  }
  .testi-card:hover { transform:translateY(-4px); }
  .testi-stars { color:#f4c842; font-size:1rem; margin-bottom:16px; }
  .testi-text { font-size:0.92rem; color:var(--text); line-height:1.7; margin-bottom:20px; font-style:italic; }
  .testi-author { display:flex; align-items:center; gap:12px; }
  .testi-avatar {
    width:42px; height:42px; border-radius:50%;
    background:linear-gradient(135deg,var(--ocean),var(--sky));
    display:flex; align-items:center; justify-content:center;
    color:white; font-weight:700; font-size:1rem;
  }
  .testi-name { font-weight:600; font-size:0.9rem; color:var(--deep); }
  .testi-loc { font-size:0.78rem; color:var(--muted); }

  /* ── FOOTER ── */
  footer {
    background:var(--deep); color:white;
    padding:70px 5% 32px;
  }
  .footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:60px; margin-bottom:60px; }
  .footer-brand .nav-logo { color:var(--sky); font-size:2rem; display:block; margin-bottom:16px; }
  .footer-brand .nav-logo span { color:white; }
  .footer-brand p { font-size:0.88rem; opacity:0.65; line-height:1.7; max-width:280px; }
  .footer-social { display:flex; gap:12px; margin-top:24px; }
  .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.1); display:flex; align-items:center; justify-content:center;
    color:white; text-decoration:none; font-size:0.9rem; transition:background 0.2s;
  }
  .social-btn:hover { background:var(--ocean); }
  footer h4 { font-size:0.8rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; opacity:0.5; margin-bottom:20px; }
  footer ul { list-style:none; display:grid; gap:12px; }
  footer ul a { text-decoration:none; color:white; font-size:0.88rem; opacity:0.75; transition:opacity 0.2s; }
  footer ul a:hover { opacity:1; }
  .footer-bottom {
    border-top:1px solid rgba(255,255,255,0.1);
    padding-top:28px;
    display:flex; justify-content:space-between; align-items:center;
    font-size:0.8rem; opacity:0.5; flex-wrap:wrap; gap:12px;
  }

  /* ── WHATSAPP FLOAT ── */
  .wa-float {
    position:fixed; bottom:28px; right:28px; z-index:999;
    width:60px; height:60px; border-radius:50%;
    background:#25D366; color:white;
    display:flex; align-items:center; justify-content:center;
    font-size:1.6rem; text-decoration:none;
    box-shadow:0 6px 30px rgba(37,211,102,0.45);
    transition:transform 0.2s, box-shadow 0.2s;
    animation: waWiggle 3s ease-in-out infinite;
  }
  .wa-float:hover { transform:scale(1.12); box-shadow:0 10px 40px rgba(37,211,102,0.6); }
  .wa-tooltip {
    position:absolute; right:74px; top:50%; transform:translateY(-50%);
    background:var(--deep); color:white;
    padding:8px 14px; border-radius:8px;
    font-size:0.8rem; font-weight:500; white-space:nowrap;
    opacity:0; pointer-events:none; transition:opacity 0.2s;
  }
  .wa-float:hover .wa-tooltip { opacity:1; }

  /* ── MODAL ── */
  .modal-overlay {
    display:none; position:fixed; inset:0; z-index:2000;
    background:rgba(2,62,138,0.5); backdrop-filter:blur(6px);
    align-items:center; justify-content:center; padding:20px;
  }
  .modal-overlay.open { display:flex; }
  .modal {
    background:white; border-radius:28px; padding:48px;
    max-width:520px; width:100%;
    box-shadow:0 30px 80px rgba(0,0,0,0.25);
    position:relative;
    animation: modalIn 0.3s ease both;
  }
  .modal-close {
    position:absolute; top:20px; right:20px;
    background:var(--off); border:none; cursor:pointer;
    width:36px; height:36px; border-radius:50%;
    font-size:1.1rem; display:flex; align-items:center; justify-content:center;
    color:var(--muted); transition:background 0.2s;
  }
  .modal-close:hover { background:#e2edf5; }
  .modal h3 {
    font-family:'Cormorant Garamond',serif;
    font-size:2rem; color:var(--deep); margin-bottom:8px;
  }
  .modal p { font-size:0.88rem; color:var(--muted); margin-bottom:24px; }

  /* ── ANIMATIONS ── */
  @keyframes fadeUp {
    from { opacity:0; transform:translateY(30px); }
    to { opacity:1; transform:translateY(0); }
  }
  @keyframes float {
    0%,100% { transform:translateY(0) rotate(-0.5deg); }
    25%      { transform:translateY(-10px) rotate(0.3deg); }
    50%      { transform:translateY(-20px) rotate(0.5deg); }
    75%      { transform:translateY(-10px) rotate(-0.3deg); }
  }
  @keyframes pulse {
    0%,100% { transform:scale(1);    opacity:0.85; }
    50%      { transform:scale(1.18); opacity:0.4;  }
  }
  @keyframes drip {
    0%   { transform:translateY(0)   scale(1,1);    opacity:0.8; }
    40%  { transform:translateY(14px) scale(0.85,1.15); opacity:0.55; }
    70%  { transform:translateY(26px) scale(0.7,0.8);  opacity:0.3; }
    100% { transform:translateY(36px) scale(0.5,0.5);  opacity:0;   }
  }
  @keyframes marquee {
    from { transform:translateX(0); }
    to { transform:translateX(-50%); }
  }
  @keyframes waWiggle {
    0%,100% { transform:rotate(0deg); }
    10% { transform:rotate(-8deg); }
    20% { transform:rotate(8deg); }
    30% { transform:rotate(0deg); }
  }
  @keyframes modalIn {
    from { opacity:0; transform:scale(0.94) translateY(20px); }
    to { opacity:1; transform:scale(1) translateY(0); }
  }

  /* ── MOBILE ── */

  /* ══════════════════════════════════════════════════
     RESPONSIVE — TABLET (max 900px)
  ══════════════════════════════════════════════════ */
  @media (max-width: 900px) {

    /* NAV */
    .nav-links { display:none; }
    .nav-links.open {
      display:flex; flex-direction:column;
      position:absolute; top:100%; left:0; right:0;
      background:white; padding:20px 5%;
      border-top:1px solid #e2edf5;
      box-shadow:0 10px 30px rgba(0,0,0,0.1);
      gap:16px; z-index:999;
    }
    .nav-links.open a { font-size:1rem; }
    .nav-links.open .nav-cta { text-align:center; }
    .hamburger { display:flex; }

    /* SECTIONS — reduce padding */
    section { padding:70px 5%; }
    #sample { padding:60px 5%; }

    /* HERO */
    .hero-inner {
      grid-template-columns:1fr;
      text-align:center;
      padding:50px 5% 40px;
      gap:40px;
    }
    .hero-visual { order:-1; }
    .hero-sub { margin:0 auto 32px; }
    .hero-btns { justify-content:center; }
    .hero-stats { justify-content:center; gap:30px; }
    .hero-eyebrow { font-size:0.72rem; }
    .bottle-wrap { width:220px; height:320px; margin:0 auto; }
    .bottle-svg { object-fit:contain; width:100%; height:100%; }

    /* PRODUCTS */
    .products-grid { grid-template-columns:1fr 1fr; gap:16px; }
    .product-card.featured { grid-column:span 2; }
    .products-header { flex-direction:column; align-items:flex-start; gap:16px; }
    .products-header .btn-primary { width:100%; text-align:center; justify-content:center; }

    /* WHY */
    .why-grid { grid-template-columns:1fr; gap:40px; }
    .why-visual { padding:36px; }

    /* FORMS */
    .forms-grid { grid-template-columns:1fr; gap:28px; }
    .form-row { grid-template-columns:1fr; }
    .form-card { padding:28px; }

    /* TESTIMONIALS */
    .testimonials-grid { grid-template-columns:1fr 1fr; gap:16px; }

    /* PROMOS */
    .promo-header { flex-direction:column; align-items:flex-start; gap:12px; }
    .promo-content { padding:36px 40px; }
    .promo-title { font-size:1.8rem; }
    .promo-update-hint { display:none; }
    .thumb-strip { display:none; }

    /* FOOTER */
    .footer-grid { grid-template-columns:1fr 1fr; gap:40px; }
  }

  /* ══════════════════════════════════════════════════
     RESPONSIVE — MOBILE (max 600px)
  ══════════════════════════════════════════════════ */
  @media (max-width: 600px) {

    /* GLOBAL */
    section { padding:56px 4%; }
    .section-title { font-size:2rem; }
    .section-sub { font-size:0.9rem; }

    /* NAV */
    nav { padding:14px 4%; }
    .nav-logo { font-size:1.4rem; }

    /* HERO */
    .hero { padding-top:70px; }
    .hero-inner { padding:36px 4% 32px; gap:28px; }
    .hero-title { font-size:2.4rem; }
    .hero-sub { font-size:0.9rem; margin-bottom:24px; }
    .hero-eyebrow { font-size:0.68rem; padding:5px 12px; }
    .hero-btns { flex-direction:column; gap:12px; width:100%; }
    .hero-btns .btn-primary,
    .hero-btns .btn-outline { width:100%; justify-content:center; padding:14px 20px; font-size:0.9rem; }
    .hero-stats { flex-wrap:wrap; gap:16px; justify-content:space-around; }
    .stat-num { font-size:1.8rem; }
    .stat-label { font-size:0.72rem; }
    .bottle-wrap { width:180px; height:260px; }

    /* MARQUEE */
    .marquee-item { font-size:0.75rem; gap:14px; }

    /* PRODUCTS */
    .products-grid { grid-template-columns:1fr; gap:14px; }
    .product-card.featured { grid-column:span 1; }
    .product-card.featured .product-img { height:220px; font-size:5rem; }
    .product-img { height:180px; }
    .product-body { padding:18px; }
    .product-name { font-size:1.3rem; }
    .product-desc { font-size:0.83rem; }
    .products-header .btn-primary { font-size:0.85rem; padding:12px 20px; }

    /* WHY */
    .why-feature { flex-direction:column; gap:12px; }
    .why-icon { width:44px; height:44px; font-size:1.2rem; border-radius:12px; }
    .why-visual { padding:28px 24px; border-radius:24px; }
    .why-visual h3 { font-size:1.7rem; }
    .why-visual p { font-size:0.85rem; }

    /* FREE SAMPLE SECTION */
    #sample { padding:56px 4%; }
    .sample-inner .section-title { font-size:2rem; }
    .sample-inner p { font-size:0.88rem; }
    .btn-white { padding:13px 28px; font-size:0.88rem; }

    /* FORMS */
    .form-card { padding:22px 18px; border-radius:20px; }
    .form-card h3 { font-size:1.5rem; }
    .form-card p { font-size:0.83rem; margin-bottom:20px; }
    .form-group input,
    .form-group select,
    .form-group textarea { font-size:0.88rem; padding:11px 14px; }
    .form-group label { font-size:0.72rem; }
    .form-submit { font-size:0.9rem; padding:13px; }

    /* TESTIMONIALS */
    .testimonials-grid { grid-template-columns:1fr; }
    .testi-card { padding:24px 20px; }
    .testi-text { font-size:0.88rem; }

    /* PROMOS */
    #promos { padding:56px 4%; }
    .promo-slide { aspect-ratio:unset; min-height:320px; }
    .promo-content { padding:28px 22px; max-width:100%; }
    .promo-title { font-size:1.5rem; line-height:1.2; }
    .promo-desc { font-size:0.83rem; margin-bottom:18px; }
    .promo-tag { font-size:0.65rem; padding:4px 10px; }
    .promo-cta { font-size:0.82rem; padding:9px 20px; }
    .carousel-btn { width:36px; height:36px; font-size:0.85rem; }
    .carousel-btn.prev { left:10px; }
    .carousel-btn.next { right:10px; }
    .edit-guide { padding:20px 18px; border-radius:16px; }
    .edit-guide h4 { font-size:0.85rem; }
    .edit-guide ol li { font-size:0.8rem; }

    /* MODAL */
    .modal { padding:28px 20px; border-radius:20px; }
    .modal h3 { font-size:1.6rem; }
    .modal p { font-size:0.85rem; }

    /* FOOTER */
    .footer-grid { grid-template-columns:1fr; gap:32px; }
    footer { padding:50px 4% 24px; }
    .footer-brand .nav-logo { font-size:1.6rem; }
    .footer-brand p { font-size:0.84rem; }
    footer h4 { font-size:0.75rem; margin-bottom:14px; }
    footer ul a { font-size:0.84rem; }
    .footer-bottom { flex-direction:column; text-align:center; gap:8px; font-size:0.75rem; }
    .footer-social { gap:10px; }
    .social-btn { width:34px; height:34px; font-size:0.82rem; }

    /* WHATSAPP FLOAT */
    .wa-float { width:52px; height:52px; bottom:20px; right:16px; font-size:1.4rem; }
    .wa-tooltip { display:none; }

    /* BUTTONS GLOBAL */
    .btn-primary, .btn-outline { font-size:0.88rem; padding:13px 24px; }
  }

  /* ══════════════════════════════════════════════════
     RESPONSIVE — SMALL MOBILE (max 400px)
  ══════════════════════════════════════════════════ */
  @media (max-width: 400px) {
    .hero-title { font-size:2rem; }
    .bottle-wrap { width:150px; height:220px; }
    .section-title { font-size:1.75rem; }
    .promo-title { font-size:1.3rem; }
    .modal { padding:24px 16px; }
    .form-card { padding:18px 14px; }
    nav { padding:12px 4%; }
    .nav-logo { font-size:1.3rem; }
  }

  /* ── PROMO CAROUSEL ── */
  #promos { background: var(--white); padding: 100px 5%; }

  .promo-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px; flex-wrap:wrap; gap:16px; }
  .promo-header-right { display:flex; align-items:center; gap:12px; }
  .promo-update-hint {
    font-size:0.78rem; color:var(--muted);
    background: var(--off); border:1px dashed #b0cfe0;
    padding:8px 16px; border-radius:50px;
    display:flex; align-items:center; gap:6px;
  }

  .carousel-wrapper { position:relative; overflow:hidden; border-radius:28px; }

  .carousel-track {
    display:flex;
    transition: transform 0.55s cubic-bezier(0.4,0,0.2,1);
    will-change: transform;
  }

  .promo-slide {
    min-width:100%; position:relative;
    border-radius:28px; overflow:hidden;
    aspect-ratio:16/6;
    background: linear-gradient(135deg,#cce8f7,#90E0EF);
    display:flex; align-items:center;
    flex-shrink:0;
  }

  .promo-slide img {
    position:absolute; inset:0;
    width:100%; height:100%;
    object-fit:cover;
    display:block;
  }

  .promo-overlay {
    position:absolute; inset:0;
    background: linear-gradient(90deg, rgba(2,62,138,0.72) 0%, rgba(2,62,138,0.2) 60%, transparent 100%);
    z-index:1;
  }

  .promo-content {
    position:relative; z-index:2;
    padding: 48px 60px;
    color:white; max-width:600px;
  }
  .promo-tag {
    display:inline-block;
    font-size:0.7rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase;
    background:rgba(255,255,255,0.2); padding:5px 14px; border-radius:50px;
    margin-bottom:14px; backdrop-filter:blur(6px);
  }
  .promo-title {
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(1.8rem,3.5vw,3rem); font-weight:600;
    line-height:1.1; margin-bottom:12px;
  }
  .promo-desc { font-size:0.92rem; opacity:0.85; line-height:1.65; margin-bottom:24px; max-width:420px; }
  .promo-cta {
    display:inline-flex; align-items:center; gap:8px;
    background:white; color:var(--deep);
    padding:11px 28px; border-radius:50px;
    font-size:0.88rem; font-weight:700;
    text-decoration:none; border:none; cursor:pointer;
    transition:transform 0.2s, box-shadow 0.2s;
    box-shadow:0 4px 20px rgba(0,0,0,0.15);
  }
  .promo-cta:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(0,0,0,0.2); }

  /* Placeholder slide (shown when no image set) */
  .promo-placeholder {
    position:absolute; inset:0;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:12px; color:rgba(255,255,255,0.6);
    font-size:0.88rem; text-align:center; padding:20px;
    background: linear-gradient(135deg, #b8d8f0 0%, #7ec8e3 100%);
  }
  .promo-placeholder-icon { font-size:3rem; opacity:0.5; }
  .promo-placeholder-text { font-weight:600; font-size:0.85rem; color:var(--deep); opacity:0.5; }

  /* Nav arrows */
  .carousel-btn {
    position:absolute; top:50%; transform:translateY(-50%);
    z-index:10; width:48px; height:48px; border-radius:50%;
    background:rgba(255,255,255,0.9); border:none; cursor:pointer;
    display:flex; align-items:center; justify-content:center;
    font-size:1.1rem; color:var(--deep);
    box-shadow:0 4px 20px rgba(0,0,0,0.15);
    transition:background 0.2s, transform 0.2s;
    backdrop-filter:blur(6px);
  }
  .carousel-btn:hover { background:white; transform:translateY(-50%) scale(1.08); }
  .carousel-btn.prev { left:20px; }
  .carousel-btn.next { right:20px; }

  /* Dots */
  .carousel-dots {
    display:flex; justify-content:center; gap:8px; margin-top:20px;
  }
  .dot {
    width:8px; height:8px; border-radius:50%;
    background:#b0cfe0; border:none; cursor:pointer;
    transition:background 0.2s, transform 0.2s;
    padding:0;
  }
  .dot.active { background:var(--ocean); transform:scale(1.3); }

  /* Thumbnail strip */
  .thumb-strip {
    display:flex; gap:12px; margin-top:16px; overflow-x:auto;
    padding-bottom:4px; scrollbar-width:thin;
  }
  .thumb {
    min-width:90px; height:60px; border-radius:12px;
    overflow:hidden; cursor:pointer; flex-shrink:0;
    border:2px solid transparent;
    transition:border-color 0.2s, transform 0.2s;
    background:var(--off);
    display:flex; align-items:center; justify-content:center;
    font-size:0.75rem; color:var(--muted); font-weight:500;
  }
  .thumb img { width:100%; height:100%; object-fit:cover; }
  .thumb.active { border-color:var(--ocean); transform:scale(1.05); }
  .thumb.empty { border:2px dashed #b0cfe0; }

  /* Edit guide box */
  .edit-guide {
    margin-top:32px;
    background:var(--off); border:1.5px dashed #90c4e0;
    border-radius:20px; padding:28px 32px;
  }
  .edit-guide h4 {
    font-size:0.9rem; font-weight:700; color:var(--deep);
    margin-bottom:12px; display:flex; align-items:center; gap:8px;
  }
  .edit-guide ol { padding-left:20px; display:grid; gap:8px; }
  .edit-guide ol li { font-size:0.85rem; color:var(--muted); line-height:1.6; }
  .edit-guide code {
    background:rgba(0,119,182,0.1); color:var(--ocean);
    padding:2px 8px; border-radius:5px; font-size:0.82rem;
    font-family:monospace;
  }

  /* carousel mobile handled in main media queries above */
