/* LeadBox shared visual system. */
html { scroll-padding-top:96px; }
body { background:var(--lb-paper); color:var(--lb-ink); }
body, button, input, select, textarea { font-family:"Public Sans",Arial,sans-serif; }
p { color:var(--lb-muted); }
:is(h1,h2,h3,h4) { color:inherit; letter-spacing:-.035em; }
h1 { font-size:clamp(3rem,6vw,5.75rem); line-height:1.02; }
h2 { font-size:clamp(2.25rem,4vw,4.25rem); line-height:1.06; }
.wrap { max-width:1280px; }
.header { background:#f6f4eef5; border-bottom:1px solid var(--lb-line); backdrop-filter:blur(10px); }
.brand { color:var(--lb-ink); }
.header nav a:hover,.footer a:hover { color:var(--lb-action-hover); }
.header nav a[aria-current=page] { color:var(--lb-action-hover); text-decoration:underline; text-underline-offset:7px; text-decoration-thickness:2px; }
.nav-contact { border-color:var(--lb-ink); color:var(--lb-ink); font-weight:600; }
.nav-contact:hover { background:var(--lb-ink); color:#fff!important; }
.header .nav-contact { display:inline-flex; align-items:center; justify-content:center; min-height:44px; white-space:nowrap; }
.legal-header-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.legal-header-actions .nav-contact { padding:10px 16px; border:1px solid var(--lb-ink); border-radius:4px; }
.footer > div { flex-wrap:wrap; }
.footer-booking { font-weight:700; color:var(--lb-action); }
.booking-privacy { color:var(--lb-muted); font-size:12px; line-height:1.5; }
.booking-privacy a { text-decoration:underline; text-underline-offset:3px; }
.hero .booking-privacy { margin-top:12px; }
.demo-booking { margin:24px auto 0; max-width:620px; text-align:center; font-size:16px; }
.demo-booking .text-link { color:var(--lb-action); font-weight:700; }
.work-cta { display:flex; align-items:flex-start; flex-direction:column; gap:12px; margin-top:22px; }
.contact-status .button { margin:14px 0 6px; }
.contact-status .booking-privacy { margin:4px 0 10px!important; font-size:12px!important; }
.nb-return .nb-booking-copy { max-width:340px; margin:0; font-weight:600; color:var(--lb-ink); }
@media (max-width:1000px) {
  .header { flex-wrap:wrap; }
  .header .menu-toggle { display:flex; align-items:center; gap:12px; border:1px solid var(--lb-line); background:#fff; color:var(--lb-ink); border-radius:4px; padding:8px 12px; min-height:44px; }
  .header nav { display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; }
  .header nav.open { display:flex; }
  .header nav a { padding:12px 0; min-height:44px; }
  .header nav .nav-contact { margin:8px 0 4px; padding:12px 16px; border:1px solid var(--lb-ink); background:var(--lb-ink); color:#fff; }
  .header nav .nav-contact:hover { background:var(--lb-action-hover); }
}
@media (max-width:480px) {
  .legal-header-actions { gap:8px; }
  .legal-header-actions .nav-contact { font-size:12px; }
  .demo-booking { padding-inline:20px; }
  .nb-return { align-items:stretch; }
}
.button { background:var(--lb-action); border-radius:6px; color:#fff; }
.button:hover { background:var(--lb-action-hover); }
.button.secondary { background:#fff; }
.text-link { color:var(--lb-action-hover); }
:is(a,button,input,select,summary,textarea):focus-visible { outline:3px solid var(--lb-focus); outline-offset:3px; }
::selection { background:var(--lb-mint); color:var(--lb-ink); }
* { scrollbar-color:#9ab9b1 #edf1eb; }
.eyebrow { color:var(--lb-action-hover); font-size:12px; margin-bottom:14px; }
.section { padding-block:clamp(72px,8vw,112px); }
.section-heading { max-width:800px; margin-bottom:48px; }
.section-heading>p:last-child { max-width:66ch; font-size:17px; line-height:1.65; }
.hero { gap:40px 64px; padding-top:72px; }
.hero-copy { position:relative; z-index:1; }
.hero h1 { max-width:10em; }
.hero h1 span { color:var(--lb-action-hover); }
.hero .intro { font-size:18px; max-width:56ch; }
.hero-note { color:var(--lb-muted); }
.phone-scene::before { background:#dcece6; border-radius:2px; inset:46px 0 94px; }
.phone { box-shadow:4px 12px 24px #10344018,16px 40px 70px #10344022; }
.problem-strip { border-color:var(--lb-line); }
.process { gap:0; border-top:1px solid var(--lb-ink); }
.process li { border-top:0; padding:24px 20px 0 0; }
.process li>span { color:var(--lb-action-hover); font-size:15px; font-variant-numeric:tabular-nums; }
.process h3 { margin-top:30px; }
.context-grid { border-radius:4px; box-shadow:none; }
.conversation { background:#e4efe9; }
.dashboard { border-radius:6px; box-shadow:none; background:#fff; }
.dashboard-top { background:var(--lb-ink); color:#fff; }
.dashboard-top p { color:#d3e7e1; }
.dashboard-foot { background:#e9eee9; }
.dashboard-body { padding:clamp(18px,3vw,36px); }
.metrics { gap:0; border-block:1px solid var(--lb-line); }
.metric { border:0; border-right:1px solid var(--lb-line); border-radius:0; padding:20px 18px; }
.metric:last-child { border-right:0; }
.metric strong,.pricing-price { font-variant-numeric:tabular-nums; }
.campaign-preview { border:1px solid var(--lb-line); border-radius:4px; background:#f0f3ec; }
.campaign-reel { border-radius:14px; box-shadow:4px 10px 24px #1034401b; }
#para-quien { background:#e9eee8; }
#para-quien .section-heading { margin-bottom:26px; }
.work-list li { border-color:var(--lb-line); }
.faq details { border-color:var(--lb-line); }
.contact { background:var(--lb-ink); color:#fff; }
.contact :is(h2,.eyebrow) { color:#fff; }
.contact p:not(.eyebrow),.contact dd,.contact dt { color:#d5e7e2; }
.contact-status { border-color:#668780; }
.contact .text-link { color:var(--lb-mint); }
.contact .button { background:var(--lb-action); }
.about { background:var(--lb-ink); }
#nosotros .nb-story h2,#nosotros .nb-person-role { color:var(--lb-mint); }
#nosotros .nb-story .text-link { color:var(--lb-mint); }
#nosotros .nb-country { fill:var(--lb-mint); }
#nosotros .nb-map svg { border-radius:4px; }
#nosotros .nb-people li { border-radius:4px; }

/* Prices keep their copy, amounts, conditions and calculation source unchanged. */
.pricing { background:var(--lb-paper); }
.pricing-intro { align-items:center; border-bottom:2px solid var(--lb-ink); padding-bottom:48px; }
.pricing-intro h1 { max-width:9ch; font-size:clamp(3rem,6vw,5.75rem); line-height:1.02; }
.pricing-intro>p:last-child { max-width:62ch; font-size:17px; }
.pricing-payment { background:var(--lb-ink); border:0; border-radius:4px; padding:22px; gap:10px; }
.pricing-payment legend { background:var(--lb-ink); color:#fff; padding:5px 12px; border-radius:4px; }
.pricing-payment label { border:2px solid transparent; border-radius:4px; }
.pricing-payment label:has(input:checked) { border-color:var(--lb-mint); background:#e5f5ef; }
.pricing-payment p { color:#d7e8e3; }
.pricing-group { margin-top:80px; }
.pricing-group-head { border-top:1px solid var(--lb-ink); padding-top:22px; }
.pricing-card { border-color:var(--lb-line); border-radius:4px; }
.pricing-card-top { background:#fff; border-bottom:1px solid var(--lb-line); }
.pricing-label,.pricing-phase-number { color:var(--lb-action-hover); }
.pricing-card h3 { font-size:clamp(25px,2.5vw,34px); }
.pricing-price { color:var(--lb-ink); font-size:clamp(29px,3vw,42px); }
.pricing-chip { background:#d9f1e9; color:var(--lb-ink); border-radius:3px; }
.pricing-strips section { border-radius:4px; background:#fff; }
.pricing-close { background:var(--lb-ink); color:#fff; border-radius:4px; }
.pricing-close :is(h2,p,.text-link) { color:#fff; }
.pricing-close .button { background:var(--lb-action); }
.pricing-card-body li::marker,.pricing-strips li::marker { color:var(--lb-action); }

/* The operation choice is a separate stage before the working surface. */
.mp-shell { margin:32px 0 24px; }
.mp-app { --mp-navy:var(--lb-ink); --mp-blue:var(--lb-action); --mp-line:var(--lb-line); --mp-muted:var(--lb-muted); --mp-soft:var(--lb-paper); margin:0; background:#fff; border:1px solid #b9cbc3; border-radius:0 0 5px 5px; box-shadow:none; color:var(--lb-ink); }
.mp-top { background:var(--lb-ink); }
.mp-windowbar { background:#e6ece7; border-color:var(--lb-line); }
.mp-app .mp-notice { background:#e3f1e8; color:#254b41; border-color:#c7ded1; font-size:11px; }
.mp-chooser { display:grid; grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr); gap:18px; align-items:center; padding:18px 22px; background:#f6f4ee; border:1px solid #b9cbc3; border-bottom:2px solid var(--lb-ink); border-radius:5px 5px 0 0; }
.mp-chooser-copy { display:grid; gap:4px; }
.mp-chooser-copy strong { color:var(--lb-ink); font-size:17px; line-height:1.2; }
.mp-chooser-copy span { color:var(--lb-muted); font-size:12px; }
.mp-chooser-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.mp-shell .mp-segment { min-height:52px; width:100%; padding:12px 16px; border:1px solid #91aaa2; border-radius:4px; color:var(--lb-ink); background:#fff; font-size:14px; font-weight:600; text-align:left; }
.mp-shell .mp-segment:hover { background:#e5eee8; }
.mp-shell .mp-segment[aria-pressed=true] { background:var(--lb-ink); color:#fff; border-color:var(--lb-ink); box-shadow:inset 0 -4px var(--lb-mint); }
.mp-shell[data-segment=portfolio] .mp-segment[aria-pressed=true] { background:var(--lb-clay); border-color:var(--lb-clay); box-shadow:inset 0 -4px #e8cab2; }
.mp-shell .mp-segment:focus-visible { outline:3px solid var(--lb-focus); outline-offset:3px; }
.mp-app :is(button,input,select):focus-visible { outline:3px solid var(--lb-focus); outline-offset:3px; }
.mp-workspace { background:#eef1eb; }
.mp-sidebar { background:var(--lb-ink); }
.mp-main { background:#eef1eb; }
.mp-main { padding-bottom:104px; }
.mp-page-heading>div:first-child,.mp-app .mp-stat-label { color:var(--lb-muted); font-size:11px; }
.mp-app h3 { color:var(--lb-ink); }
.mp-app .mp-help { color:var(--lb-muted); font-size:12px; }
.mp-stats { border-radius:3px; box-shadow:none; }
.mp-app .mp-stat-foot { font-size:10px; color:var(--lb-muted); }
.mp-inventory-list,.mp-detail,.mp-portfolio-ledger { border-color:var(--lb-line); border-radius:3px; }
.mp-inventory-list { background:#fff; }
.mp-plan { margin:12px 0 0; padding:8px 8px 9px; background:#f5f5ef; border:1px solid var(--lb-line); }
.mp-plan img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
.mp-plan figcaption { color:var(--lb-muted); font-size:11px; line-height:1.4; padding:4px 5px 0; }
.mp-property-photo { margin:0; min-width:0; background:#e4e7e1; }
.mp-property-photo img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.mp-property-photo figcaption { padding:6px 10px; color:var(--lb-muted); font-size:11px; line-height:1.35; }
.mp-photo-detail { margin:10px 12px 0; }
.mp-photo-detail img { border-radius:2px; }
.mp-photo-card { margin:-12px -12px 12px; }
.mp-photo-card figcaption { padding-inline:14px; }
.mp-property-identity { display:flex; align-items:center; gap:9px; }
.mp-property-identity-copy { display:grid; min-width:0; gap:2px; }
.mp-photo-thumb { flex:none; width:64px; height:44px; overflow:hidden; border-radius:2px; }
.mp-photo-thumb img { width:100%; height:100%; object-fit:cover; }
.mp-tower-grid { background:#e8eee8; }
.mp-app .mp-unit { border-radius:2px; }
.mp-app .mp-unit-state { font-size:10px; }
.mp-app .mp-primary,.mp-app .mp-owner-report-teaser .mp-report-button { background:var(--lb-action); border-color:var(--lb-action); }
.mp-app .mp-primary:hover,.mp-app .mp-owner-report-teaser .mp-report-button:hover { background:var(--lb-action-hover); }
.mp-app dt { font-size:10px; }
.mp-app dd { font-size:12px; }
.mp-app .mp-detail-actions :is(.mp-primary,.mp-secondary,.mp-warning) { min-height:40px; font-size:11px; }
.mp-app .mp-property-ledger-row { min-height:66px; }
.mp-property-identity strong { font-size:12px; }
.mp-property-identity-copy :is(strong,small) { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mp-property-identity small,.mp-ledger-signal { font-size:10px; }
.mp-property-panel-head h4 { color:var(--lb-ink); }
.mp-property-price-hero { background:#473c32; }
.mp-app[data-segment=portfolio] .mp-sidebar { background:#4a372e; }
.mp-app[data-segment=portfolio] .mp-top { background:#4a372e; }
.mp-app[data-segment=portfolio] .mp-nav-item[aria-current=page] { background:#f0e5db; color:#4a372e; border-color:#f0e5db; }
.mp-app[data-segment=portfolio] .mp-page-heading>div:first-child { color:var(--lb-clay-ink); }
.mp-property-insight { border-left:1px solid var(--lb-clay); background:#faf4eb; }
@media(max-width:1000px) {
  .floating-tools { width:136px; min-height:48px; max-width:none; bottom:max(10px,env(safe-area-inset-bottom)); padding:2px 4px 2px 10px; }
  .floating-tools-label { gap:6px; }
  .floating-tools-label>span { font-size:0; }
  .floating-tools-label>span::after { content:"Gratis"; font-size:11px; font-weight:700; }
  .floating-tools-label small { display:none; }
  .floating-tools button { flex-basis:40px; width:40px; height:40px; }
  .floating-whatsapp { width:48px; height:48px; bottom:max(10px,env(safe-area-inset-bottom)); }
  .floating-whatsapp svg { width:25px; height:25px; }
}

@media(max-width:1050px) {
  .mp-workspace { grid-template-columns:1fr; height:auto; overflow:visible; }
  .mp-sidebar { position:static; min-height:0; padding:12px; }
  .mp-sidebar>.mp-brand-mark,.mp-sidebar-label,.mp-sidebar-footer { display:none; }
  .mp-nav-list { display:flex; flex-wrap:wrap; gap:6px; }
  .mp-app .mp-nav-item { min-height:44px; width:auto; padding-inline:14px; }
  .mp-inventory-layout,.mp-portfolio-layout { grid-template-columns:1fr; }
  .mp-detail,.mp-property-detail { position:static; }
}
@media(max-width:760px) {
  .header { backdrop-filter:none; }
  .hero { padding-top:48px; }
  .phone-scene::before { inset:35px 0 70px; }
  .process { border:0; }
  .process li { border-top:1px solid var(--lb-line); }
  .metrics { border:0; gap:0; }
  .metric { border:0; border-top:1px solid var(--lb-line); padding:16px 12px; }
  .metric:last-child { border-top:1px solid var(--lb-line); }
  .mp-chooser { grid-template-columns:1fr; gap:12px; padding:16px; }
  .mp-chooser-actions { grid-template-columns:1fr 1fr; }
  .mp-shell .mp-segment { min-height:48px; }
  .mp-inventory-layout .mp-detail,.mp-portfolio-layout .mp-property-detail { order:0; }
  .mp-app .mp-notice { font-size:11px; }
  .mp-main { padding-bottom:24px; }
  .floating-whatsapp { width:48px; height:48px; bottom:max(10px,env(safe-area-inset-bottom)); }
  .floating-whatsapp svg { width:25px; height:25px; }
  .floating-tools { min-height:48px; bottom:max(10px,env(safe-area-inset-bottom)); padding-block:2px; }
  .floating-tools-tab { bottom:max(10px,env(safe-area-inset-bottom)); }
  .pricing-intro h1 { max-width:none; }
}
@media(max-width:389px) {
  .wrap { padding-inline:16px; }
  .mp-chooser-actions { grid-template-columns:1fr; }
  .mp-shell .mp-segment { min-height:44px; }
  .mp-main { padding:10px; }
  .mp-top-actions { flex-wrap:wrap; justify-content:flex-end; }
  .mp-app .mp-unit-state { font-size:9px; }
  .pricing-price,.mp-unit-price strong,.mp-property-price-hero strong { overflow-wrap:anywhere; }
}

/* LeadBox visual refresh — skin only; content, assets and interaction code stay untouched. */
:root {
  --ink-950:#081f26;
  --ink-900:#0e2f38;
  --ink-800:#123b45;
  --ink-700:#1d5160;
  --ink-600:#3f6572;
  --ink-300:#a9c2c9;
  --ink-200:#d3dde0;
  --ink-100:#e3ecee;
  --white:#fff;
  --ice-300:#bfe6ee;
  --ice-200:#d4eef4;
  --st-available-fg:#0b4a41;
  --st-available-bg:#DDEFEA;
  --st-available-line:#1f7a6d;
  --st-held-fg:#26406b;
  --st-held-bg:#e3eaf5;
  --st-held-line:#5b7db1;
  --st-sold-fg:#3d4a4f;
  --st-sold-bg:#e8ecee;
  --st-sold-line:#8a9aa0;
  --st-available-dk:#5ed3be;
  --st-held-dk:#8fb0e8;
  --st-sold-dk:#6f8790;
  --r-pill:999px;
  --r-field:12px;
  --r-tile:12px;
  --r-card:20px;
  --r-panel:24px;
  --lb-ink:var(--ink-800);
  --lb-muted:var(--ink-600);
  --lb-paper:var(--white);
  --lb-white:var(--white);
  --lb-line:var(--ink-200);
  --lb-mint:var(--ice-300);
  --lb-action:var(--ink-800);
  --lb-action-hover:var(--ink-900);
  --lb-clay:var(--ink-700);
  --lb-clay-ink:var(--ink-600);
  --lb-focus:var(--ice-300);
  --ink:var(--ink-950);
  --muted:var(--ink-600);
  --blue:var(--ink-800);
  --blue-dark:var(--ink-900);
  --paper:var(--white);
  --soft:var(--ink-100);
  --line:var(--ink-200);
  --tint:var(--ink-100);
  --radius:var(--r-card);
  --lb-shadow:0 1px 2px rgb(14 47 56 / 6%);
  --lb-shadow-hover:0 1px 2px rgb(14 47 56 / 6%),0 10px 28px rgb(14 47 56 / 8%);
  --lb-header-glass:rgb(255 255 255 / 92%);
  --lb-ice-halo:rgb(191 230 238 / 55%);
  --lb-ice-grid:rgb(191 230 238 / 5%);
  --lb-ice-ring:rgb(191 230 238 / 30%);
  --lb-ink-overlay:rgb(8 31 38 / 90%);
  --lb-ease:cubic-bezier(.23,1,.32,1);
}

html { scroll-padding-top:88px; }
body,button,input,select,textarea { font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif; }
body { color:var(--ink-950); background:var(--white); }
p { color:var(--ink-600); }
:is(h1,h2,h3,h4,h5) { color:var(--ink-800); letter-spacing:-.025em; }
h1 { font-size:clamp(2.5rem,5.2vw,4rem); line-height:1.05; font-weight:650; }
h2 { font-size:clamp(1.9rem,3.6vw,2.75rem); line-height:1.1; font-weight:650; }
h3 { line-height:1.25; }
.wrap { max-width:1200px; }
.section { padding-block:clamp(64px,8vw,104px); }
.section-heading { margin-bottom:36px; }
.section-heading>p:last-child { line-height:1.65; }
.eyebrow { color:var(--ink-600); font:500 12px/1.3 ui-monospace,"Cascadia Code",monospace; letter-spacing:.08em; }
.header { min-height:72px; background:var(--lb-header-glass); border-color:var(--ink-200); backdrop-filter:blur(12px); }
.brand { color:var(--ink-800); }
.brand-symbol { color:currentColor; }
.header nav a { color:var(--ink-600); transition:color 180ms ease,text-decoration-color 180ms ease; }
.header nav a:hover,.header nav a[aria-current=page] { color:var(--ink-800); }
.header nav a[aria-current=page] { font-weight:600; text-decoration:underline; text-decoration-color:var(--ice-300); text-decoration-thickness:2px; text-underline-offset:7px; }
.nav-contact,.header .nav-contact { min-height:48px; padding:12px 20px; border:0; border-radius:var(--r-pill); color:var(--white); background:var(--ink-800); font-weight:600; }
.nav-contact:hover,.header .nav-contact:hover { color:var(--white)!important; background:var(--ink-900); }
.header .menu-toggle { border-color:var(--ink-200); border-radius:var(--r-pill); }
.button,.button.secondary,.text-link,.pricing-card-foot .button,.contact-status .button {
  border-radius:var(--r-pill);
  transition:transform 180ms var(--lb-ease),background-color 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 180ms ease;
}
.button { min-height:48px; padding:12px 22px; color:var(--white); background:var(--ink-800); font-size:15px; font-weight:600; }
.button:hover { background:var(--ink-900); }
.button.secondary { color:var(--ink-800); background:transparent; border:1.5px solid var(--ink-800); }
.button.secondary:hover { background:var(--ink-100); }
.text-link,.demo-booking .text-link { color:var(--ink-800); text-decoration:underline; text-underline-offset:4px; }
.booking-privacy,.hero-note { color:var(--ink-600); }
:is(a,button,input,select,summary,textarea):focus-visible { outline:2px solid var(--ink-800); outline-offset:3px; }
::selection { color:var(--ink-950); background:var(--ice-300); }
* { scrollbar-color:var(--ink-700) transparent; }
.skip { border-radius:var(--r-pill); }
.pill,.tags span,.pricing-chip,.pricing-label,.small-dot { border-radius:var(--r-pill); }
.pill,.tags span { color:var(--ink-800); background:var(--ink-100); }
.section.soft,#como-funciona { background:var(--white); }
#inicio { background:var(--white); }
.hero { gap:40px 56px; padding-top:clamp(48px,7vw,76px); }
.hero h1 { max-width:12ch; }
.hero h1 span { display:inline; color:var(--ink-800); background:var(--ice-300); padding:0 .12em; border-radius:8px; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
.hero .intro { max-width:56ch; font-size:18px; line-height:1.65; }
.hero .actions { gap:12px; }
.phone-scene { background:radial-gradient(ellipse at center,var(--lb-ice-halo),transparent 70%); }
.phone-scene::before { background:var(--ink-100); border-radius:var(--r-panel); }
.phone { border-radius:36px; border-color:var(--white); box-shadow:0 16px 42px rgb(14 47 56 / 14%),0 3px 10px rgb(14 47 56 / 8%); }
.next-action { border-radius:var(--r-card); box-shadow:var(--lb-shadow); }
.process { gap:12px; border:0; margin:32px 0 40px; }
.process li { min-width:0; padding:20px; border:1px solid var(--ink-200); border-radius:var(--r-card); background:var(--ink-100); }
.process li>span { color:var(--ink-600); font:500 14px/1.3 ui-monospace,"Cascadia Code",monospace; }
.process h3 { margin-top:18px; font-size:18px; }
.process p { font-size:15px; line-height:1.55; }
.context-grid { border:1px solid var(--ink-200); border-radius:var(--r-card); box-shadow:var(--lb-shadow); }
.conversation { background:var(--ink-100); }
.conversation blockquote { color:var(--ink-800); }
.criteria { background:var(--white); }
.tags { gap:8px; }
.tags span { min-height:28px; padding:6px 12px; font-size:12px; }
#demo.section.wrap { max-width:none; padding-inline:max(20px,calc((100vw - 1200px)/2)); background:var(--ink-900); color:var(--white); }
#demo .section-heading h2,#demo .section-heading .eyebrow { color:var(--white); }
#demo .section-heading>p:last-child { color:var(--ink-300); }
.dashboard { overflow:hidden; border:1px solid var(--ink-700); border-radius:var(--r-panel); background-color:var(--ink-900); background-image:linear-gradient(var(--lb-ice-grid) 1px,transparent 1px),linear-gradient(90deg,var(--lb-ice-grid) 1px,transparent 1px); background-size:32px 32px; box-shadow:none; color:var(--white); }
.dashboard-top { gap:20px; padding:24px 28px; color:var(--white); background:var(--ink-900); border-bottom:1px solid var(--ink-700); }
.dashboard-top strong,.dashboard-top .muted { color:var(--white); }
.dashboard-top p,.dashboard-top .small { color:var(--ink-300); }
.dashboard-body { color:var(--white); }
.dashboard-body p,.dashboard-body .small,.dashboard-body .muted { color:var(--ink-300); }
.demo-toolbar select,.demo-toolbar input,.mp-field input,.mp-field select { min-height:48px; border:1px solid var(--ink-700); border-radius:var(--r-field); color:var(--white); background:var(--ink-800); }
.demo-toolbar select:focus-visible,.mp-field :is(input,select):focus-visible { border-color:var(--ice-300); outline:3px solid var(--lb-ice-ring); }
.metrics { gap:8px; border:0; }
.metric { min-width:0; padding:18px 16px; border:1px solid var(--ink-700); border-radius:var(--r-tile); background:var(--ink-800); }
.metric>span { color:var(--ink-300); font-size:12px; }
.metric strong { color:var(--white); font:500 clamp(30px,3vw,40px)/1 ui-monospace,"Cascadia Code",monospace; font-variant-numeric:tabular-nums; }
.metric .bar { height:8px; border-radius:var(--r-pill); background:var(--ink-700); }
.metric .bar i { border-radius:inherit; background:var(--ice-300); }
.dashboard-reading { padding:16px 18px; border-radius:var(--r-tile); background:var(--ink-800); }
.dashboard-reading p { color:var(--white); }
.campaign-preview { gap:24px; border:1px solid var(--ink-700); border-radius:var(--r-card); background:var(--ink-800); }
.campaign-preview :is(h3,.eyebrow) { color:var(--white); }
.campaign-preview p { color:var(--ink-300); }
.campaign-reel { border-radius:28px; border:1px solid var(--ink-700); box-shadow:none; }
.demo-detail-grid { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:20px; }
.list-heading h3 { color:var(--white); }
.contacts { scrollbar-color:var(--ink-700) transparent; }
.contact-row { min-height:64px; margin-block:4px; padding:10px 12px; border:1px solid var(--ink-700); border-radius:var(--r-tile); color:var(--white); background:var(--ink-800); }
.contact-row strong { color:var(--white); }
.contact-row small { color:var(--ink-300); }
.contact-row:hover,.contact-row[aria-pressed=true] { background:var(--ink-700); border-color:var(--ice-300); box-shadow:inset 3px 0 var(--ice-300); }
.avatar { color:var(--white); background:var(--ink-700); border-color:var(--ink-600); }
.contact-detail { min-height:100%; padding:28px; border:1px solid var(--ice-300); border-radius:var(--r-card); color:var(--white); background:var(--ink-800); }
.contact-detail :is(h3,strong) { color:var(--white); }
.contact-detail p,.contact-detail dt { color:var(--ink-300); }
.contact-detail dd { color:var(--white); }
.contact-detail .status { color:var(--ink-950); background:var(--ice-300); }
.conversation-sim .message-advisor,.tr-chat-bubble.tr-chat-advisor { color:var(--ink-950); background:var(--ice-300); }
.dashboard-foot { color:var(--ink-300); background:var(--ink-950); border-top:1px solid var(--ink-700); }
.demo-limit { color:var(--ink-300); }
#para-quien { background:var(--ink-100); }
#para-quien .section-heading { margin-bottom:32px; }
.segments article,.segment-card { border:1px solid var(--ink-200); border-radius:var(--r-card); background:var(--white); box-shadow:var(--lb-shadow); }
.segments article:first-child { background:var(--ink-800); color:var(--white); }
.segments article:first-child :is(h3,p,.eyebrow) { color:var(--white); }
.work { gap:clamp(28px,5vw,64px); }
.work-list li,.faq details,.pricing-difference { border-color:var(--ink-200); }
.faq { align-items:start; }
.faq details { padding:0 20px; border-radius:var(--r-card); background:var(--white); }
.faq summary { min-height:64px; padding-block:18px; color:var(--ink-800); font-size:18px; font-weight:500; }
.faq details[open] summary { color:var(--ink-900); }
.faq details p { padding:0 0 24px; line-height:1.6; }
.contact,.about { color:var(--white); background:var(--ink-900); }
.contact :is(h2,h3,.eyebrow),.about :is(h1,h2,h3,.eyebrow) { color:var(--white); }
.contact p,.contact dd,.contact dt,.about p { color:var(--ink-300); }
.contact-status { border-color:var(--ink-700); border-radius:var(--r-card); background:var(--ink-800); }
.contact .text-link,.about .text-link { color:var(--ice-300); }
.contact .button,.about .button { color:var(--ink-950); background:var(--ice-300); }
.contact .button:hover,.about .button:hover { background:var(--ice-200); }
.footer { color:var(--white); background:var(--ink-950); border-color:var(--ink-700); }
.footer p,.footer a { color:var(--ink-300); }
.footer a:hover { color:var(--ice-300); }
.footer-booking { color:var(--ice-300); }
.pricing { color:var(--ink-950); background:var(--white); }
.pricing-intro { border-color:var(--ink-200); }
.pricing-payment { border:1px solid var(--ink-700); border-radius:var(--r-card); background:var(--ink-900); }
.pricing-payment legend { border-radius:var(--r-pill); color:var(--white); background:var(--ink-900); }
.pricing-payment label { border-radius:var(--r-pill); }
.pricing-payment label:has(input:checked) { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.pricing-payment p { color:var(--ink-300); }
.pricing-group { margin-top:64px; }
.pricing-group-head { border-color:var(--ink-200); }
.pricing-card,.pricing-strips section { overflow:hidden; border:1px solid var(--ink-200); border-radius:var(--r-card); background:var(--white); box-shadow:var(--lb-shadow); }
.pricing-card-top { background:var(--white); border-color:var(--ink-200); }
.pricing-label,.pricing-phase-number,.pricing-card-body li::marker,.pricing-strips li::marker { color:var(--ink-600); }
.pricing-price { color:var(--ink-800); font-family:ui-monospace,"Cascadia Code",monospace; font-variant-numeric:tabular-nums; }
.pricing-chip { padding:7px 12px; color:var(--ink-950); background:var(--ice-300); }
.pricing-strips section { padding:24px 28px; }
.pricing-close { border-radius:var(--r-panel); color:var(--white); background:var(--ink-900); }
.pricing-close :is(h2,p,.text-link) { color:var(--white); }
.pricing-close .button { color:var(--ink-950); background:var(--ice-300); }
.pricing-close .button:hover { background:var(--ice-200); }
.about { background:var(--ink-900); }
#nosotros .nb-about { color:var(--white); }
#nosotros .nb-story-block,#nosotros .nb-team { border-color:var(--ink-700); }
#nosotros .nb-story h2,#nosotros .nb-person-role { color:var(--ice-300); }
#nosotros .nb-story p,#nosotros .nb-person-descriptor,#nosotros .nb-person-copy p,#nosotros .nb-location-copy p,#nosotros .nb-places span,#nosotros .nb-map figcaption { color:var(--ink-300); }
#nosotros .nb-person-name { color:var(--white); }
#nosotros .nb-people li { border-color:var(--ink-700); border-radius:var(--r-card); background:var(--ink-800); }
#nosotros .nb-country { fill:var(--ice-300); }
#nosotros .nb-map svg,.lm-map-svg { border-radius:var(--r-panel); }
#nosotros .nb-map-grid,#nosotros .lm-graticule { stroke:var(--ink-700); }
#nosotros .nb-land,#nosotros .lm-context { fill:var(--ink-700); stroke:var(--ink-600); }
#nosotros .nb-country,#nosotros .lm-country { fill:var(--ice-300); stroke:var(--ink-900); }
#nosotros .nb-map-labels,#nosotros .lm-labels { fill:var(--white); stroke:var(--ink-900); }
#nosotros .nb-location-copy .nb-location-note { color:var(--ink-300); }
.nb-return { border-color:var(--ink-700); }
.nb-map-page { color:var(--white); background:var(--ink-900); }
.lm-locations { border-color:var(--ink-700); border-radius:var(--r-panel); background:var(--ink-900); }
.lm-locations :is(h2,h3,h4) { color:var(--white); }
.lm-locations p,.lm-locations .lm-muted { color:var(--ink-300); }
.lm-card { border-color:var(--ink-700); border-radius:var(--r-card); color:var(--white); background:var(--ink-800); }
.lm-card :is(h4,.lm-place) { color:var(--white); }
.lm-card .lm-address,.lm-card .lm-description { color:var(--ink-300); }
.lm-card [aria-current="true"],.lm-country-number { color:var(--ice-300); }
body .lm-map-svg { border-radius:var(--r-panel); background:var(--ink-950); }
body .lm-graticule { stroke:var(--ink-700); }
body .lm-context { fill:var(--ink-700); stroke:var(--ink-600); }
body .lm-country { fill:var(--ice-300); stroke:var(--ink-900); }
body .lm-country:hover,body .lm-country:focus { fill:var(--ice-200); stroke:var(--white); }
body .lm-map .lm-country[data-lm-selected="true"] { fill:var(--ice-300); stroke:var(--white); }
body .lm-map .lm-country[data-lm-preview="true"] { fill:var(--ice-200); }
body .lm-map .lm-country:focus-visible { stroke:var(--white); outline:none; }
body .lm-labels { fill:var(--white); stroke:var(--ink-900); }
.legal { color:var(--ink-950); }
.legal h1,.legal h2,.legal h3 { color:var(--ink-800); }
.legal article,.legal section { border-color:var(--ink-200); }
.legal :is(li,p) { color:var(--ink-600); }
.legal .notice { border-color:var(--ink-700); border-radius:var(--r-card); background:var(--ink-100); }
.floating-whatsapp,.floating-tools,.floating-tools-tab { box-shadow:var(--lb-shadow-hover); }
.floating-whatsapp { width:56px; height:56px; border:2px solid var(--white); color:var(--white); background:var(--ink-800); }
.floating-whatsapp:hover { background:var(--ink-900); }
.floating-tools,.floating-tools-tab { border-color:var(--ink-200); border-radius:var(--r-pill); color:var(--ink-800); background:var(--white); }
.floating-tools-label>svg,.floating-tools-tab svg { stroke:var(--ink-800); }
.floating-tools button { border-radius:var(--r-pill); color:var(--ink-800); background:var(--ink-100); }
.floating-tools button:hover { color:var(--ink-950); background:var(--ice-300); }

/* Interactive portfolio and inventory demos use the same ink-and-ice system. */
.mp-app { --mp-navy:var(--ink-900); --mp-blue:var(--ice-300); --mp-line:var(--ink-700); --mp-muted:var(--ink-300); --mp-soft:var(--ink-800); color:var(--white); border-color:var(--ink-700); border-radius:var(--r-panel); background:var(--ink-900); box-shadow:none; }
.mp-top,.mp-sidebar { color:var(--white); background:var(--ink-950); }
.mp-windowbar,.mp-chooser { color:var(--white); border-color:var(--ink-700); background:var(--ink-900); }
.mp-chooser-copy strong,.mp-app h3,.mp-property-panel-head h4,.mp-app .mp-stat-value,.mp-app dd { color:var(--white); }
.mp-chooser-copy span,.mp-app .mp-help,.mp-app .mp-stat-label,.mp-app .mp-stat-foot,.mp-page-heading>div:first-child,.mp-app dt,.mp-section-title,.mp-legend,.mp-footnote,.mp-small-note,.mp-disclaimer { color:var(--ink-300); }
.mp-app .mp-notice { color:var(--ink-300); border-color:var(--ink-700); background:var(--ink-800); }
.mp-workspace,.mp-main { color:var(--white); background:var(--ink-900); }
.mp-app :is(.mp-stats,.mp-inventory-list,.mp-detail,.mp-operations,.mp-prices,.mp-metrics-page,.mp-pipeline,.mp-owner-pipeline,.mp-reports,.mp-portfolio-view,.mp-portfolio-ledger) { color:var(--white); border-color:var(--ink-700); border-radius:var(--r-card); background:var(--ink-800); box-shadow:none; }
.mp-stat { border-color:var(--ink-700); }
.mp-app .mp-unit,.mp-app .mp-nav-item,.mp-app .mp-toggle,.mp-app .mp-segment,.mp-app .mp-secondary,.mp-app .mp-warning { border-radius:var(--r-pill); }
.mp-app .mp-nav-item { color:var(--ink-300); }
.mp-app .mp-nav-item[aria-current=page],.mp-shell .mp-segment[aria-pressed=true] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); box-shadow:none; }
.mp-shell[data-segment=portfolio] .mp-segment[aria-pressed=true] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); box-shadow:none; }
.mp-app[data-segment=portfolio] .mp-sidebar,.mp-app[data-segment=portfolio] .mp-top { background:var(--ink-950); }
.mp-app[data-segment=portfolio] .mp-nav-item[aria-current=page] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.mp-app[data-segment=portfolio] .mp-page-heading>div:first-child { color:var(--ink-300); }
.mp-app[data-segment=portfolio] .mp-property-ledger-row.is-selected { color:var(--white); background:var(--ink-700); box-shadow:inset 3px 0 var(--ice-300); }
.mp-app .mp-segment,.mp-app .mp-toggle { color:var(--ink-300); border-color:var(--ink-700); background:var(--ink-800); }
.mp-app .mp-segment:hover,.mp-app .mp-toggle:hover { color:var(--white); background:var(--ink-700); }
.mp-app .mp-toggle[aria-pressed=true] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.mp-tower-grid,.mp-app .mp-table-wrap,.mp-app .mp-data-table,.mp-app .mp-data-table th { color:var(--white); border-color:var(--ink-700); background:var(--ink-900); }
.mp-app .mp-data-table td { color:var(--ink-300); border-color:var(--ink-700); }
.mp-app .mp-data-table tbody tr:hover,.mp-app .mp-property-ledger-row:hover { background:var(--ink-700); }
.mp-app .mp-property-ledger-row { color:var(--white); border-color:var(--ink-700); background:var(--ink-800); }
.mp-app .mp-primary,.mp-app .mp-owner-report-teaser .mp-report-button { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.mp-app .mp-primary:hover,.mp-app .mp-owner-report-teaser .mp-report-button:hover { background:var(--ice-200); }
.mp-app :is(.mp-secondary,.mp-warning) { color:var(--white); border-color:var(--ink-600); background:transparent; }
.mp-app .mp-unit[aria-pressed=true] { outline:2px solid var(--ice-300); outline-offset:2px; box-shadow:none; }
.mp-app .mp-status-disponible { color:var(--st-available-fg); background:var(--st-available-bg); border-color:var(--st-available-line); }
.mp-app .mp-status-apartado { color:var(--st-held-fg); background:var(--st-held-bg); border-color:var(--st-held-line); }
.mp-app .mp-status-vendido { color:var(--st-sold-fg); background:var(--st-sold-bg); border-color:var(--st-sold-line); }
.mp-app .mp-status-por_confirmar { color:var(--ink-300); border-color:var(--ink-600); background:transparent; }
.mp-app .mp-unit-price,.mp-app .mp-property-price-hero { color:var(--white); border:1px solid var(--ink-700); border-radius:var(--r-tile); background:var(--ink-900); }
.mp-app .mp-unit-price span,.mp-app .mp-property-price-hero span { color:var(--ink-300); }
.mp-app .mp-unit-price strong,.mp-app .mp-property-price-hero strong { color:var(--white); font-family:ui-monospace,"Cascadia Code",monospace; font-variant-numeric:tabular-nums; }
.mp-app .mp-facts,.mp-app .mp-property-history,.mp-app .mp-price-metrics>div { border-color:var(--ink-700); }
.mp-app .mp-chart-axis,.mp-app .mp-chart-grid { stroke:var(--ink-600); }
.mp-app .mp-chart-line,.mp-app .mp-chart-point { stroke:var(--ice-300); }
.mp-app .mp-chart-point { fill:var(--ink-900); }
.mp-app .mp-chart-grid { stroke-dasharray:3 3; }
.mp-app .mp-overlay { background:var(--lb-ink-overlay); }
.mp-app .mp-paper,.mp-app .mp-proposal-box { color:var(--ink-950); border-radius:var(--r-card); background:var(--white); }
.mp-app .mp-attention-strip,.mp-app .mp-property-insight,.mp-app .mp-owner-report-teaser { color:var(--white); border-color:var(--ink-700); border-left-color:var(--ice-300); background:var(--ink-800); }
.mp-app .mp-attention-strip strong,.mp-app .mp-property-insight p,.mp-app .mp-property-insight small,.mp-app .mp-owner-report-teaser p { color:var(--white); }
.mp-app .mp-attention-icon { color:var(--ink-950); background:var(--ice-300); }
.mp-app .mp-attention-action,.mp-app .mp-table-open { color:var(--ice-300); border-color:var(--ink-600); background:transparent; }

@media (hover:hover) and (pointer:fine) {
  .button:hover,.pricing-card:hover,.pricing-strips section:hover,.segments article:hover,.nb-people li:hover { transform:translateY(-1px); }
  .pricing-card:hover,.pricing-strips section:hover,.segments article:hover,.nb-people li:hover { box-shadow:var(--lb-shadow-hover); }
  .contact-row:hover { transform:translateX(2px); }
}
@media(max-width:760px) {
  #demo.section.wrap { padding-inline:20px; }
  .process { gap:10px; }
  .process li { border:1px solid var(--ink-200); border-radius:var(--r-card); }
  .demo-detail-grid { grid-template-columns:1fr; }
  .metric { border:1px solid var(--ink-700); border-radius:var(--r-tile); }
  .contact-detail { min-height:0; }
  .pricing-payment label:has(input:checked) { color:var(--ink-950); }
}
@media(max-width:389px) {
  .wrap { padding-inline:16px; }
  #demo.section.wrap { padding-inline:16px; }
  .dashboard-top { padding:18px; }
  .dashboard-body { padding:14px; }
  .contact-detail { padding:20px; }
}

/* Light-first surfaces: reserve petroleum for controls, compact bars and accents. */
#demo.section.wrap {
  color:var(--ink-950);
  background:#f2f7f8;
}
#demo .section-heading :is(h2,.eyebrow) { color:var(--ink-800); }
#demo .section-heading>p:last-child { color:var(--ink-600); }
.dashboard {
  border-color:var(--ink-200);
  color:var(--ink-950);
  background-color:#fbfdfd;
  background-image:linear-gradient(#e9f0f2 1px,transparent 1px),linear-gradient(90deg,#e9f0f2 1px,transparent 1px);
}
.dashboard-top {
  color:var(--white);
  background:var(--ink-900);
  border-color:var(--ink-700);
  padding-right:88px;
}
.dashboard-top :is(strong,.muted) { color:var(--white); }
.dashboard-top :is(p,.small) { color:#d3e0e3; }
.dashboard-top .button.secondary {
  color:#eaf6f8;
  border-color:#bfe6ee;
  background:transparent;
}
.dashboard-top .button.secondary:hover { color:var(--ink-950); background:var(--ice-300); }
.dashboard-body { color:var(--ink-950); }
.dashboard-body :is(p,.small,.muted),.demo-limit { color:var(--ink-600); }
.demo-toolbar :is(select,input),.mp-field :is(input,select) {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
}
.metrics { border:0; }
.metric {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
}
.metric>span { color:var(--ink-600); }
.metric strong { color:var(--ink-900); }
.metric .bar { background:#dbe7ea; }
.metric .bar i { background:var(--ink-700); }
.dashboard-reading {
  color:var(--ink-950);
  border:1px solid var(--ink-200);
  background:#eaf2f4;
}
.dashboard-reading p { color:var(--ink-800); }
.campaign-preview {
  border-color:var(--ink-200);
  background:#f4f8f9;
}
.campaign-preview :is(h3,.eyebrow) { color:var(--ink-800); }
.campaign-preview p { color:var(--ink-600); }
.campaign-reel { border-color:#d5e0e3; }
.list-heading h3 { color:var(--ink-800); }
.contact-row {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
}
.contact-row strong { color:var(--ink-900); }
.contact-row small { color:var(--ink-600); }
.contact-row:hover,.contact-row[aria-pressed=true] {
  color:var(--ink-950);
  border-color:var(--ink-700);
  background:#e5f0f3;
  box-shadow:inset 3px 0 var(--ink-700);
}
.avatar { color:var(--ink-800); border-color:var(--ink-200); background:#e5f0f3; }
.contact-detail {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
}
.contact-detail :is(h3,strong,dd) { color:var(--ink-900); }
.contact-detail :is(p,dt) { color:var(--ink-600); }
.contact-detail .status { color:var(--ink-950); background:var(--ice-300); }
.dashboard-foot {
  color:var(--ink-600);
  border-color:var(--ink-200);
  background:#eaf1f3;
}

/* The portfolio and inventory canvas stays light; only its compact rail is dark. */
.mp-app {
  --mp-navy:var(--ink-900);
  --mp-blue:var(--ink-700);
  --mp-line:var(--ink-200);
  --mp-muted:var(--ink-600);
  --mp-soft:#f0f5f6;
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
}
.mp-top,.mp-sidebar { color:#fff; background:var(--ink-900); }
.mp-windowbar,.mp-chooser {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#f2f6f7;
}
.mp-chooser-copy strong,.mp-app h3,.mp-property-panel-head h4,
.mp-app .mp-stat-value,.mp-app dd { color:var(--ink-900); }
.mp-chooser-copy span,.mp-app .mp-help,.mp-app .mp-stat-label,
.mp-app .mp-stat-foot,.mp-page-heading>div:first-child,.mp-app dt,
.mp-section-title,.mp-legend,.mp-footnote,.mp-small-note,.mp-disclaimer {
  color:var(--ink-600);
}
.mp-app .mp-notice { color:#36545d; border-color:#d4e2e5; background:#edf4f5; }
.mp-workspace,.mp-main { color:var(--ink-950); background:#f4f7f8; }
.mp-app :is(.mp-stats,.mp-inventory-list,.mp-detail,.mp-operations,.mp-prices,
  .mp-metrics-page,.mp-pipeline,.mp-owner-pipeline,.mp-reports,
  .mp-portfolio-view,.mp-portfolio-ledger) {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#fff;
  box-shadow:0 1px 2px rgb(14 47 56 / 5%);
}
.mp-stat { color:var(--ink-950); border-color:var(--ink-200); }
.mp-app .mp-nav-item { color:#d3e0e3; }
.mp-app .mp-nav-item:hover { color:#fff; background:var(--ink-800); }
.mp-app .mp-nav-item[aria-current=page],.mp-shell .mp-segment[aria-pressed=true],
.mp-shell[data-segment=portfolio] .mp-segment[aria-pressed=true] {
  color:var(--ink-950);
  border-color:var(--ice-300);
  background:var(--ice-300);
}
.mp-app[data-segment=portfolio] .mp-sidebar,.mp-app[data-segment=portfolio] .mp-top { background:var(--ink-900); }
.mp-app[data-segment=portfolio] .mp-nav-item[aria-current=page] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.mp-app[data-segment=portfolio] .mp-page-heading>div:first-child { color:var(--ink-600); }
.mp-app[data-segment=portfolio] .mp-property-ledger-row.is-selected { color:var(--ink-950); background:#e7f1f3; box-shadow:inset 3px 0 var(--ink-700); }
.mp-app .mp-segment,.mp-app .mp-toggle { color:var(--ink-800); border-color:var(--ink-200); background:#fff; }
.mp-app .mp-segment:hover,.mp-app .mp-toggle:hover { color:var(--ink-900); background:#eaf2f4; }
.mp-app .mp-toggle[aria-pressed=true] { color:var(--ink-950); border-color:var(--ice-300); background:var(--ice-300); }
.mp-tower-grid,.mp-app .mp-table-wrap,.mp-app .mp-data-table,.mp-app .mp-data-table th {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#f5f8f8;
}
.mp-app .mp-data-table td { color:var(--ink-800); border-color:var(--ink-200); background:#fff; }
.mp-app .mp-data-table tbody tr:hover,.mp-app .mp-property-ledger-row:hover { background:#eaf2f4; }
.mp-app .mp-property-ledger-row { color:var(--ink-950); border-color:var(--ink-200); background:#fff; }
.mp-app .mp-primary,.mp-app .mp-owner-report-teaser .mp-report-button { color:#fff; border-color:var(--ink-800); background:var(--ink-800); }
.mp-app .mp-primary:hover,.mp-app .mp-owner-report-teaser .mp-report-button:hover { background:var(--ink-900); }
.mp-app :is(.mp-secondary,.mp-warning) { color:var(--ink-800); border-color:var(--ink-200); background:#fff; }
.mp-app .mp-unit[aria-pressed=true] { outline:2px solid var(--ink-700); outline-offset:2px; box-shadow:none; }
.mp-app .mp-status-por_confirmar { color:var(--ink-600); border-color:var(--ink-600); background:#fff; }
.mp-app .mp-unit-price,.mp-app .mp-property-price-hero {
  color:var(--ink-950);
  border-color:var(--ink-200);
  background:#eaf2f4;
}
.mp-app .mp-unit-price span,.mp-app .mp-property-price-hero span,
.mp-app .mp-unit-price small,.mp-app .mp-property-price-hero small { color:var(--ink-600); }
.mp-app .mp-unit-price strong,.mp-app .mp-property-price-hero strong { color:var(--ink-900); }
.mp-app .mp-facts,.mp-app .mp-property-history,.mp-app .mp-price-metrics>div { border-color:var(--ink-200); }
.mp-app .mp-chart-axis,.mp-app .mp-chart-grid { stroke:#9bb0b6; }
.mp-app .mp-chart-line,.mp-app .mp-chart-point { stroke:var(--ink-700); }
.mp-app .mp-chart-point { fill:#fff; }
.mp-app .mp-attention-strip,.mp-app .mp-property-insight,.mp-app .mp-owner-report-teaser {
  color:var(--ink-900);
  border-color:var(--ink-200);
  border-left-color:var(--ink-700);
  background:#edf4f5;
}
.mp-app .mp-attention-strip strong,.mp-app .mp-property-insight p,
.mp-app .mp-property-insight small,.mp-app .mp-owner-report-teaser p { color:var(--ink-800); }
.mp-app .mp-attention-icon { color:var(--ink-900); background:var(--ice-300); }
.mp-app .mp-attention-action,.mp-app .mp-table-open { color:var(--ink-800); border-color:var(--ink-200); background:#fff; }

/* Keep large site sections calm and readable; use petroleum as a bounded brand accent. */
.segments article:first-child { color:var(--ink-950); background:#eaf2f4; }
.segments article:first-child :is(h3,p,.eyebrow) { color:var(--ink-800); }
.contact,.about,.pricing-close {
  color:var(--ink-950);
  background:#edf4f5;
}
.contact :is(h2,h3,.eyebrow),.about :is(h1,h2,h3,.eyebrow),
.pricing-close :is(h2,p,.text-link) { color:var(--ink-900); }
.contact p:not(.eyebrow),.contact dd,.contact dt,.about p { color:var(--ink-600); }
.contact-status { border-color:var(--ink-200); background:#fff; }
.contact .text-link,.about .text-link { color:var(--ink-800); }
.contact .button,.about .button,.pricing-close .button { color:#fff; background:var(--ink-800); }
.contact .button:hover,.about .button:hover,.pricing-close .button:hover { color:#fff; background:var(--ink-900); }
.pricing-payment { color:var(--ink-950); border-color:var(--ink-200); background:#edf4f5; }
.pricing-payment legend { color:var(--ink-900); background:#edf4f5; }
.pricing-payment p { color:var(--ink-600); }
.pricing-payment label:has(input:checked) { color:var(--ink-950); border-color:var(--ink-700); background:#dcebef; }
.about { background:#edf4f5; }
#nosotros .nb-about { color:var(--ink-950); }
#nosotros .nb-story-block,#nosotros .nb-team,#nosotros .nb-people li { border-color:var(--ink-200); }
#nosotros .nb-story h2,#nosotros .nb-person-role { color:var(--ink-700); }
#nosotros .nb-story p,#nosotros .nb-person-descriptor,#nosotros .nb-person-copy p,
#nosotros .nb-location-copy p,#nosotros .nb-places span,#nosotros .nb-map figcaption,
#nosotros .nb-location-copy .nb-location-note { color:var(--ink-600); }
#nosotros .nb-person-name { color:var(--ink-900); }
#nosotros .nb-people li { background:#fff; }
.nb-map-page { color:var(--ink-950); background:#f2f7f8; }
.lm-locations { border-color:var(--ink-200); background:#edf4f5; }
.lm-locations :is(h2,h3,h4) { color:var(--ink-900); }
.lm-locations p,.lm-locations .lm-muted { color:var(--ink-600); }
.lm-card { color:var(--ink-950); border-color:var(--ink-200); background:#fff; }
.lm-card :is(h4,.lm-place) { color:var(--ink-900); }
.lm-card .lm-address,.lm-card .lm-description { color:var(--ink-600); }
.lm-card [aria-current="true"],.lm-country-number { color:var(--ink-800); }
body .lm-map-svg { background:#e9f0f2; }
body .lm-graticule { stroke:#c5d3d7; }
body .lm-context { fill:#d4e0e3; stroke:#a8bcc1; }
body .lm-country { fill:var(--ink-700); stroke:#f8fbfb; }
body .lm-country:hover,body .lm-country:focus { fill:var(--ink-800); stroke:var(--white); }
body .lm-map .lm-country[data-lm-selected="true"] { fill:var(--ink-800); stroke:#fff; }
body .lm-map .lm-country[data-lm-preview="true"] { fill:#6d9aa5; }
body .lm-labels { fill:var(--ink-900); stroke:#f8fbfb; }
@media(max-width:760px) {
  .metric { border-color:var(--ink-200); }
  .dashboard-top { padding-right:70px; }
}

/* Distinct, local vector identities for the two illustrative businesses. */
.mp-brand-mark {
  width:42px;
  height:42px;
  border:1px solid #c6e4e9;
  border-radius:12px;
  color:var(--ink-900);
  background:#dff1f4;
}
.mp-brand-mark svg { width:28px; height:28px; }
.mp-brand-brisa { color:#104b58; background:#d8eef2; }
.mp-brand-nogal { color:#405c4b; border-color:#d7e4da; background:#e8f0e9; }
.mp-app .mp-brand-name { color:#fff; font-size:15px; font-weight:700; letter-spacing:-.025em; }
.mp-app .mp-brand-subtitle { color:#c9dce0; font-size:11px; }
.mp-sidebar .mp-brand-mark { border-color:#c6e4e9; color:var(--ink-900); background:#dff1f4; }
.mp-sidebar .mp-brand-nogal { color:#405c4b; border-color:#d7e4da; background:#e8f0e9; }

/* Role selection and restart use clear, rounded controls on the ink header. */
.mp-top-actions { gap:10px; }
.mp-role-field { color:#d7e8ec; font-size:12px; font-weight:600; }
.mp-app .mp-role-field select {
  min-height:42px;
  padding:8px 36px 8px 15px;
  border:1px solid #91cbd4;
  border-radius:var(--r-pill);
  color:var(--ink-950);
  background:var(--ice-300);
  font-size:13px;
  font-weight:700;
}
.mp-app .mp-role-field select option { color:var(--ink-950); background:#fff; }
.mp-app .mp-role-field select option:checked { color:var(--ink-950); background:var(--ice-300); }
.mp-app .mp-top-actions .mp-quiet {
  min-height:42px;
  padding:9px 17px;
  border:1px solid var(--ice-300);
  border-radius:var(--r-pill);
  color:var(--ink-950);
  background:var(--ice-300);
  font-size:13px;
  font-weight:700;
  transition:background-color 160ms ease,border-color 160ms ease,transform 160ms var(--lb-ease);
}
.mp-app .mp-top-actions .mp-quiet:hover { color:var(--ink-950); border-color:var(--ice-200); background:var(--ice-200); }
.mp-app .mp-top-actions .mp-quiet:active { transform:translateY(1px); }

/* Two choices share one track, like a connected two-position switch. */
.mp-chooser-actions {
  display:flex;
  min-width:0;
  gap:0;
  padding:4px;
  border:1px solid #c8d8dc;
  border-radius:var(--r-pill);
  background:#e7eef0;
}
.mp-shell .mp-chooser-actions .mp-segment {
  flex:1 1 0;
  min-width:0;
  min-height:46px;
  padding:10px clamp(8px,1.5vw,18px);
  border:1px solid transparent;
  border-radius:var(--r-pill);
  color:var(--ink-700);
  background:transparent;
  font-size:13px;
  font-weight:650;
  line-height:1.2;
  text-align:center;
  white-space:normal;
  transition:color 160ms ease,background-color 160ms ease,box-shadow 160ms ease;
}
.mp-shell .mp-chooser-actions .mp-segment:hover:not([aria-pressed=true]) { color:var(--ink-900); background:#f8fbfb; }
.mp-shell .mp-chooser-actions .mp-segment[aria-pressed=true],
.mp-shell[data-segment=portfolio] .mp-chooser-actions .mp-segment[aria-pressed=true] {
  color:#fff;
  border-color:var(--ink-700);
  background:var(--ink-700);
  box-shadow:0 1px 3px rgb(14 47 56 / 18%);
}
@media(max-width:760px) {
  .mp-chooser-actions { width:100%; }
  .mp-shell .mp-chooser-actions .mp-segment { min-height:46px; font-size:12px; }
}
@media(max-width:420px) {
  .mp-shell .mp-chooser-actions .mp-segment { padding-inline:6px; font-size:11px; }
  .mp-app .mp-top-actions .mp-quiet { padding-inline:12px; }
}

/* Compact the demo masthead so the fictional project name remains prominent. */
.mp-app .mp-top { min-height:62px; padding:10px 18px; }
.mp-app .mp-brand-lockup { gap:10px; }
.mp-app .mp-brand-mark { width:38px; height:38px; border-radius:11px; }
.mp-app .mp-brand-mark svg { width:25px; height:25px; }
.mp-app .mp-brand-copy { gap:3px; }
.mp-app .mp-brand-name { font-size:16px; line-height:1.1; }
.mp-app .mp-brand-subtitle { font-size:12px; line-height:1.2; }
.mp-top-actions { gap:8px; }
.mp-role-field { gap:7px; }
.mp-app .mp-role-field select { min-height:36px; padding:6px 32px 6px 12px; font-size:12px; }
.mp-app .mp-top-actions .mp-quiet { min-height:36px; padding:7px 13px; font-size:12px; }

/* Give the connected mode selector a crafted, branded toggle treatment. */
.mp-chooser { grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr); gap:24px; }
.mp-chooser-copy { position:relative; gap:5px; padding-left:12px; }
.mp-chooser-copy::before { position:absolute; inset:2px auto 2px 0; width:3px; border-radius:3px; background:var(--ink-700); content:""; }
.mp-chooser-copy strong { font-size:15px; }
.mp-chooser-copy span { font-size:11px; }
.mp-chooser-actions {
  gap:3px;
  padding:3px;
  border:1px solid #d7e2e4;
  border-radius:16px;
  background:#e8eff0;
  box-shadow:inset 0 1px 2px rgb(14 47 56 / 7%);
}
.mp-shell .mp-chooser-actions .mp-segment {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:8px 16px;
  border-radius:12px;
  color:#50666d;
  font-size:13px;
  font-weight:650;
  transition:color 170ms ease,background-color 170ms ease,box-shadow 170ms ease,transform 170ms ease;
}
.mp-shell .mp-chooser-actions .mp-segment::before {
  display:grid;
  width:28px;
  height:28px;
  flex:none;
  place-items:center;
  border:1px solid #cbdadc;
  border-radius:9px;
  color:#355c64;
  background:#fff;
  content:"";
  background-position:center;
  background-repeat:no-repeat;
  background-size:16px 16px;
}
.mp-shell .mp-chooser-actions .mp-segment:first-child::before {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23355c64' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5 21V7l7-4 7 4v14M9 10h2m2 0h2m-6 4h2m2 0h2m-5 7v-4h4v4'/%3E%3C/svg%3E");
}
.mp-shell .mp-chooser-actions .mp-segment:last-child::before {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23355c64' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5 21V10l7-6 7 6v11M9 13h6M9 17h6m-3-7v11'/%3E%3C/svg%3E");
}
.mp-shell .mp-chooser-actions .mp-segment:hover:not([aria-pressed=true]) { color:#163b45; background:#f9fbfb; }
.mp-shell .mp-chooser-actions .mp-segment[aria-pressed=true],
.mp-shell[data-segment=portfolio] .mp-chooser-actions .mp-segment[aria-pressed=true] {
  color:#fff;
  border-color:#174653;
  background:#174653;
  box-shadow:0 3px 9px rgb(14 47 56 / 18%);
}
.mp-shell .mp-chooser-actions .mp-segment[aria-pressed=true]::before {
  border-color:#bde9e8;
  color:#064b55;
  background-color:#d8f2ef;
}
@media(max-width:760px) {
  .mp-chooser { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:420px) {
  .mp-app .mp-top { padding:9px 11px; }
  .mp-app .mp-brand-lockup { gap:8px; }
  .mp-app .mp-brand-name { font-size:14px; }
  .mp-app .mp-brand-subtitle { font-size:10px; }
  .mp-app .mp-role-label { font-size:10px; }
  .mp-app .mp-role-choice { min-height:28px; padding:5px 8px; font-size:10px; }
  .mp-role-options { gap:1px; padding:2px; }
  .mp-app .mp-top-actions .mp-quiet { min-height:34px; padding:6px 10px; font-size:11px; }
  .mp-shell .mp-chooser-actions .mp-segment { gap:6px; min-height:44px; padding:6px 7px; font-size:11px; }
  .mp-shell .mp-chooser-actions .mp-segment::before { width:24px; height:24px; border-radius:7px; background-size:14px 14px; }
}

/* A compact custom role switch avoids the generic native select menu. */
.mp-app .mp-role-field { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.mp-app .mp-role-label { color:#d7e8ec; font-size:11px; font-weight:600; }
.mp-role-options {
  display:flex;
  align-items:center;
  gap:2px;
  padding:3px;
  border:1px solid #315964;
  border-radius:var(--r-pill);
  background:#0d3039;
}
.mp-app .mp-role-choice {
  min-height:30px;
  padding:5px 10px;
  border:1px solid transparent;
  border-radius:var(--r-pill);
  color:#c5d9dd;
  background:transparent;
  font-size:11px;
  font-weight:650;
  line-height:1;
  white-space:nowrap;
  transition:color 150ms ease,background-color 150ms ease,box-shadow 150ms ease;
}
.mp-app .mp-role-choice:hover:not([aria-pressed=true]) { color:#fff; background:#214b56; }
.mp-app .mp-role-choice[aria-pressed=true] { color:#103b46; border-color:#b8e5e8; background:#c8edf0; box-shadow:0 1px 3px rgb(0 0 0 / 14%); }
.mp-app .mp-role-choice:focus-visible { outline:2px solid #fff; outline-offset:2px; }

/* Unit tiles in the floor plan use soft rectangles instead of capsules. */
.mp-app .mp-tower-grid .mp-unit { border-radius:8px; }

/* Keep the hero's supporting promise below the main headline in hierarchy. */
.hero-copy h1 .hero-title-secondary {
  display:block;
  margin-top:.12em;
  color:var(--lb-action-hover);
  font-size:.68em;
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.035em;
}
