@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@300;400;500;600&family=Source+Serif+4:wght@400;500;600&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f7f7;color:#303537;font:17px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#b1212e}a:hover{text-decoration:underline}header{background:#303537;color:white;box-shadow:0 2px 16px #30353733}.head-inner{max-width:1160px;margin:auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.brand{color:white;font-size:24px;text-decoration:none;line-height:1.15}.brand strong{color:#e5e5e5}.brand small{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-top:6px}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{color:white;text-decoration:none;font-size:15px}nav a[aria-current]{border-bottom:2px solid #e5e5e5}main{max-width:900px;margin:48px auto;padding:0 24px}.eyebrow{color:#b1212e;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}article{background:white;padding:clamp(24px,5vw,56px);border-radius:12px;box-shadow:0 4px 30px #3035370e;margin-top:14px}h1{font-size:clamp(30px,4vw,48px);line-height:1.16;margin:0 0 26px;color:#303537}h2{font-size:1.5em;line-height:1.3;color:#303537}h3{color:#303537}.content img{max-width:100%;height:auto;border-radius:6px}.content figure{margin:28px 0}.content p,.content li{overflow-wrap:anywhere}.content iframe{display:none}.content table{border-collapse:collapse}.content a{overflow-wrap:anywhere}.content form{display:block}.content .wp-block-buttons{display:flex;gap:12px}.content .wp-block-button__link,.button{display:inline-block;background:#b1212e;color:white;padding:11px 19px;border-radius:6px;text-decoration:none}.contact{background:#f2f2f2;padding:30px;margin:36px 0;border-left:4px solid #b1212e;border-radius:8px}.contact h2{margin-top:0}footer{background:#303537;color:white;padding:32px max(24px,calc((100% - 1100px)/2));display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer a{color:white}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px;z-index:9}@media(max-width:650px){main{margin:28px auto}nav{gap:10px}nav a{font-size:13px}article{padding:24px}}



body{font-family:"Source Sans 3",system-ui,sans-serif;font-weight:400;color:#3b3d3e}
.brand,h1,h2,h3{font-family:"Source Serif 4",Georgia,serif;font-weight:500;letter-spacing:-.015em;color:#353839}
.brand{color:#fff;font-size:25px}.brand strong{font-weight:500;color:#fff}.brand small{font-family:"Source Sans 3",system-ui,sans-serif;font-weight:400;letter-spacing:.13em}
nav a{font-weight:400}.eyebrow{font-weight:600}.content h1{font-size:clamp(27px,3.5vw,38px);line-height:1.23;margin:24px 0;color:#353839}.content h2{font-size:clamp(23px,3vw,32px);line-height:1.3}.content strong,.content b{font-weight:600}
.whatsapp-float{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:1000;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 4px 16px #0004;text-decoration:none}
.whatsapp-float svg{width:35px;height:35px}.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#1da851;color:#fff;transform:translateY(-2px)}.whatsapp-float:focus-visible{outline:3px solid #b1212e;outline-offset:3px}
@media(max-width:650px){h1{font-size:29px;line-height:1.2}.content h1{font-size:27px}.brand{font-size:23px}}

.clinic-video{margin:36px 0;background:#fff;padding:clamp(24px,5vw,48px);border-radius:12px;box-shadow:0 4px 30px #3035370e}
.clinic-video h2{margin:6px 0 8px}.clinic-video p{margin:0 0 22px}
.clinic-video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#303537;border-radius:8px}
.clinic-video-launch,.clinic-video-frame iframe{display:block;width:100%;height:100%;border:0}
.clinic-video-launch{position:relative;color:#fff;text-decoration:none}
.clinic-video-launch img{width:100%;height:100%;object-fit:cover}
.clinic-video-launch::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,#0009)}
.clinic-video-play{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#b1212e;color:#fff;font:30px/1 system-ui;padding-left:4px;box-shadow:0 3px 16px #0005}
.clinic-video-label{position:absolute;z-index:1;bottom:18px;left:20px;color:#fff;font-weight:600}
.clinic-video-launch:hover .clinic-video-play,.clinic-video-launch:focus-visible .clinic-video-play{background:#8f1723}
.clinic-video-launch:focus-visible{outline:4px solid #b1212e;outline-offset:-4px}
@media(max-width:650px){.clinic-video-play{width:58px;height:58px;font-size:24px}.clinic-video-label{font-size:14px;bottom:12px;left:14px}}

.home-hero{margin:0 0 32px}
.home-hero img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.home-hero figcaption{margin-top:8px;color:#5d6467;font-size:14px;line-height:1.4}

.table-scroll{max-width:100%;overflow-x:auto;border:1px solid #d9dfe0;border-radius:8px;margin:24px 0}
.table-scroll:focus-visible{outline:3px solid #b1212e;outline-offset:3px}
.treatments-table{width:100%;min-width:480px;margin:0;text-align:left}
.treatments-table caption{text-align:left;padding:14px 16px;font-weight:600;color:#303537}
.treatments-table th,.treatments-table td{padding:12px 16px;border-top:1px solid #e2e6e7;vertical-align:top}
.treatments-table thead th{background:#f2f3f3;font-weight:600}
.treatments-table tbody tr:nth-child(even){background:#fafafa}
.treatments-table tbody th{font-weight:600;width:35%}
@media(max-width:650px){.treatments-table th,.treatments-table td{padding:10px 12px}.table-scroll{margin-inline:-4px}}

/* Contatti e assistente informativo */
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0}
.contact-fields label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}
.contact-fields input,.contact-fields select{width:100%;min-height:2.8rem;padding:.65rem;border:1px solid #777;border-radius:.3rem;background:#fff;color:#222;font:inherit}
.privacy-choice{display:flex;gap:.5rem;align-items:flex-start;margin:1rem 0}.privacy-choice input{margin-top:.35rem}
.trap{position:absolute;left:-9999px}.content form button:disabled{opacity:.55;cursor:not-allowed}
#form-state{padding:.75rem;border-left:3px solid #B1212E;background:#f6f6f6}
.chat-widget{position:fixed;right:1rem;bottom:5.4rem;z-index:1000;width:min(22rem,calc(100vw - 2rem));font-family:inherit}
.chat-widget summary{display:block;width:max-content;margin-left:auto;padding:.7rem 1rem;border-radius:2rem;background:#4b252b;color:#fff;cursor:pointer;box-shadow:0 3px 10px #0004;font-weight:700}
.chat-widget summary::-webkit-details-marker{display:none}
.chat-panel{background:#fff;color:#222;border:1px solid #bbb;border-radius:.8rem;box-shadow:0 6px 25px #0004;padding:1rem;margin-bottom:.6rem;max-height:min(70vh,35rem);overflow:auto}
.chat-panel h2{font-size:1.1rem;margin:.2rem 0}.chat-messages{display:grid;gap:.5rem;max-height:15rem;overflow:auto;margin:1rem 0}.chat-messages p{background:#f5f5f5;border-radius:.5rem;padding:.6rem;margin:0}.chat-messages .chat-user{background:#fcecee}
.chat-options{display:flex;flex-wrap:wrap;gap:.4rem}.chat-options button{border:1px solid #8f2635;border-radius:1rem;background:#fff;color:#58232b;padding:.4rem .65rem;font:inherit;cursor:pointer}.chat-options button:focus-visible,.chat-widget summary:focus-visible{outline:3px solid #b1212e}
.chat-panel small{display:block;margin-top:.8rem}
@media(max-width:600px){.contact-fields{grid-template-columns:1fr}.chat-widget{bottom:5rem}}

.chat-handoff{margin:.65rem 0;padding:.55rem .7rem;border:1px solid #8f2635;border-radius:.4rem;background:#fff;color:#58232b;font:inherit;cursor:pointer}
.chat-handoff:disabled{opacity:.55;cursor:not-allowed}
.chat-summary{padding:1rem;border:1px solid #bbb;border-radius:.4rem;margin:1.2rem 0}
.chat-summary pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem;overflow:auto;background:#f7f7f7;padding:.8rem;font:inherit}
.chat-summary[hidden]{display:none}

.editorial-note{font-size:.9rem;border-top:1px solid #ddd;margin-top:2rem;padding-top:1rem;color:#545b5e}.clinic-logo{display:block;max-width:260px;width:100%;height:auto;margin:1rem 0}footer p{margin:.5rem 0}footer address{font-style:normal;margin:.5rem 0}#clinic-contact-form{display:block}
