
:root{--black:#0d0d0d;--surface:#151515;--white:#fff;--light:#f4f2ee;--muted:#aaa7a1;--line:rgba(255,255,255,.16);--serif:"Cormorant Garamond",serif;--sans:"Inter",sans-serif;--container:min(1180px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:var(--container);margin-inline:auto}.narrow{max-width:920px}.section-light{background:var(--light);color:var(--black)}.section-dark{background:var(--black);color:var(--white)}.eyebrow{margin:0 0 18px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#d8d5cf}.eyebrow.dark{color:#6f6c67}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:.98}h1{max-width:820px;font-size:clamp(3.2rem,7vw,7.5rem);letter-spacing:-.035em}h2{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.025em}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:600;transition:.25s ease}.btn-light{background:var(--white);color:var(--black)}.btn-light:hover{background:#dedbd5}.btn-outline{border-color:rgba(255,255,255,.65);color:var(--white)}.btn-outline:hover{background:var(--white);color:var(--black)}
.loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:var(--black);transition:opacity .7s,visibility .7s}.loader span{font-family:var(--serif);font-size:3rem;letter-spacing:.18em}.loader.hidden{opacity:0;visibility:hidden}.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;transition:.35s}.site-header.scrolled{background:rgba(13,13,13,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:var(--serif);font-size:1.8rem;letter-spacing:.15em}.nav-links{display:flex;gap:32px;font-size:.78rem;text-transform:uppercase;letter-spacing:.09em}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:#fff;transition:.25s}.nav-links a:hover:after{width:100%}.menu-toggle{display:none;background:none;border:0;color:#fff;padding:8px}.menu-toggle span{display:block;width:26px;height:1px;background:currentColor;margin:7px 0}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;background:url('../images/galeria/asientos-respaldos-a-medida.webp') center/cover no-repeat;transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.42) 58%,rgba(0,0,0,.2)),linear-gradient(0deg,rgba(0,0,0,.72),transparent 55%)}.hero-content{position:relative;z-index:2;padding-bottom:12vh}.hero-content>p:not(.eyebrow){max-width:610px;font-size:clamp(1rem,1.5vw,1.2rem);color:#dedede}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.scroll-cue{position:absolute;right:4vw;bottom:38px;z-index:2;font-size:.68rem;text-transform:uppercase;letter-spacing:.16em}.scroll-cue span{margin-left:10px}.statement{padding:130px 0}.statement h2{max-width:1000px}.qualities{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:58px;padding-top:28px;border-top:1px solid #ccc8c1}.qualities span{font-size:.85rem}.services{padding:0 0 130px}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:55px}.section-heading>div{max-width:760px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:390px;color:#615e59}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.service-card{background:#eae7e1;overflow:hidden}.service-card img{width:100%;height:420px;object-fit:cover;transition:transform .7s ease}.service-card:hover img{transform:scale(1.035)}.service-card div{padding:28px}.service-card h3{font-family:var(--serif);font-size:2rem;font-weight:500;margin-bottom:6px}.service-card p{margin-bottom:0;color:#66625d}.about{padding:130px 0}.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:9vw;align-items:center}.about-image img{width:100%;max-height:740px;object-fit:cover}.about-copy h2{margin-bottom:38px}.about-copy p:not(.eyebrow){color:#c5c2bd;max-width:680px}.works{padding:130px 0}.gallery{columns:3 280px;column-gap:18px}.gallery-item{display:block;width:100%;margin:0 0 18px;padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden}.gallery-item img{width:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.025)}.process{padding:0 0 130px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;list-style:none;padding:0;margin:0}.process-grid li{border-top:1px solid #c8c4bd;padding-top:22px}.process-grid span{font-size:.72rem;letter-spacing:.16em;color:#77736e}.process-grid h3{font-family:var(--serif);font-size:1.7rem;font-weight:500;margin:28px 0 10px}.process-grid p{color:#66625d;font-size:.9rem}.contact{padding:130px 0 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding-bottom:110px}.contact-copy h2{max-width:650px}.contact-copy>p:not(.eyebrow){color:#bcb9b4;max-width:540px}.contact-links{display:flex;flex-direction:column;gap:12px;margin-top:42px;color:#d2cfca}.contact-links a:hover{text-decoration:underline}.contact-form{display:grid;gap:22px}.contact-form label{display:grid;gap:8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#aaa}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #555;background:transparent;color:#fff;padding:12px 0;outline:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#fff}.contact-form .btn{justify-self:start}.contact-form small{color:#888}.map-wrap iframe{display:block;width:100%;height:430px;border:0;filter:grayscale(1) contrast(.9)}.footer{background:#080808;border-top:1px solid #252525;padding:48px 0}.footer-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.footer strong{font-family:var(--serif);font-size:2rem;letter-spacing:.14em}.footer p{margin:5px 0 0;color:#777}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:80;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#000;font-size:.72rem;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.28)}.lightbox{max-width:min(1100px,92vw);max-height:92vh;padding:0;border:0;background:transparent}.lightbox::backdrop{background:rgba(0,0,0,.92)}.lightbox img{max-width:100%;max-height:86vh;object-fit:contain}.lightbox-close{position:fixed;right:22px;top:18px;border:0;background:none;color:#fff;font-size:2.5rem;cursor:pointer}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){:root{--container:min(100% - 28px,1180px)}.nav{height:72px}.menu-toggle{display:block;z-index:2}.nav-links{position:fixed;inset:0;background:#0d0d0d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;font-family:var(--serif);font-size:2rem;transform:translateY(-100%);transition:.4s}.nav-links.open{transform:none}.hero-content{padding-bottom:14vh}.hero-actions{flex-direction:column;align-items:stretch;max-width:360px}.scroll-cue{display:none}.statement,.about,.works,.contact{padding-top:90px}.statement,.services,.process{padding-bottom:90px}.qualities,.process-grid{grid-template-columns:1fr 1fr}.section-heading{display:block}.section-heading>p{margin-top:22px}.service-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.service-card img{height:310px}.about-grid{gap:50px}.about-image{order:2}.gallery{columns:2 150px}.contact-grid{padding-bottom:80px}.footer-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){h1{font-size:3.25rem}.qualities,.process-grid{grid-template-columns:1fr}.gallery{columns:1}.service-card img{height:260px}.hero-media{background-position:62% center}.footer-inner>div:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
