/* RIO company and contact v1 */
body:not([data-page=home]):not([data-page=about]):not([data-page=contact]) #rioCompanySections{display:none}
body[data-page=about] #main>:not(.route-masthead):not(#rioCompanySections),body[data-page=contact] #main>:not(.route-masthead):not(#rioCompanySections){display:none!important}
body[data-page=about] #rioCompanySections #contact,body[data-page=contact] #rioCompanySections #about{display:none}
body[data-page=about] .route-masthead,body[data-page=contact] .route-masthead{padding:30px 0;background:linear-gradient(120deg,#dff4e8,#c4eae4)}
body[data-page=about] .route-masthead h1,body[data-page=contact] .route-masthead h1{font-size:clamp(2rem,5vw,3.3rem);margin:0}
body[data-page=about] .route-masthead p:empty,body[data-page=contact] .route-masthead p:empty{display:none}
#rioCompanySections{min-width:0;color:#123e48}
#rioCompanySections .section{padding:64px 0}
#rioCompanySections h2{font-size:clamp(2rem,5vw,3rem);margin:0 0 20px}
#rioCompanySections h3{font:700 1.35rem/1.4 Arial,sans-serif;margin:0 0 16px}
#rioCompanySections p{font-size:1rem;line-height:1.75;margin:0 0 18px;color:#244d53}
#rioCompanySections a{color:#0a4b57;text-decoration:underline;text-underline-offset:.18em;overflow-wrap:anywhere}
#rioCompanySections a:focus-visible,#rioCompanySections input:focus-visible,#rioCompanySections textarea:focus-visible,#rioCompanySections button:focus-visible{outline:3px solid #0a6064;outline-offset:3px}
.rio-about-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:center}
.rio-about-copy,.rio-contact-card,.rio-company-card{min-width:0}
.rio-about-image{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:66% center;border-radius:28px}
.rio-company-ranges{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:24px 0}
.rio-company-ranges li{padding:8px 12px;background:#dff1e7;border:1px solid #a5c8bd;border-radius:20px;font-size:.88rem;line-height:1.4}
.rio-company-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
#rioCompanySections .rio-company-fullrange{margin:24px 0 0;padding-top:18px;border-top:1px solid #b5cec1;font-weight:700}
#rioCompanySections .btn.primary{background:linear-gradient(#ff862e,#ff691b);color:#173b40;text-decoration:none;border:1px solid #c95112;min-height:48px;white-space:normal;text-align:center;font-weight:800;max-width:100%;box-sizing:border-box}
#rioCompanySections .rio-contact{background:#e1f3ea;border-top:1px solid #b5d3c6}
.rio-contact-heading{max-width:680px;margin-bottom:32px}
.rio-contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}
.rio-company-card,.rio-contact-card{border:1px solid #b1cec3;border-radius:22px;background:#fffaf2;padding:30px;box-shadow:0 8px 24px #163d3610}
.rio-company-card dl{margin:0}.rio-company-card dl>div{padding:15px 0;border-bottom:1px solid #dfded3}.rio-company-card dl>div:last-child{border:0;padding-bottom:0}
.rio-company-card dt{font-size:.82rem;font-weight:700;color:#47615f;margin-bottom:5px}.rio-company-card dd{margin:0;font-size:1rem;line-height:1.6;overflow-wrap:anywhere}
.rio-contact-phones{display:grid;gap:7px}.rio-contact-phones a{width:fit-content}
.rio-contact-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
#rioContactForm{margin:20px 0 0}#rioContactForm .field{display:grid;gap:7px;margin:0 0 16px}#rioContactForm label{color:#123e48;font-size:.95rem;font-weight:700}
#rioContactForm input,#rioContactForm textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid #91ada8;border-radius:10px;background:#fff;color:#123e48;padding:12px;font:400 16px/1.5 Arial,sans-serif}
#rioContactForm textarea{resize:vertical;min-height:140px}
#rioContactForm .rio-contact-privacy{font-size:.87rem;line-height:1.6}
#rioContactForm .rio-contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#rioContactForm .rio-contact-status{padding:12px;border-radius:10px;background:#e8eee7;color:#244d53;font-size:.95rem;line-height:1.5}
#rioContactForm .rio-contact-status[hidden]{display:none}#rioContactForm .rio-contact-status.success{background:#d9eee3;color:#174d35}#rioContactForm .rio-contact-status.error{background:#ffede7;color:#852d18}
.rio-contact-submit{width:100%;justify-content:center}.rio-company-footer{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:14px}
@media(min-width:1121px){.nav .navin{height:auto;min-height:90px;padding-block:12px}.nav .links{flex:1;min-width:0;flex-wrap:wrap;gap:4px 18px}.nav .links a{padding-block:6px}}
@media(max-width:760px){#rioCompanySections .section{padding:40px 0}.rio-about-layout,.rio-contact-layout{grid-template-columns:minmax(0,1fr);gap:24px}.rio-about-image{aspect-ratio:16/10;max-height:340px}.rio-company-card,.rio-contact-card{padding:22px;border-radius:18px}.rio-contact-fields{grid-template-columns:minmax(0,1fr);gap:0}#rioCompanySections h3{font-size:1.2rem}.rio-contact-heading{margin-bottom:24px}}
@media(max-width:380px){.rio-company-card,.rio-contact-card{padding:17px}.rio-company-actions{align-items:stretch;flex-direction:column}}

/* RIO contact consent v1 */
#rioContactForm .rio-contact-consent{margin:0 0 16px}
#rioContactForm .rio-contact-consent label{display:flex;align-items:flex-start;gap:10px;min-height:44px;font-weight:400;line-height:1.5;cursor:pointer}
#rioContactForm .rio-contact-consent span{min-width:0;overflow-wrap:anywhere}
#rioContactForm input[type=checkbox]{appearance:auto;-webkit-appearance:auto;flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:2px 0 0;padding:0;border-radius:3px;accent-color:#0a6064;cursor:pointer}
