:root{--ink:#242925;--muted:#687069;--paper:#f3f2ec;--white:#fff;--orange:#e8874c;--line:#d8d9cf;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a64a18;outline-offset:5px}img{display:block;max-width:100%}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:var(--paper);padding:15px}.skip-link:focus{top:10px}.review-banner{background:#dadccf;display:flex;justify-content:center;align-items:center;gap:8px;padding:9px 20px;font-size:10px;letter-spacing:1px;line-height:1.5}.status-dot{width:5px;height:5px;background:#475641;border-radius:50%}.site-header{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 44px;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:center;gap:14px;flex-shrink:0;font-size:12px;letter-spacing:1.5px;font-weight:700}.wordmark small{display:block;font-size:8px;font-weight:400;letter-spacing:3px;margin-top:6px}.brand-symbol{font-size:33px;letter-spacing:-3px;line-height:1}.brand-symbol span{color:#aa5324}.site-header nav{display:flex;gap:30px;align-items:center;font-size:12px}.site-header nav a{padding:8px 0}.site-header nav a:hover,footer nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.hero{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:735px;padding:50px 44px 54px;gap:45px}.hero-copy{padding:28px 0 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-label{font-size:10px;letter-spacing:1.7px;line-height:1.6}.eyebrow{display:flex;align-items:center;gap:10px}.short-line{display:inline-block;width:25px;height:1px;background:currentColor}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(64px,6.7vw,94px);line-height:.99;letter-spacing:-5px;font-weight:500;margin:35px 0 25px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1 em{color:#98502e;letter-spacing:-5px}.hero-description{max-width:340px;font-size:15px;line-height:1.8;color:#555f56;margin-bottom:25px}.hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 22px;font-size:12px;border:0;min-height:49px}.button-orange{background:var(--orange);color:#242925}.button-orange:hover:not(:disabled){background:#f29a62}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:11px;line-height:2;border-bottom:1px solid #a4a99c}.hero-footnote{display:flex;gap:15px;align-items:center;margin-top:auto;padding-top:45px;font-size:10px;line-height:1.7;color:var(--muted)}.hero-footnote p{margin:0}.plus-mark{font-size:35px;font-weight:300;color:#9caa92}.hero-visual{position:relative;padding:0 25px 50px 0;min-width:0}.photo-shell{position:relative;background:#d5d8cc;overflow:hidden}.photo-shell img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;opacity:0}.photo-shell.has-photo img{opacity:1}.photo-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:25px;text-align:center;color:#515b4d;font-size:12px;background:repeating-linear-gradient(135deg,transparent,transparent 32px,#c9cebf 33px,transparent 34px)}.hero-main{height:100%;min-height:550px;max-height:665px}.hero-main img{object-position:50% 50%}.image-label{position:absolute;left:20px;top:20px;color:white;background:#242925e8;z-index:2;font-size:8px;letter-spacing:1px;padding:9px 12px}.hero-inset{position:absolute;right:55px;bottom:0;width:38%;height:220px;border:9px solid var(--paper);box-shadow:0 8px 20px #24292514}.vertical-caption{position:absolute;right:0;top:50px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px;color:var(--muted)}.intro-band{background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px max(44px,calc((100vw - 1232px)/2));font-size:10px;letter-spacing:1.5px}.intro-band p{font-size:18px;letter-spacing:-.4px;line-height:1.5;margin:0;font-weight:400}.intro-band strong{font-weight:400;color:#ced3c5}.band-arrow{color:var(--orange);font-size:40px}.section{max-width:var(--max);margin:auto;padding:88px 44px}.section-label{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-bottom:44px;gap:20px}.cross{font-size:23px;line-height:1}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:70px}h2{font-weight:400;font-size:clamp(36px,4.3vw,59px);line-height:1.12;letter-spacing:-2.4px;margin-bottom:0}.about-text{padding-top:8px;max-width:475px}.about-text p{font-size:13px;line-height:1.85;color:var(--muted)}.about-text .lead{font-size:18px;line-height:1.6;color:var(--ink);margin-bottom:20px}.dark-link{margin-top:15px}.services{padding-top:15px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:37px}.section-heading>p{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 5px;max-width:340px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service-card{padding:27px 30px 26px;display:flex;flex-direction:column}.service-card+.service-card{border-left:1px solid var(--line)}.card-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--muted)}.card-top span:last-child{font-size:22px}.service-card svg{width:155px;height:135px;margin:30px auto 35px;fill:none;stroke:#7b8876;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}.service-card h3{font-size:24px;line-height:1.25;font-weight:400;letter-spacing:-.6px;min-height:60px;margin-bottom:14px}.service-card p{font-size:12px;color:var(--muted);line-height:1.7}.service-card a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:auto;font-size:11px}.service-card:hover{background:#e9ece2}.projects{padding-top:10px}.validation-note{display:flex;gap:15px;align-items:center;border:1px solid #c6baa0;background:#eeeadf;padding:15px 18px;margin:30px 0}.validation-note>span{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border:1px solid #756044;border-radius:50%;font-size:12px}.validation-note p{font-size:11px;line-height:1.7;color:#645238;margin:0}.validation-note strong{font-weight:600}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;margin:30px 0 22px;gap:20px}.filters{display:flex;gap:9px;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:11px 15px;font-size:11px}.filters button span{margin-left:8px;font-size:9px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}#gallery-count{margin:0;font-size:10px;color:var(--muted);white-space:nowrap}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 22px}.gallery-card{min-width:0}.gallery-photo{width:100%;border:0;padding:0;display:block;text-align:left;height:auto;aspect-ratio:3/4}.gallery-photo img{object-fit:cover;transition:transform .5s}.gallery-photo:hover img{transform:scale(1.025)}.gallery-photo:disabled{cursor:default}.gallery-zoom{position:absolute;bottom:14px;right:14px;z-index:2;background:var(--paper);width:32px;height:32px;display:grid;place-items:center;font-size:20px}.gallery-caption{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:13px}.gallery-caption h3{font-size:12px;font-weight:400;margin:0;line-height:1.5}.gallery-caption p{font-size:8px;letter-spacing:1px;margin:4px 0 0;color:var(--muted)}.gallery-caption>span{font-size:9px;color:var(--muted);line-height:1.7}.gallery-footnote{margin:25px 0 0;font-size:10px;color:var(--muted);line-height:1.8}.contact{background:var(--ink);color:var(--paper);max-width:none;padding:65px max(44px,calc((100vw - 1232px)/2)) 80px}.contact .section-label{border-color:#51594f;color:#c4cabd}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact h2{font-size:clamp(38px,4.5vw,62px)}.contact h2 em{color:var(--orange)}.contact-layout>div>p{font-size:12px;line-height:1.8;color:#c4cabd;margin:26px 0 0}.contact-panel{padding-top:8px}.contact-panel .eyebrow{color:#c4cabd;margin:0 0 20px}.contact-panel dl{margin:0 0 24px}.contact-panel dl>div{display:flex;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #51594f;font-size:11px}.contact-panel dd{margin:0;color:#c4cabd}.contact-panel .button{width:100%;opacity:.7}.contact-panel #contact-status{font-size:10px;line-height:1.7;color:#c4cabd;margin-top:12px}footer{max-width:var(--max);margin:auto;padding:40px 44px 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:30px}footer nav{display:flex;gap:24px;font-size:10px}.back-top{font-size:10px;white-space:nowrap}.back-top span{margin-left:10px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:9px;line-height:1.7;color:var(--muted)}.footer-bottom p{margin:0}dialog{border:1px solid #67715f;padding:20px;background:var(--ink);color:var(--paper);width:min(1000px,94vw);max-height:95dvh}dialog::backdrop{background:#101810e8;backdrop-filter:blur(5px)}.dialog-top,.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px}.dialog-top{margin-bottom:15px}.dialog-top p,.dialog-bottom p{margin:0;line-height:1.5}dialog button{background:transparent;border:1px solid #67715f;color:var(--paper);padding:10px;font-size:11px}#dialog-image{height:min(70dvh,760px);width:100%;object-fit:contain;background:#1c211c}.dialog-bottom{margin-top:15px}.dialog-bottom p{font-size:9px;text-align:center;color:#c4cabd}@media(min-width:1600px){.hero{min-height:790px}.hero-main{max-height:690px}}@media(max-width:1000px){.site-header{padding:24px 28px}.site-header nav{gap:20px}.hero{padding:35px 28px 45px;gap:25px;min-height:680px}h1{font-size:70px}.hero-main{min-height:510px}.hero-inset{height:190px;right:35px;width:45%}.section{padding:65px 28px}.services,.projects{padding-top:10px}.intro-band{padding:30px 28px;gap:20px;font-size:9px}.section-heading>p{max-width:270px}.service-card{padding:23px}.contact{padding:60px 28px}.contact-layout{gap:35px}.gallery{gap:25px 16px}footer{padding:35px 28px}.footer-top{flex-wrap:wrap}footer nav{gap:18px}}@media(max-width:740px){html{scroll-padding-top:20px}.review-banner{font-size:8px;padding:9px 12px}.banner-detail{letter-spacing:0}.site-header{position:relative;padding:23px 20px}.wordmark{font-size:10px;gap:11px}.wordmark small{font-size:7px}.brand-symbol{font-size:29px}.menu-toggle{display:flex;align-items:center;gap:12px;background:transparent;border:1px solid #c3c7ba;padding:10px 12px;font-size:11px}.menu-icon{width:15px;height:9px;border-top:1px solid;border-bottom:1px solid}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:22px;z-index:10;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #24292512}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:7px}.site-header nav a{padding:12px}.hero{display:flex;flex-direction:column;padding:22px 20px 35px;gap:30px;min-height:0}.hero-copy{padding-top:9px}.eyebrow{font-size:8px}h1{font-size:clamp(58px,13vw,82px);letter-spacing:-3px;line-height:1.02;margin:25px 0 20px}h1 em{letter-spacing:-3px}.hero-description{font-size:13px;max-width:340px}.hero-actions{gap:18px}.button{font-size:11px;padding:15px 18px}.hero-footnote{display:none}.hero-visual{height:520px;padding-right:21px;padding-bottom:40px}.hero-main{min-height:0;height:100%}.hero-inset{height:170px;width:40%;right:40px;border-width:7px}.vertical-caption{font-size:7px}.intro-band{padding:25px 20px;display:grid;grid-template-columns:1fr 1fr;gap:20px 30px;align-items:center}.intro-band p{font-size:17px}.intro-band .band-arrow{display:none}.intro-band>span{font-size:8px}.section{padding:55px 20px}.section-label{font-size:8px;margin-bottom:30px}.section-label>span:last-child:not(.cross){text-align:right;font-size:7px}.about-content{grid-template-columns:1fr;gap:26px}h2{font-size:40px;letter-spacing:-1.7px}.about-text .lead{font-size:16px}.about-text{padding-top:0}.services,.projects{padding-top:5px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:20px;max-width:none;font-size:11px}.service-grid{grid-template-columns:1fr}.service-card{padding:23px 25px;position:relative;min-height:245px}.service-card+.service-card{border-left:0;border-top:1px solid var(--line)}.service-card svg{position:absolute;right:20px;top:44px;width:100px;height:95px;margin:0}.service-card h3{font-size:23px;min-height:0;max-width:65%;margin:27px 0 12px}.service-card p{max-width:65%;font-size:11px;margin-bottom:23px}.service-card a{margin-top:10px}.validation-note{padding:13px;align-items:flex-start;gap:10px}.validation-note p{font-size:10px}.validation-note strong{display:block}.gallery-toolbar{align-items:flex-start;gap:10px}.filters{gap:5px}.filters button{font-size:10px;padding:10px}.filters button span{margin-left:3px}#gallery-count{font-size:9px;padding-top:10px}.gallery{grid-template-columns:repeat(2,1fr);gap:24px 12px}.gallery-caption h3{font-size:10px}.gallery-caption>span{display:none}.gallery-caption p{font-size:7px}.gallery-zoom{width:27px;height:27px;bottom:9px;right:9px}.contact{padding:50px 20px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact h2{font-size:41px}.contact-layout>div>p{font-size:11px}.contact-panel dl>div{font-size:10px}footer{padding:35px 20px 24px}.footer-top{gap:25px;align-items:flex-start}.footer-top nav{width:100%;order:3;flex-wrap:wrap;justify-content:space-between}.back-top{font-size:9px;padding-top:10px}.footer-bottom{flex-direction:column;gap:7px;font-size:8px}dialog{padding:12px}.dialog-bottom{flex-wrap:wrap}.dialog-bottom p{order:3;width:100%;font-size:8px}}@media(max-width:380px){.review-banner{flex-wrap:wrap;gap:3px 6px}.banner-detail{width:100%;text-align:center}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-visual{height:440px}.gallery-toolbar{flex-direction:column}#gallery-count{padding-top:0}.contact h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}@media(prefers-reduced-motion:no-preference){.hero-copy{animation:arrive .65s both}.hero-visual{animation:arrive .8s .1s both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}

.photo-shell.has-photo .photo-empty{display:none}

/* Portafolio contrastado y cuatro servicios */
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-card{padding:26px 23px}
.service-card h3{font-size:22px;min-height:58px}
.service-card p{min-height:62px;line-height:1.8}
.service-card svg{width:140px}
.gallery-toolbar{align-items:flex-start}
.filters{max-width:900px}
.gallery-card{display:flex;flex-direction:column}
.project-caption{padding:18px 0 0;display:flex;flex-direction:column;flex:1}
.project-caption-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.project-caption-top h3{font-size:24px;line-height:1.2;letter-spacing:-.6px;font-weight:400;margin:0}
.project-caption-top>span{font-size:9px;color:var(--muted)}
.project-location{font-size:12px;line-height:1.7;margin:8px 0 0;color:#535f50}
.project-type{font-size:9px;line-height:1.7;color:var(--muted);margin:8px 0}
.project-description{font-size:12px;line-height:1.8;color:#53604f;margin:4px 0 14px}
.project-review{font-size:8px;letter-spacing:1px;color:#755431;margin-top:auto;margin-bottom:14px}
.project-details{width:100%;text-align:left;padding:14px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font-size:11px}
.project-details:hover{text-decoration:underline;text-underline-offset:5px}
.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.detail-image{align-self:start;min-height:420px;height:70dvh;background:#353e32}
.detail-image .photo-empty{color:#cbd2c2;background:repeating-linear-gradient(135deg,transparent,transparent 32px,#424d3d 33px,transparent 34px)}
#dialog-image{height:100%;width:100%;object-fit:contain;background:#1c211c}
.detail-content h2{font-size:42px;line-height:1.15;letter-spacing:-1px}
.detail-content>p:not(.eyebrow){font-size:12px;line-height:1.8;color:#c9d0c2;margin:15px 0}
.detail-content .detail-location{font-size:15px;color:var(--orange)}
#dialog-facts{margin:22px 0}
#dialog-facts>div{padding:13px 0;border-top:1px solid #51594f}
#dialog-facts dt{font-size:9px;color:#b4bfae;letter-spacing:.5px;margin-bottom:6px}
#dialog-facts dd{font-size:11px;line-height:1.8;margin:0;color:var(--paper)}
.detail-warning{background:#3d3c2e;border:1px solid #7b704e;padding:13px;font-size:10px;line-height:1.8;margin-bottom:20px}
.detail-warning p{margin:6px 0 0;color:#d5d5c1}
#dialog-source{color:var(--paper)}
#project-dialog{width:min(1100px,94vw);padding:25px}
#project-dialog .dialog-top .eyebrow{font-size:8px}
#project-dialog a:focus-visible,#project-dialog button:focus-visible{outline-color:var(--orange)}
#project-dialog button:disabled{opacity:.4}
@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:nth-child(3){border-left:0}.service-card:nth-child(n+3){border-top:1px solid var(--line)}.service-card{padding:28px}.detail-layout{gap:22px}}
@media(max-width:740px){.service-grid{grid-template-columns:1fr}.service-card{padding:23px 25px}.service-card h3{font-size:23px;min-height:0}.service-card p{min-height:0}.service-card svg{width:100px}.gallery-toolbar{flex-direction:column;gap:12px}#gallery-count{padding:0}.project-caption-top h3{font-size:19px}.project-location{font-size:10px}.project-type{font-size:8px}.project-description{font-size:10px}.project-review{font-size:7px;line-height:1.7}.project-details{font-size:10px}.detail-layout{grid-template-columns:1fr}.detail-image{height:50dvh;min-height:300px}#project-dialog{padding:15px}.detail-content h2{font-size:36px}.detail-content>p:not(.eyebrow){font-size:11px}#dialog-facts dd{font-size:10px}.dialog-top .eyebrow{max-width:60%}.dialog-bottom p{order:3;width:100%;font-size:8px}}
@media(max-width:420px){.gallery{grid-template-columns:1fr;gap:38px}.gallery-photo{aspect-ratio:4/5}.project-caption-top h3{font-size:25px}.project-description{font-size:12px}.project-location{font-size:12px}.project-type{font-size:9px}.project-review{font-size:8px}.project-details{font-size:11px}}

.whatsapp-pending{background:transparent;color:var(--paper);border:1px solid #68735f;margin-bottom:10px;opacity:.7}
@media(max-width:740px){.service-card svg{top:18px;width:75px;height:78px}.service-card h3{max-width:100%;margin-top:65px}.service-card p{max-width:100%}}

/* Revisión solicitada: identidad completa y portada de mayor presencia */
.site-header{gap:30px}.wordmark{font-size:19px;line-height:1.2;letter-spacing:.4px}.wordmark small{margin-top:8px}.brand-symbol{font-size:52px}.site-header nav{flex-shrink:0}
.hero{position:relative;background:linear-gradient(125deg,#e6ece2 0%,#f4f0e6 50%,#d5e1d6 100%);border-radius:4px;isolation:isolate}
.hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 49.8%,#6b806018 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#6b806018 50%,transparent 50.2%);background-size:70px 70px;pointer-events:none}
.hero-copy{padding:25px 0}.hero h1{font-size:clamp(48px,5.2vw,75px);line-height:1.06;letter-spacing:-3px}.hero h1 em{color:#a94d26;letter-spacing:-3px}.hero-description{max-width:430px;font-size:16px}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 25px}.hero-tags span{font-size:9px;letter-spacing:1px;border:1px solid #879981;padding:9px 12px;background:#ffffff50}
.hero-main{border-radius:140px 4px 4px 4px;box-shadow:0 20px 40px #223b2520}.hero-inset{display:none}.hero-project-note{position:absolute;bottom:18px;left:-20px;z-index:3;background:#234e43;color:#fff;padding:24px 28px;border-left:5px solid #e9955c;box-shadow:0 15px 35px #18291d30}.hero-project-note>span{font-size:8px;letter-spacing:1.8px;color:#c1d3c8}.hero-project-note strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:26px;line-height:1.15;margin:12px 0}.hero-project-note a{font-size:11px;color:#ffbf92}
.eduardo-portrait{display:flex;align-items:center;gap:20px;margin-top:30px;padding:22px;border:1px dashed #98a68f;background:#e8ece2}.portrait-monogram{display:grid;place-items:center;flex-shrink:0;width:90px;height:112px;background:#d5ddcd;color:#536c51;font-family:Georgia,serif;font-size:35px}.eduardo-portrait strong{font-size:14px;line-height:1.5}.eduardo-portrait p{margin:8px 0 0;font-size:11px}
.contact-panel dl>div{flex-wrap:wrap}.contact-panel dd{max-width:270px;overflow-wrap:anywhere;line-height:1.7}.contact-panel .button{opacity:1}.whatsapp-secondary{background:transparent;border:1px solid #8d9f86;color:#fff;margin-top:12px}.whatsapp-secondary:hover{background:#354b3b}.reference-capture{object-fit:contain!important;background:white!important}.contact-panel dd a:hover{text-decoration:underline}
@media(max-width:1100px){.wordmark{font-size:16px}.site-header nav{gap:15px}.hero h1{font-size:54px}.hero-project-note{left:0}}
@media(max-width:740px){.site-header{gap:15px}.wordmark{font-size:clamp(12px,3.5vw,17px);gap:10px}.brand-symbol{font-size:36px}.wordmark small{font-size:7px}.menu-toggle{flex-shrink:0;padding:10px}.hero{margin:0 10px;padding:22px 16px 40px}.hero-copy{padding:0}.hero h1{font-size:clamp(36px,9.5vw,65px);letter-spacing:-1.8px}.hero h1 em{letter-spacing:-1.8px}.hero-description{font-size:14px}.hero-main{border-top-left-radius:90px}.hero-project-note{bottom:8px;left:0;padding:20px}.hero-project-note strong{font-size:24px}.eduardo-portrait{padding:15px;gap:14px}.portrait-monogram{width:72px;height:95px}.footer-top .wordmark{font-size:14px}}

/* Tonalidades oscuras y contacto visible */
:root{--paper:#101817;--ink:#eef2e9;--muted:#abb8ad;--line:#37463e;--orange:#ef9a60}
body{background:#101817;color:#eef2e9}.review-banner{background:#25372e;color:#d4e1d3}.status-dot{background:#a9c39a}.brand-symbol span{color:#ef9a60}.wordmark small{color:#b6c7b5}
.hero{background:radial-gradient(ellipse at 10% 10%,#31544280,transparent 60%),linear-gradient(120deg,#142620,#17231f 60%,#28392b)}.hero::before{background:linear-gradient(90deg,transparent 49.8%,#b5d4ad0c 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#b5d4ad0c 50%,transparent 50.2%);background-size:70px 70px}
.hero h1 em{color:#efab79}.hero-description{color:#c0ccbf}.hero-tags span{border-color:#59795e;background:#31493660;color:#d5e4d0}.hero-main{box-shadow:0 24px 60px #0005}.hero-project-note{background:#294e3c;border-color:#efab79}.hero-footnote{color:#b6c7b5}.plus-mark{color:#efab79}
.button-orange{background:#ef9a60;color:#15221b}.intro-band{background:#253c30;color:#eef2e9}.intro-band strong{color:#c4dcb8}
.about-text .lead{color:#eef2e9}.about-text p,.section-heading>p{color:#b7c5b7}.eduardo-portrait{background:#22342a;border-color:#718967}.portrait-monogram{background:#354e39;color:#e0e9d4}
.service-card{background:#17251e}.service-card:hover{background:#23372a}.service-card svg{stroke:#b2c79e}.service-card p{color:#b7c5b7}
.validation-note{background:#302d21;border-color:#766d4a}.validation-note p{color:#ded5b7}.validation-note>span{border-color:#cbbf8f;color:#ded5b7}
.filters button[aria-pressed=true]{background:#b9caa4;border-color:#b9caa4;color:#17221a}.project-location,.project-description{color:#b7c5b7}.project-review{color:#e8b37d}.gallery-zoom{background:#25382b;color:#eef2e9}
.contact{background:#1c3025;color:#eef2e9}.contact-panel dd{color:#d2dece}.footer-bottom{color:#b7c5b7}
dialog{background:#16241c;color:#eef2e9}#dialog-facts dd{color:#eef2e9}#dialog-source{color:#eef2e9}.dialog-top button,.dialog-bottom button{color:#eef2e9}.skip-link{background:#23472f;color:#fff}
.hero-whatsapp{display:inline-flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid #58d88c;background:#125b36;color:#fff;box-shadow:0 6px 22px #0a10084d;font-size:12px;border-radius:8px}.hero-whatsapp svg{width:35px;height:35px;flex-shrink:0}.hero-whatsapp small{display:block;font-size:9px;font-weight:400;margin-top:4px;color:#cdf1d4}.hero-whatsapp:hover{background:#177b45}
.whatsapp-float{position:fixed;right:26px;bottom:26px;z-index:40;display:flex;align-items:center;gap:12px;background:#25d366;color:#062913;padding:13px 20px 13px 13px;border:2px solid #b4f5c6;border-radius:999px;box-shadow:0 8px 30px #0006;font-weight:700;font-size:13px;transition:transform .2s,background .2s}.whatsapp-float svg{width:36px;height:36px}.whatsapp-float:hover{background:#52eb89;transform:translateY(-3px)}.whatsapp-float:focus-visible,.hero-whatsapp:focus-visible{outline:3px solid #fff;outline-offset:5px}footer{padding-bottom:110px}
@media(max-width:740px){.site-header nav{background:#17251e}.menu-toggle{color:#eef2e9;border-color:#52664e}.hero-actions{gap:14px}.whatsapp-float{right:16px;bottom:16px;padding:12px;border-radius:50%;width:62px;height:62px;justify-content:center}.whatsapp-float span{display:none}.whatsapp-float svg{width:36px;height:36px}.hero-whatsapp{font-size:11px}.hero-whatsapp svg{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float:hover{transform:none}}

.header-ruc{display:block;width:fit-content;margin-top:10px;padding:6px 10px;border:1px solid #78996b;background:#29402d;color:#f0dfba;font-size:13px;letter-spacing:1px;font-weight:700}
.eduardo-portrait{display:block;width:min(100%,360px);margin:30px auto 0;padding:0;border:1px solid #52674a;border-radius:14px;overflow:hidden;background:#22342a;text-align:center}
.eduardo-portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%;opacity:1}
.eduardo-portrait figcaption{padding:18px 16px}.eduardo-portrait figcaption strong{display:block;font-size:15px;line-height:1.5}.eduardo-portrait figcaption span{display:block;margin-top:6px;font-size:11px;color:#bccbb5}
@media(max-width:740px){.header-ruc{font-size:10px;margin-top:7px;padding:5px 7px;letter-spacing:.5px}.eduardo-portrait{max-width:320px}}
