/* ============================================================
   VISAHURRY — COMPLETE UNIFIED STYLESHEET
   (styles.css + iphone-frames.css merged & fixed)
============================================================ */

    :root {
      --primary: #6366f1;
      --primary-dark: #4f46e5;
      --secondary: #8b5cf6;
      --accent: #ec4899;
      --green: #22c55e;
      --teal: #0d9488;
      --text: #1a1a1a;
      --muted: #4b5563;
      --light: #f9fafb;
      --white: #ffffff;
      --radius: 16px;
      --shadow: 0 8px 32px rgba(0,0,0,0.06);
      --shadow-lg: 0 20px 48px rgba(0,0,0,0.12);
      --transition: all 0.3s ease;
    }

    /* RESET */
    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; -webkit-tap-highlight-color:transparent; }
    body {
      font-family:'Outfit', ui-sans-serif, system-ui, sans-serif;
      color:var(--text); background:var(--white);
      line-height:1.6; overflow-x:hidden;
      -webkit-font-smoothing:antialiased;
      -moz-osx-font-smoothing:grayscale;
      font-size:16px;
      font-weight:400;
      letter-spacing:-0.01em;
    }
    /* Space Grotesk for all headings — matches visahurry.com exactly */
    h1, h2, h3, h4, h5, h6 {
      font-family:'Space Grotesk', ui-sans-serif, system-ui, sans-serif;
      line-height:1.15;
      color:var(--text);
      font-weight:700;
      letter-spacing:-0.02em;
    }
    a { color:inherit; text-decoration:none; transition:var(--transition); }
    img { max-width:100%; display:block; }
    ul { list-style:none; }

    /* ANIMATIONS */
    @keyframes pulse { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.1);opacity:0.8} }
    @keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
    @keyframes gradMove { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
    @keyframes fadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
    @keyframes slideDown { from{max-height:0;opacity:0} to{max-height:600px;opacity:1} }

    /* BACKGROUND GRID */
    .bg-grid {
      position:fixed; inset:0; z-index:-1; pointer-events:none;
      background-image:linear-gradient(rgba(99,102,241,0.04) 1px,transparent 1px),
                       linear-gradient(90deg,rgba(99,102,241,0.04) 1px,transparent 1px);
      background-size:60px 60px;
    }

    /* LAYOUT */
    .container { width:100%; max-width:1200px; margin:0 auto; padding:0 1.5rem; }
    .section { padding:5rem 1.5rem; max-width:1200px; margin:0 auto; }

    /* ---- HERO ---- */
    .hero {
      min-height:100vh; display:flex; align-items:center; justify-content:center;
      text-align:center; padding:6rem 1.5rem 4rem; position:relative;
    }
    .hero-content { max-width:800px; animation:fadeUp 0.8s ease both; }
    .badge {
      display:inline-flex; align-items:center; gap:8px;
      background:rgba(255,255,255,0.95); backdrop-filter:blur(20px);
      border:1px solid rgba(99,102,241,0.15); border-radius:50px;
      padding:10px 24px; font-weight:600; font-size:0.95rem;
      box-shadow:0 4px 20px rgba(0,0,0,0.06); margin-bottom:2rem;
    }
    .status-dot {
      width:10px; height:10px; background:#22c55e; border-radius:50%;
      box-shadow:0 0 0 3px rgba(34,197,94,0.25); animation:pulse 2s infinite;
    }
    .headline {
      font-size:clamp(3rem,8vw,5.5rem); font-weight:800;
      letter-spacing:-0.03em; margin-bottom:1.5rem; line-height:1.05;
    }
    .gradient-text {
      background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899,#f59e0b);
      background-size:300% 300%; -webkit-background-clip:text;
      -webkit-text-fill-color:transparent; background-clip:text;
      animation:gradMove 5s infinite;
    }
    .subtext { font-size:1.2rem; color:var(--muted); max-width:600px; margin:0 auto 2.5rem; }

    .hero-cta {
      display:inline-flex; align-items:center; gap:12px;
      background:linear-gradient(90deg,var(--green),var(--teal));
      color:#fff; padding:16px 36px; border-radius:50px;
      font-size:1.1rem; font-weight:700; margin-bottom:3rem;
      box-shadow:0 6px 24px rgba(34,197,94,0.35); transition:var(--transition);
    }
    .hero-cta:hover { transform:translateY(-3px); box-shadow:0 10px 32px rgba(34,197,94,0.45); }
    .hero-cta img { width:24px; height:24px; object-fit:contain; }

    .stats-bar {
      display:flex; justify-content:center; flex-wrap:wrap; gap:0;
      background:rgba(255,255,255,0.97); border-radius:20px;
      box-shadow:0 10px 40px rgba(0,0,0,0.07); border:1px solid rgba(0,0,0,0.05);
      overflow:hidden; margin-top:1rem;
    }
    .stat { flex:1 1 160px; padding:1.5rem 2rem; text-align:center; position:relative; }
    .stat + .stat::before {
      content:''; position:absolute; left:0; top:25%; height:50%;
      width:1px; background:rgba(0,0,0,0.08);
    }
    .stat-num {
      font-size:2.8rem; font-weight:800; display:block; line-height:1;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
    }
    .stat-label { font-size:0.95rem; font-weight:600; color:var(--muted); margin-top:6px; }

    /* ---- SECTION HEADERS ---- */
    .section-tag {
      display:inline-block; background:rgba(99,102,241,0.08); color:var(--primary);
      border:1px solid rgba(99,102,241,0.2); border-radius:50px;
      padding:6px 20px; font-size:0.85rem; font-weight:600;
      letter-spacing:0.05em; text-transform:uppercase; margin-bottom:1rem;
    }
    .section-title { font-size:clamp(2rem,5vw,3rem); font-weight:800; margin-bottom:1rem; }
    .section-sub { font-size:1.1rem; color:var(--muted); max-width:600px; margin:0 auto 3rem; }
    .section-header { text-align:center; margin-bottom:3rem; }

    /* ---- HOW IT WORKS ---- */
    .steps-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:2rem; margin-bottom:4rem; }
    .step-card {
      background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:20px;
      padding:2.5rem 2rem; text-align:center; box-shadow:var(--shadow);
      transition:var(--transition); position:relative; overflow:hidden;
    }
    .step-card::before {
      content:''; position:absolute; inset:0;
      background:linear-gradient(135deg,rgba(99,102,241,0.03),transparent);
    }
    .step-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
    .step-num {
      width:48px; height:48px; background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center;
      font-weight:800; font-size:1.1rem; margin:0 auto 1.5rem;
    }
    .step-icon { font-size:2.5rem; margin-bottom:1rem; }
    .step-card h3 { font-size:1.3rem; margin-bottom:0.75rem; }
    .step-card p { color:var(--muted); font-size:0.95rem; }

    /* Contact cards */
    .contact-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:2rem; margin-bottom:3rem; }
    .main-card {
      background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:20px;
      padding:2.5rem 2rem; box-shadow:var(--shadow); transition:var(--transition); position:relative;
    }
    .main-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .popular-tag {
      position:absolute; top:-14px; left:50%; transform:translateX(-50%);
      background:linear-gradient(90deg,var(--primary),var(--secondary));
      color:#fff; padding:5px 20px; border-radius:50px; font-size:0.8rem; font-weight:700;
      white-space:nowrap;
    }
    .card-icon { font-size:3rem; margin-bottom:1.5rem; }
    .main-card h3 { font-size:1.4rem; margin-bottom:0.75rem; }
    .main-card > p, .main-card > div > p { color:var(--muted); margin-bottom:2rem; }

    .wa-btn {
      display:flex; align-items:center; justify-content:center; gap:12px;
      background:linear-gradient(90deg,var(--green),var(--teal));
      color:#fff; padding:14px 28px; border-radius:50px; font-weight:700;
      font-size:1rem; box-shadow:0 4px 16px rgba(34,197,94,0.3);
      transition:var(--transition); margin-bottom:1rem; border:none; cursor:pointer;
    }
    .wa-btn:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(34,197,94,0.4); }
    .wa-btn img { width:22px; height:22px; }
    .call-btn {
      display:block; padding:12px; border-radius:12px; text-align:center;
      font-weight:600; background:rgba(99,102,241,0.08); color:var(--primary);
      border:1px solid rgba(99,102,241,0.2); transition:var(--transition);
    }
    .call-btn:hover { background:var(--primary); color:#fff; }

    /* Form */
    .quick-form { display:flex; flex-direction:column; gap:12px; }
    .form-field, .form-select {
      width:100%; padding:12px 16px; border:1.5px solid #e5e7eb;
      border-radius:10px; font-size:1rem; font-family:inherit;
      background:#f9fafb; transition:var(--transition); appearance:none;
    }
    .form-field:focus, .form-select:focus {
      outline:none; border-color:var(--primary);
      box-shadow:0 0 0 3px rgba(99,102,241,0.12); background:#fff;
    }
    .submit-btn {
      padding:14px; border-radius:12px; font-weight:700; font-size:1rem;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff; border:none; cursor:pointer; transition:var(--transition);
    }
    .submit-btn:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(99,102,241,0.35); }

    /* Trust badges */
    .trust-row {
      display:flex; flex-wrap:wrap; gap:1rem; justify-content:center; margin-top:2rem;
    }
    .trust-pill {
      background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:50px;
      padding:10px 20px; font-weight:600; font-size:0.95rem;
      box-shadow:0 2px 12px rgba(0,0,0,0.04);
    }

    /* Floating offer */
    .floating-offer {
      position:fixed; bottom:2rem; left:2rem; z-index:900;
      background:var(--primary-dark); color:#fff; padding:12px 24px;
      border-radius:50px; font-weight:600; font-size:0.9rem;
      box-shadow:0 8px 24px rgba(79,70,229,0.3); animation:float 3s infinite;
    }

    /* ---- WHY CHOOSE US ---- */
    .benefits-hero { text-align:center; margin-bottom:3rem; }
    .highlight-badge {
      display:inline-block; background:linear-gradient(135deg,rgba(99,102,241,0.08),rgba(139,92,246,0.08));
      border:1px solid rgba(99,102,241,0.2); border-radius:50px;
      padding:10px 24px; font-weight:600; color:var(--primary); margin-top:1rem;
    }
    .benefits-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1.5rem; margin-bottom:3rem; }
    .benefit-card {
      background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:16px;
      padding:2rem 1.75rem; box-shadow:var(--shadow); transition:var(--transition);
    }
    .benefit-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .benefit-card.primary-benefit { border-top:3px solid var(--primary); }
    .benefit-icon { font-size:2rem; margin-bottom:1rem; }
    .benefit-card h3 { font-size:1.1rem; margin-bottom:0.5rem; }
    .benefit-card p { font-size:0.9rem; color:var(--muted); line-height:1.6; }
    .benefit-card p + p { margin-top:0.5rem; font-size:0.85rem; opacity:0.8; }

    /* Comparison */
    .comparison-section { margin:3rem 0; }
    .comparison-title { text-align:center; font-size:2rem; font-weight:800; margin-bottom:2rem; }
    .comparison-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:2rem; }
    .comparison-card { border-radius:16px; padding:2rem; }
    .comparison-card.our-service { background:linear-gradient(135deg,rgba(99,102,241,0.05),rgba(139,92,246,0.05)); border:2px solid rgba(99,102,241,0.2); }
    .comparison-card.others { background:#f9fafb; border:1px solid #e5e7eb; }
    .comparison-header { font-size:1.2rem; font-weight:700; margin-bottom:1.5rem; }
    .comparison-list { display:flex; flex-direction:column; gap:10px; }
    .comparison-list li { display:flex; align-items:center; gap:10px; font-size:0.95rem; }
    .check-icon { color:var(--green); font-weight:700; }
    .cross-icon { color:#ef4444; font-weight:700; }
    .guarantee-section {
      text-align:center; background:linear-gradient(135deg,rgba(99,102,241,0.06),rgba(139,92,246,0.06));
      border:1px solid rgba(99,102,241,0.15); border-radius:20px; padding:3rem 2rem; margin-top:3rem;
    }
    .guarantee-section h2 { font-size:2rem; margin-bottom:0.5rem; }
    .guarantee-section p { color:var(--muted); font-size:1.1rem; }

    /* ---- TESTIMONIALS ---- */
    .testimonial-section {
      padding:5rem 0 6rem; text-align:center; background:#f9fafb;
      overflow:hidden;
    }
    .testimonial-section h2 { font-size:clamp(1.8rem,4vw,2.8rem); font-weight:800; margin-bottom:0.75rem; }
    .testimonial-section > p { color:var(--muted); margin-bottom:3.5rem; font-size:1.05rem; }

    /* Swiper container */
    .swiper {
      width:100%;
      padding:30px 0 70px !important;
      overflow:visible !important;
    }
    .swiper-wrapper { 
      align-items:center; 
    }
    .swiper-slide {
      width:340px !important;
      transition:transform 0.45s cubic-bezier(.25,.46,.45,.94),
                 opacity 0.45s ease;
      opacity:0.45;
      transform:scale(0.84);
      flex-shrink:0;
    }
    .swiper-slide-active {
      opacity:1;
      transform:scale(1);
    }
    .swiper-slide-prev,
    .swiper-slide-next {
      opacity:0.65;
      transform:scale(0.9);
    }
    /* Swiper nav buttons */
    .swiper-button-next,
    .swiper-button-prev {
      color: var(--primary);
      background: white;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      box-shadow: 0 4px 20px rgba(0,0,0,0.15);
      top: 44%;
    }
    .swiper-button-next::after,
    .swiper-button-prev::after {
      font-size: 15px;
      font-weight: 900;
    }
    .swiper-pagination { bottom: 16px; }
    .swiper-pagination-bullet { width:8px; height:8px; background:rgba(99,102,241,0.25); opacity:1; }
    .swiper-pagination-bullet-active { background:var(--primary); width:24px; border-radius:4px; transition:width 0.3s; }

    /* ---- iPHONE FRAME ---- */
    .iphone-frame {
      width: 100%;
      max-width: 300px;
      aspect-ratio: 9/19.5;
      background:#000;
      border-radius:44px;
      padding:3px;
      box-shadow:
        0 0 0 2px #1a1a1a,
        0 0 0 8px #111,
        0 30px 70px rgba(0,0,0,0.45),
        inset 0 0 0 1px rgba(255,255,255,0.08);
      border:8px solid #1a1a1a;
      display:flex;
      flex-direction:column;
      overflow:hidden;
      margin:0 auto;
      position:relative;
    }
    /* Side buttons */
    .iphone-frame::before {
      content:''; position:absolute;
      left:-10px; top:100px;
      width:4px; height:32px;
      background:#222;
      border-radius:2px 0 0 2px;
      box-shadow:0 44px 0 #222, 0 80px 0 #222;
    }
    .iphone-frame::after {
      content:'';
      position:absolute;
      right:-10px; top:130px;
      width:4px; height:52px;
      background:#222;
      border-radius:0 2px 2px 0;
    }

    .screen {
      background:#fff;
      border-radius:36px;
      width:100%;
      height:100%;
      display:flex;
      flex-direction:column;
      overflow:hidden;
      position:relative;
    }

    .dynamic-island {
      position:absolute;
      top:10px;
      left:50%;
      transform:translateX(-50%);
      width:110px;
      height:30px;
      background:#000;
      border-radius:20px;
      z-index:20;
    }

    .status-bar { height:44px; flex-shrink:0; }

    .chat-header {
      background:#075E54;
      color:#fff;
      padding:8px 10px;
      display:flex;
      align-items:center;
      gap:10px;
      box-shadow:0 2px 6px rgba(0,0,0,0.2);
      flex-shrink:0;
      position:relative;
      z-index:15;
    }
    .back-btn {
      display:flex; align-items:center;
      color:rgba(255,255,255,0.9);
      padding:4px;
    }
    .back-btn span { 
      font-size:2rem; 
      line-height:1; 
      font-weight:300;
    }
    .header-actions {
      margin-left:auto;
      display:flex;
      align-items:center;
      gap:16px;
      color:rgba(255,255,255,0.9);
    }
    .header-actions svg {
      cursor:pointer;
    }
    .profile-img {
      width:38px; height:38px; border-radius:50%;
      overflow:hidden; background:#ccc; flex-shrink:0;
    }
    .profile-img img { width:100%; height:100%; object-fit:cover; }
    .chat-info { flex:1; min-width:0; }
    .chat-info h3 {
      font-size:0.9rem; font-weight:600; margin:0; color:#fff;
      white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
      font-family:'Outfit', sans-serif;
      line-height:1.3;
    }
    .chat-info p {
      font-size:0.72rem; color:rgba(255,255,255,0.75); margin:0;
      font-family:'Outfit', sans-serif;
    }

    .chat-area {
      flex:1;
      background:#E5DDD5;
      padding:10px 10px 8px;
      overflow-y:auto;
      display:flex;
      flex-direction:column;
      gap:5px;
    }
    .chat-area::-webkit-scrollbar { display:none; }

    .date-header { text-align:center; margin:6px 0 8px; }
    .date-badge {
      display:inline-block; background:rgba(255,255,255,0.75);
      padding:3px 12px; border-radius:8px;
      font-size:0.68rem; color:#555;
      font-family:'Outfit', sans-serif;
    }

    .message { display:flex; }
    .message.received { justify-content:flex-start; }
    .message.sent { justify-content:flex-end; }

    .message-bubble {
      max-width:80%;
      padding:7px 10px;
      border-radius:14px;
      font-size:0.78rem;
      line-height:1.45;
      box-shadow:0 1px 2px rgba(0,0,0,0.1);
      white-space:pre-wrap;
      word-break:break-word;
      font-family:'Outfit', sans-serif;
    }
    .message.received .message-bubble {
      background:#fff;
      border-top-left-radius:3px;
    }
    .message.sent .message-bubble {
      background:#DCF8C6;
      border-top-right-radius:3px;
    }

    .message-time {
      font-size:0.6rem; color:#999; text-align:right;
      margin-top:2px; display:flex; justify-content:flex-end; gap:3px;
    }
    .check-marks { color:#4fc3f7; }

    .input-container {
      flex-shrink:0;
      background:#f0f0f0;
      padding:7px 10px 10px;
    }
    .input-area {
      background:#fff; border-radius:24px;
      padding:9px 12px; display:flex;
      align-items:center; gap:8px;
    }
    .message-input {
      flex:1; border:none; outline:none;
      font-size:0.82rem; font-family:'Outfit', sans-serif;
      color:#555;
    }
    .emoji-btn, .attach-btn { color:#777; font-size:0.95rem; cursor:pointer; }
    .voice-btn {
      background:#075E54; color:#fff; border:none;
      border-radius:50%; width:30px; height:30px;
      cursor:pointer; display:flex; align-items:center; justify-content:center;
      font-size:0.8rem; flex-shrink:0;
    }

    .home-indicator {
      height:18px; background:#f0f0f0;
      display:flex; align-items:center; justify-content:center;
      flex-shrink:0;
    }
    .home-indicator::after {
      content:''; width:100px; height:4px;
      background:#333; border-radius:2px;
    }

    /* ---- PRICING ---- */
    .pricing-section { padding:5rem 1.5rem; max-width:1200px; margin:0 auto; text-align:center; }
    .guarantee-badge {
      display:inline-block; background:rgba(34,197,94,0.1); color:#15803d;
      border:1px solid rgba(34,197,94,0.3); border-radius:50px;
      padding:8px 20px; font-weight:600; margin-top:1rem;
    }
    .country-section { margin-bottom:3rem; text-align:center; }
    .country-header { display:flex; align-items:center; justify-content:center; gap:12px; margin-bottom:1.5rem; }
    .country-flag { font-size:2rem; }
    .country-title { font-size:1.5rem; font-weight:700; }
    .pricing-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:2rem; }
    .pricing-card {
      background:#fff; border:1px solid rgba(0,0,0,0.07); border-radius:20px;
      padding:2.5rem 2rem; box-shadow:var(--shadow); transition:var(--transition); position:relative;
    }
    .pricing-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }
    .pricing-card .popular-tag {
      position:absolute; top:-14px; left:50%; transform:translateX(-50%);
      background:linear-gradient(90deg,var(--primary),var(--secondary));
      color:#fff; padding:5px 20px; border-radius:50px; font-size:0.8rem; font-weight:700;
    }
    .plan-name { font-size:1.4rem; font-weight:700; margin-bottom:0.75rem; }
    .plan-duration {
      display:inline-block; background:#eff6ff; color:#1d4ed8;
      border:1px solid #bfdbfe; border-radius:50px; padding:4px 14px;
      font-weight:600; font-size:0.85rem; margin-bottom:1.25rem;
    }
    .price { font-size:3rem; font-weight:800; margin:1rem 0 0.25rem; }
    .price-currency { font-size:1.5rem; vertical-align:super; }
    .price-note { font-size:0.85rem; color:var(--muted); margin-bottom:1.5rem; }
    .features-list { display:flex; flex-direction:column; gap:10px; margin-bottom:2rem; text-align:left; }
    .features-list li { display:flex; align-items:flex-start; gap:8px; font-size:0.9rem; }
    .cta-button {
      display:block; width:100%; padding:14px; text-align:center; border-radius:12px;
      font-weight:700; font-size:1rem; background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff; border:none; cursor:pointer; transition:var(--transition);
    }
    .cta-button:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(99,102,241,0.3); }
    .cta-button.secondary { background:transparent; border:2px solid var(--primary); color:var(--primary); }
    .cta-button.secondary:hover { background:var(--primary); color:#fff; }

    /* Add-ons */
    .addon-section { margin:3rem 0; }
    .addon-title { font-size:1.8rem; font-weight:700; margin-bottom:2rem; text-align:center; }
    .addon-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1.5rem; }
    .addon-card {
      background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:16px;
      padding:2rem 1.5rem; text-align:center; box-shadow:var(--shadow); transition:var(--transition);
    }
    .addon-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .addon-card.bundle-deal { border:2px solid var(--primary); background:rgba(99,102,241,0.03); }
    .addon-name { font-size:1.1rem; font-weight:700; margin-bottom:0.5rem; }
    .addon-price { font-size:1.8rem; font-weight:800; color:var(--primary); margin:0.5rem 0; }
    .addon-card p { font-size:0.9rem; color:var(--muted); }
    .savings { display:inline-block; background:rgba(34,197,94,0.1); color:#15803d; border-radius:50px; padding:3px 12px; font-size:0.8rem; font-weight:700; margin-top:0.5rem; }

    .stats-row { display:flex; flex-wrap:wrap; gap:1.5rem; justify-content:center; padding:2rem; background:rgba(99,102,241,0.04); border-radius:16px; margin-top:2rem; }
    .stat-pill { display:flex; align-items:center; gap:8px; font-weight:600; font-size:0.95rem; color:var(--muted); }
    .stat-dot { width:8px; height:8px; background:var(--green); border-radius:50%; }

    /* ---- FAQ ---- */
    .faq-section { padding:5rem 1.5rem; max-width:900px; margin:0 auto; }
    .faq-container { display:flex; flex-direction:column; gap:1rem; }
    .faq-item { background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:14px; overflow:hidden; box-shadow:0 2px 12px rgba(0,0,0,0.04); }
    .faq-item[open] { border-color:rgba(99,102,241,0.25); }
    .faq-summary {
      padding:1.4rem 1.5rem; font-weight:600; font-size:1rem; cursor:pointer;
      display:flex; justify-content:space-between; align-items:center;
      list-style:none; transition:var(--transition); font-family:'Space Grotesk', sans-serif;
    }
    .faq-summary::-webkit-details-marker { display:none; }
    .faq-summary::after { content:'+'; font-size:1.4rem; color:var(--primary); transition:transform 0.3s; flex-shrink:0; margin-left:1rem; }
    .faq-item[open] .faq-summary::after { transform:rotate(45deg); }
    .faq-content { padding:0 1.5rem 1.5rem; color:var(--muted); line-height:1.7; animation:slideDown 0.3s ease; }
    .faq-content a { color:var(--primary); text-decoration:underline; }

    /* ---- FINAL CTA ---- */
    .final-cta-section { padding:5rem 1.5rem; text-align:center; }
    .final-cta-title { font-size:clamp(2.5rem,6vw,4rem); font-weight:800; margin-bottom:1.5rem; }
    .final-cta-highlight { background:linear-gradient(135deg,var(--primary),var(--secondary)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
    .final-cta-subtitle { font-size:1.1rem; color:var(--muted); max-width:600px; margin:0 auto 2.5rem; }
    .mega-cta {
      display:inline-flex; align-items:center; justify-content:center;
      background:linear-gradient(90deg,var(--green),var(--teal));
      color:#fff; padding:1.2rem 3rem; border-radius:50px; font-size:1.2rem; font-weight:700;
      box-shadow:0 8px 28px rgba(34,197,94,0.35); transition:var(--transition); border:none; cursor:pointer;
    }
    .mega-cta:hover { transform:translateY(-3px); box-shadow:0 12px 36px rgba(34,197,94,0.45); }
    .final-guarantee {
      margin-top:2rem; font-size:0.95rem; color:var(--muted);
      background:rgba(99,102,241,0.05); border-radius:12px; padding:1.25rem 2rem; display:inline-block;
    }

    /* ---- STICKY WHATSAPP ---- */
    .sticky-wa {
      position:fixed; bottom:20px; right:20px; z-index:999;
      background:linear-gradient(90deg,var(--green),var(--teal));
      color:#fff; padding:12px 22px; border-radius:50px; font-weight:700;
      display:flex; align-items:center; gap:10px;
      box-shadow:0 8px 24px rgba(34,197,94,0.35); transition:var(--transition);
    }
    .sticky-wa:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(34,197,94,0.45); }

    /* ---- FOOTER ---- */
    .footer { background:#0f172a; color:rgba(255,255,255,0.75); padding:4rem 1.5rem 2rem; }
    .footer-inner { max-width:1200px; margin:0 auto; }
    .footer-main { display:grid; grid-template-columns:1fr 1fr; gap:3rem; margin-bottom:3rem; }
    .footer-logo { font-size:1.6rem; font-weight:800; color:#fff; margin-bottom:1rem; font-family:'Space Grotesk',sans-serif; }
    .footer-desc { font-size:0.9rem; line-height:1.7; max-width:340px; }
    .footer-links-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
    .footer-col h4 { color:#fff; font-weight:700; margin-bottom:1rem; font-size:0.9rem; text-transform:uppercase; letter-spacing:0.08em; }
    .footer-col ul { display:flex; flex-direction:column; gap:8px; }
    .footer-col a { font-size:0.9rem; color:rgba(255,255,255,0.6); transition:color 0.2s; }
    .footer-col a:hover { color:#fff; }
    .footer-divider { height:1px; background:rgba(255,255,255,0.1); margin-bottom:1.5rem; }
    .footer-bottom { text-align:center; font-size:0.85rem; color:rgba(255,255,255,0.4); }

    /* ---- MOBILE ---- */
    @media (max-width:768px) {
      html, body { overflow-x: hidden; }
      .floating-offer { display:none; }
      .stats-bar { flex-direction:column; }
      .stat + .stat::before { width:80%; height:1px; top:0; left:10%; }
      .footer-main { grid-template-columns:1fr; gap:2rem; }
      .footer-links-grid { grid-template-columns:1fr 1fr; }
      .testimonial-section { overflow:hidden; }
      .swiper { padding:20px 0 50px; overflow:hidden; }
      .swiper-slide { width:300px; }
      .swiper-button-next, .swiper-button-prev { display:none; }
      .iphone-frame { max-width: 280px; }
      .trust-row { flex-direction:column; align-items:center; }
      .contact-grid { grid-template-columns:1fr; }
    }
    @media (max-width:640px) {
      .swiper-slide { width:280px; }
      .iphone-frame { max-width: 260px; }
    }
    @media (max-width:480px) {
      .headline { font-size:2rem; }
      .hero-cta { padding:14px 24px; font-size:0.95rem; }
      .testimonial-section { padding:2.5rem 0 3rem; }
      .swiper { padding:15px 0 45px; }
      .swiper-slide { width:260px; }
      .iphone-frame { max-width: 240px; }
      .message-bubble { font-size:0.7rem; padding:5px 8px; }
      .chat-header { padding:5px 8px 7px; }
      .profile-img { width:30px; height:30px; }
      .chat-info h3 { font-size:0.8rem; }
      .testimonial-section > p { margin-bottom:1.5rem; font-size:0.95rem; }
    }
    @media (max-width:360px) {
      .swiper-slide { width:240px; }
      .iphone-frame { max-width: 220px; }
      .message-bubble { font-size:0.65rem; padding:4px 6px; }
      .chat-header { padding:4px 6px 6px; }
    }