:root{--green:#495748;--green-dark:#3b473a;--cream:#e3dbc5;--logo-cream:#e3dbc5;--gold:#a38763;--ink:#495748;--muted:#566150;--line:#49574838;--font:'Montserrat','Century Gothic','Avenir Next',Avenir,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.14;letter-spacing:-.055em}h1{font-size:clamp(46px,5.4vw,86px)}h2{font-size:clamp(36px,4vw,61px)}h3{font-size:28px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.carousel:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip-link{position:fixed;left:20px;top:-100px;z-index:10;background:var(--cream);padding:12px}.skip-link:focus{top:12px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;flex-direction:column;align-items:center;font-size:24px;letter-spacing:.065em;font-weight:300;line-height:1.25}.brand-sub{font-size:11px;letter-spacing:.37em;margin-top:4px}.header nav{display:flex;gap:34px;align-items:center;font-size:13px}.header nav a{position:relative;padding:12px 0}.header nav a::after{content:'';position:absolute;bottom:7px;left:0;height:1px;width:0;background:var(--green);transition:width .2s}.header nav a:hover::after{width:100%}.nav-contact{margin-left:20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;min-height:665px}.hero-copy{padding:70px 5.5vw 32px;background:var(--green);color:var(--cream);display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;line-height:1.5}.hero .eyebrow{color:var(--logo-cream);margin-bottom:44px;white-space:nowrap}.hero h1 em{display:block}.hero-description{font-size:14px;color:#e3dbc5;margin:28px 0 32px;line-height:1.85}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;padding:14px 22px;font-size:13px;min-height:50px;transition:background .2s,color .2s}.button-cream{background:var(--cream);color:var(--green)}.button-cream:hover{background:var(--logo-cream)}.button-green{background:var(--green);color:var(--cream)}.button-green:hover{background:var(--green-dark)}.hero-foot{width:100%;display:flex;justify-content:space-between;gap:15px;margin-top:auto;padding-top:55px;font-size:9px;letter-spacing:.12em;color:var(--logo-cream)}.hero-foot span:last-child{letter-spacing:.01em;font-size:11px}.hero-photo{position:relative;min-width:0;overflow:hidden}.hero-photo img{object-position:47% 50%}.photo-note{position:absolute;bottom:24px;left:28px;right:28px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 5px #000}.hero-photo::after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,#0004);pointer-events:none}.photo-note{z-index:1}.section{padding:100px 8vw}.intro{display:grid;grid-template-columns:30% 70%;padding-top:110px;padding-bottom:110px}.intro>.eyebrow{margin-top:10px;color:var(--muted)}.intro-body{display:grid;grid-template-columns:1fr 1.15fr;gap:50px;margin:36px 0 30px;max-width:750px}.intro-body p{font-size:14px;color:var(--muted);line-height:1.85}.text-link{display:inline-flex;align-items:center;justify-content:center;border-bottom:1px solid var(--gold);padding:10px 0;font-size:13px}.spaces{border-top:1px solid var(--line);padding-top:70px}.section-top{display:block;margin-bottom:48px}.section-top .eyebrow{margin-bottom:24px;color:var(--muted)}.section-top>p{font-size:13px;color:var(--muted);max-width:500px;margin-top:24px;line-height:1.85}.carousel{outline-offset:10px}.carousel-slides{height:clamp(300px,41vw,590px);overflow:hidden;position:relative}.slide{height:100%;position:relative}.slide[hidden]{display:none}.slide img{object-position:center 55%;animation:appear .35s ease-out}.slide figcaption{position:absolute;bottom:20px;left:24px;color:#fff;font-size:10px;letter-spacing:.05em;background:#495748e6;padding:5px 10px}.carousel-info{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);gap:24px}.slide-copy{display:grid;grid-template-columns:80px auto;column-gap:20px}.slide-number{font-size:11px;color:var(--muted);letter-spacing:.1em;grid-row:1/3;padding-top:6px}.slide-title{font-size:27px;letter-spacing:-.04em}.slide-description{font-size:12px;color:var(--muted);margin-top:8px}.carousel-controls{display:flex;align-items:center;gap:32px}.dots{display:flex;gap:0}.dot{width:28px;height:44px;background:transparent;border:0;position:relative}.dot::after{content:'';position:absolute;top:19px;left:11px;width:6px;height:6px;border-radius:50%;background:#a38763}.dot.active::after{background:var(--green);outline:1px solid var(--green);outline-offset:4px}.arrows{display:flex;gap:4px}.arrow{width:44px;height:44px;border:0;border-radius:0;background:transparent;color:var(--green);display:grid;place-items:center;transition:color .2s,background .2s}.arrow:hover{color:var(--gold);background:#4957480d}.chevron{width:24px;height:24px}.reference-note{font-size:10px;color:var(--muted);margin-top:15px}.material-section{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream)}.material-photo{position:relative;min-height:620px;overflow:hidden}.material-photo img{object-position:22% center}.material-photo>span{position:absolute;bottom:20px;left:25px;font-size:10px;color:#fff;background:#495748e6;padding:5px 10px}.material-copy{padding:85px 7vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.material-copy .eyebrow{color:var(--logo-cream);margin-bottom:35px}.material-copy h2{font-size:clamp(36px,3.5vw,56px)}.material-copy p:not(.eyebrow){font-size:13px;line-height:1.9;color:#e3dbc5;max-width:380px;margin:30px 0 20px}.light{color:var(--cream)}.process{padding-top:100px;padding-bottom:100px}.steps{list-style:none;padding:0;margin:50px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps li{border-top:1px solid var(--line);padding-top:20px}.step-number{font-size:12px;color:var(--gold)}.steps h3{margin:35px 0 18px;font-size:28px}.steps p{color:var(--muted);font-size:13px;max-width:280px}.contact{background:#d9d2bd;display:grid;grid-template-columns:1.1fr 1fr;gap:10vw}.contact .eyebrow{color:var(--muted);margin-bottom:28px}.contact-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:350px;margin-top:28px}.contact-detail{margin-top:65px}.tiny-label{font-size:9px;letter-spacing:.15em;color:var(--muted)}.contact-detail p{margin-top:8px;font-size:17px}.contact-detail>span:last-child{font-size:11px;color:var(--muted)}form{padding-top:7px}label{display:block;font-size:11px;margin-bottom:8px}input,textarea,select{display:block;width:100%;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #49574855;border-radius:0;padding:9px 0 12px;margin-bottom:27px;font-size:14px;line-height:1.5}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#566150}form .button{width:100%;margin-top:3px}.form-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:12px}footer{display:grid;grid-template-columns:1fr 1.5fr auto;padding:50px 5.5vw 25px;align-items:center;gap:25px}footer .brand{align-items:flex-start;font-size:21px}footer .brand-sub{padding-left:4px}footer>p{font-size:12px;color:var(--muted)}.back-to-top{font-size:11px}.copyright{font-size:9px;grid-column:1/-1;border-top:1px solid var(--line);padding-top:24px;margin-top:20px;color:var(--muted)}dialog{border:0;background:var(--cream);color:var(--ink);padding:40px;max-width:520px;width:calc(100% - 32px);box-shadow:0 20px 100px #0004}dialog::backdrop{background:#495748aa}dialog h2{font-size:35px;margin:20px 0}dialog>p:not(.eyebrow){font-size:13px;margin:10px 0 20px}dialog textarea{margin-top:24px;font-size:13px}dialog .button{width:100%}.dialog-close{position:absolute;right:10px;top:6px;width:44px;height:44px;border:0;background:transparent;color:var(--green);font-size:28px}#copy-status{font-size:12px;margin-bottom:0}@keyframes appear{from{opacity:.5}to{opacity:1}}
@media(min-width:1500px){.hero-copy{padding-top:90px}.hero{min-height:760px}}
@media(max-width:1100px){.header nav{gap:22px}.hero{grid-template-columns:48% 52%;min-height:620px}.hero-copy{padding-left:5vw;padding-right:4vw}.hero .eyebrow{font-size:8px}.hero h1{font-size:60px}.hero-foot{flex-direction:column;gap:4px}.intro-body{gap:30px}.section{padding-left:6vw;padding-right:6vw}.intro{grid-template-columns:27% 73%}.material-copy{padding:65px 6vw}.material-photo{min-height:570px}.contact{gap:7vw}}
@media(max-width:800px){html{scroll-padding-top:78px}.header{height:78px;padding:0 6vw}.brand{font-size:21px}.brand-sub{font-size:9px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;width:44px;height:44px;padding:10px;color:var(--green)}.menu-toggle span{width:24px;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px 6vw 30px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 15px 25px #0001}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.header nav a{padding:14px 0;font-size:15px}.nav-contact{margin-left:0}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:50px 7vw 30px}.hero .eyebrow{font-size:9px;margin-bottom:28px}.hero h1{font-size:clamp(48px,8.7vw,70px)}.hero-description{font-size:14px;margin:24px 0 28px}.hero-foot{flex-direction:row;padding-top:42px}.hero-photo{height:440px}.hero-photo img{object-position:center}.section{padding:65px 7vw}.intro{grid-template-columns:1fr;gap:28px}.intro>.eyebrow{margin:0}.intro-body{margin-top:28px;gap:30px}.section-top{margin-bottom:32px}.section-top .eyebrow{margin-bottom:20px}.carousel-slides{height:400px}.slide-copy{grid-template-columns:50px auto;gap:12px}.carousel-controls{gap:10px}.slide-title{font-size:23px}.slide-description{max-width:310px}.material-section{grid-template-columns:1fr}.material-photo{min-height:0;height:420px}.material-copy{padding:60px 7vw}.material-copy h2{font-size:46px}.material-copy p:not(.eyebrow){max-width:480px}.steps{gap:25px;margin-top:35px}.steps h3{font-size:25px;margin-top:25px}.contact{grid-template-columns:1fr;gap:40px}.contact-detail{margin-top:30px}form{padding-top:0}.contact-copy>p:not(.eyebrow){max-width:440px}footer{grid-template-columns:1fr auto;padding:35px 7vw 22px}footer>p{grid-column:1/-1;grid-row:2}.footer-tools{grid-column:2;grid-row:1}.copyright{margin-top:0}}
@media(max-width:520px){h2{font-size:38px}.hero-copy{padding-top:42px}.hero h1{font-size:49px}.hero-photo{height:330px}.hero .eyebrow{font-size:8px;letter-spacing:.13em}.hero-foot{font-size:8px}.hero-foot span:last-child{font-size:10px}.photo-note{left:20px;right:20px;font-size:8px}.section{padding:55px 7vw}.intro-body{grid-template-columns:1fr;gap:17px}.section-top>p{margin-top:22px;font-size:12px;max-width:100%}.carousel-slides{height:310px}.slide figcaption{left:15px;bottom:15px;font-size:9px}.carousel-info{display:block;padding:23px 0}.slide-copy{grid-template-columns:45px auto}.slide-title{font-size:25px}.carousel-controls{justify-content:space-between;margin-top:20px;padding-left:57px}.slide-description{min-height:40px}.reference-note{font-size:9px}.material-photo{height:320px}.material-copy{padding:48px 7vw}.material-copy h2{font-size:39px}.steps{grid-template-columns:1fr;gap:27px;margin-top:33px}.steps li{display:grid;grid-template-columns:35px 1fr;column-gap:14px}.step-number{grid-row:1/3;padding-top:4px}.steps h3{margin:0 0 12px;font-size:25px}.steps p{max-width:none;font-size:13px}.contact .eyebrow{font-size:9px}.contact-detail p{font-size:16px}dialog{padding:32px 24px}footer{gap:20px}.footer-brand{font-size:18px!important}.back-to-top{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Íconos de redes y controles discretos, sin flechas decorativas. */
.contact-social{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:25px}
.social-profile{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--green);font-size:13px}
.instagram-icon{width:21px;height:21px;flex:none}
.social-status{font-size:10px;color:var(--muted)}
.footer-tools{display:flex;align-items:center;justify-content:flex-end;gap:24px}
.footer-social{width:44px;justify-content:center}
.social-profile:not(a){cursor:default}
a.social-profile:hover{color:var(--gold)}
.text-link:hover{border-bottom-color:var(--ink)}
@media(max-width:520px){.footer-tools{gap:10px}}

/* Header conservado de la propuesta editorial. */
html{scroll-padding-top:94px}
.header{height:88px;padding:0 4.5vw;z-index:10}
.header .brand{font-size:22px;letter-spacing:.08em;line-height:1.25}
.header .brand-sub{font-size:8px;letter-spacing:.48em;margin-top:4px}
.header nav{gap:30px;font-size:12px}
.header nav a{padding:12px 0}
.header nav a::after{content:none}
.header nav a:hover{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}
.header nav .nav-contact{border:1px solid var(--green);border-radius:30px;padding:9px 24px;margin-left:15px;transition:background .2s,color .2s}
.header nav .nav-contact:hover{background:var(--green);color:var(--cream);text-decoration:none}
@media(min-width:1650px){.header{padding-left:max(4.5vw,calc((100vw - 1560px)/2));padding-right:max(4.5vw,calc((100vw - 1560px)/2))}}
@media(max-width:800px){html{scroll-padding-top:76px}.header{height:76px;padding:0 6vw}.header .brand{font-size:20px}.header nav{top:76px;padding:20px 6vw 25px;box-shadow:0 16px 20px #0001}.header nav.open{gap:4px}.header nav a{padding:14px 0;font-size:15px}.header nav .nav-contact{align-self:flex-start;margin:10px 0 0;padding:9px 24px}}

.hero .button, #contact-submit{border-radius:30px}

/* Marca oficial: geometrías originales, versión oscura sobre beige. */
.header .brand,.footer-brand{flex-direction:row;align-items:center;gap:11px;flex-shrink:0}
.brand-symbol{display:block;width:42px;height:44px;object-fit:contain;flex:none}
.brand-name{display:block;width:151px;height:44px;object-fit:contain;flex:none}
.hero-foot{align-items:center}
.hero-signature{display:block;width:92px;height:27px;object-fit:contain}
.header nav{gap:24px}
.intro-identity{padding-right:30px}
.intro-identity>.eyebrow{margin-top:10px;color:var(--muted)}
.logo-mark{display:block;width:min(100%,220px);height:auto;aspect-ratio:1;margin-top:35px}
.official-ring,.official-trace{stroke-dasharray:1;stroke-dashoffset:0}
.official-trace{stroke-opacity:0}
.logo-mark.is-waiting .official-ring,.logo-mark.is-waiting .official-trace{stroke-dashoffset:1}
.logo-mark.is-waiting .official-trace{fill-opacity:0;stroke-opacity:1}

.logo-mark.is-drawn .official-ring{stroke-dashoffset:0;transition:stroke-dashoffset 1.6s ease}
.logo-mark.is-drawn .official-trace{stroke-dashoffset:0;fill-opacity:1;stroke-opacity:0;transition:stroke-dashoffset 1.5s ease .5s,fill-opacity .8s ease 1.4s,stroke-opacity .5s ease 2s}

/* Colección de objetos: fotografías completas y ficha junto a la pieza. */
.products{border-bottom:1px solid var(--line)}
.product-carousel{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:5vw;align-items:center}
.product-stage{height:clamp(340px,38vw,540px);background:#4957480a}
.product-stage .slide img{object-fit:contain;object-position:center}
.product-stage .slide figcaption{background:var(--green);color:var(--cream);font-size:8px;letter-spacing:.13em}
.product-story{min-width:0}
.product-kicker{font-size:9px;letter-spacing:.15em;color:var(--muted);margin-bottom:26px}
.product-story .slide-copy{display:block}
.product-story .slide-number{font-size:10px;letter-spacing:.13em;padding:0;margin-bottom:18px;color:var(--muted)}
.product-story .slide-title{font-size:clamp(25px,2.65vw,40px);line-height:1.15;letter-spacing:-.045em}
.product-story .slide-description{font-size:13px;line-height:1.85;margin-top:20px;max-width:340px;min-height:76px}
.product-inquiry{margin-top:25px;border-radius:30px}
.product-note{font-size:10px;color:var(--muted);line-height:1.7;margin-top:12px;max-width:300px}
.product-story .carousel-controls{justify-content:space-between;gap:16px;margin-top:32px;border-top:1px solid var(--line);padding-top:22px}
.product-thumbnails{gap:10px}
.product-thumbnail{width:58px;height:58px;padding:3px;border:1px solid transparent;border-radius:0}
.product-thumbnail::after{content:none}
.product-thumbnail img{width:100%;height:100%;object-fit:cover;opacity:.65;transition:opacity .2s}
.product-thumbnail.active{border-color:var(--green)}
.product-thumbnail.active img,.product-thumbnail:hover img{opacity:1}
@media(max-width:1050px){.header nav{gap:18px}.header nav .nav-contact{margin-left:0}.product-carousel{gap:4vw}.product-story .slide-description{font-size:12px}.product-story .slide-title{font-size:30px}}
@media(max-width:800px){.header nav.open{gap:4px}.intro-identity{padding-right:0}.intro-identity>.eyebrow{margin-top:0}.logo-mark{width:175px;margin-top:25px}.brand-symbol{width:37px;height:39px}.brand-name{width:134px;height:39px}.product-carousel{grid-template-columns:1fr;gap:28px}.product-stage{height:450px}.product-story .slide-description{max-width:none;min-height:0}.product-kicker{margin-bottom:16px}.product-story .slide-number{margin-bottom:12px}.product-story .carousel-controls{margin-top:24px}.product-story .slide-title{font-size:34px}}
@media(max-width:520px){.logo-mark{width:150px;margin-top:22px}.header .brand,.footer-brand{gap:8px}.brand-symbol{width:33px;height:35px}.brand-name{width:120px;height:35px}.product-stage{height:330px}.product-story .slide-title{font-size:30px}.product-story .slide-description{font-size:12px}.product-story .carousel-controls{padding-left:0}.product-inquiry{width:100%}.product-note{max-width:none}.product-story .slide-copy{display:block}.product-stage .slide figcaption{left:12px;bottom:12px;font-size:7px}}
@media(prefers-reduced-motion:reduce){.logo-mark .official-ring,.logo-mark .official-trace{stroke-dashoffset:0!important;transition:none!important}.logo-mark .official-trace{fill-opacity:1!important;stroke-opacity:0!important}}

@media(max-width:520px){footer{column-gap:16px}.footer-brand .brand-name{width:110px;height:32px}.footer-brand .brand-symbol{width:31px;height:33px}.footer-tools{gap:4px}.footer-social{width:32px}.back-to-top{font-size:9px}}

.facebook-icon{width:21px;height:21px;flex:none}

.contact-detail a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:520px){.footer-tools{flex-wrap:wrap;max-width:108px;gap:0 8px}.footer-social{width:44px;min-height:44px}.footer-tools .back-to-top{flex-basis:100%;text-align:right;padding-top:3px}}

/* Contacto y galería de vistas por producto. */
.whatsapp-link{display:inline-flex;align-items:center;gap:10px;min-height:44px}
.whatsapp-icon{width:24px;height:24px;flex:none}
.material-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch}
.material-photo{min-height:0;align-self:center;aspect-ratio:1092/1440;height:auto}
.material-photo img{object-fit:contain;object-position:center}
.material-copy{padding:60px 7vw}
.product-media{min-width:0}
.product-stage img[hidden]{display:none}
.product-story .carousel-controls{flex-wrap:wrap}
.product-thumbnails{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 100%}
.product-thumbnail{flex:0 0 48px;width:48px;height:48px}
.product-story .arrows{margin-left:auto}
.product-views{margin-top:14px}
.product-views[hidden]{display:none}
.view-label{font-size:10px;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}
.view-thumbnails{display:flex;gap:10px;flex-wrap:wrap}
.view-thumbnail{width:52px;height:64px;border:1px solid transparent;background:transparent;padding:3px}
.view-thumbnail img{object-fit:cover;opacity:.65}
.view-thumbnail[aria-pressed=true]{border-color:var(--green)}
.view-thumbnail[aria-pressed=true] img,.view-thumbnail:hover img{opacity:1}
@media(max-width:800px){.material-section{grid-template-columns:1fr}.material-photo{width:min(100%,480px);justify-self:center}.material-copy{padding:55px 7vw}.product-thumbnails{flex:1 1 300px}}
@media(max-width:520px){.material-copy{padding:48px 7vw}.product-thumbnails{flex-basis:100%}}

/* Mobiliario: vistas completas para apreciar cada configuración. */
.spaces .carousel-slides{height:auto;aspect-ratio:16/9;background:#4957480a}
.spaces .slide img{object-fit:contain;object-position:center}
.hero-photo img{object-position:center}
@media(max-width:520px){.spaces .carousel-slides{aspect-ratio:3/2}}

/* Controles adaptables para las diez imágenes de mobiliario. */
.spaces .carousel-controls{flex-wrap:wrap;justify-content:flex-end;max-width:100%;gap:12px}
.spaces .dots{flex-wrap:wrap;max-width:280px}
.spaces .dot{flex:0 0 28px}
@media(max-width:800px){.spaces .carousel-info{flex-wrap:wrap}.spaces .carousel-controls{width:100%;padding-left:0;justify-content:space-between}}

:focus-visible{outline:3px solid #a38763;outline-offset:4px}
