.summer-rhythm{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.summer-form{display:flex;flex-direction:column;gap:25px;align-items:stretch}.summer-form>.button{align-self:start;margin-top:auto}.summer-output{padding:28px;border:1px solid var(--border);background:linear-gradient(135deg,var(--surface),var(--bg));border-radius:22px}.summer-output-title{display:flex;align-items:center;gap:15px}.summer-output-title>.art{width:57px;height:57px;flex:none}.summer-output h3{font-size:24px;line-height:1.4}.summer-totals{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:26px 0 20px}.summer-totals>div{border:1px solid var(--border);border-radius:15px;padding:17px;background:var(--bg)}.summer-totals strong{display:block;font-size:34px;color:var(--gold,#ffd18e);line-height:1.3}.summer-totals span{display:block;font-size:12px;line-height:1.7;margin-top:8px;color:var(--muted)}.summer-output>p{font-size:13px;line-height:1.8}.summer-selected{display:flex;align-items:start;gap:14px;padding:20px 0;border-top:1px solid var(--border);margin-top:20px}.summer-selected>.art{width:42px;height:42px;flex:none}.summer-selected>div{min-width:0}.summer-selected h4{font-size:15px;line-height:1.6;margin:0}.summer-selected p{font-size:13px;line-height:1.8;color:var(--muted);margin:9px 0 0}.summer-selected .button{margin-top:15px}.summer-caveat{border-top:1px solid var(--border);padding-top:17px;color:var(--muted);margin:0}.col-program [data-summer-course][hidden]{display:none}.col-program [data-summer-course]{width:100%;margin-top:10px}
@media(max-width:1050px){.summer-rhythm{grid-template-columns:1fr}.summer-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.summer-form>.button{grid-column:auto;justify-self:stretch;align-self:end}.summer-output{padding:24px}}
@media(max-width:700px){.summer-form{display:flex}.summer-form>.button{align-self:stretch}.summer-output{padding:22px 18px}.summer-output h3{font-size:22px}.summer-output-title>.art{width:45px;height:45px}.summer-totals{gap:10px}.summer-totals>div{padding:15px 12px}.summer-totals strong{font-size:29px}.summer-totals span{font-size:12px}.summer-selected .button{width:100%}.summer-selected{gap:10px}.summer-selected>.art{width:34px;height:34px}}
