/* Apollonia — aggiornamento visivo e accessibilità */
:root{--paper:#fcfcfa;--cream:#f0f4f2;--gold:#93713e;--muted:#52626a}body{font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif}a,button{-webkit-tap-highlight-color:transparent}img{max-width:100%}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #93713e;outline-offset:5px}section[id]{scroll-margin-top:106px}.topbar{position:sticky;top:0;box-shadow:0 4px 24px #102f4308;backdrop-filter:blur(16px)}.topbar nav{gap:clamp(14px,1.6vw,28px)}.topbar nav a{font-size:13px}.button{border-radius:8px;min-height:46px;transition:background .2s,transform .2s}.button:hover{background:#24556a;transform:translateY(-2px)}.hero{min-height:600px;grid-template-columns:52% 48%;background:linear-gradient(135deg,#f0f4f2,#faf8f2)}.hero-copy{padding:78px 5vw 80px 7vw}.hero h1{font-size:clamp(40px,4.5vw,66px);line-height:1.09}.hero h1 em{display:block;font-size:.65em;margin-top:18px;line-height:1.2;font-style:normal}.hero .lead{font-size:20px;line-height:1.6;margin:24px 0}.hero-copy>p:not(.lead):not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted)}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:28px}.hero-visual{min-height:600px}.hero-note{border-radius:18px 0 0 0}.entry-hygiene{margin:32px 4vw;border-radius:24px;background:#eaf1ee;padding:48px 4vw}.entry-hygiene-copy{max-width:630px}.entry-hygiene-video{width:min(100%,260px)}.entry-hygiene h2{letter-spacing:-.025em}.quick-care{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:12px 4vw 36px}.quick-care a{padding:28px 22px;border:1px solid #dce4df;border-radius:14px;text-decoration:none;background:#fff;color:var(--navy);transition:transform .2s,box-shadow .2s}.quick-care a:hover{transform:translateY(-4px);box-shadow:0 12px 28px #102f4312}.quick-care span,.quick-care strong,.quick-care small{display:block}.quick-care span{font-size:10px;letter-spacing:.12em;color:var(--gold)}.quick-care strong{font-size:19px;line-height:1.3;margin:16px 0}.quick-care small{font-size:12px;color:var(--muted)}.service-grid{border:0;gap:16px}.service-grid article{border:1px solid #dce3df;border-radius:16px;background:#fff;padding:32px}.service-grid h3{margin-top:18px}.contact-card{border-radius:18px}.tech-gallery figure,.digital-history figure{border-radius:14px;overflow:hidden}.faq-list details{padding:24px 0}.faq-list summary{line-height:1.45}.mobile-contact{display:none}.text-link{text-underline-offset:5px}.text-link:hover{text-decoration:underline}
@media(max-width:1100px){.topbar nav{gap:12px}.topbar{padding-inline:4vw}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{padding:48px 7vw}.hero-visual{min-height:360px}.quick-care{grid-template-columns:1fr 1fr}.topbar nav a{font-size:16px;min-height:40px}.menu{min-height:44px}.hero h1{font-size:48px}.hero .lead{font-size:18px}}
@media(max-width:560px){.hero h1{font-size:39px}.hero-visual{min-height:300px}.entry-hygiene{margin:20px 4vw;padding:30px 6vw}.entry-hygiene h2{font-size:30px}.quick-care{gap:10px;padding-bottom:24px}.quick-care a{padding:20px 15px}.quick-care strong{font-size:16px}.hero-copy{padding-block:36px}.hero-actions .button{width:100%}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:8;padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px;background:#fff;box-shadow:0 -4px 24px #102f4315}.mobile-contact a{flex:1;text-align:center;padding:12px 6px;border-radius:8px;font-size:12px;font-weight:650;text-decoration:none;color:var(--navy);border:1px solid #dce4df}.mobile-contact a:first-child{background:var(--navy);color:#fff}body:has(.mobile-contact){padding-bottom:86px}.topbar>.button:last-child{font-size:11px;padding:10px;min-height:40px}.brand{gap:7px}.hero-note{border-radius:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.clinic-locality{display:block;color:var(--navy)}.clinic-address{font-size:14px;font-weight:600;color:var(--navy)}.clinic-address a{color:inherit;text-decoration:none}
