*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg,#f3f7f7);color:var(--ink,#162b31);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button,input,select{font:inherit}button,.button{cursor:pointer;border:0;background:var(--accent);color:var(--onaccent,#fff);padding:12px 19px;border-radius:var(--radius,10px);font-weight:650;display:inline-block}button:hover,.button:hover{filter:brightness(.92);text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.shell{max-width:1280px;padding-left:40px;padding-right:40px;margin:auto}.header{background:var(--surface,#fff);border-bottom:1px solid var(--line,#dce5e5)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex}.brand img{max-width:100%;height:44px}.header nav{display:flex;gap:28px;align-items:center;font-size:.9rem;font-weight:600}.nav-pill{border:1px solid var(--line);border-radius:30px;padding:9px 16px}.home{padding-top:38px;padding-bottom:40px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:750;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.5rem,4.7vw,4.25rem);line-height:1.07;letter-spacing:-.05em;margin:18px 0 22px;font-family:var(--heading,inherit);font-weight:var(--weight,750)}h2{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em;font-family:var(--heading,inherit)}h3{line-height:1.35}.intro{padding:22px 0}.intro p{max-width:540px;color:var(--muted);font-size:1.05rem}.intro-meta{display:flex;gap:22px;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;margin-top:28px}.intro-meta span+span{border-left:1px solid var(--line);padding-left:22px}.hero-split{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center;margin-bottom:34px}.next{position:relative;background:var(--feature,var(--accent));color:var(--featureink,#fff);border-radius:var(--radius,16px);padding:30px;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}.next>.eyebrow{grid-column:1/-1;color:inherit;opacity:.8}.next h2{font-size:1.7rem;margin:10px 0}.next p{font-size:.85rem;opacity:.8;margin:6px 0 15px}.next-date{display:flex;flex-direction:column;align-items:center;border:1px solid currentColor;border-radius:var(--radius,12px);padding:15px;min-width:92px}.next-date span{text-transform:uppercase;font-size:.8rem;letter-spacing:.14em}.next-date strong{font-size:3.3rem;line-height:1.15;font-weight:550;letter-spacing:-.08em}.countdown{font-size:.9rem}.badge{font-size:.75rem;line-height:1.4;display:inline-block;padding:5px 10px;border-radius:30px;background:var(--soft,#e9f3f2);color:var(--accent);white-space:nowrap;align-self:center}.next .badge{color:inherit;background:transparent;border:1px solid currentColor}.filters{display:flex;gap:14px;align-items:flex-end;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px}.filters label{display:flex;flex-direction:column;gap:7px;font-size:.8rem;font-weight:600;flex:1}.filters .search-field{flex:2}.filters input,.filters select{color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:12px;width:100%;min-width:0;height:49px;font-size:.9rem}.filters button{height:49px;white-space:nowrap}.filters button span{margin-left:18px}.months{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 32px}.months a{padding:7px 14px;border-radius:30px;font-size:.85rem;color:var(--muted)}.months a[aria-current]{background:var(--accent);color:var(--onaccent);font-weight:650}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:25px 0}.section-top h2{margin:6px 0 0;font-size:1.9rem}.section-top>span{font-size:.8rem;color:var(--muted)}.holiday-list{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.month-heading{padding:12px 24px;margin:0;background:var(--soft);font-size:.85rem;display:flex;justify-content:space-between}.month-heading span{opacity:.6;font-weight:400}.holiday-row{display:grid;grid-template-columns:70px minmax(0,1fr) 100px 100px 20px;gap:20px;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}.holiday-row:last-child{border-bottom:0}.holiday-row time{text-align:center;display:flex;flex-direction:column}.holiday-row time strong{font-size:1.8rem;line-height:1.1;font-weight:600;letter-spacing:-.05em}.holiday-row time span{font-size:.75rem;margin-top:4px;color:var(--muted)}.holiday-name h3{margin:0;font-size:1rem}.holiday-name p{font-size:.85rem;line-height:1.5;color:var(--muted);margin:6px 0 0}.holiday-name small{font-size:.75rem;color:var(--accent)}.relative{font-size:.8rem;text-align:right;color:var(--muted)}.row-link{font-size:1.4rem;color:var(--accent)}.badge-observance{background:var(--bg);color:var(--muted)}.badge-religious{background:var(--bg);color:var(--ink)}.badge-shopping{background:var(--soft);color:var(--accent)}.editor-note{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.editor-note h2{margin:14px 0}.editor-note p{color:var(--muted);font-size:.9rem}.editor-note a{font-size:.85rem;font-weight:650;color:var(--accent)}.guide{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:40px;padding:40px 0 15px;margin-top:30px;border-top:1px solid var(--line)}.guide h2{margin:15px 0}.guide h3{font-size:1rem}.guide p{font-size:.85rem;color:var(--muted)}.footer{border-top:1px solid var(--line);padding-top:35px;padding-bottom:35px;display:flex;justify-content:space-between;gap:35px}.footer strong{font-size:1.15rem}.footer p,.footer small{font-size:.8rem;color:var(--muted);margin:5px 0}.footer nav{display:flex;align-items:flex-start;flex-wrap:wrap;gap:20px;font-size:.85rem}.footer nav button{font-size:.8rem;padding:0;background:none;color:var(--ink);text-decoration:underline}.empty{padding:60px 20px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius)}.prose{max-width:860px;padding-top:55px;padding-bottom:70px}.prose h1{font-size:clamp(2.5rem,5vw,4rem)}.prose h2{margin:35px 0 15px}.prose p{color:var(--muted);line-height:1.85}.prose p a,.prose td a{color:var(--accent);text-decoration:underline}.prose .lead{font-size:1.2rem}.breadcrumbs{padding:30px 0;font-size:.85rem;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px}.detail .prose{padding:10px 0 50px}.detail-aside{padding-top:15px}.date-card{border-radius:var(--radius);padding:35px;text-align:center;background:var(--feature);color:var(--featureink);margin-bottom:22px}.date-card .eyebrow{color:inherit;margin-bottom:25px}.date-card>span{display:block}.date-card>strong{display:block;font-size:7rem;line-height:1.3;font-weight:500;letter-spacing:-.08em}.date-card .button{background:var(--surface);color:var(--accent);font-size:.9rem;margin-top:10px}.prose table{border-collapse:collapse;width:100%;font-size:.85rem}.prose caption{text-align:left;color:var(--muted);margin-bottom:12px}.prose th,.prose td{text-align:left;padding:12px 7px;border-bottom:1px solid var(--line)}.source{font-size:.85rem}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:var(--surface);z-index:10}.skip:focus{top:10px}.ad-unit{padding:25px;text-align:center;border:1px solid var(--line);margin:30px 0}.consent{position:fixed;bottom:18px;right:18px;max-width:440px;z-index:50;background:var(--surface);padding:25px;border:1px solid var(--line);box-shadow:0 10px 50px #0003;border-radius:12px}.consent p{font-size:.85rem}.consent button{margin:5px;font-size:.85rem}[hidden]{display:none!important}.mode-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;border:0;background:transparent;overflow:visible}.mode-cards .month-heading{grid-column:1/-1;border-radius:6px}.mode-cards .holiday-row{grid-template-columns:55px minmax(0,1fr) 22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:15px;padding:22px}.mode-cards .holiday-name{grid-column:2}.mode-cards .badge{grid-column:2;grid-row:2;justify-self:start}.mode-cards .relative{grid-column:2;grid-row:3;text-align:left}.mode-cards .row-link{grid-column:3;grid-row:1}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);gap:32px}.workspace aside .months{display:grid;grid-template-columns:1fr 1fr}.workspace aside .months a:first-child{grid-column:1/-1}.workspace .holiday-row{grid-template-columns:52px minmax(0,1fr) 90px 20px;gap:13px}.workspace .holiday-row .relative{display:none}.stack{display:grid;gap:24px}.ribbon{margin:24px 0}.ribbon .next{grid-template-columns:1fr auto 1.5fr}.ribbon .next>.eyebrow{grid-column:auto}.ribbon .next-date{min-width:70px;padding:8px}.ribbon .next-date strong{font-size:2.5rem}.ribbon .next h2{font-size:1.3rem}.ribbon .next p{margin:4px 0}.two-column{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px}.two-column .holiday-row{grid-template-columns:50px minmax(0,1fr) 20px;gap:15px}.two-column .holiday-row .badge{grid-column:2;justify-self:start}.two-column .holiday-row .relative{display:none}.two-column .row-link{grid-row:1;grid-column:3}.two-column .next{grid-template-columns:1fr}.two-column .next-date{display:none}.two-column .next>.eyebrow{grid-column:auto}.compact-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px}.mode-timeline{border:0;background:none;border-left:2px solid var(--accent);padding-left:24px;border-radius:0}.mode-timeline .holiday-row{border:0;border-bottom:1px solid var(--line);padding-left:0;padding-right:0}.mode-timeline .month-heading{background:none;color:var(--accent);padding:24px 0 10px;font-size:1.3rem}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border:0;background:none;overflow:visible}.mode-grid .month-heading{grid-column:1/-1}.mode-grid .holiday-row{grid-template-columns:1fr auto;gap:15px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;align-content:start}.mode-grid .holiday-row time{grid-column:1;align-items:flex-start}.mode-grid .holiday-row time strong{font-size:2.7rem}.mode-grid .holiday-name{grid-column:1/-1}.mode-grid .holiday-row .badge{grid-column:1;grid-row:3;justify-self:start}.mode-grid .holiday-row .relative{grid-column:1;grid-row:4;text-align:left}.mode-grid .row-link{grid-column:2;grid-row:1}.mode-grid .holiday-name p{min-height:3em}
@media(min-width:1000px){.theme-nightjar .intro h1{font-size:4.7rem}.theme-nuthatch .intro h1{font-size:4.8rem}.theme-rattler .intro h1{text-transform:uppercase;font-weight:900;font-size:4.8rem}.theme-tawny .intro h1{font-size:5rem}}
@media(max-width:1000px){.shell{padding-left:25px;padding-right:25px}.hero-split{gap:25px}.holiday-row{grid-template-columns:55px minmax(0,1fr) 100px 20px;gap:14px}.holiday-row .relative{display:none}.workspace{grid-template-columns:190px minmax(0,1fr);gap:22px}.workspace .holiday-row{grid-template-columns:45px minmax(0,1fr) 20px}.workspace .holiday-row .badge{grid-column:2;justify-self:start}.workspace .row-link{grid-row:1;grid-column:3}.detail-grid{gap:30px;grid-template-columns:minmax(0,1fr) 280px}.two-column{grid-template-columns:minmax(0,1fr) 245px}.filters{flex-wrap:wrap}.filters .search-field{flex-basis:100%}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.shell{padding-left:18px;padding-right:18px}.header-inner{min-height:80px;flex-wrap:wrap;gap:14px;padding-top:18px;padding-bottom:18px}.header nav{gap:18px;font-size:.8rem;width:100%;justify-content:space-between}.nav-pill{padding:5px 9px}.home{padding-top:20px}.hero-split,.workspace,.two-column,.detail-grid,.compact-intro{grid-template-columns:1fr;gap:20px}.intro{padding:10px 0}.intro-meta{font-size:.7rem;gap:12px}.hero-split{margin-bottom:20px}.next{padding:24px}.next h2{font-size:1.4rem}.filters{padding:16px;gap:12px}.filters label{flex-basis:40%}.filters button{width:100%}.months{gap:3px;margin:16px 0}.months a{padding:6px 10px}.section-top{align-items:flex-start}.section-top h2{font-size:1.4rem}.section-top>span{text-align:right;font-size:.75rem}.holiday-row{padding:18px 14px;grid-template-columns:42px minmax(0,1fr) 18px;gap:12px}.holiday-row .badge{grid-column:2;justify-self:start}.holiday-row .row-link{grid-column:3;grid-row:1}.holiday-name p{font-size:.8rem}.holiday-name h3{font-size:.95rem}.month-heading{padding:10px 16px}.mode-cards,.mode-grid{grid-template-columns:1fr}.guide{grid-template-columns:1fr;gap:12px;padding-top:25px}.guide h2{font-size:1.7rem}.footer{flex-direction:column;gap:22px}.footer nav{gap:18px}.workspace aside .months{display:flex}.workspace aside .editor-note{display:none}.ribbon .next{grid-template-columns:auto 1fr}.ribbon .next>.eyebrow{grid-column:1/-1}.ribbon .next-date{grid-column:1}.ribbon .next>div:last-child{grid-column:2}.prose{padding-top:30px}.prose table{font-size:.75rem}.detail-aside{grid-row:1}.detail-aside .editor-note{display:none}.date-card{padding:20px}.date-card>strong{font-size:4rem}.date-card .eyebrow{margin-bottom:10px}.date-card .button{margin-top:0}.consent{left:12px;right:12px;bottom:12px;max-width:none}.intro-meta span+span{padding-left:12px}.mode-timeline{padding-left:12px}}
@media print{.header,.filters,.months,.footer,.ad-unit,.consent,.row-link,.detail-aside,.editor-note{display:none}body{background:white;color:black}.shell{max-width:none;padding:0}.holiday-row{break-inside:avoid}.next{background:white;color:black;border:1px solid black}.guide{display:none}}
@media(max-width:720px){.home .hero-split{grid-template-columns:1fr}.home .hero-split>.editor-note{display:none}.home .intro-meta{display:none}.home .intro h1{font-size:2.35rem;margin:12px 0 16px}.home .intro p{margin-bottom:8px}.home .next{padding:18px;gap:12px}.home .next-date{min-width:65px;padding:10px}.home .next-date strong{font-size:2.5rem}.home .next h2{font-size:1.2rem}.home .next p{margin-bottom:8px}.home .workspace aside{border-right:0;padding-right:0}.home .intro{margin-bottom:0}.home .ribbon{margin:16px 0}.home .filters{scroll-margin-top:20px}}
