@charset "UTF-8";
:root{--bg:#181818;--panel:#212121;--paper:#efeee8;--muted:#a7a7a1;--line:#3a3a38;--accent:#ff6534;--font:Arial,Helvetica,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--font);font-size:1rem;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--bg)}.section-wrap,.header{width:min(1440px,100%);margin-inline:auto;padding-inline:5.5%}.skip-link{position:fixed;top:8px;left:8px;z-index:10;padding:12px;background:var(--paper);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.header{min-height:126px;display:flex;align-items:center;gap:3rem;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:15px;font-size:0.875rem;font-weight:800;line-height:1.15;letter-spacing:.03em}.monogram{font-size:3.3125rem;letter-spacing:-6px;line-height:1;font-weight:900;position:relative;padding-right:6px}.monogram>span{position:absolute;font-size:0.75rem;letter-spacing:0;top:0;right:-7px}.wordmark-label{display:block;font-size:0.75rem;font-weight:400;letter-spacing:.1em;color:var(--muted);margin-top:7px}.navigation{margin-left:auto;display:flex;align-items:center;gap:38px;font-size:0.875rem}.navigation a{padding-block:12px}.navigation a:hover,.back-top:hover{color:var(--accent)}.navigation a:last-child{display:flex;gap:20px}.language-switch{display:flex;align-items:center;gap:3px;font-size:0.8125rem;color:#74746f}.language-switch button{border:0;background:none;color:#9d9d97;min-height:44px;min-width:38px;cursor:pointer;padding:8px;font-size:0.8125rem}.language-switch button[aria-pressed=true]{color:var(--paper);font-weight:700}.eyebrow{display:flex;align-items:center;gap:10px;font-size:0.75rem;letter-spacing:.14em;font-weight:600;line-height:1.7;margin:0 0 26px}.small-cross{font-size:1.5625rem;color:var(--accent);line-height:1}.hero{padding-top:55px}.hero-grid{display:grid;grid-template-columns:1fr 280px;gap:55px;align-items:end}.hero h1{font-size:clamp(58px,7.1vw,102px);line-height:1.02;letter-spacing:-.065em;font-weight:700;margin:0}.hero h1 em{font-style:normal;color:var(--accent)}.hero-aside{padding-bottom:6px}.mini-index{font-family:'Courier New',monospace;color:var(--muted);font-size:0.75rem;line-height:1.8;letter-spacing:.04em;margin-bottom:44px}.hero-aside p{font-size:1rem;line-height:1.75;color:#bebeb7;margin:0 0 26px}.button{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:0.875rem;font-weight:700;padding:20px 22px;transition:background .2s,transform .2s}.button-light{background:var(--paper);color:var(--bg)}.button-light:hover{background:var(--accent);transform:translateY(-2px)}.button span:last-child{font-size:1.4375rem;line-height:1}.hero-bottom{border-top:1px solid var(--line);margin-top:52px;padding-block:21px;display:flex;gap:30px;align-items:center;justify-content:space-between;font-size:0.75rem;letter-spacing:.09em}.hero-bottom>span:nth-child(2){margin-left:auto;color:var(--muted)}.hero-bottom>a{font-size:1.5rem;padding:4px 12px}.work{padding-top:74px;padding-bottom:87px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.section-heading .eyebrow,.approach .eyebrow{color:var(--accent);margin-bottom:19px}h2{font-size:clamp(36px,4vw,56px);font-weight:600;letter-spacing:-.055em;line-height:1.1;margin:0}.section-caption{font-size:0.875rem;color:var(--muted);line-height:1.7;margin:0 0 4px}.project-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:start}.project-visual{position:relative;aspect-ratio:1.5;overflow:hidden;background:#262626}.project-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.project:hover img{transform:scale(1.035)}.project-number{position:absolute;top:16px;left:16px;display:grid;place-items:center;width:31px;height:31px;background:#181818e6;border:1px solid #ffffff40;font-size:0.75rem;border-radius:50%}.image-label{position:absolute;bottom:16px;left:16px;padding:8px 10px;background:#181818e6;color:#f4f4ed;font-size:0.75rem;letter-spacing:.1em}.project-info{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px}.project-info h3{font-size:1.75rem;font-weight:800;letter-spacing:-.04em;margin:0;display:flex;gap:4px}.project-info h3 span{font-size:0.75rem;margin-top:3px}.project-info>span{font-size:0.8125rem;color:var(--muted)}.project>p{font-size:1rem;line-height:1.75;color:var(--muted);max-width:480px;margin:14px 0 20px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{font-size:0.75rem;letter-spacing:.06em;border:1px solid #474744;padding:7px 10px;border-radius:20px}.portfolio-note{font-size:0.75rem;line-height:1.6;color:var(--muted);margin:35px 0 0;padding-top:19px;border-top:1px solid var(--line)}.approach{padding-top:78px;padding-bottom:87px;display:grid;grid-template-columns:1fr 1.23fr;gap:10%;background:var(--panel)}.approach h2 span{color:var(--accent)}.approach-intro>p:not(.eyebrow){font-size:1rem;color:#b7b7b0;line-height:1.8;max-width:380px;margin-top:25px}.signature{font-size:1.1875rem;letter-spacing:-.03em;margin-top:33px}.signature span{display:block;font-size:0.75rem;color:var(--muted);letter-spacing:.13em;margin-top:9px}.services{padding-top:9px}.service{display:grid;grid-template-columns:25px 1fr 20px;gap:18px;padding:27px 0 31px;border-top:1px solid #4a4a46}.service:last-child{padding-bottom:0}.service-index{color:var(--accent);font-size:0.75rem;padding-top:6px}.service h3{font-size:1.5625rem;font-weight:500;letter-spacing:-.04em;margin:0 0 15px;line-height:1.25}.service p{font-size:1rem;color:#b7b7b0;line-height:1.8;margin:0 0 19px;max-width:370px}.service-detail{font-size:0.75rem;letter-spacing:.09em;color:var(--muted)}.service-plus{font-size:1.4375rem;line-height:1.2;font-weight:300;color:var(--muted)}.contact{background:var(--accent);color:#181818;padding-top:68px;padding-bottom:55px}.contact .eyebrow{margin-bottom:29px}.contact-heading{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact h2{font-size:clamp(40px,5.6vw,79px);font-weight:600;line-height:1.02}.contact-arrow{font-size:7.5rem;line-height:1}.contact-bottom{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-top:43px;border-top:1px solid #18181855;padding-top:26px}.contact-bottom p{font-size:0.875rem;line-height:1.7;margin:0}.email-link{font-size:clamp(16px,2vw,26px);letter-spacing:-.04em;padding-bottom:6px;border-bottom:1px solid #181818;overflow-wrap:anywhere}.email-link span{display:inline-block;margin-left:12px}.email-link:hover{opacity:.7}.contact a:focus-visible{outline-color:var(--bg)}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:34px;padding-bottom:34px}.footer-name{font-size:0.8125rem;font-weight:700;letter-spacing:.02em}.footer-name span{display:block;font-size:0.75rem;font-weight:400;color:var(--muted);letter-spacing:.07em;margin-top:8px}.footer p{font-size:0.75rem;color:var(--muted)}.back-top{font-size:0.75rem;white-space:nowrap}.back-top span{margin-right:18px}
@media(min-width:1600px){.header{border-inline:1px solid var(--line)}body{padding-inline:30px}.hero h1{font-size:6.375rem}}
@media(max-width:1050px){.hero-grid{grid-template-columns:1fr 240px;gap:25px}.hero h1{font-size:clamp(52px,7.1vw,78px)}.hero-aside p{font-size:0.875rem}.mini-index{margin-bottom:25px}.navigation{gap:22px}.header{gap:25px}.approach{gap:6%}.service h3{font-size:1.375rem}.contact-bottom{align-items:start;flex-direction:column;gap:22px}.contact-arrow{font-size:5.9375rem}.project-info{align-items:start;flex-direction:column;gap:8px}}
@media(max-width:760px){.section-wrap,.header{padding-inline:6%}.header{min-height:98px;gap:14px;flex-wrap:wrap;padding-block:20px}.wordmark{font-size:0.75rem;gap:12px}.monogram{font-size:2.6875rem}.wordmark-label{font-size:0.75rem}.language-switch{margin-left:auto}.navigation{order:3;flex-basis:100%;justify-content:space-between;gap:15px;margin-top:12px;font-size:0.8125rem}.navigation a{padding-block:4px}.hero{padding-top:35px}.eyebrow{font-size:0.75rem;letter-spacing:.1em;margin-bottom:23px}.hero-grid{grid-template-columns:1fr;gap:29px}.hero h1{font-size:clamp(2.45rem,8.5vw,4.25rem);letter-spacing:-.065em}.hero-aside{max-width:470px}.mini-index{display:none}.hero-aside p{font-size:1rem;max-width:390px;margin-bottom:22px}.button{width:fit-content;min-width:240px;padding:17px 20px}.hero-bottom{margin-top:34px;gap:16px;font-size:0.75rem}.hero-bottom>span:nth-child(2){display:none}.work{padding-top:43px;padding-bottom:46px}.section-heading{display:block;margin-bottom:27px}.section-caption{margin-top:20px;font-size:0.875rem}.project-grid{grid-template-columns:1fr;gap:38px}.project-visual{aspect-ratio:1.5}.project-info{flex-direction:row;align-items:center;margin-top:20px}.project-info h3{font-size:1.625rem}.project-info>span{font-size:0.75rem}.project>p{font-size:1rem}.portfolio-note{margin-top:29px}.approach{grid-template-columns:1fr;gap:36px;padding-block:46px}.approach-intro>p:not(.eyebrow){max-width:100%}.signature{margin-top:24px}.service{gap:12px;padding:25px 0}.service h3{font-size:1.5rem}.service p{max-width:100%}.contact{padding-top:42px;padding-bottom:38px}.contact-heading{align-items:start;gap:10px}.contact h2{font-size:clamp(34px,7vw,50px)}.contact-arrow{font-size:3.3125rem}.contact-bottom{margin-top:31px;padding-top:23px;gap:24px}.email-link{font-size:clamp(16px,4.5vw,25px)}.footer{flex-wrap:wrap;gap:20px;padding-block:28px}.footer-name{flex-basis:100%}.footer p{margin:0;font-size:0.75rem}.back-top{font-size:0.75rem}.back-top span{margin-right:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Correo de contacto siempre visible en el encabezado. */
.header{position:sticky;top:0;z-index:5;background:var(--bg);flex-wrap:wrap;row-gap:0;padding-top:1rem;padding-bottom:.75rem}
.header-email{order:4;flex-basis:100%;padding-block:.5rem;text-align:right;font-size:.875rem;line-height:1.5;color:var(--accent);overflow-wrap:anywhere}
.header-email:hover{text-decoration:underline;text-underline-offset:4px}
html{scroll-padding-top:10rem}
@media(max-width:760px){.header-email{text-align:left}html{scroll-padding-top:17rem}}