
/* ===== Self-hosted fonts ===== */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/plus-jakarta-sans-500.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/plus-jakarta-sans-600.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/plus-jakarta-sans-700.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/plus-jakarta-sans-800.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/inter-300.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-600.woff2) format('woff2')}


:root{
  --navy:#21375C;
  --navy-deep:#182A47;
  --orange:#F5A81C;
  --orange-ink:#9A6806;
  --orange-soft:#FDF3DF;
  --ivory:#FAF7F1;
  --sand:#F1EAE0;
  --line:#E6DED1;
  --slate:#4A5568;
  --mist:#C9D3E4;
  --white:#FFFFFF;
  --radius:16px;
  --shadow:0 10px 30px rgba(33,55,92,.10);
  --shadow-lg:0 20px 50px rgba(24,42,71,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:'Inter',system-ui,sans-serif;font-weight:400;color:var(--navy);background:var(--ivory);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}

/* language switching */
html[lang="en"] [lang="es"],html[lang="es"] [lang="en"]{display:none!important}

.wrap{max-width:1120px;margin:0 auto;padding:0 1.5rem}
h1,h2,h3,h4{font-family:'Plus Jakarta Sans',sans-serif;color:inherit}
h2{font-weight:800;font-size:clamp(1.85rem,4.4vw,2.6rem);line-height:1.15;letter-spacing:-.02em;margin:.7rem 0 1rem}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-ink)}
.eyebrow::before{content:'';flex:none;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid var(--orange)}
.lead{color:var(--slate);font-size:1.07rem;max-width:620px}
.center{text-align:center}
.center .lead{margin-left:auto;margin-right:auto}
.section{padding:5.5rem 0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1rem;text-decoration:none;padding:1rem 2rem;border-radius:999px;transition:transform .2s,box-shadow .2s,background .2s,color .2s;text-align:center;border:0;cursor:pointer;line-height:1.2}
.btn svg{width:20px;height:20px;flex:none}
.btn.primary{background:var(--orange);color:var(--navy-deep);box-shadow:0 8px 22px rgba(245,168,28,.35)}
.btn.primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(245,168,28,.45)}
.btn.outline{border:2px solid rgba(255,255,255,.55);color:var(--white)}
.btn.outline:hover{background:var(--white);color:var(--navy)}
.btn.navy{background:var(--navy);color:var(--white)}
.btn.navy:hover{background:var(--navy-deep);transform:translateY(-2px)}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(250,247,241,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.navin{max-width:1180px;margin:0 auto;padding:.65rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo img{height:50px;width:auto}
.navlinks{display:flex;gap:1.5rem;align-items:center}
.navlinks a{text-decoration:none;font-size:.93rem;font-weight:500;white-space:nowrap}
.navlinks a:hover{color:var(--orange-ink)}
.navright{display:flex;align-items:center;gap:.8rem}
.langtog{display:inline-flex;background:var(--sand);border-radius:999px;padding:3px}
.langtog button{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.06em;border:0;background:transparent;color:var(--slate);padding:.42rem .72rem;border-radius:999px;cursor:pointer}
.langtog button[aria-pressed="true"]{background:var(--navy);color:var(--white)}
.navcall{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.93rem;background:var(--navy);color:var(--white);padding:.6rem 1.2rem;border-radius:999px;text-decoration:none;white-space:nowrap}
.navcall:hover{background:var(--navy-deep)}
.menubtn{display:none;width:42px;height:42px;border:0;border-radius:12px;background:var(--sand);cursor:pointer;align-items:center;justify-content:center}
.menubtn svg{width:22px;height:22px;stroke:var(--navy)}
@media(max-width:1080px){
  .menubtn{display:inline-flex}
  .navlinks{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--ivory);border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(24,42,71,.12);padding:.5rem 1.5rem 1.2rem}
  .navlinks.open{display:flex}
  .navlinks a{padding:.85rem 0;border-bottom:1px solid var(--line);font-size:1rem}
  .navlinks a:last-child{border-bottom:0}
}
@media(max-width:760px){.navcall{display:none}.logo img{height:42px}}

/* HERO */
.hero{position:relative;color:var(--white);overflow:hidden;background-color:var(--navy-deep);
  background-image:radial-gradient(circle at 85% 20%,rgba(245,168,28,.16),transparent 45%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:auto,44px 44px,44px 44px}
.hero::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:80px;background:var(--ivory);clip-path:polygon(0 100%,100% 100%,100% 40%,50% 0,0 40%);z-index:1}
.heroin{max-width:1120px;margin:0 auto;padding:5rem 1.5rem 8.5rem;display:grid;grid-template-columns:1.12fr .88fr;gap:3.5rem;align-items:center;position:relative;z-index:2}
.hero .eyebrow{color:var(--orange)}
.hero h1{font-weight:800;font-size:clamp(2.6rem,6.2vw,4.3rem);line-height:1.04;letter-spacing:-.025em;margin:1rem 0 1.3rem}
.hero h1 em{font-style:normal;color:var(--orange);display:block}
.hero .lead{color:#DCE4F2;margin-bottom:2.1rem;font-size:1.1rem}
.heroctas{display:flex;gap:.9rem;flex-wrap:wrap}
.heroticks{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:1.9rem;font-size:.92rem;color:var(--mist)}
.heroticks li{display:flex;align-items:center;gap:.45rem}
.heroticks svg{width:18px;height:18px;stroke:var(--orange);flex:none}
.herofig{position:relative;margin:0 0 0 auto;width:100%;max-width:440px}
.herofig .frame{border-radius:22px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.4);border:6px solid rgba(255,255,255,.08);aspect-ratio:4/5;background:#2a3f63}
.herofig img{width:100%;height:100%;object-fit:cover}
.herofig figcaption{position:absolute;left:18px;top:18px;background:rgba(24,42,71,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:.4rem .85rem;border-radius:999px;font-size:.78rem;font-weight:500;color:#E7EDF7}
.badge{position:absolute;left:-34px;bottom:34px;background:var(--white);color:var(--navy);border-radius:16px;padding:1rem 1.2rem 1rem 1rem;box-shadow:var(--shadow-lg);display:flex;gap:.8rem;align-items:center;max-width:250px}
.badge .ic{flex:none;width:44px;height:44px;border-radius:12px;background:var(--orange-soft);display:flex;align-items:center;justify-content:center}
.badge .ic svg{width:24px;height:24px;stroke:var(--orange-ink)}
.badge b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1rem;display:block;line-height:1.25}
.badge span{font-size:.82rem;color:var(--slate);line-height:1.35;display:block}
@media(max-width:900px){
  .heroin{grid-template-columns:1fr;gap:2.6rem;padding:3.4rem 1.5rem 7rem}
  .herofig{margin:0 auto;max-width:520px}
  .herofig .frame{aspect-ratio:4/3.4}
  .herofig img{object-position:center 40%}
  .badge{left:14px;bottom:-26px}
}

/* TRUST */
.trust{margin-top:-38px;position:relative;z-index:3}
.trustcard{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(5,1fr)}
.trustcard>div{padding:1.5rem 1.1rem;text-align:center;border-right:1px solid #F0EAE0}
.trustcard>div:last-child{border-right:0}
.trustcard .ti{width:40px;height:40px;margin:0 auto .6rem;border-radius:11px;background:var(--orange-soft);display:flex;align-items:center;justify-content:center}
.trustcard .ti svg{width:22px;height:22px;stroke:var(--orange-ink)}
.trustcard b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1rem;display:block;line-height:1.3}
.trustcard span{font-size:.84rem;color:var(--slate);line-height:1.45;display:block;margin-top:.25rem}
@media(max-width:960px){.trustcard{grid-template-columns:repeat(2,1fr)}.trustcard>div{border-right:0;border-bottom:1px solid #F0EAE0}.trustcard>div:nth-child(odd){border-right:1px solid #F0EAE0}.trustcard>div:last-child{grid-column:1/-1;border-right:0;border-bottom:0}}
@media(max-width:900px){.trust{margin-top:3.2rem}}

/* HOMES */
.split{display:grid;grid-template-columns:1fr 1fr;gap:3.2rem;align-items:start;margin-top:2.6rem}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:2.2rem}}
.photo{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--sand)}
.photo img{width:100%;height:100%;object-fit:cover}
.photo .cap{position:absolute;left:0;right:0;bottom:0;padding:2.4rem 1.2rem .9rem;background:linear-gradient(transparent,rgba(24,42,71,.88));color:var(--white);font-size:.82rem}
.photo .cap b{font-family:'Plus Jakarta Sans',sans-serif;font-size:.95rem;display:block}
.lotnote{margin-top:1.4rem;background:var(--navy);color:var(--white);border-radius:var(--radius);padding:1.5rem 1.6rem;display:flex;gap:1rem;align-items:flex-start}
.lotnote .ic{flex:none;width:44px;height:44px;border-radius:12px;background:rgba(245,168,28,.16);display:flex;align-items:center;justify-content:center}
.lotnote .ic svg{width:24px;height:24px;stroke:var(--orange)}
.lotnote b{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.05rem;display:block;margin-bottom:.15rem}
.lotnote p{color:var(--mist);font-size:.93rem}
.lotnote a{color:var(--orange);font-weight:600}
.features{list-style:none;display:grid;gap:1.15rem}
.features li{display:flex;gap:1rem;align-items:flex-start;background:var(--white);border-radius:14px;padding:1.15rem 1.25rem;box-shadow:0 4px 14px rgba(33,55,92,.06)}
.features .ic{flex:none;width:42px;height:42px;border-radius:11px;background:var(--orange-soft);display:flex;align-items:center;justify-content:center}
.features .ic svg{width:22px;height:22px;stroke:var(--orange-ink)}
.features h3{font-size:1.03rem;font-weight:700;line-height:1.35}
.features p{color:var(--slate);font-size:.93rem;line-height:1.6;margin-top:.15rem}

/* PROCESS */
.process{padding:0 0 5.5rem}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem;counter-reset:s}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.steps{grid-template-columns:1fr}}
.step{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.8rem 1.7rem;position:relative;overflow:hidden}
.step .n{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:2.6rem;line-height:1;color:#F6E2B8;position:absolute;right:1.2rem;top:1rem;letter-spacing:-.04em}
.step .tag{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:.72rem;color:var(--orange-ink);letter-spacing:.12em;text-transform:uppercase}
.step h3{font-weight:700;font-size:1.13rem;margin:.45rem 0 .4rem;position:relative}
.step p{font-size:.93rem;color:var(--slate);position:relative}

/* INVESTORS */
.investors{background:var(--sand)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem}
@media(max-width:900px){.cards3{grid-template-columns:1fr}}
.icard{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem 1.8rem}
.icard .ic{width:50px;height:50px;border-radius:14px;background:var(--navy);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}
.icard .ic svg{width:26px;height:26px;stroke:var(--orange)}
.icard h3{font-size:1.18rem;font-weight:700;margin-bottom:.45rem}
.icard p{color:var(--slate);font-size:.95rem}
.checks{list-style:none;display:flex;flex-wrap:wrap;gap:.8rem 2rem;margin:2.2rem 0 2rem}
.checks li{display:flex;gap:.55rem;align-items:center;font-weight:500;font-size:.97rem}
.checks svg{width:20px;height:20px;stroke:var(--orange-ink);flex:none}

/* COMMERCIAL */
.pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pair .photo{aspect-ratio:3/4}
.blist{list-style:none;margin:1.4rem 0 1.6rem}
.blist li{padding:.5rem 0 .5rem 1.6rem;position:relative;border-bottom:1px solid var(--line);font-size:.98rem}
.blist li:last-child{border-bottom:0}
.blist li::before{content:'';position:absolute;left:0;top:1.05rem;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid var(--orange)}
.pill{display:inline-flex;align-items:center;gap:.6rem;background:var(--orange-soft);color:var(--navy);border-radius:12px;padding:.85rem 1.1rem;font-size:.93rem;font-weight:500}
.pill svg{width:20px;height:20px;stroke:var(--orange-ink);flex:none}

/* ABOUT */
.about{background:var(--white)}
.aboutgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:3.4rem;align-items:start;margin-top:1rem}
@media(max-width:900px){.aboutgrid{grid-template-columns:1fr;gap:2.4rem}}
.profile{background:var(--navy);color:var(--white);border-radius:20px;padding:2.2rem 2rem;position:sticky;top:100px;overflow:hidden}
@media(max-width:900px){.profile{position:relative;top:0}}
.profile::after{content:'';position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(245,168,28,.18),transparent 65%)}
.avatar{width:96px;height:96px;border-radius:50%;background:var(--navy-deep);border:3px solid var(--orange);display:flex;align-items:center;justify-content:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:2rem;color:var(--white);letter-spacing:-.02em;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.profile h3{font-size:1.4rem;font-weight:800;margin-top:1.2rem;line-height:1.2}
.profile .role{color:var(--orange);font-size:.9rem;font-weight:600;margin-top:.2rem}
.creds{list-style:none;margin-top:1.4rem;display:grid;gap:.75rem;position:relative;z-index:1}
.creds li{display:flex;gap:.7rem;align-items:flex-start;font-size:.93rem;color:#E1E8F3;line-height:1.5}
.creds svg{width:19px;height:19px;stroke:var(--orange);flex:none;margin-top:.15rem}
.story h2{max-width:640px}
.story div p{color:var(--slate);font-size:1.04rem;margin-bottom:1.15rem;max-width:660px}
.story div p.first{font-size:1.12rem;color:var(--navy)}
.quote{margin-top:1.8rem;border-left:4px solid var(--orange);padding:.4rem 0 .4rem 1.4rem;max-width:620px}
.story .quote p{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.3rem;line-height:1.4;color:var(--navy);margin-bottom:.5rem}
.quote cite{font-style:normal;font-size:.9rem;color:var(--orange-ink);font-weight:600}

/* PROMISE */
.promise{background:var(--navy);color:var(--white);position:relative;overflow:hidden}
.promise::before{content:'';position:absolute;top:-140px;right:-140px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(245,168,28,.13),transparent 65%)}
.promise .eyebrow{color:var(--orange)}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2.4rem;position:relative}
@media(max-width:760px){.pgrid{grid-template-columns:1fr}}
.pcard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.6rem 1.6rem}
.pcard h3{font-weight:700;font-size:1.1rem;color:var(--orange);margin-bottom:.4rem}
.pcard p{color:var(--mist);font-size:.95rem}
.warranty{margin-top:1.4rem;background:var(--orange);color:var(--navy-deep);border-radius:18px;padding:1.6rem 1.8rem;display:flex;gap:1.3rem;align-items:center;position:relative}
.warranty .ic{flex:none;width:58px;height:58px;border-radius:16px;background:var(--navy-deep);display:flex;align-items:center;justify-content:center}
.warranty .ic svg{width:30px;height:30px;stroke:var(--orange)}
.warranty b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.2rem;display:block;line-height:1.3}
.warranty p{font-size:.97rem;font-weight:500}
@media(max-width:600px){.warranty{flex-direction:column;align-items:flex-start}}

/* FAQ */
.faqlist{max-width:820px;margin:2.4rem auto 0}
.faqlist details{background:var(--white);border-radius:14px;box-shadow:0 4px 14px rgba(33,55,92,.06);margin-bottom:.8rem;overflow:hidden}
.faqlist summary{list-style:none;cursor:pointer;padding:1.2rem 3.4rem 1.2rem 1.4rem;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.03rem;position:relative}
.faqlist summary::-webkit-details-marker{display:none}
.faqlist summary::after{content:'';position:absolute;right:1.4rem;top:50%;width:10px;height:10px;border-right:2.5px solid var(--orange-ink);border-bottom:2.5px solid var(--orange-ink);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faqlist details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faqlist .ans{padding:0 1.4rem 1.3rem;color:var(--slate);font-size:.97rem}

/* AREA */
.area{background:var(--sand);padding:4.5rem 0;text-align:center}
.cities{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:1.8rem}
.cities span{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:.92rem;background:var(--white);padding:.55rem 1.3rem;border-radius:999px;box-shadow:0 4px 12px rgba(33,55,92,.07)}
.cities span.hq{background:var(--navy);color:var(--white)}
.area .note{margin-top:1.4rem;color:var(--slate);font-size:.97rem}

/* CONTACT */
.contactgrid{display:grid;grid-template-columns:1.15fr .85fr;gap:2.4rem;margin-top:2.2rem;align-items:start}
@media(max-width:900px){.contactgrid{grid-template-columns:1fr}}
.formcard{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:2.2rem 2.1rem}
@media(max-width:600px){.formcard{padding:1.6rem 1.25rem}}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media(max-width:600px){.frow{grid-template-columns:1fr}}
form label{display:block;font-weight:600;font-size:.84rem;margin:1rem 0 .35rem}
form label .opt{font-weight:400;color:var(--slate)}
form input,form select,form textarea{width:100%;padding:.85rem 1rem;border:1.5px solid #E1D9CB;border-radius:10px;background:var(--ivory);font-family:'Inter',sans-serif;font-size:1rem;color:var(--navy)}
form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--navy) 50%),linear-gradient(135deg,var(--navy) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 15px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2.4rem}
form input:focus,form select:focus,form textarea:focus{outline:none;border-color:var(--orange);background-color:var(--white)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.formfoot{margin-top:1.3rem}
.formfoot .btn{width:100%}
.formfoot small{display:block;text-align:center;color:var(--slate);margin-top:.7rem;font-size:.85rem}
.infocard{background:var(--navy);color:var(--white);border-radius:var(--radius);padding:2.2rem 2rem}
.infocard .t{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);font-weight:700;font-family:'Plus Jakarta Sans',sans-serif}
.infocard p{margin-bottom:1.4rem}
.infocard p:last-child{margin-bottom:0}
.infocard a{color:var(--white);font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.3rem;text-decoration:none}
.infocard a.em{font-size:1rem}
.infocard a:hover{color:var(--orange)}
.infocard .small{color:var(--mist);font-size:.93rem}
.infocard .wa-btn{margin-top:.5rem;display:inline-flex;align-items:center;gap:.5rem;background:#25D366;color:#fff;font-size:.95rem;padding:.65rem 1.1rem;border-radius:999px}
.infocard .wa-btn:hover{color:#fff;filter:brightness(1.05)}
.infocard .wa-btn svg{width:18px;height:18px;fill:#fff}

/* FOOTER */
footer{background:var(--navy-deep);color:#8FA0BC;padding:3rem 1.5rem 2.6rem;font-size:.88rem;text-align:center}
footer img{height:46px;width:auto;margin:0 auto 1.1rem}
footer .tag{color:var(--white);font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;margin-bottom:.6rem}
footer a{color:#C9D3E4;text-decoration:none}
footer a:hover{color:var(--orange)}
footer .fl{margin:.5rem 0}

/* WHATSAPP + MOBILE BAR */
.wa{position:fixed;bottom:1.4rem;right:1.4rem;z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(0,0,0,.28);text-decoration:none;transition:transform .2s}
.wa:hover{transform:scale(1.07)}
.wa svg{width:31px;height:31px;fill:#fff}
.mbar{display:none}
@media(max-width:760px){
  .wa{display:none}
  footer{padding-bottom:calc(2.6rem + 76px)}
  .eyebrow{letter-spacing:.1em}
  .pair .photo .cap{padding:2rem .8rem .7rem;font-size:.75rem}
  .pair .photo .cap b{font-size:.85rem;line-height:1.3}
  .infocard{padding:1.9rem 1.5rem}
  .mbar{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:.5rem;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(250,247,241,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom))}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:.4rem;text-decoration:none;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.9rem;border-radius:12px;padding:.75rem .4rem;white-space:nowrap}
  .mbar svg{width:18px;height:18px;flex:none}
  .mbar .call{background:var(--navy);color:#fff}
  .mbar .call svg{stroke:#fff}
  .mbar .wapp{background:#25D366;color:#fff}
  .mbar .wapp svg{fill:#fff}
  .mbar .est{background:var(--orange);color:var(--navy-deep)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* ===== Move-in ready ===== */
.included{padding:0 0 5.5rem}
.incgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.2rem}
@media(max-width:900px){.incgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.incgrid{grid-template-columns:1fr}}
.inc{background:var(--white);border-radius:var(--radius);padding:1.5rem 1.5rem 1.3rem;box-shadow:0 4px 14px rgba(33,55,92,.06);border-top:4px solid var(--orange)}
.inc h3{font-size:1.02rem;font-weight:800;margin-bottom:.6rem}
.inc ul{list-style:none;display:grid;gap:.35rem}
.inc li{display:flex;gap:.5rem;align-items:flex-start;font-size:.94rem;color:var(--slate)}
.inc li svg{width:17px;height:17px;stroke:var(--orange-ink);flex:none;margin-top:.25rem}
.incnote{margin-top:1.4rem;display:flex;gap:.7rem;align-items:center;color:var(--slate);font-size:.95rem}
.incnote svg{width:22px;height:22px;stroke:var(--orange-ink);flex:none}

/* ===== Lot guide (lead magnet) ===== */
.guide{background:var(--navy-deep);color:var(--white);position:relative;overflow:hidden;
  background-image:radial-gradient(circle at 10% 90%,rgba(245,168,28,.14),transparent 40%),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:auto,44px 44px,44px 44px}
.guide .eyebrow{color:var(--orange)}
.guidegrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:3.2rem;align-items:center}
@media(max-width:900px){.guidegrid{grid-template-columns:1fr;gap:2.2rem}}
.cover{max-width:330px;margin:0 auto;transform:rotate(-3deg);border-radius:10px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.08)}
@media(max-width:900px){.cover{max-width:240px}}
.guide h2{color:var(--white)}
.guide .lead{color:#DCE4F2}
.gpoints{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.4rem;margin:1.4rem 0 1.6rem}
@media(max-width:560px){.gpoints{grid-template-columns:1fr}}
.gpoints li{display:flex;gap:.5rem;align-items:flex-start;font-size:.94rem;color:var(--mist)}
.gpoints svg{width:18px;height:18px;stroke:var(--orange);flex:none;margin-top:.2rem}
.gform{background:var(--white);color:var(--navy);border-radius:16px;padding:1.3rem 1.4rem 1.4rem}
.gform .grow{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:.7rem;align-items:end}
@media(max-width:900px){.gform .grow{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gform .grow{grid-template-columns:1fr}}
.gform label{margin:0 0 .3rem}
.gform .btn{padding:.9rem 1.4rem;white-space:nowrap}
.gform small{display:block;margin-top:.7rem;color:var(--slate);font-size:.84rem}

/* ===== Case study ===== */
.case{margin-top:1.6rem;background:var(--white);border-radius:20px;box-shadow:var(--shadow);display:grid;grid-template-columns:260px 1fr;overflow:hidden}
@media(max-width:760px){.case{grid-template-columns:1fr}}
.case .cimg{background:var(--sand)}
.case .cimg img{width:100%;height:100%;object-fit:cover;min-height:220px;max-height:340px}
.case .cbody{padding:1.8rem 2rem}
.case .ctag{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-ink)}
.case h3{font-size:1.3rem;font-weight:800;margin:.3rem 0 .9rem}
.stats{display:flex;flex-wrap:wrap;gap:1.6rem;margin-bottom:1rem}
.stats div{min-width:90px}
.stats b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.6rem;line-height:1.1;display:block;color:var(--navy)}
.stats span{font-size:.8rem;color:var(--slate);text-transform:uppercase;letter-spacing:.06em}
.case p{color:var(--slate);font-size:.96rem}

/* ===== Review ===== */
.review{background:var(--sand)}
.rcard{max-width:880px;margin:2.2rem auto 0;background:var(--white);border-radius:22px;box-shadow:var(--shadow);padding:2.6rem 2.6rem 2.2rem;position:relative}
@media(max-width:600px){.rcard{padding:2rem 1.4rem 1.6rem}}
.rcard .qmark{position:absolute;top:-22px;left:2.2rem;width:52px;height:52px;border-radius:14px;background:var(--orange);display:flex;align-items:center;justify-content:center}
.rcard .qmark svg{width:26px;height:26px;fill:var(--navy-deep)}
.stars{display:flex;gap:3px;margin-bottom:.9rem}
.stars svg{width:20px;height:20px;fill:var(--orange)}
.rcard blockquote p{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:clamp(1.12rem,2.4vw,1.4rem);line-height:1.5;color:var(--navy)}
.rwho{display:flex;align-items:center;gap:.9rem;margin-top:1.4rem;flex-wrap:wrap}
.rwho .co{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;letter-spacing:.06em;background:var(--navy);color:var(--white);padding:.45rem .9rem;border-radius:10px;font-size:.85rem}
.rwho span{color:var(--slate);font-size:.92rem}
.rfull{margin-top:1.3rem;border-top:1px solid var(--line);padding-top:1rem}
.rfull summary{cursor:pointer;font-weight:600;color:var(--orange-ink);font-size:.94rem;list-style:none}
.rfull summary::-webkit-details-marker{display:none}
.rfull summary::after{content:' +'}
.rfull[open] summary::after{content:' \2212'}
.rfull p{color:var(--slate);font-size:.96rem;margin-top:.8rem}
.rfull .tr{font-size:.82rem;font-style:italic}

/* ===== Cities as links ===== */
.cities a{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:.92rem;background:var(--white);padding:.55rem 1.3rem;border-radius:999px;box-shadow:0 4px 12px rgba(33,55,92,.07);text-decoration:none;transition:background .2s,color .2s}
.cities a:hover{background:var(--orange-soft)}
.cities a.hq{background:var(--navy);color:var(--white)}
.cities a.hq:hover{background:var(--navy-deep)}
.cities a.here{background:var(--orange);color:var(--navy-deep)}

/* ===== Footer additions ===== */
footer .citylinks{max-width:760px;margin:1.2rem auto .4rem;line-height:2;font-size:.85rem}
footer .citylinks b{color:#C9D3E4;font-weight:600}
footer .social{display:flex;gap:.7rem;justify-content:center;margin:1rem 0}
footer .social a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center}
footer .social svg{width:18px;height:18px;fill:#C9D3E4}

/* ===== Sub-page hero (city + thank-you) ===== */
.phero{position:relative;color:var(--white);overflow:hidden;background-color:var(--navy-deep);
  background-image:radial-gradient(circle at 85% 20%,rgba(245,168,28,.16),transparent 45%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:auto,44px 44px,44px 44px}
.phero::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:60px;background:var(--ivory);clip-path:polygon(0 100%,100% 100%,100% 40%,50% 0,0 40%)}
.pheroin{max-width:1120px;margin:0 auto;padding:4.2rem 1.5rem 6rem;position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center}
@media(max-width:900px){.pheroin{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem 5rem}}
.phero .eyebrow{color:var(--orange)}
.phero h1{font-weight:800;font-size:clamp(2.1rem,5vw,3.3rem);line-height:1.08;letter-spacing:-.02em;margin:.9rem 0 1.1rem}
.phero h1 em{font-style:normal;color:var(--orange)}
.phero .lead{color:#DCE4F2;margin-bottom:1.8rem}
.phero .pimg{border-radius:20px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.4);border:6px solid rgba(255,255,255,.08);aspect-ratio:4/3}
.phero .pimg img{width:100%;height:100%;object-fit:cover}
.crumbs{font-size:.85rem;color:var(--mist);margin-bottom:.6rem}
.crumbs a{color:var(--mist)}

.kgrid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2.2rem}
@media(max-width:760px){.kgrid{grid-template-columns:1fr}}
.kcard{background:var(--white);border-radius:var(--radius);box-shadow:0 4px 14px rgba(33,55,92,.06);padding:1.5rem 1.6rem;display:flex;gap:1rem;align-items:flex-start}
.kcard .ic{flex:none;width:42px;height:42px;border-radius:11px;background:var(--orange-soft);display:flex;align-items:center;justify-content:center}
.kcard .ic svg{width:22px;height:22px;stroke:var(--orange-ink)}
.kcard h3{font-size:1.05rem;font-weight:700;margin-bottom:.2rem}
.kcard p{color:var(--slate);font-size:.94rem}

.svc3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.2rem}
@media(max-width:900px){.svc3{grid-template-columns:1fr}}
.svc{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.7rem 1.6rem;text-decoration:none;display:block;transition:transform .2s}
.svc:hover{transform:translateY(-3px)}
.svc h3{font-size:1.12rem;font-weight:800;margin-bottom:.35rem}
.svc p{color:var(--slate);font-size:.94rem}
.svc .more{display:inline-block;margin-top:.7rem;font-weight:700;color:var(--orange-ink);font-size:.92rem}

.qgrid{display:grid;grid-template-columns:1.15fr .85fr;gap:2.4rem;align-items:start;margin-top:2rem}
@media(max-width:900px){.qgrid{grid-template-columns:1fr}}

/* ===== Thank-you pages ===== */
.thanks{max-width:720px;margin:0 auto;text-align:center;padding:4.5rem 1.5rem 5rem}
.thanks .big{width:78px;height:78px;border-radius:22px;background:var(--orange);display:flex;align-items:center;justify-content:center;margin:0 auto 1.4rem;box-shadow:0 14px 30px rgba(245,168,28,.35)}
.thanks .big svg{width:40px;height:40px;stroke:var(--navy-deep)}
.thanks h1{font-size:clamp(2rem,5vw,2.8rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:.8rem}
.thanks .lead{margin:0 auto 2rem}
.tbtns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}
.btn.wa-green{background:#25D366;color:#fff}
.btn.wa-green svg{fill:#fff}
.btn.ghost{border:2px solid var(--line);color:var(--navy);background:var(--white)}
.btn.ghost:hover{border-color:var(--navy)}
.dlgrid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.8rem auto 0;max-width:560px}
@media(max-width:560px){.dlgrid{grid-template-columns:1fr}}
.dl{background:var(--white);border-radius:16px;box-shadow:var(--shadow);padding:1.2rem;text-decoration:none;display:flex;gap:.9rem;align-items:center;text-align:left;transition:transform .2s}
.dl:hover{transform:translateY(-2px)}
.dl img{width:62px;border-radius:6px;box-shadow:0 4px 10px rgba(0,0,0,.15)}
.dl b{font-family:'Plus Jakarta Sans',sans-serif;display:block;font-size:1rem}
.dl span{font-size:.85rem;color:var(--orange-ink);font-weight:600}
.tnext{margin-top:3rem;background:var(--sand);border-radius:18px;padding:1.8rem;text-align:left;display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;justify-content:space-between}
.tnext b{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.1rem;display:block}
.tnext p{color:var(--slate);font-size:.94rem}

/* stats on dark sections */
.promise .stats span{color:var(--mist)}
.promise .stats b{color:#fff}
.stats b span{color:inherit!important;font-size:inherit;text-transform:none;letter-spacing:0}
