.clinic-location{background:#eee7dc;color:#142e41;overflow:hidden;scroll-margin-top:100px}
.location-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:46px}
.location-heading h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(48px,5vw,76px);line-height:1.1;letter-spacing:-1.7px;margin:18px 0 0}
.location-heading h2 em{font-style:italic;color:#806746}
.location-heading>p{margin:0 0 5px;line-height:1.65;font-size:18px;color:#4a5e68}
.location-heading .eyebrow{font-size:11px;letter-spacing:2px}
.location-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,4vw,60px);align-items:stretch}
.location-gallery{position:relative;min-width:0;min-height:650px;padding-bottom:85px}
.location-room{margin:0;width:79%;height:calc(100% - 60px);min-height:510px;border-radius:110px 14px 14px 14px;overflow:hidden;position:relative;background:#d7cec0}
.location-room>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:51% 50%}
.location-room:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#102c40e8);pointer-events:none}
.location-room figcaption{position:absolute;bottom:27px;left:25px;right:20px;display:flex;gap:13px;align-items:center;z-index:1;color:#fff4e3;font-size:14px;line-height:1.5;max-width:45%}
.location-photo-number{font-size:11px;align-self:flex-start;line-height:2;white-space:nowrap;flex-shrink:0}
.location-people{position:absolute;right:0;bottom:0;width:52%;margin:0;padding:9px;background:#fcf9f2;border-radius:18px;box-shadow:0 18px 40px #0b28321a;transform:rotate(2deg)}
.location-patient-frame{overflow:hidden;border-radius:11px;aspect-ratio:498/540;background:#d7cec0}
.location-patient-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.location-people figcaption{display:flex;gap:10px;align-items:center;padding:16px 8px 9px;font-size:12px;line-height:1.5;color:#284250}
.location-people figcaption>span:first-child{font-size:25px;color:#947b57}
.location-gallery-line{position:absolute;left:0;bottom:32px;height:1px;width:37%;background:#a28b6860}
.location-visit{min-width:0;border-radius:24px;overflow:hidden;background:#132f40;box-shadow:0 18px 40px #142e410c}
.location-map{height:265px;position:relative;background:#dddacb}
.location-map iframe{display:block;border:0;width:100%;height:100%}
.location-map-link{position:absolute;right:12px;bottom:14px;display:flex;align-items:center;gap:16px;background:#fffaf1;color:#142e41;padding:10px 14px;border:1px solid #cdbb9f;border-radius:8px;text-decoration:none;font-size:12px;box-shadow:0 3px 12px #142e4120}
.location-card{padding:30px 32px 34px;color:#f5eddf}
.location-card-heading .eyebrow{font-size:9px;letter-spacing:2px;color:#d3bd9a}
.location-card h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:34px;letter-spacing:-.5px;margin:12px 0 25px;color:#fff4e3}
.location-detail-label,.location-details dt{font-size:11px;letter-spacing:.7px;color:#c2cdd2}
.location-address address{font-size:16px;font-style:normal;line-height:1.7;margin-top:9px;color:#f5eddf}
.location-details{margin:22px 0 26px}
.location-details>div{display:grid;grid-template-columns:1fr 1.5fr;gap:15px;border-top:1px solid #e7d5b631;padding:18px 0}
.location-details dd{margin:0;font-size:15px;line-height:1.6}
.location-details strong{font-weight:500;display:block;color:#e0c7a0;font-size:18px;margin-top:2px}
.location-details a{color:#fff4e3;text-decoration:none}
.location-actions{display:flex;gap:12px;flex-wrap:wrap}
.location-actions .btn{min-height:48px;padding:13px 18px;font-size:14px;flex:1;justify-content:center;gap:15px;white-space:nowrap}
.location-map-link:focus-visible,.location-details a:focus-visible{outline:3px solid #cda971;outline-offset:3px}
html[data-theme=dark] .clinic-location{background:#102532;color:#f2e8da}
html[data-theme=dark] .location-heading>p{color:#c1cdd2}
html[data-theme=dark] .location-heading h2 em{color:#dfc49a}
@media(max-width:1050px){.location-grid{gap:28px;grid-template-columns:1fr 1fr}.location-card{padding:26px 24px}.location-card h3{font-size:30px}.location-room{width:85%}.location-people{width:60%}.location-room figcaption{left:18px;font-size:12px;max-width:35%}.location-details>div{grid-template-columns:1fr}.location-gallery{min-height:730px}.location-actions .btn{font-size:13px;padding-inline:14px}}
@media(max-width:760px){.location-heading{display:block;margin-bottom:32px}.location-heading h2{font-size:52px}.location-heading>p{font-size:16px;margin-top:20px}.location-grid{grid-template-columns:1fr;gap:32px}.location-gallery{min-height:0;height:560px;padding-bottom:60px}.location-room{width:82%;min-height:0;height:460px;border-top-left-radius:85px}.location-people{width:54%;max-width:290px;transform:rotate(1.5deg)}.location-room figcaption{max-width:38%;bottom:24px}.location-people figcaption{font-size:11px;padding:9px 3px 4px;gap:7px}.location-gallery-line{bottom:25px}.location-map{height:275px}.location-card{padding:28px 24px}.location-card h3{font-size:34px}.location-details>div{grid-template-columns:1fr 1.4fr}.location-details dd{font-size:14px}.location-address address{font-size:15px}.location-actions .btn{font-size:14px}.location-visit{border-radius:18px}}
@media(max-width:400px){.location-gallery{height:500px}.location-room{height:415px}.location-people{width:58%}.location-room figcaption{font-size:11px;gap:7px;left:15px}.location-card{padding:26px 20px}.location-details>div{gap:10px;grid-template-columns:1fr 1.5fr}}
