:root{--ink:#101820;--graphite:#18232d;--steel:#253441;--orange:#d74f22;--orange-dark:#b83d16;--paper:#f5f6f5;--white:#fff;--muted:#606b73;--line:#d9dee1;--max:1220px;--shadow:0 18px 50px rgba(16,24,32,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Inter,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}img{display:block;max-width:100%}
header{position:sticky;top:0;z-index:30;background:rgba(16,24,32,.96);color:#fff;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px)}
.nav{max-width:var(--max);height:78px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:34px}
.brand{position:relative;font-size:1.28rem;font-weight:900;letter-spacing:.08em;text-decoration:none}.brand:after{content:"CARPENTERIA METALLICA";position:absolute;left:0;top:29px;color:#9ca7ae;font-size:.52rem;letter-spacing:.18em;white-space:nowrap}.brand span{color:#f06a35}
nav{display:flex;gap:30px;margin-left:auto}nav a{position:relative;color:#dce1e4;text-decoration:none;font-size:.88rem;font-weight:650;letter-spacing:.02em}nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--orange);transition:right .2s}nav a:hover:after{right:0}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 21px;border:1px solid transparent;border-radius:2px;background:var(--orange);color:#fff;text-decoration:none;font-weight:750;letter-spacing:.01em;box-shadow:0 8px 24px rgba(215,79,34,.2);transition:transform .2s,background .2s,box-shadow .2s}.nav-cta:hover,.btn:hover{background:var(--orange-dark);transform:translateY(-1px);box-shadow:0 12px 28px rgba(215,79,34,.28)}
.hero{position:relative;min-height:720px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(8,15,21,.95) 0%,rgba(8,15,21,.76) 48%,rgba(8,15,21,.2) 100%),url('assets/officina.jpg') center/cover}.hero:after{content:"";position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(transparent,rgba(8,15,21,.36))}
.hero-inner{position:relative;z-index:1;width:100%;max-width:var(--max);margin:auto;padding:118px 28px 130px}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--orange);font-size:.76rem;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}.hero .eyebrow{color:#ff8050}
.hero h1{max-width:880px;margin:18px 0 27px;font-size:clamp(3.2rem,6.5vw,6.5rem);font-weight:800;line-height:.93;letter-spacing:-.055em}.hero p{max-width:700px;margin:0;color:#e1e6e9;font-size:1.2rem;line-height:1.6}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:34px}.btn.alt{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.55);box-shadow:none}.btn.alt:hover{background:#fff;color:var(--ink)}
.strip{position:relative;z-index:4;margin-top:-42px}.strip-inner{max-width:var(--max);margin:auto;padding:0 28px;display:grid;grid-template-columns:repeat(3,1fr);background:var(--white);box-shadow:var(--shadow)}.strip-inner div{position:relative;padding:28px 32px 28px 57px;color:var(--ink);font-size:.9rem;font-weight:800;letter-spacing:.02em}.strip-inner div+div{border-left:1px solid var(--line)}.strip-inner div:before{content:"✓";position:absolute;left:28px;color:var(--orange);font-size:1rem}
.section{max-width:var(--max);margin:auto;padding:105px 28px}.section h2{max-width:850px;margin:13px 0 22px;font-size:clamp(2.25rem,4.5vw,4.2rem);font-weight:780;line-height:1.02;letter-spacing:-.045em}.lead{max-width:760px;margin:0;color:var(--muted);font-size:1.08rem}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}.card{position:relative;min-height:250px;padding:31px 29px 28px;background:var(--white);border:1px solid var(--line);border-top:3px solid transparent;box-shadow:0 8px 26px rgba(16,24,32,.035);transition:transform .25s,border-color .25s,box-shadow .25s}.card:hover{transform:translateY(-5px);border-top-color:var(--orange);box-shadow:var(--shadow)}.card h3{margin:4px 0 12px;font-size:1.28rem;letter-spacing:-.02em}.card p{margin:0 0 24px;color:var(--muted)}.card a{position:absolute;left:29px;bottom:25px;color:var(--orange);font-size:.9rem;font-weight:800;text-decoration:none}
.dark{position:relative;overflow:hidden;background:var(--graphite);color:#fff}.dark:before{content:"";position:absolute;right:-180px;top:-280px;width:620px;height:620px;border:1px solid rgba(255,255,255,.06);transform:rotate(35deg)}.dark .lead{color:#bdc6cb}.split{display:grid;grid-template-columns:1fr .93fr;gap:70px;align-items:center}.photo{width:100%;min-height:500px;object-fit:cover;box-shadow:28px 28px 0 #d74f22}.ticks{padding:0;margin:30px 0 0;list-style:none}.ticks li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid rgba(255,255,255,.12);color:#edf0f2}.ticks li:before{content:"";position:absolute;left:1px;top:21px;width:11px;height:6px;border-left:2px solid #ff8050;border-bottom:2px solid #ff8050;transform:rotate(-45deg)}
.local{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.local div{padding:31px 32px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);box-shadow:0 10px 30px rgba(16,24,32,.04)}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:245px;gap:12px;margin-top:44px}.gallery figure{position:relative;margin:0;overflow:hidden;background:var(--steel)}.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-column:span 7}.gallery figure:nth-child(2),.gallery figure:nth-child(5){grid-column:span 5}.gallery figure:nth-child(3),.gallery figure:nth-child(4){grid-column:span 6}.gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.04);transition:transform .4s,filter .4s}.gallery figure:hover img{transform:scale(1.045);filter:saturate(1) contrast(1.02)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:52px 21px 18px;background:linear-gradient(transparent,rgba(7,13,18,.9));color:#fff;font-size:.92rem;font-weight:780;letter-spacing:.02em}
.contact{background:var(--orange);color:#fff}.contact-wrap{max-width:var(--max);margin:auto;padding:72px 28px;display:flex;align-items:center;justify-content:space-between;gap:38px}.contact h2{max-width:680px;margin:0;font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.02;letter-spacing:-.04em}.contact p{margin:14px 0 0;font-size:1.04rem}.contact .actions{margin:0}.contact .btn{background:#fff;color:var(--ink);box-shadow:none}.contact .btn:hover{background:var(--ink);color:#fff}
footer{background:#0a1015;color:#aeb8be}.footer{max-width:var(--max);margin:auto;padding:54px 28px;display:grid;grid-template-columns:2fr 1.2fr 1.2fr;gap:35px;font-size:.92rem}.footer strong{display:inline-block;margin-bottom:7px;color:#fff}.footer a{color:#dce1e4;text-decoration:none}
.subhero{position:relative;padding:120px 28px 105px;overflow:hidden;background:linear-gradient(115deg,#101820,#2b3a46);color:#fff}.subhero:after{content:"EXPERTFERRO";position:absolute;right:-30px;bottom:-48px;color:rgba(255,255,255,.035);font-size:9rem;font-weight:900;letter-spacing:-.06em}.subhero>div{position:relative;z-index:1;max-width:var(--max);margin:auto}.subhero h1{max-width:930px;margin:17px 0 19px;font-size:clamp(2.8rem,5.5vw,5.2rem);font-weight:800;line-height:.96;letter-spacing:-.052em}.subhero p{max-width:680px;color:#cbd3d7;font-size:1.14rem}.breadcrumbs{margin-bottom:29px;color:#9eabb2;font-size:.83rem}.breadcrumbs a{color:#dce2e5}.service-copy{max-width:900px;background:#fff;margin-top:-42px;position:relative;z-index:3;box-shadow:var(--shadow)}.service-copy h2{margin-top:48px;font-size:2rem}.service-copy h2:first-child{margin-top:0}.service-copy p,.service-copy li{color:#4f5d66}.faq details{margin-bottom:10px;padding:19px 21px;background:#fff;border:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:800}
@media(max-width:900px){nav{display:none}.nav{height:70px;padding:0 18px}.nav-cta{margin-left:auto}.hero{min-height:650px}.hero-inner{padding:95px 19px 120px}.strip{margin-top:-30px}.strip-inner{margin:0 18px;padding:0;grid-template-columns:1fr}.strip-inner div{padding:18px 22px 18px 48px}.strip-inner div+div{border-left:0;border-top:1px solid var(--line)}.strip-inner div:before{left:22px}.section{padding:82px 19px}.grid,.split,.local,.footer{grid-template-columns:1fr}.grid{gap:12px}.split{gap:45px}.photo{min-height:320px;box-shadow:14px 14px 0 var(--orange)}.gallery{grid-template-columns:1fr;grid-auto-rows:280px}.gallery figure:nth-child(n){grid-column:auto}.contact-wrap{padding:58px 19px;align-items:flex-start;flex-direction:column}.contact .actions{margin-top:5px}.subhero{padding:90px 19px 85px}.subhero:after{font-size:5rem}.service-copy{margin:0;padding-top:70px;box-shadow:none}.footer{gap:20px}}
@media(max-width:520px){.nav-cta{min-height:40px;padding:8px 12px;font-size:.82rem}.hero h1{font-size:3.2rem}.hero p{font-size:1.05rem}.actions{width:100%}.actions .btn{width:100%}.gallery{grid-auto-rows:245px}}
.cookie-banner{position:fixed;z-index:1000;left:22px;right:22px;bottom:22px;max-width:1180px;margin:auto;padding:24px 26px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:28px;background:#101820;color:#fff;border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 70px rgba(0,0,0,.36)}
.cookie-copy{max-width:720px}.cookie-copy h2,.cookie-panel h2{margin:3px 0 8px;font-size:1.35rem;letter-spacing:-.02em}.cookie-copy p,.cookie-panel p{margin:0;color:#cbd3d7;font-size:.91rem;line-height:1.55}.cookie-copy a,.cookie-policy-link{color:#ff8050;font-size:.88rem;font-weight:750}.cookie-kicker{color:#ff8050;font-size:.68rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.cookie-actions{display:flex;gap:9px;flex-wrap:wrap}.cookie-btn{min-height:42px;padding:9px 16px;border:1px solid #64717a;background:transparent;color:#fff;font:inherit;font-size:.84rem;font-weight:750;cursor:pointer}.cookie-btn.primary{border-color:var(--orange);background:var(--orange)}.cookie-btn:hover{border-color:#fff}.cookie-close{position:absolute;right:13px;top:8px;padding:4px;border:0;background:transparent;color:#aeb8be;font-size:1.55rem;cursor:pointer}.cookie-modal{position:fixed;z-index:1100;inset:0;display:grid;place-items:center;padding:20px;background:rgba(5,9,12,.72)}.cookie-panel{position:relative;width:min(580px,100%);padding:32px;background:#fff;color:var(--ink);box-shadow:0 28px 90px rgba(0,0,0,.35)}.cookie-panel .cookie-close{color:#53616a}.cookie-option{display:flex;justify-content:space-between;gap:20px;margin-top:18px;padding:17px 0;border-top:1px solid var(--line)}.cookie-option strong,.cookie-option small{display:block}.cookie-option small{margin-top:4px;color:var(--muted);font-size:.8rem}.cookie-option input{width:20px;height:20px;accent-color:var(--orange)}.cookie-panel .cookie-actions{margin:24px 0 13px}.cookie-panel .cookie-btn.secondary{color:var(--ink);border-color:#82909a}.cookie-reopen{align-self:start;border:0;background:transparent;color:#dce1e4;text-decoration:underline;font:inherit;font-size:.86rem;cursor:pointer}.legal-copy a{color:var(--orange)}.legal-home{border-color:var(--steel)!important;color:var(--ink)!important}
@media(max-width:760px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:22px 18px;grid-template-columns:1fr;gap:17px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions .primary{grid-column:1/-1}.cookie-btn{width:100%}.cookie-panel{padding:29px 20px}.cookie-panel .cookie-actions{display:flex}.cookie-panel .cookie-actions .primary{width:auto}}
