/* Shared cookie notice: same consent text and actions, compact presentation. */
#woo-cookies.pm-cookie-notice{position:fixed;z-index:100;left:0;right:0;bottom:0!important;top:auto;width:100%;padding:12px 20px;transform:none;font:14px/1.5 PMMontserrat,Montserrat,Arial,sans-serif;color:#173650}
#woo-cookies.pm-cookie-notice .woo-cookies__wrap{position:static;max-width:1280px;width:100%;margin:auto;transform:none}
#woo-cookies.pm-cookie-notice .woo-cookies__img{display:none}
#woo-cookies.pm-cookie-notice .woo-cookies__container{width:100%;padding:16px 20px;margin:0;background:#fff;border:1px solid #c4d7e1;box-shadow:0 3px 18px #17334c20;border-radius:8px}
#woo-cookies.pm-cookie-notice .woo-cookies__content{display:flex;align-items:center;gap:24px}
#woo-cookies.pm-cookie-notice .woo-cookies__left{flex:1;min-width:0;margin:0}
#woo-cookies.pm-cookie-notice .woo-cookies__right{display:flex;gap:12px;flex:none;align-items:center;width:auto;padding:0;margin:0}
#woo-cookies.pm-cookie-notice .w-btn{appearance:none!important;font:600 14px/1.4 PMMontserrat,Montserrat,Arial,sans-serif;min-height:44px;padding:10px 18px;white-space:nowrap;border:1px solid #16569b;border-radius:8px;background:#16569b;color:white;text-align:center;cursor:pointer;width:auto;margin:0;box-shadow:none}
#woo-cookies.pm-cookie-notice .w-btn._border{background:#fff;color:#16569b;border-color:#9fbacc}
#woo-cookies.pm-cookie-notice :is(button,summary,a):focus-visible{outline:3px solid #007c87;outline-offset:3px}
#woo-cookies.pm-cookie-notice .pm-cookie-details>summary{font-size:14px;line-height:1.5;cursor:pointer;font-weight:600;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px}
#woo-cookies.pm-cookie-notice .pm-cookie-details>summary::-webkit-details-marker{display:none}
#woo-cookies.pm-cookie-notice .pm-cookie-details>summary span{font-weight:400;color:#16569b;text-decoration:underline;text-underline-offset:3px}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext{max-height:min(55dvh,440px);overflow-y:auto;overscroll-behavior:contain;margin-top:16px;padding:0 16px 0 0;font-size:14px;color:#173650}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext h4{font:600 18px/1.4 PMMontserrat,Montserrat,Arial,sans-serif;margin:0 0 12px}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext :is(p,a,li){font-size:14px;line-height:1.55;color:inherit}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext a{text-decoration:underline}
@media(max-width:767px){
 #woo-cookies.pm-cookie-notice{padding:10px 12px;bottom:calc(70px + env(safe-area-inset-bottom))!important}
 #woo-cookies.pm-cookie-notice .woo-cookies__container{padding:12px 14px}
 #woo-cookies.pm-cookie-notice .woo-cookies__content{display:flex;flex-direction:column;align-items:stretch;gap:10px}
 #woo-cookies.pm-cookie-notice .woo-cookies__right{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 #woo-cookies.pm-cookie-notice .w-btn{width:100%;font-size:13px;padding:10px 8px}
 #woo-cookies.pm-cookie-notice .pm-cookie-details>summary{gap:12px;font-size:13px;min-height:36px}
 #woo-cookies.pm-cookie-notice .pm-cookie-fulltext{max-height:42dvh}
}
@media(min-width:601px) and (max-width:767px){#woo-cookies.pm-cookie-notice{bottom:0!important}}
body.js-vision-mode #woo-cookies.pm-cookie-notice :is(.woo-cookies__container,.pm-cookie-fulltext){background:var(--pm-access-bg)!important;color:var(--pm-access-text)!important;border-color:var(--pm-access-text)!important}
body.js-vision-mode #woo-cookies.pm-cookie-notice :is(summary,summary span,p,a,h4,li){color:var(--pm-access-text)!important}
body.js-vision-mode #woo-cookies.pm-cookie-notice .w-btn{background:var(--pm-access-text)!important;color:var(--pm-access-bg)!important;border-color:var(--pm-access-text)!important}
body.js-vision-mode #woo-cookies.pm-cookie-notice .w-btn._border{background:var(--pm-access-bg)!important;color:var(--pm-access-text)!important}

#woo-cookies.pm-cookie-notice{max-width:none;min-width:0;margin:0;box-sizing:border-box}
#woo-cookies.pm-cookie-notice .woo-cookies__wrap{max-width:1280px;box-sizing:border-box}
#woo-cookies.pm-cookie-notice .woo-cookies__container{box-sizing:border-box;max-width:none;min-width:0}
#woo-cookies.pm-cookie-notice .woo-cookies__content{flex-direction:row;justify-content:space-between}
#woo-cookies.pm-cookie-notice .woo-cookies__left{display:block}
#woo-cookies.pm-cookie-notice .woo-cookies__right{flex-direction:row;justify-content:center}
#woo-cookies.pm-cookie-notice .w-btn{display:inline-flex;justify-content:center;align-items:center;text-transform:none;letter-spacing:0;min-width:0;box-sizing:border-box}
@media(max-width:900px){
 #woo-cookies.pm-cookie-notice .woo-cookies__content{flex-direction:column;align-items:stretch;gap:10px}
 #woo-cookies.pm-cookie-notice .woo-cookies__right{display:grid;grid-template-columns:1fr 1fr;width:100%}
 #woo-cookies.pm-cookie-notice .w-btn{width:100%}
}

/* Links use color and surface feedback; keyboard focus remains explicit. */
body a,body a:is(:hover,:focus,:active,:visited),body a *{text-decoration:none!important}
body a:focus-visible{outline:3px solid #007c87;outline-offset:4px}
.pm-shell a,.pm-home a{transition:color 180ms ease,background-color 180ms ease,border-color 180ms ease,opacity 180ms ease}
.pm-shell a:not(.pm-button):hover,.pm-home a:not(.pm-button):hover{color:#00717b}
.pm-header-phone strong{transition:color 180ms ease}
.pm-header-phone:hover strong{color:#00717b}
.pm-shell a.pm-logo:hover{opacity:.82}
/* Rounded background sits inside the existing nav row, so labels never move. */
.pm-nav-inner>a{position:relative;isolation:isolate}
.pm-nav-inner>a::before{content:'';position:absolute;inset:5px -10px;z-index:-1;border-radius:8px;background:#eaf3f8;opacity:0;pointer-events:none;transition:opacity 180ms ease}
.pm-nav-inner>a:is(:hover,:focus-visible)::before,.pm-nav-inner>a[aria-current=page]::before{opacity:1}
.pm-shell .pm-nav-inner>a:is(:hover,:focus-visible),.pm-shell .pm-nav-inner>a[aria-current=page]{color:var(--pm-blue)}
.pm-home .pm-catalog-grid a{transition:color 180ms ease,background-color 180ms ease}
.pm-home .pm-catalog-grid a:hover{background:#eaf3f8}
.pm-home .pm-catalog-grid a .pm-catalog-name{transition:color 180ms ease}
.pm-home .pm-catalog-grid a:hover .pm-catalog-name{color:#00717b}
.pm-catalog-grid a>span:last-child{transition:transform 180ms ease,color 180ms ease}
.pm-catalog-grid a:hover>span:last-child{transform:translate(2px,-2px);color:#00717b}
.pm-doctor-photo img{transition:opacity 180ms ease}
.pm-doctor-photo:hover img{opacity:.9}
.pm-home .pm-doctor-info h3 a:hover,.pm-home .pm-service-row h3 a:hover{color:#00717b}
.pm-home .pm-home-secondary{transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease}
.pm-home .pm-home-secondary:hover{background:#eaf3f8;border-color:var(--home-blue);color:var(--home-blue)}
.pm-shell .pm-button:hover{background:#104984}
.pm-home .pm-button:hover{background:#104984;border-color:#104984}
.pm-home .pm-service-row .pm-button:hover,.pm-home .pm-card-actions .pm-button:hover{background:#e0edf6;border-color:var(--home-blue);color:var(--home-blue)!important}
.pm-mobile-actions a:hover{background:#dcebf4}
.pm-shell.pm-mobile-actions .pm-book:hover{background:#104984;color:#fff}
#woo-cookies.pm-cookie-notice .pm-cookie-details>summary span{transition:color 180ms ease;text-decoration:none}
#woo-cookies.pm-cookie-notice .pm-cookie-details>summary:hover span{color:#00717b}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext a{color:#16569b}
#woo-cookies.pm-cookie-notice .pm-cookie-fulltext a:hover{color:#00717b}
@media(max-width:900px){.pm-nav-inner>a::before{inset:3px -4px}}
/* Existing accessibility palettes govern hover as well as resting states. */
body.js-vision-mode a:focus-visible{outline-color:var(--v-fg,var(--pm-access-text))!important}
body.js-vision-mode .pm-nav-inner>a::before{background:var(--pm-access-text);opacity:0}
body.js-vision-mode .pm-nav-inner>a:is(:hover,:focus-visible)::before,body.js-vision-mode .pm-nav-inner>a[aria-current=page]::before{opacity:.14}
body.js-vision-mode .pm-shell :is(.pm-header-phone:hover strong,.pm-nav-inner>a:hover){color:var(--pm-access-text)!important}
body.js-vision-mode .pm-home :is(.pm-catalog-grid a:hover,.pm-home-secondary:hover){background:var(--v-bg)!important;color:var(--v-fg)!important;border-color:var(--v-fg)!important}
body.js-vision-mode .pm-home .pm-catalog-grid a:hover .pm-catalog-name{color:var(--v-fg)!important}
@media(prefers-reduced-motion:reduce){.pm-shell a,.pm-home a,.pm-header-phone strong,.pm-nav-inner>a::before,.pm-catalog-grid a>span:last-child,.pm-catalog-grid a .pm-catalog-name,.pm-doctor-photo img,#woo-cookies.pm-cookie-notice .pm-cookie-details>summary span{transition:none}.pm-catalog-grid a:hover>span:last-child{transform:none}}

body.js-vision-mode a,body.js-vision-mode a:is(:hover,:focus,:focus-visible,:active,:visited),body.js-vision-mode a *{text-decoration:none!important}

/* Promotions have their own restrained brand accent and a discount icon. */
.pm-shell .pm-nav-inner>a.pm-nav-promo{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid #b7dfdf;border-radius:8px;background:#e4f3f3;color:#006c75;font-size:13px;font-weight:600;line-height:1.5;white-space:nowrap}
.pm-nav-inner>a.pm-nav-promo::before{display:none}
.pm-nav-promo i{font-size:18px;line-height:1}
.pm-shell .pm-nav-inner>a.pm-nav-promo:is(:hover,:focus-visible),.pm-shell .pm-nav-inner>a.pm-nav-promo[aria-current=page]{background:#007c87;color:#fff;border-color:#007c87}
@media(max-width:900px){.pm-shell .pm-nav-inner>a.pm-nav-promo{align-self:flex-start;min-height:44px;padding:10px 14px;margin:10px 0}}
body.js-vision-mode .pm-shell .pm-nav-inner>a.pm-nav-promo{background:var(--pm-access-bg)!important;color:var(--pm-access-text)!important;border-color:var(--pm-access-text)!important}
body.js-vision-mode .pm-shell .pm-nav-inner>a.pm-nav-promo:is(:hover,:focus-visible){background:var(--pm-access-text)!important;color:var(--pm-access-bg)!important}
body.js-vision-mode .pm-shell .pm-nav-inner>a.pm-nav-promo:is(:hover,:focus-visible) :is(i,span){color:var(--pm-access-bg)!important}

/* Inline search SVG remains visible even if the legacy icon font does not load. */
.pm-shell .pm-nav-search .pm-search-button{color:#16569b;background:#eaf3f8;border:1px solid #c4d7e1}
.pm-shell .pm-nav-search .pm-search-button svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0}
.pm-shell .pm-nav-search .pm-search-button:is(:hover,:focus-visible),.pm-shell .pm-nav-search.pm-search-open .pm-search-button{color:#fff;background:#16569b;border-color:#16569b}
body.js-vision-mode .pm-shell .pm-nav-search .pm-search-button{color:var(--pm-access-text)!important;background:var(--pm-access-bg)!important;border-color:var(--pm-access-text)!important}

/* Search opens inline to the left of a stable, unboxed magnifier. */
.pm-nav-inner>a{flex-shrink:0}
.pm-nav-inner .pm-nav-search{margin-left:auto;gap:8px;flex:0 0 44px;max-width:44px}
.pm-nav-inner .pm-nav-search.pm-search-open{flex:1 1 312px;max-width:312px}
.pm-nav-inner .pm-nav-search-field{position:static;flex:1;min-width:0;max-width:none;width:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;animation:pm-inline-search-reveal 160ms ease-out}
.pm-shell .pm-nav-search .pm-nav-search-field input{height:40px;border:1px solid #9fbacc;box-shadow:none;outline:none}
.pm-shell .pm-nav-search .pm-nav-search-field input:is(:focus,:focus-visible){border-color:#16569b;outline:none!important;box-shadow:none!important}
.pm-shell .pm-nav-search .pm-search-button,.pm-shell .pm-nav-search .pm-search-button:is(:hover,:focus-visible),.pm-shell .pm-nav-search.pm-search-open .pm-search-button{color:#000;background:transparent;border:0;box-shadow:none}
.pm-shell .pm-nav-search .pm-search-button:hover svg{opacity:.7}
.pm-search-button svg{transition:opacity 160ms ease}
@keyframes pm-inline-search-reveal{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:900px){
 .pm-nav-inner .pm-nav-search,.pm-nav-inner .pm-nav-search.pm-search-open{margin-left:0;flex:0 0 auto;max-width:none;width:100%}
 .pm-nav-inner .pm-nav-search-field{order:1}
 .pm-nav-inner .pm-nav-search.pm-search-open .pm-search-button{order:2}
 .pm-shell .pm-nav-search .pm-nav-search-field input{height:44px}
}
body.js-vision-mode .pm-shell .pm-nav-search .pm-search-button{color:var(--pm-access-text)!important;background:transparent!important;border:0!important}
body.js-vision-mode .pm-shell .pm-nav-search .pm-nav-search-field{background:transparent!important;border:0!important}
body.js-vision-mode .pm-shell .pm-nav-search .pm-nav-search-field input:is(:focus,:focus-visible){border-color:var(--pm-access-text)!important}
@media(prefers-reduced-motion:reduce){.pm-nav-inner .pm-nav-search-field{animation:none}.pm-search-button svg{transition:none}}

.pm-shell .pm-nav-search .pm-nav-search-field input{font-size:14px}

/* Appointment request: shared popup, scoped away from other forms. */
#popup.p-type-record{padding:16px 12px;align-items:center}
#popup.p-type-record .popup__container{width:100%;max-width:640px;min-height:0;height:auto;max-height:calc(100dvh - 32px);margin:0;justify-content:center}
#popup.p-type-record .popup__c-wrap{min-height:0;max-height:inherit;height:auto;border-radius:16px;background:#fff}
#popup.p-type-record .popup__box{min-height:0;max-height:inherit;overflow-y:auto;height:auto;overscroll-behavior:contain}
#popup.p-type-record .recording-reception{height:auto;color:#17334c}
#popup.p-type-record .recording-reception__title{padding:22px 28px 18px;gap:16px;position:sticky;top:0;z-index:10;background:#fff}
#popup.p-type-record .recording-reception__title h2{margin:0;font-size:24px;font-weight:600;line-height:1.25;color:#17334c;letter-spacing:0}
#popup.p-type-record .recording-reception__title .popup__close{width:44px;height:44px;flex-shrink:0;transform:none;background:transparent;transition:background .18s;border-radius:8px}
#popup.p-type-record .recording-reception__title .popup__close:hover{background:#eaf3f8}
#popup.p-type-record .popup__close-wrap{width:20px;height:20px}
#popup.p-type-record .popup__close-line-1{border-top-width:2px;transform:translateY(10px) rotate(45deg)}
#popup.p-type-record .popup__close-line-2{border-top-width:2px;transform:translateY(-10px) rotate(-45deg)}
#popup.p-type-record .recording-reception__wrap{padding:0 28px 28px}
#popup.p-type-record .pm-book-context{margin:0 0 20px;padding:12px 14px;border-radius:8px;background:#f1f7fa;color:#17334c;font:inherit;font-size:14px;line-height:1.5}
#popup.p-type-record .pm-book-context small{font-size:12px;line-height:1.5;margin-top:4px;color:#516677}
#popup.p-type-record .pm-book-context small:first-child{margin-top:0}
#popup.p-type-record .recording-reception__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#popup.p-type-record .pm-record-field{display:flex;flex-direction:column;min-width:0;gap:7px;margin:0}
#popup.p-type-record .pm-record-field>span{font-size:13px;line-height:1.5;font-weight:600;color:#17334c}
#popup.p-type-record .pm-record-field small{font-size:11px;font-weight:400;color:#516677;margin-left:4px}
#popup.p-type-record .pm-required{color:#516677}
#popup.p-type-record .form-item__action{box-sizing:border-box;display:block;min-width:0;width:100%;height:46px;min-height:46px;padding:11px 12px;border:1px solid #b8ccdb;border-radius:8px;background:#fff;color:#17334c;font:inherit;font-size:14px;line-height:22px;font-weight:400;transition:border-color .18s,box-shadow .18s}
#popup.p-type-record .form-item__action::placeholder{color:#657d90;opacity:1;font-weight:400}
#popup.p-type-record .form-item__action:focus{border-color:#1c5da4;outline:none;box-shadow:0 0 0 2px #1c5da420}
#popup.p-type-record .pm-record-schedule{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
#popup.p-type-record .pm-record-comment{grid-column:1/-1}
#popup.p-type-record textarea.form-item__action{height:82px;min-height:82px;resize:vertical}
#popup.p-type-record .recording-reception__bottom{margin-top:20px;gap:20px}
#popup.p-type-record .recording-reception__bottom-privacy{gap:12px}
#popup.p-type-record .privacy-policy{align-items:flex-start;gap:9px}
#popup.p-type-record .privacy-policy p{margin:0;font-size:12px;line-height:1.55;color:#516677}
#popup.p-type-record .privacy-policy input{appearance:auto;width:18px;height:18px;flex-shrink:0;margin:1px 0 0;accent-color:#1c5da4;border-radius:3px}
#popup.p-type-record .privacy-policy input::before{content:none}
#popup.p-type-record .privacy-policy a{color:#1c5da4}
#popup.p-type-record .privacy-policy a:hover{color:#087d86}
#popup.p-type-record .recording-reception__bottom-box .w-btn{width:100%;min-width:0;min-height:46px;height:auto;padding:12px 20px;border:1px solid #1c5da4;border-radius:8px;background:#1c5da4;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.4;text-transform:none;transition:background .18s,border-color .18s}
#popup.p-type-record .recording-reception__bottom-box .w-btn:hover{background:#104984;border-color:#104984}
#popup.p-type-record :is(button,.popup__close,input[type=checkbox]):focus-visible{outline:2px solid #087d86;outline-offset:3px}
#popup.p-type-record .recording-reception__messages{background:#fff;border-radius:8px;overflow-y:auto}
#popup.p-type-record .recording-reception__messages-list h3{font-size:22px;line-height:1.4}
@media(max-width:600px){
 #popup.p-type-record{padding:12px}
 #popup.p-type-record .popup__container{max-height:calc(100dvh - 24px)}
 #popup.p-type-record .recording-reception__title{padding:16px 20px 14px}
 #popup.p-type-record .recording-reception__title h2{font-size:22px}
 #popup.p-type-record .recording-reception__wrap{padding:0 20px 20px}
 #popup.p-type-record .recording-reception__list{grid-template-columns:minmax(0,1fr);gap:14px}
 #popup.p-type-record .pm-record-schedule{gap:12px}
 #popup.p-type-record .pm-record-field small{display:block;margin:0}
 #popup.p-type-record .form-item__action{font-size:16px}
}
@media(max-width:360px){#popup.p-type-record .recording-reception__title{padding-left:16px;padding-right:16px}#popup.p-type-record .recording-reception__wrap{padding-left:16px;padding-right:16px}#popup.p-type-record .recording-reception__title h2{font-size:20px}}
body.js-vision-mode #popup.p-type-record :is(.popup__c-wrap,.recording-reception__title,.recording-reception__messages,.pm-book-context,.form-item__action){background:var(--pm-access-bg)!important;color:var(--pm-access-text)!important;border-color:var(--pm-access-text)!important}
body.js-vision-mode #popup.p-type-record :is(h2,.pm-record-field>span,.pm-record-field small,.pm-required,.pm-book-context small,.privacy-policy p,.privacy-policy a){color:var(--pm-access-text)!important}
@media(prefers-reduced-motion:reduce){#popup.p-type-record :is(.form-item__action,.popup__close,.w-btn){transition:none}}

@media(max-width:360px){#popup.p-type-record .pm-record-schedule{grid-template-columns:minmax(0,1fr)}}

/* Footer information hierarchy: plain facts, one action, separate legal document. */
.pm-shell .pm-footer-grid .pm-footer-payment{gap:18px}
.pm-footer-payment .pm-payment-details{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;width:100%}
.pm-shell .pm-footer-payment :is(.pm-payment-group,.pm-payment-results){min-width:0}
.pm-shell .pm-footer-payment h3{margin:0 0 5px;font-size:13px;line-height:1.5;font-weight:600;color:var(--pm-ink)}
.pm-shell .pm-footer-payment p{margin:0;font-size:13px;line-height:1.65;color:#516677}
.pm-shell .pm-footer-payment .pm-payment-link{display:inline-flex;align-items:center;justify-self:start;gap:8px;max-width:100%;min-height:28px;padding:0;color:var(--pm-blue);font-size:13px;font-weight:600;line-height:1.5}
.pm-payment-link>span:first-child{min-width:0}
.pm-payment-link>span:last-child{flex-shrink:0}
.pm-shell .pm-footer-payment .pm-payment-link:hover{color:#087d86}
.pm-footer-payment .pm-payment-results{padding-top:16px;border-top:1px solid #d7e4ec}
.pm-clinic-info .pm-footer-policy{margin-top:14px;max-width:65ch}
.pm-clinic-info .pm-footer-policy a{display:inline-block;font-size:13px;line-height:1.6}
@media(max-width:600px){
 .pm-footer-payment .pm-payment-details{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:16px}
 .pm-footer-payment :is(.pm-payment-link,.pm-payment-results){grid-column:1/-1}
}
body.js-vision-mode .pm-footer-payment :is(h3,p,a,span){color:var(--pm-access-text)!important}
body.js-vision-mode .pm-footer-payment .pm-payment-results{border-color:var(--pm-access-text)!important}
