/* 1.3.3: mobile return navigation, readable footers, email and slideshow controls. */
.portal-wordmark i{display:none}
.portal-wordmark small{gap:0!important}
.site-footer .footer-bottom{font-size:calc(14px * var(--font-scale,1));line-height:1.8}
.portal-return{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;margin:0 0 20px;border:1px solid var(--line,var(--border));border-radius:10px;text-decoration:none;font-size:calc(13px * var(--font-scale,1));font-weight:700;color:var(--brand-strong);background:var(--brand-soft);min-height:44px}
.portal-return:hover{border-color:var(--brand);filter:brightness(.98)}
.terms-return{margin:24px 0 0}
.subpage-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:26px 0 24px;border-top:1px solid var(--line);row-gap:22px}
.subpage-footer .subpage-footer-brand{min-width:0}
.subpage-footer-links{display:flex;gap:12px 20px;flex-wrap:wrap;justify-content:flex-end}
.subpage-footer-links a{font-size:calc(12px * var(--font-scale,1));color:var(--muted);text-decoration:none}
.footer-copyright{grid-column:1/-1;margin:0;padding-top:16px;border-top:1px solid var(--line);font-size:calc(14px * var(--font-scale,1));line-height:1.8;color:var(--muted)}
.subpage-footer .systech-footer{width:max-content;max-width:100%;text-decoration:none;box-sizing:border-box}
.systech-footer small{white-space:normal;max-width:210px}
.feedback-email-entry{display:grid;gap:8px;min-width:0}
.feedback-email-entry select{width:100%;border:1px solid var(--border);border-radius:9px;padding:10px 12px;background:var(--surface-2);color:var(--text);font:inherit;font-size:calc(12px * var(--font-scale,1));min-height:42px}
.email-hint{display:block;font-size:calc(10px * var(--font-scale,1));color:var(--muted);line-height:1.6;margin-top:8px}
.feedback-form input[aria-invalid=true]{border:2px solid #c73750!important;box-shadow:0 0 0 3px #c7375015}
.field-error{font-size:calc(12px * var(--font-scale,1));line-height:1.6;margin:8px 0 0;color:#b81f39;font-weight:650}
html[data-theme=dark] .field-error{color:#ff9bab}
html[data-theme=dark] .feedback-form input[aria-invalid=true]{border-color:#ff8099!important}
.ad-navigation{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}
.ad-navigation .ad-dots{margin:0;flex-wrap:wrap;align-items:center;gap:7px}
.ad-dots button{width:26px;height:6px;border-radius:4px;cursor:pointer;position:relative}
.ad-dots button::after{content:'';position:absolute;inset:-10px -2px}
.ad-arrow-button{border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--brand-strong);width:36px;height:36px;font-size:23px;line-height:1;cursor:pointer}
.ad-count{color:var(--muted);font-size:calc(11px * var(--font-scale,1));font-variant-numeric:tabular-nums;min-width:38px;text-align:center}
#adSlides .ad-slide{min-height:230px;animation:ad-slide-enter .28s ease-out}
#adSlides .ad-body{min-width:0;overflow-wrap:anywhere}
#adSlides .ad-image{max-height:300px;min-height:230px;object-fit:cover}
#adSlides .ad-art small{font-size:9px}
@keyframes ad-slide-enter{from{opacity:.6;transform:translateX(7px)}to{opacity:1;transform:translateX(0)}}
.calendar-panel{container-type:inline-size}
.calendar-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px}
.calendar-head>div:first-child{min-width:0}
.calendar-nav{display:flex;gap:4px;flex-wrap:nowrap;flex-shrink:0;justify-self:end}
.calendar-nav button{width:auto;min-width:28px;flex:0 0 auto;height:34px;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;padding:0 7px}
.calendar-nav #calendarToday{width:auto;min-width:calc(63px * var(--font-scale,1));padding:0 8px;font-size:calc(11px * var(--font-scale,1));line-height:32px;white-space:nowrap;overflow-wrap:normal}
@container (max-width:280px){.calendar-head{grid-template-columns:1fr;row-gap:10px}.calendar-nav{justify-self:end}.calendar-head h2{margin-bottom:0}}
@media(max-width:760px){
 .subpage-header .subpage-links>a[href="/"]{display:inline-flex!important;align-items:center;min-height:38px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;white-space:nowrap;font-size:calc(11px * var(--font-scale,1))}
 .subpage-footer{grid-template-columns:1fr;justify-items:center;text-align:center;gap:20px;padding:24px 14px}
 .subpage-footer-links{justify-content:center}
 .subpage-footer-brand{display:flex;justify-content:center;width:100%}
 .footer-copyright{width:100%;grid-column:auto;font-size:calc(13px * var(--font-scale,1))}
 .subpage-footer .systech-footer{text-align:left}
}
@media(max-width:620px){
 .site-footer .footer-brand{text-align:center;display:flex;flex-direction:column;align-items:center;width:100%;grid-column:1/-1}
 .site-footer .footer-brand>p{margin-left:auto;margin-right:auto}
 .site-footer .systech-footer{text-align:left;margin-left:auto;margin-right:auto;min-width:0;width:max-content;max-width:100%}
 .site-footer .footer-bottom{justify-content:center!important;text-align:center;font-size:calc(13px * var(--font-scale,1))}
 .site-footer .systech-footer small,.subpage-footer .systech-footer small{text-align:center}
 .site-footer .systech-footer>span:last-child,.subpage-footer .systech-footer>span:last-child{align-items:center}
 .ad-navigation{gap:9px}.ad-dots button{width:20px}
 .subpage-header{flex-wrap:wrap}.subpage-header .subpage-links{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){#adSlides .ad-slide{animation:none}}

.feedback-form input[aria-invalid=true]:focus-visible{outline:2px solid #c73750;outline-offset:2px}
html[data-theme=dark] .feedback-form input[aria-invalid=true]:focus-visible{outline-color:#ff8099}
@media(max-width:620px){.site-footer .footer-bottom{padding-bottom:78px;color:#b8cdc0}.site-footer .footer-bottom>span{max-width:100%;overflow-wrap:anywhere}}
