/* Raíces Light 2.29: focused enhancements */
.rl229-no-scroll{overflow:hidden!important}
.rl229-policy-buttons{margin:16px 0}.rl229-policy-buttons .rl-btn{white-space:normal;text-align:center}
.rl229-overlay{display:none;position:fixed;inset:0;z-index:100001;background:rgba(15,35,27,.78);backdrop-filter:blur(8px);padding:14px;align-items:center;justify-content:center}.rl229-overlay.is-open{display:flex}
.rl229-policy-dialog{width:min(740px,100%);max-height:min(92dvh,920px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #d6d7ca;border-radius:25px;background:#fffdf8;color:#243f35;box-shadow:0 30px 100px #071b1666}
.rl229-policy-header{background:#eff3ed;padding:24px 30px 18px;border-bottom:1px solid #e0e7dd}.rl229-policy-header h2{font:700 clamp(26px,4vw,39px)/1.12 Georgia,serif;margin:10px 0 8px}.rl229-policy-header p{margin:0;color:#566f62;font-size:14px}
.rl229-policy-scroll{padding:24px 30px;overflow-y:auto;flex:1;min-height:0;max-height:45dvh;overscroll-behavior:contain;scrollbar-color:#86a191 #eff3ed}.rl229-policy-scroll h3{color:#174737;font-size:21px;margin:24px 0 8px}.rl229-policy-scroll p,.rl229-policy-scroll li{font-size:15px;line-height:1.75}.rl229-policy-scroll ul{padding-left:24px}.rl229-policy-date{margin-top:22px}
.rl229-policy-footer{padding:18px 30px 23px;background:#f7f6ef;border-top:1px solid #e2e6db;display:grid;gap:12px}.rl229-policy-footer p{margin:0;color:#576e62;font-size:13px}.rl229-policy-footer label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;cursor:pointer}.rl229-policy-footer input{width:18px;height:18px;accent-color:#235b3f}.rl229-policy-footer button:disabled{opacity:.43;cursor:not-allowed}
.rl229-view-switch{display:flex;justify-content:flex-end;gap:8px;margin:0 0 15px}.rl229-view-button{display:flex;align-items:center;gap:7px;border:1px solid #d8ddce;background:#fff;border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:800;color:#30483c}.rl229-view-button.is-selected{background:#244b39;color:white;border-color:#244b39}
.rl229-job-card{overflow:hidden;display:flex;flex-direction:column}.rl229-job-image{width:100%;height:145px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f1f5ef}.rl229-job-image img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.rl229-no-job-image{font-size:40px;color:#a4bea5}.rl229-job-card .rl221-job-copy{flex:1}
.rl229-job-grid.rl229-as-list{display:grid;grid-template-columns:1fr;gap:13px}.rl229-job-grid.rl229-as-list .rl229-job-card{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:185px}.rl229-job-grid.rl229-as-list .rl229-job-image{height:100%;min-height:185px}.rl229-job-grid.rl229-as-list .rl221-job-copy{padding:20px}.rl229-job-grid.rl229-as-list .rl221-job-copy p{-webkit-line-clamp:3}
.rl229-job-gallery{margin:-24px -24px 28px;padding:20px;background:#f4f7f2;border-radius:22px 22px 4px 4px}.rl229-job-main-image{width:100%;border:0;background:transparent;cursor:zoom-in;padding:0}.rl229-job-main-image img{width:100%;height:350px;object-fit:contain;display:block}.rl229-gallery-thumbs{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x proximity;margin-top:13px;padding:2px}.rl229-gallery-thumbs button{flex:0 0 77px;width:77px;height:65px;border:2px solid transparent;border-radius:10px;overflow:hidden;padding:0;background:white;cursor:pointer}.rl229-gallery-thumbs button.is-active,.rl229-gallery-thumbs button:hover{border-color:#ed8c41}.rl229-gallery-thumbs img{height:100%;width:100%;object-fit:contain}
.rl229-job-lightbox{display:none;position:fixed;inset:0;z-index:100010;background:#0a1512e8;padding:20px;align-items:center;justify-content:center}.rl229-job-lightbox.is-open{display:flex}.rl229-lightbox-inner{position:relative;width:min(1100px,100%)}.rl229-lightbox-inner img{display:block;max-width:100%;max-height:85dvh;object-fit:contain;margin:auto;border-radius:12px}.rl229-lightbox-inner button{position:absolute;right:0;top:-48px;width:42px;height:42px;border:0;border-radius:50%;background:white;color:#17382e;font-size:27px;cursor:pointer}.rl229-job-apply-method{margin-top:18px}.rl229-job-apply-method .rl229-policy-buttons{flex-direction:column;align-items:stretch}.rl229-job-apply-method .rl-btn{width:100%;justify-content:center}
/* Latest Journal: undo old 9px category-circle generic span rule, and stop titles collapsing. */
.rl227-latest-widget>a.rl227-side-post{display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;gap:14px!important;align-items:start!important;text-decoration:none!important;min-width:0!important;width:100%!important;white-space:normal!important;padding:13px 0!important}
.rl227-latest-widget>a.rl227-side-post>.rl227-side-thumb{width:82px!important;height:70px!important;min-width:82px!important;border-radius:12px!important;background:#f0f2ee!important;overflow:hidden!important}
.rl227-latest-widget>a.rl227-side-post>.rl227-side-copy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;width:auto!important;height:auto!important;border-radius:0!important;margin:0!important;overflow:hidden!important}
.rl227-latest-widget .rl227-side-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.rl227-latest-widget .rl227-side-copy strong{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;word-break:normal!important;overflow-wrap:break-word!important;line-height:1.35!important;font-size:13px!important;margin:0!important;max-width:100%!important}
.rl227-latest-widget .rl227-side-copy em,.rl227-latest-widget .rl227-side-copy small{display:block!important;line-height:1.3!important;margin:0!important;white-space:normal!important;overflow-wrap:break-word!important}
/* Calendar: interaction, preview photos and tiny empty-date toast */
.rl223-events-section .rl-calendar-day{cursor:pointer;transition:transform .19s ease,box-shadow .19s ease,background .19s ease!important}.rl223-events-section .rl-calendar-day:hover,.rl223-events-section .rl-calendar-day:focus-visible{transform:translateY(-3px);box-shadow:0 9px 22px #244b3924!important;background:#fff9ed!important;outline:2px solid #aacbb6;outline-offset:2px}.rl223-events-section .rl-calendar-day.has-event{background:#f1f8f1!important}
.rl223-events-section .rl-calendar-day .rl-day-thumbs .rl-day-thumb img{display:block!important;width:34px!important;height:30px!important;object-fit:contain!important;border-radius:5px}.rl223-events-section .rl-calendar-day .rl-day-thumbs .rl-day-thumb{display:flex!important;gap:4px;align-items:center}
.rl223-events-section .rl-event-row.rl229-event-row{display:grid!important;grid-template-columns:75px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;text-align:left}.rl223-events-section .rl-event-row.rl229-event-row:not(:has(img)){grid-template-columns:1fr!important}.rl223-events-section .rl-event-row.rl229-event-row>span{min-width:0}.rl223-events-section .rl-event-row.rl229-event-row img.rl229-event-thumb{display:block!important;width:75px!important;height:68px!important;object-fit:contain!important;border-radius:12px!important;background:#f4f4ef!important}
.rl229-empty-day-hint{position:fixed;z-index:99999;width:max-content;max-width:min(340px,90vw);border:1px solid #dce8da;background:#244a39;color:#fff;padding:11px 17px;border-radius:12px;box-shadow:0 13px 32px #15332244;font-size:13px;font-weight:750;pointer-events:none;opacity:0;transform:translateY(-5px);transition:.18s}.rl229-empty-day-hint.is-showing{opacity:1;transform:translateY(0)}
/* Brand textures (one use per view, softened to protect headline readability). */
body.post-type-archive-raices_job .rl-page-hero::before,body.blog .rl219-journal-hero::before{content:'';position:absolute;right:0;top:0;bottom:0;width:44%;background-size:cover;background-position:center;opacity:.10;pointer-events:none;filter:saturate(.75)}
body.post-type-archive-raices_job .rl-page-hero::before{background-image:url('../images/v229/tree-canopy.jpg')}
body.blog .rl219-journal-hero::before{background-image:url('../images/v229/tree-roots.jpg')}
body.post-type-archive-raices_job .rl-page-hero>.rl-wrap,body.blog .rl219-journal-hero>.rl-wrap{position:relative;z-index:1}
@media(max-width:780px){.rl229-job-grid.rl229-as-list .rl229-job-card{grid-template-columns:120px minmax(0,1fr)}.rl229-job-grid.rl229-as-list .rl229-job-image{min-height:180px}.rl229-job-main-image img{height:240px}.rl229-policy-header,.rl229-policy-scroll,.rl229-policy-footer{padding-left:19px;padding-right:19px}.rl229-job-apply-method .rl-btn{min-width:0}.rl229-policy-scroll{max-height:44dvh}}
@media(max-width:480px){.rl229-job-grid.rl229-as-list .rl229-job-card{grid-template-columns:105px minmax(0,1fr)}.rl229-job-grid.rl229-as-list .rl221-job-copy{padding:13px}.rl229-job-grid.rl229-as-list .rl221-job-copy h2{font-size:17px}.rl229-job-image{height:130px}}
@media(prefers-reduced-motion:reduce){.rl223-events-section .rl-calendar-day,.rl229-empty-day-hint{transition:none!important;transform:none!important}}
/* Contact: restore the right-side hero visual; leave the text unobstructed. */
.rl227-contact-page .rl-contact-hero{position:relative;min-height:410px;overflow:hidden;background:#304b3d!important}
.rl227-contact-page .rl-contact-hero .rl229-contact-hero-visual{position:absolute;right:0;top:0;height:100%;width:49%;display:block;object-fit:cover;object-position:center;opacity:.97;z-index:0}
.rl227-contact-page .rl-contact-hero .rl-contact-hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(26,58,43,.98) 0%,rgba(36,68,51,.94) 52%,rgba(36,68,51,.14) 80%,transparent 100%)!important}
.rl227-contact-page .rl-contact-hero .rl-contact-hero-inner{position:relative;z-index:2}
.rl227-contact-page .rl-contact-feature img{width:100%;max-height:390px;object-fit:contain!important;object-position:center;background:#f3f6f1}
@media(max-width:720px){.rl227-contact-page .rl-contact-hero .rl229-contact-hero-visual{width:100%;opacity:.3;object-position:center}.rl227-contact-page .rl-contact-hero .rl-contact-hero-overlay{background:rgba(28,59,44,.79)!important}.rl227-contact-page .rl-contact-hero{min-height:330px}}
