/* Raíces Light 2.31: premium editorial sections; no changes to unrelated layouts. */
.rl-brand>img{border-radius:13px!important;overflow:hidden;object-fit:cover}
.rl231-landing{overflow:clip;background:#fffcf6;color:#263e32}
.rl231-landing h1,.rl231-landing h2,.rl231-landing h3{font-family:Georgia,'Times New Roman',serif;color:#253e32;letter-spacing:-.025em}
.rl231-landing h1{font-size:clamp(2.8rem,5.3vw,5.25rem);line-height:1.07;margin:19px 0 24px}
.rl231-landing h2{font-size:clamp(2.1rem,3.8vw,3.65rem);line-height:1.12;margin:12px 0 20px}
.rl231-landing h3{font-size:clamp(1.25rem,1.9vw,1.75rem);line-height:1.2}
.rl231-landing p{font-size:clamp(1rem,1.17vw,1.12rem);line-height:1.85;color:#40534a}
.rl231-eyebrow{display:inline-block;font:750 .76rem/1.4 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#bd7040}
.rl231-landing .rl-btn{transition:transform .2s,box-shadow .2s;text-align:center}
.rl231-landing .rl-btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px #21423320}
.rl231-about-hero{padding:clamp(55px,7vw,100px) 0;background:#f3f6ef;position:relative}
.rl231-about-hero:before{content:"";position:absolute;inset:0 auto 0 0;width:35vw;background:#dde7d653;clip-path:polygon(0 0,100% 0,48% 100%,0 100%);pointer-events:none}
.rl231-about-hero-grid{display:grid;grid-template-columns:.97fr 1.03fr;align-items:center;gap:clamp(24px,5vw,90px);position:relative}
.rl231-about-hero-grid>div{max-width:560px}.rl231-about-hero-grid>div>.rl231-hero-caption{font-size:1.52rem;letter-spacing:.14em;color:#bd7444;font-family:Georgia,serif}
.rl231-about-hero-photo{margin:0;position:relative;min-height:350px;aspect-ratio:1.21;overflow:hidden;border-radius:32px 100px 32px 32px;box-shadow:0 25px 70px #1b372d25}
.rl231-about-hero-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 45%}
.rl231-about-hero-photo figcaption{position:absolute;bottom:20px;left:20px;right:20px;background:#173d32dd;color:#fff;border-radius:16px;padding:12px 18px;font:italic 1.18rem Georgia,serif}
.rl231-about-intro{padding:90px 0 85px;background:#fffdfa}
.rl231-wide-copy{max-width:990px}.rl231-wide-copy>p{font-size:1.18rem;line-height:1.96}
.rl231-about-duo{padding:76px 0;background:#f7f2e9}
.rl231-about-duo-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:48px;align-items:stretch}
.rl231-pillar{background:#263e32;color:#fff;border-radius:32px;padding:clamp(32px,4.5vw,74px);position:relative;overflow:hidden;box-shadow:0 20px 50px #1c3b2a22}
.rl231-pillar:after{content:"";width:220px;height:220px;background:#d5b37d22;position:absolute;right:-90px;top:-90px;border-radius:50%}
.rl231-pillar h2,.rl231-pillar p{color:#fff}.rl231-pillar p{color:#f2f4ea;line-height:1.9}.rl231-pillar .rl231-eyebrow{color:#ebc996}.rl231-pillar-mark{position:absolute;top:25px;right:35px;font:700 4rem Georgia,serif;color:#ffffff20}
.rl231-about-roots{margin:0;border-radius:30px;overflow:hidden;min-height:360px}.rl231-about-roots img{width:100%;height:100%;object-fit:cover;display:block;min-height:360px}
.rl231-about-purpose{padding:100px 0;background:#fff}.rl231-section-heading{max-width:815px;margin-bottom:35px}.rl231-section-heading>p{font-size:1.16rem}
.rl231-purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rl231-purpose-card{background:#fdfcf9;border:1px solid #e7dfd1;padding:32px 27px 38px;border-top:5px solid #547f74;border-radius:22px;transition:transform .2s,box-shadow .2s}
.rl231-purpose-card:nth-child(2){border-top-color:#df8344}.rl231-purpose-card:nth-child(3){border-top-color:#7265ae}.rl231-purpose-card:nth-child(4){border-top-color:#b95765}.rl231-purpose-card:nth-child(5){border-top-color:#bba36a}
.rl231-purpose-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px #163f2a10}
.rl231-purpose-n{font:700 1rem Georgia,serif;color:#b36e45;display:block;margin-bottom:26px}.rl231-purpose-card h3{margin:0 0 13px}.rl231-purpose-card p{margin:0;font-size:1rem;line-height:1.72}
.rl231-about-vision{padding:100px 0;background:#ebf0f2}.rl231-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,90px);align-items:center}
.rl231-vision-photo{margin:0;height:390px;border-radius:35px 35px 95px 35px;overflow:hidden;box-shadow:0 18px 43px #20433718}.rl231-vision-photo img{width:100%;height:100%;object-fit:cover;display:block}
.rl231-about-closer{padding:95px 0 110px;background:#fffdf9;text-align:center}.rl231-about-closer .rl-btns{justify-content:center}.rl231-script{font:italic 1.7rem Georgia,serif!important;color:#c57c50!important}
/* Past-program storytelling */
.rl231-program-hero{padding:72px 0 68px;background:#f0f5f1}
.rl231-program-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,85px);align-items:center}
.rl231-program-subtitle{font-size:1.25rem!important;max-width:550px}
.rl231-ended{display:inline-block;background:#e7e8dc;border-radius:18px;font-size:.85rem;padding:4px 9px;color:#6d746c}
.rl231-program-hero-photo{margin:0;aspect-ratio:1.3;border-radius:36px 90px 36px 36px;overflow:hidden;box-shadow:0 22px 55px #17392d26}.rl231-program-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 50%;display:block}
.rl231-program-events-bar{background:#eae1d0;color:#304536;padding:24px 0;font-weight:700;border-block:1px solid #d7c5a7}.rl231-program-events-bar .rl-wrap{display:flex;align-items:center;gap:13px}.rl231-program-events-bar span{color:#cb7a45;font-size:1.45rem}
.rl231-program-intro{padding:96px 0;background:#fffdfa}.rl231-program-text-grid{display:grid;grid-template-columns:1.6fr .62fr;gap:clamp(28px,6vw,85px);align-items:start}.rl231-program-text-grid>div>p{font-size:1.1rem;line-height:1.96}
.rl231-program-age{background:#304e3e;border-radius:26px;color:#fff;padding:35px;box-shadow:0 12px 40px #2343331d}.rl231-program-age .rl231-eyebrow{color:#f3cfa3}.rl231-program-age strong{display:block;font:700 1.9rem/1.2 Georgia,serif;margin:15px 0}.rl231-program-age p{color:#e1eae2}
.rl231-program-parts{padding:96px 0;background:#eff3f4}.rl231-program-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rl231-program-part{padding:37px 30px 42px;border-radius:26px;border:1px solid #dce3dc;background:#fff;min-height:290px;border-top:6px solid #d78842;box-shadow:0 7px 30px #203e3110;transition:transform .2s}
.rl231-program-part:nth-child(2){border-top-color:#527cc2}.rl231-program-part:nth-child(3){border-top-color:#9671b9}.rl231-program-part:hover{transform:translateY(-5px)}
.rl231-program-part>span{display:block;color:#b77d50;font-size:1.45rem;font-family:Georgia,serif;margin-bottom:32px}.rl231-program-part h3 small{display:block;font:600 .92rem system-ui,sans-serif;color:#6b736d;margin-top:9px;letter-spacing:0}.rl231-program-part p{font-size:1rem}
.rl231-program-footnote{margin:28px 0 0;font-size:.99rem!important}
.rl231-program-mentor{padding:90px 0;background:#fffaf1}.rl231-program-mentor-grid{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}
.rl231-program-community-photo{margin:0;height:360px;overflow:hidden;border-radius:95px 30px 30px 30px}.rl231-program-community-photo img{width:100%;height:100%;object-fit:cover;display:block}
.rl231-program-video{padding:90px 0;background:#fafafb}.rl231-video-frame{max-width:1000px;aspect-ratio:16/9;overflow:hidden;border-radius:28px;background:#263e32;box-shadow:0 20px 55px #183d321d}
.rl231-video-frame iframe{width:100%;height:100%;border:0;display:block}
.rl231-program-action{padding:94px 0 100px;background:#294636}.rl231-program-action-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:45px;align-items:center}.rl231-program-action .rl231-eyebrow{color:#e7c18d}.rl231-program-action h2,.rl231-program-action p{color:#fff}.rl231-program-action p{color:#edf3e9}.rl231-program-action .rl-btn.outline{background:transparent;border-color:#e0dbcd;color:#fff}
.rl231-program-qr{background:#fffdfa;border-radius:28px;max-width:380px;margin-left:auto;padding:28px;text-align:center;box-shadow:0 18px 50px #0d291826}.rl231-program-qr img{width:min(100%,250px);height:auto;display:block;margin:auto;image-rendering:auto}.rl231-program-qr strong{color:#263e32;display:block;margin:16px 0 6px;font-size:1rem}.rl231-program-qr span{display:block;color:#5b6c61;font-size:.86rem}
.rl231-funding{font-size:.94rem!important;margin-top:45px;opacity:.93}
/* Contact: sharp photo and precise gold-edged angled split, same geometric approach as owner's visual. */
.rl231-contact-hero{background:#334b3e;position:relative;isolation:isolate;min-height:320px;height:clamp(305px,29vw,390px);max-width:1440px;margin:27px auto 0;overflow:hidden;color:#fff}
.rl231-contact-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#344b3d 0%,#506658 52%,#506658 100%);z-index:-2}
.rl231-contact-photo-angle{position:absolute;inset:0 0 0 auto;width:66%;clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);z-index:0;overflow:hidden}
.rl231-contact-photo-angle img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block;filter:none}
.rl231-contact-hero:after{content:"";position:absolute;inset:0;background:#e5c58a;clip-path:polygon(48.6% 0,49.6% 0,35% 100%,34% 100%);pointer-events:none;z-index:1}
.rl231-contact-hero-inner{width:min(1160px,calc(100% - 60px));height:100%;margin:0 auto;display:flex;align-items:center;position:relative;z-index:2}
.rl231-contact-copy{max-width:45%;padding:30px 0 36px}.rl231-contact-copy .rl-kicker{background:#fff;border-color:#fff;color:#304638}
.rl231-contact-copy h1{color:#fff;font:700 clamp(2.5rem,4.8vw,4.5rem)/1.09 Georgia,serif;letter-spacing:-.027em;margin:15px 0 17px}
.rl231-contact-copy p{color:#fff;line-height:1.75;font-size:clamp(.98rem,1.22vw,1.16rem);max-width:470px}
.rl227-contact-page .rl-contact-feature img{object-fit:cover;object-position:center 50%}
.rl227-contact-page>.rl-section{padding-top:48px}
.rl231-resource-landing .rl231-section-heading{margin-bottom:27px}.rl231-resources-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rl231-resource-tile{border:1px solid #e7ddcf;border-radius:23px;overflow:hidden;background:white}.rl231-resource-image{height:230px;display:block;overflow:hidden}.rl231-resource-image img{display:block;height:100%;width:100%;object-fit:cover}.rl231-resource-content{padding:25px}.rl231-resource-content h3{margin:7px 0 12px;font-size:1.45rem}.rl231-resource-content h3 a{text-decoration:none}.rl231-resource-content p{color:#53645b}.rl231-resource-landing .rl-btns{margin-top:28px}
.rl231-disabled-apply{background:#dce4df!important;color:#476357!important;border-color:#dce4df!important;cursor:not-allowed}
/* Motion only after JS enables it, ensuring content never disappears if JS fails. */
.rl231-motion .rl231-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.rl231-motion .rl231-reveal.rl231-visible{opacity:1;transform:translateY(0)}
@media(max-width:900px){
 .rl231-about-hero-grid,.rl231-about-duo-grid,.rl231-vision-grid,.rl231-program-hero-grid,.rl231-program-text-grid,.rl231-program-mentor-grid,.rl231-program-action-grid{grid-template-columns:1fr;gap:35px}
 .rl231-purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rl231-program-card-grid{grid-template-columns:1fr 1fr}
 .rl231-about-hero-photo{min-height:320px;max-height:460px}.rl231-program-hero-photo{max-height:420px}.rl231-program-qr{margin:0 auto}
 .rl231-contact-copy{max-width:51%}.rl231-contact-copy h1{font-size:clamp(2.3rem,5vw,3.4rem)}
}
@media(max-width:620px){
 .rl231-landing h1{font-size:2.5rem}.rl231-landing h2{font-size:2.15rem}
 .rl231-about-hero,.rl231-about-intro,.rl231-about-duo,.rl231-about-purpose,.rl231-about-vision,.rl231-about-closer,.rl231-program-intro,.rl231-program-parts,.rl231-program-mentor,.rl231-program-video,.rl231-program-action{padding-top:55px;padding-bottom:60px}
 .rl231-about-hero-photo{min-height:280px;aspect-ratio:1.13;border-radius:25px 60px 25px 25px}.rl231-about-roots{min-height:240px}.rl231-about-roots img{min-height:240px}
 .rl231-purpose-grid,.rl231-program-card-grid,.rl231-resources-grid{grid-template-columns:1fr}
 .rl231-program-card-grid>.rl231-program-part{min-height:auto}.rl231-program-hero{padding:50px 0}.rl231-program-hero-photo{aspect-ratio:1.34}
 .rl231-program-events-bar .rl-wrap{align-items:start}
 .rl231-vision-photo{height:280px}.rl231-program-community-photo{height:280px}
 .rl231-contact-hero{height:auto;min-height:0;margin:18px 12px 0;display:flex;flex-direction:column;padding-top:220px;border-radius:0}
 .rl231-contact-hero:before{background:#334b3e}
 .rl231-contact-photo-angle{width:100%;inset:0 0 auto;clip-path:polygon(0 0,100% 0,100% 100%,0 87%);height:250px}
 .rl231-contact-hero:after{clip-path:polygon(0 67%,100% 82%,100% 85%,0 70%);top:0;bottom:auto;height:250px}
 .rl231-contact-hero-inner{width:calc(100% - 42px);height:auto;display:block}
 .rl231-contact-copy{max-width:none;padding:45px 0 35px}
 .rl231-contact-copy h1{font-size:2.9rem}
 .rl227-contact-page>.rl-section{padding-top:28px}
}
@media(prefers-reduced-motion:reduce){.rl231-motion .rl231-reveal{opacity:1!important;transform:none!important;transition:none!important}.rl231-purpose-card,.rl231-program-part,.rl231-landing .rl-btn{transition:none!important}}
