.dv-page{--dv-ink:#183b3d;--dv-teal:#14676b;--dv-muted:#4f686a;--dv-line:#d7e6e2;--dv-soft:#f3f8f5;--dv-pale:#e3f1eb;font-family:'Jost',sans-serif;color:var(--dv-ink);background:#fff}
.dv-page *,.dv-page *::before,.dv-page *::after{box-sizing:border-box}
.dv-page .dv-container{width:min(1280px,calc(100% - 64px));margin-inline:auto}
.dv-page h1,.dv-page h2,.dv-page p{margin:0}
.dv-page h1,.dv-page h2{font-family:inherit;font-weight:500;color:var(--dv-ink)}
.dv-page h1{font-size:clamp(42px,5vw,68px);line-height:1.08;letter-spacing:-.04em}
.dv-page h2{font-size:clamp(30px,3.1vw,42px);line-height:1.18;letter-spacing:-.025em}
.dv-page p{font-size:18px;line-height:1.75;color:var(--dv-muted)}
.dv-page a{color:inherit;text-decoration:none}
.dv-page a:focus-visible,.dv-page button:focus-visible,.dv-page input:focus-visible,.dv-page select:focus-visible,.dv-page textarea:focus-visible{outline:3px solid #247c80;outline-offset:4px}
.dv-page img{display:block;max-width:100%}
.dv-page .dv-eyebrow{font-size:13px;font-weight:600;line-height:1.4;color:var(--dv-teal);text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}
.dv-page .dv-section{padding-block:76px}
.dv-page .dv-hero{padding-block:24px 64px;background:linear-gradient(115deg,#f5faf8,#e3f1eb)}
.dv-page .dv-breadcrumb ol{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 38px;font-size:14px;line-height:1.6}
.dv-page .dv-breadcrumb li+li::before{content:'/';margin-right:10px;color:#6f8981}
.dv-page .dv-breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}
.dv-page .dv-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);gap:72px;align-items:center}
.dv-page .dv-hero-copy h2{max-width:720px;margin-top:20px;font-size:clamp(25px,2.5vw,34px);line-height:1.28;color:var(--dv-ink)}
.dv-page .dv-lead{max-width:760px;margin-top:20px;font-size:21px;line-height:1.65}
.dv-page .dv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.dv-page .dv-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:14px 22px;border:1px solid transparent;border-radius:12px;font-size:16px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s,border-color .2s}
.dv-page .dv-button:hover{transform:translateY(-2px)}
.dv-page .dv-primary{background:var(--dv-teal);color:#fff}
.dv-page .dv-primary:hover{background:#104f52;color:#fff}
.dv-page .dv-outline{border-color:var(--dv-teal);color:var(--dv-teal)}
.dv-page .dv-outline:hover{background:#dfefe8}
.dv-page .dv-doctor-card{position:relative;margin:0;padding:14px;background:#fff;border:1px solid var(--dv-line);border-radius:28px;box-shadow:0 20px 55px #183b3d12}
.dv-page .dv-doctor-image{overflow:hidden;border-radius:20px;background:#eef6f2;aspect-ratio:1/1}
.dv-page .dv-doctor-image img{width:100%;height:100%;object-fit:cover}
.dv-page .dv-doctor-card figcaption{position:absolute;left:30px;right:30px;bottom:30px;display:flex;flex-direction:column;gap:2px;padding:15px 18px;background:#fffffff2;border:1px solid #d7e6e2;border-radius:14px;box-shadow:0 12px 30px #183b3d12;backdrop-filter:blur(8px)}
.dv-page .dv-doctor-card figcaption span{font-size:13px;line-height:1.4;color:var(--dv-teal);font-weight:600;text-transform:uppercase;letter-spacing:.09em}
.dv-page .dv-doctor-card figcaption strong{font-size:18px;line-height:1.35;font-weight:500;color:var(--dv-ink)}
.dv-page .dv-location{background:#fff}
.dv-page .dv-section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:end;margin-bottom:38px}
.dv-page .dv-section-head>p{max-width:650px;justify-self:end}
.dv-page .dv-location-grid{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);gap:24px;align-items:stretch}
.dv-page .dv-info-card,.dv-page .dv-map-card{border:1px solid var(--dv-line);border-radius:24px;overflow:hidden;background:#fff}
.dv-page .dv-info-card{display:flex;flex-direction:column;padding:30px}
.dv-page .dv-info-list{display:grid;gap:0}
.dv-page .dv-info-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:18px 0;border-bottom:1px solid #e4eeea}
.dv-page .dv-info-item:first-child{padding-top:0}
.dv-page .dv-info-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#edf6f2;color:var(--dv-teal);font-size:18px}
.dv-page .dv-info-icon svg{display:block}
.dv-page .dv-info-icon-logo img{width:20px;height:20px;object-fit:contain}
.dv-page .dv-info-item>div{min-width:0;padding-top:1px}
.dv-page .dv-info-label{display:block;margin-bottom:4px;font-size:13px;line-height:1.4;color:#6b8182;text-transform:uppercase;letter-spacing:.075em;font-weight:600}
.dv-page .dv-info-item a{display:inline-block;max-width:100%;font-size:17px;line-height:1.55;color:var(--dv-ink);overflow-wrap:anywhere}
.dv-page .dv-info-item a:hover{color:var(--dv-teal);text-decoration:underline;text-underline-offset:4px}
.dv-page .dv-directions{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:52px;margin-top:auto;padding:16px 0 0;color:var(--dv-teal);font-size:16px;font-weight:600}
.dv-page .dv-directions:hover{text-decoration:underline;text-underline-offset:4px}
.dv-page .dv-map-card{min-height:560px;background:#eaf3ef}
.dv-page .dv-map-frame{display:block;width:100%;height:100%;min-height:560px;border:0}
.dv-page .dv-appointment{background:var(--dv-soft)}
.dv-page .dv-appointment-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:64px;align-items:start}
.dv-page .dv-appointment-copy{position:sticky;top:126px;padding-top:8px}
.dv-page .dv-appointment-copy>p:not(.dv-eyebrow){margin-top:20px;max-width:470px}
.dv-page .dv-quick-actions{display:flex;flex-direction:column;margin-top:28px;border-top:1px solid var(--dv-line)}
.dv-page .dv-quick-actions a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;border-bottom:1px solid var(--dv-line);color:var(--dv-teal);font-size:16px;font-weight:600}
.dv-page .dv-quick-actions a:hover{text-decoration:underline;text-underline-offset:4px}
.dv-page .dv-form-card{padding:34px;background:#fff;border:1px solid var(--dv-line);border-radius:24px;box-shadow:0 18px 50px #183b3d0b}
.dv-page .form-consultation{width:100%;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.dv-page .dv-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.dv-page .dv-form-grid fieldset,.dv-page .dv-message-field,.dv-page .dv-privacy{min-width:0;margin:0;padding:0;border:0}
.dv-page .form-floating>.tf-input,.dv-page .dv-message-field .tf-input,.dv-page .dv-select-wrap select{width:100%;border:1px solid #cadbd6!important;border-radius:12px!important;background:#fff!important;color:var(--dv-ink)!important;box-shadow:none!important;font-family:inherit!important;font-size:16px!important}
.dv-page .form-floating>.tf-input{min-height:58px;padding:1.55rem 14px .45rem!important}
.dv-page .form-floating>label{padding:17px 14px!important;color:#607778!important;font-family:inherit;font-size:15px}
.dv-page .form-floating>.tf-input:focus,.dv-page .dv-message-field .tf-input:focus,.dv-page .dv-select-wrap select:focus{border-color:var(--dv-teal)!important;box-shadow:0 0 0 3px #14676b14!important}
.dv-page .dv-select-wrap{margin-bottom:16px}
.dv-page .dv-select-wrap::before,.dv-page .dv-select-wrap::after{display:none!important}
.dv-page .dv-field-label{display:block;margin-bottom:8px;color:var(--dv-ink);font-size:14px;line-height:1.4;font-weight:600}
.dv-page .dv-select-wrap select{display:block!important;appearance:auto!important;min-height:56px;padding:0 14px!important}
.dv-page .dv-message-field{margin-bottom:18px}
.dv-page .dv-message-field .tf-input{display:block;min-height:132px;padding:14px!important;resize:vertical}
.dv-page .dv-privacy{display:flex;align-items:flex-start;gap:10px;margin-top:4px}
.dv-page .dv-privacy input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--dv-teal)}
.dv-page .dv-privacy label{font-size:14px;line-height:1.55;color:var(--dv-muted)}
.dv-page .dv-privacy a{color:var(--dv-teal);text-decoration:underline;text-underline-offset:3px}
.dv-page .resultDiv{margin-top:14px}
.dv-page .dv-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:56px;margin-top:22px;padding:15px 20px;border:1px solid var(--dv-teal);border-radius:12px;background:var(--dv-teal);color:#fff;font-family:inherit;font-size:16px;font-weight:600;line-height:1.4;cursor:pointer;transition:background .2s,transform .2s}
.dv-page .dv-submit:hover{background:#104f52;transform:translateY(-1px)}
@media(max-width:1150px){.dv-page .dv-hero-grid{gap:42px;grid-template-columns:minmax(0,1fr) minmax(300px,.75fr)}.dv-page .dv-section-head{gap:38px}.dv-page .dv-location-grid{grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr)}.dv-page .dv-appointment-grid{gap:42px}}
@media(max-width:991px){.dv-page .dv-hero-grid{grid-template-columns:1fr .72fr;gap:32px}.dv-page .dv-lead{font-size:19px}.dv-page .dv-section-head{grid-template-columns:1fr;gap:18px;align-items:start}.dv-page .dv-section-head>p{justify-self:start}.dv-page .dv-location-grid{grid-template-columns:1fr}.dv-page .dv-map-card,.dv-page .dv-map-frame{min-height:440px}.dv-page .dv-appointment-grid{grid-template-columns:1fr;gap:34px}.dv-page .dv-appointment-copy{position:static}.dv-page .dv-quick-actions{max-width:520px}}
@media(max-width:767px){.dv-page .dv-container{width:calc(100% - 36px)}.dv-page .dv-section{padding-block:50px}.dv-page .dv-hero{padding-block:20px 46px}.dv-page .dv-breadcrumb ol{margin-bottom:30px}.dv-page .dv-hero-grid{grid-template-columns:1fr;gap:30px}.dv-page h1{font-size:clamp(38px,10vw,48px)}.dv-page .dv-hero-copy h2{font-size:26px;margin-top:16px}.dv-page .dv-lead{font-size:18px;line-height:1.65}.dv-page .dv-doctor-card{max-width:520px;padding:10px;border-radius:22px}.dv-page .dv-doctor-image{border-radius:16px}.dv-page .dv-doctor-card figcaption{left:22px;right:22px;bottom:22px}.dv-page .dv-info-card{padding:24px}.dv-page .dv-map-card,.dv-page .dv-map-frame{min-height:360px}.dv-page .dv-form-card{padding:24px;border-radius:20px}.dv-page .dv-form-grid{grid-template-columns:1fr}.dv-page .dv-actions{align-items:stretch}.dv-page .dv-button{flex:1 1 100%}}
@media(max-width:420px){.dv-page .dv-info-item{grid-template-columns:40px minmax(0,1fr);gap:12px}.dv-page .dv-info-icon{width:40px;height:40px}.dv-page .dv-form-card{padding:20px}.dv-page .dv-map-card,.dv-page .dv-map-frame{min-height:320px}}
@media(prefers-reduced-motion:reduce){.dv-page *{transition:none!important;scroll-behavior:auto!important}}
