:root{--orange:#ff5a14;--orange2:#ff8a00;--ink:#111;--muted:#646464;--paper:#f6f5f2;--white:#fff;--line:#dedbd5;--max:1180px;--shadow:0 22px 60px rgba(0,0,0,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}img{max-width:100%;display:block}a{color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;padding:10px;z-index:999}.skip-link:focus{left:10px}.site-header{position:fixed;inset:0 0 auto;z-index:50;background:rgba(13,13,13,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;text-decoration:none;color:#fff;min-width:0;padding:4px 0}.brand img{display:block;width:220px;max-width:36vw;height:50px;object-fit:contain;object-position:left center;flex:0 0 auto;filter:drop-shadow(0 0 10px rgba(255,255,255,.12)) drop-shadow(0 2px 10px rgba(255,255,255,.08))}.main-nav{display:flex;align-items:center;gap:30px}.main-nav a{color:#fff;text-decoration:none;font-size:.92rem;font-weight:650}.main-nav a:not(.nav-cta):after{content:"";display:block;width:0;height:2px;background:var(--orange);transition:.25s}.main-nav a:hover:after{width:100%}.nav-cta{padding:10px 17px;border:1px solid rgba(255,255,255,.35);border-radius:999px}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}
.hero{position:relative;min-height:850px;height:100svh;display:flex;align-items:center;color:#fff;background:url('assets/img/hero.jpg') center 48%/cover no-repeat;overflow:hidden}.hero:after{content:"";position:absolute;right:-12vw;bottom:-20vw;width:60vw;height:60vw;border:2px solid rgba(255,90,20,.55);transform:rotate(18deg)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.63) 45%,rgba(0,0,0,.12) 100%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}.hero-content{position:relative;z-index:2;padding-top:60px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:800;color:#ffad82;margin:0 0 18px}.eyebrow.dark{color:var(--orange)}h1,h2,h3,p{margin-top:0}.hero h1{max-width:900px;font-size:clamp(3rem,7.1vw,7.3rem);line-height:.9;letter-spacing:-.065em;margin-bottom:28px}.hero-lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:680px;color:#e7e7e7}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;border-radius:3px;padding:14px 22px;transition:.25s}.btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;box-shadow:0 12px 30px rgba(255,90,20,.25)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(255,90,20,.36)}.btn-ghost{border:1px solid rgba(255,255,255,.55);color:#fff}.btn-ghost:hover{background:#fff;color:#111}.hero-stats{position:absolute;z-index:3;bottom:0;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,1fr);background:rgba(15,15,15,.88);backdrop-filter:blur(12px);border-top:3px solid var(--orange)}.hero-stats div{padding:24px 28px;border-right:1px solid rgba(255,255,255,.12);min-height:106px;display:flex;flex-direction:column;justify-content:center}.hero-stats div:last-child{border:0}.hero-stats strong{display:block;font-size:1.35rem}.hero-stats span{font-size:.78rem;color:#bdbdbd;line-height:1.35}
.section{padding:120px 0}.split-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:85px;align-items:center}.section-copy h2,.section-heading h2,.contact h2{font-size:clamp(2.35rem,4vw,4.5rem);line-height:1.02;letter-spacing:-.045em;margin-bottom:28px}.section-copy p{color:var(--muted);font-size:1.05rem}.pill-row,.qualification-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.pill-row span,.qualification-strip span{border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-size:.8rem;font-weight:750;background:#fff}.image-card{margin:0;position:relative}.image-card:before{content:"";position:absolute;inset:-18px 22px 22px -18px;border:2px solid var(--orange);z-index:-1}.image-card img{width:100%;aspect-ratio:4/4.25;object-fit:cover;box-shadow:var(--shadow)}.image-card figcaption{position:absolute;left:30px;right:-24px;bottom:-28px;padding:18px 22px;background:#111;color:#fff;font-size:.9rem}
.services{background:#fff}.section-heading{max-width:800px;margin-bottom:54px}.section-heading>p:last-child{color:var(--muted);font-size:1.08rem}.service-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.service-card{grid-column:span 4;position:relative;min-height:440px;background:#171717;color:#fff;overflow:hidden}.service-card.featured{grid-column:span 8}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.03) 70%)}.service-card>div{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}.service-card span{font-size:.78rem;color:#ff9b69;font-weight:800}.service-card h3{font-size:1.6rem;line-height:1.05;margin:7px 0 12px}.service-card p{font-size:.92rem;color:#d7d7d7;margin:0}
.projects{background:#111;color:#fff;position:relative;overflow:hidden}.projects:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 50%,rgba(255,90,20,.08) 50%)}.section-heading.light>p:last-child{color:#aaa}.projects-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card{background:#171717;border:1px solid #2f2f2f;padding:24px;box-shadow:0 12px 30px rgba(0,0,0,.16)}.project-card span{color:#ff9161;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.project-card h3{font-size:1.05rem;line-height:1.35;margin:10px 0 10px}.project-card p{color:#b8b8b8;margin:0;font-size:.92rem}.qualification-strip span{background:transparent;border-color:#c8c1b7}.cert-list{display:grid;gap:12px}.cert-list a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;background:#fff;padding:22px 24px;border-left:4px solid transparent;box-shadow:0 8px 26px rgba(0,0,0,.05);transition:.25s}.cert-list a:hover{transform:translateX(6px);border-left-color:var(--orange)}.cert-list b,.cert-list small{display:block}.cert-list small{color:#777;margin-top:3px}.cert-list> a > span{color:var(--orange);font-size:.82rem;font-weight:800}.cert-static{display:flex;justify-content:space-between;align-items:center;background:#f7f5f1;padding:22px 24px;border-left:4px solid #d7d0c7;box-shadow:0 8px 26px rgba(0,0,0,.035)}.cert-static b,.cert-static small{display:block}.cert-static small{color:#777;margin-top:3px;max-width:560px}.cert-static>span{color:var(--orange);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.cert-static .legal-stars{font-size:1.25rem;letter-spacing:.08em}

.contact{position:relative;padding:120px 0;color:#fff;background:#111}.contact-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.55)),url('assets/img/cantiere.jpg') center/cover;opacity:.9}.contact-inner{position:relative;display:grid;grid-template-columns:1fr .85fr;gap:90px;align-items:center}.contact-title>p:last-child{max-width:590px;color:#ccc}.contact-card{background:#fff;color:#111;padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:22px;box-shadow:var(--shadow)}.contact-card div{border-bottom:1px solid #e5e5e5;padding-bottom:15px}.contact-card small{display:block;text-transform:uppercase;letter-spacing:.08em;color:#888;font-weight:800;font-size:.7rem}.contact-card p{margin:5px 0 0;font-weight:650}.contact-card a{text-decoration:none}.contact-card .wide{grid-column:1/-1}footer{background:#080808;color:#aaa;padding:26px 0}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:.8rem}.footer-row p{margin:0}.footer-brand{display:flex;align-items:center;gap:10px;color:#fff}.footer-brand img{width:180px;max-width:42vw;height:auto;flex:0 0 auto;filter:drop-shadow(0 0 8px rgba(255,255,255,.08))}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:900px){.main-nav{position:absolute;top:78px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;background:#111;padding:24px 20px}.main-nav.open{display:flex}.menu-toggle{display:block}.split-grid,.contact-inner{grid-template-columns:1fr;gap:55px}.hero{min-height:760px}.hero-stats{grid-template-columns:1fr 1fr}.service-card,.service-card.featured{grid-column:span 6}.projects-grid{grid-template-columns:1fr}.contact-card{grid-template-columns:1fr 1fr}.footer-row{flex-wrap:wrap}}
@media (max-width:620px){.container{width:min(100% - 28px,var(--max))}.brand img{width:172px;max-width:58vw;height:42px}.hero{min-height:820px;align-items:flex-start;padding-top:150px;background-position:62% center}.hero h1{font-size:clamp(2.8rem,15vw,4.3rem)}.hero-content{padding-top:0}.hero-stats{position:absolute;width:calc(100% - 28px)}.hero-stats div{padding:14px}.hero-stats strong{font-size:1rem}.hero-stats span{font-size:.68rem}.section{padding:82px 0}.section-copy h2,.section-heading h2,.contact h2{font-size:2.5rem}.service-card,.service-card.featured{grid-column:1/-1;min-height:390px}.projects-grid{grid-template-columns:1fr;gap:14px}.contact-card{grid-template-columns:1fr;padding:25px}.footer-row{display:grid}.image-card figcaption{right:10px;left:10px}.hero-actions .btn{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.cert-list a{transition:none}}

.lang-switch{display:inline-flex!important;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:.76rem!important;letter-spacing:.08em}.lang-switch:after{display:none!important}.lang-switch:hover{background:rgba(255,255,255,.1)}.lang-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:.72rem;line-height:1;color:#ff9b69}@media (max-width:900px){.lang-switch{justify-content:center;margin-top:4px}}
