:root{--bg:#09090a;--panel:#121214;--line:#2a2a2e;--text:#f6f3ee;--muted:#aaa6a0;--red:#ef343e;--max:1180px;--nav:76px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{width:100%;display:block}button,input,select,textarea{font:inherit}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}
nav{position:fixed;z-index:50;top:0;left:0;right:0;background:rgba(7,7,8,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.navin{height:var(--nav);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:.8rem}.brand img{width:50px;height:50px;object-fit:contain;background:#fff;border-radius:4px}.links{display:flex;align-items:center;gap:22px;font-size:.88rem;color:#ddd}.links a:hover{color:#fff}.nav-social{display:flex;align-items:center;gap:8px}.pill{padding:10px 13px;border:1px solid #515156;border-radius:999px;font-size:.78rem;font-weight:700}.pill:hover{background:#fff;color:#111}.pill.red{background:var(--red);border-color:var(--red)}.menu-toggle{display:none;background:transparent;border:1px solid #444;color:#fff;padding:9px 11px;border-radius:4px;cursor:pointer}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding-top:var(--nav);overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 62%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.62) 48%,rgba(0,0,0,.18) 78%),linear-gradient(0deg,rgba(0,0,0,.9),transparent 52%)}.hero-copy{position:relative;z-index:2;padding:92px 0 78px;max-width:760px}.hero-logo{width:100px!important;height:100px!important;object-fit:contain!important;background:#fff;border-radius:7px;margin-bottom:22px}.eyebrow,.kicker,.project-tag{color:#ff747a;text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;font-weight:800}.hero h1,.head h2,.project-copy h2,.contact h2,.quote h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.045em}.hero h1{font-size:clamp(3.1rem,8vw,7rem);line-height:.94;margin:12px 0 22px}.hero p{font-size:clamp(1.02rem,1.7vw,1.28rem);color:#ddd;max-width:650px;margin:0 0 29px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;font-weight:800;border-radius:3px;border:0;cursor:pointer}.primary{background:var(--red);color:#fff}.primary:hover{background:#ff4b54}.secondary{border:1px solid #85858a}.secondary:hover{background:#fff;color:#111}
section{padding:90px 0;border-top:1px solid #18181b;scroll-margin-top:var(--nav)}.head{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:end;margin-bottom:42px}.head h2,.project-copy h2,.contact h2{font-size:clamp(2.5rem,5vw,4.45rem);line-height:1;margin:9px 0 0}.head p{margin:0;color:var(--muted);font-size:1.02rem}.services{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.service{padding:27px;min-height:188px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,#151517,#101012)}.service .num{color:#666;font-family:Georgia,serif;font-style:italic}.service h3{margin:47px 0 7px;font-size:1.08rem}.service p{margin:0;color:#999;font-size:.91rem}
#proyectos{padding-bottom:30px}.project-index{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-card{position:relative;min-height:360px;overflow:hidden;background:#171719}.project-card img{position:absolute;inset:0;height:100%;object-fit:cover;transition:transform .5s}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.87),rgba(0,0,0,.05) 65%)}.project-card:hover img{transform:scale(1.035)}.project-card div{position:absolute;z-index:2;left:20px;right:20px;bottom:20px}.project-card small{display:block;color:#ff7b80;text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;font-weight:800}.project-card strong{display:block;font-family:Georgia,serif;font-size:1.45rem;margin-top:4px;font-weight:500}
.project-section{padding:0;border-top:0;scroll-margin-top:var(--nav)}.project-hero{position:relative;min-height:72vh;display:flex;align-items:flex-end;overflow:hidden}.project-hero img{position:absolute;inset:0;height:100%;object-fit:cover}.project-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.93),rgba(0,0,0,.06) 68%)}.project-copy{position:relative;z-index:2;padding:64px 0 52px}.project-copy p{max-width:640px;color:#d6d2cd;font-size:1.02rem}.story{padding:20px 0 92px}.story-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:13px}.shot{position:relative;overflow:hidden;background:#151515;min-height:290px;margin:0;cursor:zoom-in}.shot img{height:100%;object-fit:cover;transition:transform .5s}.shot:hover img{transform:scale(1.025)}.shot span{position:absolute;left:14px;bottom:13px;background:rgba(0,0,0,.68);padding:7px 10px;font-size:.67rem;letter-spacing:.11em;text-transform:uppercase}.a{grid-column:span 7;min-height:445px}.b{grid-column:span 5;min-height:445px}.c{grid-column:span 4}.d{grid-column:span 4}.e{grid-column:span 4}.wide{grid-column:span 12;min-height:510px}
.quote{background:#ece8e1;color:#111;padding:80px 0}.quote .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px}.quote h2{font-size:clamp(2.6rem,5.2vw,4.9rem);line-height:.99;margin:0}.quote p{font-family:Georgia,serif;font-size:clamp(1.28rem,2.3vw,1.92rem);line-height:1.4;margin:0;color:#302e2b}
.contact{padding-bottom:65px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}.card{padding:30px;border:1px solid var(--line);background:#111113}.card h3{font-family:Georgia,serif;font-size:1.9rem;font-weight:500;margin:0 0 9px}.contact-list{display:grid;margin-top:21px}.contact-list a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid #303035}.contact-list a:hover{color:#ff7379}.social-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.social-row a{padding:10px 13px;border:1px solid #39393d;border-radius:999px;font-size:.82rem}.social-row a:hover{background:#fff;color:#111}form{display:grid;gap:10px}input,select,textarea{width:100%;padding:14px 15px;background:#0a0a0b;border:1px solid #343439;color:#fff}textarea{min-height:122px;resize:vertical}.email-direct{margin-top:13px;color:#bbb}.email-direct a{color:#fff;border-bottom:1px solid #777}
footer{padding:26px 0 35px;border-top:1px solid #222;color:#7c7c7f;font-size:.8rem}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footlinks{display:flex;gap:15px;flex-wrap:wrap}.footlinks a:hover{color:#fff}
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:45;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .2s}.whatsapp-float:hover{transform:translateY(-2px) scale(1.03)}.whatsapp-float svg{width:29px;height:29px;fill:#fff}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:28px}.lightbox.open{display:flex}.lightbox img{max-width:min(95vw,1500px);max-height:90vh;width:auto;height:auto;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:20px;width:44px;height:44px;border-radius:50%;border:1px solid #555;background:#111;color:#fff;font-size:1.5rem;cursor:pointer}
@media(max-width:980px){.links,.nav-social .pill:not(.red){display:none}.menu-toggle{display:inline-block}.head,.quote .wrap,.contact-grid{grid-template-columns:1fr}.project-index{grid-template-columns:1fr 1fr}.services{grid-template-columns:1fr 1fr}.a,.b,.c,.d,.e{grid-column:span 6;min-height:350px}.wide{min-height:420px}.hero:after{background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.18) 76%)}.mobile-menu{display:none;position:fixed;top:var(--nav);left:0;right:0;background:#0c0c0e;border-top:1px solid #222;padding:18px 24px 24px;z-index:49}.mobile-menu.open{display:grid}.mobile-menu a{padding:15px 0;border-bottom:1px solid #28282c;font-weight:700}.mobile-menu .mobile-social{display:flex;gap:8px;flex-wrap:wrap;padding-top:16px}.mobile-menu .mobile-social a{padding:10px 12px;border:1px solid #38383c;border-radius:999px;font-size:.8rem}}
@media(min-width:981px){.mobile-menu{display:none!important}}
@media(max-width:620px){:root{--nav:66px}.wrap{width:min(var(--max),calc(100% - 26px))}.navin{height:var(--nav)}.brand img{width:44px;height:44px}.brand span{display:none}.pill{font-size:.76rem;padding:9px 11px}.hero-copy{padding:92px 0 52px}.hero-logo{width:80px!important;height:80px!important}.actions{display:grid}.btn{width:100%}section{padding:68px 0}.services,.project-index{grid-template-columns:1fr}.service{min-height:166px}.service h3{margin-top:35px}.project-card{min-height:315px}.a,.b,.c,.d,.e,.wide{grid-column:span 12;min-height:315px}.project-hero{min-height:58vh}.quote{padding:64px 0}.card{padding:22px}.whatsapp-float{width:54px;height:54px;right:14px;bottom:14px}}
