/* ══ ROOT ══ */
    :root {
      --primary: #1a3c6e;
      --primary-dark: #0f2549;
      --accent: #00b4d8;
      --accent2: #f0a500;
      --light-bg: #f0f6ff;
      --card-shadow: 0 20px 60px rgba(26,60,110,0.15);
      --card-shadow-hover: 0 30px 80px rgba(26,60,110,0.25);
    }
    * { margin:0; padding:0; box-sizing:border-box; }
    html { overflow-x:hidden; width:100%; }
    body { font-family:'Poppins',sans-serif; color:#222; overflow-x:hidden; width:100%; background:#fff; padding-top:68px; }
    .material-symbols-outlined { font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24; font-family:'Material Symbols Outlined'; vertical-align:middle; }

    /* ══ NAVBAR ══ */
    .navbar-gec { background:rgba(255,255,255,0.97); backdrop-filter:blur(20px); border-bottom:1px solid rgba(0,70,144,0.09); box-shadow:0 4px 24px rgba(0,70,144,0.08); padding:4px 0; position:fixed; top:0; left:0; right:0; z-index:1050; height:68px; }
    .navbar-logo-img { height:56px; max-height:56px; width:auto; object-fit:contain; mix-blend-mode:multiply; }
    .fallback-logo-circle { width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg,#e8f0ff,#c5d8ff); display:flex; align-items:center; justify-content:center; border:1.5px solid rgba(0,70,144,0.15); }
    .top-rated-badge { display:flex; align-items:center; gap:7px; background:linear-gradient(135deg,#fffbf0,#fff4d1); border:1px solid rgba(204,167,47,0.35); border-radius:10px; padding:5px 10px 5px 8px; margin-left:4px; }
    .top-rated-text { font-family:'Manrope',sans-serif; font-weight:800; font-size:0.65rem; color:#7a5c00; line-height:1.25; }
    .top-rated-text span { font-weight:500; font-size:0.6rem; color:#a07d20; }
    .nav-link-gec { font-family:'Manrope',sans-serif; font-weight:600; font-size:0.82rem; color:#4a5568; padding:0.44rem 0.8rem !important; border-radius:10px; transition:all 0.22s ease; position:relative; white-space:nowrap; }
    .nav-link-gec:hover,.nav-link-gec.active { color:#004690; background:rgba(0,70,144,0.07); }
    .dropdown-gec { position:relative; }
    .dropdown-gec > .nav-link-gec { display:flex; align-items:center; gap:5px; cursor:pointer; }
    .dropdown-gec > .nav-link-gec::after { content:''; display:inline-block; width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:4px solid currentColor; vertical-align:middle; transition:transform 0.25s; flex-shrink:0; }
    .dropdown-gec:hover > .nav-link-gec::after { transform:rotate(180deg); }
    .dropdown-menu-gec { display:none; position:absolute; top:calc(100% + 6px); left:50%; transform:translateX(-50%); background:#ffffff; border:1.5px solid rgba(0,70,144,0.12); border-radius:20px; box-shadow:0 20px 56px rgba(0,70,144,0.14),0 4px 16px rgba(0,0,0,0.06); padding:12px; min-width:600px; grid-template-columns:1fr 1fr; gap:6px; z-index:9999; }
    .dropdown-menu-gec::before { content:''; position:absolute; top:-12px; left:0; right:0; height:12px; background:transparent; }
    @media (hover: hover) and (pointer: fine) {
      .dropdown-gec:hover .dropdown-menu-gec { display:grid; animation:dropIn 0.2s ease forwards; }
    }
    @keyframes dropIn { from { opacity:0; transform:translateX(-50%) translateY(-8px); } to { opacity:1; transform:translateX(-50%) translateY(0); } }
    .dropdown-item-gec { display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:14px; text-decoration:none; transition:background 0.18s ease; cursor:pointer; }
    .dropdown-item-gec:hover { background:rgba(0,70,144,0.06); }
    .dropdown-item-icon { width:40px; height:40px; border-radius:12px; background:linear-gradient(135deg,#e8f0ff,#c5d8ff); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:all 0.18s ease; }
    .dropdown-item-icon .material-symbols-outlined { font-size:20px; color:#004690; transition:color 0.18s; }
    .dropdown-item-gec:hover .dropdown-item-icon { background:linear-gradient(135deg,#004690,#0060c7); }
    .dropdown-item-gec:hover .dropdown-item-icon .material-symbols-outlined { color:#ffffff; }
    .dropdown-item-text { display:flex; flex-direction:column; gap:2px; }
    .dropdown-item-title { font-family:'Manrope',sans-serif; font-weight:700; font-size:0.82rem; color:#002255; line-height:1.2; }
    .dropdown-item-sub { font-size:0.72rem; color:#5f7080; line-height:1.3; }
    .nav-social-btn { width:32px; height:32px; border-radius:9px; display:inline-flex; align-items:center; justify-content:center; background:rgba(0,70,144,0.07); color:#004690; text-decoration:none; transition:all 0.2s ease; border:1px solid rgba(0,70,144,0.13); cursor:pointer; }
    .nav-social-btn:hover { background:#004690; color:#ffffff; transform:translateY(-1px); border-color:transparent; }
    .nav-social-btn svg { width:13px; height:13px; fill:currentColor; }
    .navbar-toggler { border:1.5px solid rgba(0,70,144,0.18); border-radius:10px; padding:5px 8px; }
    .navbar-toggler:focus { box-shadow:0 0 0 3px rgba(0,70,144,0.15); }

    /* ══ BUTTONS ══ */
    .btn-3d-primary { background:linear-gradient(135deg,#005dbb 0%,#004690 60%,#003070 100%); color:#ffffff; border:none; border-radius:12px; font-family:'Manrope',sans-serif; font-weight:800; padding:9px 20px; font-size:0.82rem; box-shadow:0 4px 0 #002255,0 8px 16px rgba(0,70,144,0.3),inset 0 1px 0 rgba(255,255,255,0.2); transition:all 0.18s ease; position:relative; top:0; cursor:pointer; display:inline-flex; align-items:center; gap:6px; text-decoration:none; white-space:nowrap; }
    .btn-3d-primary:hover { top:2px; box-shadow:0 2px 0 #002255,0 5px 10px rgba(0,70,144,0.25); color:#ffffff; }
    .btn-3d-primary-lg { background:linear-gradient(135deg,#005dbb 0%,#004690 60%,#003070 100%); color:#ffffff; border:none; border-radius:14px; font-family:'Manrope',sans-serif; font-weight:800; padding:14px 32px; font-size:1rem; box-shadow:0 6px 0 #002255,0 10px 20px rgba(0,70,144,0.35),inset 0 1px 0 rgba(255,255,255,0.2); transition:all 0.18s ease; position:relative; top:0; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:6px; text-decoration:none; }
    .btn-3d-primary-lg:hover { top:3px; box-shadow:0 3px 0 #002255,0 6px 12px rgba(0,70,144,0.3); color:#ffffff; }
    .btn-3d-gold { background:linear-gradient(135deg,#ffe088 0%,#cca72f 100%); color:#241a00; border:none; border-radius:16px; font-family:'Manrope',sans-serif; font-weight:800; padding:16px 36px; font-size:1.05rem; box-shadow:0 6px 0 #9a7800,0 12px 24px rgba(204,167,47,0.35),inset 0 1px 0 rgba(255,255,255,0.4); transition:all 0.18s ease; position:relative; top:0; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:6px; }
    .btn-3d-gold:hover { top:3px; box-shadow:0 3px 0 #9a7800,0 8px 16px rgba(204,167,47,0.3); color:#241a00; }

    /* ══ HERO — teal/cornea theme ══ */
    .hero { background:linear-gradient(135deg,#0f2549 0%,#1a4060 50%,#0d6e6e 100%); min-height:88vh; display:flex; align-items:center; position:relative; overflow:hidden; }
    .hero::before { content:''; position:absolute; inset:0; background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600"><circle cx="600" cy="100" r="300" fill="rgba(0,180,216,0.06)"/><circle cx="100" cy="500" r="200" fill="rgba(0,180,216,0.04)"/></svg>') no-repeat center/cover; }
    .hero-eyeball { width:320px; height:320px; background:radial-gradient(circle at 38% 38%,#fff 0%,#c8f5f5 40%,#0d9488 65%,#0f2549 90%); border-radius:50%; box-shadow:0 0 0 18px rgba(13,148,136,0.12),0 0 0 36px rgba(13,148,136,0.06),0 40px 80px rgba(0,0,0,0.4); position:relative; animation:floatEye 4s ease-in-out infinite; flex-shrink:0; }
    .hero-eyeball::after { content:''; position:absolute; width:100px; height:100px; background:radial-gradient(circle at 35% 35%,#fff 0%,#1a3c6e 30%,#000 80%); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); box-shadow:0 0 0 6px rgba(255,255,255,0.15); }
    @keyframes floatEye { 0%,100%{transform:translateY(0) rotate(-2deg);} 50%{transform:translateY(-18px) rotate(2deg);} }
    .hero h1 { font-family:'Playfair Display',serif; font-size:clamp(2.2rem,5vw,3.8rem); font-weight:800; color:#fff; line-height:1.15; }
    .hero h1 span { color:#2dd4bf; }
    .hero p { color:rgba(255,255,255,.8); font-size:1.05rem; max-width:540px; }
    .hero-badge { display:inline-block; background:rgba(45,212,191,0.2); border:1px solid rgba(45,212,191,0.4); color:#2dd4bf; font-size:.8rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; padding:6px 18px; border-radius:30px; margin-bottom:18px; }
    .hero-btn-primary { background:linear-gradient(135deg,#00b4d8,#0077b6); color:#fff; border:none; padding:14px 34px; border-radius:50px; font-weight:700; font-size:1rem; box-shadow:0 8px 30px rgba(0,180,216,.4); transition:all .3s; text-decoration:none; display:inline-block; }
    .hero-btn-primary:hover { transform:translateY(-3px); box-shadow:0 14px 40px rgba(0,180,216,.5); color:#fff; }
    .hero-btn-outline { background:transparent; border:2px solid rgba(255,255,255,.4); color:#fff; padding:12px 32px; border-radius:50px; font-weight:600; font-size:1rem; transition:all .3s; text-decoration:none; display:inline-block; }
    .hero-btn-outline:hover { background:rgba(255,255,255,.12); border-color:#fff; color:#fff; }

    /* ══ STATS ══ */
    .stats-section { background:linear-gradient(135deg,var(--primary),#0d6e6e); padding:40px 0; }
    .stat-card-3d { text-align:center; padding:28px 20px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.15); border-radius:16px; backdrop-filter:blur(10px); transition:all .3s; }
    .stat-card-3d:hover { transform:translateY(-6px); background:rgba(255,255,255,0.15); box-shadow:0 20px 40px rgba(0,0,0,0.3); }
    .stat-card-3d h3 { font-size:2.5rem; font-weight:800; color:var(--accent2); }
    .stat-card-3d p { color:rgba(255,255,255,.85); font-size:.9rem; margin:0; }

    /* ══ SECTION TITLES ══ */
    .section-badge { display:inline-block; background:linear-gradient(135deg,#00b4d8,#0077b6); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; padding:5px 16px; border-radius:30px; margin-bottom:12px; }
    .section-title { font-family:'Playfair Display',serif; font-size:clamp(1.8rem,3.5vw,2.6rem); font-weight:700; color:var(--primary); line-height:1.25; }
    .title-underline { width:70px; height:4px; background:linear-gradient(90deg,#00b4d8,var(--accent2)); border-radius:4px; margin:14px auto 0; }

    /* ══ CARDS ══ */
    .cornea-card { background:#fff; border-radius:20px; padding:30px 24px; box-shadow:var(--card-shadow); transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275); border-top:4px solid #00b4d8; height:100%; }
    .cornea-card:hover { transform:translateY(-10px); box-shadow:var(--card-shadow-hover); }
    .cornea-card .icon-wrap { width:58px; height:58px; background:linear-gradient(135deg,#00b4d8,#0077b6); border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:1.5rem; color:#fff; margin-bottom:16px; box-shadow:0 8px 20px rgba(0,180,216,.3); transition:all .3s; }
    .cornea-card:hover .icon-wrap { transform:rotate(8deg) scale(1.1); }
    .cornea-card h5 { color:var(--primary); font-weight:700; margin-bottom:8px; }
    .cornea-card p { color:#555; font-size:.9rem; line-height:1.7; margin:0; }

    /* real image card */
    .cornea-img-card { border-radius:20px; overflow:hidden; box-shadow:var(--card-shadow); transition:all .4s; }
    .cornea-img-card:hover { transform:translateY(-8px); box-shadow:var(--card-shadow-hover); }
    .cornea-img-card img { width:100%; height:220px; object-fit:cover; display:block; }
    .cornea-img-card .img-label { background:linear-gradient(135deg,var(--primary),#0d6e6e); color:#fff; padding:14px 18px; font-weight:700; font-size:.9rem; }

    /* ══ TIMELINE ══ */
    .timeline-step { display:flex; gap:18px; margin-bottom:26px; align-items:flex-start; }
    .step-num { min-width:46px; height:46px; background:linear-gradient(135deg,#00b4d8,var(--primary)); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1.05rem; box-shadow:0 6px 18px rgba(0,180,216,.35); flex-shrink:0; }
    .step-content h6 { color:var(--primary); font-weight:700; margin-bottom:4px; }
    .step-content p { color:#555; font-size:.88rem; margin:0; line-height:1.6; }

    /* ══ EYE ANATOMY ══ */
    .eye-anatomy-3d { width:100%; max-width:400px; aspect-ratio:1; background:radial-gradient(circle at 35% 35%,#e8ffff 0%,#c8f0f5 35%,#0d9488 65%,var(--primary) 90%); border-radius:50%; box-shadow:inset -20px -20px 40px rgba(0,0,0,0.2),inset 15px 15px 30px rgba(255,255,255,0.4),0 30px 80px rgba(26,60,110,0.3); position:relative; margin:auto; animation:floatEye 5s ease-in-out infinite; }
    .eye-anatomy-3d::after { content:''; position:absolute; width:36%; height:36%; background:radial-gradient(circle at 30% 30%,#fff 0%,#2c3e50 30%,#000 80%); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); box-shadow:inset -6px -6px 12px rgba(0,0,0,0.5),0 0 0 4px rgba(255,255,255,0.15); }

    /* ══ SYMPTOMS ══ */
    .symptom-item { display:flex; align-items:flex-start; gap:16px; padding:18px 20px; background:#f0f6ff; border-radius:14px; margin-bottom:12px; transition:all .3s; }
    .symptom-item:hover { transform:translateX(8px); background:#dceefb; box-shadow:-4px 0 0 #00b4d8,var(--card-shadow); }
    .symptom-item .sym-icon { min-width:42px; height:42px; background:linear-gradient(135deg,#00b4d8,#0077b6); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.15rem; color:#fff; flex-shrink:0; }
    .symptom-item h6 { color:var(--primary); font-weight:700; margin-bottom:3px; font-size:.92rem; }
    .symptom-item p { color:#666; font-size:.85rem; margin:0; }

    /* ══ DIAGNOSIS ══ */
    .diagnosis-section { background:linear-gradient(135deg,var(--primary-dark),#1a5276); padding:90px 0; }
    .diag-card { background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.15); border-radius:20px; padding:28px 20px; text-align:center; transition:all .4s; backdrop-filter:blur(8px); height:100%; }
    .diag-card:hover { transform:translateY(-8px); background:rgba(255,255,255,0.13); box-shadow:0 25px 60px rgba(0,0,0,0.35); }
    .diag-card .d-icon { font-size:2.2rem; color:#00b4d8; margin-bottom:14px; display:block; }
    .diag-card h6 { color:#fff; font-weight:700; margin-bottom:8px; font-size:.95rem; }
    .diag-card p { color:rgba(255,255,255,.7); font-size:.85rem; margin:0; }

    /* ══ TREATMENT CARDS ══ */
    .treatment-card { background:#fff; border-radius:24px; overflow:hidden; box-shadow:var(--card-shadow); transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275); height:100%; }
    .treatment-card:hover { transform:translateY(-12px); box-shadow:var(--card-shadow-hover); }
    .treat-header { padding:26px; color:#fff; position:relative; }
    .treat-header .num { font-size:3.2rem; font-weight:800; color:rgba(255,255,255,.15); position:absolute; right:18px; top:8px; line-height:1; }
    .treat-header h5 { font-weight:700; font-size:1.05rem; margin:0; }
    .treat-header .badge-tag { background:rgba(255,255,255,.2); color:#fff; font-size:.7rem; padding:4px 12px; border-radius:20px; display:inline-block; margin-top:8px; }
    .treat-body { padding:26px; }
    .treat-body ul { list-style:none; padding:0; margin:0; }
    .treat-body ul li { display:flex; align-items:flex-start; gap:10px; padding:7px 0; border-bottom:1px solid #f0f0f0; font-size:.87rem; color:#555; }
    .treat-body ul li:last-child { border-bottom:none; }
    .treat-body ul li i { color:#00b4d8; margin-top:3px; flex-shrink:0; }

    /* ══ CAUSE CARDS ══ */
    .cause-card { background:#fff; border-radius:18px; padding:28px 22px; height:100%; box-shadow:var(--card-shadow); transition:all .4s; border-left:5px solid #00b4d8; }
    .cause-card:hover { transform:translateX(6px); box-shadow:var(--card-shadow-hover); }
    .cause-card .icon { font-size:1.9rem; color:#00b4d8; margin-bottom:12px; }
    .cause-card h6 { color:var(--primary); font-weight:700; margin-bottom:6px; }
    .cause-card p { color:#666; font-size:.87rem; margin:0; line-height:1.65; }

    /* ══ FAQ ══ */
    .faq-section { background:var(--light-bg); padding:90px 0; }
    .accordion-item { border:none; margin-bottom:12px; border-radius:16px !important; overflow:hidden; box-shadow:0 4px 20px rgba(26,60,110,.08); transition:box-shadow .3s; }
    .accordion-item:hover { box-shadow:0 8px 30px rgba(26,60,110,.15); }
    .accordion-button { font-weight:600; color:var(--primary); background:#fff; font-size:.93rem; border-radius:16px !important; padding:16px 22px; }
    .accordion-button:not(.collapsed) { background:linear-gradient(135deg,var(--primary),#1a5276); color:#fff; box-shadow:none; }
    .accordion-button:not(.collapsed)::after { filter:invert(1); }
    .accordion-body { background:#fff; color:#555; font-size:.9rem; line-height:1.8; padding:18px 22px; }

    /* ══ PRICING ══ */
    .pricing-section { background:#fff; padding:90px 0; }
    .price-card { background:#fff; border-radius:24px; overflow:hidden; box-shadow:var(--card-shadow); transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275); height:100%; display:flex; flex-direction:column; border:2px solid transparent; }
    .price-card:hover { transform:translateY(-10px); box-shadow:var(--card-shadow-hover); }
    .price-card-popular { border-color:var(--accent2); transform:scale(1.03); }
    .price-card-head { padding:30px 26px 24px; text-align:center; color:#fff; position:relative; background:linear-gradient(135deg,var(--primary),#00b4d8); }
    .price-card-popular .price-card-head { background:linear-gradient(135deg,#004690,#005dbb); }
    .price-popular-tag { position:absolute; top:14px; right:14px; background:var(--accent2); color:#fff; font-size:.65rem; font-weight:700; padding:4px 12px; border-radius:20px; letter-spacing:.5px; text-transform:uppercase; }
    .price-card-head h5 { font-weight:700; margin-bottom:4px; }
    .price-card-head .price-sub { font-size:.76rem; color:rgba(255,255,255,.75); }
    .price-amount { font-family:'Playfair Display',serif; font-size:2.2rem; font-weight:800; margin:14px 0 0; line-height:1; }
    .price-amount span { font-size:.88rem; font-weight:500; color:rgba(255,255,255,.8); }
    .price-card-body { padding:26px; flex:1; display:flex; flex-direction:column; }
    .price-card-body ul { list-style:none; padding:0; margin:0 0 22px; flex:1; }
    .price-card-body ul li { display:flex; gap:10px; align-items:flex-start; padding:7px 0; border-bottom:1px solid #f0f0f0; font-size:.86rem; color:#555; }
    .price-card-body ul li:last-child { border-bottom:none; }
    .price-card-body ul li i { color:#00b4d8; margin-top:3px; flex-shrink:0; }
    .price-note { text-align:center; color:#888; font-size:.82rem; margin-top:32px; }

    /* ══ WARNING ITEMS ══ */
    .warning-item { display:flex; align-items:center; gap:12px; background:var(--light-bg); border-radius:12px; padding:12px 16px; margin-bottom:10px; border-left:3px solid var(--accent2); }
    .warning-item i { color:var(--accent2); font-size:1.1rem; }
    .warning-item span { color:#333; font-size:.88rem; }

    /* ══ WHEN BANNER ══ */
    .when-banner { background:linear-gradient(135deg,var(--primary),#0d6e6e); border-radius:24px; padding:48px 38px; color:#fff; position:relative; overflow:hidden; box-shadow:0 20px 60px rgba(26,60,110,.3); }
    .when-banner::before { content:''; position:absolute; right:-60px; top:-60px; width:260px; height:260px; background:rgba(45,212,191,0.12); border-radius:50%; }
    .when-banner h3 { font-family:'Playfair Display',serif; font-size:1.9rem; }
    .when-banner p { color:rgba(255,255,255,.85); font-size:.97rem; line-height:1.8; }

    /* ══ CONTACT ══ */
    .contact-section { padding:90px 0; background:var(--light-bg); }
    .contact-card { background:linear-gradient(135deg,var(--primary-dark),#1a5276); border-radius:24px; padding:40px 36px; color:#fff; height:100%; }
    .contact-card h4 { font-family:'Playfair Display',serif; font-size:1.7rem; margin-bottom:22px; }
    .contact-info-item { display:flex; gap:12px; align-items:flex-start; margin-bottom:20px; }
    .ci-icon { min-width:44px; height:44px; background:rgba(0,180,216,.2); border:1px solid rgba(0,180,216,.4); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; color:#00b4d8; flex-shrink:0; }
    .ci-label { font-size:.72rem; color:rgba(255,255,255,.55); font-weight:600; letter-spacing:.5px; text-transform:uppercase; margin-bottom:2px; }
    .ci-value { color:#fff; font-size:.93rem; font-weight:600; }
    .ci-sub { font-size:.78rem; color:rgba(255,255,255,.65); }
    .contact-form-card { background:#fff; border-radius:24px; padding:40px 36px; box-shadow:var(--card-shadow); height:100%; }
    .contact-form-card h4 { font-family:'Playfair Display',serif; font-size:1.7rem; color:var(--primary); margin-bottom:22px; }
    .form-group { margin-bottom:18px; }
    .form-group label { font-size:.83rem; font-weight:600; color:var(--primary); margin-bottom:5px; display:block; }
    .form-control-gec { width:100%; padding:11px 15px; border:1.5px solid #d0dff0; border-radius:12px; font-size:.88rem; color:#333; transition:all .3s; background:#f7faff; font-family:'Poppins',sans-serif; outline:none; }
    .form-control-gec:focus { border-color:#00b4d8; background:#fff; box-shadow:0 0 0 4px rgba(0,180,216,.1); }
    .map-container { border-radius:20px; overflow:hidden; box-shadow:var(--card-shadow); }
    .map-container iframe { width:100%; height:340px; border:none; display:block; }

    /* ══ CTA ══ */
    .cta-section { background:linear-gradient(135deg,var(--primary-dark) 0%,#0d6e6e 100%); padding:90px 0; text-align:center; position:relative; overflow:hidden; }
    .cta-section::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at center,rgba(45,212,191,0.15) 0%,transparent 70%); }
    .cta-section h2 { font-family:'Playfair Display',serif; font-size:clamp(2rem,4vw,3.2rem); color:#fff; font-weight:800; }
    .cta-section p { color:rgba(255,255,255,.8); font-size:1.02rem; }
    .btn-cta-primary { background:linear-gradient(135deg,var(--accent2),#c87f00); color:#fff; border:none; padding:15px 42px; border-radius:50px; font-weight:700; font-size:1.02rem; box-shadow:0 10px 35px rgba(240,165,0,.4); transition:all .3s; text-decoration:none; display:inline-block; }
    .btn-cta-primary:hover { transform:translateY(-4px); color:#fff; }
    .btn-cta-outline { background:transparent; border:2px solid rgba(255,255,255,.5); color:#fff; padding:13px 40px; border-radius:50px; font-weight:600; font-size:1.02rem; transition:all .3s; text-decoration:none; display:inline-block; }
    .btn-cta-outline:hover { background:rgba(255,255,255,.12); border-color:#fff; color:#fff; }

    /* ══ FOOTER ══ */
    footer { background:var(--primary-dark); color:rgba(255,255,255,.75); padding:60px 0 30px; }
    footer h6 { color:#fff; font-weight:700; margin-bottom:14px; font-size:.93rem; }
    footer a { color:rgba(255,255,255,.65); text-decoration:none; font-size:.86rem; display:block; margin-bottom:8px; transition:color .3s; }
    footer a:hover { color:#00b4d8; }
    .footer-divider { border-color:rgba(255,255,255,.12); margin:38px 0 18px; }
    .footer-bottom { font-size:.8rem; color:rgba(255,255,255,.45); }
    .social-icon { width:38px; height:38px; background:rgba(255,255,255,.1); border-radius:10px; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:1rem; transition:all .3s; text-decoration:none; margin-right:8px; }
    .social-icon:hover { background:#00b4d8; color:#fff; transform:translateY(-3px); }

    /* ══ REVEAL ══ */
    .reveal { opacity:0; transform:translateY(40px); transition:all .7s ease; }
    .reveal.visible { opacity:1; transform:translateY(0); }
    .reveal-left { opacity:0; transform:translateX(-40px); transition:all .7s ease; }
    .reveal-left.visible { opacity:1; transform:translateX(0); }
    .reveal-right { opacity:0; transform:translateX(40px); transition:all .7s ease; }
    .reveal-right.visible { opacity:1; transform:translateX(0); }

    /* ══════════════════════════════
       RESPONSIVE
    ══════════════════════════════ */
    /* Tablet ≤ 991px */
    @media(max-width:991px){
      .navbar-collapse { background:#fff; border-radius:16px; margin-top:10px; padding:16px; box-shadow:0 10px 30px rgba(0,70,144,.12); max-height:80vh; overflow-y:auto; }
      .dropdown-menu-gec { position:static !important; transform:none !important; min-width:100% !important; width:100% !important; grid-template-columns:1fr !important; box-shadow:none; border:none; padding:4px 0 4px 12px; display:none !important; }
      .dropdown-gec.show .dropdown-menu-gec { display:grid !important; }
      .hero { min-height:auto; padding:70px 0 50px; }
      .price-card-popular { transform:none; }
      .contact-form-card,.contact-card { padding:30px 24px; }
      .when-banner { padding:34px 26px; }
      .cornea-card,.treatment-card,.price-card { transform:none !important; }
      section[style*="padding:90px"] { padding:60px 0 !important; }
      .diagnosis-section,.faq-section,.pricing-section,.contact-section,.cta-section { padding:60px 0 !important; }
    }

    /* Mobile ≤ 768px */
    @media(max-width:768px){
      body { padding-top:60px; }
      .navbar-gec { height:60px; }
      .navbar-logo-img { height:44px; max-height:44px; }
      .top-rated-badge { display:none !important; }

      .hero { padding:50px 0 40px; text-align:center; }
      .hero h1 { font-size:clamp(1.7rem,7vw,2.4rem); }
      .hero p { font-size:.93rem; margin-left:auto; margin-right:auto; }
      .hero .d-flex.flex-wrap { justify-content:center; }
      .hero-btn-primary,.hero-btn-outline { width:100%; text-align:center; justify-content:center; }
      .hero .row.mt-5 { justify-content:center; }
      .hero .row.mt-5 .col-4 { text-align:center; }
      .hero-eyeball { width:200px; height:200px; }
      .hero-eyeball::after { width:70px; height:70px; }

      .stats-section { padding:24px 0; }
      .stat-card-3d { padding:16px 10px; }
      .stat-card-3d h3 { font-size:1.8rem; }
      .stat-card-3d p { font-size:.78rem; }

      .section-title { font-size:clamp(1.5rem,6vw,2rem); }

      .symptom-item { flex-direction:column; gap:10px; }
      .symptom-item .sym-icon { align-self:flex-start; }

      .timeline-step { gap:12px; }
      .step-num { min-width:38px; height:38px; font-size:.92rem; }

      .warning-item { padding:10px 12px; gap:8px; }
      .warning-item span { font-size:.82rem; }

      .when-banner { padding:26px 18px; }
      .when-banner h3 { font-size:1.4rem; }

      .contact-card,.contact-form-card { padding:22px 16px; }
      .contact-card h4,.contact-form-card h4 { font-size:1.3rem; }

      .price-amount { font-size:1.8rem; }
      .price-card-body,.price-card-head { padding:20px 18px; }

      .btn-3d-primary-lg { padding:12px 22px; font-size:.92rem; }
      .btn-cta-primary,.btn-cta-outline { width:100%; text-align:center; padding:13px 24px; font-size:.93rem; }
      .cta-section .d-flex { flex-direction:column; align-items:center; }

      .diag-card { padding:22px 16px; }
      .cornea-img-card img { height:180px; }
      .eye-anatomy-3d { max-width:260px; }

      .map-container iframe { height:240px; }
      footer { padding:36px 0 20px; }
      .treat-body,.treat-header { padding:20px 16px; }
      .treat-header .num { font-size:2.6rem; }
      .cornea-card { padding:22px 18px; }
    }

    /* Small Mobile ≤ 480px */
    @media(max-width:480px){
      .hero h1 { font-size:1.6rem; }
      .section-title { font-size:1.4rem; }
      .navbar-logo-img { height:40px; max-height:40px; }
      .stat-card-3d h3 { font-size:1.5rem; }
      .price-amount { font-size:1.55rem; }
      .accordion-button { font-size:.85rem; padding:13px 15px; }
      .accordion-body { padding:14px 16px; font-size:.85rem; }
      .form-control-gec { padding:10px 12px; font-size:.84rem; }
      .cornea-card .icon-wrap { width:48px; height:48px; font-size:1.3rem; }
    }

    /* Very Small ≤ 360px */
    @media(max-width:360px){
      .hero h1 { font-size:1.4rem; }
      .section-title { font-size:1.28rem; }
      .navbar-logo-img { height:36px; max-height:36px; }
    }