/* Shared public controls; content, offer conditions and inquiry handlers stay intact. */
:root{--grey-control-radius:8px;--grey-control-height:48px;--grey-action:#465348;--grey-action-hover:#334138;--grey-border:#d6ded3}
main#main :is(.button,.gfp-ask,.gpg-price-ask,.eye-price-ask,.gpj-details,.gpj-ask,.lmp-featured button,.lmp-row-action button){border-radius:var(--grey-control-radius);min-height:var(--grey-control-height);font-family:inherit;font-size:14px;line-height:1.45;font-weight:650;box-sizing:border-box;white-space:normal;text-align:center}
main#main :is(.button-coral,.button-teal,.gfp-ask,.gpg-price-ask,.eye-price-ask,.lmp-featured button,.lmp-row-action button),.gcd .gfp .gfp-ask{background:var(--grey-action);color:#fff;border:1px solid var(--grey-action);padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none}
main#main :is(.button-coral,.button-teal,.gfp-ask,.gpg-price-ask,.eye-price-ask,.lmp-featured button,.lmp-row-action button):hover,.gcd .gfp .gfp-ask:hover{background:var(--grey-action-hover);color:#fff;border-color:var(--grey-action-hover)}
main#main :is(.button-outline,.button-dark-outline,.gpj-ask){border:1px solid var(--grey-border);background:#fff;color:var(--grey-action)}
.gpj-clinic-nav a,.gpj-clinic-nav a:nth-child(2),.gpj-guide-nav a{min-height:44px;border:1px solid var(--grey-border);border-radius:var(--grey-control-radius);background:#fff;color:var(--grey-action);font-size:14px;font-weight:600;line-height:1.45}
.gpj-clinic-nav a:hover,.gpj-guide-nav a:hover{background:#edf1e9;border-color:#aebbac}
.gpj-clinic-nav a[aria-current],.gpj-guide-nav .gpj-price-link{background:#edf1e9;border-color:#b7c4b2}
main#main :is(.grey-total,.eye-price-offer strong,.gpr-price strong,.gpg-amount strong,.lmp-amount strong,.gfp-price strong){font-size:28px;line-height:1.25;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:#304438}
main#main :is(.grey-vat-note,.eye-price-offer small,.gpr-price small,.gpg-amount small,.lmp-amount small,.gfp-price small){font-size:12px;line-height:1.5;color:#59665d}
main#main :is(.eye-price-card,.gpr-card,.lmp-featured article,.gfp-card,.gsh-procedure){border-radius:16px}
.lmp-row-action button{margin-top:12px}
main#main :is(.button,.gfp-ask,.gpg-price-ask,.eye-price-ask,.gpj-details,.gpj-ask,.lmp-featured button,.lmp-row-action button):focus-visible,.contact-dock button:focus-visible,.contact-dock a:focus-visible{outline:3px solid #377b7e;outline-offset:3px}
/* Existing React toggle controls the same contact links on desktop as on mobile. */
@media(min-width:768px){
 .contact-dock{right:20px;bottom:20px;gap:10px;max-width:calc(100vw - 40px);align-items:flex-end}
 .contact-dock:not(.is-expanded) .contact-channel-list,.contact-dock:not(.is-expanded) .gcb-trigger-dock{display:none!important}
 .contact-dock .contact-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:48px;min-width:116px;padding:12px 18px;border:1px solid #fff;border-radius:999px;background:var(--grey-action);color:#fff;font-family:inherit;font-size:14px;font-weight:650;line-height:1.4;box-shadow:0 5px 22px #22372c26;cursor:pointer}
 .contact-dock .contact-toggle svg{width:22px;height:22px}
 .contact-dock.is-expanded{padding:14px;background:#fff;border:1px solid var(--grey-border);border-radius:18px;box-shadow:0 12px 38px #22372c26}
 .contact-dock.is-expanded .contact-channel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:280px;max-width:100%}
 .contact-dock.is-expanded .contact-button{width:auto;height:auto;min-height:48px;padding:10px;border:1px solid var(--grey-border);border-radius:8px;background:#fff;color:var(--grey-action);display:flex;gap:8px;align-items:center;justify-content:flex-start;box-shadow:none}
 .contact-dock.is-expanded .contact-button svg{width:23px;height:23px;flex:none}
 .contact-dock.is-expanded .contact-label{position:static;display:block;opacity:1;visibility:visible;transform:none;padding:0;background:transparent;box-shadow:none;color:inherit;font-size:12px;white-space:normal;line-height:1.4;order:1}
 .contact-dock.is-expanded .gcb-trigger-dock{align-self:stretch;margin-top:2px;border-radius:8px;box-shadow:none}
}
@media(max-width:700px){.gpj-clinic-nav a{font-size:13px;min-height:44px}main#main :is(.grey-total,.eye-price-offer strong,.gpr-price strong,.gpg-amount strong,.lmp-amount strong,.gfp-price strong){font-size:26px}.lmp-row-action button{width:100%}}

