/* Homepage composition; no shared portal or enrollment rules. */
.home-refresh .home-inperson-grid{display:block}
.home-refresh .home-camp-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
.home-refresh .home-camp-card-photo{align-self:stretch}
.home-refresh .home-camp-card-photo img{block-size:100%;aspect-ratio:16/9;object-fit:cover}
.home-future{--future-ink:#f5f2e9;--future-muted:#c4d4ce;background:#102b30;color:var(--future-ink);padding:clamp(22px,3vw,44px);border-radius:22px;margin-block:32px}
.home-future .future-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-block-end:28px}
.home-future .eyebrow{color:#cbb781}
.home-future h2{font-size:clamp(27px,2.8vw,42px);line-height:1.65;margin:8px 0}
.home-future .future-heading p{font-size:15px;line-height:1.9;color:var(--future-muted);margin:0}
.future-status{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;border:1px solid #64786b;border-radius:30px;padding:8px 14px;color:#e6d9ae;font-size:12px;line-height:1.8;white-space:nowrap}
.future-status>span{inline-size:6px;block-size:6px;background:currentColor;border-radius:50%}
.future-layout{min-inline-size:0}
.home-future.is-enhanced .future-layout{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:clamp(24px,3.8vw,56px);align-items:start}
.future-selector,.future-panels{min-inline-size:0}
.future-selector[hidden],.future-panel[hidden]{display:none!important}
.home-future .future-hint{color:var(--future-muted);font-size:13px;line-height:1.9;margin:0 0 16px}
.future-tabs{display:grid}
.future-tabs>button{display:flex;align-items:center;gap:16px;text-align:start;inline-size:100%;border:0;border-block-end:1px solid #ffffff24;border-radius:0;background:transparent;color:#d9e5df;padding:18px 14px;min-block-size:64px;font:inherit;font-size:clamp(15px,1.25vw,19px);font-weight:650;cursor:pointer;box-shadow:none}
.future-tabs>button[aria-selected=true]{background:#e8d3a1;color:#112c30;border-radius:10px;border-color:transparent}
.future-tabs>button:hover:not([aria-selected=true]){background:#ffffff08}
.future-number{font-size:12px;opacity:.7;font-weight:500}
.future-tab-mark{margin-inline-start:auto;font-size:22px;font-weight:400}
.home-future .future-availability{color:#aec4ba;font-size:12px;line-height:2;margin:22px 0 0;max-inline-size:40ch}
.future-panel{margin:0 0 28px}
.is-enhanced .future-panel{margin:0}
.future-panel figure{margin:0;border-radius:14px;overflow:hidden;background:#0b202a}
.future-panel figure img{inline-size:100%;block-size:auto;aspect-ratio:16/10;max-block-size:340px;object-fit:contain;display:block;filter:none}
.future-panel-copy{padding:22px 2px 0}
.future-label{font-size:12px;color:#cbb781}
.home-future h3{font-size:clamp(23px,2.1vw,31px);line-height:1.7;margin:6px 0 8px;color:var(--future-ink)}
.home-future .future-panel-copy p{font-size:15px;line-height:2;color:var(--future-muted);margin:0;max-inline-size:63ch}
.future-tabs>button:focus-visible,.future-panel:focus-visible{outline:3px solid #f4cb72;outline-offset:4px}
.home-refresh .faq{margin-block-end:28px}
.home-platform-status{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:start;gap:24px;border-block-start:1px solid #c8d0c4;margin-block-start:28px;padding-block:24px 4px}
.home-platform-status h2{color:#254b3e;font-size:14px;line-height:2;margin:0}
.home-platform-status p{color:#42564c;font-size:13px;line-height:2.1;margin:0;max-inline-size:105ch}
.home-refresh .page-shell.public{padding-block-end:28px}
.home-refresh>.site-footer{margin-block-start:0}
@media(max-width:800px){
 .home-refresh .home-camp-card{grid-template-columns:1fr}
 .home-refresh .home-camp-card-photo img{block-size:auto;aspect-ratio:16/8}
 .home-future .future-heading{flex-direction:column;gap:14px;margin-block-end:22px}
 .home-future.is-enhanced .future-layout{grid-template-columns:minmax(0,1fr);gap:22px}
 .future-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .future-tabs>button{border:1px solid #ffffff24;border-radius:9px;padding:11px 10px;gap:8px;min-block-size:52px;font-size:13px}
 .future-tabs>button:last-child{grid-column:1/-1}
 .future-tab-mark{font-size:18px}
 .home-future .future-availability{max-inline-size:none;margin-block-start:14px}
 .home-future .future-panel-copy p{font-size:14px}
 .home-platform-status{grid-template-columns:minmax(0,1fr);gap:6px;padding-block-start:20px}
}
@media(max-width:400px){.home-future{padding:20px 16px;border-radius:16px}.future-tabs>button{font-size:12px;gap:6px}.future-number{font-size:11px}.home-future .future-heading p{font-size:14px}}
