/* Public pages only. Separate visual identities; private workspace is unchanged. */
.organic-site{--rr-ink:#362936;--rr-green:#8b3f5c;--rr-green-hover:#692c46;--rr-soft:#fbf2f5;--rr-blue:#fbf2f5;--rr-border:#e8dce2;--rr-muted:#685563;--rr-focus:#8b3f5c;--rr-shadow:0 10px 28px #3629360c;--ink:#362936;--green:#8b3f5c;--muted:#685563;--sage:#fbf2f5;--sand:#fcf9fb;--lime:#ffe3ce;color:var(--rr-ink);background:#fff}
.organic-site.mariana-brand{--rr-green:#9b354a;--rr-green-hover:#77263a;--rr-soft:#fff3f5;--rr-blue:#fff3f5;--rr-border:#eadde2;--rr-focus:#9b354a;--green:#9b354a;--sage:#fff3f5;--lime:#ffe5d4}
.organic-site :is(h1,h2,h3,h4,.identity,.text-link,.desktop-navigation a){color:var(--rr-ink)}
.organic-site :is(h1,h2) em{color:var(--rr-green)}
.organic-site .eyebrow{color:var(--rr-muted)}
.organic-site :is(.landscape-panel,.services-block,.visit-experience,.visit-support,.project-facts,.intent-bar a,.clarity-band,.compare-filters){background:var(--rr-soft);border-color:var(--rr-border);color:var(--rr-ink)}
.organic-site :is(.clarity-band,.visit-experience) :is(h2,p,a,.eyebrow){color:var(--rr-ink)}
.organic-site .clarity-band h2 em{color:var(--rr-green)}
.organic-site :is(input,select,textarea,.btn.secondary,.mobile-menu summary){border-color:var(--rr-border)}
.organic-site :is(.btn.secondary,.text-link,.text-button){color:var(--rr-green)}
.organic-site .rr-hero:after{background:linear-gradient(90deg,#2c1e2de8,#2c1e2d85 55%,#2c1e2d10),linear-gradient(0deg,#2c1e2d88,transparent 50%)}
.organic-site .rr-hero h1,.organic-site .rr-hero .eyebrow{color:#fff}
.organic-site .rr-hero h1 em{color:#ffe3ce}
.organic-site .rr-hero .btn{background:#fff;color:#362936;border-color:#fff}
.organic-site .rr-hero .btn.secondary{background:#362936bf;color:#fff;border-color:#ffffffb3}
.organic-site .hero-location{color:#fff}
.organic-site .surface-choice input:checked+span{background:var(--rr-soft);border-color:var(--rr-green);color:var(--rr-green);box-shadow:inset 0 0 0 1px var(--rr-green)}
.organic-site .surface-choice span{border-color:var(--rr-border);color:var(--rr-ink);background:#fff}
.organic-site :is(.moment-filters button[aria-pressed=true],.moment-badge,.compare-photo figcaption){background:var(--rr-ink);color:#fff;border-color:var(--rr-ink)}
.organic-site :is(.moment-filters button,.moment-navigation button,.section-tabs a){color:var(--rr-ink);border-color:var(--rr-border)}
.organic-site .mobile-contact{background:#fff;border-color:var(--rr-border);color:var(--rr-ink)}
.organic-site .mobile-contact>a{background:var(--rr-green);color:#fff;border-radius:12px}
/* Size and total are two primary facts. Monthly and initial payments stay together. */
.organic-site .surface-offer .offer-size,.organic-site.project-page .price-option .offer-size{display:flex;flex-direction:column;gap:4px;font-size:clamp(32px,3.4vw,44px);line-height:1.1;margin:12px 0 16px;color:var(--rr-ink)}
.organic-site .offer-size small{font-size:14px;font-weight:400;letter-spacing:0;color:var(--rr-muted)}
.organic-site .payment-plan-label{font-size:13px;font-weight:700;letter-spacing:.02em;margin:0 0 8px;color:var(--rr-green)}
.organic-site .compare-total strong{font-size:clamp(30px,3vw,40px);font-weight:700;color:var(--rr-ink)}
.organic-site .surface-offer dl{background:var(--rr-soft);padding:16px;border:0;border-radius:12px;gap:12px}
.organic-site .surface-offer dd{font-size:21px;white-space:normal;line-height:1.3}
.organic-site .payment-queries{border-top:1px solid var(--rr-border);padding-top:14px;margin-top:16px}
.organic-site .payment-queries>p{font-size:14px;margin:0 0 10px;font-weight:700;color:var(--rr-ink)}
.organic-site .payment-queries>div{display:flex;gap:8px;flex-wrap:wrap}
.organic-site .payment-queries a{display:flex;align-items:center;justify-content:center;flex:1 1 160px;min-height:46px;border:1px solid var(--rr-border);border-radius:10px;background:#fff;padding:10px 12px;color:var(--rr-green);font-size:14px;font-weight:700;line-height:1.35;text-decoration:none;text-align:center}
.organic-site .payment-queries small{display:block;color:var(--rr-muted);font-size:12px;line-height:1.5;margin-top:8px}
.organic-site .price-option{border-top:3px solid var(--rr-green)}
.organic-site .compare-grid{align-items:start}
.organic-site .surface-choice{margin:12px 0}
.organic-site .project-offer-body{padding:24px}
/* Real controls in the footer; generous touch targets without a wall of empty space. */
.organic-site .web-footer{background:#302431;color:#fff}
.organic-site.mariana-brand .web-footer{background:#322739}
.organic-site .web-footer :is(p,a,small,.eyebrow,.identity,.identity span){color:#fff}
.organic-site .web-footer em{color:#ffd9be}
.organic-site .footer-contact{display:flex;flex-direction:column;align-items:stretch;gap:16px}
.organic-site .footer-contact>p{margin:0;max-width:36ch;font-size:14px;line-height:1.6}
.organic-site :is(.footer-phone,.footer-private,.footer-visit){display:flex;align-items:center;justify-content:flex-start;gap:14px;min-height:58px;padding:16px 20px;border:1px solid #ffffff70;border-radius:14px;background:#ffffff0d;text-decoration:none;line-height:1.4;margin:0}
.organic-site .footer-phone{background:#fff;color:#362936;font-size:22px;font-weight:700;border-color:#fff}
.organic-site .footer-phone :is(span,small){color:#362936}
.organic-site :is(.footer-phone,.footer-private)>span{display:flex;flex-direction:column;gap:6px}
.organic-site :is(.footer-phone,.footer-private) small{font-size:12px;font-weight:400}
.organic-site :is(.footer-phone,.footer-private,.footer-visit) .ui-icon{width:24px;height:24px;flex-shrink:0}
.organic-site .footer-private{font-size:16px}
.organic-site .footer-links{gap:4px}
.organic-site .footer-links a{display:flex;align-items:center;min-height:44px;padding:8px 0}
.organic-site .footer-bottom{border-color:#ffffff40}
.organic-site .social-icons a{border-color:#ffffff70;color:#fff}
.organic-site .home-questions details{padding-block:18px}
.organic-site .home-questions details p{max-width:72ch;line-height:1.6}
.organic-site .organic-stories{padding-block:42px;border-top:1px solid var(--rr-border)}
.organic-site .organic-stories>.btn{margin-top:20px}
/* Mariana has a portrait-led welcome, an individual voice and her own accent. */
.organic-site .advisor-welcome{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;padding-block:42px}
.organic-site .advisor-welcome h1{font-size:clamp(36px,4.6vw,62px);margin:12px 0 20px;line-height:1.08}
.organic-site .advisor-welcome>div>p:not(.eyebrow){max-width:48ch;font-size:18px;line-height:1.6}
.organic-site .advisor-welcome .actions{gap:12px;margin:24px 0 14px;flex-wrap:wrap}
.organic-site .advisor-welcome .actions .btn{max-width:100%;white-space:normal;text-align:center}
.organic-site .advisor-welcome figure{margin:0;background:#fff3f5;border-radius:24px;overflow:hidden;border:1px solid var(--rr-border)}
.organic-site .advisor-welcome figure img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.organic-site .advisor-welcome figcaption{display:flex;flex-direction:column;gap:4px;padding:16px 20px;font-size:20px;font-weight:700}
.organic-site .advisor-welcome figcaption span{font-size:14px;font-weight:400;color:var(--rr-muted)}
.organic-site .advisor-welcome .advisor-direct{font-size:14px;color:var(--rr-muted)}
@media(hover:hover) and (pointer:fine){
 .organic-site .btn:hover,.organic-site .mobile-contact>a:hover{background:var(--rr-green-hover);border-color:var(--rr-green-hover);color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #36293624}
 .organic-site .payment-queries a:hover{background:var(--rr-soft);border-color:var(--rr-green)}
 .organic-site :is(.footer-private,.footer-visit):hover{background:#ffffff20;border-color:#fff}
 .organic-site .footer-phone:hover{background:#fbf2f5}
}
.organic-site :is(.btn,.payment-queries a,.footer-phone,.footer-private,.footer-visit):active{transform:translateY(1px);box-shadow:none}
@media(max-width:760px){
 .organic-site .advisor-welcome{grid-template-columns:1fr;gap:20px;padding-block:24px}
 .organic-site .advisor-welcome figure{max-width:320px;width:100%;justify-self:center}
 .organic-site .advisor-welcome h1{font-size:38px}
 .organic-site .advisor-welcome>div>p:not(.eyebrow){font-size:16px}
 .organic-site .advisor-welcome .actions{display:grid;grid-template-columns:1fr;gap:10px}
 .organic-site .footer-invitation{align-items:stretch;flex-direction:column;gap:16px}
 .organic-site .footer-visit{justify-content:center}
 .organic-site .organic-stories{padding-block:28px}
 .organic-site .project-offer-body{padding:18px}
 .organic-site .surface-offer dd{font-size:19px}
 .organic-site .mobile-contact{gap:10px;padding:10px 14px}
 .organic-site.mariana-brand .mobile-contact>span{display:none}
 .organic-site.mariana-brand .mobile-contact>a{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.organic-site :is(.btn,.payment-queries a,.footer-phone,.footer-private,.footer-visit){transition:none!important;transform:none!important}}

@media(hover:hover) and (pointer:fine){.organic-site .rr-hero .btn:hover{background:#ffe3ce;color:#362936;border-color:#ffe3ce}.organic-site .btn.secondary:hover{background:var(--rr-soft);color:var(--rr-green)}}
.organic-site .web-footer .footer-phone{color:#362936}.organic-site .visit-experience .btn{color:#fff}.organic-site :is(.btn,.payment-queries a,.footer-phone,.footer-private,.footer-visit):focus-visible{outline:3px solid var(--rr-focus);outline-offset:4px}.organic-site .web-footer a:focus-visible{outline-color:#fff}

/* Footer controls own their foreground, including nested labels and SVG.
   The old footer-wide white text selector overrode the phone's small label. */
.organic-site .web-footer .footer-phone,
.organic-site .web-footer .footer-phone :is(span,small,.ui-icon){color:#362936}
.organic-site .web-footer .footer-phone{background:#fff;border-color:#fff;font-size:22px;width:100%;text-align:left;white-space:normal}
.organic-site .web-footer .footer-phone>span{min-width:0;overflow-wrap:anywhere}
.organic-site .web-footer .footer-phone small{font-size:13px;line-height:1.4}
.organic-site .web-footer .footer-visit{color:#fff!important}
@media(hover:hover) and (pointer:fine){.organic-site .web-footer .footer-phone:hover{background:#ffe5d4;border-color:#ffe5d4}}

/* Cada rancho conduce a una decisión y a pruebas concretas, sin una ficha gigante. */
.organic-site .choice-chapter .experience-heading{gap:24px;margin-bottom:22px;align-items:start}
.organic-site .choice-chapter .experience-heading h2{font-size:clamp(1.8rem,3.3vw,2.6rem);line-height:1.15}
.organic-site .choice-chapter .landscape-panel{grid-template-columns:1.05fr 1fr;background:#fff;align-items:stretch;min-height:0}
.organic-site .choice-chapter .landscape-panel figure{min-height:0;height:auto;min-width:0;position:relative}
.organic-site .choice-chapter .landscape-panel figure img{width:100%;height:100%;object-fit:cover;display:block}
.organic-site .choice-chapter .landscape-panel>div{padding:clamp(20px,2.5vw,34px);min-width:0}
.organic-site .choice-chapter .landscape-panel h3{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.15;margin:8px 0 14px}
.organic-site .choice-chapter .landscape-panel p:not(.eyebrow){color:var(--rr-ink);font-size:16px;line-height:1.55;margin:12px 0}
.organic-site .choice-chapter .landscape-panel dl{margin:18px 0 12px}
.organic-site .choice-chapter .landscape-panel dl>div{padding:14px 0;border-bottom:0}
.organic-site .choice-chapter .choice-sizes{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 0}
.organic-site .choice-sizes span{display:inline-block;background:var(--rr-soft);border:1px solid var(--rr-border);border-radius:8px;padding:7px 10px;font-weight:700;font-size:16px;line-height:1.3}
.organic-site .choice-chapter .landscape-panel .choice-help{color:var(--rr-muted);font-size:14px;line-height:1.5;margin:0 0 20px}
.organic-site .choice-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px}
.organic-site .choice-chapter .choice-actions .btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:48px;padding:12px 16px;margin:0;white-space:normal;text-align:center;font-size:15px}
.organic-site .choice-chapter figure figcaption{max-width:calc(100% - 24px);left:12px;right:auto;bottom:12px;background:#271d29e6;color:#fff;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4}
@media(max-width:760px){
 .organic-site .choice-chapter .experience-heading{margin-bottom:16px}
 .organic-site .choice-chapter .experience-heading>p{margin-top:12px}
 .organic-site .choice-chapter .landscape-panel{display:flex;flex-direction:column}
 .organic-site .choice-chapter .landscape-panel figure{height:auto;aspect-ratio:16/10}
 .organic-site .choice-chapter .landscape-panel>div{padding:20px}
 .organic-site .choice-chapter .choice-actions{display:grid;grid-template-columns:1fr;gap:10px}
 .organic-site .choice-chapter .choice-actions .btn{width:100%}
}

.organic-site .choice-chapter .landscape-panel[hidden]{display:none}
