:root{--navy:#101e35;--deep:#0b1628;--orange:#ed741e;--cream:#f5f5f2;--muted:#657084}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px;background:#fff;z-index:20}.skip:focus{top:0}.top{height:84px;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 20px #0a17230d}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:23px;letter-spacing:.04em;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:.45em;margin-top:7px;font-weight:600}.brand-mark{border-left:5px solid var(--navy);border-top:5px solid var(--navy);padding:6px 10px;font-size:23px}.brand-mark span{color:var(--orange)}nav{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:700}nav a:hover,.textlink:hover{color:var(--orange)}.nav-cta{background:var(--orange);color:#fff;padding:13px 19px}.nav-cta:hover{color:white;background:#d65b0b}.menu{display:none}.hero{min-height:650px;position:relative;background:var(--deep);color:#fff;display:flex;align-items:center}.hero-image{position:absolute;inset:0;background:url('assets/vivienda.jpg') center 58%/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,18,34,.96) 0%,rgba(7,18,34,.82) 48%,rgba(7,18,34,.17) 100%)}.hero-content{position:relative;padding:85px 0}.eyebrow,.kicker{font-size:12px;letter-spacing:.21em;font-weight:800}.eyebrow{display:flex;gap:12px;align-items:center}.dash{width:30px;height:3px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(43px,5.7vw,76px);line-height:1.09;letter-spacing:-.05em;max-width:800px;margin:28px 0}h1 em{font-style:normal;color:var(--orange)}.hero-content>p{font-size:18px;max-width:540px;color:#e0e4e9}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.btn{padding:14px 22px;font-size:13px;font-weight:800;display:inline-flex;align-items:center;gap:18px;border:1px solid #ffffff75}.orange{background:var(--orange);border-color:var(--orange);color:#fff}.orange:hover{background:#d85c0a}.ghost{color:#fff}.ghost:hover{background:#ffffff22}.hero-foot{font-size:11px;letter-spacing:.23em;margin-top:68px;color:#d9e1e9}.hero-foot b{color:var(--orange)}.section{padding:108px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:110px}.kicker{color:var(--orange);margin-bottom:18px}h2{font-size:clamp(35px,4vw,54px);line-height:1.15;letter-spacing:-.04em}h2 span{color:var(--orange)}.lead{font-size:20px;line-height:1.7}.intro .split>div:last-child>p:not(.lead){color:var(--muted)}.textlink{color:var(--orange);font-weight:800;font-size:13px}.services{background:var(--cream)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head h2{margin-bottom:0}.section-head>p{max-width:270px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service{background:white;padding:29px;min-height:250px;border-bottom:3px solid transparent;transition:transform .2s,border-color .2s}.service:hover{transform:translateY(-4px);border-color:var(--orange)}.num{font-size:12px;color:#9aa1aa}.symbol{font-size:42px;color:var(--orange);margin:8px 0}.service h3{font-size:19px;line-height:1.3}.service p{font-size:14px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:240px 240px;gap:16px}.gallery-grid figure{position:relative;overflow:hidden;margin:0;background:#ddd}.gallery-grid figure.large{grid-row:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-grid figure:hover img{transform:scale(1.03)}figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px;color:white;font-weight:800;background:linear-gradient(transparent,#071324c9);display:flex;justify-content:space-between}.gallery-note{font-size:12px;color:var(--muted);margin-top:17px}.cta{background:var(--navy);color:white;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}.cta h2{max-width:660px}.cta p:not(.kicker){color:#d4d9e2;max-width:540px}.contact-card{background:#fff;color:var(--navy);padding:35px;display:flex;flex-direction:column;gap:9px;overflow-wrap:anywhere}.contact-card strong{font-size:19px}.contact-card span:not(.kicker){color:var(--muted);font-size:13px}.contact-card hr{border:0;border-top:1px solid #e5e8ee;width:100%;margin:14px 0}.contact-card a{font-weight:700}.contact-card a:hover{color:var(--orange)}.contact-card .email{font-size:13px}footer{background:var(--deep);color:white;padding:36px 0}.footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer b{font-size:22px}.footer b span{color:var(--orange)}.footer p{font-size:10px;letter-spacing:.17em;margin:4px 0 0;color:#c3c9d3}.footer>div:last-child{display:flex;flex-direction:column;align-items:flex-end;font-size:12px}.footer small{color:#9da7b7}.float-wa{position:fixed;bottom:24px;right:24px;background:#1eae65;color:white;border-radius:40px;padding:12px 19px;font-weight:800;font-size:14px;box-shadow:0 8px 25px #0003;z-index:12}@media(max-width:850px){.menu{display:block;border:0;background:transparent;font-size:28px;cursor:pointer}nav{display:none;position:absolute;top:84px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:24px;box-shadow:0 20px 20px #0002}nav.open{display:flex}.split,.contact-grid{grid-template-columns:1fr;gap:35px}.cards{grid-template-columns:repeat(2,1fr)}.hero{min-height:600px}.hero-shade{background:linear-gradient(90deg,#071222ef,#0712229c)}.section{padding:70px 0}}@media(max-width:560px){.wrap{width:min(100% - 32px,1180px)}.brand{font-size:18px}.brand small{font-size:8px}.hero{min-height:600px}.hero-content{padding:65px 0}.hero-foot{line-height:2}.section-head{display:block}.cards{grid-template-columns:1fr}.service{min-height:0}.gallery-grid{display:block}.gallery-grid figure{height:250px;margin-bottom:14px}.gallery-grid figure.large{height:320px}.cta{padding:70px 0}.contact-card{padding:24px}.footer{display:block}.footer>div:last-child{align-items:flex-start;margin-top:22px}.float-wa span{display:none}}
