@font-face{font-family:'Playfair Display Variable';font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/playfair-display-latin-wght-normal-e0c764a8.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display Variable';font-style:italic;font-weight:400 900;font-display:swap;src:url(/fonts/playfair-display-latin-wght-italic-54af24bd.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Franklin Variable';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/libre-franklin-latin-wght-normal-52e60585.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#21150F; --ink2:#44352C; --mute:#6A5A50; --faint:#6A5A50;
  --paper:#FFF9EC; --ground:#5C0B17; --band:#EFE4CD; --panel:#FBF3E1;
  --rule:#DDCDAF; --rule-strong:#4E1220;
  --orange:#B8872A; --orange-deep:#7A5610; --orange-wash:#F6E9C6; --track:#6B1020;
  --leaf:#2F5A3B; --leaf-soft:#DDE7DA;
  --gold:#E3B24F; --gold-lite:#FFE3A1; --velvet:#4A0E1B; --night:#16040A; --board:#FFFDF6;
  --grid:rgba(0,0,0,0);
  --sans:"Libre Franklin Variable","Libre Franklin","Helvetica Neue",Arial,sans-serif;
  --mono:"Libre Franklin Variable","Libre Franklin",ui-monospace,Menlo,monospace;
  --serif:"Playfair Display Variable","Playfair Display",Georgia,serif;
  --frame:80rem; --pad:1.5rem; --measure:42rem; --t:24px; --sign:13.5rem;
  --banner:url(/decor/banner-home-cb0b3eee.webp); --bpos:50% 50%;
}

body:has(.crumbs a[href="/festivals/"]),body:has(.mh-nav a[aria-current][href="/festivals/"]){--banner:url(/decor/banner-festivals-27a310aa.webp);--bpos:50% 40%}
body:has(.crumbs a[href="/entry-rules/"]),body:has(.mh-nav a[aria-current][href="/entry-rules/"]){--banner:url(/decor/banner-entry-rules-8d10b27e.webp);--bpos:50% 45%}
body:has(.crumbs a[href="/entry-calendar/"]),body:has(.mh-nav a[aria-current][href="/entry-calendar/"]){--banner:url(/decor/banner-entry-calendar-7c0009b1.webp);--bpos:50% 30%}
body:has(.crumbs a[href="/filmmaking-tools/"]),body:has(.mh-nav a[aria-current][href="/filmmaking-tools/"]){--banner:url(/decor/banner-filmmaking-tools-787156f4.webp);--bpos:50% 50%}
body:has(.crumbs a[href="/festival-pairs/"]),body:has(.mh-nav a[aria-current][href="/festival-pairs/"]){--banner:url(/decor/banner-festival-pairs-83d47bd3.webp);--bpos:50% 48%}
body:has(.crumbs a[href="/entry-questions/"]),body:has(.mh-nav a[aria-current][href="/entry-questions/"]){--banner:url(/decor/banner-entry-questions-345f0bd5.webp);--bpos:50% 42%}
body:has(.crumbs a[href="/festival-terms/"]),body:has(.mh-nav a[aria-current][href="/festival-terms/"]){--banner:url(/decor/banner-festival-terms-465368bb.webp);--bpos:50% 62%}
body:has(.crumbs a[href="/entrant-notes/"]),body:has(.mh-nav a[aria-current][href="/entrant-notes/"]){--banner:url(/decor/banner-entrant-notes-57cb3799.webp);--bpos:50% 55%}
body:has(.crumbs a[href="/how-rules-are-read/"]),body:has(.mh-nav a[aria-current][href="/how-rules-are-read/"]),body:has(.crumbs a[href="/datasets/"]){--banner:url(/decor/banner-method-a30f86c0.webp);--bpos:50% 42%}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:2rem}

body{margin:0;overflow-x:clip;color:var(--ink);font:400 18px/1.62 var(--sans);font-variant-numeric:tabular-nums;background-color:var(--ground);
  background-image:radial-gradient(64rem 26rem at 50% -6rem,rgba(255,196,96,.26),transparent 70%),
    linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(20,2,6,.55)),
    linear-gradient(90deg,rgba(0,0,0,.5),transparent 16%,transparent 84%,rgba(0,0,0,.5)),
    repeating-linear-gradient(90deg,rgba(18,1,5,.42) 0,rgba(255,120,120,.07) 30px,rgba(255,170,150,.1) 44px,rgba(18,1,5,.3) 70px,rgba(18,1,5,.5) 96px)}
a{color:inherit;text-decoration:none}
p a,li a,td a,dd a{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:1.5px;text-underline-offset:3px}
p a:hover,li a:hover,td a:hover,dd a:hover{color:var(--track);text-decoration-color:var(--track)}
::selection{background:var(--gold);color:var(--night)}
.asof,.rl span,.stamp,caption,thead th,.tag,.meta,.crumbs{font-family:var(--mono);letter-spacing:.02em;text-transform:none}

.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--night);padding:.5rem .8rem;z-index:50}
.skip:focus{left:.5rem}

.masthead{background:linear-gradient(180deg,#0E0206,var(--night));border-bottom:1px solid rgba(227,178,79,.35);box-shadow:inset 0 -4px 0 var(--night),inset 0 -5px 0 rgba(227,178,79,.55)}
.mh{max-width:var(--frame);margin:0 auto;padding:1.1rem var(--pad) 1rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem}
.brand{display:flex;align-items:center;gap:.55rem;font:900 1.7rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#FFF3DA}
.mark{display:inline-flex;color:var(--gold)}
.mark svg{width:1.7rem;height:1.7rem}
.mh-tag{display:block;margin:0;font:italic 500 .92rem/1.3 var(--serif);color:rgba(255,227,161,.7)}
.mh-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.1rem;font:700 .76rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-top:.45rem}
.mh-nav a{padding:.4rem .62rem;color:#EFDDBE;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.mh-nav a+a::before{content:"";display:inline-block;width:.26rem;height:.26rem;margin:0 .8rem 0 -.32rem;background:var(--gold);transform:rotate(45deg) translateY(-.15rem)}
.mh-nav a:hover{color:#FFFFFF}
.mh-nav a[aria-current=page]{color:var(--gold-lite);border-bottom-color:var(--gold)}

.sheet{max-width:var(--frame);margin:0 auto;padding:2rem var(--pad) 3.6rem;display:grid;grid-template-columns:minmax(0,1fr) 14rem;column-gap:2.2rem}
.sheet::before,.sheet::after{content:"";box-sizing:border-box;grid-row:1;grid-column:1/-1;display:block;height:var(--sign);margin:0 0 1.8rem;border-radius:14px}

.sheet::before{padding:var(--t);border:2px solid #C8953A;
  background-image:linear-gradient(0deg,rgba(22,4,10,.45),rgba(22,4,10,0) 45%),var(--banner),
    linear-gradient(var(--gold),var(--gold)),linear-gradient(180deg,#2A0A10,#1A0508);
  background-size:100% 100%,cover,calc(100% - 2*var(--t) + 4px) calc(100% - 2*var(--t) + 4px),100% 100%;
  background-position:0 0,var(--bpos),50% 50%,0 0;background-repeat:no-repeat;
  background-origin:content-box,content-box,padding-box,padding-box;background-clip:content-box,content-box,padding-box,padding-box;
  box-shadow:0 0 0 5px #120307,0 0 0 6px rgba(227,178,79,.4),0 30px 70px -30px rgba(0,0,0,.9),0 0 90px -20px rgba(255,190,90,.45);
  animation:signon 1.4s ease-out both}

.sheet::after{pointer-events:none;z-index:1;
  --on:#FFF6D8 0 calc(var(--t)*.1),#FFC857 calc(var(--t)*.19),rgba(255,176,59,.42) calc(var(--t)*.29),transparent calc(var(--t)*.4);
  --off:#F3D796 0 calc(var(--t)*.07),#A87323 calc(var(--t)*.15),rgba(168,115,35,.25) calc(var(--t)*.22),transparent calc(var(--t)*.28);
  background-image:
    radial-gradient(circle at calc(var(--t)*.5) 50%,var(--on)),radial-gradient(circle at calc(var(--t)*1.5) 50%,var(--off)),
    radial-gradient(circle at calc(var(--t)*.5) 50%,var(--on)),radial-gradient(circle at calc(var(--t)*1.5) 50%,var(--off)),
    radial-gradient(circle at 50% calc(var(--t)*.5),var(--on)),radial-gradient(circle at 50% calc(var(--t)*1.5),var(--off)),
    radial-gradient(circle at 50% calc(var(--t)*.5),var(--on)),radial-gradient(circle at 50% calc(var(--t)*1.5),var(--off));
  background-size:calc(var(--t)*2) var(--t),calc(var(--t)*2) var(--t),calc(var(--t)*2) var(--t),calc(var(--t)*2) var(--t),
    var(--t) calc(var(--t)*2),var(--t) calc(var(--t)*2),var(--t) calc(var(--t)*2),var(--t) calc(var(--t)*2);
  background-repeat:repeat-x,repeat-x,repeat-x,repeat-x,repeat-y,repeat-y,repeat-y,repeat-y;
  background-position:0 0,0 0,0 100%,0 100%,0 0,0 0,100% 0,100% 0;
  animation:bulbson 1.1s .15s steps(4) both,chase 1.6s 1.3s steps(1) 6}

.column{grid-row:2;grid-column:1;min-width:0}

.rail{grid-row:2;grid-column:2;position:sticky;top:1.5rem;align-self:start;font:400 .84rem/1.45 var(--sans);color:var(--ink2)}
.rl,.rl-figs{display:none}
.rl span{display:block;font-size:.64rem;color:var(--mute)}
.rl b{display:block;font:600 1rem/1.3 var(--mono)}
.secnav{position:relative;padding:1.1rem 1.1rem 1rem;background:linear-gradient(180deg,#FFF4D8,#F6E4B8);border-radius:6px;
  -webkit-mask:radial-gradient(circle 10px at 0 3.1rem,transparent 96%,#000) 0 0/51% 100% no-repeat,radial-gradient(circle 10px at 100% 3.1rem,transparent 96%,#000) 100% 0/51% 100% no-repeat;
          mask:radial-gradient(circle 10px at 0 3.1rem,transparent 96%,#000) 0 0/51% 100% no-repeat,radial-gradient(circle 10px at 100% 3.1rem,transparent 96%,#000) 100% 0/51% 100% no-repeat;
  box-shadow:0 18px 30px -18px rgba(0,0,0,.8)}
.rl-h{display:block;margin:0 0 .75rem;padding:0 0 .7rem;border-bottom:2px dashed rgba(90,20,36,.35);text-align:center;font:900 .8rem/1.2 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--track)}
.secnav ol{list-style:none;margin:0;padding:0}
.secnav li{margin:0}
.secnav a{display:flex;gap:.5rem;padding:.34rem 0;border-bottom:1px dotted rgba(90,20,36,.25);color:var(--ink2);text-decoration:none;transition:color .2s,padding-left .2s}
.secnav li:last-child a{border-bottom:0}
.secnav a i{font-style:normal;font:800 .95rem/1.3 var(--serif);color:var(--orange-deep);min-width:1.1rem}
.secnav a:hover{color:var(--track);padding-left:.25rem}
.rl-figs a{display:inline-block;margin:.12rem .35rem .12rem 0;font-family:var(--mono);font-size:.74rem;color:var(--mute)}

.crumbs{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,227,161,.66);margin:0 0 .9rem .15rem}
.crumbs a{color:#FFE9BA;text-decoration:none;border-bottom:1px solid rgba(227,178,79,.45)}
.crumbs a:hover{color:#FFFFFF;border-bottom-color:var(--gold)}

main#doc{position:relative;background-color:var(--paper);border:1px solid #E6D6B4;
  box-shadow:inset 0 0 0 11px var(--paper),inset 0 0 0 12.5px var(--track),inset 0 0 0 15px var(--paper),inset 0 0 0 16px var(--track),0 2px 0 rgba(0,0,0,.2),0 40px 70px -40px rgba(0,0,0,.85);
  padding:3rem 3.2rem 3.2rem;
  background-image:radial-gradient(circle at 20px 20px,var(--gold) 0 3.5px,transparent 4px),radial-gradient(circle at calc(100% - 20px) 20px,var(--gold) 0 3.5px,transparent 4px),
    radial-gradient(circle at 20px calc(100% - 20px),var(--gold) 0 3.5px,transparent 4px),radial-gradient(circle at calc(100% - 20px) calc(100% - 20px),var(--gold) 0 3.5px,transparent 4px),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45 0 0 0 0 .3 0 0 0 0 .15 0 0 0 .07 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
main#doc>*{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
main#doc>:nth-child(1){animation-delay:.25s} main#doc>:nth-child(2){animation-delay:.32s} main#doc>:nth-child(3){animation-delay:.4s}
main#doc>:nth-child(4){animation-delay:.46s} main#doc>:nth-child(n+5){animation-delay:.52s}

main#doc>p,main#doc>ul,main#doc>ol,main#doc>blockquote,main#doc>.clause,main#doc>.statusbox,main#doc>.rule,main#doc>h3{max-width:var(--measure);margin-left:auto;margin-right:auto}
main#doc>ul.entries,main#doc>ul.facts,main#doc>ul.stamps,main#doc>ol.season,main#doc>ul.lineup{max-width:none}

h1{position:relative;display:block;width:fit-content;max-width:100%;margin:.2rem auto 1.6rem;padding:.55rem 1.3rem .5rem;text-align:center;
  font:850 clamp(1.7rem,2.9vw,2.55rem)/1.16 var(--sans);letter-spacing:.015em;text-transform:uppercase;color:#170C08;text-wrap:balance;
  background:repeating-linear-gradient(180deg,transparent 0 calc(1.16em - 2px),rgba(80,40,24,.16) calc(1.16em - 2px) 1.16em) 0 .55rem/100% calc(100% - 1.05rem) no-repeat content-box,
    linear-gradient(180deg,#FFFFFF,var(--board) 55%,#F7EFDC);
  border:5px solid #2A0810;border-radius:3px;
  box-shadow:0 0 0 2px var(--gold),0 0 0 8px #2A0810,0 0 0 9px rgba(227,178,79,.55),0 0 38px 4px rgba(255,214,140,.45),0 20px 30px -18px rgba(40,6,12,.7)}

.answer{max-width:40rem;margin:0 auto 2.2rem;padding:0;text-align:center;font:italic 400 1.22rem/1.58 var(--serif);color:var(--ink)}
.asof{display:flex;align-items:center;gap:.8rem;margin:1rem auto 0;max-width:30rem;font:700 .7rem/1.3 var(--sans);font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--track)}
.asof::before,.asof::after{content:"";flex:1;height:5px;border-top:1px solid var(--orange);border-bottom:1px solid var(--orange)}
h2{position:relative;display:flex;align-items:center;gap:.9rem;margin:3rem 0 1.1rem;padding:.62rem 1rem .6rem .7rem;background:var(--track);color:#FFF1D2;
  font:800 .95rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 -3px 0 rgba(0,0,0,.18),0 0 0 1px var(--track);
  outline:1px solid var(--gold);outline-offset:-5px}
h2 .secno{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#FFF1C4,var(--gold) 55%,#B8872A);box-shadow:0 0 0 2px rgba(0,0,0,.25),0 0 12px rgba(255,200,87,.6);
  font:800 1rem/1 var(--serif);letter-spacing:0;color:var(--track);text-decoration:none;transition:transform .3s}
h2:hover .secno{transform:scale(1.1)}
h3{font:800 .78rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:1.8rem auto .55rem;color:var(--orange-deep)}
p{margin:0 0 1.05rem}
ul,ol{margin:0 0 1rem;padding-left:1.3rem}
li{margin:.28rem 0}
li::marker{color:var(--orange)}
b,strong{font-weight:700}

.statusbox{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:0;margin:1.3rem auto;border:1px solid var(--rule);border-top:3px double var(--track)}
.sb-row{padding:.6rem .75rem;background:var(--paper);border-right:1px solid var(--band);border-bottom:1px solid var(--band)}
.statusbox dt{font:700 .62rem/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.statusbox dd{margin:.25rem 0 0;font:700 .98rem/1.3 var(--sans)}

ul.facts{list-style:none;padding:0;margin:1.4rem 0 2rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:0 2.2rem;border-top:3px double var(--track)}
li.fact{position:relative;display:flex;flex-direction:column;gap:.3rem;margin:0;padding:1rem .2rem 1rem 1.6rem;border-bottom:1px solid var(--rule);transition:background-color .25s}
li.fact::after{content:"";position:absolute;left:.1rem;top:1.25rem;width:8px;height:8px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 0 2px var(--paper),0 0 0 3px var(--orange)}
li.fact:hover{background:rgba(246,233,198,.45)}
li.fact .tag{font-weight:800;font-size:.64rem;line-height:1.45;letter-spacing:.14em;text-transform:uppercase;color:var(--track)}
li.fact .fv{display:flex;flex-direction:column;gap:.2rem}
li.fact .val{font:700 1.08rem/1.35 var(--serif);color:var(--ink)}
li.fact .note{font-size:.88rem;line-height:1.5;color:var(--ink2)}
li.fact .meta{margin-top:auto;padding-top:.4rem;font-size:.7rem;color:var(--faint)}
li.fact .meta .sep{margin:0 .3rem;color:var(--rule)}

blockquote{position:relative;margin:2.4rem auto;padding:1.5rem 1.6rem 1.2rem;border-top:3px double var(--track);border-bottom:3px double var(--track);text-align:center;font:italic 500 1.24rem/1.5 var(--serif);color:var(--track)}
blockquote::before{content:"\201C";position:absolute;left:50%;top:-1.35rem;width:2.6rem;margin-left:-1.3rem;background:var(--paper);font:800 3.2rem/1 var(--serif);font-style:normal;color:var(--gold)}
blockquote p{margin:0 0 .5rem}
blockquote cite{display:block;font:normal 700 .68rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}

.tablewrap{overflow-x:auto;margin:1.5rem 0 .5rem;border:1px solid var(--rule);background:#FFFDF7;box-shadow:0 1px 0 var(--band)}
table{width:100%;border-collapse:collapse;font-size:.9rem}
.tablewrap:has(th:nth-child(7)) table{font-size:.8rem}
.tablewrap:has(th:nth-child(7)) thead th,.tablewrap:has(th:nth-child(7)) tbody td{padding-left:.6rem;padding-right:.6rem}
caption{caption-side:top;text-align:left;padding:.7rem .85rem;font-size:.76rem;font-weight:500;color:var(--ink2);background:var(--panel);border-bottom:1px solid var(--rule)}
thead th{text-align:left;font-size:.64rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#FFF1D2;background:var(--track);padding:.62rem .85rem;border-bottom:3px double var(--gold)}
tbody td{padding:.58rem .85rem;border-bottom:1px solid var(--band);vertical-align:top}
tbody td:first-child{font-weight:650}
tbody tr:nth-child(even){background:#FDF7EA}
tbody tr:hover{background:var(--orange-wash)}
tbody tr:last-child td{border-bottom:0}
tr.is-current{background:var(--orange-wash);box-shadow:inset 4px 0 0 var(--track)}
tr.is-current td{font-weight:700}
.rule{font-size:.8rem;color:var(--ink2);margin:.5rem auto 1.5rem}
.rule b{font-family:var(--mono);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--track)}
.clause{font-size:.88rem;color:var(--ink2)}

main ul.entries{list-style:none;padding:0;margin:1.3rem 0 2.2rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));gap:.9rem}
ul.entries li{position:relative;margin:0;padding:1rem 1.05rem 1rem 2.4rem;font-size:.86rem;line-height:1.5;color:var(--ink2);
  background:linear-gradient(90deg,var(--orange-wash) 0 1.5rem,transparent 1.5rem),linear-gradient(180deg,#FFFDF6,#FBF1DA);
  -webkit-mask:radial-gradient(circle 7px at 1.5rem 0,transparent 95%,#000) 0 0/100% 51% no-repeat,radial-gradient(circle 7px at 1.5rem 100%,transparent 95%,#000) 0 100%/100% 51% no-repeat;
          mask:radial-gradient(circle 7px at 1.5rem 0,transparent 95%,#000) 0 0/100% 51% no-repeat,radial-gradient(circle 7px at 1.5rem 100%,transparent 95%,#000) 0 100%/100% 51% no-repeat;
  transition:transform .25s,filter .25s}
ul.entries li::before{content:"";position:absolute;left:1.5rem;top:10px;bottom:10px;border-left:2px dashed rgba(122,86,16,.45)}
ul.entries li::after{content:"";position:absolute;left:.52rem;top:50%;width:.45rem;height:.45rem;margin-top:-.22rem;background:var(--track);transform:rotate(45deg)}
ul.entries li:hover{transform:translateY(-3px) rotate(-.4deg);filter:drop-shadow(0 10px 10px rgba(74,20,32,.25))}
ul.entries a{display:block;font:800 1.02rem/1.25 var(--sans);letter-spacing:.01em;color:var(--track);margin-bottom:.2rem;text-decoration:none}
ul.entries a:hover{color:var(--orange-deep)}

.stamp{font-size:.72rem;color:var(--faint)}

main a[href^="http"]{color:var(--orange-deep);text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:1.5px;text-underline-offset:3px}
main a[href^="http"]:hover{color:var(--track)}
li.fact .meta a[href^="http"]{color:var(--mute);text-decoration-color:var(--rule)}

.chart,.fig{margin:1.9rem 0 1.3rem;padding:1.25rem 1.3rem 1.05rem;background:#FFFDF7;border:1px solid var(--rule);border-top:3px double var(--track)}
.chart svg{display:block;max-width:100%;overflow:visible;height:auto;margin:0 auto}
.ch-matrix svg,.ch-bars svg,.ch-timeline svg{max-width:100%}
.chart figcaption,.fig figcaption{max-width:var(--measure);margin:.8rem auto 0;font:400 .78rem/1.5 var(--sans);color:var(--mute)}
.fign{float:left;margin:.05rem .55rem 0 0;padding:.08rem .45rem;background:var(--track);font:800 .6rem/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#FFF1D2}
a.fign:hover{background:var(--orange-deep)}
.ch-title{font:800 .8rem/1 var(--sans);letter-spacing:.01em;fill:var(--track)}
.ch-lab{font:400 .78rem/1 var(--sans);fill:var(--ink2);text-anchor:end}
.ch-matrix svg[width^="1"] .ch-lab{font-size:1.12rem}
.ch-lab2{font:400 .82rem/1 var(--sans);fill:var(--ink2)}
.ch-col{font:700 .6rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;fill:var(--mute);text-anchor:middle}
.ch-matrix .ch-col{text-transform:none;letter-spacing:0;font-size:.7rem;font-weight:800}
.ch-matrix svg[width^="1"] .ch-col{font-size:.92rem}
.ch-matrix svg[width^="1"] .ch-title{font-size:1.15rem}
.ch-val{font:700 .74rem/1 var(--mono);fill:var(--ink);dominant-baseline:middle}
.ch-na{font:400 .7rem/1 var(--sans);fill:var(--faint);dominant-baseline:middle}
.ch-bar{fill:var(--track)}
.ch-val-in{text-anchor:end;fill:#FFFFFF}
.ch-hl .ch-bar{opacity:.25}
.ch-hl .ch-hi{opacity:1;fill:var(--orange)}
.ch-lab-hi{font-weight:700;fill:var(--ink)}
.ch-a{opacity:1}
.ch-b{opacity:.4}
.ch-keyt{font:600 .7rem/1 var(--sans);fill:var(--ink2)}
.ch-gap{fill:none;stroke:var(--rule);stroke-dasharray:4 3}
.ch-cell{fill:var(--band);stroke:none}
.ch-cell.ch-cur{fill:var(--orange-wash);stroke:var(--orange);stroke-width:1.2}
.ch-mark{stroke:var(--orange);stroke-width:1.6}
.ch-m-yes{fill:var(--orange)}
.ch-m-part{fill:none}
.ch-m-none{fill:none;stroke:var(--mute);stroke-width:1.2;opacity:.6}
.ch-half{fill:var(--orange)}
.ch-axis,.ch-drop{stroke:var(--rule-strong)}
.ch-dot{fill:var(--leaf)}
.ch-date{font:400 .7rem/1 var(--mono);fill:var(--faint);text-anchor:end}
.ch-track{fill:var(--band)}
.ch-span{fill:var(--orange)}

.fig img{display:block;width:100%;height:auto;background:var(--band)}
.fig>img,.figs img{border:1px solid var(--rule)}
.fig .credit{display:block;margin-top:.3rem;font:400 .68rem/1.4 var(--mono);color:var(--faint)}
.figs{display:grid;grid-template-columns:repeat(var(--figcols,3),1fr);gap:.5rem}
.fig-shot img{border:1px solid var(--rule-strong)}

.fig-dia{overflow-x:auto}
.fig-dia svg{display:block;width:100%;max-width:56rem;min-width:36rem;overflow:visible;height:auto;margin:0 auto}
.dg-band{fill:var(--band)}
.dg-head{font:800 10.5px/1 var(--mono);letter-spacing:.09em;text-transform:uppercase;fill:var(--orange-deep)}
.dg-box{fill:var(--orange-wash);stroke:var(--orange);stroke-width:1}
.dg-store{font:600 13px/1 var(--sans);fill:var(--ink)}
.dg-arrow{stroke:var(--track);stroke-width:1.5;fill:none}
.dg-head-tip{fill:var(--track)}
.dg-travels{font:400 10.5px/1 var(--mono);fill:var(--mute)}
.dg-bar{fill:var(--track)}
.dg-bartext{font:600 12px/1 var(--sans);fill:#FFFFFF}
.dg-rule{stroke:var(--rule);stroke-width:1}
.dg-footlab{font:700 9px/1 var(--mono);fill:var(--mute);letter-spacing:.06em;text-transform:uppercase}
.dg-after{font:400 11px/1 var(--sans);fill:var(--ink2)}

.sheet:has(.hero){--sign:clamp(300px,31vw,440px)}
main#doc>div.hero{text-align:center;margin:0 0 2rem;padding:.4rem 0 2.1rem;border-bottom:3px double var(--track)}
.hero .eyebrow{font:800 .7rem/1.4 var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--orange-deep);margin:0 0 .8rem}
.wreath{display:flex;align-items:center;justify-content:center;gap:.3rem;margin:0 auto 1.1rem}
.laurel{width:3.8rem;height:auto;flex:0 0 auto}
.laurel polyline{fill:none;stroke:var(--leaf);stroke-width:1.6;stroke-linecap:round}
.laurel ellipse{fill:var(--leaf)}
.laurel-r{transform:scaleX(-1)}
.wr-mid{margin:0;display:flex;flex-direction:column;align-items:center;gap:.45rem;min-width:8rem}
.wr-mid b{font:900 3.6rem/.9 var(--serif);color:var(--track)}
.wr-mid span{font:800 .6rem/1.35 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);max-width:11rem}
.hero h1{margin:.4rem auto 1.4rem;font-size:clamp(2rem,3.8vw,3.3rem)}
.hero .answer{margin:0 auto 1.8rem}

main#doc ul.stamps{list-style:none;padding:0;margin:0 auto;max-width:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;align-items:stretch}
ul.stamps li{margin:0;display:flex}
ul.stamps a{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.4rem;min-height:8.2rem;padding:1rem .8rem .95rem;
  background:linear-gradient(180deg,#FFF4D8,#F6E4B8);text-decoration:none;color:var(--ink2);transition:transform .25s,filter .25s;
  -webkit-mask:radial-gradient(circle 8px at 0 50%,transparent 95%,#000) 0 0/51% 100% no-repeat,radial-gradient(circle 8px at 100% 50%,transparent 95%,#000) 100% 0/51% 100% no-repeat;
          mask:radial-gradient(circle 8px at 0 50%,transparent 95%,#000) 0 0/51% 100% no-repeat,radial-gradient(circle 8px at 100% 50%,transparent 95%,#000) 100% 0/51% 100% no-repeat}
ul.stamps a::before{content:"";position:absolute;left:10px;right:10px;top:4.1rem;border-top:2px dashed rgba(90,20,36,.3)}
ul.stamps b{font:900 2.4rem/1 var(--serif);color:var(--track);height:2.9rem;display:flex;align-items:center}
ul.stamps span{font:600 .74rem/1.35 var(--sans);letter-spacing:.02em;color:var(--ink2);max-width:10rem;padding-top:.45rem}
ul.stamps a:hover{transform:translateY(-3px) rotate(-.6deg);filter:drop-shadow(0 10px 12px rgba(74,20,32,.3))}

main#doc>ol.season{list-style:none;padding:0;margin:1.3rem 0 2rem;max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.9rem}
ol.season>li{margin:0;background:var(--paper);border:1px solid var(--rule);position:relative;padding-top:0;box-shadow:0 3px 0 var(--band)}
ol.season>li::before,ol.season>li::after{content:"";position:absolute;top:-.45rem;width:.5rem;height:.9rem;border:2px solid var(--ink2);border-radius:999px;background:var(--paper)}
ol.season>li::before{left:28%}
ol.season>li::after{right:28%}
ol.season .mo{margin:0;padding:.6rem .8rem .5rem;background:var(--track);color:#F6E9C9;font:500 .72rem/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
ol.season .mo b{font:italic 700 1.1rem/1 var(--serif);letter-spacing:0;text-transform:none;color:#FFFFFF;margin-right:.25rem}
ol.season ul{list-style:none;margin:0;padding:.5rem .8rem .65rem}
ol.season ul li{display:grid;grid-template-columns:1.9rem minmax(0,1fr);column-gap:.4rem;margin:.3rem 0;font-size:.82rem;line-height:1.35}
ol.season .dd{grid-row:span 2;font:italic 800 1.35rem/1 var(--serif);color:var(--orange-deep);text-align:right}
ol.season ul a{font-weight:650;color:var(--ink);text-decoration:none}
ol.season ul a:hover{color:var(--track);text-decoration:underline}
ol.season .ww{color:var(--mute);font-size:.76rem}
ol.season .empty{background:var(--panel)}
ol.season .none{margin:0;padding:.7rem .8rem;font:italic 400 .82rem/1.3 var(--serif);color:var(--mute)}

main#doc>ul.lineup{list-style:none;padding:0;margin:1.3rem 0 2rem;max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(14.5rem,1fr));gap:.9rem}
ul.lineup li{margin:0}
ul.lineup a{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%;padding:1.15rem .9rem .9rem;background:#FFFDF7;border:1px solid var(--rule);text-decoration:none;position:relative;transition:transform .25s,box-shadow .25s,border-color .25s}
ul.lineup a::before{content:"";width:2.6rem;height:1.1rem;margin-bottom:.45rem;
  background:radial-gradient(ellipse .42rem .2rem at 30% 55%,var(--leaf) 98%,transparent),radial-gradient(ellipse .42rem .2rem at 70% 55%,var(--leaf) 98%,transparent),radial-gradient(circle .22rem at 50% 50%,var(--orange) 98%,transparent)}
ul.lineup a:hover{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 16px 26px -18px rgba(74,20,32,.55);transform:translateY(-3px)}
ul.lineup .kd{font:700 .6rem/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--orange-deep)}
ul.lineup .nm{font:italic 700 1.15rem/1.2 var(--serif);color:var(--track);margin:.25rem 0 .3rem}
ul.lineup .ds{font-size:.8rem;line-height:1.4;color:var(--ink2);flex:1 1 auto}
ul.lineup .pips{display:flex;gap:.22rem;margin:.7rem 0 .55rem}
ul.lineup .pips i{display:flex;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;border-radius:50%;font-style:normal}
ul.lineup .pips i b{font:700 .5rem/1 var(--mono);letter-spacing:.02em}
ul.lineup .pips .on{background:var(--gold);color:var(--track);box-shadow:0 0 8px rgba(227,178,79,.7)}
ul.lineup .pips .off{border:1px dashed var(--rule);color:var(--mute)}
ul.lineup .st{font:700 .64rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:.4rem .6rem 0;border-top:1px solid var(--band);width:100%}
ul.lineup .st-open{color:var(--leaf)}
ul.lineup .st-soon{color:var(--orange-deep)}
ul.lineup .st-shut,ul.lineup .st-none{color:var(--mute)}

.site-foot{position:relative;background:var(--night);color:#F1E6D0;margin-top:2rem;border-top:1px solid rgba(227,178,79,.35)}
.site-foot::before{content:"";display:block;height:18px;background:radial-gradient(circle at 9px 9px,#FFF3CC 0 2px,#FFC857 3.5px,rgba(255,176,59,.35) 5.5px,transparent 7.5px) 0 0/18px 18px repeat-x,#0E0206;border-bottom:1px solid rgba(227,178,79,.25)}
.sf{max-width:var(--frame);margin:0 auto;padding:2.4rem var(--pad) 1.4rem}
.sf-id{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem}
.sf-id .mark svg{width:1.7rem;height:1.7rem;color:var(--gold)}
.sf-name{font:italic 700 1.3rem/1 var(--serif);color:#FFFFFF}
.sf-note{font-size:.86rem;color:#D9C7B8;max-width:44rem;margin:0 0 1.5rem}
.sf-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:1.3rem;align-items:start}
.sfc ul{list-style:none;margin:0;padding:0}
.sfc li{margin:.2rem 0;font-size:.82rem}
.sfc a{color:#F1E6D0;transition:color .2s}
.sfc a:hover{color:var(--gold-lite);text-decoration:underline}
.sfh{display:block;font:700 .66rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0 0 .55rem}
details.sfc>summary.sfh{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:.4rem}
details.sfc>summary.sfh::-webkit-details-marker{display:none}
details.sfc>summary.sfh::after{content:"+";margin-left:auto;font-weight:700;opacity:.7}
details.sfc[open]>summary.sfh::after{content:"\2212"}
.sfh .sfn{font-weight:400;opacity:.65}
details.sfc[open]{grid-column:1/-1}
details.sfc[open]>ul{columns:4 11rem;column-gap:1.6rem}
details.sfc[open]>ul li{break-inside:avoid}
.sf-bar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;border-top:1px solid rgba(227,178,79,.22);margin-top:1.7rem;padding-top:.95rem;font:400 .72rem/1.4 var(--mono);color:#D0BCAE}
.sf-bar .stamp{color:#87776C}
.sf-dom{font-family:var(--mono)}

h2:target,li.fact:target{background-color:var(--orange-wash)}
h2:target{color:var(--track)}
a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

@keyframes signon{0%{filter:brightness(.25) saturate(.6)}40%{filter:brightness(.5)}100%{filter:none}}
@keyframes bulbson{0%{opacity:.3}25%{opacity:.85}50%{opacity:.4}100%{opacity:1}}
@keyframes chase{50%{background-position:var(--t) 0,var(--t) 0,calc(var(--t)*-1) 100%,calc(var(--t)*-1) 100%,0 calc(var(--t)*-1),0 calc(var(--t)*-1),100% var(--t),100% var(--t)}}
@keyframes rise{from{transform:translateY(10px)}to{transform:none}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

@media (max-width:60rem){
  .sheet{grid-template-columns:minmax(0,1fr);gap:0}
  .column{grid-row:2}
  .rail{grid-row:3;grid-column:1;position:static;margin-top:1.4rem}
  main#doc{padding:2.2rem 1.6rem 2.2rem}
  main#doc ul.stamps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:40rem){
  main#doc{padding:1.8rem 1.1rem 1.9rem;box-shadow:inset 0 0 0 7px var(--paper),inset 0 0 0 8px var(--track),inset 0 0 0 10px var(--paper),inset 0 0 0 11px var(--track),0 30px 50px -30px rgba(0,0,0,.85)}
  h1{padding:.45rem .8rem .4rem;box-shadow:0 0 0 2px var(--gold),0 0 0 6px #2A0810,0 0 24px 2px rgba(255,214,140,.4)}
  h2{font-size:.82rem;letter-spacing:.1em;padding:.5rem .7rem .48rem .5rem}
  h2 .secno{width:1.8rem;height:1.8rem;font-size:.9rem}
  .chart,.fig-dia{overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),rgba(0,0,0,.15));mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),rgba(0,0,0,.15))}
  .chart figcaption,.fig-dia figcaption{padding-right:1.4rem}
  .ch-matrix svg{min-width:44rem}
  .ch-bars svg,.ch-timeline svg{min-width:34rem}
  .fig-dia svg{min-width:40rem}
  
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) table,.tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) tbody,.tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) tr,.tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) td{display:block}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) caption{display:block}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) thead{display:none}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) tr{padding:.7rem .85rem;border-bottom:1px solid var(--band)}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) td{padding:.1rem 0;border:0}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) td:first-child{font-weight:800;color:var(--track);margin-bottom:.15rem}
  .tablewrap:has(th:nth-child(3)):not(:has(th:nth-child(5))) td:not(:first-child):not(:last-child){display:inline-block;margin:0 .3rem .3rem 0;padding:.1rem .5rem;background:var(--orange-wash);font-size:.8rem;font-weight:650}
}

@media (max-width:48rem){
  :root{--t:18px}
  .mh{flex-direction:row;flex-wrap:wrap;justify-content:space-between;text-align:left;padding:.6rem .9rem .55rem;gap:.35rem}
  .brand{font-size:1.1rem;letter-spacing:.04em}
  .mark svg{width:1.3rem;height:1.3rem}
  .mh-tag{display:none}
  .mh-nav{justify-content:flex-start;gap:0;font-size:.62rem;letter-spacing:.04em;margin-top:0}
  .mh-nav a{padding:.28rem .34rem}
  .mh-nav a+a::before{display:none}
  .sheet{padding:1rem .7rem 2rem;--sign:150px}
  .sheet:has(.hero){--sign:210px}
  .sheet::before,.sheet::after{margin-bottom:1.3rem;border-radius:12px}
  h1{font-size:1.45rem}
  .hero h1{font-size:1.6rem}
  .answer{font-size:1.06rem}
  blockquote{font-size:1.08rem}
  main#doc>div.hero{padding:.2rem 0 1.4rem}
  .wr-mid b{font-size:2.8rem}
  .laurel{width:2.8rem}
  ul.stamps a{min-height:7.4rem}
  ul.stamps b{font-size:2rem}
}
