/* North Pole, new look (2026-10-07). Evergreen night, cranberry, brass, snow. */
:root,.theme-hub{
  --ground:#12162c; --ground-2:#080b1a; --card:#1b2145; --card-rgb:27,33,69; --line:rgba(240,201,106,.30);
  --gold:#f0c96a; --gold-2:#f8dfa0; --accent-rgb:240,201,106; --cranberry:#4f6be0; --cranberry-2:#6f87ee;
  --snow:#f6f3ea; --muted:#b9c0dc; --shade:8,11,26; --shade-2:6,8,18; --hero-text:#fff; --glow:rgba(79,107,224,.18);
  --display:'Cinzel','Trajan Pro',Georgia,serif; --body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --radius:14px; --wrap:1060px; --btn-text:#fff; --input-bg:#fffdf7;
}
.theme-halloween{--ground:#1a0c26;--ground-2:#0a0510;--card:#27123c;--card-rgb:39,18,60;--line:rgba(255,138,26,.38);--gold:#ff9a2e;--gold-2:#ffbf75;--accent-rgb:255,154,46;--cranberry:#e5600a;--cranberry-2:#ff7f2a;--snow:#f6ecd8;--muted:#cdb9dd;--shade:10,5,16;--shade-2:6,3,10;--glow:rgba(255,106,0,.20)}
.theme-easter{--ground:#f4eefc;--ground-2:#e6f4ec;--card:#ffffff;--card-rgb:255,255,255;--line:rgba(120,86,190,.28);--gold:#7a52c4;--gold-2:#5a3aa2;--accent-rgb:122,82,196;--cranberry:#e0709a;--cranberry-2:#c95283;--snow:#2e2745;--muted:#675f82;--shade:255,255,255;--shade-2:245,240,252;--hero-text:#2e2745;--glow:rgba(224,112,154,.22)}
.theme-newyears{--ground:#090a14;--ground-2:#030308;--card:#13152a;--card-rgb:19,21,42;--line:rgba(230,195,106,.34);--gold:#e8c66e;--gold-2:#f6e0a4;--accent-rgb:232,198,110;--cranberry:#b8922f;--cranberry-2:#d4ad45;--snow:#f5f1e6;--muted:#aeb2cc;--shade:3,3,8;--shade-2:2,2,5;--btn-text:#1b1400;--glow:rgba(232,198,110,.16)}
.theme-stpatricks{--ground:#0a2b14;--ground-2:#041508;--card:#12421f;--card-rgb:18,66,31;--line:rgba(242,201,76,.36);--gold:#f4cd52;--gold-2:#ffe38e;--accent-rgb:244,205,82;--cranberry:#1f9d49;--cranberry-2:#27bb5a;--snow:#f3fff2;--muted:#b3d8b9;--shade:4,21,8;--shade-2:3,14,5;--glow:rgba(39,187,90,.20)}
.theme-thanksgiving{--ground:#2c1a0a;--ground-2:#170d04;--card:#43280f;--card-rgb:67,40,15;--line:rgba(232,163,61,.38);--gold:#eba740;--gold-2:#f6c97f;--accent-rgb:235,167,64;--cranberry:#b34a1d;--cranberry-2:#d25f2c;--snow:#fbf0dd;--muted:#d6bf9c;--shade:23,13,4;--shade-2:15,8,2;--glow:rgba(210,95,44,.20)}
.theme-tlapd{--ground:#08252d;--ground-2:#031217;--card:#0f3b47;--card-rgb:15,59,71;--line:rgba(224,176,72,.40);--gold:#e8b94d;--gold-2:#f6d98f;--accent-rgb:232,185,77;--cranberry:#b3262e;--cranberry-2:#d23a43;--snow:#f4ecd6;--muted:#a9c7cc;--shade:3,18,23;--shade-2:2,10,14;--glow:rgba(210,58,67,.18)}
.theme-valentines{--ground:#3b0b1e;--ground-2:#1c0510;--card:#53132d;--card-rgb:83,19,45;--line:rgba(255,179,199,.36);--gold:#ffb6c9;--gold-2:#ffd6e1;--accent-rgb:255,182,201;--cranberry:#d81b60;--cranberry-2:#f03a7d;--snow:#fff2f6;--muted:#e5b5c4;--shade:28,5,16;--shade-2:18,3,10;--glow:rgba(240,58,125,.22)}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.np{
  margin:0;color:var(--snow);font-family:var(--body);font-size:18px;line-height:1.65;min-height:100vh;
  background:radial-gradient(1200px 600px at 80% -10%, var(--glow), transparent 60%),radial-gradient(900px 500px at 0% 0%, rgba(var(--accent-rgb),.10), transparent 55%),linear-gradient(180deg,var(--ground) 0%,var(--ground-2) 100%);
  background-attachment:fixed;
}
body.np a{color:var(--gold-2);text-decoration:none;text-underline-offset:3px}
body.np a:hover{color:var(--cranberry-2);text-decoration:underline}
body.np :focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:4px}
#np-snow{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.np-skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:#000;padding:8px 14px;z-index:100;border-radius:6px}
.np-skip:focus{left:8px}

/* ---------- header / nav ---------- */
.np-header{position:sticky;top:0;z-index:50;background:rgba(var(--shade),.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.np-header-in{max-width:1220px;margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:18px}
.np-brand{display:flex;align-items:center;gap:12px;color:var(--gold)!important;font-family:var(--display);font-weight:700;letter-spacing:.14em;font-size:17px;text-decoration:none!important;white-space:nowrap}
body.np .np-brand img{width:46px;height:46px;border-radius:50%;margin:0;display:block;box-shadow:0 0 0 2px rgba(var(--accent-rgb),.5)}
.np-nav{margin-left:auto;display:flex;align-items:center;gap:2px 2px;flex-wrap:wrap;justify-content:flex-end}
.np-nav a{padding:8px 10px;border-radius:99px;font-size:15.5px;color:var(--snow)!important;text-decoration:none!important;white-space:nowrap}
.np-nav a:hover{background:rgba(var(--accent-rgb),.14)}
.np-nav a.is-here{color:var(--gold)!important;box-shadow:inset 0 -2px 0 var(--gold);border-radius:0}
.np-nav a.np-cta{background:var(--cranberry);color:var(--btn-text)!important;font-weight:700;padding:9px 18px}
.np-nav a.np-cta:hover{background:var(--cranberry-2)}
.np-nav a.np-track{background:var(--gold);color:#2a1c00!important;font-weight:700;padding:9px 18px}
.np-burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--gold);border-radius:10px;padding:8px 12px;font-size:20px;cursor:pointer}
#np-menu-toggle{display:none}
@media (max-width:900px){
  .np-burger{display:block}
  .np-nav{display:none;position:absolute;left:0;right:0;top:100%;background:rgba(var(--shade),.98);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px 20px 18px;gap:2px}
  #np-menu-toggle:checked ~ .np-nav{display:flex}
  .np-nav a{padding:12px 10px;border-radius:8px;font-size:18px}
  .np-nav a.is-here{box-shadow:none;background:rgba(var(--accent-rgb),.12)}
  .np-nav a.np-cta,.np-nav a.np-track{text-align:center;margin-top:6px}
}

/* ---------- page frame ---------- */
.np-main{position:relative;z-index:1;max-width:var(--wrap);margin:0 auto;padding:28px 20px 60px}
.np-title{font-family:var(--display);font-weight:700;text-align:center;color:var(--gold);letter-spacing:.06em;font-size:clamp(28px,5vw,46px);line-height:1.2;margin:18px 0 22px;text-wrap:balance;-webkit-text-stroke:0}
.np-title i{opacity:.85;margin-right:.35em}
.div_main{
  background:rgba(var(--card-rgb),.88);border:1px solid var(--line);border-radius:var(--radius);
  padding:clamp(18px,3vw,36px);width:auto!important;max-width:100%!important;margin:0 auto!important;
  box-shadow:0 18px 50px rgba(0,0,0,.35);overflow:hidden;
}
.div_main::after{content:"";display:block;clear:both}

/* ---------- typography (also re-colors the old inline styles) ---------- */
body.np h1,body.np h2,body.np h3,body.np h4,body.np h5{font-family:var(--display);-webkit-text-stroke:0!important;text-align:left;margin:1.4em 0 .5em;line-height:1.25;text-wrap:balance}
body.np h1{font-size:clamp(26px,4vw,40px);color:var(--gold)}
body.np h2{font-size:clamp(22px,3vw,30px);color:var(--gold);border-bottom:1px solid var(--line);padding-bottom:.3em}
body.np h3{font-size:clamp(19px,2.4vw,24px);color:var(--snow)}
body.np h4{font-size:19px;color:var(--gold-2)}
.div_main>h2:first-child,.div_main>h3:first-child{margin-top:0}
body.np p,body.np li{margin-left:0;max-width:none}
body.np ul,body.np ol{padding-left:1.3em;margin-left:0}
body.np [style*="color: red"],body.np [style*="color:red"],body.np [style*="#FF0000"],body.np [style*="color: #FF0000"]{color:#ff9aa2!important}
body.np [style*="lime"],body.np [style*="cyan"],body.np [style*="yellow"],body.np [style*="#ffe659"]{color:var(--gold-2)!important}
body.np [style*="text-align: center"] h1,body.np [style*="text-align: center"] h2,body.np [style*="text-align: center"] h3{text-align:center}
body.np hr,body.np .golden-hr{border:0;border-top:1px solid var(--line);max-width:none;margin:28px 0}
body.np blockquote{margin:1.2em 0;padding:.4em 1.2em;border-left:3px solid var(--gold);color:var(--muted);font-style:italic}
body.np img{display:inline-block;margin:0;max-width:100%;height:auto;border-radius:10px}
body.np .float-left{float:left;margin:4px 22px 14px 0}
body.np .float-right{float:right;margin:4px 0 14px 22px}
body.np .float-left,body.np .float-right{max-width:min(46%,320px)}
body.np .container{overflow:hidden;margin-bottom:22px}
@media (max-width:640px){
  body.np .float-left,body.np .float-right{float:none;display:block;margin:0 auto 16px;max-width:100%}
  body.np{font-size:17px}
}
body.np table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}
body.np th,body.np td{padding:.5rem .7rem;border-bottom:1px solid var(--line);text-align:left}
body.np iframe{max-width:100%;border:0;border-radius:12px}
body.np .blinking{animation:none;color:inherit}
body.np input[type=text],body.np input[type=email],body.np select,body.np textarea,body.np input[type=search]{
  font:inherit;font-size:17px;color:#1c1c1c;background:var(--input-bg);border:1px solid #c9b98a;border-radius:10px;padding:11px 14px;max-width:100%}
body.np input[type=submit],body.np button.np-btn,.np-btn{
  font:inherit;font-weight:700;cursor:pointer;color:var(--btn-text);background:var(--cranberry);border:0;border-radius:99px;padding:12px 28px;letter-spacing:.03em}
body.np input[type=submit]:hover,.np-btn:hover{background:var(--cranberry-2)}
.np-btn{display:inline-block;text-decoration:none!important}
.np-btn.alt{background:transparent;border:1px solid var(--gold);color:var(--gold-2)!important}
.np-btn.alt:hover{background:rgba(var(--accent-rgb),.15)}

/* legacy blog-post markup */
.blog-post{display:flex;gap:22px;align-items:flex-start;padding:20px 0}
.blog-post .blog-image{flex:0 0 130px;text-align:center;font-size:15px;color:var(--muted);width:130px}
body.np .blog-post .blog-image img{width:100px;border-radius:50%!important;border:2px solid var(--gold)}
.blog-post .blog-content{flex:1;min-width:0;max-width:none}
.div_wrap{display:inline-block;vertical-align:top;overflow-wrap:anywhere}
@media (max-width:640px){.blog-post{flex-direction:column;gap:6px}.blog-post .blog-image{flex:none;width:auto;text-align:left;display:flex;gap:12px;align-items:center}}

/* ---------- home ---------- */
.np-hero{position:relative;z-index:1;min-height:clamp(380px,56vw,560px);display:flex;align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--line);
  background:rgb(var(--shade)) var(--hero-img,none) center/cover no-repeat}
.np-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--shade),.92) 0%,rgba(var(--shade),.55) 45%,rgba(var(--shade),.05) 100%),linear-gradient(0deg,rgba(var(--shade),.85) 0%,transparent 45%)}
.np-hero-in{position:relative;max-width:var(--wrap);width:100%;margin:0 auto;padding:40px 20px 36px}
.np-eyebrow{font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:700}
.np-hero h1{font-family:var(--display);font-size:clamp(34px,6.4vw,70px);line-height:1.05;margin:.25em 0 .2em;color:var(--hero-text);text-align:left;max-width:12em;text-shadow:0 3px 24px rgba(0,0,0,.5)}
.np-hero p.lead{font-size:clamp(18px,2.2vw,22px);color:var(--hero-text);opacity:.92;max-width:34em;margin:0 0 20px}
.np-hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.np-count{display:flex;gap:10px;margin:22px 0 4px;flex-wrap:wrap}
.np-count div{min-width:78px;text-align:center;background:rgba(var(--shade),.7);border:1px solid var(--line);border-radius:12px;padding:10px 8px}
.np-count b{display:block;font-family:var(--display);font-size:clamp(24px,4vw,36px);color:var(--gold-2);font-variant-numeric:tabular-nums}
.np-count span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.np-count-label{font-size:15px;color:var(--muted)}
.np-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin:28px 0}
.np-card{background:rgba(var(--card-rgb),.9);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.np-card h2{margin-top:0;font-size:24px}
.np-elf{display:flex;gap:18px;align-items:center}
body.np .np-elf img{width:110px;height:110px;object-fit:cover;border-radius:50%!important;border:3px solid var(--gold);flex:none}
.np-section-title{font-family:var(--display);color:var(--gold);font-size:clamp(24px,3.4vw,34px);text-align:left;margin:36px 0 14px;display:flex;align-items:center;gap:14px}
.np-section-title::after{content:"";flex:1;height:1px;background:var(--line)}
.np-posts{display:grid;gap:16px}
.np-post{display:grid;grid-template-columns:84px 1fr;gap:18px;background:rgba(var(--card-rgb),.9);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
body.np .np-post img{width:84px;height:84px;object-fit:cover;border-radius:50%!important;border:2px solid var(--gold)}
.np-post header{display:flex;gap:10px 14px;flex-wrap:wrap;align-items:baseline;margin-bottom:6px}
.np-post header b{font-family:var(--display);font-size:18px;color:var(--snow)}
.np-post header time{font-size:14px;letter-spacing:.06em;color:var(--gold);text-transform:uppercase}
.np-post p{margin:0;max-width:none}
@media (max-width:560px){.np-post{grid-template-columns:56px 1fr;gap:12px;padding:16px}body.np .np-post img{width:56px;height:56px}}
.np-video{position:relative;aspect-ratio:16/9;max-width:760px;margin:0 auto;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#000}
.np-video button{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(0,0,0,.35);color:#fff;font:inherit;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px}
.np-video iframe{position:absolute;inset:0;width:100%;height:100%}
.np-banner{position:relative;z-index:1;background:linear-gradient(90deg,var(--cranberry),#7d1620);color:#fff;text-align:center;padding:12px 20px;font-weight:600}
.np-banner a{color:#fff!important;text-decoration:underline}

/* ---------- footer ---------- */
.np-footer{position:relative;z-index:1;border-top:1px solid var(--line);background:rgba(var(--shade-2),.95);text-align:center;padding:34px 20px 40px;color:var(--muted)}
body.np .np-footer img.seal{width:92px;height:92px;border-radius:50%;margin:0 auto 12px;display:block}
.np-footer .name{font-family:var(--display);color:var(--gold);letter-spacing:.14em;font-size:15px}
.np-footer .social{display:flex;gap:10px;justify-content:center;margin:16px 0;flex-wrap:wrap}
.np-footer .social a{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;color:var(--gold-2);font-size:19px;text-decoration:none!important}
.np-footer .social a:hover{background:rgba(var(--accent-rgb),.16)}
.np-footer .links{display:flex;gap:6px 20px;justify-content:center;flex-wrap:wrap;margin:8px 0 14px;font-size:15px}
.np-footer small{display:block;font-size:14px;line-height:1.6}

/* ---------- Christmas Day takeover ---------- */
#np-xmas{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;
  background:radial-gradient(900px 600px at 50% 15%,rgba(var(--accent-rgb),.22),transparent 60%),linear-gradient(180deg,#7d1620 0%,#3a0a12 55%,#0c261b 100%);text-align:center}
#np-xmas[hidden]{display:none!important}
#np-xmas .box{max-width:720px}
body.np #np-xmas img.seal{width:120px;height:120px;border-radius:50%;margin:0 auto 18px;display:block;box-shadow:0 0 0 3px var(--gold)}
#np-xmas h1{font-family:var(--display);color:var(--gold-2);font-size:clamp(36px,8vw,76px);line-height:1.05;margin:.1em 0 .3em;text-align:center}
#np-xmas p{font-size:clamp(18px,2.4vw,23px);margin:0 auto 14px;max-width:34em;color:#fff7ea}
#np-xmas .sig{font-family:var(--display);color:var(--gold-2);font-size:24px;margin-top:20px}

/* ---------- tracker ---------- */
.np-map{position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#0a2a2f}
.np-map svg{display:block;width:100%;height:auto}
.np-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}
.np-stat{background:rgba(var(--card-rgb),.9);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.np-stat span{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.np-stat b{display:block;font-family:var(--display);font-size:clamp(18px,2.4vw,24px);color:var(--gold-2);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.np-stops{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:12px}
body.np .np-stops table{display:table;width:100%;font-size:16px}
.np-stops tr.done td{color:var(--muted)}
.np-stops tr.now td{background:rgba(179,33,45,.35);color:#fff;font-weight:700}
@media (prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

/* gentle glow on the Message Santa button (replaces the old hard blink) */
.np-nav a.np-cta{animation:np-glow 2.4s ease-in-out infinite}
@keyframes np-glow{0%,100%{box-shadow:0 0 0 0 rgba(214,58,72,.0)}50%{box-shadow:0 0 0 6px rgba(214,58,72,.35)}}

/* ---------- holidays hub ---------- */
.hol-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin:26px 0}
.hol-card{position:relative;display:flex;flex-direction:column;min-height:220px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);color:var(--snow)!important;text-decoration:none!important;
  background:linear-gradient(0deg,rgba(var(--shade),.92),rgba(var(--shade),.15)),var(--card-img,none) center/cover,var(--ground);transition:transform .2s,box-shadow .2s}
.hol-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.4)}
.hol-card .in{margin-top:auto;padding:18px 20px}
.hol-card h3{font-family:var(--display);color:var(--gold);margin:0 0 4px;font-size:22px;text-align:left}
.hol-card p{margin:0;font-size:16px;color:var(--snow);opacity:.9}
.hol-card .when{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-2);margin-bottom:6px;display:block}
.hol-next{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:rgba(var(--card-rgb),.9);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px}
.hol-next b{font-family:var(--display);font-size:clamp(22px,3.4vw,32px);color:var(--gold)}
.hol-upcoming{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.hol-upcoming li{display:flex;gap:14px;align-items:baseline;padding:10px 14px;background:rgba(var(--card-rgb),.8);border:1px solid var(--line);border-radius:10px;max-width:none}
.hol-upcoming time{flex:none;min-width:84px;font-family:var(--display);color:var(--gold);font-size:15px}

/* ---------- calendar ---------- */
.cal-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 16px}
.cal-head h2{border:0;margin:0;padding:0;flex:1;min-width:180px;text-align:left;font-size:clamp(24px,4vw,36px)}
.cal-nav a{display:inline-block;padding:9px 16px;border:1px solid var(--line);border-radius:99px;color:var(--gold-2)!important;text-decoration:none!important;margin-left:6px}
.cal-nav a:hover{background:rgba(var(--accent-rgb),.14)}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal-dow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center;padding:6px 0}
.cal-day{min-height:104px;padding:6px 7px;border:1px solid var(--line);border-radius:10px;background:rgba(var(--card-rgb),.78);display:flex;flex-direction:column;gap:3px;min-width:0}
.cal-day.off{opacity:.35}
.cal-day.today{box-shadow:0 0 0 2px var(--gold);background:rgba(var(--accent-rgb),.14)}
.cal-day .n{font-family:var(--display);font-size:15px;color:var(--gold)}
.cal-chip{display:block;font-size:12.5px;line-height:1.25;padding:2px 6px;border-radius:6px;background:rgba(var(--accent-rgb),.14);color:var(--snow)!important;text-decoration:none!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:3px solid var(--gold)}
.cal-chip:hover{background:rgba(var(--accent-rgb),.28)}
.cal-chip.big{font-weight:700;border-left-width:4px}
.cal-chip.t-halloween{border-color:#ff9a2e}.cal-chip.t-easter{border-color:#b08be0}.cal-chip.t-newyears{border-color:#e8c66e}.cal-chip.t-stpatricks{border-color:#27bb5a}.cal-chip.t-thanksgiving{border-color:#eba740}.cal-chip.t-valentines{border-color:#f03a7d}.cal-chip.t-tlapd{border-color:#d9a441}.cal-chip.t-christmas{border-color:#d63a48}
.cal-more{font-size:12px;color:var(--muted)}
.cal-list{display:grid;gap:10px;margin-top:22px}
.cal-item{border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:rgba(var(--card-rgb),.85)}
.cal-item:target{box-shadow:0 0 0 2px var(--gold)}
.cal-item summary{cursor:pointer;display:flex;gap:14px;align-items:baseline;list-style:none}
.cal-item summary::-webkit-details-marker{display:none}
.cal-item time{flex:none;min-width:70px;font-family:var(--display);color:var(--gold)}
.cal-item p{margin:10px 0 0 0;max-width:none;font-size:17px}
.cal-item{scroll-margin-top:90px}
@media (max-width:760px){.cal-grid{display:none}}

.np-hero.np-hero-sm{min-height:clamp(240px,34vw,360px)}
.np-hero.np-hero-sm h1{max-width:none}
