/* Responsive corrections scoped to the public pages loading this version. */
.site-header nav.desktop-nav{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;position:static!important;height:auto!important;padding:0!important}
.site-header nav.desktop-nav a{white-space:nowrap}
.site-header nav.desktop-nav a.k-cur{box-shadow:0 2px currentColor}
.site-header a:focus-visible,.site-header button:focus-visible,#kMobPanel a:focus-visible{outline:3px solid #788326!important;outline-offset:3px}
body#top .hero>picture{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:-2}
body#top .hero>picture>img{position:static;display:block;width:100%;height:100%;z-index:auto}
body#top .photo>picture{display:block;width:100%;height:100%}
body#top .photo>picture>img{display:block;width:100%;height:100%;object-fit:cover}
body#top .space-image>picture{display:block}
.keys-photo-unavailable{display:flex;align-items:center;justify-content:center;background:#e9eee4;color:#4f6258;text-align:center;padding:24px;min-height:120px}
.keys-photo-message{margin:0;font-size:14px;line-height:1.6;color:inherit}
body#top .hero.keys-photo-unavailable{background:#254f3a}
body#top .hero>.keys-photo-message{position:absolute;bottom:12px;right:16px;color:white;font-size:12px}
@media(max-width:900px){
 .site-header:not(.header){gap:8px;padding-left:10px;padding-right:10px}
 .site-header:not(.header) nav.desktop-nav{display:none!important}
 .site-header:not(.header)>.brand{flex-shrink:0;min-width:32px}
 .site-header:not(.header)>.brand small{display:none}
 .site-header:not(.header)>div{min-width:0;gap:6px!important}
 .site-header:not(.header) .header-actions{min-width:0;gap:6px}
 .site-header:not(.header) .header-actions>.language[href="login.html"]{display:none}
 .site-header:not(.header) .button-small{white-space:nowrap;min-height:44px;padding:0 12px!important;line-height:1.3}
 .site-header #kMobBtn{flex:0 0 44px;width:44px;height:44px;margin-right:0}
 .site-header #kLangBtn{min-height:44px;padding:0 10px!important;white-space:nowrap}
 .site-header #kRoleBtn{max-width:100px;min-height:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 body #kMobPanel{position:fixed!important;top:var(--keys-nav-bottom,84px)!important;height:auto!important;max-height:calc(100vh - var(--keys-nav-bottom,84px) - 90px);max-height:calc(100dvh - var(--keys-nav-bottom,84px) - 90px);overflow:auto;overscroll-behavior:contain;display:none!important;padding:10px!important;left:10px;right:10px}
 body #kMobPanel.open{display:block!important}
 body #kMobPanel a{min-height:44px;box-sizing:border-box;white-space:normal;line-height:1.5}
 body.keys-has-tabbar{padding-bottom:calc(var(--keys-tab-height,72px) + 16px)!important}
 #kTabBar{padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))!important}
 .community-toolbar label{min-width:0}
 .community-toolbar label>span{flex:0 0 auto;white-space:nowrap;font-size:13px;line-height:1.5}
 .community-toolbar input,.community-toolbar select{flex:1 1 auto;min-width:0;width:0;max-width:100%;font-size:16px;min-height:44px}
 .community-toolbar{grid-template-columns:minmax(0,1fr)}
 .site-header:not(.header) .header-actions>.language{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:600px){
 input,select,textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}
 body[data-keys-colors] .page-hero{padding-top:102px;padding-bottom:18px}
 body[data-keys-colors] .page-hero h1{font-size:28px;line-height:1.3;letter-spacing:-.025em;overflow-wrap:break-word;margin:12px 0}
 .community-toolbar{padding:10px;gap:8px;margin-bottom:18px}
 .community-toolbar label{padding:0 12px;gap:12px}
 body[data-keys-colors="activity-detail"] .container{padding-left:16px;padding-right:16px;max-width:100%;box-sizing:border-box}
 body[data-keys-colors="activity-detail"] #content h1{font-size:28px;line-height:1.3;overflow-wrap:anywhere}
 body[data-keys-colors="activity-detail"] .cover.keys-no-cover{height:104px!important;min-height:0!important;font-size:44px!important;margin-bottom:20px}
 body[data-keys-colors="activity-detail"] .info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 body[data-keys-colors="activity-detail"] .info-item{min-width:0;overflow-wrap:anywhere}
 body[data-keys-colors="activity-detail"] .info-value{font-size:15px;line-height:1.6}
 body#top .header{padding-left:16px;padding-right:16px;gap:10px}
 body#top .header .brand{font-size:23px;gap:8px}
 body#top .language-toggle{min-width:44px;min-height:44px}
 body#top .section{padding:38px 20px}
 body#top .intro-grid{gap:18px}
 body#top h2{font-size:28px;line-height:1.35}
 body#top .intro-grid .lead{font-size:18px;line-height:1.6}
 body#top .intro-grid .text-link{margin-top:12px}
 body#top .values{gap:18px;margin-top:24px;padding-top:20px}
 body#top .values>div{grid-template-columns:76px minmax(0,1fr);gap:0 12px}
 body#top .values h3{font-size:20px;line-height:1.4}
 body#top .values span{font-size:9px;letter-spacing:1px}
 body#top .values p{font-size:14px;line-height:1.6}
 body#top .section-head{margin-bottom:22px}
 body#top .section-head>.text-link{margin-top:12px}
 body#top .photo{height:230px;background:#e9eee4}
 body#top .partner-body{padding:22px}
 body#top .partner-body h3{font-size:25px;line-height:1.35}
 body#top .partner-body p:not(.eyebrow){margin-bottom:14px}
 body#top .join{padding:38px 20px;gap:24px}
 body#top #site-links{padding:28px 20px;gap:20px}
 body#top #site-links .footer-identity{gap:14px}
 body#top #site-links .footer-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
 body#top #site-links .footer-groups section:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
 body#top #site-links .footer-groups section:last-child h2{grid-column:1/-1}
 body#top #site-links .footer-groups h2{font-size:15px;line-height:1.5;margin-bottom:6px}
 body#top #site-links .footer-groups a{font-size:14px;min-height:44px;padding:9px 0;line-height:1.6}
 body#top #site-links>small{margin-top:0}
 body#top .keys-share-actions{margin-top:12px}
 .keys-share-dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto}
}
@media(max-width:360px){
 .site-header:not(.header){gap:4px;padding-left:6px;padding-right:6px}
 .site-header:not(.header) .button-small{padding:0 8px!important;font-size:13px!important}
 .site-header #kLangBtn{padding:0 8px!important;font-size:13px!important}
 body#top .header-right{gap:6px!important}
 body#top .header .login{font-size:12px}
 body#top .hero-copy{padding-left:20px;padding-right:20px}
 body#top .hero h1,html[lang=en] body#top .hero h1{font-size:38px}
 body#top .hero-secondary{display:inline-block;margin:14px 0 0}
}
@media(max-width:600px){
 .site-header:not(.header){height:auto;min-height:68px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
 .site-header:not(.header)>div{max-width:calc(100% - 88px);flex-wrap:wrap}
 .site-header:not(.header) .header-actions{flex-wrap:wrap}
 body[data-keys-colors] .page-hero{padding-top:calc(102px + var(--keys-header-extra,0px))}
 body[data-keys-colors] .crumb{padding-top:calc(110px + var(--keys-header-extra,0px))}
 body[data-keys-colors="activity-detail"] .info-item{padding:12px 10px}
 .sf-chips button,.city-tab,.carousel-arrow,.filter-tag,.active-filter button,.clear-all{min-height:44px;min-width:44px}
 .sf-row{min-width:0}.sf-label{flex-shrink:0;white-space:nowrap}.sf-chips{min-width:0}
 .carousel-dots{flex-wrap:wrap;gap:0}
 .carousel-dot,.carousel-dot.active{width:44px;height:44px;background:transparent!important;display:grid;place-items:center}
 .carousel-dot::after{content:'';width:8px;height:8px;border-radius:99px;background:#748575}
 .carousel-dot.active::after{width:22px;background:#254f3a}
}
@media(max-width:600px){
 body[data-keys-colors="activity-detail"] .cover.keys-has-cover{height:auto;max-height:70vh}
 body[data-keys-colors="activity-detail"] .cover.keys-has-cover img{display:block;height:auto!important;max-height:70vh;width:100%;object-fit:contain}
}
/* Legacy activities footer uses inline four-column grid; translated copy needs wrapping. */
@media(max-width:900px){
 .site-footer>.footer-bottom{grid-template-columns:44px minmax(0,1fr)!important;gap:18px!important;text-align:left}
 .site-footer>.footer-bottom>div,.site-footer>.footer-bottom>span{grid-column:1/-1;min-width:0}
 .site-footer>.footer-bottom>p{min-width:0;overflow-wrap:anywhere}
}
