/* © 2026 Caring Vision Therapy. All rights reserved. */
.contact-hero{position:relative;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);padding:clamp(100px,14vh,160px) 0 clamp(80px,12vh,140px);overflow:hidden}.contact-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 50% at 50% 40%,rgba(79,163,255,.1) 0%,transparent 70%);pointer-events:none}.contact-hero-bg{position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.01) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.01) 1px,transparent 1px);background-size:100px 100px;opacity:.18}.contact-hero-content{max-width:880px;margin:0 auto;text-align:center;position:relative;z-index:1}.contact-hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,4.4vw,64px);font-weight:600;line-height:1.15;color:var(--white);margin-bottom:24px}.contact-hero-title span{display:inline;background:linear-gradient(90deg,var(--sky),var(--cobalt-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-hero-lead{font-family:'Lora',Georgia,serif;font-size:clamp(15px,1.5vw,18px);line-height:1.85;color:rgba(255,255,255,.75);max-width:760px;margin:0 auto}.contact-cards-section{background:var(--ivory);padding:clamp(80px,10vw,140px) 0}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:40px}.contact-card{background:var(--white);border-radius:var(--radius-xl);padding:0;box-shadow:var(--shadow-lg);border:1px solid rgba(180,160,100,.12);overflow:hidden;position:relative}.card-badge{position:absolute;top:24px;right:24px;display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--white);border-radius:9999px;padding:8px 16px;z-index:2}.card-badge.primary{background:linear-gradient(135deg,var(--cobalt),var(--sky))}.card-badge.secondary{background:linear-gradient(135deg,var(--gold),var(--gold-light))}.card-badge i{font-size:12px}.card-header{padding:clamp(36px,5vw,48px) clamp(32px,5vw,48px) 24px;background:linear-gradient(to bottom,var(--ivory-2) 0%,var(--white) 100%);border-bottom:1px solid rgba(180,160,100,.08)}.card-header h2{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,2.8vw,32px);font-weight:600;color:var(--navy);margin-bottom:8px;line-height:1.2}.location-label{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--text-muted)}.card-body{padding:clamp(32px,5vw,40px) clamp(32px,5vw,48px)}.contact-item{display:grid;grid-template-columns:48px 1fr;gap:16px;margin-bottom:28px}.contact-item:last-child{margin-bottom:0}.contact-icon{width:48px;height:48px;border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(18,68,162,.08),rgba(79,163,255,.12));display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--cobalt);flex-shrink:0}.contact-info strong{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:8px}.contact-info p{font-size:15px;line-height:1.7;color:var(--text-mid);margin:0}.contact-info a{color:var(--cobalt);text-decoration:none;font-weight:500;transition:color .25s}.contact-info a:hover{color:var(--gold)}.card-map{position:relative;height:280px;border-top:1px solid rgba(180,160,100,.08)}.card-map iframe{width:100%;height:100%;border:none;display:block}.map-link{position:absolute;bottom:16px;right:16px;display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--white);background:var(--cobalt);border-radius:9999px;padding:10px 20px;text-decoration:none;box-shadow:0 4px 16px rgba(18,68,162,.3);transition:var(--transition)}.map-link:hover{background:var(--gold);transform:translateY(-2px)}.map-link i{font-size:14px}.contact-quick-section{background:var(--ivory-2);padding:clamp(80px,10vw,120px) 0}.quick-contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:32px}.quick-item{background:var(--white);border-radius:var(--radius-lg);padding:clamp(36px,5vw,48px);text-align:center;box-shadow:var(--shadow-sm);border:1px solid rgba(180,160,100,.1);transition:var(--transition)}.quick-item:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--cobalt)}.quick-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--cobalt),var(--sky));display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--white);margin:0 auto 24px;box-shadow:0 12px 32px rgba(18,68,162,.25)}.quick-item h3{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:600;color:var(--navy);margin-bottom:12px}.quick-item p{font-size:15px;line-height:1.7;color:var(--text-mid);margin-bottom:20px}.quick-link{display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:var(--cobalt);text-decoration:none;transition:var(--transition)}.quick-link:hover{color:var(--gold);transform:translateX(4px)}.quick-link i{font-size:12px}.contact-cta{background:var(--ivory);padding:clamp(80px,10vw,120px) 0}.contact-cta .cta-card{max-width:720px;margin:0 auto;background:var(--white);border-radius:var(--radius-xl);padding:clamp(56px,7vw,80px);box-shadow:var(--shadow-lg);border:1px solid rgba(180,160,100,.12);text-align:center}.cta-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.2vw,42px);font-weight:600;color:var(--navy);margin-bottom:16px;line-height:1.2}.cta-text{font-size:16px;line-height:1.8;color:var(--text-mid);margin-bottom:32px;max-width:580px;margin-left:auto;margin-right:auto}@media (max-width:640px){.contact-grid{grid-template-columns:1fr}.quick-contact-grid{grid-template-columns:1fr}.contact-item{grid-template-columns:1fr;gap:12px}.contact-icon{margin:0 auto}.contact-info{text-align:center}.card-badge{top:16px;right:16px;font-size:10px;padding:6px 12px}}.contact-hero-trust{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:40px}.contact-trust-chip{display:inline-flex;align-items:center;gap:10px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:9999px;padding:10px 20px;backdrop-filter:blur(10px);transition:var(--transition)}.contact-trust-chip:hover{background:rgba(255,255,255,.12);border-color:rgba(180,140,60,.5)}.contact-trust-chip i{font-size:14px;color:var(--gold)}.card-top-bar{position:absolute;top:0;left:0;right:0;height:4px;z-index:3}.bar-primary{background:linear-gradient(90deg,var(--cobalt),var(--sky))}.bar-secondary{background:linear-gradient(90deg,var(--gold),var(--gold-light))}.card-whatsapp{display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--white);background:#25D366;border-radius:9999px;padding:10px 22px;text-decoration:none;transition:var(--transition);margin:0 clamp(32px,5vw,48px) clamp(28px,4vw,36px)}.card-whatsapp:hover{background:#1ebe5d;transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.3);color:var(--white)}.card-whatsapp i{font-size:16px}.contact-journey-section{background:var(--ivory-2);padding:clamp(80px,10vw,140px) 0}.contact-journey-section .section-header-center{text-align:center;max-width:720px;margin:0 auto 56px}.contact-journey-section .section-header-center h2{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,3.2vw,46px);font-weight:600;color:var(--navy);line-height:1.2;margin-bottom:16px;text-align:center}.contact-journey-section .section-header-center .section-eyebrow{display:block;text-align:center}.contact-journey-section .section-subtext{font-size:16px;line-height:1.8;color:var(--text-mid);text-align:center}.journey-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);position:relative}.journey-steps::before{content:'';position:absolute;top:36px;left:calc(16.66% + 24px);right:calc(16.66% + 24px);height:2px;background:linear-gradient(90deg,var(--cobalt),var(--gold));opacity:.18;pointer-events:none}.journey-step{background:var(--white);border-radius:var(--radius-xl);padding:40px 32px;border:1px solid rgba(180,160,100,.12);box-shadow:0 8px 32px rgba(7,17,31,.06);position:relative;transition:transform .4s cubic-bezier(.22,.61,.36,1),box-shadow .4s ease,border-color .3s ease;text-align:center}.journey-step:hover{transform:translateY(-8px);box-shadow:0 28px 64px rgba(7,17,31,.13);border-color:var(--gold)}.journey-step-num{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;position:relative;flex-shrink:0}.journey-step-num span{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--white);line-height:1}.step-num-1{background:linear-gradient(135deg,var(--cobalt),var(--cobalt-light))}.step-num-2{background:linear-gradient(135deg,var(--sky),#6dd1f5)}.step-num-3{background:linear-gradient(135deg,var(--gold),var(--gold-light))}.journey-step-badge{display:inline-block;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:9999px;padding:5px 14px;margin-bottom:16px}.badge-cobalt{color:var(--cobalt);background:rgba(18,68,162,.07);border:1px solid rgba(18,68,162,.18)}.badge-sky{color:var(--sky);background:rgba(79,163,255,.07);border:1px solid rgba(79,163,255,.2)}.badge-gold{color:var(--gold);background:rgba(184,137,42,.07);border:1px solid rgba(184,137,42,.2)}.journey-step h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--navy);margin-bottom:12px;line-height:1.3}.journey-step p{font-size:14.5px;line-height:1.75;color:var(--text-mid);margin:0}.quick-icon.icon-gold{background:linear-gradient(135deg,var(--gold),var(--gold-light));box-shadow:0 12px 32px rgba(184,137,42,.28)}.quick-icon.icon-cobalt{background:linear-gradient(135deg,var(--cobalt),var(--cobalt-light));box-shadow:0 12px 32px rgba(18,68,162,.25)}.quick-icon.icon-teal{background:linear-gradient(135deg,#0fb8b0,#4fc3c0);box-shadow:0 12px 32px rgba(15,184,176,.25)}.contact-cta-dark{background:linear-gradient(135deg,var(--navy-2) 0%,var(--navy) 100%);padding:clamp(80px,10vw,120px) 0;text-align:center;position:relative;overflow:hidden}.contact-cta-dark::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 45% 50% at 50% 50%,rgba(18,68,162,.12) 0%,transparent 70%);pointer-events:none}.contact-cta-dark .cta-inner{max-width:720px;margin:0 auto;position:relative;z-index:1}.contact-cta-dark .cta-title{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,3.4vw,48px);font-weight:600;color:var(--white);margin-bottom:20px;line-height:1.2}.contact-cta-dark .cta-lead{font-size:17px;line-height:1.85;color:rgba(255,255,255,.72);margin-bottom:36px;max-width:600px;margin-left:auto;margin-right:auto}.btn-cta-gold{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--navy) !important;border:none;border-radius:9999px;padding:16px 40px;font-family:'DM Sans',sans-serif;font-size:16px;font-weight:700;text-decoration:none;letter-spacing:.02em;transition:transform .3s ease,box-shadow .3s ease}.btn-cta-gold i{color:var(--navy) !important;font-size:15px}.btn-cta-gold:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(184,137,42,.45);text-decoration:none}.btn-cta-gold:visited{color:var(--navy) !important}@media (max-width:900px){.journey-steps{grid-template-columns:1fr}.journey-steps::before{display:none}}@media (max-width:640px){.contact-hero-trust{flex-direction:column;align-items:center}.journey-step{padding:32px 24px}}
.section-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sky);margin-bottom:20px}.section-eyebrow i{font-size:13px}
.hero-float-badge{position:absolute;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.07);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-pill);padding:10px 20px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);pointer-events:none;z-index:2}.hero-float-badge i{color:var(--sky);font-size:15px}.hero-float-badge--tl{top:clamp(24px,5vh,48px);left:clamp(16px,4vw,60px)}.hero-float-badge--br{bottom:clamp(24px,5vh,48px);right:clamp(16px,4vw,60px)}@media (max-width:640px){.hero-float-badge{display:none}}
.contact-hero-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:40px}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:.04em;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:all .32s cubic-bezier(.22,.8,.3,1);white-space:nowrap;text-decoration:none;padding:14px 28px}.btn i{font-size:14px;line-height:1;display:inline-flex;align-items:center;transition:transform .25s}.btn:hover i{transform:translateX(3px)}
.btn-primary{background:linear-gradient(135deg,var(--cobalt) 0%,var(--cobalt-light) 100%);color:var(--white) !important;box-shadow:0 8px 28px rgba(18,68,162,.32)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(18,68,162,.45);color:var(--white) !important}
.btn-lg{padding:16px 38px;font-size:15px}
.btn-whatsapp{background:#25d366;color:var(--white) !important;border:none;box-shadow:0 8px 24px rgba(37,211,102,.28)}.btn-whatsapp:hover{background:#1ebe5d;transform:translateY(-3px);box-shadow:0 14px 32px rgba(37,211,102,.4);color:var(--white) !important}.btn-whatsapp i{font-size:16px;line-height:1;display:inline-flex;align-items:center}
.btn-whatsapp-outline{display:inline-flex;align-items:center;gap:10px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;letter-spacing:.04em;border-radius:var(--radius-pill);border:2px solid rgba(37,211,102,.5);color:rgba(255,255,255,.85) !important;background:rgba(37,211,102,.08);text-decoration:none;padding:14px 28px;transition:all .32s cubic-bezier(.22,.8,.3,1);white-space:nowrap}.btn-whatsapp-outline i{font-size:16px;line-height:1;display:inline-flex;align-items:center;color:#25d366}.btn-whatsapp-outline:hover{background:#25d366;border-color:#25d366;color:var(--white) !important;transform:translateY(-3px);box-shadow:0 12px 32px rgba(37,211,102,.35)}
.cta-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:36px}