@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root{--carbon:#080b0b;--bone:#f2efe9;--ceramic:#d4c3b0;--metal:#c5a972;--line:rgba(242,239,233,.22);--muted:#b9b2a8;--page:clamp(22px,1.45vw,26px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--carbon)}body{margin:0;background:var(--carbon);color:var(--bone);font-family:Inter,Arial,sans-serif;font-size:var(--page);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--metal);outline-offset:4px}
.site-nav{position:fixed;z-index:100;top:0;left:0;width:100%;min-height:104px;padding:0 clamp(22px,5vw,82px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(180deg,rgba(8,11,11,.96),rgba(8,11,11,.2));transition:.3s}.site-nav.scrolled{background:rgba(8,11,11,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.brand{display:flex;flex-direction:column;font-size:32px;font-weight:900;line-height:.85;letter-spacing:-.075em;white-space:nowrap}.brand span{margin-top:11px;font-size:22px;font-weight:600;letter-spacing:.08em}.nav-links{display:flex;align-items:center;gap:clamp(18px,2.2vw,36px)}.nav-links>a{font-size:22px;font-weight:700}.nav-links>a:not(.button){position:relative}.nav-links>a:not(.button):after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:var(--ceramic);transform:scaleX(0);transform-origin:right;transition:transform .25s}.nav-links>a:hover:after{transform:scaleX(1);transform-origin:left}.menu-toggle{display:none;align-items:center;justify-content:center;position:relative;width:48px;height:48px;min-height:48px;flex:0 0 48px;background:transparent;border:0;border-radius:0;padding:0;color:var(--bone);font-size:0;line-height:0;cursor:pointer}.menu-toggle::before,.menu-toggle::after{content:"";position:absolute;left:calc(50% - 12.5px);top:calc(50% - 1px);width:25px;height:2px;background:currentColor;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.menu-toggle::before{box-shadow:0 -8px 0 currentColor,0 8px 0 currentColor}.menu-toggle::after{opacity:0}.menu-toggle[aria-expanded=true]::before{box-shadow:none;transform:rotate(45deg)}.menu-toggle[aria-expanded=true]::after{opacity:1;transform:rotate(-45deg)}.menu-toggle:focus-visible{outline:2px solid var(--ceramic);outline-offset:4px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:60px;padding:15px 24px;border:1px solid rgba(242,239,233,.62);border-radius:999px;font-size:22px;font-weight:800;line-height:1.15;text-align:center;transition:.22s}.button:hover{transform:translateY(-3px);background:var(--bone);color:var(--carbon);border-color:var(--bone)}.button.dark{background:var(--carbon);color:var(--bone);border-color:var(--carbon)}.button.dark:hover{background:transparent;color:var(--carbon)}.button.solid{background:var(--bone);color:var(--carbon);border-color:var(--bone)}.button.solid:hover{background:var(--ceramic)}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding:160px clamp(22px,6vw,112px) 100px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 72% 33%,#3d332c 0%,#191817 31%,var(--carbon) 67%)}.hero.compact{min-height:76svh}.hero:after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(0deg,var(--carbon) 0%,rgba(8,11,11,.58) 27%,transparent 62%),linear-gradient(90deg,rgba(8,11,11,.44),transparent 58%);pointer-events:none}.hero-copy{position:relative;z-index:5;width:min(1220px,94%)}h1,h2,h3{margin:0;font-weight:900;letter-spacing:-.075em;line-height:.88}h1{font-size:clamp(68px,10.8vw,176px)}h2{font-size:clamp(48px,7.7vw,118px)}h3{font-size:clamp(34px,4.5vw,66px);line-height:.94}.hero p{max-width:760px;margin:42px 0 0;font-size:clamp(22px,1.7vw,30px);color:#ece6df}.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:38px}
.parallax-scene{position:absolute;z-index:1;inset:0 0 0 37%;perspective:1000px;pointer-events:none}.depth{will-change:transform;transform-style:preserve-3d}.halo{position:absolute;left:13%;top:15%;width:min(60vw,760px);aspect-ratio:1;border:1px solid rgba(197,169,114,.32);border-radius:50%;box-shadow:0 0 70px rgba(197,169,114,.12),inset 0 0 70px rgba(197,169,114,.07)}.halo.two{left:23%;top:22%;width:min(48vw,610px);border-color:rgba(242,239,233,.14)}.ceramic-object{position:absolute;left:8%;top:9%;width:min(63vw,760px);height:78%;filter:drop-shadow(0 45px 45px rgba(0,0,0,.58))}
.section{padding:clamp(100px,12vw,180px) clamp(22px,6vw,112px)}.section.light{background:var(--bone);color:var(--carbon)}.section.warm{background:var(--ceramic);color:var(--carbon)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:64px}.section-head p{max-width:640px;margin:0;font-size:clamp(22px,1.55vw,28px)}.section>p.lead{max-width:860px;margin:35px 0 0;font-size:clamp(22px,1.7vw,30px)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid currentColor}.door{min-height:460px;padding:42px 34px 42px 0;border-bottom:1px solid currentColor;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.door:nth-child(even){padding-left:34px;border-left:1px solid currentColor}.door p{max-width:570px;margin:18px 0 30px;font-size:22px}.door .button{align-self:flex-start}.door:before{content:"";position:absolute;right:8%;top:13%;width:170px;height:170px;border:1px solid rgba(197,169,114,.44);border-radius:50%;transition:transform .5s}.door:hover:before{transform:translate(-20px,18px) scale(1.12)}
.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.media-slot{min-height:420px;border:1px solid var(--line);background:radial-gradient(circle at 70% 30%,rgba(212,195,176,.27),transparent 24%),linear-gradient(135deg,#181918,#0d0f0e);position:relative;overflow:hidden}.media-slot:before,.media-slot:after{content:"";position:absolute;border:1px solid rgba(197,169,114,.22);border-radius:50%}.media-slot:before{width:55%;aspect-ratio:1;right:-8%;top:-12%}.media-slot:after{width:32%;aspect-ratio:1;left:10%;bottom:-8%}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.card{padding:38px 28px 44px 0;border-bottom:1px solid var(--line);min-height:330px}.card+.card{padding-left:28px;border-left:1px solid var(--line)}.card p,.step p,.person p{font-size:22px}.card .button{margin-top:18px}.workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.step{padding:32px 28px 36px 0;border-bottom:1px solid var(--line);min-height:250px}.step:nth-child(3n+2),.step:nth-child(3n+3){padding-left:28px;border-left:1px solid var(--line)}.step p{color:var(--muted)}
.price{font-size:clamp(52px,7vw,104px);font-weight:900;letter-spacing:-.07em;line-height:1;margin:25px 0}.service-list{border-top:1px solid currentColor;margin-top:55px}.service-row{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:28px 0;border-bottom:1px solid currentColor}.service-row strong,.service-row span{font-size:22px}
.network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.person{min-height:410px;border:1px solid var(--line);padding:36px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,#171918,#0b0d0c);position:relative;overflow:hidden}.person:before{content:"";position:absolute;right:-15%;top:-20%;width:58%;aspect-ratio:1;border:1px solid rgba(197,169,114,.25);border-radius:50%}.person h3,.person p{position:relative;z-index:2}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1100px;margin-top:54px}.field{display:flex;flex-direction:column;gap:10px}.field.full{grid-column:1/-1}.field label{font-size:22px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:64px;border:1px solid rgba(8,11,11,.38);background:rgba(255,255,255,.52);color:var(--carbon);padding:16px 18px;font-size:22px}.field textarea{min-height:170px;resize:vertical}.form-note{font-size:22px;max-width:900px;margin:28px 0 0}.form-actions{grid-column:1/-1;display:flex;gap:15px;flex-wrap:wrap}
footer{padding:42px clamp(22px,6vw,112px);display:flex;justify-content:space-between;gap:28px;border-top:1px solid var(--line);font-size:22px;line-height:1.4}footer strong{font-size:26px}.reveal{opacity:0;transform:translateY(30px);transition:.75s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1220px){.nav-links>a:not(.button){display:none}.menu-toggle{display:inline-flex}.nav-links.open{position:absolute;left:22px;right:22px;top:94px;display:flex;flex-direction:column;align-items:stretch;padding:24px;background:#0b0d0c;border:1px solid var(--line)}.nav-links.open>a{display:flex!important;font-size:22px;padding:10px 0}.parallax-scene{left:26%}}
@media(max-width:760px){.site-nav{min-height:88px;padding:0 22px}.brand{font-size:30px}.brand span{display:none}.nav-links>.button{display:none}.hero,.hero.compact{min-height:100svh;padding:120px 22px 80px}h1{font-size:clamp(54px,14vw,90px)}h2{font-size:clamp(46px,11.5vw,76px)}h3{font-size:clamp(34px,8.6vw,52px)}.hero p,.section-head p,.section>p.lead{font-size:22px}.hero-actions,.actions{flex-direction:column}.hero-actions .button,.actions .button{width:100%}.parallax-scene{left:-10%;top:0;width:120%;height:60%;opacity:.72}.ceramic-object{left:13%;top:3%;width:82%;height:90%}.section{padding:96px 22px}.section-head{display:block;margin-bottom:42px}.section-head p{margin-top:24px}.grid,.cards,.workflow,.network-grid,.media-grid{grid-template-columns:1fr}.door,.door:nth-child(even){min-height:360px;padding:34px 0;border-left:0}.card,.card+.card,.step,.step:nth-child(3n+2),.step:nth-child(3n+3){padding:28px 0;border-left:0}.media-slot{min-height:310px}.service-row{grid-template-columns:1fr;gap:8px}.form{grid-template-columns:1fr}.field.full,.form-actions{grid-column:auto}.person{min-height:360px;padding:28px}footer{flex-direction:column;padding:34px 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.depth{transform:none!important}*{transition-duration:.01ms!important}}
.lang-switch{display:flex;align-items:center;gap:8px;margin-left:auto}.lang-btn{min-width:54px;min-height:48px;padding:8px 12px;border:1px solid var(--line);background:transparent;color:var(--bone);font-size:22px;font-weight:800;cursor:pointer}.lang-btn.active{background:var(--bone);color:var(--carbon);border-color:var(--bone)}
.contact-block{padding:72px clamp(22px,6vw,112px);display:flex;align-items:flex-end;justify-content:space-between;gap:30px;border-top:1px solid var(--line);background:var(--carbon)}.contact-block h2{font-size:clamp(46px,6vw,88px)}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:22px}.contact-details strong{font-size:28px}.contact-details a{font-weight:800;border-bottom:1px solid currentColor}
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:56px}.offer{min-height:480px;padding:34px;border:1px solid rgba(8,11,11,.24);display:flex;flex-direction:column;align-items:flex-start}.offer p{font-size:22px;margin:20px 0}.offer-price{font-size:clamp(46px,5vw,76px);font-weight:900;letter-spacing:-.06em;line-height:1;margin:auto 0 26px}.pain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.pain{min-height:220px;padding:30px 28px 32px 0;border-bottom:1px solid var(--line)}.pain:nth-child(3n+2),.pain:nth-child(3n+3){padding-left:28px;border-left:1px solid var(--line)}.pain p{font-size:22px;margin:16px 0 0;color:var(--muted)}
@media(max-width:1220px){.lang-switch{margin-left:0}.site-nav{gap:14px}.nav-links.open{top:94px}.nav-links.open~.lang-switch{display:flex}}
@media(max-width:760px){.lang-btn{min-width:50px;min-height:46px}.contact-block{padding:64px 22px;display:block}.contact-details{margin-top:28px}.offer-grid,.pain-grid{grid-template-columns:1fr}.offer{min-height:390px}.pain,.pain:nth-child(3n+2),.pain:nth-child(3n+3){padding:26px 0;border-left:0}}

/* Full-Arch real-case photography — temporary assets supplied by Ramiro */
.fullarch-hero{background:#050505}
.fullarch-parallax-scene{position:absolute;z-index:1;inset:88px 0 0 31%;pointer-events:none;overflow:hidden;perspective:1200px}
.fullarch-parallax-scene:after{content:"";position:absolute;z-index:6;inset:0;background:linear-gradient(90deg,rgba(8,11,11,.62) 0%,rgba(8,11,11,.12) 25%,rgba(8,11,11,0) 52%),linear-gradient(0deg,rgba(8,11,11,.72),transparent 38%);pointer-events:none}
.fullarch-ring{position:absolute;z-index:0;width:min(49vw,720px);aspect-ratio:1;left:25%;top:-10%;border:1px solid rgba(197,169,114,.32);border-radius:50%;box-shadow:0 0 90px rgba(197,169,114,.10)}
.fullarch-layer{position:absolute;display:block;height:auto;object-fit:contain;filter:drop-shadow(0 34px 34px rgba(0,0,0,.52));will-change:transform}
.fullarch-layer-back-left{z-index:1;width:48%;left:-4%;top:17%;opacity:.48}
.fullarch-layer-back-right{z-index:2;width:47%;right:-2%;top:14%;opacity:.52}
.fullarch-layer-main{z-index:4;width:64%;left:18%;top:18%;opacity:1}
.fullarch-hero .hero-copy{max-width:650px}
.photo-slot{background:#050505}
.photo-slot:before,.photo-slot:after{display:none}
.photo-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .55s}
.photo-slot:hover img{transform:scale(1.035);filter:brightness(1.05)}
@media(max-width:1220px){
  .fullarch-parallax-scene{inset:90px -8% 0 25%}
  .fullarch-layer-main{width:72%;left:15%;top:19%}
}
@media(max-width:760px){
  .fullarch-hero{padding-top:120px}
  .fullarch-parallax-scene{inset:74px -22% auto -22%;height:56%;opacity:.80}
  .fullarch-layer-back-left{width:58%;left:0;top:12%;opacity:.34}
  .fullarch-layer-back-right{width:58%;right:0;top:12%;opacity:.36}
  .fullarch-layer-main{width:78%;left:11%;top:17%}
  .fullarch-ring{width:74%;left:13%;top:-6%}
  .fullarch-hero .hero-copy{width:100%;max-width:none}
  .photo-slot{min-height:320px}
}

/* Full-Arch visibility fix: one dominant real photo, clear and readable */
.fullarch-hero:after{background:linear-gradient(90deg,rgba(8,11,11,.98) 0%,rgba(8,11,11,.88) 26%,rgba(8,11,11,.26) 52%,rgba(8,11,11,0) 72%),linear-gradient(0deg,rgba(8,11,11,.82) 0%,rgba(8,11,11,.16) 28%,transparent 58%)}
.fullarch-parallax-scene{inset:86px 0 0 34%;overflow:visible}
.fullarch-parallax-scene:after{display:none}
.fullarch-main-photo{position:absolute;z-index:3;width:min(74vw,1080px);height:auto;right:-3vw;top:7%;opacity:1;filter:brightness(1.18) contrast(1.04) drop-shadow(0 38px 50px rgba(0,0,0,.38));will-change:transform}
.fullarch-ring{z-index:1;width:min(52vw,760px);left:30%;top:-9%;opacity:.8}
.fullarch-hero .hero-copy{max-width:570px}
.fullarch-hero .hero-copy h1{font-size:clamp(72px,9.2vw,148px)}
.fullarch-hero .hero-copy p{max-width:470px}
.fullarch-hero .button{backdrop-filter:blur(5px)}
.fullarch-hero + .section{position:relative;z-index:7}
.fullarch-hero .fullarch-layer{display:none!important}
@media(max-width:1220px){
 .fullarch-parallax-scene{inset:88px -6% 0 28%}
 .fullarch-main-photo{width:min(82vw,980px);right:-5vw;top:11%}
}
@media(max-width:760px){
 .fullarch-hero{min-height:100svh;align-items:flex-end;padding-bottom:68px}
 .fullarch-parallax-scene{inset:78px -18% auto -12%;height:58%;opacity:1}
 .fullarch-main-photo{width:112%;max-width:none;right:-8%;top:5%;filter:brightness(1.16) contrast(1.03)}
 .fullarch-ring{width:78%;left:23%;top:-8%}
 .fullarch-hero:after{background:linear-gradient(0deg,rgba(8,11,11,.98) 0%,rgba(8,11,11,.78) 34%,rgba(8,11,11,.12) 65%,transparent 100%)}
 .fullarch-hero .hero-copy h1{font-size:clamp(58px,15vw,88px)}
}

/* Visibility-first photographic heroes */
.home-photo-hero,.photo-fullarch-hero{background:#000!important}
.home-photo-hero:after,.photo-fullarch-hero:after{background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.84) 34%,rgba(0,0,0,.24) 58%,rgba(0,0,0,0) 78%),linear-gradient(0deg,rgba(0,0,0,.76) 0%,transparent 42%)!important}
.photo-hero-scene{position:absolute;z-index:3;inset:86px 0 0 38%;overflow:hidden;pointer-events:none}
.photo-hero-main{position:absolute;z-index:3;width:min(68vw,1080px);height:auto;right:-3vw;top:4%;object-fit:contain;opacity:1!important;filter:brightness(1.38) contrast(1.06) saturate(1.08) drop-shadow(0 35px 44px rgba(0,0,0,.38));will-change:transform}
.home-photo-hero .hero-copy,.photo-fullarch-hero .hero-copy{z-index:7;max-width:720px}
.photo-fullarch-hero .hero-copy{max-width:560px}
.photo-fullarch-hero .hero-copy h1{font-size:clamp(72px,9.2vw,148px)}
.home-photo-hero .hero-copy h1{font-size:clamp(66px,9.5vw,154px)}
@media(max-width:1220px){
 .photo-hero-scene{inset:88px -6% 0 30%}
 .photo-hero-main{width:min(82vw,980px);right:-4vw;top:8%}
}
@media(max-width:760px){
 .home-photo-hero,.photo-fullarch-hero{min-height:100svh!important;align-items:flex-end;padding-bottom:62px!important}
 .photo-hero-scene{inset:74px -18% auto -18%;height:58%;overflow:hidden}
 .photo-hero-main{width:116%;max-width:none;right:-8%;top:3%;filter:brightness(1.34) contrast(1.04) saturate(1.06)}
 .home-photo-hero:after,.photo-fullarch-hero:after{background:linear-gradient(0deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.90) 34%,rgba(0,0,0,.20) 65%,transparent 100%)!important}
 .home-photo-hero .hero-copy h1,.photo-fullarch-hero .hero-copy h1{font-size:clamp(56px,14vw,86px)}
}

/* v6: static, visibility-first photography */
.static-photo-hero{background:#000!important}
.static-photo-hero:after{background:linear-gradient(90deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.66) 37%,rgba(0,0,0,.18) 62%,rgba(0,0,0,.04) 100%),linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.04) 45%)!important}
.static-hero-media{position:absolute;z-index:1;inset:0;overflow:hidden}
.static-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:brightness(.92) contrast(1.04)}
.static-photo-hero .hero-copy{position:relative;z-index:5;max-width:780px}
.full-static .static-hero-media img{object-position:center 48%}
.technology-static .static-hero-media img{object-position:center 48%}
.workshops-static .static-hero-media img{object-position:center 46%}
.network-static .static-hero-media img{object-position:center 42%}
.photo-slot{background:#090909!important}
.photo-slot:before,.photo-slot:after{display:none!important}
.photo-slot img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;filter:none!important;opacity:1!important}
.photo-slot:hover img{transform:none!important;filter:none!important}
.network-photo-grid{margin-bottom:48px}
.wide-photo{min-height:360px}
@media(max-width:760px){
 .static-photo-hero{min-height:92svh!important}
 .static-photo-hero:after{background:linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 34%,rgba(0,0,0,.18) 72%,rgba(0,0,0,.06) 100%)!important}
 .static-hero-media{height:58%}
 .static-hero-media img{object-position:center center}
 .static-photo-hero .hero-copy{width:100%;max-width:none}
 .wide-photo{min-height:300px}
}

/* v7: imagery inside the four primary Home service cards */
.service-photo-grid{align-items:stretch}
.door-photo{display:block!important;min-height:0!important;padding:0 34px 46px 0!important}
.door-photo:nth-child(even){padding:0 0 46px 34px!important}
.door-photo:before{display:none!important}
.door-media{position:relative;width:100%;height:clamp(280px,30vw,440px);overflow:hidden;background:#111;margin-bottom:34px}
.door-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.door-copy{display:flex;flex-direction:column;align-items:flex-start;min-height:260px}
.door-copy p{margin:18px 0 30px}
.door-copy .button{margin-top:auto}
@media(max-width:760px){
 .door-photo,.door-photo:nth-child(even){padding:0 0 42px!important}
 .door-media{height:300px;margin-bottom:28px}
 .door-copy{min-height:0}
 .door-copy .button{margin-top:0}
}

