:root{--ink:#090a0c;--gold:#f2c313;--cream:#ffffff;--muted:#a6a8ad;--line:#ffffff26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--cream);font-family:'Inter',Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{display:block;width:100%;object-fit:cover}header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 5.5%;background:#090a0c;position:relative;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;font-size:20px;letter-spacing:3px;font-weight:500;flex-shrink:0}.brand small{display:block;font-size:9px;letter-spacing:6.4px;margin-top:7px}.monogram{font-family:'Barlow Condensed',Arial,sans-serif;font-size:55px;line-height:1;color:var(--gold);font-style:italic;letter-spacing:-8px;margin-right:8px}.monogram span{font-size:36px}nav{display:flex;gap:28px;font-size:12px}nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{font-size:12px;border-bottom:1px solid var(--gold);padding:13px 0}.nav-cta span{margin-left:22px;color:var(--gold)}.menu{display:none}.hero{min-height:690px;height:calc(100svh - 100px);max-height:920px;position:relative;display:flex;align-items:center;padding:70px 7%;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;object-position:center 55%;filter:saturate(.35)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.89),rgba(8,10,9,.48) 51%,rgba(8,10,9,.06)),linear-gradient(0deg,#090a0c 0%,transparent 45%,rgba(8,10,9,.18))}.hero-content{position:relative;z-index:1;max-width:820px;padding-bottom:45px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.9px;color:var(--gold);display:flex;align-items:center;gap:12px;margin:0 0 30px;line-height:1.8}.eyebrow i{width:6px;height:6px;background:var(--gold);border-radius:50%}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(54px,6.5vw,100px);font-weight:400;line-height:1.04;letter-spacing:-4px;margin-bottom:28px}em{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;color:var(--gold)}.hero-copy{color:#e0e2e6;font-size:17px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:36px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:19px 25px;font-size:12px;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s;min-height:54px}.gold{color:#090a0c;background:var(--gold)}.gold:hover{background:#ffdc46;transform:translateY(-2px)}.button span{font-size:19px;font-weight:400}.text-link{font-size:12px}.text-link span{margin-left:23px}.hero-bottom{position:absolute;bottom:33px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#ced0d5}.hero-bottom a span{margin-left:30px}.service-ribbon{padding:28px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;letter-spacing:2px;white-space:nowrap;overflow:hidden;color:#dadce0}.service-ribbon b{color:var(--gold);font-size:19px;font-weight:400}.section{padding:100px 7%}.light{background:var(--cream);color:var(--ink)}h2{font-size:clamp(40px,4.3vw,67px);letter-spacing:-2.7px;font-weight:400;line-height:1.1;margin-bottom:30px}.light em{color:#111111}.dark-label{color:#111111}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:110px;padding-bottom:110px}.intro-copy{padding-top:3px;max-width:510px}.intro-copy p{font-size:14px;line-height:1.8;color:#55585e}.intro-copy .lead{font-size:23px;color:var(--ink);line-height:1.45;margin-bottom:22px}.under-link{border-bottom:1px solid #bfc1c5;display:inline-flex;justify-content:space-between;min-width:240px;padding:12px 0;font-size:12px;margin-top:10px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-heading h2{margin-bottom:8px}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:11px}.services-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;align-items:start}.service-visual{position:relative;height:620px;overflow:hidden}.service-visual img{height:100%;filter:brightness(.65);object-position:55% center}.service-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 60%)}.service-visual>div{position:absolute;bottom:35px;left:35px;z-index:1}.service-visual span{font-size:9px;letter-spacing:2px;color:var(--gold)}.service-visual h3{font-family:'Barlow Condensed',Arial,sans-serif;font-size:47px;font-weight:400;line-height:1.1;margin:20px 0 0}.service-list details{border-bottom:1px solid var(--line)}.service-list details:first-child{border-top:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:24px;cursor:pointer;padding:24px 0}summary::-webkit-details-marker{display:none}.num{font-size:10px;color:var(--gold)}summary h3{font-size:21px;font-weight:400;margin:0}.plus{margin-left:auto;font-size:27px;color:var(--gold);font-weight:300}details[open] .plus{transform:rotate(45deg)}.details-content{padding:0 30px 25px 37px}.details-content p{font-size:13px;line-height:1.8;color:var(--muted);max-width:410px}.details-content a{font-size:11px;color:var(--gold)}.gallery{padding-top:15px}.gallery-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:18px;grid-template-rows:230px 230px}.photo{position:relative;overflow:hidden;border:0;background:#222;padding:0;color:#fff;text-align:left}.photo.tall{grid-row:span 2}.photo img{height:100%;transition:transform .6s;filter:saturate(.65)}.photo:hover img{transform:scale(1.04)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 45%)}.photo span{position:absolute;bottom:24px;left:27px;right:27px;z-index:1;font-size:10px;letter-spacing:2px;display:flex;justify-content:space-between}.photo b{font-size:18px;font-weight:400}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:55px}.steps article{border-top:1px solid #d2d4d7;padding-top:23px}.steps span{font-size:9px;letter-spacing:2px;color:#111111}.steps h3{font-size:21px;font-weight:400;margin:24px 0 14px}.steps p{color:#55585e;font-size:13px;line-height:1.8;max-width:320px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:110px;padding-bottom:110px}.contact-info>p:not(.eyebrow){color:var(--muted);line-height:1.8;font-size:13px}.contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:22px;margin-top:27px}.phone{font-size:20px;letter-spacing:.5px}.address{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:50px;border-top:1px solid var(--line);padding-top:30px}.address span{font-size:9px;color:var(--gold);letter-spacing:1.6px}.address p{font-size:12px;line-height:1.9;margin-top:13px;color:#c6c8cd}.address a{font-size:11px;border-bottom:1px solid var(--gold);padding-bottom:5px}form{border:1px solid var(--line);padding:35px;align-self:start;background:#141518}form h3{font-size:25px;font-weight:400;margin-bottom:12px}form>p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:28px}label{display:block;font-size:11px;color:#dedfe2;margin-bottom:24px}input,textarea,select{border:0;border-bottom:1px solid #ffffff39;color:#ffffff;background:transparent;display:block;width:100%;padding:14px 0 12px;font-size:12px;outline:none;border-radius:0}input:focus,textarea:focus,select:focus{border-color:var(--gold)}option{background:#141518}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-note{font-size:11px;line-height:1.6;margin-bottom:22px}form .button{width:100%}.mail-direct{font-size:11px;display:block;color:var(--muted);text-align:center;margin-top:19px}#form-status{color:var(--gold);margin:16px 0 0}footer{border-top:1px solid var(--line);padding:40px 7%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer>span{font-size:9px;letter-spacing:2px;color:var(--muted)}footer p{font-size:11px;line-height:1.8;text-align:right;margin:0;color:var(--muted)}footer small{font-size:10px}.floating-wa{position:fixed;bottom:24px;right:24px;z-index:30;width:53px;height:53px;background:var(--gold);color:var(--ink);border-radius:50%;display:grid;place-items:center;box-shadow:0 5px 25px #0005}.floating-wa svg{width:29px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--gold);color:#111;padding:15px}.skip:focus{top:10px}dialog{background:#111;border:1px solid #666;padding:0;max-width:85vw;max-height:90svh;overflow:visible}dialog::backdrop{background:#000e}dialog img{max-height:85svh;width:auto;max-width:85vw;object-fit:contain}dialog .close{position:absolute;right:0;top:0;background:#111;color:white;border:0;width:44px;height:44px;font-size:30px;z-index:2}
@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:1050px){nav{gap:17px}.nav-cta{display:none}.hero{min-height:650px}h1{font-size:76px}.services-layout{gap:5%}.service-visual{height:590px}.contact{gap:5%}form{padding:25px}.address{grid-template-columns:1fr}footer>span{display:none}}@media(max-width:700px){header{height:80px;padding:0 6%}.brand{font-size:16px;letter-spacing:2.6px}.brand small{font-size:8px;letter-spacing:4.6px}.monogram{font-size:44px}.menu{display:block;background:none;color:var(--gold);font-size:24px;border:1px solid var(--line);width:43px;height:43px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#090a0c;padding:25px 7% 35px;font-size:19px;flex-direction:column;gap:25px;border-bottom:1px solid var(--gold)}nav.open{display:flex}.hero{height:calc(90svh - 80px);min-height:620px;padding:60px 7%}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#080a09ce,#080a0966),linear-gradient(0deg,#090a0c,transparent 70%)}.hero-content{padding-bottom:35px}h1{font-size:57px;letter-spacing:-2.8px}.eyebrow{font-size:8px;letter-spacing:2.2px;margin-bottom:23px}.hero-copy{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:24px;margin-top:26px}.hero-bottom{font-size:8px;line-height:1.7;gap:30px;bottom:25px}.hero-bottom>span{max-width:145px}.hero-bottom a{font-size:0}.hero-bottom a span{font-size:18px}.service-ribbon{justify-content:flex-start;padding:21px 7%;gap:25px;font-size:9px}.section{padding:65px 7%}.intro{grid-template-columns:1fr;gap:12px}.intro-copy .lead{font-size:21px}h2{font-size:45px;letter-spacing:-2px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.services-layout{display:flex;flex-direction:column;gap:30px}.service-visual{width:100%;height:310px}.service-visual h3{font-size:39px}.service-list{width:100%}summary{padding:23px 0}summary h3{font-size:20px}.gallery{padding-top:0}.gallery-grid{grid-template-rows:350px 220px 220px;grid-template-columns:1fr}.photo.tall{grid-row:auto}.steps{grid-template-columns:1fr;gap:25px;margin-top:35px}.steps h3{margin-top:18px}.steps p{max-width:none}.contact{grid-template-columns:1fr;gap:40px}.address{grid-template-columns:1fr 1fr;margin-top:35px;gap:18px}.address p{font-size:11px}form{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}footer{padding:35px 7% 90px;flex-direction:column;align-items:flex-start}footer p{text-align:left}.floating-wa{right:17px;bottom:17px}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Sport-luxury direction: condensed racing typography and vivid gold. */
h1,h2,.service-visual h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.025em;line-height:.98}
h1{font-size:clamp(65px,7.8vw,118px);font-style:italic}
h1 em,h2 em{font-weight:800;font-style:italic}
h2{font-size:clamp(48px,5vw,76px)}
.hero-content{max-width:980px}.hero-copy{margin-top:28px}
.brand{font-family:'Barlow Condensed',Arial,sans-serif;font-size:27px;font-weight:700;font-style:italic;letter-spacing:2px}
.brand small{font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:9px;letter-spacing:6.5px}
.monogram{font-weight:800;font-size:61px;letter-spacing:-4px}.monogram span{font-size:38px}
nav,.nav-cta,.button,.text-link,.under-link,.details-content a{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:1px}
nav{font-size:15px}.nav-cta{font-size:15px}.button{font-size:16px;padding:17px 26px;clip-path:polygon(0 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%)}
.button:focus-visible{outline-offset:-5px;outline-color:#111}.text-link,.under-link{font-size:15px}
summary h3,.steps h3,form h3{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.3px}
summary h3{font-size:28px}.steps h3{font-size:28px}form h3{font-size:31px}
.service-visual h3{font-size:58px;font-style:italic}.details-content a{font-size:14px}
.eyebrow{font-weight:700}.eyebrow i{width:16px;height:6px;border-radius:0;transform:skew(-25deg)}
.service-ribbon{font-family:'Barlow Condensed',Arial,sans-serif;font-size:15px;font-weight:700;letter-spacing:1.7px;padding-top:23px;padding-bottom:23px}
.service-ribbon b{font-size:24px;font-weight:800;font-style:italic}
.hero-image{filter:saturate(.65) contrast(1.07)}
.hero-shade{background:linear-gradient(90deg,rgba(8,10,9,.9),rgba(8,10,9,.43) 57%,rgba(8,10,9,.04)),linear-gradient(0deg,#090a0c 0%,transparent 45%,rgba(8,10,9,.18))}
.services{border-top:3px solid var(--gold)}.hero-bottom a span{color:var(--gold)}
@media(max-width:1050px){h1{font-size:94px}.brand{font-size:24px}}
@media(max-width:700px){h1{font-size:clamp(53px,14.7vw,86px);letter-spacing:-.02em}h2{font-size:52px}.brand{font-size:23px}.brand small{font-size:8px;letter-spacing:5.5px}.monogram{font-size:49px}.hero-content{width:100%}.hero-copy{font-size:15px}.hero-actions{gap:25px}.button{font-size:15px}.service-ribbon{font-size:14px}nav{font-size:23px}summary h3{font-size:27px}.service-visual h3{font-size:48px}.hero-shade{background:linear-gradient(90deg,#080a09de,#080a0955),linear-gradient(0deg,#090a0c,transparent 75%)}}

/* Multi-page architecture — black, pure white, high-chroma gold. */
header nav a[aria-current="page"]{color:var(--gold)}.light{background:#fff;color:#090a0c}.light em{color:#090a0c}.light .eyebrow:before{content:'';width:20px;height:4px;background:var(--gold);transform:skew(-25deg)}
.page-banner{border-bottom:1px solid var(--line);background:linear-gradient(115deg,#090a0c 68%,#16181d);padding-top:85px;padding-bottom:75px;position:relative;overflow:hidden}.page-banner:after{content:'';position:absolute;width:12px;right:10%;top:0;bottom:0;background:var(--gold);transform:skew(-20deg);opacity:.12}.page-banner h1{font-size:clamp(58px,6.8vw,104px);max-width:1000px}.page-banner>p:last-child{color:#bfc2c9;max-width:590px;font-size:15px;line-height:1.8;margin:25px 0 0}
.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{border:1px solid #303238;padding:33px 28px;background:#101114;display:flex;flex-direction:column;min-height:310px;transition:border-color .2s,background .2s}.service-card:hover{border-color:var(--gold);background:#17191e}.card-index{color:var(--gold);font-size:9px;letter-spacing:1.4px}.service-card h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:36px;line-height:1.05;font-weight:700;text-transform:uppercase;margin:35px 0 18px}.service-card p{font-size:13px;line-height:1.8;color:#afb2b9;flex:1}.card-link{font-size:10px;letter-spacing:1px;display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid #303238;margin-top:15px}.card-link b{font-size:23px;color:var(--gold);font-weight:400}
.page-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #303238;background:#111216}.page-cta h2{margin:0}.portfolio{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:390px;gap:23px}.home-gallery{padding-top:90px}.gallery-page{padding-top:45px}.service-directory{padding-top:45px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding-top:65px;padding-bottom:75px}.detail-hero img{height:540px;filter:saturate(.3);object-fit:cover}.detail-hero h1{font-size:clamp(55px,6.1vw,90px)}.detail-hero .eyebrow{margin-top:42px}.detail-hero p:not(.eyebrow){font-size:14px;line-height:1.8;color:#bfc2c9;max-width:490px}.detail-hero .detail-tag{font-size:23px!important;color:#fff!important;margin:20px 0 16px}.breadcrumb{font-size:10px;letter-spacing:1px;color:#c6c9d0}.detail-hero .button{margin-top:15px}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:12%}.detail-body p{font-size:14px;line-height:1.8;color:#55585e}.detail-points article{display:flex;gap:25px;align-items:center;padding:25px 0;border-bottom:1px solid #d2d4d7}.detail-points span{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:23px;color:#090a0c}.detail-points h3{font-size:22px;font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;margin:0}.service-enquiry{max-width:950px}.service-enquiry>p:not(.eyebrow){max-width:620px;color:#bfc2c9;font-size:15px;line-height:1.8}.service-enquiry .button{margin-top:18px}.related{padding-top:0}.related .service-cards{grid-template-columns:1fr 1fr}.contact h1{font-size:clamp(62px,6vw,95px)}.footer-nav{display:flex;gap:25px;font-size:14px}.footer-nav a{padding:8px 0}.service-ribbon a:hover{color:var(--gold)}
@media(max-width:1050px){.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-hero{gap:5%}.detail-hero img{height:480px}.portfolio{grid-auto-rows:310px}header nav{gap:18px}}
@media(max-width:700px){.page-banner{padding-top:55px;padding-bottom:50px}.page-banner h1{font-size:clamp(50px,12.3vw,74px)}.page-banner:after{right:-2%}.page-banner>p:last-child{font-size:14px}.service-cards,.related .service-cards{grid-template-columns:1fr}.service-card{min-height:260px;padding:28px}.service-card h3{margin-top:27px}.portfolio{grid-template-columns:1fr;grid-auto-rows:310px}.page-cta{align-items:flex-start;flex-direction:column}.detail-hero{grid-template-columns:1fr;padding-top:35px;gap:35px}.detail-hero h1{font-size:66px}.detail-hero img{height:310px}.detail-body{grid-template-columns:1fr;gap:20px}.detail-hero .eyebrow{margin-top:30px}.contact h1{font-size:68px}.footer-nav{position:static;background:none;border:0;padding:0;display:flex;flex-direction:row;gap:24px;font-size:16px}.service-directory,.gallery-page{padding-top:30px}}

/* Immediate service overview with explicit draft pricing. */
.home-pricing{padding-top:65px;padding-bottom:75px}.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.pricing-grid .service-card{padding:27px 23px;min-height:365px}.pricing-grid .service-card h3{font-size:32px;margin-top:25px}.pricing-grid .service-card p{font-size:12px;line-height:1.75;max-width:440px}.card-price{margin:17px 0 4px;display:flex;flex-direction:column;gap:6px}.card-price>span{font-size:11px;color:#c6c8cd}.card-price strong{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;font-size:38px;letter-spacing:.3px;color:var(--gold)}.card-price small{font-size:10px;color:#a6a8ad}.pricing-grid .card-link{margin-top:18px;padding-top:17px}
@media(max-width:1100px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-grid .service-card{min-height:340px}}
@media(max-width:700px){.home-pricing{padding-top:45px;padding-bottom:55px}.pricing-grid{grid-template-columns:1fr}.pricing-grid .service-card{min-height:0;padding:27px}.pricing-grid .service-card h3{font-size:34px;margin:20px 0 15px}.card-price strong{font-size:39px}.pricing-grid .service-card p{font-size:13px}}

/* Photographic service cards: treatment-led stock imagery. */
.service-card,.pricing-grid .service-card{padding:0;overflow:hidden}.service-card-photo{height:205px;position:relative;overflow:hidden;background:#25272b;flex-shrink:0}.service-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s;filter:contrast(1.05) saturate(.85)}.service-card:hover .service-card-photo img{transform:scale(1.055)}.service-card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0006,transparent 55%)}.photo-arrow{position:absolute;right:15px;bottom:15px;z-index:1;width:34px;height:34px;background:var(--gold);color:#090a0c;display:grid;place-items:center;font-size:23px}.service-card-content{padding:27px;display:flex;flex-direction:column;flex:1}.pricing-grid .service-card-content{padding:24px}.service-card h3,.pricing-grid .service-card h3{margin-top:18px}.service-card-photo img[src*="stock-interni"]{object-position:center 65%}.service-card-photo img[src*="stock-protezione"]{object-position:center 58%}.detail-hero img{filter:none}.related .service-card-photo{height:260px}
@media(min-width:1101px){}
@media(max-width:700px){.service-card-photo,.related .service-card-photo{height:220px}.pricing-grid .service-card,.service-card{padding:0}.service-card-content,.pricing-grid .service-card-content{padding:26px}.service-card-photo img{object-position:center}}

/* User-provided hero video and authentic WhatsApp brand mark. */
.hero-video{width:100%;height:100%;object-fit:cover;object-position:center;filter:none}.video-toggle{position:absolute;z-index:3;right:7%;bottom:84px;display:flex;align-items:center;gap:9px;border:1px solid #ffffff70;background:#090a0c80;color:#fff;padding:10px 13px;font-size:13px;min-height:42px}.video-toggle span{font-size:10px;letter-spacing:.4px}.floating-wa{background:#25d366;color:white;width:58px;height:58px;box-shadow:0 5px 25px #0006}.floating-wa img{width:31px;height:31px;object-fit:contain}.floating-wa:hover{background:#1db954}.wa-inline{width:22px;height:22px;flex-shrink:0;filter:brightness(0);object-fit:contain}.contact-actions .button{gap:15px}.service-card-photo img[src*="clean-interni"]{object-position:center}.service-card-photo img[src*="clean-protezione"]{object-position:center}
@media(max-width:700px){.hero-video{object-position:60% center}.video-toggle{right:7%;bottom:75px;padding:9px 11px}.video-toggle span{font-size:9px}.floating-wa{width:55px;height:55px}}

/* Supplied brand artwork and photographic closing section. */
.brand{display:block;line-height:0;flex-shrink:0;letter-spacing:normal}.brand-logo{width:220px;height:auto;max-width:100%;object-fit:contain}footer .brand-logo{width:245px}
.photo-cta{position:relative;isolation:isolate;overflow:hidden;min-height:390px;background:#090a0c;border-top:0}.photo-cta>.cta-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:grayscale(1);z-index:-3}.photo-cta>.cta-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.72) 55%,rgba(0,0,0,.78));z-index:-2;pointer-events:none}.photo-cta h2{color:#fff}.photo-cta h2 em{color:var(--gold)}
@media(max-width:1050px){.brand-logo{width:195px}}
@media(max-width:700px){.brand-logo{width:185px}footer .brand-logo{width:230px}.photo-cta{min-height:390px;justify-content:center;gap:30px}.photo-cta>.cta-background{object-position:48% center}.photo-cta>.cta-overlay{background:rgba(0,0,0,.81)}}

/* Seamless slow service ticker and stronger calls to action. */
.service-ribbon{display:block;padding:23px 0;overflow:hidden;text-transform:uppercase}.ribbon-track{display:flex;width:max-content;animation:services-drift 65s linear infinite;will-change:transform}.ribbon-group{display:flex;flex-shrink:0;align-items:center;justify-content:space-around;min-width:100vw;gap:42px;padding-right:42px}.ribbon-group a{font-size:17px;letter-spacing:2px;white-space:nowrap;line-height:1.6}.ribbon-group b{font-size:22px;line-height:1}.service-ribbon:hover .ribbon-track,.service-ribbon:focus-within .ribbon-track{animation-play-state:paused}@keyframes services-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--gold);background:var(--gold);color:#090a0c;padding:14px 20px;font-size:15px;font-weight:700;letter-spacing:.8px;clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%)}.nav-cta span{margin:0;color:#090a0c;font-size:20px}.nav-cta:hover{background:#ffdc46}.button{font-size:17px;font-weight:700;letter-spacing:.9px;min-height:58px;padding:18px 28px}.button span,.nav-cta span,.card-link b{transition:transform .25s}.button:hover span,.nav-cta:hover span,.service-card:hover .card-link b{transform:translate(3px,-2px)}.hero-actions .text-link{border-bottom:1px solid #ffffff80;padding:14px 0}.service-card .card-link,.pricing-grid .card-link{background:var(--gold);color:#090a0c;border:0;padding:14px 16px;min-height:49px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:15px;letter-spacing:.5px;margin-top:22px;gap:12px}.service-card .card-link b{color:#090a0c;font-size:23px}.service-card:hover .card-link{background:#ffdc46}.card-price{margin-top:16px;margin-bottom:0}.card-price>span{font-size:12px;color:#dfe1e5}.page-cta .button{min-width:270px}.photo-cta .button{box-shadow:0 8px 30px #0006}
@media(max-width:1100px){.nav-cta{display:none}}
@media(max-width:700px){.service-ribbon{padding:20px 0}.ribbon-group{gap:28px;padding-right:28px}.ribbon-group a{font-size:16px;letter-spacing:1.6px}.button{font-size:16px;padding:18px 23px}.hero-actions .button{max-width:100%}.page-cta .button{min-width:0}.service-card .card-link,.pricing-grid .card-link{font-size:16px}.hero-actions .text-link{padding:7px 0}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none;will-change:auto}.service-ribbon{overflow-x:auto}.ribbon-group[aria-hidden="true"]{display:none}.ribbon-group{padding-left:24px}.button span,.nav-cta span,.card-link b{transition:none}}

/* Complete footer, readable contacts and responsive touch layouts. */
.site-footer{display:block;padding:65px 7% 25px;background:#08090b;border-top:1px solid #303238}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-bottom:40px;border-bottom:1px solid #303238}.site-footer .brand-logo{width:265px}.site-footer p{text-align:left;line-height:1.8;font-size:13px;color:#aeb1b9;margin:20px 0 0}.footer-social>span{font-size:10px;letter-spacing:1.6px;color:var(--gold)}.footer-social>div{display:flex;gap:12px;margin-top:16px}.footer-social a{display:flex;align-items:center;gap:10px;border:1px solid #3a3c42;padding:12px 14px;min-height:46px;font-size:12px}.footer-social img{width:19px;height:19px;object-fit:contain}.footer-social a:hover{border-color:var(--gold);background:#191b20}.footer-columns{display:grid;grid-template-columns:.8fr 1fr 1.3fr 1.1fr;gap:5%;padding:40px 0}.footer-column{min-width:0}.footer-column h2{font-family:'Barlow Condensed',Arial,sans-serif;font-size:21px;line-height:1.2;letter-spacing:.8px;margin:0 0 18px;color:#fff}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li a,.footer-contact>a{display:flex;align-items:center;min-height:36px;font-size:13px;line-height:1.5;color:#bfc2c9;padding:6px 0}.footer-column a:hover{color:var(--gold)}.footer-contact .footer-phone{font-size:21px;color:#fff;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:600}.footer-contact .footer-wa{gap:8px;color:var(--gold);margin-top:5px}.footer-wa img{width:18px;height:18px;object-fit:contain}.footer-contact address{font-style:normal;font-size:13px;line-height:1.8;color:#bfc2c9;margin-top:20px}.footer-contact .footer-map{font-size:12px;text-decoration:underline;text-underline-offset:5px}.footer-hours dl{margin:0}.footer-hours dl>div{padding:0 0 15px}.footer-hours dt{font-size:12px;color:#aeb1b9;line-height:1.6}.footer-hours dd{font-size:14px;margin:3px 0 0;color:#fff;line-height:1.6}.footer-appointment{font-size:12px;color:var(--gold);display:block;line-height:1.6;padding:9px 0}.footer-bottom{border-top:1px solid #303238;padding-top:23px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer .footer-bottom p{margin:0;font-size:11px}.footer-bottom>span{font-size:9px;letter-spacing:1.5px;color:#aeb1b9}.footer-bottom>a{font-size:12px;padding:10px 0}.mobile-contact-bar{display:none}
@media(max-width:1050px){.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 50px}.footer-top{align-items:flex-start;gap:25px}.footer-social>div{flex-wrap:wrap}.footer-social a{padding:11px}}
@media(max-width:700px){
 html{scroll-padding-top:88px}body{overflow-x:clip}header{height:76px;position:sticky;top:0;padding:0 20px;background:#090a0cf5;backdrop-filter:blur(12px)}.brand-logo{width:172px}.menu{width:44px;height:44px;font-size:26px;line-height:1;border-color:#55585e}.menu-open{overflow:hidden}
 #navigation{position:fixed;top:76px;left:0;right:0;bottom:0;max-height:calc(100dvh - 76px);padding:25px 24px 110px;overflow-y:auto;background:#090a0c;border-bottom:0;gap:0}#navigation.open{display:flex}#navigation>a{display:flex;align-items:center;min-height:65px;padding:15px 0;font-size:30px;border-bottom:1px solid #303238}#navigation>a:last-child{color:var(--gold)}
 .section{padding-left:22px;padding-right:22px}.hero{height:auto;min-height:calc(100svh - 76px);max-height:none;padding:55px 22px 100px}.hero-content{padding-bottom:0}.hero h1{font-size:clamp(49px,13.9vw,83px);line-height:1;letter-spacing:-.02em}.hero-copy{font-size:16px;line-height:1.65;max-width:310px}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}.hero-actions{width:100%;gap:17px}.hero-actions .button{width:100%;justify-content:space-between}.hero-actions .text-link{min-height:44px;display:flex;align-items:center;justify-content:space-between;width:100%}.hero-bottom{left:22px;right:22px;bottom:30px}.hero-bottom>span{max-width:210px;font-size:8px}.hero-video{object-position:62% center}
 h2{font-size:clamp(39px,11.5vw,54px);line-height:1.04}.page-banner h1{font-size:clamp(46px,12.3vw,70px)}.detail-hero h1{font-size:clamp(47px,13vw,68px)}.contact h1{font-size:clamp(52px,14vw,72px)}.section-heading{margin-bottom:26px}.section-heading>p{font-size:14px;line-height:1.75}.intro-copy p,.steps p,.details-content p{font-size:15px;line-height:1.75}.eyebrow{font-size:9px;letter-spacing:1.7px}
 .pricing-grid,.service-cards{gap:22px}.service-card-photo,.related .service-card-photo{height:215px}.service-card-content,.pricing-grid .service-card-content{padding:24px}.service-card h3,.pricing-grid .service-card h3{font-size:34px}.service-card p,.pricing-grid .service-card p{font-size:14px;line-height:1.7}.service-card .card-link,.pricing-grid .card-link{min-height:52px;font-size:16px}.card-index{font-size:10px;letter-spacing:1px}.card-price strong{font-size:40px}.card-price>span{font-size:13px}.button{min-height:56px;font-size:16px;line-height:1.3;gap:18px}.detail-hero .button,.service-enquiry .button,.photo-cta .button{width:100%}.portfolio{grid-auto-rows:290px;gap:18px}
 .contact{gap:35px}.contact-actions .button{width:100%;justify-content:center}.address{grid-template-columns:1fr;gap:25px}.address p{font-size:14px}.address a{font-size:13px;display:inline-flex;min-height:44px;align-items:center}.address span{font-size:10px}.phone{min-height:44px;display:flex;align-items:center;font-size:23px}form{padding:27px 21px}form h3{font-size:30px}form>p{font-size:14px}label{font-size:13px;margin-bottom:24px}input,textarea,select{font-size:16px;min-height:48px;padding:15px 0 12px}.form-note{font-size:12px;line-height:1.7}.mail-direct{font-size:12px;line-height:1.6;min-height:44px;padding-top:10px;overflow-wrap:anywhere}
 .site-footer{padding:45px 22px calc(105px + env(safe-area-inset-bottom));}.footer-top{flex-direction:column;gap:28px;padding-bottom:30px}.site-footer .brand-logo{width:240px}.site-footer p{font-size:14px;margin-top:20px}.footer-social{width:100%}.footer-social>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.footer-social a{flex-direction:column;justify-content:center;gap:8px;padding:13px 5px;font-size:12px;min-height:72px}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px;padding:32px 0}.footer-column h2{font-size:22px;margin-bottom:12px}.footer-column li a{font-size:13px;min-height:44px;padding:9px 0}.footer-contact,.footer-hours{grid-column:1/-1;border-top:1px solid #303238;padding-top:25px}.footer-contact>a{min-height:44px;font-size:15px}.footer-contact .footer-phone{font-size:26px}.footer-contact address{font-size:14px;margin-top:14px}.footer-contact .footer-map{font-size:14px}.footer-hours dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0}.footer-hours dt,.footer-hours dd{font-size:14px}.footer-hours dd{margin:0}.footer-appointment{font-size:14px;min-height:44px;display:flex;align-items:center}.footer-bottom{flex-wrap:wrap;gap:15px;padding-top:20px}.site-footer .footer-bottom p{font-size:12px;width:100%}.footer-bottom>span{font-size:8px;letter-spacing:1px}.footer-bottom>a{font-size:12px;min-height:44px;display:flex;align-items:center}
 .floating-wa{display:none}.mobile-contact-bar{position:fixed;bottom:0;left:0;right:0;z-index:35;display:grid;grid-template-columns:1fr 1fr;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:10px;background:#090a0cf5;border-top:1px solid #3a3c42;backdrop-filter:blur(12px)}.mobile-contact-bar>a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:19px;text-transform:uppercase;letter-spacing:.6px;color:#090a0c;background:var(--gold)}.mobile-contact-bar>a:last-child{background:#25d366;color:#fff}.mobile-contact-bar svg,.mobile-contact-bar img{width:21px;height:21px;object-fit:contain}.menu-open .mobile-contact-bar{display:none}
}
@media(max-width:360px){.section{padding-left:18px;padding-right:18px}.site-footer{padding-left:18px;padding-right:18px}.hero{padding-left:18px;padding-right:18px}.brand-logo{width:157px}.footer-columns{gap:25px 12px}.footer-column li a{font-size:12px}.hero .eyebrow{font-size:8px}.button{font-size:15px;padding-left:19px;padding-right:19px}}

@media(max-width:700px){header{backdrop-filter:none;background:#090a0c}}

/* Continuous client comments, without cards. */
.testimonials{background:#101114;border-top:1px solid var(--line);overflow:hidden}
.testimonials .under-link{min-height:48px;flex-shrink:0}
.reviews-marquee{margin:48px -8.14% 0;overflow:hidden;outline-offset:-3px}
.reviews-marquee:focus-visible{outline:2px solid var(--gold)}
.reviews-track{display:flex;width:max-content;animation:reviews-scroll 105s linear infinite}
.reviews-group{display:flex;flex-shrink:0;align-items:stretch}
.review-comment{position:relative;flex:0 0 470px;width:470px;margin:0;padding:0 50px;display:flex;flex-direction:column;border-right:1px solid #ffffff20}
.review-comment-top{display:flex;align-items:center;gap:20px;margin-bottom:20px}
.review-stars{color:var(--gold);font-size:17px;letter-spacing:3px;white-space:nowrap}
.review-platform{color:#b8bbc1;font-size:13px}
.review-comment blockquote{margin:0 0 26px;font-size:20px;line-height:1.6;color:#f1f2f4;font-weight:400}
.review-comment blockquote p{margin:0}
.review-comment figcaption{margin-top:auto;display:flex;align-items:center;gap:12px}
.review-avatar{display:none}
.review-comment figcaption strong{display:block;font-size:14px;line-height:1.5;font-weight:600;color:var(--gold)}
.review-comment figcaption small{display:block;color:#a6a8ad;font-size:11px;line-height:1.5;margin-top:3px}
.reviews-marquee:hover .reviews-track,.reviews-marquee:focus-within .reviews-track{animation-play-state:paused}
@keyframes reviews-scroll{to{transform:translateX(-50%)}}
@media(max-width:1000px){.testimonials .section-heading{align-items:start;flex-direction:column;gap:15px}}
@media(max-width:600px){.testimonials .section-heading{margin-bottom:28px}.testimonials .under-link{width:100%;font-size:13px}.reviews-marquee{margin-top:32px}.review-comment{flex-basis:85vw;width:85vw;padding:0 24px}.review-comment blockquote{font-size:18px}.reviews-track{animation-duration:115s}}
@media(prefers-reduced-motion:reduce){.reviews-track{animation:none}.reviews-copy{display:none}.reviews-marquee{overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:20px}.review-comment{scroll-snap-align:start}}

/* Balanced services grid and quick enquiry. */
.pricing-grid{align-items:stretch}
.pricing-grid .quick-contact{padding:25px;background:var(--gold);color:var(--ink);border-color:var(--gold);min-width:0}
.quick-contact .card-index,.quick-contact h3{color:var(--ink)}
.pricing-grid .quick-contact h3{margin:20px 0 12px;font-size:34px}
.pricing-grid .quick-contact>p{color:#27230d;flex:0;margin:0 0 18px;font-size:13px}
.quick-contact form{border:0;padding:0;background:none;align-self:stretch;margin:0;display:flex;flex-direction:column;flex:1}
.quick-contact label{color:#17180e;margin-bottom:14px;font-size:12px;font-weight:600}
.quick-contact input,.quick-contact textarea{background:#ffffff35;color:#090a0c;border:1px solid #090a0c55;padding:10px;font-size:16px;margin-top:6px;min-height:44px}
.quick-contact textarea{resize:vertical;min-height:76px}
.quick-contact input:focus,.quick-contact textarea:focus{outline:2px solid #090a0c;outline-offset:2px}
.quick-contact .quick-submit{background:#090a0c;color:white;border:0;min-height:50px;padding:13px 16px;font-size:17px;margin-top:auto;cursor:pointer}
.quick-contact .quick-submit:hover{background:#24262b}
.quick-contact .quick-note{color:#302a12;font-size:11px;line-height:1.5;margin:9px 0 0}
.quick-contact .quick-links{display:flex;flex-wrap:wrap;gap:8px 20px;border-top:1px solid #090a0c40;margin-top:16px;padding-top:8px}
.quick-links a{display:flex;align-items:center;gap:7px;min-height:44px;font-size:13px;font-weight:700;color:#090a0c}
.quick-links img{width:18px;height:18px;filter:brightness(0)}
.quick-contact a:focus-visible,.quick-contact button:focus-visible{outline-color:#090a0c}
.quick-contact .quick-status{color:#090a0c;font-size:12px;line-height:1.5;margin:12px 0 0}
.intro.section{padding-top:85px;padding-bottom:85px;align-items:center}
.intro h2{margin-bottom:0}
@media(max-width:700px){.home-gallery{padding-top:55px}.intro.section{padding-top:55px;padding-bottom:55px;gap:28px}.pricing-grid .quick-contact{padding:24px}.quick-contact .quick-note{font-size:12px}}
