/* Rodrigo Enríquez — sitio estático independiente para Cloudflare Pages */
:root{--ink:#17242d;--navy:#101a22;--night:#131e27;--gold:#d8a66b;--cream:#f5f3ee;--paper:#edeee9;--muted:#87949a;--text:#37424a;--line:#d4d3cc}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}
:focus-visible{outline:3px solid #e8b976;outline-offset:4px}
::selection{background:#e4bc81;color:#111a1f}
.wrap{width:min(100% - 104px,1440px);margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:20px;padding:12px;background:white;color:#111;z-index:200}.skip-link:focus{top:18px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Impact,'Arial Narrow','Helvetica Neue',sans-serif;font-stretch:condensed;letter-spacing:.006em;font-weight:800}
.site-header{position:absolute;z-index:30;inset:0 0 auto 0;border-bottom:1px solid #ffffff24;color:white}
.header-container{width:min(100% - 104px,1440px);height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:auto}
.brand{display:inline-flex;align-items:center;gap:16px;flex-shrink:0}.brand-icon{font-size:38px;font-weight:900;letter-spacing:-.13em;line-height:1}.brand-icon>span:first-child{color:#faf5ee}.brand-icon .brand-point{color:var(--gold);margin-left:.1em}.brand-name{font-weight:500;letter-spacing:.22em;font-size:13px;line-height:1.5;white-space:nowrap}.brand-name strong{font-weight:800}.brand-name small{display:block;font-size:9px;color:#b1babe;letter-spacing:.3em}
.site-nav{display:flex;align-items:center;gap:36px}.site-nav a{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;transition:color .2s ease}.site-nav a:hover,.site-nav a:focus-visible{color:var(--gold)}
.nav-toggle{display:none;background:transparent;border:1px solid #ffffff55;border-radius:2px;width:48px;height:44px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.nav-toggle span{width:22px;height:2px;background:white;transition:transform .2s ease,opacity .2s ease}
.hero{min-height:790px;min-height:max(740px,100svh);position:relative;overflow:hidden;background:radial-gradient(circle at 75% 47%,#34444c 0,#1c2b34 42%,#111a22 80%);color:white;isolation:isolate;display:flex;align-items:center;padding:135px 0 100px}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#131c25f4 0%,#131c25ee 31%,#131c2566 62%,#131c2510 100%);z-index:-1;pointer-events:none}.hero-glow{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 143px,#ffffff09 144px 145px),repeating-linear-gradient(0deg,transparent 0 143px,#ffffff07 144px 145px);opacity:.5;z-index:-1}.hero-architecture{position:absolute;right:-5%;top:2%;bottom:-4%;width:min(73%,1050px);z-index:-2;opacity:.97}.hero-architecture img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-layout{position:relative;z-index:1}.hero-content{max-width:960px}.eyebrow{font-weight:700;color:#e7bb86;font-size:12px;letter-spacing:.34em;display:flex;align-items:center;gap:18px;margin-bottom:30px}.eyebrow span{width:46px;height:2px;background:var(--gold)}.hero h1{font-size:clamp(62px,8vw,130px);line-height:1.075;letter-spacing:-.025em;margin:0 0 27px;text-shadow:0 8px 24px #0001}.hero h1 span{color:var(--gold)}.hero-description{max-width:490px;color:#d9dedf;font-size:17px;line-height:1.8;margin-bottom:29px}.primary-link{display:inline-flex;gap:48px;align-items:center;justify-content:space-between;min-height:58px;background:var(--gold);color:#1a2023;font-weight:800;font-size:11px;letter-spacing:.1em;padding:17px 23px;transition:background .25s ease,transform .25s ease}.primary-link:hover{background:#f1c28e;transform:translateY(-3px)}.primary-link span{font-size:25px;line-height:1}.hero-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;position:absolute;z-index:1;bottom:38px;left:0;right:0;font-size:10px;letter-spacing:.18em;color:#b9c3c5}.hero-footer a{white-space:nowrap}.hero-footer a:hover{color:var(--gold)}
.section-padding{padding:115px 0}.intro{background:#f3f2ed}.intro-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2.05fr);gap:65px}.section-label{color:#a37b50;font-weight:800;font-size:11px;letter-spacing:.2em}.section-rule{width:75%;height:1px;background:#cecec7;margin-top:35px}.overline{font-size:11px;font-weight:800;letter-spacing:.25em;color:#b48a56;margin-bottom:24px}.intro h2,.services h2,.specialties h2{font-size:clamp(60px,6.8vw,114px);line-height:1.07;letter-spacing:-.018em;margin:0 0 34px}.intro h2 em,.services h2 em,.specialties h2 em{font-style:normal;color:#b88c57}.intro-lead{font-size:18px;color:#525c60;line-height:1.75;max-width:580px;margin-bottom:30px}.tag-list{display:flex;flex-wrap:wrap;gap:9px}.tag-list span{display:inline-flex;align-items:center;min-height:42px;padding:11px 15px;border:1px solid #c9c7bc;font-size:10px;letter-spacing:.1em;font-weight:800;color:#39434a}
.services{background:#15232c;color:white}.services-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:48px}.services-heading h2{margin-bottom:0}.services-heading>p{color:#c1cbcc;max-width:260px;font-size:15px;line-height:1.8;margin:0 0 8px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.service-card{background:#263640;overflow:hidden;border:1px solid #ffffff19;min-width:0;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-5px);border-color:#d8a66b8a;box-shadow:0 25px 48px #030a0c3b}.service-card--wide{grid-column:span 2}.service-visual{position:relative;aspect-ratio:1.47;overflow:hidden;background:#334851}.service-visual::after{content:"";position:absolute;inset:0;border:1px solid #ffffff30;pointer-events:none}.service-card--wide .service-visual{aspect-ratio:2.3}.service-visual img{height:100%;width:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1),filter .4s ease}.service-card:hover .service-visual img{transform:scale(1.045);filter:saturate(1.15)}.service-copy{padding:25px 27px 28px;min-height:160px}.service-index{font-size:10px;letter-spacing:.19em;font-weight:800;color:var(--gold)}.service-copy h3{font-size:clamp(26px,2.5vw,39px);line-height:1.15;text-transform:uppercase;overflow-wrap:anywhere;margin:12px 0 9px}.service-copy p{font-size:14px;line-height:1.55;color:#c8d0d1;margin:0}.image-note{font-size:12px;color:#bec9cc;letter-spacing:.03em;margin:24px 0 0}
.specialties{background:#f0eee8}.specialties-layout{display:grid;grid-template-columns:1fr 1.24fr;gap:8%}.specialties h2{font-size:clamp(55px,5.4vw,92px)}.specialties-desc{color:#656c6c;font-size:15px}.specialty-list{list-style:none;margin:0;padding:0;border-top:1px solid #c9c8c1}.specialty-list li{border-bottom:1px solid #c9c8c1}.specialty-list a{display:grid;grid-template-columns:42px minmax(0,1fr) 22px;align-items:center;gap:19px;padding:23px 6px;transition:background .2s ease,padding .2s ease}.specialty-list a:hover{background:#e4e1d9;padding-inline:18px}.index-number{font-size:11px;letter-spacing:.08em;font-weight:800;color:#ad7c47}.specialty-list a>span:nth-child(2){font-size:clamp(15px,1.55vw,22px);font-weight:800;text-transform:uppercase;line-height:1.2}.arrow{font-size:25px;font-weight:400}
.closing{background:radial-gradient(circle at 70% 48%,#35454e,#141e26 68%);padding:125px 0 118px;color:white;text-align:center;overflow:hidden}.closing-content{position:relative}.closing-rules{position:absolute;inset:-80px 5%;background:repeating-linear-gradient(90deg,transparent 0 160px,#ffffff08 161px 162px);pointer-events:none}.closing .overline{position:relative;margin-bottom:40px}.closing h2{position:relative;font-size:clamp(78px,10.3vw,167px);line-height:1.05;letter-spacing:-.035em;margin:0 0 38px}.closing h2 span{color:var(--gold)}.closing a{position:relative;font-weight:800;font-size:11px;letter-spacing:.2em;border-bottom:1px solid var(--gold);padding-bottom:11px;display:inline-block}.closing a:hover{color:var(--gold)}
.footer{background:#0c151b;color:#bec9ca}.footer-layout{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;letter-spacing:.14em}.footer a{color:var(--gold);white-space:nowrap}
@media(max-width:1080px){.wrap,.header-container{width:min(100% - 72px,1440px)}.site-nav{gap:19px}.site-nav a{font-size:10px}.hero-architecture{width:78%;right:-14%}.hero h1{font-size:clamp(61px,8.8vw,107px)}.intro-layout{grid-template-columns:220px 1fr;gap:34px}.service-copy{padding:21px 20px}.service-copy h3{font-size:30px}.specialties-layout{gap:5%}}
@media(max-width:760px){.wrap,.header-container{width:calc(100% - 42px)}.header-container{height:75px}.brand-icon{font-size:34px}.brand-name{font-size:11px}.brand-name small{font-size:8px}.nav-toggle{display:flex}.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-nav{position:absolute;display:none;top:75px;right:0;left:0;background:#13212a;padding:14px 21px 25px;box-shadow:0 18px 35px #0007;flex-direction:column;gap:0;align-items:stretch;border-bottom:1px solid #ffffff2e}.site-nav.is-open{display:flex}.site-nav a{font-size:12px;padding:14px 4px;border-bottom:1px solid #ffffff12}.hero{min-height:770px;padding:150px 0 114px;align-items:flex-start}.hero-architecture{height:85%;width:110%;top:16%;right:-45%;opacity:.55}.hero::after{background:linear-gradient(90deg,#121b23f3 0%,#121b23b5 60%,#121b2345 100%)}.hero-content{max-width:610px}.hero h1{font-size:clamp(53px,10.1vw,77px);line-height:1.1}.hero-description{font-size:15px;max-width:440px}.eyebrow{font-size:10px}.hero-footer{bottom:29px;font-size:9px}.section-padding{padding:80px 0}.intro-layout,.specialties-layout{grid-template-columns:1fr;gap:25px}.section-rule{width:100%}.intro h2,.services h2,.specialties h2{font-size:clamp(54px,9vw,79px)}.services-heading{display:block}.services-heading>p{margin:25px 0 0}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card--wide{grid-column:span 2}.service-visual{aspect-ratio:1.2}.service-card--wide .service-visual{aspect-ratio:2}.service-copy h3{font-size:clamp(23px,3.5vw,34px)}.specialties h2{margin-bottom:20px}.closing{padding:85px 0}.closing h2{font-size:clamp(74px,11vw,108px)}.footer-layout{flex-wrap:wrap;justify-content:center;text-align:center;padding-block:27px;min-height:0}}
@media(max-width:520px){.brand{gap:9px}.brand-name{font-size:10px;letter-spacing:.13em}.brand-name small{letter-spacing:.16em;font-size:7.5px}.brand-icon{font-size:30px}.hero{min-height:715px;padding-top:132px}.hero h1{font-size:clamp(46px,11.8vw,67px);letter-spacing:-.02em}.hero-architecture{right:-58%;width:150%;opacity:.44;top:18%;height:85%}.hero-description{line-height:1.65}.hero-footer{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.hero-footer span{max-width:320px}.hero-footer a{font-size:9px}.primary-link{min-height:55px;gap:30px;padding:15px 18px}.intro h2,.services h2,.specialties h2{font-size:clamp(49px,10.4vw,66px)}.tag-list span{font-size:9px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card--wide{grid-column:span 1}.service-visual,.service-card--wide .service-visual{aspect-ratio:1.65}.service-copy{min-height:0;padding:20px 22px 23px}.service-copy h3{font-size:30px}.service-copy p{font-size:13px}.specialty-list a{grid-template-columns:28px minmax(0,1fr) 20px;gap:12px;padding:21px 3px}.specialty-list a>span:nth-child(2){font-size:16px}.closing h2{font-size:clamp(60px,12.3vw,82px)}.closing .overline{font-size:9px;letter-spacing:.15em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
