.semester-guide .seo-guide-hero h1{max-width:100%;font-size:clamp(2rem,4.6vw,3.35rem);line-height:1.18;overflow-wrap:anywhere}.semester-guide .semester-languages{margin:22px 0}.semester-languages a{display:inline-flex;align-items:center;min-height:44px}.semester-languages [aria-current=page]{font-weight:800;text-decoration-thickness:2px}.semester-guide .seo-table-scroll{overflow-x:auto;margin:22px 0;border:1px solid #ddd3ca;border-radius:10px}.semester-guide table{border-collapse:collapse}.semester-guide caption{text-align:left;font-weight:700;padding:16px}.semester-guide th,.semester-guide td{padding:14px;vertical-align:top;line-height:1.65}.semester-guide .dorm-cta-links a{overflow-wrap:anywhere}.semester-guide .dorm-choice-grid{margin:24px 0}.semester-related{padding-block:24px}.semester-guide li{margin-block:10px}.semester-guide h3{scroll-margin-top:24px}.semester-guide .dorm-sources a{overflow-wrap:anywhere}.semester-guide .dorm-reporting{margin:24px 0}@media(max-width:650px){.semester-guide .seo-guide-hero h1{font-size:2rem}.semester-guide .dorm-contents{padding:18px}.semester-guide .seo-table-scroll table{min-width:640px}.semester-guide th,.semester-guide td{padding:12px}.semester-guide .dorm-cta{padding:18px}} 
.semester-guide .semester-illustration{margin:24px 0 30px;overflow:hidden;border:1px solid #e2d8cf;border-radius:18px;background:#faf6ef}
.semester-guide .semester-illustration img{display:block;width:100%;height:auto;max-height:400px;object-fit:contain;background:#faf6ef}
.semester-guide .semester-illustration figcaption{padding:16px 20px;color:#4f4943;font-size:.9rem;line-height:1.65}
.semester-guide .semester-illustration figcaption strong{display:block;color:#3e2830;font-size:1rem;font-weight:650;margin-bottom:6px}
.semester-guide .semester-illustration figcaption span{display:block;font-size:.8rem;color:#625b54}
.semester-guide .semester-explainer{margin:26px 0 30px;padding:24px;border:1px solid #e2d8cf;border-radius:18px;background:#faf6ef}
.semester-guide .semester-explainer>figcaption{color:#681a30;font-weight:750;font-size:1.2rem;line-height:1.4;margin-bottom:20px}
.semester-guide .semester-contract-grid,.semester-guide .semester-planning-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.semester-guide .semester-contract-card,.semester-guide .semester-planning-steps>li{padding:20px;background:#fffdf9;border:1px solid #e5dcd3;border-radius:12px;min-width:0}
.semester-guide .semester-visual-index{display:inline-flex;align-items:center;justify-content:center;background:#831d36;color:#fff;min-width:32px;height:32px;border-radius:50%;font-size:.85rem;font-weight:750;margin-right:8px}
.semester-guide .semester-explainer h3{font-size:1.05rem;line-height:1.5;margin:12px 0;color:#322b2c;overflow-wrap:anywhere}
.semester-guide .semester-explainer p{font-size:.94rem;line-height:1.7;margin:10px 0 0}
.semester-guide .semester-visual-key{color:#751e34;font-weight:750}
.semester-guide .semester-month-row{display:grid;grid-template-columns:20px minmax(0,1fr);gap:6px;align-items:center;margin-top:8px;font-size:.8rem;color:#751e34}
.semester-guide .semester-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
.semester-guide .semester-months span{height:17px;border-radius:3px;background:#e8e2da}
.semester-guide .semester-months .active{background:#831d36}
.semester-guide .semester-explainer .semester-visual-note{margin-top:20px;padding-top:16px;border-top:1px solid #e2d8cf;font-size:.85rem;color:#5e5550}
.semester-guide .semester-money-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.semester-guide .semester-money-card{padding:22px;border:1px solid #d3dacc;border-radius:12px;background:#edf1e9;min-width:0}
.semester-guide .semester-money-spending{background:#f5e7e9;border-color:#e8cbd1}
.semester-guide .semester-money-symbol{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;color:#425440;font-size:1.15rem}
.semester-guide .semester-money-spending .semester-money-symbol{color:#751e34}
.semester-guide .semester-money-amount{display:block;font-size:clamp(1.45rem,2.7vw,2.1rem);font-weight:750;letter-spacing:-.025em;line-height:1.35;color:#293b29;overflow-wrap:anywhere}
.semester-guide .semester-money-spending .semester-money-amount{color:#751e34}
.semester-guide .semester-money-breakdown{font-variant-numeric:tabular-nums;font-size:.85rem;margin:16px 0 0;padding-top:12px;border-top:1px solid #dcbec5}
.semester-guide .semester-money-breakdown>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:6px}
.semester-guide .semester-money-breakdown dt{flex:1 1 130px}
.semester-guide .semester-money-breakdown dd{margin:0;font-weight:650}
.semester-guide .semester-planning-steps{list-style:none;margin:0;padding:0;counter-reset:none}
.semester-guide .semester-planning-steps>li{margin:0;position:relative}
@media(max-width:760px){.semester-guide .semester-contract-grid,.semester-guide .semester-planning-steps{grid-template-columns:1fr}.semester-guide .semester-contract-card,.semester-guide .semester-planning-steps>li{padding:18px}.semester-guide .semester-months{max-width:280px}.semester-guide .semester-explainer h3{margin-top:10px}}
@media(max-width:650px){.semester-guide .semester-explainer{padding:18px}.semester-guide .semester-money-grid{grid-template-columns:1fr}.semester-guide .semester-money-card{padding:18px}.semester-guide .semester-illustration figcaption{padding:14px 16px}.semester-guide .semester-illustration{border-radius:12px}.semester-guide .semester-money-amount{font-size:1.7rem}.semester-guide .semester-illustration img{max-height:none}}
