:root{--bg:#f3f1ec;--ink:#11110f;--muted:#6e6d67;--line:rgba(17,17,15,.16);--accent:#c7ef6b;--max:1500px;--pad:clamp(20px,3vw,48px);--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}.smallcaps{font-size:11px;line-height:1.2;letter-spacing:.15em;text-transform:uppercase}.mono{font-size:12px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}.muted{color:var(--muted)}header{position:fixed;left:0;right:0;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line);mix-blend-mode:normal}.nav{max-width:var(--max);margin:0 auto;padding:0 var(--pad);height:78px;display:flex;align-items:center;justify-content:space-between;background:var(--bg)}.brand{font-size:14px;font-weight:600;letter-spacing:-.025em}.navlinks{display:flex;gap:28px;align-items:center}.navlinks a{font-size:12px}.navcta{border:1px solid var(--ink);padding:9px 13px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.hero{min-height:100svh;display:flex;align-items:flex-end;padding:155px 0 54px}.heroGrid{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:end}.heroKicker{margin-bottom:30px}.heroTitle{margin:0;max-width:1100px;font-size:clamp(58px,8.8vw,142px);line-height:.87;letter-spacing:-.065em;font-weight:500}.heroTitle em{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.075em}.heroAside{max-width:430px;justify-self:end;padding-bottom:10px}.heroAside p{margin:0 0 28px;font-size:clamp(18px,2vw,26px);line-height:1.15;letter-spacing:-.035em}.heroMeta{display:flex;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid var(--line)}.heroMeta span{max-width:170px}.section{padding:130px 0}.sectionHead{display:grid;grid-template-columns:200px 1fr;gap:40px;margin-bottom:55px}.sectionTitle{margin:0;max-width:930px;font-size:clamp(42px,6vw,90px);line-height:.93;letter-spacing:-.06em;font-weight:500}.intro{max-width:630px;margin:0;font-size:clamp(20px,2.2vw,30px);line-height:1.08;letter-spacing:-.04em}.projectGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 22px;align-items:start}.project{grid-column:auto;border-top:1px solid var(--line);padding-top:14px}.projectMedia{position:relative;overflow:hidden;aspect-ratio:4/3;margin:0 0 18px;background:#ddd}.projectMedia img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1)}.projectMedia{position:relative;overflow:hidden;aspect-ratio:4/3;margin:0 0 18px;background:#ddd}.projectMedia img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1)}.project:hover .projectMedia img{transform:scale(1.025)}.projectTop{display:flex;justify-content:space-between;gap:18px;margin-bottom:10px}.projectTitle{font-size:18px;letter-spacing:-.03em;font-weight:500}.projectMeta{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.projectDesc{margin:0;max-width:620px;font-size:15px;line-height:1.35;color:#383833}.textLink{display:inline-flex;gap:8px;align-items:center;margin-top:17px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--ink);padding-bottom:3px}.statement{background:var(--ink);color:var(--bg);padding:110px 0}.statementGrid{display:grid;grid-template-columns:200px 1fr;gap:40px}.statementText{font-size:clamp(36px,5.5vw,82px);line-height:.96;letter-spacing:-.055em;max-width:1200px}.statementText em{font-family:var(--serif);font-style:italic;font-weight:400}.services{display:grid;grid-template-columns:200px 1fr;gap:40px}.serviceList{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:70px 1fr auto;gap:22px;padding:23px 0;border-bottom:1px solid var(--line);align-items:baseline}.serviceNum{color:var(--muted);font-size:11px}.serviceName{font-size:clamp(25px,3vw,40px);letter-spacing:-.04em}.serviceDesc{max-width:370px;color:#4e4d47;font-size:13px;line-height:1.4}.philosophy{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.philosophy h3{font-size:clamp(34px,4.6vw,70px);line-height:.95;letter-spacing:-.06em;margin:30px 0 0;max-width:650px;font-weight:500}.philosophy p{max-width:500px;font-size:16px;line-height:1.45;color:#47463f}.aboutMeta{margin-top:52px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact{padding:100px 0 70px;border-top:1px solid var(--line)}.contactGrid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.contactTitle{margin:0;font-size:clamp(52px,9vw,136px);line-height:.86;letter-spacing:-.07em;font-weight:500}.contactTitle em{font-family:var(--serif);font-style:italic}.contactRight{max-width:320px}.contactRight p{font-size:18px;line-height:1.1;letter-spacing:-.025em}.contactLink{display:inline-flex;margin-top:25px;font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:5px}.footer{padding:22px var(--pad) 30px}.footerInner{max-width:var(--max);margin:0 auto;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.on{opacity:1;transform:none}.projectHero{padding:140px 0 70px}.caseHead{display:grid;grid-template-columns:1fr 320px;gap:50px;align-items:end}.caseTitle{font-size:clamp(62px,11vw,170px);line-height:.82;letter-spacing:-.075em;font-weight:500;margin:0}.caseIntro{font-size:21px;line-height:1.12;letter-spacing:-.035em;margin:0 0 28px}.caseMeta{border-top:1px solid var(--line);padding-top:17px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.caseHeroMedia{margin-top:65px}.caseHeroMedia img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#ddd}.caseBody{padding:40px 0 120px}.caseBack{display:inline-flex;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:65px;border-bottom:1px solid var(--ink);padding-bottom:4px}.caseSections{max-width:1100px;margin:0 auto}.caseSection{display:grid;grid-template-columns:200px 1fr;gap:40px;padding:45px 0;border-top:1px solid var(--line)}.caseSection h2{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:500}.caseCopy{font-size:clamp(21px,2.2vw,30px);line-height:1.12;letter-spacing:-.035em}.caseCopy p{margin:0 0 20px}.caseCopy p:last-child{margin-bottom:0}.gallery{display:flex;flex-direction:column;gap:28px;margin-top:75px;position:relative;left:50%;width:min(calc(100vw - (2 * var(--pad))),var(--max));transform:translateX(-50%)}.gallery img,.gallery video{display:block;width:100%;height:auto;max-width:none;background:#111;object-fit:contain;aspect-ratio:auto}.gallery video{min-height:220px}.nextProject{padding:90px 0 120px;border-top:1px solid var(--line)}.nextProject a{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:end}.nextName{font-size:clamp(44px,6vw,90px);line-height:.9;letter-spacing:-.06em}.nextArrow{font-size:28px}.errorBox{max-width:760px;margin:160px auto;padding:30px;border:1px solid #c9b4b4;background:#fbf5f5}.errorBox h1{font-size:40px;letter-spacing:-.04em}.errorBox p{line-height:1.5}.adminShell{min-height:100vh;background:#eceae4}.adminNav{background:#111;color:#f3f1ec;padding:17px 28px;display:flex;justify-content:space-between;align-items:center}.adminNav a{font-size:12px}.adminMain{max-width:1400px;margin:0 auto;padding:40px 28px 80px}.adminHeader{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:30px}.adminHeader h1{font-size:56px;line-height:.9;letter-spacing:-.06em;font-weight:500;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #111;background:#111;color:#fff;border-radius:999px;padding:11px 17px;font-size:12px;cursor:pointer}.btn.secondary{background:transparent;color:#111}.btn.danger{background:#7b1717;border-color:#7b1717}.btn.small{font-size:11px;padding:8px 12px}.notice{padding:13px 15px;margin-bottom:20px;border:1px solid rgba(17,17,15,.15);background:#f8f7f3;font-size:13px}.notice.error{background:#fff4f4;border-color:#d9b6b6}.adminTable{width:100%;border-collapse:collapse}.adminTable th,.adminTable td{text-align:left;padding:14px 10px;border-top:1px solid rgba(17,17,15,.14);font-size:13px;vertical-align:middle}.adminTable th{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#666}.thumb{width:110px;height:78px;object-fit:cover;background:#ddd}.badge{font-size:10px;text-transform:uppercase;letter-spacing:.1em;padding:6px 8px;border-radius:999px;border:1px solid rgba(17,17,15,.14)}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field.full{grid-column:1/-1}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.field input,.field textarea,.field select{width:100%;border:1px solid rgba(17,17,15,.23);background:#f9f8f4;padding:12px 13px;font:inherit;font-size:14px;color:#111;outline:none}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:#111}.checkRow{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.checkRow label{display:flex;gap:8px;align-items:center;font-size:13px}.imagePreview{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:start}.imagePreview img{width:220px;height:160px;object-fit:cover;background:#ddd}.login{max-width:480px;margin:10vh auto;padding:32px;background:#f8f7f3;border:1px solid rgba(17,17,15,.14)}.login h1{font-size:48px;line-height:.9;letter-spacing:-.06em;margin:0 0 24px;font-weight:500}.formActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.help{font-size:12px;color:#666;line-height:1.45}.empty{padding:35px 0;border-top:1px solid rgba(17,17,15,.14);border-bottom:1px solid rgba(17,17,15,.14)}
@media(max-width:900px){.nav{height:68px}.navlinks{gap:16px}.navcta{display:none}.hero{padding-top:118px;min-height:auto;padding-bottom:80px}.heroGrid,.sectionHead,.statementGrid,.services,.philosophy,.contactGrid,.caseHead,.caseSection{grid-template-columns:1fr}.heroAside{justify-self:start;max-width:650px;padding-top:32px}.section{padding:90px 0}.sectionHead{gap:22px;margin-bottom:40px}.projectGrid{grid-template-columns:1fr;gap:44px}.project{grid-column:auto}.service{grid-template-columns:45px 1fr;gap:10px}.serviceDesc{grid-column:2}.statement{padding:85px 0}.aboutMeta{grid-template-columns:1fr}.contact{padding-top:80px}.contactRight{max-width:600px}.projectHero{padding-top:125px}.caseTitle{font-size:clamp(60px,18vw,120px)}.caseHeroMedia{margin-top:45px}.caseSection{gap:20px}.gallery{grid-template-columns:1fr;gap:18px;left:auto;width:100%;transform:none}.gallery img:nth-child(3n+1),.gallery img:nth-child(3n+2),.gallery img:nth-child(3n+3){grid-column:auto}.adminHeader{align-items:start;flex-direction:column}.formGrid{grid-template-columns:1fr}.field.full{grid-column:auto}.imagePreview{grid-template-columns:1fr}.adminTable{display:block;overflow:auto;white-space:nowrap}.adminTable th,.adminTable td{padding:10px}.thumb{width:90px;height:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.projectMedia img{transition:none}}

/* RAMIREZ official logo */
.brand{display:inline-flex;align-items:center;line-height:0}
.brand img{display:block;width:168px;height:auto;max-height:40px;object-fit:contain}
@media(max-width:900px){.brand img{width:145px;max-height:34px}}
