:root{--red:#e32127;--ink:#191919;--paper:#f2f0eb;--muted:#706e6a;--line:#d9d5cd;--white:#fff;--serif:'Instrument Serif',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:98px;display:flex;align-items:center;justify-content:space-between;padding:18px 4vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(242,240,235,.95);backdrop-filter:blur(12px);z-index:20}.brand img{display:block;width:235px;height:auto}.nav{display:flex;align-items:center;gap:28px;font-size:.82rem;font-weight:600}.nav a:not(.nav-cta){position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--red);transition:.25s}.nav a:hover:after{right:0}.language{border:0;background:none;display:flex;gap:7px;color:#999;cursor:pointer}.language .active{color:var(--ink);font-weight:700}.nav-cta,.button{background:var(--red);color:white;padding:15px 22px;border:0;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;font-weight:600;transition:.2s}.nav-cta:hover,.button:hover{background:#bf161b}.menu-button{display:none;border:0;background:none;font-weight:700}.hero{min-height:calc(100vh - 98px);display:grid;grid-template-columns:44% 56%;grid-template-rows:1fr auto;position:relative}.hero-copy{padding:10vh 5vw 7vh 6vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.73rem;font-weight:700;color:var(--red);margin:0 0 22px}.hero h1,.section-pad h2{font-family:var(--serif);font-weight:400;line-height:.96;margin:0}.hero h1{font-size:clamp(4rem,6.3vw,7.5rem);max-width:780px}.hero-text{font-size:1.08rem;max-width:590px;margin:34px 0;color:#4f4d49}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link span{color:var(--red)}.photo-placeholder{background:linear-gradient(135deg,#cac5ba,#e8e5df 48%,#b2ada3);position:relative;min-height:260px;overflow:hidden}.photo-placeholder:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(255,255,255,.28) 25%)}.photo-placeholder>span{position:absolute;top:24px;left:24px;font-family:var(--serif);font-size:3rem;color:rgba(255,255,255,.8);z-index:1}.photo-placeholder>p{position:absolute;bottom:28px;left:28px;z-index:1;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700;color:#363430}.hero-photo{min-height:680px}.heritage{grid-column:1/-1;padding:19px 6vw;margin:0;border-top:1px solid var(--line);font-family:var(--serif);font-size:1.25rem;font-style:italic}.section-pad{padding:110px 6vw;position:relative}.section-index{position:absolute;right:6vw;top:45px;font-size:.72rem;letter-spacing:.16em;color:#888}.feature-heading{display:grid;grid-template-columns:30% 70%;align-items:end;margin-bottom:60px}.feature-heading h2,.portfolio-heading h2,.process h2,.company h2,.contact h2{font-size:clamp(3.5rem,5.5vw,6.8rem)}.feature-grid{display:grid;grid-template-columns:1fr .82fr;grid-template-rows:auto auto;gap:30px}.tall{grid-row:1/3;min-height:720px}.landscape{min-height:300px}.feature-story{padding:25px 5vw 10px 1vw}.feature-story h3{font-family:var(--serif);font-size:3.4rem;line-height:1;margin:20px 0}.feature-story>p:not(.project-type){color:#595753;max-width:560px}.project-type{color:var(--red);text-transform:uppercase;letter-spacing:.13em;font-size:.74rem;font-weight:700}.feature-story dl{border-top:1px solid var(--line);margin:38px 0 32px}.feature-story dl div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0}.feature-story dt{color:#777}.feature-story dd{margin:0;text-align:right}.dark{background:var(--ink);color:white}.dark .section-index{color:#888}.services-intro{display:grid;grid-template-columns:30% 70%;margin-bottom:65px}.services-intro h2{font-size:clamp(4rem,7vw,8rem);max-width:1000px}.service-list{border-top:1px solid #4a4a4a}.service-list article{display:grid;grid-template-columns:8% 42% 50%;gap:15px;padding:34px 0;border-bottom:1px solid #4a4a4a;align-items:start}.service-list article>span{color:var(--red)}.service-list h3{font-family:var(--serif);font-size:2.5rem;font-weight:400;line-height:1;margin:0}.service-list p{margin:5px 0 0;color:#bbb;max-width:580px}.portfolio-heading{display:grid;grid-template-columns:30% 70%;margin-bottom:65px}.editorial-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.project-card{grid-column:span 4;margin:0 0 45px}.project-card.large{grid-column:span 7}.project-card.wide{grid-column:5/span 8}.project-card .photo-placeholder{aspect-ratio:4/5}.project-card.large .photo-placeholder,.project-card.wide .photo-placeholder{aspect-ratio:16/10}.project-card p{font-family:var(--serif);font-size:1.45rem;margin:13px 0}.process{background:#dedbd4}.process>h2{max-width:850px}.process ol{list-style:none;padding:0;margin:70px 0 0;border-top:1px solid #aaa}.process li{display:grid;grid-template-columns:8% 30% 1fr;padding:25px 0;border-bottom:1px solid #aaa}.process li>span{color:var(--red)}.process strong{font-family:var(--serif);font-size:1.8rem;font-weight:400}.process li p{margin:5px 0;color:#555}.company{display:grid;grid-template-columns:30% 70%;gap:40px;align-items:center;background:white}.company-mark img{width:min(260px,80%)}.company p:last-child{font-size:1.1rem;max-width:720px;color:#555}.contact{display:grid;grid-template-columns:44% 56%;gap:6vw}.contact-intro address{display:flex;flex-direction:column;gap:8px;font-style:normal;margin-top:45px}.contact-intro address a{font-family:var(--serif);font-size:1.7rem}.contact-intro address span{color:#666;margin-top:10px}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px;background:white;padding:42px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.field input,.field select,.field textarea{border:0;border-bottom:1px solid #aaa;background:transparent;padding:12px 2px;border-radius:0}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(227,33,39,.2);outline-offset:3px}.full{grid-column:1/-1}.consent{display:flex;gap:10px;align-items:flex-start;font-size:.82rem}.form-status{grid-column:1/-1;margin:0;color:#666}footer{padding:60px 6vw 28px;background:var(--ink);color:#ccc;display:grid;grid-template-columns:2fr 1fr 1fr;gap:25px;align-items:start}footer img{width:230px;filter:brightness(0) invert(1)}footer p{margin:0}footer div{display:flex;flex-direction:column;gap:8px}.prototype{grid-column:1/-1;border-top:1px solid #444;padding-top:22px;margin-top:20px;font-size:.75rem;color:#777}
@media(max-width:980px){.site-header{height:78px}.brand img{width:190px}.menu-button{display:block}.nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:28px 5vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:11vh 6vw 8vh}.hero-photo{min-height:58vh}.heritage{grid-column:1}.feature-heading,.services-intro,.portfolio-heading,.company,.contact{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.tall{grid-row:auto;min-height:560px}.feature-story{padding:20px 0}.service-list article{grid-template-columns:12% 1fr}.service-list p{grid-column:2}.project-card,.project-card.large,.project-card.wide{grid-column:span 6}.project-form{margin-top:25px}footer{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.section-pad{padding:82px 6vw}.hero h1{font-size:3.6rem}.hero-actions{align-items:flex-start;flex-direction:column}.feature-heading,.services-intro,.portfolio-heading{display:block}.section-index{top:25px}.feature-grid{gap:20px}.feature-story h3{font-size:2.6rem}.service-list article{grid-template-columns:12% 1fr}.service-list h3{font-size:2rem}.editorial-grid{display:block}.project-card{margin-bottom:36px}.process li{grid-template-columns:15% 1fr}.process li p{grid-column:2}.project-form{grid-template-columns:1fr;padding:28px 22px}.field,.full{grid-column:1}footer{grid-template-columns:1fr}.prototype{grid-column:1}}

/* V2 — dirección más sencilla y minimalista */
body{background:#f7f6f3}
.site-header{height:82px;padding:14px 5vw;background:rgba(247,246,243,.96)}
.brand img{width:205px}
.nav{gap:24px}
.section-pad{padding:84px 7vw}
.section-index{display:none}
.hero{height:calc(100svh - 82px);min-height:650px;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr)}
.hero-copy{min-width:0;padding:clamp(34px,5.5vh,62px) 7vw}
.hero h1{font-size:clamp(3rem,4.15vw,5rem);line-height:.99}
.hero-text{font-size:1rem;max-width:520px;margin:26px 0 30px}
.hero-photo{height:100%;min-height:0}
.project-photo{position:relative;margin:0;overflow:hidden;background:#d8d4cc}
.project-photo img{display:block;width:100%;height:100%;object-fit:cover}
.hero-photo img{object-position:center 45%}
.heritage{padding:16px 7vw;font-size:1.08rem}
.feature-heading,.services-intro,.portfolio-heading{display:block;margin-bottom:44px}
.feature-heading .eyebrow,.services-intro .eyebrow,.portfolio-heading .eyebrow{margin-bottom:14px}
.feature-heading h2,.portfolio-heading h2,.process h2,.company h2,.contact h2{font-size:clamp(3rem,4vw,4.8rem);max-width:840px}
.feature-grid{grid-template-columns:1.15fr .85fr;grid-template-rows:auto;gap:54px;align-items:center}
.feature-grid .tall{grid-row:auto;min-height:560px}
.feature-grid .tall img{object-position:center center}
.feature-grid .landscape{display:none}
.feature-story{padding:0}
.feature-story h3{font-size:2.8rem}
.services-intro h2{font-size:clamp(3.2rem,4.8vw,5.4rem);max-width:800px}
.service-list article{grid-template-columns:7% 46% 1fr;padding:34px 0;align-items:center}
.service-list h3{font-size:clamp(2.45rem,3vw,3.35rem);line-height:.98;max-width:620px}
.service-list p{font-size:1.02rem;line-height:1.65}
.editorial-grid{grid-template-columns:repeat(2,1fr);gap:28px 34px}
.project-card,.project-card.large,.project-card.wide{grid-column:auto;margin:0 0 24px}
.project-card.completed-primary{grid-column:1/-1}
.project-card.completed-primary .project-photo{aspect-ratio:16/8}
.project-card .project-photo,.project-card.large .project-photo,.project-card.wide .project-photo{aspect-ratio:4/3;min-height:0}
.project-card.portrait .project-photo{aspect-ratio:4/5}
.project-card img{transition:transform .5s ease}
.project-card:hover img{transform:scale(1.015)}
.project-card p{font-size:1.25rem}
.process ol{margin-top:50px}
.process li{grid-template-columns:7% 33% 1fr;padding:20px 0}
.process strong{font-size:1.55rem}
.company{grid-template-columns:24% 1fr}
.company-mark img{width:min(210px,80%)}
.contact{grid-template-columns:40% 1fr;gap:7vw}
.project-form{padding:34px}
footer{padding:48px 7vw 25px}
@media(max-width:980px){.site-header{height:74px}.nav{top:74px}.hero{height:auto;min-height:calc(100svh - 74px);grid-template-columns:1fr;grid-template-rows:auto auto}.hero-copy{padding:9vh 7vw 7vh}.hero-photo{height:auto;min-height:50vh}.feature-grid,.company,.contact{grid-template-columns:1fr}.feature-grid .tall{min-height:480px}.service-list article{grid-template-columns:10% 1fr}.service-list p{grid-column:2}}
@media(min-width:981px) and (max-height:760px){.hero{min-height:570px}.hero-copy{padding-top:28px;padding-bottom:28px}.hero h1{font-size:clamp(2.7rem,3.65vw,4.25rem)}.hero-text{margin:18px 0 22px}.eyebrow{margin-bottom:14px}}
@media(max-width:640px){.section-pad{padding:68px 6vw}.hero h1{font-size:3.15rem}.feature-heading h2,.portfolio-heading h2,.process h2,.company h2,.contact h2,.services-intro h2{font-size:2.9rem}.editorial-grid{display:block}.project-card.completed-primary .project-photo{aspect-ratio:4/3}.feature-grid .tall{min-height:400px}.service-list h3{font-size:2.2rem;line-height:1.02}.project-form{padding:25px 20px}}
.subpage .site-header{position:relative}.assessment-page{display:grid;grid-template-columns:38% 1fr;gap:7vw;min-height:calc(100vh - 82px)}.assessment-intro h1,.project-hero h1{font-family:var(--serif);font-size:clamp(3.5rem,6vw,6.5rem);font-weight:400;line-height:.98;margin:0}.page-copy,.project-hero>p:last-child{color:#5f5c57;max-width:580px;font-size:1.05rem}.full-form{align-self:start}.project-hero{padding-bottom:55px}.project-detail{padding-top:0;display:grid;grid-template-columns:1.4fr .6fr;gap:5vw}.project-main-photo{min-height:630px}.project-facts dl{margin:0;border-top:1px solid var(--line)}.project-facts dl div{padding:18px 0;border-bottom:1px solid var(--line)}.project-facts dt{color:#777;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.project-facts dd{margin:5px 0 0;font-family:var(--serif);font-size:1.35rem}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-top:0}.project-gallery .photo-placeholder{aspect-ratio:4/5}.project-card{transition:opacity .2s}.project-card:hover{opacity:.78}@media(max-width:900px){.assessment-page,.project-detail{grid-template-columns:1fr}.project-gallery{grid-template-columns:1fr}.project-gallery .photo-placeholder{aspect-ratio:4/3}.project-main-photo{min-height:480px}}
.contact-intro .whatsapp-link{color:var(--red);font-family:var(--sans);font-size:.95rem;font-weight:700;margin-top:8px;text-decoration:underline;text-underline-offset:5px}.form-actions{display:flex;gap:14px;align-items:stretch}.form-actions .button{flex:1}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.button.secondary:hover{background:var(--ink);color:#fff}.form-note{margin:0;color:#777;font-size:.78rem}@media(max-width:640px){.form-actions{flex-direction:column}}
.document-options{border:0;border-top:1px solid var(--line);padding:20px 0 0;margin:4px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}.document-options legend{padding:0 14px 0 0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.document-options label{display:flex;align-items:flex-start;gap:9px;font-size:.9rem}.document-options input{margin-top:.25rem;accent-color:var(--red)}@media(max-width:640px){.document-options{grid-template-columns:1fr}}
.consent a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.privacy-page{display:grid;grid-template-columns:minmax(260px,34%) minmax(0,1fr);gap:8vw;align-items:start}.privacy-heading{position:sticky;top:120px}.privacy-heading h1{font-family:var(--serif);font-size:clamp(3.2rem,5vw,5.8rem);font-weight:400;line-height:.95;margin:0 0 24px}.privacy-heading>p:last-child{color:#777}.privacy-content{max-width:820px}.privacy-content section{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--line)}.privacy-content h2{font-family:var(--serif);font-size:2rem;font-weight:400;line-height:1.1;margin:0 0 16px}.privacy-content p{color:#4f4d49}.privacy-content a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.legal-note{padding:22px;border-left:3px solid var(--red);background:#ece9e2;color:#555}@media(max-width:800px){.privacy-page{grid-template-columns:1fr}.privacy-heading{position:static}.privacy-heading h1{font-size:3.4rem}}
.privacy-summary{border-left:3px solid var(--red);background:#f1eee7;padding:18px 20px;font-size:.86rem}.privacy-summary p{margin:5px 0 0;color:#555}.privacy-summary a,.legal-footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}.legal-footer{grid-template-columns:1fr auto;align-items:center}.legal-footer div{flex-direction:row;flex-wrap:wrap;gap:10px 22px}.cookie-notice{position:fixed;z-index:100;left:24px;right:24px;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:980px;margin:auto;padding:22px 24px;background:#20201f;color:#fff;box-shadow:0 15px 55px rgba(0,0,0,.25)}.cookie-notice p{margin:4px 0;color:#d3d1cc;font-size:.88rem}.cookie-notice a{font-size:.82rem;text-decoration:underline;text-underline-offset:3px}.cookie-acknowledge{border:1px solid #fff;background:#fff;color:#20201f;padding:11px 18px;cursor:pointer;font-weight:700;white-space:nowrap}@media(max-width:640px){.legal-footer{grid-template-columns:1fr}.legal-footer div{flex-direction:column}.cookie-notice{left:12px;right:12px;bottom:12px;align-items:stretch;flex-direction:column;gap:16px}.cookie-acknowledge{width:100%}}
.company-values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:46px;border-top:1px solid var(--line)}.company-values article{padding:24px 24px 0 0;border-right:1px solid var(--line)}.company-values article+article{padding-left:24px}.company-values article:last-child{border-right:0}.company-values span{display:block;color:var(--red);font-size:.72rem;font-weight:700;letter-spacing:.12em;margin-bottom:17px}.company-values h3{font-family:var(--serif);font-size:1.75rem;font-weight:400;line-height:1.05;margin:0 0 12px}.company-values p{font-size:.9rem!important;line-height:1.55;margin:0;color:#666!important}@media(max-width:760px){.company-values{grid-template-columns:1fr}.company-values article,.company-values article+article{padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}.company-values article:last-child{border-bottom:0}}
.process-note{max-width:780px;margin:34px 0 0 auto;padding-left:22px;border-left:3px solid var(--red);color:#555;font-size:.9rem}.process-note strong{color:var(--ink)}
