.appointment-page{padding-bottom:72px}
.appointment-page .editorial-heading h1{font-size:clamp(34px,4vw,56px);line-height:1.15;margin-bottom:32px}
.appointment-page .editorial-body{color:#405164}
.appointment-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:clamp(26px,5vw,64px);align-items:center;margin-bottom:42px}
.appointment-page .appointment-intro-copy h2{font-size:clamp(25px,2.8vw,36px);line-height:1.3;margin:0 0 18px;max-width:560px}
.appointment-intro-copy>p{max-width:640px}
.appointment-page .appointment-reasons{list-style:none;padding:0;margin:26px 0;display:grid;gap:12px}
.appointment-page .appointment-reasons li{position:relative;margin:0;padding-left:30px}
.appointment-reasons li::before{content:'✓';position:absolute;left:0;top:2px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e7eff8;color:#245792;font:600 12px/1 sans-serif}
.appointment-page .appointment-phone{display:flex;flex-wrap:wrap;gap:6px 12px;margin:24px 0 0;color:#657688}
.appointment-phone a{font-weight:600;white-space:nowrap}
.appointment-visit{min-width:0;padding:34px;border-radius:20px;background:#eef3f7;overflow:hidden}
.appointment-calendar{display:grid;place-items:center;width:112px;height:112px;border-radius:26px;background:#fff;color:#245792;margin-bottom:24px}
.appointment-page .appointment-visit h3{font-size:24px;line-height:1.3;margin:0 0 12px}
.appointment-page .appointment-visit p:last-child{margin-bottom:0}
.appointment-visit.has-selected-store{padding:0}
.appointment-page .appointment-selected-store>img{display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:240px;object-fit:cover;margin:0;border-radius:0}
.appointment-selected-copy{padding:24px 28px 28px}
.appointment-page .appointment-store-label{font-size:.8125rem;color:#657688;margin:0 0 6px}
.appointment-selected-copy address{font-style:normal;font-size:.875rem;line-height:1.7;margin:0 0 16px}
.appointment-selected-copy>a{font-size:.875rem;text-underline-offset:3px}
.appointment-form-card{max-width:1050px;margin:0 auto;padding:clamp(20px,4vw,44px);border:1px solid #dce5ee;border-radius:20px;background:#fff;box-shadow:0 12px 44px #18365306;scroll-margin-top:145px}
.appointment-page .appointment-form-heading h2{font-size:clamp(25px,2.7vw,34px);margin:0 0 10px}
.appointment-page .appointment-form-heading>p{color:#657688;margin-bottom:22px}
.appointment-form-card .paperform-section{margin:12px 0 0}
.appointment-form-card .paperform-embed{min-height:440px}
.appointment-form-card .paperform-fallback{margin-bottom:0}
@media(max-width:800px){.appointment-intro{grid-template-columns:minmax(0,1fr);gap:24px;margin-bottom:28px}.appointment-visit{padding:26px}.appointment-visit:not(.has-selected-store){display:grid;grid-template-columns:80px minmax(0,1fr);column-gap:20px;align-items:center}.appointment-calendar{grid-row:span 2;width:80px;height:80px;border-radius:20px;margin:0}.appointment-calendar svg{width:54px;height:54px}.appointment-page .appointment-visit h3{font-size:22px}.appointment-page .appointment-visit>p{margin:0}.appointment-selected-store{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:stretch}.appointment-page .appointment-selected-store>img{height:100%;max-height:none;aspect-ratio:auto;object-fit:cover}.appointment-selected-copy{padding:24px}.appointment-page .editorial-heading h1{margin-bottom:26px}.appointment-page{padding-bottom:48px}}
@media(max-width:480px){.appointment-form-card{padding:20px 12px;border-radius:14px}.appointment-form-heading{padding-inline:8px}.appointment-selected-store{grid-template-columns:minmax(0,1fr)}.appointment-page .appointment-selected-store>img{height:auto;max-height:190px;aspect-ratio:16/9}.appointment-selected-copy{padding:22px}.appointment-visit:not(.has-selected-store){padding:22px;grid-template-columns:58px minmax(0,1fr);column-gap:16px}.appointment-calendar{width:58px;height:68px;border-radius:16px}.appointment-calendar svg{width:42px;height:42px}.appointment-page .appointment-visit h3{font-size:20px}.appointment-page .appointment-visit>p{font-size:.8125rem;line-height:1.7}.appointment-page .appointment-reasons{gap:11px;margin-block:22px}.appointment-page .appointment-intro-copy h2{font-size:27px}.appointment-form-card .paperform-embed{min-height:420px}}
