:root{--navy:#102842;--navy-2:#183953;--ink:#172f43;--teal:#53c6c6;--mint:#a7ece1;--paper:#f5f7f6;--white:#fff;--muted:#627483;--line:#d9e2e4;--gold:#d5b878;--radius:22px;--shadow:0 24px 70px rgba(15,40,60,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:8px;background:white;color:var(--navy);padding:10px 14px;z-index:100}.skip-link:focus{left:8px}.site-header{height:88px;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(16,40,66,.08)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-logo{width:52px;height:52px;object-fit:contain;flex:none}.brand-name{display:flex;flex-direction:column;font-size:20px;font-weight:450;letter-spacing:-.8px;line-height:1.08;color:var(--navy)}.brand-name strong{font-weight:780}.brand-name small{font-size:9px;letter-spacing:1.55px;font-weight:700;color:#6b7e8e;margin-top:6px;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:34px;color:#53697a;font-size:13px;font-weight:650}.main-nav a{transition:color .2s ease}.main-nav a:hover{color:var(--navy)}.main-nav .nav-contact{display:inline-flex;align-items:center;gap:14px;padding:12px 18px;border-radius:4px;background:var(--navy);color:white}.nav-contact span{color:var(--mint);font-size:17px}.menu-toggle{display:none;border:0;background:transparent;padding:12px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px}
.hero{position:relative;overflow:hidden;background:linear-gradient(121deg,#0d2238 0%,#102842 58%,#183e53 100%);color:white;padding:76px 0 24px}.hero:after{content:"";position:absolute;right:-150px;top:-260px;width:650px;height:650px;border:1px solid rgba(154,231,222,.12);border-radius:50%;box-shadow:0 0 0 65px rgba(154,231,222,.025),0 0 0 130px rgba(154,231,222,.022);pointer-events:none}.hero-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to right,black,transparent 82%);opacity:.35}.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:65px;align-items:center}.hero-copy{padding:20px 0 40px}.eyebrow{margin:0 0 20px;text-transform:uppercase;letter-spacing:1.8px;font-size:10px;font-weight:750;color:#a9e8e0;display:flex;align-items:center;gap:10px}.eyebrow-dot{width:7px;height:7px;background:var(--teal);border-radius:50%;box-shadow:0 0 0 5px rgba(83,198,198,.12)}h1,h2,h3,p{margin-top:0}h1{margin-bottom:22px;font-size:clamp(43px,5.1vw,70px);line-height:1.04;letter-spacing:-3.2px;font-weight:480}h1 em,h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--mint);letter-spacing:-2px}.hero-intro{max-width:560px;color:#ccdae2;font-size:15px;line-height:1.9;margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:0 19px;font-weight:720;font-size:12px;letter-spacing:.1px;border:1px solid transparent;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button span{font-size:17px}.button-primary{background:var(--mint);color:var(--navy)}.button-primary:hover{background:#d0fff6}.button-outline{border-color:rgba(255,255,255,.32);color:white}.button-outline:hover{background:rgba(255,255,255,.07)}.hero-note{display:flex;align-items:center;gap:12px;color:#9bb2c0;font-size:10px;margin-top:48px;letter-spacing:.4px}.note-line{width:38px;height:1px;background:var(--teal)}.hero-visual{position:relative;max-width:520px;justify-self:end;width:100%;padding:0 12px 36px 0}.hero-photo-wrap{height:435px;position:relative;overflow:hidden;border-radius:5px 70px 5px 5px;background:#cdd4d5;box-shadow:0 22px 65px rgba(0,0,0,.24)}.hero-photo-wrap:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);border-radius:inherit;pointer-events:none}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center}.hero-caption{position:absolute;right:0;bottom:3px;display:flex;align-items:center;gap:16px;background:white;color:var(--navy);padding:16px 18px;max-width:90%;font-size:11px;font-weight:620;box-shadow:var(--shadow)}.caption-number{font-size:10px;font-weight:850;letter-spacing:.9px;color:#388f97;border-right:1px solid var(--line);padding-right:15px}.caption-mark{font-size:21px;color:#3ab8b8}.hero-stamp{position:absolute;left:-30px;top:35px;writing-mode:vertical-rl;display:flex;align-items:center;gap:10px;font-size:8px;letter-spacing:2px;color:rgba(255,255,255,.7)}.stamp-dot{width:5px;height:5px;border-radius:50%;background:var(--teal)}.hero-bottom{position:relative;z-index:1;display:flex;align-items:center;gap:18px;padding-top:48px;color:#91a6b4;font-size:9px;letter-spacing:1.55px;font-weight:750}.bottom-rule{height:1px;background:rgba(255,255,255,.17);flex:1}
.section-light{background:#f5f7f6}.intro{padding:112px 0 110px}.intro-layout{display:grid;grid-template-columns:220px 1fr;gap:60px}.section-label{display:flex;align-items:center;gap:11px;color:#728493;font-size:9px;letter-spacing:1.6px;font-weight:800;white-space:nowrap}.section-label>span:first-child{color:#2d9b9f;font-size:12px;letter-spacing:0}.section-label i{height:1px;width:27px;background:#64c5c6;display:block}.eyebrow-dark{color:#268b92;margin-bottom:15px}.intro h2,.section-heading h2,.workflow h2{margin:0 0 25px;color:var(--navy);font-weight:500;font-size:clamp(33px,4vw,49px);line-height:1.15;letter-spacing:-1.9px}.intro h2 em,.workflow h2 em{color:#368e96}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:24px}.intro-columns p{font-size:14px;line-height:1.9;color:#637582;margin-bottom:0}.capability-line{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.capability-chip{border:1px solid #d5e0e3;color:#315169;border-radius:99px;padding:8px 13px;font-size:10px;font-weight:750;letter-spacing:.4px;background:rgba(255,255,255,.64)}
.services{background:#102842;color:#fff;padding:102px 0 100px;position:relative;overflow:hidden}.services:before{content:"";position:absolute;right:-240px;top:30px;width:570px;height:570px;border:1px solid rgba(167,236,225,.08);border-radius:50%;box-shadow:0 0 0 60px rgba(167,236,225,.018),0 0 0 120px rgba(167,236,225,.016);pointer-events:none}.services>.container{position:relative;z-index:1}.section-heading{display:grid;grid-template-columns:1fr 360px;align-items:end;gap:50px;margin-bottom:50px}.section-label-light{color:#8ca6b5}.section-heading h2{color:#fff;margin-top:26px;margin-bottom:0}.section-heading h2 em{color:var(--mint)}.section-heading>p{color:#bbcad4;font-size:13px;line-height:1.9;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{min-width:0;background:#18364f;border:1px solid rgba(255,255,255,.08);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,border-color .25s ease}.service-card:hover{transform:translateY(-4px);border-color:rgba(167,236,225,.42)}.service-card-wide{grid-column:span 1}.service-image{height:218px;position:relative;overflow:hidden;background:#dfe4e3}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.service-card:hover .service-image img{transform:scale(1.025)}.image-cad,.image-cam{background:#070a0d}.image-cad img,.image-cam img{object-fit:contain}.image-scheletrato{background:#222a30}.image-scheletrato img{object-fit:cover;object-position:center}.image-aesthetic img{object-position:center}.image-tag{position:absolute;left:13px;top:13px;background:rgba(12,34,53,.9);color:#a8eee4;font-size:9px;letter-spacing:1px;font-weight:800;padding:8px 10px}.service-copy{padding:23px 23px 25px;flex:1;display:flex;flex-direction:column}.service-meta{display:flex;justify-content:space-between;align-items:center;color:#84a0b1;font-size:8px;font-weight:800;letter-spacing:1.4px;margin-bottom:15px}.service-meta span:last-child{color:#6cd0c8;font-size:11px}.service-copy h3{font-size:21px;line-height:1.25;letter-spacing:-.6px;font-weight:560;margin-bottom:11px;color:#fff}.service-copy p{font-size:12px;line-height:1.85;color:#b7c9d4;margin-bottom:0}.secondary-image{margin-top:20px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px}.secondary-image img{width:100%;height:155px;object-fit:cover;background:#1c2b33}.secondary-image span{display:block;color:#91a6b4;font-size:9px;letter-spacing:.2px;margin-top:7px}.cad-secondary-image img{object-fit:contain;background:#4a4070}.services-footnote{display:flex;align-items:center;gap:16px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;margin-top:38px}.footnote-star{font-size:22px;color:var(--mint)}.services-footnote p{margin:0;color:#adbfca;font-size:11px;line-height:1.75}
.workflow{padding:110px 0}.workflow-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px}.workflow-heading .eyebrow{margin-top:42px}.workflow h2{font-size:clamp(36px,4vw,48px);margin-bottom:20px}.workflow-heading>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#647785;margin-bottom:25px}.text-link{color:var(--navy);display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #9eced0;padding-bottom:8px;font-size:11px;font-weight:800}.text-link span{font-size:16px;color:#29969b}.workflow-steps{border-top:1px solid var(--line)}.workflow-step{display:grid;grid-template-columns:50px 1fr 25px;gap:20px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line)}.step-number{font-size:11px;font-weight:800;color:#319da0;padding-top:4px}.workflow-step h3{font-size:16px;margin:0 0 5px;color:var(--navy);font-weight:650}.workflow-step p{font-size:12px;line-height:1.75;color:#697c88;margin:0}.step-sign{color:#56babb;font-size:21px;line-height:1}
.contact-section{background:linear-gradient(120deg,#0a1d30 0%,#123149 100%);color:white;padding:95px 0;position:relative;overflow:hidden}.contact-orb{position:absolute;width:650px;height:650px;border:1px solid rgba(167,236,225,.1);border-radius:50%;right:-185px;top:-100px;box-shadow:0 0 0 80px rgba(167,236,225,.025),0 0 0 160px rgba(167,236,225,.018)}.contact-layout{display:grid;grid-template-columns:1fr .7fr;gap:110px;position:relative;z-index:1}.contact-copy h2{font-size:clamp(42px,5vw,62px);line-height:1.07;letter-spacing:-2.5px;font-weight:480;margin:30px 0 20px}.contact-copy h2 em{color:var(--mint)}.contact-copy>p{max-width:420px;color:#bfced8;font-size:13px;line-height:1.85;margin-bottom:25px}.button-light{background:var(--mint);color:var(--navy)}.contact-details{padding-top:12px}.contact-detail{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.17)}.detail-label{display:block;color:#82a0b2;font-size:9px;letter-spacing:1.7px;font-weight:800;margin-bottom:7px}.contact-detail>a{font-size:16px;color:white;font-weight:580;display:inline-flex;align-items:center;gap:16px}.contact-detail>a span{font-size:14px;color:var(--mint)}.contact-detail p{font-size:14px;line-height:1.8;color:#e0e9ee;margin-bottom:0}.contact-small{font-size:10px;color:#a6bac7;line-height:1.7;margin:18px 0 0}
.site-footer{background:#081725;color:#9eafbb;padding:26px 0 17px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px}.footer-brand .brand-name{color:white}.footer-brand .brand-name small{color:#8ca1b0}.footer-brand .brand-logo{width:45px;height:45px;background:#fff;border-radius:6px;padding:3px}.footer-motto{font-family:Georgia,"Times New Roman",serif;font-size:15px;line-height:1.45;color:#dae6ec;margin:0}.back-top{font-size:10px;display:flex;align-items:center;gap:16px;color:#c7d4dc;font-weight:750}.back-top span{font-size:18px;color:var(--mint)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:14px;display:flex;justify-content:space-between;gap:18px;font-size:9px;color:#7d93a3;letter-spacing:.2px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:950px){.hero-layout{gap:36px}.hero-photo-wrap{height:370px}.main-nav{gap:20px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-wide{grid-column:span 1}.section-heading{grid-template-columns:1fr 300px;gap:30px}.workflow-layout{gap:55px}.contact-layout{gap:60px}}
@media(max-width:700px){.container{width:min(100% - 36px,560px)}.site-header{height:75px}.brand-logo{width:43px;height:43px}.brand-name{font-size:17px}.brand-name small{font-size:7px;letter-spacing:1.25px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:74px;left:0;right:0;background:white;padding:18px 22px 23px;box-shadow:0 20px 30px rgba(10,32,49,.1);align-items:stretch;gap:0;flex-direction:column}.main-nav.is-open{display:flex}.main-nav a{padding:13px 2px;border-bottom:1px solid #edf0f0}.main-nav .nav-contact{margin-top:10px;padding:13px 15px;justify-content:space-between;border-bottom:0}.hero{padding:48px 0 22px}.hero-layout{grid-template-columns:1fr;gap:30px}.hero-copy{padding:0}.hero h1{font-size:clamp(41px,11vw,58px);letter-spacing:-2.6px}.hero-intro{font-size:14px}.hero-note{margin-top:27px}.hero-visual{max-width:500px;justify-self:stretch;padding-left:17px;padding-bottom:34px}.hero-photo-wrap{height:330px;border-top-right-radius:54px}.hero-stamp{left:-1px;top:20px;font-size:7px}.hero-caption{font-size:10px;padding:13px;gap:9px}.caption-number{padding-right:9px}.hero-bottom{padding-top:30px;font-size:8px;letter-spacing:1px;gap:10px}.intro{padding:72px 0}.intro-layout{grid-template-columns:1fr;gap:27px}.intro h2,.section-heading h2,.workflow h2{font-size:36px}.intro-columns{grid-template-columns:1fr;gap:16px}.services{padding:72px 0}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:32px}.section-heading>p{max-width:500px}.service-grid{grid-template-columns:1fr;gap:14px}.service-image{height:235px}.service-copy{padding:21px}.service-copy h3{font-size:21px}.secondary-image img{height:190px}.services-footnote{align-items:flex-start;margin-top:28px}.workflow{padding:72px 0}.workflow-layout{grid-template-columns:1fr;gap:38px}.workflow-heading .eyebrow{margin-top:29px}.workflow-step{grid-template-columns:34px 1fr 18px;gap:13px;padding:21px 0}.workflow-step h3{font-size:15px}.contact-section{padding:72px 0}.contact-layout{grid-template-columns:1fr;gap:36px}.contact-copy h2{font-size:46px}.contact-details{padding-top:0}.footer-main{align-items:flex-start;flex-wrap:wrap}.footer-motto{display:none}.back-top{margin-left:auto;margin-top:12px}.footer-bottom{flex-wrap:wrap;line-height:1.5}.footer-bottom span:last-child{width:100%}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Focus principale: protesi su impianti */
.implant-focus{background:#f5f7f6;padding:82px 0 78px;position:relative;overflow:hidden}
.implant-focus:before{content:"";position:absolute;right:-225px;top:-225px;width:520px;height:520px;border:1px solid rgba(35,111,123,.10);border-radius:50%;box-shadow:0 0 0 65px rgba(35,111,123,.022),0 0 0 130px rgba(35,111,123,.018);pointer-events:none}
.implant-focus>.container{position:relative;z-index:1}
.implant-heading-grid{display:grid;grid-template-columns:1fr 400px;gap:54px;align-items:end;margin:29px 0 34px}
.implant-heading-grid .eyebrow{margin-bottom:13px}
.implant-heading-grid h2{margin:0;color:var(--navy);font-size:clamp(34px,4vw,49px);line-height:1.13;letter-spacing:-1.9px;font-weight:500}
.implant-heading-grid h2 em{color:#288e96}
.implant-heading-grid>p{margin:0 0 4px;color:#566d7a;font-size:13px;line-height:1.95}
.implant-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.implant-card{min-width:0;min-height:225px;padding:26px 25px 27px;background:#fff;border:1px solid #dce5e6;border-top:3px solid #66c7c8;box-shadow:0 10px 30px rgba(16,40,66,.035)}
.implant-card-number{display:block;color:#2b9299;font-size:9px;letter-spacing:1.4px;font-weight:850;margin-bottom:23px}
.implant-card h3{font-size:20px;line-height:1.27;letter-spacing:-.55px;color:var(--navy);margin-bottom:12px;font-weight:650}
.implant-card p{font-size:12px;line-height:1.85;color:#637682;margin-bottom:0}
.implant-note{display:flex;align-items:flex-start;gap:14px;margin-top:21px;padding:17px 19px;background:#e7f1f0;border:1px solid #d5e5e4}
.implant-note-mark{font-size:19px;color:#31999f;line-height:1.3}
.implant-note p{margin:0;font-size:11px;line-height:1.8;color:#536d79}
.implant-note strong{color:var(--navy)}
@media(max-width:950px){.implant-heading-grid{grid-template-columns:1fr 330px;gap:32px}.implant-card{padding:23px 20px}.implant-card h3{font-size:18px}}
@media(max-width:700px){.implant-focus{padding:67px 0 65px}.implant-heading-grid{grid-template-columns:1fr;gap:20px;margin:27px 0 27px}.implant-heading-grid h2{font-size:36px}.implant-card-grid{grid-template-columns:1fr;gap:11px}.implant-card{min-height:0;padding:21px 20px}.implant-card-number{margin-bottom:13px}.implant-card h3{font-size:19px}.implant-note{padding:15px;gap:11px}}


/* Sei lavorazioni: due colonne per tre righe, immagini abbinate come da selezione cliente. */
.service-grid-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.service-grid-six .service-card{background:#18364f;border:1px solid rgba(255,255,255,.10);border-radius:3px;transform:none;min-height:0}
.service-grid-six .service-card:hover{transform:translateY(-3px);border-color:rgba(167,236,225,.42)}
.service-card-heading{padding:21px 21px 0}
.service-card-heading .service-meta{margin-bottom:9px}
.service-card-heading h3{font-size:20px;line-height:1.28;letter-spacing:-.45px;font-weight:600;color:#fff;margin:0 0 16px}
.service-grid-six .service-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px}
.service-grid-six .gallery-photo{height:180px;min-width:0;position:relative;margin:0;overflow:hidden;background:#dfe4e3;border-radius:2px}
.service-grid-six .gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.service-grid-six .service-card:hover .gallery-photo img{transform:scale(1.015)}
.service-grid-six .gallery-photo.fit-contain img{object-fit:contain}
.service-grid-six .gallery-photo.bg-dark{background:#0b1118}
.service-grid-six .gallery-photo.bg-neutral{background:#e5e4df}
.service-grid-six .gallery-photo figcaption{position:absolute;left:7px;bottom:7px;max-width:calc(100% - 14px);padding:5px 7px;background:rgba(10,29,45,.86);color:#d8f8f2;font-size:8px;line-height:1.25;letter-spacing:.35px;font-weight:700}
.service-grid-six .service-copy{padding:16px 21px 21px}
.service-grid-six .service-copy p{font-size:12px;line-height:1.8;color:#c0d0d9;margin:0}
@media(max-width:950px){.service-grid-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.service-grid-six .gallery-photo{height:155px}.service-card-heading{padding:18px 17px 0}.service-grid-six .service-copy{padding:14px 17px 18px}}
@media(max-width:700px){.service-grid-six{grid-template-columns:1fr;gap:14px}.service-grid-six .gallery-photo{height:185px}.service-card-heading{padding:19px 19px 0}.service-grid-six .service-copy{padding:14px 19px 20px}}


/* Informativa privacy */
.privacy-content{max-width:900px;margin-inline:auto}
.privacy-content h1{font-size:clamp(36px,4.5vw,54px);line-height:1.12;letter-spacing:-1.8px;margin:0 0 20px}
.privacy-content h2{margin:34px 0 10px;color:var(--navy);font-size:21px;line-height:1.3;letter-spacing:-.35px}
.privacy-content p,.privacy-content li{color:#526a7a;font-size:14px;line-height:1.9}
.privacy-content ul{padding-left:22px}
.privacy-content li{margin:0 0 10px}
.privacy-updated{font-size:13px!important;color:#657985!important;margin-bottom:22px}
.privacy-notice{padding:18px 20px;margin:26px 0 32px;background:#fff4df;border:1px solid #ecd39f;border-left:4px solid #c3923d;color:#66502e;font-size:13px;line-height:1.8}
.privacy-notice strong{display:block;margin-bottom:4px;color:#5a411b}
.privacy-content a:not(.text-link){text-decoration:underline;text-underline-offset:3px}
.privacy-back{margin-top:38px}
.privacy-nav-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:750;color:var(--navy);padding:11px 15px;border:1px solid #d5e0e3}
@media(max-width:700px){.privacy-content h1{font-size:36px;letter-spacing:-1.2px}.privacy-content h2{font-size:19px}.privacy-content p,.privacy-content li{font-size:13px}.privacy-nav-link{padding:9px 11px;font-size:11px}}
