.locations-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:4rem 0 3rem;text-align:center;position:relative;overflow:hidden}.locations-hero:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.4;pointer-events:none}.locations-hero h1{font-size:3rem;margin-bottom:1rem;font-weight:700;position:relative;z-index:1}.hero-subtitle{font-size:1.5rem;margin-bottom:1rem;opacity:.95;position:relative;z-index:1}.regions-section{padding:3rem 0 4rem;background:#fff}.search-wrapper{max-width:500px;margin:0 auto 3rem}#region-search{padding:.875rem 1.25rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;width:100%;transition:all .3s ease}#region-search:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem}.locations-grid.small{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.location-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s ease;text-decoration:none;display:flex;flex-direction:column}.location-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.location-card-small{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .3s ease;text-decoration:none;display:flex;align-items:center;justify-content:space-between}.location-card-small:hover{border-color:#3b82f6;background:#eff6ff}.location-card-small h4{color:#1e3a8a;font-size:1rem;margin:0}.card-link-small{color:#3b82f6;font-size:1.5rem;font-weight:700}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-header h4{color:#1e3a8a;font-size:1.5rem;margin:0}.badge{background:#dbeafe;color:#1e40af;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.card-description{color:#6b7280;line-height:1.6;flex-grow:1;margin-bottom:1rem}.card-link{color:#3b82f6;font-weight:600;display:inline-flex;align-items:center}.why-ontario-wide{background:#f9fafb;padding:4rem 0}.why-ontario-wide h2{text-align:center;font-size:2.5rem;color:#1e3a8a;margin-bottom:3rem}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.benefit{text-align:center}.benefit-icon{font-size:3rem;margin-bottom:1rem}.benefit h3{color:#1e3a8a;font-size:1.5rem;margin-bottom:.5rem}.benefit p{color:#6b7280;line-height:1.6}.how-it-works{padding:4rem 0}.how-it-works h2{text-align:center;font-size:2.5rem;color:#1e3a8a;margin-bottom:3rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.step{text-align:center}.step-number{width:60px;height:60px;background:#3b82f6;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1rem}.step h3{color:#1e3a8a;font-size:1.5rem;margin-bottom:.5rem}.step p{color:#6b7280;line-height:1.6}.final-cta{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;padding:4rem 0;text-align:center}.final-cta h2{font-size:2.5rem;margin-bottom:1rem}.final-cta p{font-size:1.2rem;margin-bottom:2rem;opacity:.95}.cta-button-large{background:#fff;color:#1e3a8a;padding:1rem 2.5rem;border-radius:50px;text-decoration:none;font-weight:700;font-size:1.2rem;display:inline-block;transition:transform .3s ease,box-shadow .3s ease}.cta-button-large:hover{transform:scale(1.05);box-shadow:0 8px 20px #0003}.cta-subtext{font-size:.95rem;margin-top:1rem;opacity:.85}@media(max-width:768px){.locations-hero h1{font-size:2rem}.hero-subtitle{font-size:1.2rem}.search-wrapper{padding:0 1rem}.locations-grid{grid-template-columns:1fr}.intro-content h2,.regions-section h2,.why-ontario-wide h2,.how-it-works h2,.final-cta h2{font-size:1.75rem}}
