/* Home */
.home-hero h1{font-size:var(--step-5)}.browse-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.browse-item{display:flex;align-items:flex-start;gap:.8rem;padding:1rem;background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-md)}.browse-item .icon{color:var(--color-primary);margin-top:.2rem}.browse-item strong{font-size:.95rem}.consult-checklist{columns:2;column-gap:2rem}.consult-checklist li{break-inside:avoid}.about-band{display:grid;grid-template-columns:minmax(17rem,.7fr) minmax(0,1.3fr);gap:clamp(2rem,5vw,5rem);align-items:center}.about-band img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-xl);border:1px solid var(--border-light)}.clinic-module{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.9fr);gap:2rem;align-items:stretch}.clinic-gallery{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:.75rem}.clinic-gallery img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-light)}.clinic-gallery img:first-child{grid-row:1/-1}.testimonial-stage{position:relative}.testimonial-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.testimonial-controls{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:1rem}.testimonial-google-layout{align-items:stretch}.testimonial-map-card{padding:0;overflow:hidden;min-height:30rem}.testimonial-map-card .loaded-frame{height:100%;min-height:30rem}
/* Hubs */
.hub-category+ .hub-category{margin-top:3.5rem}.hub-category-header{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.directory-card{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem;background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-md);text-decoration:none;color:inherit}.directory-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.directory-card .card-icon{width:2.5rem;height:2.5rem;margin:0}.directory-card h3{font-family:var(--font-body);font-size:1rem}.directory-card p{font-size:.84rem;color:var(--text-secondary);margin-top:.25rem}.verification-banner{padding:.85rem 1rem;background:var(--caution-background);border:1px solid #fed7aa;border-radius:var(--radius-md);font-size:.83rem;color:#7c2d12;margin-bottom:1.5rem}
/* About */
.profile-hero{display:grid;grid-template-columns:minmax(18rem,.75fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,6rem);align-items:center}.profile-hero img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-xl);border:1px solid var(--border-light)}.quick-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.quick-fact{padding:1rem;background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-md)}.quick-fact span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.quick-fact strong{display:block;margin-top:.2rem}.credential-timeline{position:relative;display:grid;gap:1rem;padding-left:2rem}.credential-timeline::before{content:"";position:absolute;left:.65rem;top:.5rem;bottom:.5rem;width:2px;background:var(--border-strong)}.credential-item{position:relative;padding:1.1rem;background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-md)}.credential-item::before{content:"";position:absolute;left:-1.82rem;top:1.4rem;width:.75rem;height:.75rem;border-radius:50%;background:var(--color-primary);border:3px solid var(--background-main)}
/* Policy */
.policy-layout{display:grid;grid-template-columns:15rem minmax(0,var(--reading));gap:4rem;justify-content:center;align-items:start}.policy-nav{position:sticky;top:7.5rem}.policy-nav a{display:block;padding:.5rem .65rem;border-left:2px solid var(--border-light);font-size:.86rem;text-decoration:none;color:var(--text-secondary)}.policy-nav a:hover{border-left-color:var(--color-primary);color:var(--color-primary-hover)}.policy-content section+section{margin-top:3rem}.policy-content h2{margin-bottom:.85rem}
/* Location/contact */
.location-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.location-detail{display:flex;gap:.85rem;padding:1rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-white)}.location-detail .icon{color:var(--color-primary);margin-top:.2rem}.location-detail strong{display:block}.location-detail span,.location-detail address{display:block;color:var(--text-secondary);font-style:normal;font-size:.9rem;margin-top:.15rem}.gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem}.gallery-grid figure:first-child{grid-row:span 2}.gallery-grid img{width:100%;height:100%;min-height:13rem;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--border-light)}.gallery-grid figcaption{font-size:.78rem;color:var(--text-secondary);margin-top:.4rem}.confirmation-card{max-width:46rem;margin-inline:auto;text-align:center;padding:clamp(2rem,5vw,4rem);background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.confirmation-card .card-icon{margin-inline:auto;width:4rem;height:4rem;border-radius:50%;background:var(--status-success-background);color:var(--status-success)}
/* Blog/resources */
.featured-resource{display:grid;grid-template-columns:minmax(17rem,.8fr) minmax(0,1.2fr);gap:2rem;align-items:center;padding:1.25rem;border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--surface-white)}.featured-resource img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-lg)}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.article-card{display:flex;flex-direction:column}.article-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.article-card .card-body{display:flex;flex-direction:column;flex:1;padding:1.25rem}.article-card .content-meta{margin-top:auto;padding-top:1rem}.pagination{display:flex;justify-content:center;gap:.5rem;margin-top:2.5rem}.pagination span,.pagination button{width:2.6rem;height:2.6rem;display:grid;place-items:center;border:1px solid var(--border-light);border-radius:.6rem;background:var(--surface-white)}.pagination .current{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
/* Components/design system */
.preview-hero{background:var(--brand-navy);color:var(--color-primary-100);padding-block:4rem}.preview-hero h1{color:#fff}.preview-nav{position:sticky;top:0;z-index:50;background:var(--surface-white);border-bottom:1px solid var(--border-light);overflow-x:auto}.preview-nav .container{display:flex;gap:.25rem;padding-block:.6rem}.preview-nav a{white-space:nowrap;padding:.45rem .75rem;border-radius:.5rem;text-decoration:none;font-size:.82rem;font-weight:650}.preview-section{padding-block:4rem;border-bottom:1px solid var(--border-light)}.preview-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:750;margin-bottom:1rem}.swatch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}.swatch{border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-white)}.swatch-color{height:6rem}.swatch-copy{padding:.75rem;font-size:.78rem}.type-sample{padding:1rem 0;border-bottom:1px solid var(--border-light)}.spacing-demo{display:grid;gap:.75rem}.spacing-row{display:flex;align-items:center;gap:1rem}.spacing-box{height:1.2rem;background:var(--color-primary);border-radius:.2rem}
/* Sitemap */
.sitemap-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.sitemap-group{padding:1.25rem;background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.sitemap-group h2{font-family:var(--font-body);font-size:1rem;margin-bottom:.8rem}.sitemap-group ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}.sitemap-group a{font-size:.86rem;text-decoration:none}.sitemap-group .conditional{color:var(--caution-amber)}
/* 404 */
.error-page{min-height:70vh;display:grid;place-items:center;text-align:center}.error-page-inner{max-width:48rem}.error-code{font-family:var(--font-heading);font-size:clamp(6rem,20vw,12rem);line-height:.8;color:var(--background-aqua);text-shadow:1px 1px 0 var(--border-strong)}
/* Design-system token preview classes */
.swatch-primary{background:#1080D0}.swatch-primary-hover{background:#0B66A8}.swatch-primary-active{background:#095A94}.swatch-link{background:#0077FF}.swatch-link-hover{background:#005FCC}.swatch-primary-50{background:#F2F8FD}.swatch-primary-100{background:#E5F1FA}.swatch-primary-200{background:#CDE4F5}.swatch-primary-300{background:#A9D1EE}.swatch-heading{background:#111111}.swatch-text-primary{background:#18313B}.swatch-status-success{background:#15803D}.swatch-status-danger{background:#B42318}.swatch-status-warning{background:#B54708}.swatch-status-neutral{background:#6B7280}.spacing-8{width:8px}.spacing-16{width:16px}.spacing-24{width:24px}.spacing-32{width:32px}.spacing-48{width:48px}.spacing-64{width:64px}.spacing-80{width:80px}.spacing-96{width:96px}.preview-cookie{position:static;max-width:none;margin:0}.no-mobile-actions .mobile-action-bar{display:none!important}
.type-h1{font-family:var(--font-heading);font-size:var(--step-4);font-weight:650;line-height:1.16;letter-spacing:-.025em;color:var(--color-heading);text-wrap:balance}
.preview-hero .eyebrow{color:var(--color-primary)}.preview-hero .lede{color:var(--color-primary-100)}.preview-hero .eyebrow::before{background:var(--color-primary)}

/* Phase 2 responsive production imagery */
.hero-media > picture,.responsive-picture{display:block;width:100%;}
.clinic-gallery > picture{display:block;min-width:0;min-height:0;}
.clinic-gallery > picture img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-light);}
.clinic-gallery > picture:first-child{grid-row:1/-1;}

/* Homepage consultation and clinic contact refinements */
.consultation-emergency{margin-top:clamp(1.75rem,3vw,2.5rem)}
.clinic-contact-panel{padding:clamp(1.35rem,2.5vw,2rem);background:var(--surface-white);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}
.clinic-contact-heading{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:start;padding-bottom:1.25rem;border-bottom:1px solid var(--border-light)}
.clinic-contact-heading .card-icon{margin:0}
.clinic-contact-heading h2{margin-top:.2rem}
.clinic-contact-heading p{margin-top:.45rem;color:var(--text-secondary)}
.clinic-contact-kicker{display:block;color:var(--color-primary);font-size:.73rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.clinic-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.25rem}
.clinic-contact-option{display:grid;grid-template-columns:2.55rem minmax(0,1fr) auto;gap:.75rem;align-items:center;min-width:0;padding:.85rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--background-aqua);color:var(--text-primary);text-decoration:none;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition),transform var(--transition)}
.clinic-contact-option:hover{transform:translateY(-1px);border-color:var(--color-primary);background:var(--color-primary-50);box-shadow:var(--shadow-sm);color:var(--text-primary)}
.clinic-contact-option-icon{width:2.55rem;height:2.55rem;display:grid;place-items:center;border-radius:.75rem;background:var(--surface-white);color:var(--color-primary);border:1px solid var(--color-primary-200)}
.clinic-contact-option small,.clinic-contact-option strong{display:block;overflow-wrap:anywhere}
.clinic-contact-option small{color:var(--text-secondary);font-size:.72rem;line-height:1.35}
.clinic-contact-option strong{margin-top:.15rem;font-size:.88rem;line-height:1.35}
.clinic-contact-arrow{width:1rem;height:1rem;color:var(--color-primary);transition:transform var(--transition)}
.clinic-contact-option:hover .clinic-contact-arrow{transform:translateX(3px)}
.clinic-contact-whatsapp{background:#f2fbf5}
.clinic-contact-whatsapp .clinic-contact-option-icon{color:var(--whatsapp-green);border-color:#b7e2c4}
.clinic-contact-whatsapp .clinic-contact-arrow{color:var(--whatsapp-green)}
.clinic-contact-hours{display:flex;gap:.75rem;align-items:flex-start;margin-top:1.25rem;padding:1rem;border-radius:var(--radius-md);background:var(--brand-navy);color:#fff}
.clinic-contact-hours>.icon{margin-top:.15rem;color:var(--color-primary-200)}
.clinic-contact-hours p{margin:0}
.clinic-contact-hours strong,.clinic-contact-hours span{display:block;color:#fff}
.clinic-contact-hours span{margin-top:.15rem;font-size:.82rem;color:var(--border-light)}
