/* BRAND COLORS — Da aggiornare con i colori del logo */
:root{--ink:#111111;--ink-2:#202020;--accent:#ffb200;--accent-dark:#cf8f00;--paper:#fffaf0;--white:#fff;--muted:#726958;--line:#e9dfca;--soft:#fff2d1;--heading-font:Inter,"Arial Narrow",Arial,sans-serif;--body-font:Inter,Arial,"Helvetica Neue",sans-serif;--radius:20px;--shadow:0 18px 50px rgba(0,0,0,.08)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:106px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body-font);font-size:16px;-webkit-font-smoothing:antialiased}
body,button,input,textarea,select{font-family:var(--body-font)}
a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,textarea,select{font-size:inherit}button:disabled{opacity:.58;cursor:wait}
img,svg{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.047em}section[id],#preventivo{scroll-margin-top:100px}
:focus-visible{outline:3px solid var(--accent-dark);outline-offset:4px}
[hidden]{display:none!important}
.container{width:min(1200px,calc(100% - 72px));margin:0 auto}
.skip-link{position:fixed;top:-70px;left:20px;background:var(--accent);color:var(--ink);padding:12px;z-index:100}.skip-link:focus{top:12px}
.announcement{height:32px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--ink);color:#e8dfc7;font-size:10px;font-weight:800;letter-spacing:.15em}.announcement-dot,.status-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 3px rgba(201,252,118,.12)}.announcement-dash{color:#87918a}
.site-header{height:84px;background:rgba(247,248,242,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(18px)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;gap:11px;align-items:center;flex-shrink:0}.brand-mark{border-radius:12px}.brand-name{display:flex;flex-direction:column;gap:3px}.brand-name strong{font-size:16px;letter-spacing:-.065em;font-weight:900}.brand-name small{font-size:9px;letter-spacing:.18em;font-weight:700;color:#956600}.site-nav{display:flex;align-items:center;gap:32px}.site-nav>a{font-size:13px;font-weight:700;transition:color .2s}.site-nav>a:hover{color:#956600}.site-nav .nav-cta{background:var(--ink);color:white;padding:15px 19px;border-radius:8px;display:flex;gap:16px;align-items:center}.site-nav .nav-cta:hover{background:#171717;color:var(--accent)}.nav-toggle{display:none}
.hero{padding-top:59px;background:radial-gradient(circle at 24% 20%,rgba(219,236,193,.34),transparent 39%),var(--paper)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;min-height:535px;align-items:center}.hero-copy{padding:20px 0 45px}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:900;display:flex;align-items:center;gap:11px;margin-bottom:25px}.sparkle{font-size:20px;color:#956600}.hero h1{font-weight:900;font-size:clamp(58px,6.4vw,94px);line-height:.99;letter-spacing:-.075em;max-width:650px}.highlight{position:relative;z-index:1;white-space:nowrap}.highlight::after{content:"";z-index:-1;position:absolute;bottom:4px;left:-1%;width:102%;height:20%;background:var(--accent);transform:skew(-6deg)}.hero-intro{margin-top:28px;font-size:17px;line-height:1.8;color:#956600;max-width:490px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.button{border:1px solid transparent;min-height:53px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:0 19px;border-radius:8px;font-weight:800;font-size:13px;letter-spacing:-.015em;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#171717}.button-dark span:last-child{font-size:19px;line-height:1;color:var(--accent)}.button-outline{border-color:#d3cec0;background:transparent;color:var(--ink)}.button-outline:hover{background:#ede9df}.button-outline span:last-child{font-size:18px}.hero-footnote{display:flex;gap:11px;align-items:center;color:#c58700;font-size:10px;letter-spacing:.12em;font-weight:800;margin-top:52px}.footnote-line{height:1px;width:28px;background:#c58700}
.hero-visual{height:536px;position:relative;overflow:hidden;background:#171717;border-radius:18px;color:white;isolation:isolate;box-shadow:var(--shadow)}.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 95%,rgba(196,249,120,.045) 96%),linear-gradient(90deg,transparent 95%,rgba(196,249,120,.045) 96%);background-size:35px 35px;mask-image:linear-gradient(to bottom,transparent 5%,black 55%);opacity:.85;z-index:-1}.hero-visual:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(196,249,120,.13);border-radius:50%;left:50%;top:51%;transform:translate(-50%,-50%);z-index:-1;box-shadow:0 0 0 65px rgba(183,240,110,.025),0 0 0 130px rgba(183,240,110,.02)}.visual-top,.visual-bottom{position:absolute;z-index:3;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.13em;font-weight:800;color:#cbc5b5}.visual-top{top:29px}.visual-top span:first-child{display:flex;gap:10px;align-items:center}.visual-bottom{bottom:27px;color:#c58700}.hero-object{position:absolute;width:105%;max-width:none;left:-2%;top:4%;height:95%;filter:drop-shadow(0 24px 35px rgba(0,0,0,.22))}.visual-tag{position:absolute;z-index:4;padding:13px 16px;background:rgba(248,255,239,.075);backdrop-filter:blur(10px);border:1px solid rgba(226,255,209,.20);border-radius:8px;display:flex;gap:5px;flex-direction:column}.visual-tag-a{left:26px;top:50%}.visual-tag-b{right:23px;bottom:23%}.tag-key{font-size:9px;letter-spacing:.14em;color:#c58700}.visual-tag strong{font-size:11px;letter-spacing:.04em;color:#f7f5f0}.green-spark{color:var(--accent)}
.steps-strip{margin-top:59px;border-top:1px solid #e4e0d7;border-bottom:1px solid #e4e0d7;display:grid;grid-template-columns:repeat(3,1fr)}.step{display:flex;gap:17px;align-items:center;padding:27px 20px 28px}.step:first-child{padding-left:0}.step:not(:last-child){border-right:1px solid #e4e0d7}.step-no{font-size:26px;letter-spacing:-.08em;font-weight:900;color:#b8af99}.step strong,.step small{display:block}.step strong{font-size:14px;margin-bottom:5px}.step small{color:#c58700;font-size:12px;line-height:1.4}
.section{padding:113px 0}.section-heading{margin-bottom:43px}.heading-split{display:flex;align-items:end;justify-content:space-between;gap:40px}.heading-split>div{max-width:760px}.section-kicker{font-size:11px;letter-spacing:.14em;font-weight:900;display:inline-flex;align-items:center;gap:9px}.kicker-dot{width:7px;height:7px;background:#c58700;display:inline-block;border-radius:50%}.section h2,.about-section h2{font-size:clamp(43px,4.8vw,67px);line-height:1.09;font-weight:900;margin-top:14px;letter-spacing:-.067em}.section h2 em,.about-section h2 em{font-style:normal;color:#c58700}.heading-split>p{max-width:315px;line-height:1.8;font-size:14px;color:#956600;padding-bottom:4px}
.services-section{background:#fff}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{background:#f7f5f1;min-height:330px;padding:30px;border:1px solid #edeae4;border-radius:14px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-top{display:flex;justify-content:space-between;align-items:start}.service-icon{width:62px;height:62px;background:#ede7d9;border-radius:14px;display:grid;place-items:center;color:#956600}.service-icon svg{width:39px;height:39px}.service-index{font-size:11px;font-weight:800;color:#c58700}.service-card h3{font-size:26px;line-height:1.15;letter-spacing:-.05em;font-weight:850;margin-top:26px}.service-card p{color:#956600;font-size:13px;line-height:1.8;max-width:290px;margin:13px 0 24px}.text-link{font-size:12px;font-weight:850;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #c58700;padding-bottom:6px;align-self:start;margin-top:auto}.text-link span{font-size:17px}.text-link:hover{color:#956600}
.products-section{background:#f1efe9}.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{min-width:0}.product-art{height:292px;position:relative;overflow:hidden;border-radius:14px;display:grid;place-items:center}.product-art-1{background:#e5e1d7}.product-art-2{background:#e3dfd6}.product-art-3{background:#e7e3d9}.product-art:before{content:"";position:absolute;inset:10px;border:1px solid rgba(51,89,63,.18);border-radius:8px}.product-art img{width:min(84%,340px);max-height:250px;object-fit:contain;filter:drop-shadow(0 16px 16px rgba(40,68,46,.14));transition:transform .3s}.product-card:hover .product-art img{transform:translateY(-5px) rotate(-2deg)}.product-art-index,.product-art-label{position:absolute;z-index:1;font-size:9px;letter-spacing:.12em;font-weight:900;color:#956600}.product-art-index{top:24px;left:26px}.product-art-label{bottom:24px;right:26px}.product-text{padding:22px 1px}.product-text>span{font-size:10px;letter-spacing:.13em;color:#c58700;font-weight:800}.product-text h3{font-size:23px;margin:8px 0 7px}.product-text p{font-size:13px;color:#956600;line-height:1.7}
.about-section{background:var(--ink);color:#fff;padding:94px 0}.about-grid{display:grid;grid-template-columns:.97fr 1.03fr;gap:95px;align-items:center}.about-visual{min-height:490px;position:relative;overflow:hidden;border-radius:15px;background:#171717;isolation:isolate}.about-visual:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 36px,rgba(225,255,211,.065) 37px),repeating-linear-gradient(0deg,transparent,transparent 36px,rgba(225,255,211,.065) 37px)}.about-visual:after{content:"";position:absolute;width:450px;height:450px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(214,253,161,.25);box-shadow:0 0 0 75px rgba(214,253,161,.045),0 0 0 145px rgba(214,253,161,.035)}.about-coordinate{position:absolute;top:25px;left:26px;font-size:10px;letter-spacing:.14em;color:#c9c0a8;font-weight:800}.about-glyph{position:absolute;top:50%;left:50%;width:245px;height:245px;transform:translate(-50%,-50%) rotate(-17deg);z-index:1}.glyph-1,.glyph-2,.glyph-3{position:absolute;border:26px solid var(--accent);border-radius:22px;width:165px;height:165px;transform:rotate(45deg);box-shadow:18px 18px 0 #c58700,0 22px 45px rgba(0,0,0,.2)}.glyph-1{left:30px;top:10px}.glyph-2{left:64px;top:60px;border-color:#c58700;opacity:.75}.glyph-3{left:30px;top:110px;border-color:#fdf0ce;opacity:.45}.about-visual-bottom{position:absolute;bottom:24px;left:26px;right:26px;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:900;letter-spacing:.12em;color:#d7d0bd}.about-visual-bottom span{font-size:20px;color:var(--accent)}.about-copy .section-kicker{color:var(--accent)}.about-copy h2{margin-top:23px;font-size:clamp(43px,4.2vw,59px)}.about-copy h2 em{color:var(--accent)}.about-copy p{line-height:1.9;color:#cfc9ba;font-size:14px;margin-top:24px;max-width:520px}.about-copy p+p{margin-top:13px}.button-light{margin-top:32px;background:var(--accent);color:var(--ink)}.button-light:hover{background:#fce5aa}.button-light span:last-child{font-size:20px}
.contact-section{background:#fff}.contact-heading{margin-bottom:43px}.contact-grid{display:grid;grid-template-columns:1.19fr .81fr;gap:19px;align-items:start}.form-panel{border:1px solid #e6e3db;border-radius:14px;background:#fcfbf9;padding:33px}.quote-panel{background:#f7f5f1}.panel-title{display:flex;gap:15px;align-items:center}.panel-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:11px;background:var(--ink);color:var(--accent);font-size:29px;font-weight:400;flex:0 0 auto}.panel-icon-outline{background:#ede8da;color:var(--ink);font-size:24px}.panel-kicker{font-size:10px;font-weight:900;letter-spacing:.13em;color:#c58700}.panel-title h3{font-size:26px;margin-top:5px;line-height:1.1}.panel-desc{font-size:13px;line-height:1.8;color:#956600;margin:17px 0 24px}form{display:flex;flex-direction:column;gap:17px}.fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}form label:not(.consent):not(.upload-zone){display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:800;line-height:1.4}form label>span:not(.optional){color:inherit}.optional{font-weight:500;color:#c58700}form input:not([type=checkbox]):not([type=file]),form textarea,form select{border:1px solid #dedad0;background:#fff;border-radius:7px;width:100%;min-width:0;color:var(--ink);padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s;font-size:13px;font-weight:450;min-height:46px}form input:focus:not([type=checkbox]),form textarea:focus,form select:focus{border-color:#c58700;box-shadow:0 0 0 3px rgba(119,173,82,.13)}form input::placeholder,form textarea::placeholder{color:#c58700}form textarea{resize:vertical;line-height:1.6;min-height:95px}form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%23456048' stroke-width='1.3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}.upload-zone{border:1.5px dashed #c58700;border-radius:9px;min-height:162px;background:#f2eee5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;text-align:center;cursor:pointer;transition:background .2s,border-color .2s}.upload-zone:hover,.upload-zone.is-dragging,.upload-zone.has-file{border-color:#956600;background:#f0e8d4}.upload-symbol{display:grid;place-items:center;border-radius:50%;width:35px;height:35px;background:var(--ink);color:var(--accent);font-size:23px}.upload-zone strong{font-size:13px}.upload-zone strong u{text-underline-offset:2px}.upload-zone small{font-size:10px;font-weight:750;color:#c58700;line-height:1.5}.file-selected{font-size:11px;font-weight:700;color:#956600;overflow-wrap:anywhere}.file-selected.file-error{color:#9c3d32}.file-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.consent{display:flex;align-items:start;gap:10px;line-height:1.55;font-size:11px;color:#956600;font-weight:450}.consent input{width:16px;height:16px;margin:2px 0 0;accent-color:#956600;flex:0 0 auto}.consent button{padding:0;border:none;background:none;display:inline;color:#171717;text-decoration:underline;text-underline-offset:2px;font-size:inherit}.submit-button{width:100%;margin-top:2px;min-height:51px}.submit-button span:last-child{font-size:19px}.form-status{font-size:12px;line-height:1.5;margin-top:-6px}.form-success{border-left:3px solid #c58700;background:#f1ead9;padding:10px 12px}.form-error{border-left:3px solid #bd5e51;background:#fcece9;padding:10px 12px}.honey{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.contact-side{display:flex;flex-direction:column;gap:19px}.message-panel form{gap:15px}.message-panel{padding:31px}.button-outline-dark{border-color:#c58700;background:transparent;color:var(--ink)}.button-outline-dark:hover{background:#efece4}.direct-contact{background:#f6e0a7;border-radius:14px;padding:29px 30px;min-height:200px}.direct-label{font-size:10px;letter-spacing:.15em;font-weight:900;color:#956600}.direct-contact h3{font-size:28px;line-height:1.13;margin-top:14px}.direct-contact h3 span{color:#956600}.whatsapp-direct{font-size:12px;font-weight:850;display:inline-flex;gap:16px;border-bottom:1px solid #956600;margin-top:17px;padding-bottom:5px}.setup-note{margin-top:14px;font-size:11px;color:#956600;line-height:1.6}
.site-footer{background:#171717;color:#fff}.footer-top{padding:49px 0 42px;display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #171717}.footer-brand .brand-name small{color:#c58700}.footer-top p{line-height:1.7;font-size:13px;color:#beb6a1}.back-top{font-size:13px;font-weight:800;border:1px solid #956600;border-radius:7px;padding:14px 17px}.back-top:hover{border-color:var(--accent)}.footer-bottom{min-height:77px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;font-weight:650;color:#c58700}.footer-bottom>div{display:flex;gap:20px;align-items:center}.footer-privacy{border:none;background:none;color:#d2ccbe;cursor:pointer;padding:0;font-size:11px}.footer-bottom>span:last-child{letter-spacing:.14em}.footer-email{text-decoration:underline}
.whatsapp-float{position:fixed;right:23px;bottom:23px;z-index:21;background:#c58700;display:flex;gap:9px;align-items:center;color:#171717;padding:12px 16px;border-radius:999px;box-shadow:0 9px 22px #1c63402b;font-size:12px;font-weight:900;transition:transform .2s}.whatsapp-float svg{width:25px;height:25px}.whatsapp-float:hover{transform:translateY(-4px)}
.privacy-dialog{border:0;border-radius:14px;padding:0;width:min(640px,calc(100% - 30px));max-height:calc(100vh - 35px);box-shadow:0 24px 90px #0004;color:var(--ink)}.privacy-dialog::backdrop{background:#0b1515aa}.privacy-content{padding:34px 36px;position:relative}.privacy-content h2{font-size:30px;letter-spacing:-.05em;margin:14px 0 20px}.privacy-content p{font-size:13px;line-height:1.7;color:#956600;margin:13px 0}.dialog-close{position:absolute;right:18px;top:15px;font-size:28px;line-height:1;border:0;background:none;color:var(--ink)}.dialog-ok{margin-top:14px}
@media(max-width:1150px){.site-nav{gap:20px}.hero-grid{gap:25px}.hero h1{font-size:clamp(60px,6.7vw,80px)}.hero-visual{height:490px}.about-grid{gap:55px}}
@media(max-width:950px){.container{width:min(100% - 48px,760px)}.site-header{height:77px}.nav-toggle{display:flex;width:45px;height:42px;border:1px solid #dbd6c9;border-radius:7px;flex-direction:column;gap:5px;justify-content:center;align-items:center;background:transparent}.nav-toggle span{height:2px;width:18px;background:var(--ink);border-radius:1px}.site-nav{position:absolute;top:76px;left:0;right:0;background:var(--paper);box-shadow:0 20px 30px rgba(0,0,0,.07);padding:22px 24px;display:none;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav>a{padding:15px 0;border-bottom:1px solid #e5e1d8}.site-nav .nav-cta{margin-top:15px;justify-content:space-between;padding:16px}.hero{padding-top:36px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:33px 0 46px}.hero h1{font-size:clamp(60px,10vw,88px)}.hero-visual{height:480px}.hero-object{height:102%;top:0%;width:95%;left:2.5%}.hero-footnote{margin-top:35px}.steps-strip{margin-top:42px}.step{padding:24px 10px;gap:9px}.step strong{font-size:12px}.step small{font-size:11px}.section{padding:80px 0}.heading-split{align-items:start;gap:15px}.heading-split>p{max-width:250px}.services-grid{gap:10px}.service-card{padding:20px;min-height:340px}.service-card h3{font-size:23px}.product-art{height:240px}.products-grid{gap:10px}.product-text h3{font-size:19px}.about-section{padding:75px 0}.about-grid{gap:30px;grid-template-columns:1fr 1fr}.about-visual{min-height:430px}.about-glyph{transform:translate(-50%,-50%) rotate(-17deg) scale(.77)}.contact-grid{grid-template-columns:1fr}.contact-side{display:grid;grid-template-columns:1fr 1fr}.message-panel{padding:25px}.direct-contact{height:fit-content}.footer-top{gap:15px}}
@media(max-width:660px){html{scroll-padding-top:82px}.container{width:calc(100% - 36px)}.announcement{font-size:8px;letter-spacing:.07em;gap:6px}.site-header{height:70px}.site-nav{top:69px}.brand-mark,.footer-brand img{width:40px;height:40px}.brand-name strong{font-size:14px}.brand-name small{font-size:8px}.hero{padding-top:10px}.hero-copy{padding:36px 0 39px}.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:19px}.hero h1{font-size:clamp(53px,13.2vw,79px);letter-spacing:-.072em}.hero-intro{font-size:15px;line-height:1.75;margin-top:23px}.hero-actions{gap:10px;margin-top:24px}.hero-actions .button{width:100%;justify-content:space-between}.hero-footnote{font-size:9px;margin-top:28px}.hero-visual{height:395px}.hero-object{height:100%;width:111%;left:-5.5%;top:2%}.visual-top,.visual-bottom{left:18px;right:18px;font-size:8px}.visual-top{top:18px}.visual-bottom{bottom:18px}.visual-tag{padding:9px 10px}.visual-tag-a{left:14px;top:52%}.visual-tag-b{right:13px;bottom:24%}.tag-key{font-size:7px}.visual-tag strong{font-size:9px}.steps-strip{margin-top:32px;grid-template-columns:1fr;padding:7px 0}.step,.step:first-child{padding:16px 6px;border-right:0}.step:not(:last-child){border-right:0;border-bottom:1px solid #e4e0d7}.step-no{min-width:51px}.step strong{font-size:13px}.step small{font-size:12px}.section{padding:72px 0}.heading-split{display:block}.section-kicker{font-size:10px}.section h2,.about-section h2{font-size:clamp(41px,10vw,57px);line-height:1.08}.heading-split>p{margin-top:20px;max-width:420px}.section-heading{margin-bottom:30px}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:0;padding:25px}.service-card h3{margin-top:24px;font-size:25px}.service-card p{max-width:none}.products-grid{grid-template-columns:1fr;gap:23px}.product-art{height:295px}.product-art img{max-height:255px}.product-text{padding:17px 1px 0}.product-text h3{font-size:23px}.about-section{padding:58px 0}.about-grid{grid-template-columns:1fr;gap:46px}.about-visual{min-height:330px;order:2}.about-copy{order:1}.about-glyph{transform:translate(-50%,-50%) rotate(-17deg) scale(.70)}.about-copy h2{font-size:clamp(43px,11vw,55px)}.about-copy p{font-size:14px}.contact-grid{gap:15px}.form-panel{padding:23px 18px}.panel-title h3{font-size:22px}.panel-icon{width:46px;height:46px}.fields-grid{grid-template-columns:1fr;gap:17px}.contact-side{grid-template-columns:1fr;gap:15px}.direct-contact{min-height:0;padding:26px 24px}.submit-button{font-size:12px}.footer-top{flex-wrap:wrap;justify-content:space-between;padding:36px 0;row-gap:29px}.footer-top p{order:3;width:100%}.footer-bottom{padding:24px 0;flex-direction:column;align-items:flex-start;gap:13px}.whatsapp-float{right:13px;bottom:13px;padding:12px}.whatsapp-float .float-label{display:none}.privacy-content{padding:30px 22px}}
@media(max-width:355px){.hero h1{font-size:50px}.hero-visual{height:345px}.hero-actions .button{font-size:11px}.visual-tag-a{top:55%}.announcement{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* MADE 3D STUDIO — black and signature amber identity */
.announcement{color:#ffda73}.announcement-dot,.status-dot,.kicker-dot{background:#ffb200;box-shadow:none}
.site-header{background:rgba(255,250,240,.96)}
.brand-mark,.footer-brand img{border-radius:8px;object-fit:cover}
.brand-name small{color:#86775b}
.hero{background:radial-gradient(circle at 22% 16%,rgba(255,178,0,.13),transparent 45%),var(--paper)}
.hero-visual{background:#111111}.hero-visual:before{background:linear-gradient(transparent 95%,rgba(255,178,0,.055) 96%),linear-gradient(90deg,transparent 95%,rgba(255,178,0,.055) 96%);background-size:35px 35px}.hero-visual:after{border-color:rgba(255,178,0,.18);box-shadow:0 0 0 65px rgba(255,178,0,.035),0 0 0 130px rgba(255,178,0,.024)}
.hero-intro{color:#685f51}.hero-footnote{color:#796d58}.visual-top,.visual-bottom{color:#dfd0ab}
.services-section{background:#fff}.service-card{background:#fff9ed;border-color:#f1e5ce}.service-icon{background:#ffe8a5;color:#111}.service-index{color:#a77b22}
.products-section{background:#fff5df}.product-art-1{background:#f9e5ba}.product-art-2{background:#f5dfb3}.product-art-3{background:#f9e9c8}
.about-section{background:#111}.about-visual{background:#24201b}
.direct-contact{background:#ffb200;color:#111}
.highlight::after{background:#ffb200}
.whatsapp-float{background:#23c063}
@media (max-width:760px){.brand-name strong{font-size:14px}.brand-mark{width:43px;height:43px}}


/* MADE 3D STUDIO — DARK TECH EDITION */
:root{--ink:#f5f5f2;--ink-2:#deded7;--accent:#ffb200;--accent-dark:#ffc846;--paper:#0b0c0e;--white:#ffffff;--muted:#a5a7ad;--line:#303238;--soft:#1a1a1b;--shadow:0 24px 70px rgba(0,0,0,.38)}
body{background:var(--paper);color:#f5f5f2}
.announcement{background:#050506;color:#ffca4f;border-bottom:1px solid #26211a}
.site-header{background:rgba(10,11,13,.94);border-bottom:1px solid #2a2b30}
.brand-name strong{color:#fff}.brand-name small{color:#ffb200}
.site-nav>a{color:#e3e4e7}.site-nav>a:hover{color:#ffb200}
.site-nav .nav-cta,.button-dark{background:#ffb200;color:#101010}
.site-nav .nav-cta:hover,.button-dark:hover{background:#ffd05a;color:#101010}
.button-dark span:last-child{color:#101010}
.hero{background:radial-gradient(ellipse at 72% 22%,rgba(255,178,0,.12),transparent 44%),linear-gradient(150deg,#101114 0%,#090a0c 70%)}
.eyebrow,.sparkle,.section-kicker,.panel-kicker{color:#ffb200}
.highlight{color:#ffb200}.highlight::after{height:7%;bottom:0;background:rgba(255,178,0,.26)}
.hero-intro,.heading-split>p,.service-card p,.product-text p,.panel-desc{color:#aeb0b8}
.hero-footnote,.step small,.product-text>span,.service-index,.direct-label{color:#ffc348}
.button-outline{color:#f6f6f6;border-color:#66686e}.button-outline:hover{background:#22242a}
.hero-visual{border:1px solid #34312b;background:#141518;box-shadow:0 28px 80px #0009}
.steps-strip,.step:not(:last-child){border-color:#303036}.step-no{color:#ffb200}
.services-section{background:#111216}.service-card{background:linear-gradient(160deg,#202126,#16171a);border-color:#33343b}.service-card:hover{box-shadow:0 14px 36px #0008;border-color:#9a7326}
.service-icon{background:#302614;color:#ffb200}.service-card h3,.product-text h3{color:#f5f5f5}.text-link{border-bottom-color:#ffb200}.text-link:hover{color:#ffb200}
.products-section{background:#0b0c0e}.product-art-1,.product-art-2,.product-art-3{background:radial-gradient(circle at 50% 40%,#3b3325,#1b1c20 74%)}
.product-art:before{border-color:#705721}.product-art-index,.product-art-label{color:#ffca57}
.about-section{background:#141518}.about-visual{background:#1d1e21}
.contact-section{background:linear-gradient(180deg,#111216,#090a0b)}
.form-panel,.quote-panel{background:#1b1c20;border:1px solid #37383d}
.panel-icon{background:#ffb200;color:#101010}.panel-icon-outline{background:#332a19;color:#ffb200}
form input:not([type=checkbox]):not([type=file]),form textarea,form select{background:#101115;border-color:#44464e;color:#f8f8f8;color-scheme:dark}
form input:not([type=checkbox]):not([type=file])::placeholder,form textarea::placeholder{color:#94969f}
.upload-zone{background:#121317;border-color:#bd8b19;color:#f7f7f7}.upload-zone:hover,.upload-zone.is-dragging,.upload-zone.has-file{background:#242015;border-color:#ffb200}
.upload-symbol{background:#ffb200;color:#101010}.upload-zone small,.file-selected,.optional,.consent,.setup-note{color:#b5b6bb}
.consent button{color:#ffcb59}.consent input{accent-color:#ffb200}
.direct-contact{background:#ffb200;color:#0b0b0b}.direct-contact h3 span,.direct-label{color:#4f3900}.whatsapp-direct{border-bottom-color:#664a06}
.site-footer{background:#050506;border-top:1px solid #292a2d}.footer-top{border-bottom-color:#2a2b2f}.footer-brand .brand-name small,.footer-bottom{color:#ffc34b}.footer-top p{color:#b0b0b4}.back-top{border-color:#795e26}.footer-privacy{color:#dadada}
.privacy-dialog{background:#1a1b1e;color:#f7f7f7}.privacy-content p{color:#c0c0c4}
.whatsapp-float{background:#25d366;color:#08150d}
:focus-visible{outline-color:#ffb200}
@media(max-width:900px){.site-nav{background:#17181c;border-color:#38393f}.site-nav>a{color:#f5f5f5}.nav-toggle{color:#f5f5f5}}


/* Made 3D Studio — lightweight motion layer */
@keyframes madeHeroEnter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes madeFloat{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(0,-13px,0) rotate(1deg)}}
@keyframes madePulse{0%,100%{opacity:.33;transform:translate(-50%,-50%) scale(.93)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes madeScan{0%{transform:translateY(-120%);opacity:0}15%{opacity:.45}85%{opacity:.45}100%{transform:translateY(470%);opacity:0}}
@keyframes madeBlink{0%,100%{opacity:1}50%{opacity:.35}}
.hero-copy>.eyebrow{animation:madeHeroEnter .65s both}
.hero-copy>h1{animation:madeHeroEnter .8s .11s both}
.hero-copy>.hero-intro{animation:madeHeroEnter .8s .2s both}
.hero-copy>.hero-actions{animation:madeHeroEnter .8s .3s both}
.hero-copy>.hero-footnote{animation:madeHeroEnter .8s .38s both}
.hero-visual{animation:madeHeroEnter .9s .18s both;--pointer-x:50%;--pointer-y:50%}
.hero-object{animation:madeFloat 7s ease-in-out infinite;will-change:transform}
.hero-visual:after{animation:madePulse 7s ease-in-out infinite}
.hero-visual .green-spark{animation:madeBlink 2.4s ease-in-out infinite}
.hero-visual .visual-tag{transition:transform .4s ease,border-color .3s ease}
.hero-visual:hover .visual-tag-a{transform:translateY(-6px)}
.hero-visual:hover .visual-tag-b{transform:translateY(6px)}
.hero-visual .motion-scan{position:absolute;pointer-events:none;inset:0;overflow:hidden;z-index:2}
.hero-visual .motion-scan:before{content:"";position:absolute;left:5%;right:5%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,178,0,.7),transparent);box-shadow:0 0 22px 2px rgba(255,178,0,.22);animation:madeScan 9s linear infinite}
.motion-enabled .motion-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--motion-delay,0ms)}
.motion-enabled .motion-reveal.is-visible{opacity:1;transform:translateY(0)}
.service-card,.product-card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
@media(hover:hover) and (pointer:fine){.service-card:hover,.product-card:hover{transform:translateY(-7px)}.product-card:hover .product-art img{transform:scale(1.065) rotate(-2deg)}.hero-visual{background-image:radial-gradient(350px circle at var(--pointer-x) var(--pointer-y),rgba(255,178,0,.12),transparent 75%)}}
.product-art img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.button:active,.nav-cta:active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){.hero-copy>*,.hero-visual,.hero-object,.hero-visual:after,.hero-visual .green-spark,.hero-visual .motion-scan:before{animation:none!important}.motion-enabled .motion-reveal{opacity:1!important;transform:none!important;transition:none!important}.service-card,.product-card,.product-art img{transition:none!important}}


/* Gallery — fotografia reale e slider leggero */
.products-section{background:#101010!important;color:#f6f5f0!important}
.products-section .section-heading>p{color:#b7b7b7!important}
.product-card{background:#1b1b1b;border:1px solid #343434;border-radius:16px;overflow:hidden}
.product-art,.product-art-1,.product-art-2,.product-art-3{background:#171717!important;height:300px!important;border-radius:0!important;display:block!important}
.product-art:before{pointer-events:none;z-index:2;border-color:rgba(255,178,0,.27)!important}
.carousel-images{position:absolute;inset:0}
.carousel-image{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;opacity:0;transform:scale(1.035);filter:none!important;transition:opacity .75s ease,transform 4.5s ease;pointer-events:none}
.carousel-image.is-active{opacity:1;transform:scale(1);z-index:1}
.product-card:hover .carousel-image{transform:scale(1)!important}
.product-art-index,.product-art-label{z-index:3!important;color:#ffbb20!important;text-shadow:0 1px 9px #000}
.product-art-index{background:rgba(0,0,0,.70);padding:5px 8px;border-radius:6px}
.product-art-label{background:rgba(0,0,0,.75);padding:6px 9px;border-radius:6px;max-width:68%;text-align:right}
.carousel-arrows{position:absolute;top:50%;left:13px;right:13px;z-index:4;display:flex;justify-content:space-between;transform:translateY(-50%)}
.carousel-arrows button{height:40px;width:40px;display:grid;place-items:center;border:1px solid rgba(255,178,0,.5);background:rgba(10,10,10,.78);color:#ffb200;border-radius:50%;font-size:21px;transition:background .2s,color .2s}
.carousel-arrows button:hover{background:#ffb200;color:#090909}
.product-text{padding:22px!important}
.product-text h3{color:white!important}
.product-text p{color:#bcbcbc!important}
.carousel-dots{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}
.carousel-dot{height:8px;width:8px;border:none;border-radius:100px;background:#656565;padding:0;transition:width .25s,background .25s}
.carousel-dot.is-active{background:#ffb200;width:25px}
.gallery-disclaimer{font-size:12px;color:#aaa;margin-top:23px;line-height:1.6}
@media(max-width:950px){.product-art{height:260px!important}}
@media(max-width:660px){.product-art{height:315px!important}.carousel-arrows button{height:44px;width:44px}}
@media(prefers-reduced-motion:reduce){.carousel-image,.carousel-dot{transition:none!important}}

/* FIX GALLERIA v2: tutti gli elementi confinati nella cornice. */
.products-grid > .product-carousel { min-width:0; overflow:hidden; }
.product-carousel .product-art {
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:300px!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
  border-radius:12px 12px 0 0!important;
}
.product-carousel .carousel-images {
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  overflow:hidden!important;
  z-index:0;
}
.product-carousel .carousel-images > img.carousel-image {
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  opacity:0;
  visibility:hidden;
  transform:none!important;
  filter:none!important;
  transition:opacity .45s ease, visibility .45s ease!important;
}
.product-carousel .carousel-images > img.carousel-image.is-active {
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.product-carousel:hover .carousel-images > img.carousel-image {transform:none!important;}
.product-carousel .product-art-index,.product-carousel .product-art-label {position:absolute!important;}
.product-carousel .carousel-arrows {width:auto!important;}
@media(max-width:950px){.product-carousel .product-art{height:260px!important}}
@media(max-width:660px){.product-carousel .product-art{height:315px!important}}
@media(prefers-reduced-motion:reduce){.product-carousel .carousel-images > img.carousel-image{transition:none!important}}

/* Gallery v3 — full bleed across the entire photo panel */
.product-carousel .carousel-images > img.carousel-image{object-fit:cover!important; object-position:center center!important; }
.product-carousel .product-art:before{z-index:3!important;pointer-events:none;}
.product-carousel .carousel-images{background:#111!important;}
.product-carousel .gallery-load-error{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:46px;text-align:center;color:#f6c46c;font-size:13px;line-height:1.6;}
.product-carousel .carousel-images.has-image-error .gallery-load-error{display:flex;}
.product-carousel .carousel-images.has-image-error > img.carousel-image{display:none!important;}

/* Floating return-to-top, stacked directly above the WhatsApp button. */
.scroll-to-top{position:fixed;right:23px;bottom:90px;z-index:22;display:grid;place-items:center;width:51px;height:51px;padding:0;border:1px solid #ffb200;border-radius:50%;background:#141414;color:#ffb200;box-shadow:0 7px 24px #0008;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .25s ease, transform .25s ease, visibility .25s ease, background .2s ease;}
.scroll-to-top svg{width:23px;height:23px;}
.scroll-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.scroll-to-top:hover{background:#ffb200;color:#111;}
.scroll-to-top:focus-visible{outline:3px solid #fff;outline-offset:3px;}
@media(max-width:660px){.scroll-to-top{right:13px;bottom:80px;width:49px;height:49px;}}
@media(prefers-reduced-motion:reduce){.scroll-to-top{transition:none;}}

/* Anteprima STL: stessa estetica delle schede Dark Tech */
.stl-preview{margin:16px 0 20px;border:1px solid #bb8600;border-radius:15px;background:#101113;padding:14px;color:#f5f5f5}
.stl-preview[hidden]{display:none}
.preview-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;margin-bottom:10px}
.preview-head strong{color:#ffb200}.preview-head span{color:#a6a6aa}
#stl-canvas{display:block;width:100%;height:auto;aspect-ratio:12/7;border-radius:9px;background:radial-gradient(ellipse at center,#202024 0%,#101113 72%);touch-action:none;cursor:grab}
#stl-canvas:active{cursor:grabbing}.preview-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0 6px}
.preview-actions button{border:1px solid #b98505;background:#161616;color:#ffcc4d;padding:10px 12px;cursor:pointer;border-radius:9px;min-height:42px}
.preview-actions button:hover,.preview-actions button:focus-visible{background:#473608}
.preview-hint{font-size:12px;line-height:1.6;color:#bdbdbd;margin:6px 0 0}

/* Numero di telefono cliccabile: stessa linea WhatsApp */
.direct-contact-actions{display:flex;flex-wrap:wrap;align-items:center;column-gap:24px;row-gap:12px;margin-top:18px}
.direct-contact-actions .whatsapp-direct{margin-top:0;min-height:44px;align-items:center}
.call-direct{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;border-radius:8px;padding:10px 14px;background:#151515;color:#ffbf21;font-size:13px;font-weight:850;text-decoration:none;transition:background .2s,transform .2s}
.call-direct:hover{background:#333;transform:translateY(-2px)}
.call-direct:focus-visible,.footer-phone:focus-visible{outline:3px solid #171717;outline-offset:3px}
.phone-caption{margin-top:14px;font-size:12px;line-height:1.6;font-weight:650;color:#433007}
.footer-phone{display:inline-flex;align-items:center;gap:6px;margin-right:16px;text-decoration:none}
.footer-phone:hover{text-decoration:underline}
@media(max-width:660px){.direct-contact-actions{gap:9px 18px}.footer-phone{margin-bottom:9px}}
@media(prefers-reduced-motion:reduce){.call-direct{transition:none}}

.captcha-slot {min-height:66px; margin:16px 0;}

/* Pagina contatti dedicata e invito compatto in homepage */
.contact-page-intro{padding:58px 0 18px;background:linear-gradient(160deg,#16171a,#101115);color:#f6f6f6}
.contact-page-intro .container{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.contact-page-intro h1{font-size:clamp(39px,6vw,76px);font-weight:850;letter-spacing:-.055em;line-height:1.05;margin:0}
.contact-page-intro h1 em,.contact-cta-section h2 em{color:#ffb200;font-style:normal}
.contact-page-intro p{max-width:620px;line-height:1.7;color:#bebec2;margin:0}
.contact-back{display:inline-flex;color:#ffcc61;font-size:13px;text-decoration:none;margin-bottom:17px}
.contact-back:hover{text-decoration:underline}
.contact-page .contact-section{padding-top:55px}
.contact-cta-section{background:linear-gradient(115deg,#191a1d,#0b0c0e);border-top:1px solid #35363b;padding:72px 0}
.contact-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.contact-cta-section h2{color:#fafafa;font-size:clamp(32px,4vw,54px);letter-spacing:-.055em;margin:14px 0 14px;line-height:1.12}
.contact-cta-section p{color:#bec0c7;font-size:15px;line-height:1.75;max-width:600px}
.contact-cta-actions{display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0}
.contact-cta-actions .button{white-space:nowrap}
@media(max-width:850px){.contact-cta-inner{flex-direction:column;align-items:stretch;gap:24px}.contact-cta-actions{width:100%}}
@media(max-width:520px){.contact-cta-section{padding:52px 0}.contact-cta-actions{flex-direction:column}.contact-cta-actions .button{width:100%;justify-content:space-between}.contact-page-intro{padding:34px 0 6px}.contact-page .contact-section{padding-top:35px}}

/* Social e recensioni: moduli responsive e caricamento su richiesta */
.social-section{background:#101114}.social-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.social-heading h2,.reviews-intro h1{font-size:clamp(2.4rem,6vw,5.5rem);line-height:1.06;margin:14px 0}.social-heading em,.reviews-intro em{color:#ffb400;font-style:normal}.social-heading p,.reviews-intro p{color:#a8a9ae;max-width:650px}.social-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.social-preview,.reviews-panel{min-width:0;background:#1a1b1d;border:1px solid #37383a;border-radius:23px;padding:clamp(23px,4vw,42px);overflow:hidden}.social-icon{color:#ffb400;font-size:32px;display:block;margin-bottom:15px}.social-preview h3{font-size:clamp(1.7rem,3vw,2.8rem);margin:12px 0}.social-preview p,.reviews-bottom p{color:#b8b8be}.review-preview{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.review-preview .button{margin-top:16px}.thirdparty-embed{min-width:0;margin-top:22px;padding:22px;border:1px solid #44464a;border-radius:16px;background:#111215;overflow:hidden}.thirdparty-embed .button{margin:8px 0}.embed-explainer,.embed-note{color:#b5b6bb;font-size:.95rem}.embed-note{font-size:.8rem}.reviews-page{padding-top:95px;padding-bottom:100px}.reviews-intro{max-width:880px}.review-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 55px}.reviews-panel{margin:20px 0 45px}.reviews-panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.reviews-panel-title h2{font-size:clamp(1.4rem,3vw,2rem)}.reviews-stars{color:#ffb400;letter-spacing:2px;white-space:nowrap;font-size:20px}.reviews-bottom{max-width:680px;margin:auto;text-align:center}.reviews-bottom h2{font-size:clamp(1.7rem,3vw,2.4rem)}.reviews-bottom .button{margin-top:10px}.footer-bottom a[href="/dicono-di-noi.html"]{color:inherit;margin-right:15px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.social-heading{align-items:flex-start;flex-direction:column}.social-grid{grid-template-columns:1fr}.reviews-page{padding-top:55px}.review-actions{margin-bottom:35px}.reviews-panel-title{align-items:flex-start;flex-direction:column}.thirdparty-embed{padding:16px}}

/* Galleria social a tutta larghezza e widget visibili automaticamente */
.social-section .social-fullfeed{width:100%;min-width:0}
.social-section .social-heading{margin-bottom:26px}
.social-feed-embed{margin:0;padding:0;border:0;background:transparent;border-radius:0;min-height:340px;overflow:visible}
.social-feed-embed>div[class^="elfsight-app-"]{width:100%;min-width:0}
.reviews-panel .thirdparty-embed{padding:0;border:0;background:transparent;min-height:280px;overflow:visible}
.widget-placeholder{color:#c6c6c8;padding:24px 0;font-size:1rem}
@media(max-width:760px){.social-feed-embed{min-height:280px}.social-section .social-heading{gap:15px}}

/* Invito a lasciare una recensione */
.reviews-bottom{max-width:760px;margin:55px auto 0;padding:34px 24px;border:1px solid #3b3525;border-radius:22px;background:linear-gradient(135deg,#1b1a17,#101114);text-align:center}
.reviews-bottom h2{color:#fff;font-size:clamp(1.8rem,3.6vw,2.8rem);margin:0 0 12px}
.reviews-bottom h2 em{color:#ffb400;font-style:normal}
.reviews-bottom p{max-width:570px;margin:0 auto 24px;line-height:1.65;color:#d2d2d5}
.reviews-bottom .button{margin:0}
/* Contrasto per gli elementi Instagram accessibili al CSS della pagina.
   Se Elfsight usa iframe/shadow DOM, il tema va configurato su Elfsight. */
.social-feed-embed{color:#fff;color-scheme:dark}
.social-feed-embed :is(a,span,p,h1,h2,h3,h4,strong,small){color:#f8f8f8}
.social-feed-embed :is(a,button){color:inherit}
@media(max-width:520px){.reviews-bottom{padding:28px 18px}}

/* Made 3D Studio — rifiniture mobile per Instagram e Dicono di noi.
   Il contenuto degli iframe Elfsight segue il tema/layout scelto in Elfsight. */
.social-fullfeed,.social-feed-embed,.reviews-panel,.reviews-panel .thirdparty-embed{max-width:100%;min-width:0;box-sizing:border-box}
.social-feed-embed iframe,.reviews-panel iframe{max-width:100%;border:0}
@media (max-width: 760px){
  .social-section{padding-top:56px;padding-bottom:62px}
  .social-section .social-heading{gap:22px;margin-bottom:20px}
  .social-heading h2{font-size:clamp(2.1rem,9vw,3.6rem);line-height:1.08;overflow-wrap:break-word}
  .social-heading p{font-size:15px;line-height:1.7;margin:12px 0 0}
  .social-heading>.button{width:100%;min-height:48px;justify-content:center;text-align:center}
  .social-fullfeed{margin-inline:0}
  .social-feed-embed{width:100%;padding:0;margin:0;min-height:250px;overflow:hidden;border-radius:12px}
  .social-feed-embed>div[class^="elfsight-app-"]{width:100%;min-width:0;max-width:100%}
  .reviews-page{padding-top:55px;padding-bottom:65px}
  .reviews-intro h1{font-size:clamp(2.3rem,10vw,3.8rem);line-height:1.08}
  .reviews-intro p{line-height:1.7;font-size:15px}
  .review-actions{display:grid;grid-template-columns:1fr;gap:12px;margin:25px 0 29px}
  .review-actions .button{width:100%;min-height:48px;justify-content:center;text-align:center;white-space:normal}
  .reviews-panel{padding:18px 14px;border-radius:17px;margin:0 0 30px;max-width:100%}
  .reviews-panel-title{gap:8px}
  .reviews-panel-title h2{font-size:clamp(1.25rem,5vw,1.65rem);line-height:1.22;margin:7px 0 0}
  .reviews-stars{letter-spacing:1px;font-size:18px}
  .reviews-panel .thirdparty-embed{width:100%;padding:0;margin-top:18px;overflow:hidden;min-height:200px}
  .reviews-bottom{margin:34px auto 0;padding:28px 17px;border-radius:17px}
  .reviews-bottom h2{font-size:clamp(1.65rem,7vw,2.2rem)}
  .reviews-bottom p{font-size:14px;line-height:1.7}
  .reviews-bottom .button{width:100%;min-height:48px;white-space:normal;justify-content:center;text-align:center}
}
@media (max-width: 380px){
 .reviews-panel{padding:14px 10px}
 .reviews-bottom{padding:25px 14px}
 .social-feed-embed{border-radius:8px}
}

/* Brand semplificato: footer solo nome Made 3D Studio */
.footer-brand{font-size:clamp(20px,2.7vw,27px);font-weight:900;letter-spacing:-.04em;color:#fff}
.footer-brand:hover{color:#ffb200}

/* Ottimizzazioni responsive comuni a tutte le pagine — 2026-10 */
html{overflow-x:clip}
body{min-width:0}
.container,.header-inner,.hero-grid>*,.about-grid>*,.contact-grid>*,.products-grid>*,.services-grid>*{min-width:0}
button,a,input,textarea,select{touch-action:manipulation}
input,textarea,select{max-width:100%}
:where(.form-panel,.message-panel,.direct-contact,.reviews-panel){overflow-wrap:anywhere}
@media(max-width:660px){
  .container{width:calc(100% - 32px)}
  .site-nav{max-height:calc(100vh - 70px);overflow-y:auto;overscroll-behavior:contain}
  .header-inner{gap:10px}
  .brand-name strong{font-size:clamp(12px,3.8vw,15px)}
  .hero h1{font-size:clamp(40px,11.9vw,64px);overflow-wrap:normal}
  .hero-visual{height:clamp(285px,90vw,395px)}
  .contact-page-intro h1{font-size:clamp(36px,10vw,56px)}
  .fields-grid>*,.contact-grid>*,.contact-side>*{min-width:0}
  .form-panel,.message-panel{max-width:100%}
  input[type=file]{max-width:100%}
  .direct-contact-actions>a{min-height:44px}
  .footer-bottom{overflow-wrap:anywhere}
}
@media(max-width:375px){
  .container{width:calc(100% - 26px)}
  .hero h1{font-size:clamp(35px,11.8vw,45px)}
  .product-art{height:250px}
  .form-panel,.message-panel{padding:20px 14px}
  .reviews-panel{padding:14px 10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Sezione Cosa realizziamo: due gallerie, con focus sulle applicazioni tecniche */
.products-section .products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.products-section .product-art{height:375px!important}
.products-section .product-text h3{font-size:clamp(21px,2.3vw,28px)}
.products-section .gallery-disclaimer a{color:#ffb200;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.products-section .products-grid{grid-template-columns:minmax(0,1fr)}.products-section .product-art{height:320px!important}}
@media(max-width:390px){.products-section .product-art{height:265px!important}}

/* Una sola galleria tecnica, con fotografie in evidenza */
.products-section .products-grid{grid-template-columns:minmax(0,1fr)!important;max-width:1100px;margin-inline:auto}
.products-section .technical-showcase{width:100%}
.products-section .technical-showcase .product-art{height:clamp(320px,47vw,530px)!important}
.products-section .technical-showcase .product-text{padding:25px 30px 28px!important}
.products-section .technical-showcase .product-text h3{font-size:clamp(24px,3vw,36px)}
.products-section .technical-showcase .product-text p{max-width:800px}
@media(max-width:660px){.products-section .technical-showcase .product-art{height:300px!important}.products-section .technical-showcase .product-text{padding:20px!important}}

/* Scansione 3D: servizio in evidenza e griglia responsive */
@media(min-width:661px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.service-card-scanner{border-color:rgba(255,178,0,.65);background:linear-gradient(150deg,#282217,#17181b 64%)}
.service-card-scanner .service-index{color:#ffb200}
.service-card-scanner .service-icon{background:#493717}
.service-card-scanner p{max-width:520px}
/* Hero: vero modello 3D interattivo e degradazione elegante a immagine SVG. */
.hero-model-stage{position:absolute;inset:55px 0 58px;z-index:2;overflow:hidden;touch-action:pan-y;}
.hero-model-stage .hero-3d-fallback{pointer-events:none;}
.hero-model-stage.has-real-3d .hero-3d-fallback{opacity:0;visibility:hidden;}
.hero-3d-canvas{display:block;width:100%;height:100%;position:absolute;inset:0;cursor:grab;touch-action:pan-y;}
.hero-3d-canvas:active{cursor:grabbing;touch-action:none;}
.hero-model-controls{position:absolute;bottom:57px;left:50%;transform:translateX(-50%);z-index:8;display:flex;align-items:center;gap:8px;white-space:nowrap;padding:6px 10px;border-radius:99px;background:#0b0c0ecf;border:1px solid #9c741c8a;color:#ffce6a;font-size:9px;font-weight:750;letter-spacing:.07em;}
.hero-model-controls button{border:1px solid #6f571f;color:#ffb200;background:#151617;width:34px;height:32px;border-radius:7px;font-size:19px;cursor:pointer;}
.hero-model-controls button:hover,.hero-model-controls button:focus-visible{background:#ffb200;color:#111;outline-offset:2px;}
.hero-visual .visual-tag{pointer-events:none;}
.hero-model-stage.has-real-3d+.hero-model-controls{opacity:1;}
@media(max-width:660px){.hero-model-stage{inset:42px 0 51px}.hero-model-controls{bottom:49px;font-size:8px}.hero-model-controls button{width:32px;height:32px}.visual-tag-a{top:42%}.visual-tag-b{bottom:26%}}

/* Chi siamo — scanner 3D interattivo, senza librerie extra */
.scan-showcase{display:flex;flex-direction:column;min-height:520px;padding:25px 23px 20px;background:radial-gradient(ellipse at 54% 45%,#30281b 0,#191b1e 66%)!important;border:1px solid rgba(255,178,0,.2)}
.scan-showcase:before{opacity:.55}.scan-showcase:after{display:none}
.scan-top{position:relative;z-index:3;display:flex;justify-content:space-between;gap:12px;color:#eedbbb;font-size:9px;font-weight:800;letter-spacing:.12em}
.scan-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px;background:#ffb200;box-shadow:0 0 12px rgba(255,178,0,.65)}
.scan-stage{position:relative;z-index:2;flex:1;min-height:275px;display:grid;place-items:center;overflow:hidden}
.scan-stage:before{content:"";position:absolute;width:min(82%,350px);aspect-ratio:1;border:1px solid rgba(255,178,0,.22);border-radius:50%;box-shadow:0 0 0 54px rgba(255,178,0,.025),0 0 0 105px rgba(255,178,0,.019)}
.scan-object{position:relative;z-index:1;display:block;width:min(92%,425px);height:100%;max-height:350px;filter:drop-shadow(0 18px 28px rgba(0,0,0,.4))}
.scan-part{transform-origin:220px 205px;animation:scan-float 7s ease-in-out infinite}
.scan-mesh{opacity:0;transition:opacity .65s}
.scan-showcase[data-phase="1"] .scan-mesh{opacity:.95}
.scan-showcase[data-phase="1"] .scan-part{filter:brightness(1.12) saturate(.6)}
.scan-showcase[data-phase="2"] .scan-part{filter:brightness(1.25) saturate(1.22)}
.scan-sweep{position:absolute;z-index:2;top:8%;bottom:10%;left:14%;width:3px;pointer-events:none;background:#ffd46a;box-shadow:0 0 14px 4px rgba(255,178,0,.25);animation:scan-travel 5s ease-in-out infinite alternate}
.scan-beam{display:none}
.scan-showcase[data-phase="1"] .scan-sweep,.scan-showcase[data-phase="2"] .scan-sweep{opacity:0}
.scan-stage-label{position:absolute;z-index:3;bottom:2px;left:3px;font-size:9px;font-weight:750;letter-spacing:.10em;color:#ded0b6}
.scan-stage-label strong{color:#ffbd32;margin-left:8px}
.scan-info{position:relative;z-index:3;min-height:91px;padding:12px 0 6px;border-top:1px solid rgba(255,178,0,.23)}
.scan-phase-number{font-size:10px;font-weight:800;color:#ffb200;letter-spacing:.18em;margin-right:10px}
.scan-phase-title{color:#fff;font-size:20px}
.scan-phase-description{margin:8px 0 0;color:#c8c6c0;font-size:12px;line-height:1.5}
.scan-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;position:relative;z-index:3}
.scan-step{min-width:0;min-height:42px;padding:9px 5px;border:1px solid #55504a;color:#e4ddd1;background:rgba(11,12,14,.8);border-radius:7px;font-size:10px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.scan-step.is-active{background:#ffb200;color:#161616;border-color:#ffb200;font-weight:800}
.scan-step:focus-visible{outline:2px solid white;outline-offset:3px}
@keyframes scan-float{50%{transform:translateY(-7px) rotate(1.5deg)}}
@keyframes scan-travel{from{left:16%}to{left:81%}}
.scan-showcase.is-paused .scan-part,.scan-showcase.is-paused .scan-sweep{animation-play-state:paused}
@media(max-width:660px){.scan-showcase{min-height:475px;padding:19px 15px 17px}.scan-stage{min-height:255px}.scan-top{font-size:8px}.scan-phase-title{font-size:18px}.scan-step{font-size:9px}}
@media(prefers-reduced-motion:reduce){.scan-part,.scan-sweep{animation:none!important}.scan-sweep{left:48%;opacity:.6}}

/* Chi siamo: solo scansione continua, senza selettore di fasi */
.scan-showcase{min-height:420px}
.scan-stage{min-height:330px}
@media(max-width:660px){.scan-showcase{min-height:365px}.scan-stage{min-height:295px}}

/* Made 3D Studio — leggibilità migliorata: homepage, servizi e percorso (ottobre 2026) */
.hero .hero-actions .button{font-size:clamp(14px,1.05vw,16px);min-height:58px;padding-inline:22px;gap:18px}
.hero .hero-footnote{font-size:clamp(11px,.92vw,13px);line-height:1.55;letter-spacing:.095em}
.hero .steps-strip{margin-top:64px}
.hero .step{gap:19px;padding:32px 24px 33px;min-width:0}
.hero .step:first-child{padding-left:8px}
.hero .step-no{font-size:clamp(27px,2.65vw,36px);white-space:nowrap;flex-shrink:0}
.hero .step strong{font-size:clamp(16px,1.18vw,19px);line-height:1.4;margin-bottom:5px}
.hero .step small{font-size:clamp(14px,1.05vw,16px);line-height:1.55}
.services-section .service-card p{font-size:clamp(15px,1.12vw,17px);line-height:1.75;max-width:unset}
.services-section .service-card .text-link{font-size:clamp(14px,1vw,16px);line-height:1.35}
.products-section .product-text p{font-size:clamp(15px,1.12vw,17px);line-height:1.75}
@media(max-width:900px) and (min-width:661px){
  .hero .step{padding:25px 12px;gap:11px}
  .hero .step:first-child{padding-left:2px}
  .hero .step-no{font-size:26px}
  .hero .step strong{font-size:15px}
  .hero .step small{font-size:13px}
}
@media(max-width:660px){
  .hero .hero-actions .button{font-size:15px;min-height:55px;padding-inline:18px}
  .hero .hero-footnote{font-size:11px;margin-top:28px}
  .hero .steps-strip{margin-top:35px;padding-block:4px}
  .hero .step,.hero .step:first-child{padding:20px 6px;gap:17px}
  .hero .step-no{font-size:30px;min-width:58px}
  .hero .step strong{font-size:17px;margin-bottom:5px}
  .hero .step small{font-size:14px;line-height:1.5}
  .services-section .service-card p,.products-section .product-text p{font-size:16px;line-height:1.7}
  .services-section .service-card .text-link{font-size:15px}
}
@media(max-width:355px){.hero .hero-actions .button{font-size:14px}.hero .step-no{font-size:27px;min-width:54px}}

/* Made 3D Studio — maggior leggibilità footer (desktop e mobile). */
.site-footer .footer-top { padding-top: 42px; padding-bottom: 35px; }
.site-footer .footer-brand strong { font-size: clamp(24px, 2.2vw, 32px); line-height: 1.2; letter-spacing: -.025em; }
.site-footer .footer-bottom { font-size: 14px; line-height: 1.55; min-height: 98px; gap: 22px; }
.site-footer .footer-bottom > div { display: flex; align-items: center; flex-wrap: wrap; column-gap: 25px; row-gap: 15px; }
.site-footer .footer-bottom a, .site-footer .footer-bottom button { font-size: 14px; line-height: 1.5; font-weight: 650; }
.site-footer .footer-privacy { padding: 8px 0; }
@media (max-width: 660px) {
 .site-footer .footer-top { padding-top: 32px; padding-bottom: 27px; }
 .site-footer .footer-brand strong { font-size: 25px; }
 .site-footer .footer-bottom { font-size: 13px; align-items: flex-start; gap: 18px; padding: 26px 0 32px; }
 .site-footer .footer-bottom > div { gap: 12px 20px; }
 .site-footer .footer-bottom a, .site-footer .footer-bottom button { font-size: 13px; }
}

/* Made 3D Studio — Chi siamo: testi e pulsante leggibili, in linea con gli altri blocchi. */
.about-section .about-copy p {
  font-size: clamp(16px, 1.2vw, 18px);
  line-height: 1.8;
  color: #ddd9d1;
  max-width: 620px;
}
.about-section .about-copy p + p { margin-top: 19px; }
.about-section .about-copy .button-light {
  font-size: clamp(15px, 1.05vw, 17px);
  font-weight: 800;
  min-height: 58px;
  padding: 16px 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
}
@media (max-width: 660px) {
  .about-section .about-copy p { font-size: 16px; line-height: 1.75; }
  .about-section .about-copy p + p { margin-top: 17px; }
  .about-section .about-copy .button-light { font-size: 16px; min-height: 56px; padding: 15px 23px; }
}

/* Made 3D Studio — titolo Chi siamo: stessa gerarchia visiva della hero. */
.about-section .about-copy h2 {
  font-size: clamp(48px, 5.1vw, 76px);
  line-height: .99;
  letter-spacing: -.075em;
  font-weight: 900;
  overflow-wrap: normal;
}
@media (max-width: 950px) {
  .about-section .about-copy h2 { font-size: clamp(38px, 5.5vw, 64px); }
}
@media (max-width: 660px) {
  .about-section .about-copy h2 {
    font-size: clamp(40px, 11.9vw, 64px);
    line-height: .99;
    letter-spacing: -.075em;
  }
}
@media (max-width: 355px) {
  .about-section .about-copy h2 { font-size: clamp(36px, 11.5vw, 42px); }
}


/* Coerenza visuale: Chi siamo con la stessa tipografia/colori/bottone della hero. */
.about-section .about-copy h2 {
  font-family: var(--heading-font);
  font-weight: 900;
  font-style: normal;
  letter-spacing: -.075em;
  line-height: .99;
  color: #fff;
  text-wrap: balance;
}
.about-section .about-copy h2 em {
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
  letter-spacing: inherit;
  color: #ffb200;
  position: relative;
  display: inline;
}
.about-section .about-copy h2 em::after {
  content: '';
  position: absolute;
  height: 7%;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255,178,0,.26);
}
.about-section .about-copy .button-light {
  font-family: var(--body-font);
  font-weight: 800;
  letter-spacing: -.015em;
  font-size: clamp(14px,1.05vw,16px);
  min-height: 58px;
  padding: 0 22px;
  gap: 18px;
  border-radius: 8px;
  background: #ffb200;
  color: #101010;
  border: 1px solid transparent;
  justify-content: space-between;
}
.about-section .about-copy .button-light:hover { background: #ffd05a; color: #101010; }
.about-section .about-copy .button-light span:last-child { color: #101010; font-size: 19px; }
@media (max-width:660px) {
 .about-section .about-copy .button-light {font-size: 15px; min-height: 55px; padding: 0 18px;}
}


/* CHI SIAMO — proporzioni coerenti con la HERO, adattate alla colonna più stretta.
   Evitare regole duplicate sul titolo: questo è l'unico blocco finale. */
.about-section .about-copy {min-width:0;}
.about-section .about-copy h2 {
  font-family:var(--heading-font);
  font-weight:900;
  font-style:normal;
  font-size:clamp(38px,3.8vw,54px);
  line-height:1.04;
  letter-spacing:-.075em;
  color:#fff;
  max-width:100%;
  overflow-wrap:normal;
  text-wrap:initial;
}
.about-section .about-copy h2 .highlight {
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  font-style:normal;
  letter-spacing:inherit;
  line-height:inherit;
  color:#ffb200;
  position:relative;
  white-space:normal;
  z-index:1;
}
.about-section .about-copy h2 .highlight::after {
  content:"";
  position:absolute;
  left:-1%;width:102%;bottom:1px;height:7%;
  background:rgba(255,178,0,.26);
  transform:skew(-6deg);z-index:-1;
}
.about-section .about-copy .button-dark {
  font-family:var(--body-font);
  font-size:16px;
  font-weight:800;
  letter-spacing:-.015em;
  background:#ffb200;
  color:#101010;
  border:1px solid transparent;
  border-radius:8px;
  min-height:58px;
  padding:0 22px;
  margin-top:32px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.about-section .about-copy .button-dark span:last-child {color:#101010;font-size:19px;}
.about-section .about-copy .button-dark:hover {background:#ffd05a;color:#101010;}
@media (max-width:950px) and (min-width:661px) {
  .about-section .about-copy h2 {font-size:clamp(32px,4.3vw,43px);}
}
@media (max-width:660px) {
  .about-section .about-copy h2 {font-size:clamp(38px,9.5vw,53px);line-height:1.04;}
  .about-section .about-copy .button-dark {font-size:16px;min-height:56px;padding:0 20px;}
}
@media (max-width:355px) {
  .about-section .about-copy h2 {font-size:clamp(34px,9.1vw,38px);}
}


/* Made 3D Studio — avvisi moduli preventivo e informazioni (Dark Tech). */
.form-status {
  color: #f5f5f5;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.form-status.form-success {
  background: #17251d;
  color: #f5fff7;
  border: 1px solid #397a4a;
  border-left: 4px solid #56cf79;
  border-radius: 8px;
  padding: 14px 16px;
  margin-top: 4px;
}

.form-status.form-error {
  background: #2a181a;
  color: #fff1f1;
  border: 1px solid #a34c52;
  border-left: 4px solid #ff777f;
  border-radius: 8px;
  padding: 14px 16px;
  margin-top: 4px;
}
/* MADE 3D STUDIO — SERVIZI CON IMMAGINI */

.services-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.services-grid .service-card {
  padding: 0;
  overflow: hidden;
  border-radius: 18px;
  background: #1b1c20;
  border: 1px solid #34363b;
  min-height: 0;
}

.services-grid .service-image {
  width: 100%;
  height: 245px;
  overflow: hidden;
  position: relative;
  background: #141518;
}

.services-grid .service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.services-grid .service-card:hover .service-image img {
  transform: scale(1.06);
}

.services-grid .service-image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    transparent 65%,
    rgba(0, 0, 0, 0.35)
  );
}

.services-grid .service-top {
  padding: 25px 28px 0;
}

.services-grid .service-card h3 {
  padding: 0 28px;
  font-size: clamp(24px, 2.2vw, 30px);
}

.services-grid .service-card p {
  padding: 0 28px;
  max-width: none;
  font-size: 15px;
  line-height: 1.75;
}

.services-grid .service-card .text-link {
  margin: auto 28px 28px;
  font-size: 14px;
}

.services-grid .service-card-scanner {
  border-color: rgba(255, 178, 0, 0.65);
}

@media (max-width: 760px) {
  .services-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .services-grid .service-image {
    height: 220px;
  }

  .services-grid .service-top {
    padding: 22px 22px 0;
  }

  .services-grid .service-card h3,
  .services-grid .service-card p {
    padding-left: 22px;
    padding-right: 22px;
  }

  .services-grid .service-card .text-link {
    margin: auto 22px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .services-grid .service-image img {
    transition: none;
  }
}

/* ==========================================
   MADE 3D STUDIO — SERVIZI CINEMATIC CARD
   ========================================== */

.services-section .services-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.services-section .service-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 465px;
  padding: 28px;
  overflow: hidden;
  isolation: isolate;

  border: 1px solid #36383d;
  border-radius: 17px;
  background: #151619;

  transition: border-color .3s ease, transform .3s ease;
}

.services-section .service-card-scanner {
  border-color: #ffb200;
}

/* Fotografia come sfondo dell'intera scheda */
.services-section .service-image {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.services-section .service-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .6s ease;
}

/* Sfumatura che rende leggibili i testi */
.services-section .service-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;

  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, .02) 0%,
    rgba(0, 0, 0, .10) 32%,
    rgba(0, 0, 0, .65) 58%,
    rgba(0, 0, 0, .96) 100%
  );
}

/* Icona e numero */
.services-section .service-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0;
  margin: 0 0 13px;
}

.services-section .service-icon {
  width: 43px;
  height: 43px;
  flex-shrink: 0;
  border: 1px solid rgba(255,178,0,.65);
  border-radius: 9px;
  background: rgba(0,0,0,.68);
  color: #ffb200;
}

.services-section .service-icon svg {
  width: 27px;
  height: 27px;
}

.services-section .service-index {
  font-size: 11px;
  font-weight: 900;
  color: #ffb200;
  letter-spacing: .07em;
  text-shadow: 0 2px 8px #000;
}

/* Titoli */
.services-section .service-card h3 {
  margin: 0 0 12px;
  padding: 0;
  color: #ffffff;
  font-size: clamp(26px, 2.4vw, 34px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -.04em;
  text-shadow: 0 2px 12px rgba(0,0,0,.6);
}

/* Descrizioni */
.services-section .service-card p {
  max-width: 100%;
  margin: 0 0 18px;
  padding: 0;
  color: #e2e2e5;
  font-size: 14px;
  line-height: 1.65;
  text-shadow: 0 1px 8px rgba(0,0,0,.7);
}

/* Collegamenti */
.services-section .service-card .text-link {
  margin: 0;
  padding: 0 0 5px;
  align-self: flex-start;

  color: #ffb200;
  border-bottom: 1px solid #ffb200;

  font-size: 14px;
  font-weight: 850;
}

.services-section .service-card .text-link:hover {
  color: #ffd46e;
}

/* Effetto hover */
@media (hover: hover) {
  .services-section .service-card:hover {
    transform: translateY(-5px);
    border-color: #ffb200;
  }

  .services-section .service-card:hover .service-image img {
    transform: scale(1.055);
  }
}

/* Tablet e mobile */
@media (max-width: 760px) {
  .services-section .services-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .services-section .service-card {
    min-height: 440px;
    padding: 23px;
  }

  .services-section .service-card h3 {
    font-size: 27px;
  }

  .services-section .service-card p {
    font-size: 14px;
  }
}

@media (max-width: 390px) {
  .services-section .service-card {
    min-height: 460px;
    padding: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .services-section .service-card,
  .services-section .service-image img {
    transition: none;
  }
}


/* MADE 3D STUDIO — FIX SFONDO HOMEPAGE */

.hero {
  background-image:
    linear-gradient(
      90deg,
      rgba(5, 6, 8, 0.82) 0%,
      rgba(5, 6, 8, 0.68) 45%,
      rgba(5, 6, 8, 0.45) 100%
    ),
    url("/images/made3d-hero-background.webp") !important;

  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

@media (max-width: 660px) {
  .hero {
    background-image:
      linear-gradient(
        rgba(5, 6, 8, 0.78),
        rgba(5, 6, 8, 0.65)
      ),
      url("/images/made3d-hero-background.webp") !important;
  }
}

/* Made 3D Studio — Sfondo fotografico sezione "Chi siamo" */
.about-section {
  position: relative;
  background:
    linear-gradient(90deg,
      rgba(9, 10, 12, .84) 0%,
      rgba(9, 10, 12, .80) 48%,
      rgba(9, 10, 12, .77) 100%),
    url('/images/made3d-about-background.webp') center / cover no-repeat;
}

.about-section .about-grid {
  position: relative;
  z-index: 1;
}

.about-section .about-copy p {
  color: #e1e1e4;
}

@media (max-width: 660px) {
  .about-section {
    background:
      linear-gradient(180deg,
        rgba(9, 10, 12, .86),
        rgba(9, 10, 12, .78)),
      url('/images/made3d-about-background.webp') center / cover no-repeat;
  }
}