:root{--navy:#102947;--deep:#0b2038;--ink:#1d344b;--muted:#586b79;--sky:#eaf1f5;--paper:#f8f9f8;--line:#d8e2e9;--copper:#d58b50;color:var(--ink);background:var(--paper);font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit}img{max-width:100%}section[id]{scroll-margin-top:108px}:focus-visible{outline:3px solid var(--copper);outline-offset:3px}.wrap{max-width:1220px;margin:0 auto;padding:0 30px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:#bd6d34;font-size:.82rem;font-weight:750}.section{padding:100px 0}.section h2,.intro h2,.partners h2,.booking h2{letter-spacing:-.025em;margin:15px 0 19px;font:clamp(2.15rem,3.6vw,3.65rem)/1.13 Georgia,serif}.lead{color:var(--muted);max-width:680px;font-size:1.08rem;line-height:1.7}.btn{background:var(--copper);min-height:52px;color:var(--deep);cursor:pointer;border:0;border-radius:2px;justify-content:center;align-items:center;padding:13px 26px;font-weight:750;text-decoration:none;transition:transform .25s,background .25s,box-shadow .25s;display:inline-flex}.btn:hover{background:#eaa166;transform:translateY(-2px);box-shadow:0 8px 22px #0b20382a}.btn.dark{background:var(--navy);color:#fff}.btn.dark:hover{background:#173b62}.top{background:var(--deep);color:#d7e3ec;letter-spacing:.035em;font-size:.82rem}.top .wrap{justify-content:space-between;gap:18px;padding-top:9px;padding-bottom:9px;display:flex}.nav{z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border-bottom:1px solid #dbe3e8;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:20px;min-height:104px;display:flex}.logo{flex:none;display:block}.logo img{clip-path:inset(0 4px);width:clamp(210px,25vw,315px);height:auto;display:block}.desktop-links{align-items:center;gap:clamp(12px,1.5vw,24px);display:flex}.desktop-links a{white-space:nowrap;font-size:.9rem;font-weight:650;text-decoration:none;position:relative}.desktop-links a:after{content:"";background:var(--copper);height:2px;transition:right .25s;position:absolute;bottom:-7px;left:0;right:100%}.desktop-links a:hover:after{right:0}.nav-contact{white-space:nowrap;border:1px solid var(--navy);padding:12px 14px;font-size:.92rem;font-weight:750;text-decoration:none;transition:background .2s,color .2s}.nav-contact:hover{background:var(--navy);color:#fff}.nav-contact span{margin-left:8px}.menu-toggle,.mobile-menu,.mobile-quick-contact{display:none}.hero{background:var(--deep);color:#fff;overflow:hidden}.hero .wrap{grid-template-columns:49% 51%;align-items:stretch;gap:0;min-height:660px;display:grid}.hero-copy{z-index:2;align-self:center;padding:88px 36px 90px 0;animation:.8s both enter;position:relative}.hero .eyebrow{color:#e6aa75}.hero h1{letter-spacing:-.045em;margin:25px 0;font:clamp(3.3rem,5.6vw,6rem)/1.04 Georgia,serif}.hero h1 em{color:#f2d3b7;font-weight:400}.hero p{color:#dce7ef;max-width:500px;margin:0 0 37px;font-size:1.17rem;line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.hero-link{color:#f3d0b1;border-bottom:1px solid #dcab7d;padding-bottom:7px;font-weight:700;text-decoration:none;transition:color .2s}.hero-link:hover{color:#fff}.hero-link span{margin-left:6px}.hero-photo{background:#344a5b url(/lavori/img_5613.webp) 50% 43%/cover no-repeat;min-height:660px;animation:1s both reveal;position:relative}.hero-photo:before{content:"";background:linear-gradient(90deg,var(--deep) 0%,#0b203873 23%,transparent 67%);position:absolute;inset:0}.intro{text-align:center;padding:100px 25px 85px}.intro:before{content:"";background:var(--copper);width:55px;height:2px;margin:0 auto 28px;display:block}.intro p{max-width:760px;color:var(--muted);margin:0 auto;font-size:1.14rem;line-height:1.8}.intro h2{max-width:800px;margin-left:auto;margin-right:auto}.feature-video{background:#fff}.feature-video-inner{grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);align-items:center;gap:64px;display:grid}.feature-video h2{letter-spacing:-.025em;margin:18px 0;font:clamp(2.1rem,3.4vw,3.4rem)/1.15 Georgia,serif}.feature-video p{color:var(--muted);margin:0 0 28px;font-size:1.07rem;line-height:1.75}.feature-video-frame{background:var(--deep);line-height:0;box-shadow:0 24px 55px #10294724}.feature-video video{aspect-ratio:910/512;object-fit:cover;width:100%;height:auto;display:block}.financing{background:#edf3f5;border-top:1px solid #dbe5e9;border-bottom:1px solid #dbe5e9;padding:48px 0}.financing-inner{grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:50px;display:grid}.financing h2{margin:12px 0;font:clamp(2rem,3vw,3rem)/1.15 Georgia,serif}.financing p{max-width:690px;margin:0 0 12px;font-size:1.06rem;line-height:1.65}.financing small{color:var(--muted);font-size:.82rem;line-height:1.5;display:block}.financing img{box-sizing:content-box;background:#fff;border:1px solid #dce5e9;justify-self:center;width:177px;height:auto;padding:24px}.partners{text-align:center;background:#fff;padding:85px 0 100px}.partners p{max-width:700px;color:var(--muted);margin:0 auto 42px;font-size:1.06rem;line-height:1.7}.partner-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.partner-logo{background:#f7f9fa;border:1px solid #e4ebef;justify-content:center;align-items:center;height:230px;padding:24px;transition:transform .28s,box-shadow .28s;display:flex;overflow:hidden}.partner-logo:hover{transform:translateY(-4px);box-shadow:0 16px 35px #10294713}.partner-logo img{object-fit:contain;width:100%;height:auto;display:block}.partner-logo.resstende img{max-width:none;transform:scale(2.06)}#soluzioni{background:var(--paper)}#soluzioni .grid{counter-reset:service;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px;display:grid}.card{counter-increment:service;background:#fff;border:1px solid #e5eaed;min-height:230px;padding:32px;transition:transform .25s,box-shadow .25s,border-color .25s}.card:before{content:"0" counter(service);letter-spacing:.16em;color:#b96933;margin-bottom:30px;font-size:.78rem;font-weight:800;display:block}.card:hover{border-color:#d7b391;transform:translateY(-4px);box-shadow:0 18px 38px #10294712}.card h3{letter-spacing:-.018em;margin:0 0 13px;font:1.6rem Georgia,serif}.card p{color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.portfolio{background:#ecf2f5}.portfolio-heading{justify-content:space-between;align-items:end;gap:45px;display:flex}.portfolio-heading h2{margin-bottom:0}.portfolio-heading p{max-width:390px;color:var(--muted);margin:0 0 4px;line-height:1.7}.portfolio-tabs{flex-wrap:wrap;gap:9px;margin:36px 0 28px;display:flex}.portfolio-tab{-webkit-appearance:none;appearance:none;color:var(--navy);cursor:pointer;background:0 0;border:1px solid #bac9d4;border-radius:2px;min-height:43px;padding:10px 16px;font-size:.93rem;font-weight:650;transition:background .2s,color .2s,border-color .2s}.portfolio-tab:hover,.portfolio-tab[data-state=active]{background:var(--navy);border-color:var(--navy);color:#fff}.portfolio-results{outline:none}.gallery{columns:3 280px;column-gap:20px}.work-card{text-align:left;break-inside:avoid;cursor:zoom-in;background:#fff;border:0;width:100%;margin:0 0 20px;padding:0;display:inline-block;overflow:hidden;box-shadow:0 12px 30px #1029470c}.work-card img{width:100%;height:auto;transition:transform .45s;display:block}.work-card:hover img{transform:scale(1.025)}.work-caption{justify-content:space-between;gap:12px;padding:17px 19px;font-size:.96rem;font-weight:700;line-height:1.4;display:flex}.work-caption span{color:#b66a38}.portfolio [data-slot=tabs-content]{outline:none}[data-slot=dialog-overlay]{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#061322e8;position:fixed;inset:0}.lightbox-content{z-index:61;color:#fff;background:#10253c;outline:none;width:min(1000px,96vw);max-height:95vh;padding:12px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 80px #0009}.lightbox-content>img{object-fit:contain;background:#07192a;width:100%;height:auto;max-height:calc(95vh - 100px);display:block}.lightbox-close{color:#fff;cursor:pointer;background:#102947d9;border:0;width:42px;height:42px;font-size:2rem;line-height:1;position:absolute;top:18px;right:18px}.lightbox-bar{text-align:center;justify-content:space-between;align-items:center;gap:15px;padding:14px 7px 3px;display:flex}.lightbox-bar button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff70;width:44px;height:44px;font-size:1.5rem}.lightbox-bar [data-slot=dialog-title]{font-size:1rem;font-weight:650}.lightbox-bar [data-slot=dialog-description]{color:#bdd0df;margin-top:3px;font-size:.82rem}.values{background:var(--navy);color:#fff;padding:78px 0;position:relative;overflow:hidden}.values:before{content:"";pointer-events:none;background:radial-gradient(circle,#b8896047,#0000 65%);border-radius:50%;width:450px;height:450px;position:absolute;top:-240px;right:-130px}.values .wrap{justify-content:space-between;align-items:center;gap:65px;display:flex;position:relative}.values blockquote{max-width:750px;margin:0;font:italic clamp(1.8rem,3.2vw,3.2rem)/1.32 Georgia,serif}.values p{color:#cbdbe7;max-width:300px;font-size:1.05rem;line-height:1.75}.reviews{background:#f9faf9}.review-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px;display:grid}.review-card{border:1px solid var(--line);border-bottom:3px solid var(--copper);background:#fff;flex-direction:column;justify-content:space-between;min-height:160px;padding:27px;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex}.review-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px #10294715}.review-card strong{font:1.65rem Georgia,serif}.review-card span{color:#476882;font-size:.91rem;font-weight:700}.booking{background:#eaf1f5;padding:100px 0}.booking-panel{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:70px;display:grid}.booking h2{margin-top:18px}.booking p{color:var(--muted);font-size:1.07rem;line-height:1.7}.booking p strong{color:var(--ink)}.booking-form{background:#fff;border:1px solid #dde6eb;padding:36px;box-shadow:0 22px 60px #10294712}.booking-form .row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.booking-form .field{margin-bottom:18px}.booking-form label{margin-bottom:8px;font-size:.93rem;font-weight:700;display:block}.booking-form input,.booking-form textarea{width:100%;min-height:49px;color:var(--ink);background:#fff;border:1px solid #b8c7d1;border-radius:2px;padding:11px 13px}.booking-form textarea{resize:vertical;min-height:87px}.booking-select{width:100%;min-height:49px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #b8c7d1;justify-content:space-between;align-items:center;padding:10px 13px;display:flex}.booking-select svg{width:16px;height:16px}[data-slot=select-content]{z-index:55;background:#fff;border:1px solid #b8c7d1;min-width:180px;padding:5px;box-shadow:0 12px 28px #10294720}[data-slot=select-item]{cursor:pointer;color:var(--ink);padding:9px 12px 9px 30px;position:relative}[data-slot=select-item][data-highlighted]{background:#eaf1f5;outline:0}[data-slot=select-item-indicator]{position:absolute;top:10px;left:8px}[data-slot=select-item-indicator] svg{width:15px;height:15px}.booking-form .checks{align-items:flex-start;gap:11px;margin:16px 0 20px;display:flex}.booking-form .checks label{margin:0;font-size:.91rem;font-weight:400;line-height:1.5}[data-slot=checkbox]{cursor:pointer;background:#fff;border:1px solid #667b8d;place-items:center;width:19px;min-width:19px;height:19px;min-height:19px;margin-top:2px;padding:0;display:grid}[data-slot=checkbox][data-state=checked]{background:var(--navy);color:#fff}[data-slot=checkbox-indicator] svg{width:15px;height:15px}.booking-form button.btn{width:100%}.booking-form button:disabled{opacity:.55;cursor:not-allowed;transform:none}.booking-form .hint{color:var(--muted);margin:11px 0 0;font-size:.88rem}.booking-form .message{margin:14px 0 0;font-size:.98rem;font-weight:700}.message.error{color:#a12e2e}.message.success{color:#176042}.contact{background:var(--deep);color:#fff;padding:90px 0}.contact .wrap{justify-content:space-between;align-items:center;gap:35px;display:flex}.contact .eyebrow{color:#e6aa75}.contact h2{letter-spacing:-.025em;margin:15px 0;font:clamp(2.2rem,3.5vw,3.6rem)/1.12 Georgia,serif}.contact p{color:#d4e1e9;line-height:1.8}.contact .showroom-address{color:#fff;text-underline-offset:4px;text-decoration-color:#e6aa75}.contact .showroom-address:hover{color:#e6aa75}.contact-actions{flex-wrap:wrap;gap:12px;display:flex}.contact-actions .btn:last-child{color:#fff;background:0 0;border:1px solid #8fa4b6}.footer{color:#c4d2dc;background:#071a2e;padding:30px 0;font-size:.9rem}.footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:20px;display:flex}.footer a{color:inherit}.admin{min-height:100vh;padding:40px 30px 90px}.admin h1{font:3rem Georgia,serif}.admin-list{gap:14px;margin-top:24px;display:grid}.admin-card{border:1px solid var(--line);background:#fff;padding:22px}.admin-card p{margin:8px 0}.admin-actions{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.admin button{cursor:pointer;background:var(--navy);color:#fff;border:0;padding:11px 16px}.admin button.reject{background:#7e4b4b}.admin button:disabled{opacity:.5}.status{font-weight:750}.status.pending{color:#a05c1e}.status.approved{color:#176042}.status.rejected{color:#8d4343}@keyframes enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{0%{opacity:.5;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media (max-width:1120px){.desktop-links{gap:13px}.desktop-links a{font-size:.84rem}.logo img{width:240px}.nav-contact{padding:11px;font-size:.84rem}}@media (max-width:1050px){.desktop-links,.nav-contact{display:none}.mobile-quick-contact{text-align:center;background:var(--copper);color:var(--deep);border-top:1px solid #d6a176;padding:13px 18px;font-weight:800;text-decoration:none;display:block}.mobile-quick-contact span{margin-left:6px}.nav-inner{min-height:88px}.logo img{width:270px}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;display:flex}.menu-toggle span{background:var(--navy);width:20px;height:2px}.mobile-menu.open{border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(2,1fr);padding:12px 30px 28px;display:grid;box-shadow:0 14px 25px #10294712}.mobile-menu a{border-bottom:1px solid var(--line);justify-content:space-between;padding:15px 8px;font-weight:650;text-decoration:none;display:flex}.mobile-menu a:last-child{color:#9b5125;grid-column:1/-1}.mobile-menu span{color:#b86a37}.hero .wrap,.hero-photo{min-height:590px}.booking-panel{gap:36px}.partner-logo{height:195px}}@media (max-width:700px){.wrap{padding:0 22px}.top .wrap{justify-content:center}.top span:last-child{display:none}.hero .wrap{flex-direction:column-reverse;padding:0;display:flex}.hero-photo{width:100%;min-height:320px}.hero-photo:before{background:linear-gradient(0deg,var(--deep),transparent 58%)}.hero-copy{width:100%;padding:20px 22px 70px}.hero h1{font-size:clamp(2.7rem,11vw,4.5rem)}.hero p{font-size:1.07rem}.intro{padding:70px 22px}.section,.partners{padding:72px 0}.partner-logos{grid-template-columns:1fr;max-width:470px;margin:auto}.partner-logo{height:185px}.partner-logo img{max-width:380px}.partner-logo.resstende img{max-width:350px}#soluzioni .grid{grid-template-columns:repeat(2,1fr)}.portfolio-heading{display:block}.portfolio-heading p{margin-top:20px}.values .wrap,.contact .wrap{display:block}.values p{max-width:550px;margin-top:27px}.review-grid{grid-template-columns:repeat(2,1fr)}.booking-panel{grid-template-columns:1fr;gap:22px}.contact-actions{margin-top:24px}.gallery{columns:2 220px}.mobile-menu.open{padding:12px 22px 25px}}@media (max-width:500px){.logo img{width:220px}.mobile-menu.open{grid-template-columns:1fr}.mobile-menu a:last-child{grid-column:auto}.hero-photo{min-height:275px}.hero-copy{padding-bottom:62px}.hero-actions{gap:23px}.intro p{font-size:1.03rem}.partners p{font-size:1rem}.partner-logo{height:150px}.partner-logo.resstende img{max-width:290px}#soluzioni .grid{grid-template-columns:1fr}.card{min-height:auto;padding:27px}.card:before{margin-bottom:22px}.portfolio-tabs{gap:7px}.portfolio-tab{min-height:40px;padding:8px 11px;font-size:.85rem}.gallery{columns:1}.review-grid{gap:10px}.review-card{min-height:130px;padding:18px}.review-card strong{font-size:1.22rem}.review-card span{font-size:.82rem}.booking{padding:72px 0}.booking-form{padding:22px}.booking-form .row{grid-template-columns:1fr;gap:0}.contact{padding:70px 0}.lightbox-content{width:98vw;padding:5px}.lightbox-content>img{max-height:calc(90vh - 100px)}}@media (max-width:700px){.financing{padding:45px 0}.financing-inner{grid-template-columns:1fr;gap:25px}.financing img{justify-self:start}.hero h1{font-size:clamp(2.35rem,9vw,4rem)}}.copy-contact{flex-direction:column;gap:8px;max-width:230px;display:flex}.copy-contact .btn{color:#fff;cursor:pointer;font:inherit;background:0 0;border:1px solid #8fa4b6}.copy-contact span{color:#d4e1e9;font-size:.88rem;line-height:1.4}.copy-contact strong{white-space:nowrap;color:#fff}.work-credit{color:#677b8b;margin-top:-9px;padding:0 19px 17px;font-size:.82rem;display:block}.lightbox-bar a{color:#f2d3b7;text-underline-offset:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (max-width:850px){.feature-video-inner{grid-template-columns:1fr;gap:30px}.feature-video-copy{max-width:680px}.feature-video h2{font-size:clamp(2.1rem,7vw,3.2rem)}}@media (max-width:500px){.feature-video-frame{margin:0 -22px}.feature-video .btn{text-align:center;width:100%}}
