.lu-year-hero{padding:clamp(52px,8vw,112px) 0 42px;background:linear-gradient(180deg,rgba(246,241,229,.98),rgba(246,241,229,.72));border-bottom:1px solid var(--line,#d9d1bf)}
.lu-year-hero h1{max-width:980px;margin:.15em 0 .25em;font-size:clamp(2.7rem,7vw,6.4rem);line-height:.92;letter-spacing:-.045em}
.lu-year-hero .lede{max-width:790px;font-size:clamp(1.14rem,2vw,1.42rem)}
.year-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:24px 0 0}
.year-fact{padding:16px;border:1px solid var(--line,#d9d1bf);border-radius:16px;background:rgba(255,255,255,.66)}
.year-fact small,.season-tag,.year-card small,.ritual-label{display:block;font:600 .72rem/1.2 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:#6a706b}
.year-fact b{display:block;margin-top:5px;font-size:1rem}
.year-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.year-rail a{display:block;padding:15px;border:1px solid var(--line,#d9d1bf);border-radius:14px;text-decoration:none;background:#fff}
.year-rail a:hover{transform:translateY(-2px)}
.year-rail b{display:block;margin-top:4px}
.year-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.year-card{padding:24px;border:1px solid var(--line,#d9d1bf);border-radius:22px;background:#fff}
.year-card h2,.year-card h3{margin:.25rem 0 .5rem}
.year-card p:last-child{margin-bottom:0}
.calendar-answer{margin:26px 0;padding:22px 24px;border-left:5px solid #17392d;background:#e8efe9;border-radius:0 18px 18px 0}
.calendar-answer small{display:block;font:600 .74rem/1.2 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:#496158}
.calendar-answer p{font-size:1.22rem;margin:.45rem 0 0}
.ritual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ritual{padding:20px;border-radius:18px;background:#f6f1e5;border:1px solid var(--line,#d9d1bf)}
.ritual h3{margin:.25rem 0 .45rem}
.weather-box{display:grid;grid-template-columns:.9fr 1.4fr;gap:20px;padding:24px;border-radius:22px;background:#1e2622;color:#f8f3e6}
.weather-box .weather-big{font-family:"Fraunces",serif;font-size:clamp(2.7rem,6vw,5.5rem);line-height:.9}
.weather-box small{color:#b8c4bd}
.weather-box p{color:#e9eee9}
.dates-table{width:100%;border-collapse:separate;border-spacing:0 8px}
.dates-table th{font:600 .72rem/1.2 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.07em;text-align:left;color:#747a75;padding:0 12px 5px}
.dates-table td{background:#fff;border-top:1px solid var(--line,#d9d1bf);border-bottom:1px solid var(--line,#d9d1bf);padding:14px 12px;vertical-align:top}
.dates-table td:first-child{border-left:1px solid var(--line,#d9d1bf);border-radius:12px 0 0 12px}
.dates-table td:last-child{border-right:1px solid var(--line,#d9d1bf);border-radius:0 12px 12px 0}
.etiquette{padding:22px;border:1px dashed #90988f;border-radius:18px;background:#fbfaf6}
.etiquette h3{margin-top:0}
@media(max-width:820px){.year-facts,.year-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.year-grid,.ritual-grid,.weather-box{grid-template-columns:1fr}.dates-table{font-size:.92rem}}
@media(max-width:480px){.year-facts,.year-rail{grid-template-columns:1fr}.year-card{padding:19px}.dates-table th:nth-child(3),.dates-table td:nth-child(3){display:none}}
