:root{--orange:#087fc4;--orange-dark:#0569a4;--text:#17324d;--muted:#617386;--soft:#f6fbff;--line:#d8e8f3;--peach:#edf7ff;--notice:#eef8ff;--green:#0b82bd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#ffffff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:17px}a{color:inherit;text-decoration:none}a,button{font:inherit}.brand{color:var(--orange);font-size:20px;font-weight:800;line-height:1}.immersive-hero{background:#111827;min-height:460px;overflow:hidden;position:relative}.hero-background{object-fit:cover;object-position:center;z-index:0}.hero-shade{background:linear-gradient(90deg,rgba(5,33,58,.8),rgba(7,58,95,.58) 43%,rgba(8,127,196,.18)),rgba(5,36,64,.22);inset:0;position:absolute;z-index:1}.immersive-inner{align-items:center;display:flex;margin:0 auto;max-width:1060px;min-height:392px;padding:46px 18px 76px;position:relative;z-index:2}.hero-copy{color:#ffffff;max-width:620px}.hero-copy .billing-badge{box-shadow:0 14px 32px rgba(0,0,0,.18);margin-bottom:20px}.hero-kicker{color:rgba(255,255,255,.92);font-size:22px;font-weight:800;line-height:1.25;margin:0 0 16px}.hero-copy h1{color:#ffffff;font-size:clamp(36px,4.3vw,54px);letter-spacing:0;line-height:1.08;margin:0 0 16px;max-width:640px}.hero-lead{color:rgba(255,255,255,.94);font-size:19px;font-weight:650;line-height:1.55;margin:0 0 18px;max-width:560px}.hero-copy .meta-line{color:rgba(255,255,255,.84);font-size:16px;line-height:1.45;margin:8px 0}.hero-copy .open-line strong{color:#8ce0ad}.hero-copy .open-line span{color:rgba(255,255,255,.9)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.hero-phone,.hero-primary,.hero-secondary,.hero-video,.language-switch{align-items:center;border-radius:4px;display:inline-flex;font-size:16px;font-weight:850;justify-content:center;min-height:48px;padding:0 20px}.hero-primary{background:var(--orange);color:#ffffff}.hero-phone{background:#e8f8ff;border:1px solid #b7dff2;color:#06324a;font-weight:900}.hero-secondary{border:1px solid rgba(255,255,255,.76);color:#ffffff}.hero-video{background:#ffffff;box-shadow:0 12px 24px rgba(5,36,64,.16);color:var(--orange)}.language-switch{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.52);color:#ffffff}.hero-tabs{background:rgba(255,255,255,.9);border-radius:4px 4px 0 0;box-shadow:0 -10px 32px rgba(8,46,78,.08);bottom:0;left:50%;position:absolute;transform:translateX(-50%);width:min(100%,1060px);z-index:3}.appointment-modal{display:none}.appointment-modal:target{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.modal-backdrop{background:rgba(5,28,48,.62);inset:0;position:absolute}.appointment-panel{background:#ffffff;border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px rgba(5,28,48,.28);max-width:520px;padding:24px;position:relative;width:min(100%,520px);z-index:1}.appointment-head{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:20px}.appointment-head p{color:var(--orange);font-size:15px;font-weight:850;margin:0 0 6px;text-transform:uppercase}.appointment-head h2{color:#17324d;font-size:23px;line-height:1.25;margin:0}.modal-close{align-items:center;border:1px solid var(--line);border-radius:50%;color:#53677c;display:inline-flex;flex:0 0 auto;font-size:16px;font-weight:850;height:32px;justify-content:center;line-height:1;width:32px}.appointment-details{border:1px solid var(--line);border-radius:8px;margin:0 0 18px;overflow:hidden}.appointment-details div{display:grid;grid-gap:12px;gap:12px;grid-template-columns:118px 1fr;padding:14px 16px}.appointment-details div+div{border-top:1px solid var(--line)}.appointment-details dd,.appointment-details dt{font-size:16px;line-height:1.55;margin:0}.appointment-details dt{color:#647086;font-weight:800}.appointment-details dd{color:#17324d;font-weight:700}.phone-call-link{color:var(--orange);font-weight:900;text-decoration:underline;text-underline-offset:3px}.call-button{align-items:center;background:var(--orange);border-radius:4px;color:#ffffff;display:flex;font-size:16px;font-weight:900;justify-content:center;min-height:44px;padding:0 18px;width:100%}.hero-gallery{display:grid;grid-template-columns:.94fr 1.12fr .92fr 1.12fr;height:232px;position:relative;width:100%}.hero-tile{overflow:hidden;position:relative}.hero-tile img{object-fit:cover}.photo-button{align-items:center;background:#ffffff;border:1px solid #d9dfe7;border-radius:4px;bottom:12px;color:#2c3648;display:inline-flex;font-size:11px;font-weight:800;height:28px;padding:0 12px;position:absolute;right:12px}.clinic-summary{background:#ffffff;border-bottom:1px solid #e8edf4}.clinic-inner{align-items:flex-start;display:flex;justify-content:space-between;margin:0 auto;max-width:1060px;padding:26px 18px 18px}.clinic-details{max-width:680px}.billing-badge{background:linear-gradient(180deg,#e8f8ff,#e8f8ff 50%,#087fc4 0,#087fc4);border-radius:4px;color:#06324a;display:inline-flex;flex-direction:column;font-size:12px;font-weight:900;gap:0;line-height:1.05;margin-bottom:7px;padding:6px 7px 5px;text-transform:uppercase}.billing-badge span{color:#ffffff;font-size:11px}.clinic-details h1{color:#26324a;font-size:22px;line-height:1.15;margin:0 0 8px}.meta-line{color:#667185;font-size:12px;font-weight:600;margin:5px 0}.open-line{align-items:center;display:flex;gap:8px;margin:10px 0 0}.open-line strong{color:var(--green);font-size:13px}.open-line span{color:#526073;font-size:13px;font-weight:700}.clinic-tabs{display:flex;gap:26px;margin:0 auto;max-width:1060px;padding:0 18px}.clinic-tabs a{color:#586579;display:block;font-size:16px;font-weight:800;padding:12px 0 13px}.clinic-tabs a:first-child{color:#233149}.announcement-shell{background:#ffffff;padding:18px 18px 26px;--section-photo:url(/images/backgrounds/medical-reception.jpg);--section-photo-opacity:0.92;--section-photo-position:center top;--section-wash:linear-gradient(180deg,rgba(255,255,255,0.82),rgba(238,248,255,0.76))}.announcement-card{background:var(--notice);border-radius:8px;display:grid;grid-gap:0;gap:0;grid-template-columns:1.05fr .95fr 1.4fr;margin:0 auto;max-width:1060px;padding:18px 22px}.announcement-card h2,.announcement-card h3,.announcement-card p{margin:0}.announcement-card h2{color:#27364f;font-size:16px;grid-column:1/-1;margin-bottom:14px}.notice-row{border-bottom:0;border-left:1px solid #c8ddec;padding:0 18px}.notice-row:first-of-type{border-left:0;padding-left:0}.notice-row.last{padding-right:0}.notice-row h3{color:#3b4659;font-size:16px;margin-bottom:6px}.notice-row p{color:#687488;font-size:16px;line-height:1.65}.notice-row a{color:var(--orange);font-weight:800}.about-band{background:var(--peach);padding:32px 18px 36px;--section-photo:url(/images/backgrounds/medical-desk.jpg);--section-photo-opacity:0.85;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(237,247,255,0.82),rgba(237,247,255,0.76))}.about-content{margin:0 auto;max-width:1000px;text-align:center}.about-content h2{color:var(--orange);font-size:20px;margin:0 0 16px}.about-content>p{color:#526073;font-size:16px;line-height:1.75;margin:0 auto 10px;max-width:860px}.about-card{background:linear-gradient(180deg,#ffffff,#ffffff 70%,rgba(238,248,255,.62));border:1px solid rgba(216,232,243,.82);border-radius:8px;margin:18px auto 0;max-width:780px;padding:18px 28px 14px}.about-card p{color:#778296;font-size:16px;line-height:1.75;margin:0 0 14px}.about-card .muted{color:#c1c8d2}.about-card button{background:transparent;border:0;color:var(--orange);cursor:pointer;font-size:12px;font-weight:800;padding:0}.content-wrap{margin:0 auto;max-width:1060px;padding:0 18px}.about-band,.announcement-shell,.faq-section,.info-section,.people-section,.services-section,.video-section{isolation:isolate;overflow:hidden;position:relative}.about-band>*,.announcement-shell>*,.faq-section>*,.info-section>*,.people-section>*,.services-section>*,.video-section>*{position:relative;z-index:2}.about-band:before,.info-section:before{background-image:var(--section-photo);background-position:var(--section-photo-position,center);background-size:cover;content:"";filter:saturate(.86) contrast(.96);inset:0;opacity:var(--section-photo-opacity,1);position:absolute;transform:scale(1.02);z-index:0}.about-band:after,.info-section:after{background:var(--section-wash,rgba(255,255,255,.9));content:"";inset:0;position:absolute;z-index:1}.people-section{background:#fbfcfe;padding:34px 0 38px;--section-photo:url(/images/backgrounds/medical-desk.jpg);--section-photo-opacity:0.82;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(250,253,255,0.84),rgba(239,248,255,0.78))}.section-title{color:#26324a;font-size:20px;line-height:1.35;margin:0 0 16px}.staff-directory{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.people-group{background:rgba(255,255,255,.92);border:1px solid #dfe5ed;border-radius:8px;box-shadow:0 12px 28px rgba(8,76,126,.06);margin-bottom:0;padding:18px}.people-group:first-child,.people-group:last-child,.people-group:nth-child(4),.people-group:nth-child(5),.people-group:nth-child(6){grid-column:1/-1}.people-group .section-title{border-bottom:1px solid #d8e8f3;padding-bottom:10px}.people-grid{display:grid;grid-gap:12px;gap:12px;margin-bottom:0}.doctors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.people-note{background:#f6fbff;border:1px solid #d7e8f3;border-radius:6px;color:#526073;font-size:16px;font-weight:700;line-height:1.65;margin:0;max-width:none;padding:13px 14px}.person-card{background:#fbfdff;border:1px solid #e4eef6;border-radius:6px;box-shadow:none;min-height:74px;overflow:hidden;padding:14px}.person-copy{min-height:0;padding:0}.person-copy h3{color:#26324a;font-size:18px;line-height:1.3;margin:0 0 7px}.person-copy p{color:#687488;display:block;font-size:16px;font-weight:700;line-height:1.45;margin:0}.services-section{background:#ffffff;padding:34px 0 38px;--section-photo:url(/images/backgrounds/medical-reception.jpg);--section-photo-opacity:0.8;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(255,255,255,0.86),rgba(239,248,255,0.78))}.section-copy{color:#526073;font-size:16px;line-height:1.75;margin:0 0 12px}.medical-services-panel{background:#ffffff;border:1px solid #d7e8f3;border-radius:8px;box-shadow:0 12px 28px rgba(8,76,126,.06);margin-top:20px;padding:30px}.medical-services-panel li,.medical-services-panel p{color:#526073;font-size:17px;line-height:1.85}.medical-services-panel p{margin:0 0 18px}.medical-services-panel ul{display:grid;grid-gap:14px 34px;gap:14px 34px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding-left:24px}.medical-services-panel li::marker{color:var(--orange)}.medical-services-panel .compact-list{grid-template-columns:repeat(4,minmax(0,1fr))}.medical-services-block{padding:0 0 28px}.medical-services-block+.medical-services-block{border-top:1px solid #d8e8f3;padding-top:28px}.medical-services-block:last-child{padding-bottom:0}.medical-services-panel h3{border-left:4px solid var(--orange);color:#071f35;font-size:21px;line-height:1.35;margin:0 0 14px;padding-left:12px}.medical-services-panel h3:first-child{margin-top:0}.video-section{background:#ffffff;padding:34px 0 38px;--section-photo:url(/images/backgrounds/medical-desk.jpg);--section-photo-opacity:0.78;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(255,255,255,0.88),rgba(239,248,255,0.8))}.video-panel{align-items:stretch;background:rgba(255,255,255,.94);border:1px solid #d7e8f3;border-radius:8px;box-shadow:0 12px 28px rgba(8,76,126,.08);display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);margin-top:18px;padding:22px}.video-frame{aspect-ratio:16/9;background:#e8f3fb;border:1px solid var(--line);border-radius:8px;min-height:260px;overflow:hidden}.video-frame iframe{border:0;display:block;height:100%;width:100%}.video-qr-card{align-items:center;background:#f7fbff;border:1px solid #d8e8f3;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:22px;text-align:center}.video-qr-card h3{color:#071f35;font-size:20px;line-height:1.25;margin:0 0 10px}.video-qr-card p{color:#526073;font-size:16px;line-height:1.65;margin:0 0 14px}.qr-link{display:inline-flex}.qr-link img{background:#ffffff;border:1px solid #d8e8f3;border-radius:8px;display:block;height:176px;padding:10px;width:176px}.video-qr-card .qr-caption{color:#17324d;font-size:12px;font-weight:850;margin:12px 0 14px}.video-button{align-items:center;background:var(--orange);border-radius:4px;color:#ffffff;display:inline-flex;font-size:16px;font-weight:900;justify-content:center;min-height:44px;padding:0 18px}.video-page{background:#ffffff;min-height:100vh}.video-page-header{align-items:center;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:18px 28px}.video-page-brand{line-height:1.25}.video-page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.video-header-link{align-items:center;border:1px solid var(--line);border-radius:4px;color:#17324d;display:inline-flex;font-size:16px;font-weight:850;justify-content:center;min-height:42px;padding:0 16px}.video-header-link.primary{background:var(--orange);border-color:var(--orange);color:#ffffff}.video-page-section{min-height:calc(100vh - 144px);padding:42px 0 54px}.video-page-copy{margin:0 0 22px;max-width:720px}.video-eyebrow{color:var(--orange);font-size:14px;font-weight:900;letter-spacing:0;margin:0 0 10px;text-transform:uppercase}.video-page-copy h1{color:#071f35;font-size:36px;line-height:1.1;margin:0 0 12px}.video-page-copy p:last-child{color:#526073;font-size:17px;font-weight:650;line-height:1.55;margin:0}.video-page .video-panel{margin-top:0}.video-page .video-frame{min-height:360px}.video-placeholder{background:rgba(255,255,255,.94);border:1px solid #d7e8f3;border-radius:8px;box-shadow:0 12px 28px rgba(8,76,126,.08);margin-top:18px;max-width:720px;padding:28px}.video-placeholder h2{color:#071f35;font-size:24px;line-height:1.2;margin:0 0 10px}.video-placeholder p{color:#526073;font-size:16px;line-height:1.6;margin:0}.info-section{background:#ffffff;padding:30px 0 34px;--section-photo:url(/images/backgrounds/medical-building.jpg);--section-photo-opacity:0.78;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(255,255,255,0.86),rgba(239,248,255,0.78))}.info-section .content-wrap{align-items:start;display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr)}.info-section .section-title{grid-column:1/-1}.info-block,.location-block{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 28px rgba(8,76,126,.06);padding:20px}.info-block h3,.location-block h3{color:#26324a;font-size:17px;margin:0 0 8px}.info-block h3 span{color:#7b8799;font-weight:600}.hours-list{margin:0;max-width:none}.hours-list div{display:grid;grid-template-columns:1fr 1fr}.hours-list dd,.hours-list dt,.location-block a,.location-block p{color:#526073;font-size:16px;line-height:1.6;margin:0}.hours-list dd{text-align:right}.location-block{border-top:1px solid var(--line)}.location-block h3+p{margin-top:4px}.map-panel{aspect-ratio:16/9;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 32px rgba(8,76,126,.08);margin:18px 0 12px;max-width:none;overflow:hidden}.map-panel iframe{border:0;display:block;height:100%;width:100%}.map-link{margin-bottom:18px}.location-block h3:nth-of-type(2){margin-top:20px}.location-block a{color:#1877f2;display:inline-block;font-weight:800;margin-top:2px}.faq-section{background:#ffffff;min-height:auto;padding:38px 0 54px;--section-photo:url(/images/backgrounds/medical-reception.jpg);--section-photo-opacity:0.76;--section-photo-position:center;--section-wash:linear-gradient(180deg,rgba(255,255,255,0.88),rgba(239,248,255,0.78))}.faq-wrap{text-align:center}.faq-wrap h2{color:#26324a;font-size:25px;line-height:1.2;margin:0 0 14px}.faq-wrap>p{color:#687488;font-size:16px;margin:0}.faq-list{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:8px;margin:34px auto 0;max-width:650px;padding:8px 18px;text-align:left}.faq-list details{border-bottom:1px solid var(--line);color:#26324a;padding:11px 0;position:relative}.faq-list details:last-child{border-bottom:0}.faq-list summary{cursor:pointer;font-size:17px;font-weight:800;list-style:none;padding-right:36px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{align-items:center;border:1px solid #b9c3cf;border-radius:50%;color:#7a8698;content:"+";display:flex;font-size:12px;height:15px;justify-content:center;position:absolute;right:0;top:12px;width:15px}.faq-list details[open] summary:after{content:"-"}.faq-list p{color:#526073;font-size:16px;line-height:1.65;margin:6px 40px 0 0}.footer{background:#ffffff;padding:28px 18px}.footer-inner{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:930px;text-align:center}.footer-brand{display:inline-block}@media (max-width:900px){.immersive-hero{min-height:auto}.immersive-inner{min-height:auto;padding:40px 18px 80px}.hero-copy{max-width:680px}.hero-copy h1{font-size:44px}.hero-gallery{grid-template-columns:repeat(2,1fr);height:360px}.clinic-inner{gap:22px}.announcement-card,.info-section .content-wrap{grid-template-columns:1fr}.notice-row{border-left:0;border-top:1px solid #c8ddec;padding:12px 0 0}.notice-row:first-of-type{border-top:0;padding-top:0}.staff-directory{grid-template-columns:1fr}.doctors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.medical-services-panel ul{grid-template-columns:1fr}.medical-services-panel .compact-list{grid-template-columns:repeat(2,minmax(0,1fr))}.video-panel{grid-template-columns:1fr}}@media (max-width:640px){body{font-size:17px}.hero-gallery{grid-template-columns:1fr;height:auto}.immersive-inner{padding:34px 18px 86px}.hero-kicker{font-size:18px;margin-bottom:16px}.hero-copy h1{font-size:36px}.hero-lead{font-size:16px}.hero-actions{flex-direction:column}.hero-phone,.hero-primary,.hero-secondary,.hero-video,.language-switch{width:100%}.hero-tabs{border-radius:0}.hero-tile{height:185px}.appointment-panel{padding:20px}.appointment-head h2{font-size:18px}.appointment-details div{gap:6px;grid-template-columns:1fr;padding:13px 14px}.clinic-inner{flex-direction:column;padding-top:26px}.clinic-tabs{gap:22px;overflow-x:auto}.about-band{padding:30px 18px}.about-card{padding:24px 22px 14px}.people-section,.services-section,.video-section{padding:28px 0}.doctors-grid,.people-grid,.staff-grid{grid-template-columns:1fr}.medical-services-panel,.people-group{padding:16px}.medical-services-panel .compact-list{grid-template-columns:1fr}.video-panel{padding:16px}.video-frame{min-height:190px}.video-page-header{align-items:stretch;flex-direction:column;padding:16px 18px}.video-header-link,.video-page-actions{width:100%}.video-page-section{min-height:auto;padding:30px 0}.video-page-copy h1{font-size:32px}.video-qr-card{padding:18px}.qr-link img{height:152px;width:152px}.person-card{max-width:none}.faq-section{min-height:auto}.faq-list{margin-top:28px}.footer-brand{line-height:1.3}}