:root{--gold:#d8a11d;--gold-dark:#b67e0b;--ink:#181818;--cream:#f2f0eb;--white:#fff;--muted:#6b6b6b;--max:1200px;--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65;overflow-x:hidden}body.loading{overflow:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}figure{margin:0}.page-loader{position:fixed;inset:0;z-index:9999;background:#111;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;transition:opacity .8s var(--ease),visibility .8s}.page-loader.hide{opacity:0;visibility:hidden}.loader-logo{font:600 clamp(1rem,2vw,1.5rem) Montserrat;letter-spacing:.35em}.loader-line{width:210px;height:1px;background:#333;overflow:hidden}.loader-line span{display:block;width:100%;height:100%;background:var(--gold);transform:translateX(-100%);animation:loader 1.5s var(--ease) forwards}@keyframes loader{to{transform:none}}.cursor-glow{position:fixed;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(216,161,29,.12),transparent 70%);pointer-events:none;z-index:2;transform:translate(-50%,-50%);opacity:0;transition:opacity .25s}.topbar{position:fixed;z-index:100;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px max(30px,calc((100vw - var(--max))/2));color:#fff;transition:background .4s,padding .4s,box-shadow .4s}.topbar.scrolled{background:rgba(17,17,17,.93);backdrop-filter:blur(12px);padding-top:14px;padding-bottom:14px;box-shadow:0 8px 30px rgba(0,0,0,.12)}.brand{width:220px;filter:brightness(0) invert(1)}.nav{display:flex;gap:28px;font-size:.72rem;text-transform:uppercase;letter-spacing:1.8px}.nav a{position:relative;padding:7px 0}.nav a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .35s}.nav a:hover:after,.nav a.active:after{transform:scaleX(1);transform-origin:left}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span{display:block;width:26px;height:2px;background:#fff;margin:5px;transition:.3s}.hero{position:relative;min-height:100vh;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:-7%;background:url('../images/g11.jpg') center/cover no-repeat;transform:scale(1.08);animation:heroZoom 8s var(--ease) forwards;will-change:transform}@keyframes heroZoom{to{transform:scale(1)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.16) 56%,rgba(0,0,0,.38))}.hero:after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,rgba(0,0,0,.4))}.hero-inner{position:relative;z-index:3;width:min(var(--max),calc(100% - 48px));margin:0 auto;padding-top:80px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:3px;font-weight:600;font-size:.72rem;margin:0 0 16px}.hero-title{border-left:11px solid var(--gold);padding-left:38px}.hero h1{font:600 clamp(3.5rem,7vw,6.8rem)/.87 'Playfair Display',serif;margin:0;text-shadow:0 5px 24px rgba(0,0,0,.35)}.hero h1 span{display:block;overflow:hidden}.hero-copy{max-width:440px;font-size:1.08rem}.button{display:inline-block;border-radius:2px;text-transform:uppercase;letter-spacing:2px;font-weight:700;font-size:.72rem;padding:16px 30px;margin-top:24px;border:1px solid transparent;cursor:pointer;transition:transform .3s,background .3s,color .3s,border-color .3s}.gold{background:var(--gold);color:#171717}.gold:hover{background:#fff}.light{background:#fff;color:#111}.light:hover{background:transparent;color:#fff;border-color:#fff}.dark{background:#181818;color:#fff}.dark:hover{background:#fff;color:#111}.scroll-cue{position:absolute;z-index:4;bottom:34px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:2px;font-size:.58rem}.scroll-cue span{width:1px;height:55px;background:rgba(255,255,255,.35);position:relative;overflow:hidden}.scroll-cue span:after{content:"";position:absolute;inset:0;background:#fff;transform:translateY(-100%);animation:scrollLine 2s infinite}@keyframes scrollLine{50%,100%{transform:translateY(100%)}}.intro-reveal{opacity:0;transform:translateY(35px);animation:intro .9s .8s var(--ease) forwards}.intro-reveal.delay-2{animation-delay:1.05s}@keyframes intro{to{opacity:1;transform:none}}.section-pad{padding:115px max(30px,calc((100vw - var(--max))/2))}.statement{display:grid;grid-template-columns:120px 1.4fr .8fr;gap:48px;align-items:start;background:#e8e6e1}.section-number{font:600 4.5rem/1 'Playfair Display',serif;color:rgba(0,0,0,.12)}.statement h2,.feature h2,.services h2,.process h2,.portfolio h2,.contact h2{font:600 clamp(2.4rem,4.5vw,4.6rem)/1.06 'Playfair Display',serif;margin:0 0 24px}.lead{font-size:1.1rem;max-width:760px}.statement-side{padding-top:42px;color:var(--muted)}.text-link{display:inline-block;margin-top:18px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;font-size:.72rem;border-bottom:2px solid var(--gold);padding-bottom:4px}.feature{display:grid;grid-template-columns:56% 44%;min-height:700px;background:var(--gold)}.feature-image{height:700px}.feature-text{padding:100px 10%;align-self:center}.feature-text p:not(.kicker){max-width:520px;font-size:1.05rem}.feature-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.feature-points span{border:1px solid rgba(0,0,0,.3);padding:8px 13px;font-size:.7rem;text-transform:uppercase;letter-spacing:1px}.services{background:#fff}.services-heading{display:grid;grid-template-columns:.5fr 1.5fr;gap:50px;margin-bottom:65px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ddd;border-left:1px solid #ddd}.service-card{position:relative;min-height:350px;padding:34px 28px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;overflow:hidden;transition:color .45s}.service-card:before{content:"";position:absolute;inset:auto 0 0;height:0;background:var(--ink);transition:height .45s var(--ease)}.service-card:hover:before{height:100%}.service-card>*{position:relative;z-index:1}.service-card span{font-size:.7rem;letter-spacing:2px}.service-card h3{font:600 2rem 'Playfair Display',serif;margin:90px 0 12px}.service-card p{font-size:.88rem;color:var(--muted);transition:color .45s}.service-card:hover,.service-card:hover p{color:#fff}.card-line{position:absolute;left:28px;bottom:28px;width:45px;height:2px;background:var(--gold);transition:width .4s}.service-card:hover .card-line{width:calc(100% - 56px)}.process{display:grid;grid-template-columns:48% 52%;background:#191919;color:#fff}.process-image{min-height:780px}.process-panel{padding:95px 10%}.process-list article{display:grid;grid-template-columns:55px 1fr;gap:18px;padding:22px 0;border-top:1px solid rgba(255,255,255,.16)}.process-list article:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.process-list span{color:var(--gold)}.process-list h3{margin:0 0 4px;font:600 1.6rem 'Playfair Display',serif}.process-list p{margin:0;color:#bbb}.portfolio{background:var(--cream)}.portfolio-head{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:55px}.portfolio-head>p{max-width:470px;color:var(--muted)}.portfolio-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:310px 310px;gap:18px}.project{position:relative;overflow:hidden}.project-large{grid-row:1/3}.project-wide{grid-column:2/4}.project img{transition:transform 1s var(--ease),filter .6s}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.75));opacity:.75;transition:.4s}.project:hover img{transform:scale(1.07);filter:saturate(1.1)}.project figcaption{position:absolute;z-index:2;left:26px;bottom:24px;color:#fff;transform:translateY(8px);transition:.4s}.project:hover figcaption{transform:none}.project figcaption span{font-size:.65rem;letter-spacing:2px;text-transform:uppercase}.project figcaption h3{font:600 1.6rem 'Playfair Display',serif;margin:3px 0}.manifesto{position:relative;min-height:620px;display:grid;place-items:center;color:#fff;text-align:center;overflow:hidden}.manifesto-image{position:absolute;inset:-8%;background:url('../images/ab.jpg') center/cover no-repeat}.manifesto-overlay{position:absolute;inset:0;background:rgba(0,0,0,.58)}.manifesto-copy{position:relative;z-index:2;max-width:900px;padding:80px 28px}.manifesto blockquote{font:600 clamp(2.5rem,5vw,5rem)/1.08 'Playfair Display',serif;margin:20px 0}.contact{display:grid;grid-template-columns:1.1fr .9fr;background:var(--gold)}.contact-form{padding:95px max(40px,calc((100vw - var(--max))/2));padding-right:8%}.contact-form>p:not(.kicker){max-width:620px}.contact-form form{max-width:620px;margin-top:35px}.contact-form label{display:block;text-transform:uppercase;letter-spacing:1.5px;font-size:.68rem;font-weight:600;margin-bottom:14px}.contact-form input,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid rgba(0,0,0,.45);background:transparent;padding:12px 4px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#111}.contact-info{background:#202020;color:#fff;padding:95px 8%;display:flex;flex-direction:column;justify-content:center}.contact-info img{width:250px;height:auto;filter:brightness(0) invert(1);margin-bottom:28px}.contact-info a{font-size:1.05rem;border-bottom:1px solid var(--gold);width:max-content}.contact-info .small{font-size:.8rem;color:#aaa;margin-top:28px}footer{text-align:center;background:#111;color:#888;padding:18px;font-size:.72rem}.reveal-up,.reveal-left,.reveal-right,.image-reveal{opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal-up{transform:translateY(50px)}.reveal-left{transform:translateX(-55px)}.reveal-right{transform:translateX(55px)}.image-reveal{transform:scale(.96);overflow:hidden}.image-reveal img{transform:scale(1.12);transition:transform 1.25s var(--ease)}.in-view{opacity:1;transform:none}.image-reveal.in-view img{transform:scale(1)}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}@media(pointer:fine){body:hover .cursor-glow{opacity:1}}@media(max-width:980px){.cursor-glow{display:none}.topbar{padding:15px 22px}.brand{width:185px}.menu-button{display:block;z-index:3}.nav{position:fixed;inset:0 0 0 auto;width:min(340px,82vw);height:100vh;background:#161616;display:flex;flex-direction:column;padding:100px 36px;transform:translateX(100%);transition:.4s var(--ease)}.nav.open{transform:none}.menu-button.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button.active span:nth-child(2){opacity:0}.menu-button.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero-inner{grid-template-columns:1fr;gap:25px}.hero-copy{margin-left:48px}.statement{grid-template-columns:80px 1fr}.statement-side{grid-column:2}.feature,.process,.contact{grid-template-columns:1fr}.feature-image,.process-image{height:520px;min-height:0}.services-heading,.portfolio-head{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:1fr 1fr;grid-template-rows:350px 280px 280px}.project-large{grid-row:auto}.project-wide{grid-column:1/3}.contact-form{padding:80px 35px}.contact-info{padding:70px 35px}}@media(max-width:640px){.section-pad{padding:80px 22px}.hero-inner{width:calc(100% - 32px)}.hero h1{font-size:3.4rem}.hero-title{padding-left:22px;border-left-width:7px}.hero-copy{margin-left:28px}.statement{grid-template-columns:1fr}.section-number{display:none}.statement-side{grid-column:auto;padding-top:0}.feature-image,.process-image{height:380px}.feature-text,.process-panel{padding:70px 24px}.services-heading{gap:15px}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}.service-card h3{margin-top:55px}.portfolio-grid{display:block}.project{height:300px;margin-bottom:16px}.project-large{height:430px}.project-wide{height:260px}.manifesto{min-height:540px}.manifesto blockquote{font-size:2.7rem}.contact h2{font-size:2.7rem}.contact-info img{width:220px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.page-loader{display:none}.intro-reveal,.reveal-up,.reveal-left,.reveal-right,.image-reveal{opacity:1;transform:none}.image-reveal img{transform:none}}

/* ===== Ajustes creativos v2 ===== */
.creative-ticker{background:#111;color:#fff;overflow:hidden;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);padding:18px 0;white-space:nowrap}
.ticker-track{display:inline-flex;align-items:center;gap:34px;min-width:max-content;animation:tickerMove 28s linear infinite;font-size:.72rem;letter-spacing:3px;font-weight:600}
.ticker-track i{font-style:normal;color:var(--gold);font-size:.9rem}
@keyframes tickerMove{to{transform:translateX(-50%)}}

.cursor-label{position:fixed;z-index:150;left:0;top:0;pointer-events:none;opacity:0;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#111;font-size:.58rem;font-weight:700;letter-spacing:1.5px;transform:translate(-50%,-50%) scale(.65);transition:opacity .2s,transform .25s var(--ease);mix-blend-mode:normal}
.cursor-label.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}

.contact-experience{grid-template-columns:1.08fr .92fr;align-items:stretch}
.contact-intro{padding:105px max(42px,calc((100vw - var(--max))/2));padding-right:8%;display:flex;flex-direction:column;justify-content:center}
.contact-intro h2{max-width:850px}
.contact-lead{max-width:700px;font-size:1.08rem}
.contact-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:12px}
.contact-mail{margin-top:24px}
.project-prompts{margin-top:58px;padding-top:28px;border-top:1px solid rgba(0,0,0,.28);max-width:740px}
.prompt-title{text-transform:uppercase;letter-spacing:2px;font-size:.68rem;font-weight:700;margin:0 0 18px}
.prompt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
.prompt-grid span{position:relative;padding-left:18px;font-size:.9rem}
.prompt-grid span:before{content:"";position:absolute;left:0;top:.72em;width:7px;height:7px;border-radius:50%;background:#111}
.contact-studio{background:#1f1f1f;color:#fff;padding:95px 8%;display:flex;flex-direction:column;justify-content:space-between;gap:55px;position:relative;overflow:hidden}
.contact-studio:before{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(216,161,29,.22);border-radius:50%;right:-180px;top:-150px}
.studio-mark{position:relative;z-index:1}
.studio-mark img{width:260px;height:auto;filter:brightness(0) invert(1);margin-bottom:22px}
.studio-mark p{color:#ccc;margin:0}
.next-steps{position:relative;z-index:1}
.next-steps article{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.14)}
.next-steps article:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.next-steps span{color:var(--gold);font-size:.72rem;letter-spacing:1px}
.next-steps h3{font:600 1.42rem 'Playfair Display',serif;margin:0 0 4px}
.next-steps p{margin:0;color:#aaa;font-size:.86rem}
.studio-location{position:relative;z-index:1;display:flex;flex-direction:column;gap:5px}
.studio-location span{text-transform:uppercase;letter-spacing:2px;color:#888;font-size:.62rem}
.studio-location strong{font:500 1rem Montserrat,sans-serif}

/* Pequeña respiración visual en imágenes de portafolio */
.project:before{content:"";position:absolute;inset:12px;z-index:3;border:1px solid rgba(255,255,255,0);transition:border-color .5s var(--ease);pointer-events:none}
.project:hover:before{border-color:rgba(255,255,255,.45)}

@media(max-width:980px){.contact-experience{grid-template-columns:1fr}.contact-intro{padding:85px 35px}.contact-studio{padding:75px 35px}.cursor-label{display:none}}
@media(max-width:640px){.ticker-track{gap:22px;animation-duration:22s}.contact-intro{padding:75px 22px}.contact-studio{padding:65px 22px}.prompt-grid{grid-template-columns:1fr}.contact-actions{align-items:flex-start;flex-direction:column;gap:0}.studio-mark img{width:220px}}
