:root{--bg:#0d0f12;--panel:#191b20;--red:#e11935;--text:#f7f7f8;--muted:#c0c2c7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.wrap{width:min(100% - 64px,1320px);margin-inline:auto}.header{height:78px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 max(32px,calc((100vw - 1320px)/2));background:#0a0b0eeF;border-bottom:1px solid #ffffff24;backdrop-filter:blur(12px)}.logo img{width:auto;height:59px;object-fit:contain}.nav{display:flex;align-items:center;gap:clamp(13px,2vw,29px)}.nav a{font-size:12px;font-weight:700}.nav a:hover{color:#ff5b71}.menu{display:none;background:transparent;border:0;color:white;font-size:26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;border:1px solid transparent;font-size:12px;font-weight:800;transition:background .2s}.btn-red{background:var(--red);color:white}.btn-red:hover{background:#f32a46}.btn-outline{background:#1119;border-color:#a6a6ac;color:white}.header-btn{white-space:nowrap}.overline{display:block;margin-bottom:12px;color:#ff5369;font-size:10px;font-weight:800;letter-spacing:.17em}.hero{position:relative;min-height:calc(100svh - 78px);display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-back{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080a0dda 0%,#080a0d91 37%,#080a0d15 78%),linear-gradient(0deg,#080a0d8a,transparent 45%),url('assets/portada-arquitectura.webp') center 45%/cover no-repeat}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:30px;align-items:center;padding-block:90px}.hero-copy{max-width:800px}.hero h1{font-size:clamp(35px,4.25vw,68px);letter-spacing:-.045em;line-height:1.13;margin:0 0 22px;font-weight:800;text-shadow:0 2px 20px #0008}.hero h1 b{font-weight:900}.hero-copy p{max-width:560px;font-size:17px;color:#ededee;margin:0 0 27px}.actions{display:flex;flex-wrap:wrap;gap:12px}.hero-rail{display:grid;gap:12px}.hero-rail a{display:flex;align-items:center;gap:10px;padding:7px;min-height:85px;background:#0d0e12cf;border:1px solid #ffffff50}.hero-rail img{width:74px;height:68px;object-fit:cover}.hero-rail span:not(.arrow){flex:1;font-size:11px;line-height:1.25;font-weight:800;text-transform:uppercase}.arrow{color:#ff4159}.scroll-indicator{position:absolute;bottom:18px;left:5%;font-size:10px;letter-spacing:.15em}.section{padding:90px 0}.about{background:#16181c}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section h2{font-size:clamp(30px,3vw,47px);line-height:1.12;letter-spacing:-.035em;margin:0 0 24px}.section h2 em{font-style:normal;color:#d2d3d6}.about p,.bim p,.contact p{color:#c5c6ca}.about .lead{font-size:21px;color:#fff}.text-link{display:inline-block;margin-top:10px;padding-bottom:5px;border-bottom:1px solid var(--red);font-weight:700}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.section-heading h2{margin:0}.section-heading>p{max-width:340px;color:#c7c8cb;font-size:14px}.services{background:#0d0f12}.service-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.service-card{display:flex;flex-direction:column;min-width:0;background:#17191d;border:1px solid #383b41;overflow:hidden;transition:border-color .25s}.service-card:hover{border-color:#e11935}.service-card .service-photo{width:100%;height:190px;flex:0 0 190px;overflow:hidden}.service-card .service-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .35s,transform .35s}.service-card:hover .service-photo img,.service-card:focus-within .service-photo img{filter:grayscale(0);transform:scale(1.025)}.service-info{padding:22px 19px 24px;display:flex;flex:1;flex-direction:column}.service-info h3{font-size:clamp(17px,1.45vw,21px);line-height:1.22;letter-spacing:-.02em;margin:0 0 18px;min-height:52px}.service-info ul{padding-left:17px;margin:0 0 18px;color:#d3d4d6;font-size:12px;line-height:1.5}.service-info li{padding-bottom:9px}.service-info li::marker{color:#ff334e}.service-link{display:block;margin-top:auto;padding-top:12px;border-top:1px solid #ffffff20;color:#ff5269;font-weight:800;font-size:11px;letter-spacing:.05em}.service-link span{padding-left:7px}.projects{background:#15171b}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:25px}.filters button{border:1px solid #555861;background:transparent;color:#fff;padding:10px 13px;font-size:12px}.filters button.active,.filters button:hover{background:var(--red);border-color:var(--red)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project{min-width:0;background:#22252a;border:1px solid #3b3e43;overflow:hidden;cursor:pointer;transition:border-color .2s}.project:hover,.project:focus-visible{border-color:#ff3a54;outline:0}.project-media{position:relative;overflow:hidden}.project-media img{width:100%;height:230px;object-fit:cover}.project-count{position:absolute;right:10px;bottom:10px;background:#0c0e10dd;padding:4px 9px;font-size:11px}.project-copy{padding:18px}.project-copy small{font-size:10px;letter-spacing:.08em;color:#ff7182;font-weight:800}.project-copy h3{font-size:19px;margin:8px 0 6px;line-height:1.3}.project-copy p{font-size:13px;color:#c4c6cb;margin:0}.project-more{display:block;color:#ff6578;margin-top:13px;font-size:11px;font-weight:800}.note{margin-top:20px;color:#aaaeb5;font-size:12px}.bim{background:#101216}.bim-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;align-items:center}.bim-grid>img{width:100%;max-height:470px;object-fit:contain;filter:brightness(1.17)}.ticks{padding-left:20px;margin:20px 0 27px;color:#d3d4d8}.ticks li{padding:4px 0}.contact{background:#202227}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.contact-detail{display:grid;gap:12px;margin-top:35px}.contact-detail a{font-size:14px;overflow-wrap:anywhere}.contact-form{background:#55595e;border:1px solid #92959a;padding:30px;border-radius:3px}.contact-form h3{font-size:22px;margin:0 0 19px}.contact-form label{display:block;margin-bottom:13px;font-size:12px;font-weight:700}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #9a9ca1;background:#6d7176;color:#fff;border-radius:2px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ddd}.contact-form select option{color:#111;background:#fff}.contact-form .agree{display:flex;gap:9px;align-items:flex-start;font-weight:400}.agree input{margin-top:5px}.agree a{text-decoration:underline}.submit{width:100%}.status{font-size:13px}.hidden-field{position:absolute;left:-9999px}.footer{background:#090b0d;padding:45px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-grid p{font-size:13px;color:#b5b6bc;max-width:350px}.footer-grid a{font-size:13px}.social{display:flex;gap:12px}.social a{display:grid;place-items:center;width:28px;height:28px;color:white;font-size:18px;font-weight:800}.copyright{border-top:1px solid #ffffff22;padding-top:20px;margin-top:35px;color:#aaa;font-size:12px}.wa{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px #0008}.wa svg{width:30px;height:30px}.subhero{padding:100px 0;background:linear-gradient(90deg,#101114ed,#1011148c),url('assets/cocina-isla-madera.webp') center/cover}.subhero h1{font-size:clamp(38px,5vw,65px);line-height:1.1;margin:0 0 20px}.subhero p{max-width:600px;font-size:19px}.sub-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 35px;margin-bottom:65px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gallery figure{margin:0;background:#202227;overflow:hidden}.gallery img{width:100%;height:350px;object-fit:cover}.gallery-title{margin-top:45px}.legal{max-width:850px;min-height:55vh}.legal a{text-decoration:underline}
/* fichas de proyectos */.project-dialog{position:fixed;width:min(1050px,calc(100vw - 30px));max-height:90vh;padding:0;background:#191b1f;color:white;border:1px solid #777;box-shadow:0 25px 80px #000a}.project-dialog::backdrop{background:#040508dc}.dialog-body{display:grid;grid-template-columns:1.1fr 1fr}.dialog-media{position:relative;min-height:470px;background:#0c0d0f;display:grid;place-items:center}.dialog-media>img{width:100%;height:100%;max-height:80vh;object-fit:contain}.dialog-close{position:absolute;top:10px;right:10px;z-index:2;width:39px;height:39px;background:#18191de9;border:1px solid #aaa;color:white;font-size:27px}.gallery-prev,.gallery-next{position:absolute;top:45%;width:40px;height:46px;background:#000b;color:white;border:1px solid #aaa;font-size:30px}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-counter{position:absolute;bottom:12px;right:12px;background:#000c;padding:5px 12px;font-size:12px}.dialog-details{padding:48px 28px;overflow:auto;max-height:86vh}.dialog-details h2{font-size:clamp(25px,2.4vw,34px)}.dialog-details h3{font-size:16px;margin-top:22px}.dialog-details p{color:#c7c9ce}.dialog-note{font-size:12px}.gallery-thumbs{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.gallery-thumbs button{padding:0;background:none;border:2px solid transparent}.gallery-thumbs button[aria-current=true]{border-color:#f1354e}.gallery-thumbs img{width:64px;height:53px;object-fit:cover}
@media(max-width:1100px){.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card .service-photo{height:220px;flex-basis:220px}.service-info h3{min-height:0}.header{padding-inline:25px}.nav{gap:14px}.hero-grid{grid-template-columns:minmax(0,1fr) 200px}.hero h1{font-size:clamp(33px,4.5vw,53px)}}
@media(max-width:760px){.wrap{width:min(100% - 36px,1320px)}.header{height:70px;padding:0 18px}.logo img{height:52px}.menu{display:block;margin-left:auto}.header-btn{display:none}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:#111317;padding:12px 20px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:9px}.hero{min-height:calc(100svh - 70px)}.hero-grid{display:block;padding-block:65px 100px}.hero h1{font-size:clamp(32px,7vw,47px)}.hero-copy p{font-size:15px}.hero-rail{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:35px;gap:7px}.hero-rail a{display:block;min-height:0;padding:5px}.hero-rail img{width:100%;height:70px;margin-bottom:5px}.hero-rail span:not(.arrow){font-size:9px}.hero-rail .arrow{display:none}.section{padding:65px 0}.about-grid,.bim-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.section-heading{display:block}.section-heading>p{margin-top:12px}.service-list{grid-template-columns:1fr}.service-card .service-photo{height:230px;flex-basis:230px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-media img{height:170px}.project-copy{padding:13px}.project-copy h3{font-size:16px}.fields,.footer-grid,.gallery,.sub-list{grid-template-columns:1fr}.contact-form{padding:20px}.gallery img{height:250px}.footer-grid{gap:28px}.dialog-body{grid-template-columns:1fr}.dialog-media{height:35vh;min-height:240px}.dialog-media>img{max-height:35vh}.dialog-details{padding:25px;max-height:none}.project-dialog{overflow:auto;max-height:94vh}}
@media(max-width:460px){.project-grid{grid-template-columns:1fr}.project-media img{height:230px}.hero-rail img{height:58px}.actions .btn{font-size:11px;padding:10px}.service-card .service-photo{height:205px;flex-basis:205px}}
@media(hover:none){.service-card .service-photo img{filter:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
