/* Revision 2: turquoise follows the original identity; sage is a preserved option. */
:root{--ink:#213e4c;--muted:#61717b;--teal:#007d91;--deep:#153e50;--turquoise:#009bb2;--ivory:#fbf8f2;--mint:#e8f5f7;--line:#dce6e8;--warm:#f8eee0;--border-strong:#a8c4cc;--border-soft:#e2e8e8;--border-accent:#cce4e7;--soft-copy:#5e7780;--card-copy:#4f6974;--strip:#eaf5f6;--dark-card:#204e61;--dark-line:#406575;--dark-muted:#bfd9df;--dark-accent:#acdfe4;--dark-copy:#e7f1f3;--dock-bg:#153e50f5;--dock-line:#51727f;--dock-hover:#315566}
:root[data-theme="verde"]{--ink:#203d3c;--muted:#61706b;--teal:#205b55;--deep:#173f3d;--ivory:#f7f7f1;--mint:#eaf1eb;--line:#dce3dc;--border-strong:#a6bbb3;--border-soft:#e5e9df;--border-accent:#d8e4d9;--soft-copy:#647a70;--card-copy:#4c6760;--strip:#edf2e9;--dark-card:#234e49;--dark-line:#3c6159;--dark-muted:#bed1c6;--dark-accent:#c4d8c0;--dark-copy:#edf3ed;--dock-bg:#203f3df2;--dock-line:#56736c;--dock-hover:#3d5c55}
.button-outline,.round-arrow{border-color:var(--border-strong)}
.icon-button:hover{background:var(--mint)}
.utility-bar{color:var(--dark-copy)}
.site-header{border-color:var(--border-soft)}
.brand img{width:244px}
.brand>span{font-size:7.6px;letter-spacing:1.45px;margin:0 0 0 65px;line-height:1.2;color:var(--soft-copy)}
.hero-accreditation,.visual-label{color:var(--soft-copy)}
.hero-image-wrap{background:var(--mint)}
.hero-image-caption{border-color:var(--border-soft);box-shadow:0 8px 24px #213e4c08}
.package-card{border-color:var(--border-soft)}
.package-card:hover{border-color:var(--border-strong)}
.package-card-mint{border-color:var(--border-accent)}
.package-card>.package-detail{color:var(--card-copy)}
.package-card-bottom{border-color:var(--line)}
.care-strip{background:var(--strip)}
.visit-steps li{border-color:var(--border-strong)}
.step-number,.section-number{color:var(--soft-copy)}
.contact-section{color:var(--dark-copy)}
.contact-section .eyebrow,.hours-card h3 .icon{color:var(--dark-muted)}
.contact-section h2 em{color:var(--dark-accent)}
.hours-card{background:var(--dark-card);border-color:var(--dark-line)}
.hours-block h4,.hours-notices{color:var(--dark-copy)}
.hours-block h4 small,.hours-block dt{color:var(--dark-muted)}
.hours-block dl>div{border-color:var(--dark-line)}
.footer-brand img{width:244px}
dialog::backdrop{background:#153e5065}
.notification-panel{box-shadow:-10px 0 70px #153e5020}
.tag:not(.tag-warm){border-color:var(--border-accent)}
.tests-list>li{border-color:var(--border-soft)}
.booking-card{border-color:var(--border-accent)}
.booking-separator{background:var(--border-accent)}
.booking-notices{border-color:var(--border-accent)}
/* Prototype controls, outside the public website design. */
.review-dock{border-color:var(--dock-line);background:var(--dock-bg);color:#eff7f8;gap:6px;padding:7px 10px 7px 17px;max-width:calc(100% - 24px)}
.review-label{color:#d3e4e8}
.review-label>span{background:#79d8e5}
.review-dock>a,.review-dock>button{color:#eff7f8}
.review-dock>a:hover,.review-dock>button:hover{background:var(--dock-hover)}
body[data-page="home"] [data-review-home],body[data-page="single"] [data-review-single]{background:#fff;color:var(--deep)}
.dock-divider{background:var(--dock-line)}
.palette-switch{display:flex;align-items:center;gap:3px;border-left:1px solid var(--dock-line);border-right:1px solid var(--dock-line);padding:0 8px;margin:0 2px}
.palette-switch button{display:flex;gap:6px;align-items:center;justify-content:center;min-height:35px;font-size:10px;line-height:19px;padding:8px 10px;border:1px solid transparent;background:transparent;color:#eff7f8;border-radius:24px}
.palette-switch button:hover{background:var(--dock-hover)}
.palette-switch button[aria-pressed="true"]{background:#fff;color:var(--deep)}
.palette-swatch{display:inline-block;width:9px;height:9px;border-radius:50%;border:1px solid #ffffff55;flex-shrink:0}
.palette-swatch-turchese{background:#009bb2}
.palette-swatch-verde{background:#205b55}
.review-dock .brand-review-link{padding-inline:8px}
@media(max-width:1190px){.brand img{width:226px}.brand>span{font-size:7.1px;margin-left:60px;letter-spacing:1.25px}.header-inner{gap:22px}}
@media(max-width:980px){.review-label{display:none}}
@media(max-width:700px){.brand img{width:202px}.brand>span{font-size:6.35px;letter-spacing:1.05px;margin-left:54px;margin-top:0}.header-inner{gap:4px}.review-dock{display:grid;grid-template-columns:auto auto 1fr auto;gap:4px;padding:8px 10px;border-radius:20px;width:max-content;max-width:calc(100% - 20px);bottom:10px}.review-dock>a,.review-dock>button{font-size:10px;min-height:34px;padding:7px 9px;text-align:center}.review-dock .palette-switch{grid-row:1;grid-column:1/4;margin:0;border:0;padding:0;justify-content:flex-start}.palette-switch button{min-height:34px;font-size:10px;padding:7px 12px}.review-dock .brand-review-link{grid-row:1;grid-column:4;padding-inline:8px}.review-dock [data-review-home]{grid-row:2;grid-column:1}.review-dock [data-review-single]{grid-row:2;grid-column:2}.review-dock [data-demo-expiry]{grid-row:2;grid-column:3}.review-dock [data-demo-reset]{grid-row:2;grid-column:4;padding-inline:8px}.review-dock .dock-divider{display:none}.site-footer{padding-bottom:147px}.footer-brand img{width:244px}}
@media(max-width:370px){.brand img{width:178px}.brand>span{font-size:5.65px;margin-left:47.5px;letter-spacing:.85px}.review-dock{padding:7px;gap:2px}.review-dock>a,.review-dock>button{font-size:9px;padding-inline:7px}}

/* Original package images and the two original logo options. */
.package-card{--package-padding:26px;padding:0 var(--package-padding) 24px;overflow:hidden}
.package-media{display:block;flex-shrink:0;aspect-ratio:750/419;margin:0 calc(-1 * var(--package-padding)) 22px;background:var(--mint);overflow:hidden}
.package-media img{width:100%;height:100%;object-fit:cover}
.package-media:focus-visible{outline-offset:-5px}
.package-card-top{margin-bottom:13px;min-height:20px}
.package-card-top .package-symbol{display:none}
.single-hero-image{height:auto;aspect-ratio:750/419}
.single-hero-image img{object-fit:contain;object-position:center;border-radius:48px 10px 48px 10px}
:root[data-logo="provetta"] .brand>span{margin-left:58px;font-size:7.5px;letter-spacing:1.2px;margin-top:5px}
:root[data-logo="online"] .brand>span{margin-left:0;margin-top:10px;font-size:7.8px;letter-spacing:1.7px}
.logo-switch{display:flex;align-items:center}
.logo-switch select{font-size:10px;line-height:1.4;color:#eff7f8;background:var(--deep);border:1px solid var(--dock-line);border-radius:20px;min-height:35px;max-width:120px;padding:7px 6px 7px 11px;cursor:pointer;color-scheme:dark}
@media(max-width:1190px){:root[data-logo="provetta"] .brand>span{margin-left:54px;font-size:6.9px;letter-spacing:1.1px}:root[data-logo="online"] .brand>span{font-size:7.3px;letter-spacing:1.55px}}
@media(max-width:700px){.package-card{--package-padding:23px}.package-media{margin-bottom:21px}.single-hero-image img{border-radius:38px 8px 38px 8px}:root[data-logo="provetta"] .brand>span{margin-left:48px;font-size:6.2px;letter-spacing:.95px}:root[data-logo="online"] .brand>span{font-size:6.4px;letter-spacing:1.35px;margin-top:9px}.review-dock .logo-switch{grid-row:1;grid-column:4}.logo-switch select{font-size:9px;max-width:107px;min-height:34px;padding-left:7px}.review-dock .palette-switch{padding-right:3px}.palette-switch button{padding-inline:9px}}
@media(max-width:370px){:root[data-logo="provetta"] .brand>span{margin-left:42px;font-size:5.5px;letter-spacing:.8px}:root[data-logo="online"] .brand>span{font-size:5.7px;letter-spacing:1.15px}.logo-switch select{max-width:100px;font-size:8.5px}.palette-switch button{font-size:9px;padding-inline:7px}.review-dock{width:max-content}}

.review-dock>button.review-dismiss{position:absolute;top:-15px;right:-10px;width:30px;height:30px;min-height:30px;padding:0;border:1px solid var(--dock-line);border-radius:50%;font-size:21px;line-height:26px;background:var(--deep);color:#fff;box-shadow:0 2px 8px #153e5020}
.review-reopen{position:fixed;z-index:80;bottom:12px;right:14px;border:1px solid var(--dock-line);border-radius:24px;padding:10px 15px;min-height:40px;background:var(--deep);color:#fff;font-size:11px;box-shadow:0 3px 18px #153e5018}
@media(max-width:700px){.review-dock>button.review-dismiss{top:-16px;right:-5px}}
/* Traditional vector identity supplied on 24 October 2026. */
:root:not([data-theme="verde"]){--teal:#0876a6;--turquoise:#009fe3;--mint:#edf7fc;--border-strong:#a9cbdc;--border-accent:#cee4f0;--strip:#edf6fb;--dark-card:#204e65}
.palette-swatch-turchese{background:#009fe3}
.brand{--brand-width:260px;position:relative}
.brand img{width:var(--brand-width)}
:root[data-logo="tradizionale"] .brand>span{position:absolute;left:calc(var(--brand-width) * .263);bottom:1px;margin:0;font-size:7.4px;letter-spacing:1px}
:root[data-logo="scritta"] .brand{padding-bottom:16px}
:root[data-logo="scritta"] .brand>span{position:absolute;left:0;bottom:0;margin:0;font-size:7.8px;letter-spacing:1.7px}
.footer-brand img{width:260px}
@media(max-width:1190px){.brand{--brand-width:226px}:root[data-logo="tradizionale"] .brand>span{font-size:6.5px;letter-spacing:.85px}:root[data-logo="scritta"] .brand>span{font-size:7px;letter-spacing:1.5px}}
@media(max-width:700px){.brand{--brand-width:202px}:root[data-logo="tradizionale"] .brand>span{font-size:5.8px;letter-spacing:.75px}:root[data-logo="scritta"] .brand>span{font-size:6.3px;letter-spacing:1.35px}.footer-brand img{width:244px}}
@media(max-width:370px){.brand{--brand-width:178px}:root[data-logo="tradizionale"] .brand>span{font-size:5.15px;letter-spacing:.65px}:root[data-logo="scritta"] .brand>span{font-size:5.6px;letter-spacing:1.15px}}
