
@font-face{
  font-family:'Glacial Indifference';
  src:url('../fonts/GlacialIndifference-Regular.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

:root{--ivory:#FAF6ED;--paper:#fffdfa;--ink:#1F2422;--muted:#6d6a65;--stone:#d8d0c4;--salvia:#7C9885;--accent:#A9822E;--line:rgba(32,32,30,.16);--sans:'Glacial Indifference',Arial,Helvetica,sans-serif;--serif:'Glacial Indifference',Arial,Helvetica,sans-serif;--max:1280px}*{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.6}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,250,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;height:78px}

.brand-logo{width:auto;height:72px;max-width:82px;object-fit:contain}

.nav-placeholder{position:relative;color:var(--ink);opacity:.72;cursor:default;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.nav-placeholder:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--stone)}.nav-links{display:flex;gap:30px;align-items:center;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.nav-links a{position:relative}.nav-links a:after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:#A9822E;transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{right:0}.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;padding:10px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0}.hero{min-height:calc(100vh - 78px);position:relative;display:grid;align-items:end;color:#fff;overflow:hidden}.hero img{position:absolute;inset:0}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.65))}.hero-content{position:relative;z-index:2;padding:8vh 0}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:500}.hero h1,.page-hero h1{font:400 clamp(3.2rem,8vw,7.8rem)/.92 'Glacial Indifference',Arial,Helvetica,sans-serif;margin:.3em 0;max-width:1000px}.hero p{max-width:580px;font-size:clamp(1rem,1.8vw,1.25rem)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;cursor:pointer;background:transparent}.btn.light{color:#fff}.btn.fill{background:var(--ink);color:#fff;border-color:var(--ink)}section{padding:110px 0}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-bottom:55px}.section-head h2{font:400 clamp(2.8rem,5vw,5rem)/.98 var(--serif);margin:0}.section-head p{max-width:640px;margin:8px 0;color:var(--muted)}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:start}.intro-copy{font:400 clamp(2rem,4vw,4.2rem)/1.08 var(--serif);margin:0}.facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.fact{padding:28px 0;border-bottom:1px solid var(--line)}.fact strong{font:400 2.4rem var(--serif);display:block}.fact span{color:var(--salvia);font-size:.82rem}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:30px 18px}.project-card{grid-column:span 6}.project-card:nth-child(3n){grid-column:span 7}.project-card:nth-child(3n+1):not(:first-child){grid-column:span 5}.project-image{aspect-ratio:4/3;overflow:hidden;background:#ddd}.project-image img{transition:transform .7s ease}.project-card:hover img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.project-meta h3{font:400 1.7rem var(--serif);margin:0}.project-meta p{margin:3px 0 0;color:var(--muted);font-size:.8rem;text-align:right}.services-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:70px 1fr 1fr;gap:25px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.service h3{font:400 2rem var(--serif);margin:0}.service p{margin:4px 0;color:var(--muted)}.band{background:var(--ivory)}.quote{font:400 clamp(2.8rem,6vw,6.2rem)/1 var(--serif);max-width:1100px;margin:0}.page-hero{padding:12vh 0 7vh;background:var(--ivory)}.page-hero p{max-width:680px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px}.filter{border:1px solid var(--line);background:transparent;padding:10px 16px;cursor:pointer}.filter.active{background:var(--ink);color:#fff}.detail-hero{height:min(75vh,780px);background:#ddd}.detail-title{display:grid;grid-template-columns:2fr 1fr;gap:60px;padding:55px 0}.detail-title h1{font:400 clamp(3.4rem,7vw,7rem)/.95 var(--serif);margin:0}.detail-facts{border-top:1px solid var(--line)}.detail-fact{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.84rem}.detail-fact span:first-child{color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery figure{margin:0;aspect-ratio:4/3}.gallery figure:nth-child(3n){grid-column:span 2;aspect-ratio:16/8}

.bio{display:grid;grid-template-columns:.85fr .65fr 1fr;gap:5vw;align-items:start}

.bio-photo{margin:0;aspect-ratio:2/3;overflow:hidden;background:var(--ivory);max-height:680px}.bio-photo img{filter:grayscale(100%);object-fit:cover}.timeline{border-top:1px solid var(--line)}.timeline-row{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.form{display:grid;gap:16px}.form label{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.form input,.form textarea,.form select{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:11px 0;outline:none}.form textarea{min-height:130px}.notice{padding:16px;border:1px solid var(--stone);background:var(--ivory);font-size:.84rem}.footer{background:var(--ink);color:#fff;padding:70px 0 30px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer h2{font:400 3rem var(--serif);margin:0 0 25px}.footer small{color:#aaa}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:100}
@media(max-width:820px){.brand{height:78px}.brand-logo{height:58px;max-width:66px}.container{width:min(calc(100% - 28px),var(--max))}.menu-toggle{display:block}.nav-links{position:fixed;top:78px;left:0;right:0;background:var(--paper);display:none;flex-direction:column;align-items:stretch;padding:28px;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.nav-links a{padding:10px 0}.section-head,.intro-grid,.bio,.contact-grid,.detail-title{grid-template-columns:1fr}.bio-photo{max-height:620px;max-width:420px}.section-head{gap:15px}.project-card,.project-card:nth-child(3n),.project-card:nth-child(3n+1):not(:first-child){grid-column:span 12}.service{grid-template-columns:45px 1fr}.service p{grid-column:2}.gallery{grid-template-columns:1fr}.gallery figure:nth-child(3n){grid-column:auto;aspect-ratio:4/3}.footer-grid{grid-template-columns:1fr}section{padding:75px 0}.hero{min-height:76vh}.detail-hero{height:55vh}}
@media(max-width:480px){.facts{grid-template-columns:1fr}.hero h1{font-size:3.4rem}.project-grid{gap:22px}.project-meta{align-items:flex-start}.project-meta h3{font-size:1.45rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Visor de proyectos: navegación visual sin abandonar la página de PROYECTOS */
body.project-modal-open{overflow:hidden}
.project-modal{position:fixed;inset:0;z-index:200;display:none;background:rgba(15,15,14,.92);color:#fff}
.project-modal.open{display:block}
.project-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.project-modal-shell{position:relative;width:100%;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#171716}
.project-modal-media{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;padding:18px 118px 0}
.project-modal-media img{width:100%;height:100%;max-width:1100px;object-fit:contain;background:#111}
.project-modal-close{position:absolute;right:22px;top:18px;z-index:5;width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.9);background:rgba(155,81,57,.95);color:#fff;font-size:34px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.project-modal-arrow{position:absolute;top:38%;z-index:5;width:48px;height:48px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(0,0,0,.28);color:#fff;font-size:38px;line-height:1;cursor:pointer}
.project-modal-arrow:disabled{opacity:.25;cursor:default}
.project-modal-prev{left:15px}.project-modal-next{right:15px}
.project-modal-counter{position:absolute;left:17px;bottom:16px;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.35);padding:5px 10px;font-size:.72rem;letter-spacing:.08em}
.project-modal-info{display:grid;grid-template-columns:2fr 1fr;gap:60px;padding:28px 34px 30px;border-top:1px solid rgba(255,255,255,.16);background:#171716;max-height:34vh;overflow:auto}
.project-modal-info h2{font:400 clamp(2.2rem,4vw,4.4rem)/.98 var(--serif);margin:4px 0 8px}
.project-modal-meta{margin:0;color:#ddd;font-size:.9rem}.project-modal-description{align-self:center;color:#ddd;max-width:560px}
.project-modal .eyebrow{color:#c99480}
@media(max-width:820px){.project-modal-media{padding:62px 48px 0}.project-modal-info{grid-template-columns:1fr;gap:10px;padding:20px 22px 24px;max-height:40vh}.project-modal-close{right:14px;top:10px;width:46px;height:46px}.project-modal-arrow{width:42px;height:42px;font-size:32px}.project-modal-prev{left:7px}.project-modal-next{right:7px}.project-modal-counter{left:9px;bottom:9px}}
@media(max-width:480px){.project-modal-media{padding:58px 36px 0 36px}.project-modal-info h2{font-size:2.3rem}.project-modal-description{font-size:.88rem}.project-modal-arrow{top:32%}}

/* ETAPA 8 · Contacto comercial */
.contact-section{padding-top:90px}.contact-grid-enhanced{align-items:start}.contact-intro h2{font:400 clamp(2.7rem,5vw,5rem)/1 var(--serif);margin:18px 0}.contact-intro>p{max-width:520px;color:var(--muted);font-size:1.02rem}.contact-direct{margin-top:55px;padding-top:24px;border-top:1px solid var(--line)}.contact-direct h3{font:400 1.8rem var(--serif);margin:0 0 16px}.contact-direct p{margin:0 0 18px;color:var(--muted)}.contact-direct strong{color:var(--ink)}.contact-direct a

{text-decoration:underline;
    text-decoration-color:var(--stone);
    text-underline-offset:4px}

.contact-signature{
    margin:18px 0 20px;
}

.contact-signature img{
    display:block;
    width:min(100%,390px);
    height:auto;
}

    
    .contact-intro .notice{margin-top:40px;max-width:520px}.contact-form-enhanced{gap:22px}.form-section-title{display:flex;align-items:baseline;gap:14px;padding-top:4px;border-top:1px solid var(--line);margin-top:4px}.form-section-title span{color:#A9822E;font-size:.72rem;letter-spacing:.16em}.form-section-title strong{font:400 1.7rem var(--serif);letter-spacing:0}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form label{display:grid;gap:2px}.form .optional{font-size:.68rem;letter-spacing:.08em;color:var(--muted);text-transform:none}.contact-submit{margin-top:5px;width:max-content;min-width:230px}.form-helper{margin:-8px 0 0;color:var(--muted);font-size:.76rem}.form-status{margin:0;
    color:var(--accent);font-size:.82rem;min-height:1.3em}
@media(max-width:820px){.contact-section{padding-top:65px}.form-two{grid-template-columns:1fr}.contact-direct{margin-top:35px}.contact-intro .notice{margin-top:28px}.contact-submit{width:100%}}
