/* v0.4.46 — unified responsive interface refinement, loaded last. */
:root{--bg:#f8faf8;--ink:#14241d;--text:#34483e;--muted:#64796d;--line:#dbe5dd;--accent:#116149;--accent-strong:#0b4e39}
body.cae-body{background:var(--bg);color:var(--text)}
.cae-body .wrap{width:min(1160px,calc(100% - 56px))}
.cae-body .content-wrap{padding-top:30px;padding-bottom:78px}
.cae-body .site-header{background:#fff;border-bottom:1px solid #e3eae4}
.cae-body .home-hero{display:block!important;max-width:100%;padding:20px 0 0!important;border:0!important}
.cae-body .home-hero .hero-copy{padding:0 0 24px!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;overflow:visible!important}
.cae-body .home-hero .hero-copy:after{display:none!important}
.cae-body .home-hero .kicker{margin-bottom:11px}
.cae-body .home-hero h1{font-size:clamp(2.9rem,4.65vw,4.4rem)!important;max-width:980px!important;line-height:1.075!important;letter-spacing:-.06em!important;margin:0!important;text-wrap:balance}
.cae-body .home-hero .hero-lede{max-width:740px!important;font-size:clamp(1rem,1.5vw,1.12rem)!important;line-height:1.68!important;margin:16px 0 0!important;color:#5c7064}
/* Both homepage tools use the same deliberate vertical rhythm. */
.cae-body .hero-tools{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;gap:clamp(18px,2.5vw,32px)!important;max-width:100%!important;margin:32px 0 0!important}
.cae-body .hero-tools form{display:flex!important;flex-direction:column!important;min-width:0!important;max-width:none!important;min-height:235px!important;margin:0!important;padding:25px 26px 22px!important;background:#fff!important;border:1px solid #dce6de!important;border-radius:14px!important;box-shadow:none!important;gap:0!important}
.cae-body .hero-tools form>label{font-size:16px!important;font-weight:760!important;letter-spacing:-.025em!important;line-height:1.35!important;margin:0 0 17px!important;color:#172820!important}
.cae-body .hero-tools .quick-date-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;background:none!important;border:0!important;border-radius:0!important;overflow:visible!important;min-height:0!important}
.cae-body .hero-tools .quick-date-fields input{display:block!important;width:100%!important;flex:none!important;min-height:52px!important;padding:9px 14px!important;border:1px solid #cbd9ce!important;border-radius:8px!important;font-size:16px!important;background:#fff!important}
.cae-body .hero-tools .quick-date-fields button,.cae-body .hero-tools .clock-submit{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;width:100%!important;max-width:none!important;min-height:49px!important;margin:0!important;padding:10px 15px!important;background:var(--accent)!important;color:white!important;border:1px solid var(--accent)!important;border-radius:8px!important;font-size:14px!important;font-weight:720!important;line-height:1.4!important;white-space:normal!important}
.cae-body .hero-tools .quick-date-fields button:hover,.cae-body .hero-tools .clock-submit:hover{background:var(--accent-strong)!important}
.cae-body .clock-pick-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(0,1fr)!important;align-items:center!important;gap:10px!important;border:0!important;min-height:0!important;padding:0!important;background:none!important;overflow:visible!important}
.cae-body .clock-pick-row select,.cae-body .clock-pick-row select[name=hour],.cae-body .clock-pick-row select[name=minute],.cae-body .clock-pick-row select[name=period]{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;min-height:52px!important;flex:none!important;padding:9px 27px 9px 12px!important;border:1px solid #cbd9ce!important;border-radius:8px!important;background:#fff!important;color:var(--ink)!important;font-size:16px!important;font-weight:680!important;box-shadow:none!important;box-sizing:border-box!important}
.cae-body .clock-pick-row .clock-colon{font-size:22px!important;color:#54685b!important}
.cae-body .hero-tools .clock-selection{display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;gap:5px 9px!important;margin:13px 0 12px!important;padding:0!important;border:0!important;background:none!important;min-height:0!important}
.cae-body .clock-selection>span{font-size:12px!important;color:#657b6e!important}
.cae-body .clock-selection strong{font-size:19px!important;font-weight:790!important;color:#152b20!important;letter-spacing:-.035em!important}
.cae-body .clock-selection small{flex-basis:100%!important;font-size:11px!important;line-height:1.5!important;color:#63796c!important}
.cae-body .hero-tools .quick-help{max-width:none!important;font-size:12px!important;margin:12px 0 0!important;line-height:1.6!important;color:#667a6e!important}
.cae-body .hero-tools .quick-date .quick-help{margin-top:auto!important;padding-top:12px!important}
.cae-body .hero-tools .quick-time .quick-help{margin-top:12px!important}
.cae-body .hero-search-wrap{max-width:100%!important;margin:19px 0 0!important}
.cae-body .hero-search-wrap .event-search input{display:block;width:100%;min-height:51px;padding:10px 16px;border:1px solid #cbd9ce;border-radius:9px;background:white;font-size:15px}
.cae-body .hero-index{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:29px 0 0!important;padding:18px 0!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;border-left:0!important;border-right:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
.cae-body .hero-index>div{min-width:0!important;padding:4px 18px!important;border:0!important;border-right:1px solid var(--line)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
.cae-body .hero-index>div:first-child{padding-left:0!important}.cae-body .hero-index>div:last-child{border-right:0!important}
.cae-body .hero-index strong{font-size:clamp(20px,2vw,29px)!important}
/* Shared page improvements without enclosing every section in a box. */
.cae-body .section{margin-top:62px}
.cae-body .section-head{align-items:end}
.cae-body .section-head h2{font-size:clamp(1.55rem,2.5vw,2.25rem)!important;line-height:1.23}
.cae-body .page-hero h1{font-size:clamp(2.2rem,4.2vw,3.9rem)!important;line-height:1.1!important;letter-spacing:-.052em!important}
.cae-body .page-hero{padding-top:6px!important;padding-bottom:23px!important}
.cae-body .time-answer-card h2{font-size:clamp(1.75rem,3vw,2.8rem)!important;line-height:1.17!important;overflow-wrap:break-word}
.cae-body .time-answer-card dl{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.cae-body .time-answer-card dl>div{min-width:0!important;padding:14px 10px!important}
.cae-body .time-answer-card dd{font-size:clamp(1.3rem,2.3vw,1.9rem)!important;overflow-wrap:anywhere!important;line-height:1.3!important}
.cae-body .metric-grid strong{font-size:clamp(1.5rem,2.65vw,2.35rem)!important;overflow-wrap:anywhere!important}
.cae-body .answer-panel,.cae-body .calculator-card,.cae-body .planner-card{max-width:100%;min-width:0}
.cae-body .calculator-card form{min-width:0}
.cae-body .calculator-card input,.cae-body .calculator-card select,.cae-body .planner-card input{min-width:0;max-width:100%}
.cae-body table{max-width:100%;font-variant-numeric:tabular-nums}
.cae-body .planner-table,.cae-body .prose table,.cae-body .section table{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cae-body .event-card{min-width:0}
.cae-body .event-card strong{overflow-wrap:break-word}
@media(max-width:850px){
 .cae-body .wrap{width:calc(100% - 40px)}
 .cae-body .hero-tools{gap:17px!important}
 .cae-body .hero-tools form{padding:20px!important;min-height:245px!important}
 .cae-body .hero-index{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .cae-body .hero-index>div{border-right:0!important;border-bottom:1px solid var(--line)!important;padding:13px 12px!important}
 .cae-body .hero-index>div:nth-child(odd){padding-left:0!important}
 .cae-body .hero-index>div:nth-child(even){border-left:1px solid var(--line)!important}
 .cae-body .hero-index>div:nth-last-child(-n+2){border-bottom:0!important}
}
@media(max-width:680px){
 .cae-body .wrap{width:calc(100% - 32px)}
 .cae-body .content-wrap{padding-top:18px}
 .cae-body .home-hero h1{font-size:clamp(2.35rem,9vw,3.2rem)!important;line-height:1.1!important}
 .cae-body .home-hero .hero-lede{font-size:15px!important;line-height:1.68!important}
 .cae-body .hero-tools{grid-template-columns:minmax(0,1fr)!important;gap:13px!important;margin-top:24px!important}
 .cae-body .hero-tools form{min-height:0!important;padding:19px 17px!important;border-radius:12px!important}
 .cae-body .hero-tools form>label{margin-bottom:13px!important;font-size:15px!important}
 .cae-body .clock-pick-row{gap:7px!important}
 .cae-body .clock-pick-row select,.cae-body .clock-pick-row select[name=hour],.cae-body .clock-pick-row select[name=minute],.cae-body .clock-pick-row select[name=period]{font-size:16px!important;min-height:50px!important;padding:7px 24px 7px 9px!important}
 .cae-body .hero-tools .quick-date-fields input{min-height:50px!important}
 .cae-body .hero-tools .quick-date-fields button,.cae-body .hero-tools .clock-submit{min-height:49px!important}
 .cae-body .hero-tools .quick-date .quick-help{margin-top:10px!important;padding-top:0!important}
 .cae-body .hero-index{margin-top:22px!important}
 .cae-body .time-answer-card dl{display:block!important;grid-template-columns:none!important}
 .cae-body .time-answer-card dl>div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border:0!important;border-bottom:1px solid var(--line)!important;padding:13px 0!important}
 .cae-body .time-answer-card dl dt{flex:1 1 auto!important}
 .cae-body .time-answer-card dl dd{flex:0 1 auto!important;text-align:right!important;font-size:clamp(1.4rem,6vw,1.9rem)!important;margin:0!important}
 .cae-body .metric-grid,.cae-body .metric-grid.metric-grid-4,.cae-body .metric-grid.metric-grid-5{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 15px!important}
 .cae-body .metric-grid>div{border:0!important;border-bottom:1px solid var(--line)!important;padding:15px 0!important}
 .cae-body .metric-grid>div:last-child:nth-child(odd){grid-column:1/-1!important}
 .cae-body .metric-grid strong{font-size:clamp(1.45rem,6vw,2rem)!important}
 .cae-body .section{margin-top:45px}
 .cae-body .page-hero h1{font-size:clamp(2rem,8vw,3rem)!important}
 .cae-body .section-head{gap:8px}
 .cae-body .event-grid{grid-template-columns:1fr!important}
 .cae-body .calculator-card form,.cae-body .directory-search{max-width:100%}
 .cae-body .calculator-card form button,.cae-body .directory-search button{min-height:46px}
}
@media(max-width:370px){.cae-body .wrap{width:calc(100% - 26px)}.cae-body .hero-tools form{padding:15px 13px!important}.cae-body .clock-pick-row{gap:5px!important}.cae-body .clock-pick-row select,.cae-body .clock-pick-row select[name=hour],.cae-body .clock-pick-row select[name=minute],.cae-body .clock-pick-row select[name=period]{padding-left:7px!important;padding-right:20px!important;font-size:14px!important}.cae-body .home-hero h1{font-size:2.25rem!important}}
