/* © 2026 Caring Vision Therapy. All rights reserved. */
.appointment-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}.appointment-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 50% at 50% 38%,rgba(0,189,184,.1) 0%,transparent 70%);pointer-events:none}.appointment-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:96px 96px;opacity:.2}.appointment-hero-content{max-width:880px;margin:0 auto;text-align:center;position:relative;z-index:1}.appointment-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}.appointment-hero-title span{display:inline;background:linear-gradient(90deg,var(--aqua),var(--sky));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.appointment-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 36px}.hero-features{display:flex;justify-content:center;flex-wrap:wrap;gap:24px}.feature-item{display:flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:rgba(255,255,255,.85)}.feature-item i{font-size:16px;color:var(--aqua)}.appointment-form-section{background:var(--ivory);padding:clamp(80px,10vw,140px) 0}.form-container{max-width:820px;margin:0 auto;background:var(--white);border-radius:var(--radius-xl);padding:clamp(48px,6vw,64px);box-shadow:var(--shadow-lg);border:1px solid rgba(180,160,100,.12)}.form-header{text-align:center;margin-bottom:40px}.form-header h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.2vw,42px);font-weight:600;color:var(--navy);margin-bottom:12px}.form-header p{font-size:15px;line-height:1.7;color:var(--text-mid)}.appointment-form{display:flex;flex-direction:column;gap:24px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:8px}.form-group label i{font-size:14px;color:var(--cobalt)}.required{color:var(--gold)}.form-group input,.form-group select,.form-group textarea{font-family:'DM Sans',sans-serif;font-size:15px;color:var(--text-dark);background:var(--white);border:1px solid rgba(180,160,100,.2);border-radius:var(--radius-md);padding:14px 16px;transition:var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--cobalt);box-shadow:0 0 0 3px rgba(18,68,162,.1)}.form-group textarea{resize:vertical;min-height:100px}.form-actions{margin-top:16px;text-align:center}.form-actions button{width:100%;max-width:none;justify-content:center;white-space:normal;text-align:center;word-break:break-word}.form-note{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--text-muted);margin-top:12px;display:flex;align-items:center;justify-content:center;gap:6px}.form-note i{font-size:14px;color:var(--cobalt)}.form-divider{text-align:center;margin:40px 0 32px;position:relative}.form-divider::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(180,160,100,.15)}.form-divider span{position:relative;background:var(--white);padding:0 16px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.alternative-contact{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.alt-btn{display:flex;align-items:center;gap:16px;background:var(--ivory-2);border:1px solid rgba(180,160,100,.15);border-radius:var(--radius-md);padding:20px;text-decoration:none;transition:var(--transition)}.alt-btn:hover{background:var(--ivory);border-color:var(--cobalt);transform:translateY(-2px)}.alt-btn i{font-size:24px;color:var(--cobalt);flex-shrink:0}.alt-btn div{flex:1}.alt-btn strong{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:700;color:var(--navy);display:block;margin-bottom:4px}.alt-btn span{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--text-mid)}.appointment-why-section{background:var(--ivory-2);padding:clamp(80px,10vw,120px) 0}.why-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,80px);align-items:center}.why-content h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.2vw,42px);font-weight:600;color:var(--navy);margin-bottom:20px}.lead-text{font-size:16px;line-height:1.8;color:var(--text-mid);margin-bottom:28px}.why-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.why-list li{display:flex;align-items:flex-start;gap:12px;font-size:15.5px;line-height:1.7;color:var(--text-dark)}.why-list i{font-size:18px;color:var(--cobalt);margin-top:2px;flex-shrink:0}.why-image{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.why-image img{width:100%;height:auto;display:block}.appointment-faq-section{background:var(--ivory);padding:clamp(80px,10vw,120px) 0}.section-heading{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,3.6vw,48px);font-weight:600;color:var(--navy);text-align:center;margin-bottom:48px}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:24px;max-width:1200px;margin:0 auto}.faq-item{background:var(--white);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-sm);border:1px solid rgba(180,160,100,.1);transition:var(--transition)}.faq-item:hover{box-shadow:var(--shadow-md);border-color:var(--gold);transform:translateY(-4px)}.faq-item h3{font-family:'DM Sans',sans-serif;font-size:17px;font-weight:600;color:var(--navy);margin-bottom:12px;display:flex;align-items:flex-start;gap:12px;line-height:1.4}.faq-item i{font-size:20px;color:var(--cobalt);margin-top:2px;flex-shrink:0}.faq-item p{font-size:15px;line-height:1.8;color:var(--text-mid);margin:0}@media (max-width:768px){.form-row{grid-template-columns:1fr}.alternative-contact{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}.why-image{order:-1}.hero-features{flex-direction:column;align-items:center}.form-container{padding:clamp(28px,5vw,48px)}.form-actions .btn{font-size:14px;padding:14px 20px;line-height:1.4}}