/* Guglielmo's Sauce preview, v2 ("Sunday table, many rooms"). One stylesheet for every page.
   Identity: tomato red, basil green, cream. Display: DM Serif Display. Text: Source Sans 3. */
:root{
  --paper:#FBF5E9;--paper-2:#F2E8D3;--card:#FFFFFF;--chip:#EADFC6;
  --ink:#2B211B;--ink-soft:#5E5148;
  --tomato:#B3261E;--on-tomato:#FFFFFF;--basil:#2F5D3A;
  --header:#1F3D2B;--on-header:#FFFFFF;--pill:#FBF5E9;--on-pill:#1F3D2B;--focus-on-header:#FBF5E9;
  --kraft:#C9A57A;--on-kraft:#2B211B;--line:#E3D6BC;--shadow:rgba(43,33,27,.16);
  --tri-green:#009246;--tri-white:#FFFFFF;--tri-red:#CE2B37;
  --band-tomato:#B3261E;--on-band-tomato:#FFFFFF;
  --band-basil:#2F5D3A;--on-band-basil:#FBF5E9;--eyebrow-on-basil:#D8EBDC;
  --band-night:#1B1511;--on-night:#F4EBDD;--soft-on-night:#BFB2A2;--link-on-night:#F4735F;
  --note:#FFFBEC;--note-ink:#2B211B;--band-border:transparent;
  /* per-band roles (bands override these) */
  --fg:var(--ink);--soft:var(--ink-soft);--acc:var(--tomato);--lnk:var(--tomato);--focus:var(--tomato);
  --btn-bg:var(--tomato);--btn-fg:var(--on-tomato);--btn-o:var(--tomato);--rule:var(--line);
  --font-display:'DM Serif Display',Georgia,'Times New Roman',serif;
  --font-body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-hand:'Homemade Apple',cursive;
  --max:1180px;--gutter:16px;--header-h:56px;--measure:62ch;
  --bleed:calc(max(0px,(100vw - var(--max)) / 2) + var(--gutter));
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#1E1913;--paper-2:#30251B;--card:#382C21;--chip:#463829;
  --ink:#F4EBDD;--ink-soft:#BFB2A2;--tomato:#F4735F;--on-tomato:#17130F;--basil:#8FCB9B;
  --header:#10261A;--pill:#F4EBDD;--on-pill:#10261A;--focus-on-header:#F4735F;
  --line:#4A3C2E;--shadow:rgba(0,0,0,.55);
  --band-tomato:#6E1A14;--on-band-tomato:#F4EBDD;--band-basil:#1F3D2B;--on-band-basil:#F4EBDD;
  --band-night:#080605;--note:#3A2E20;--note-ink:#F4EBDD;--band-border:transparent;color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#1E1913;--paper-2:#30251B;--card:#382C21;--chip:#463829;
  --ink:#F4EBDD;--ink-soft:#BFB2A2;--tomato:#F4735F;--on-tomato:#17130F;--basil:#8FCB9B;
  --header:#10261A;--pill:#F4EBDD;--on-pill:#10261A;--focus-on-header:#F4735F;
  --line:#4A3C2E;--shadow:rgba(0,0,0,.55);
  --band-tomato:#6E1A14;--on-band-tomato:#F4EBDD;--band-basil:#1F3D2B;--on-band-basil:#F4EBDD;
  --band-night:#080605;--note:#3A2E20;--note-ink:#F4EBDD;--band-border:transparent;color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 19px/1.6 var(--font-body);font-synthesis:none}
@media(min-width:960px){body{font-size:20px;line-height:1.65}}
img,video{max-width:100%;display:block}
img{height:auto}
a{color:var(--lnk);text-underline-offset:4px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
p{margin:0 0 1em;max-width:var(--measure)}
ul,ol{margin:0;padding:0}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;font-synthesis:none;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(40px,29.3px + 2.96vw,72px);line-height:1.04}
h2{font-size:clamp(30px,22.7px + 2.04vw,52px);line-height:1.1}
h3{font-size:clamp(26px,24.6px + .4vw,30px);line-height:1.2}
h4{font:700 18px/1.3 var(--font-body);margin:20px 0 6px}
.display{font-size:clamp(46px,29.3px + 4.63vw,96px);line-height:1.02}
.lead{font-size:clamp(22px,20.2px + .5vw,26px);line-height:1.45;max-width:36em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:60}
.skip:focus{left:8px;background:var(--paper);color:var(--ink);padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;border-radius:8px;outline:3px solid var(--tomato)}
.eyebrow{font:700 14px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--acc);margin:0 0 12px;max-width:none}
@media(min-width:960px){.eyebrow{font-size:15px}}
.eyebrow small{display:block;margin-top:4px;font:400 14px/1.4 var(--font-body);letter-spacing:0;text-transform:none;color:var(--soft)}
.it{font:italic 400 1.1em var(--font-display);color:var(--acc);letter-spacing:0;text-transform:none}
.tr{font:400 14px/1.45 var(--font-body);color:var(--soft);letter-spacing:0;text-transform:none}
.it-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:0 0 12px;max-width:none}

/* ---------- grid, bands, tempos ---------- */
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px))}
.g12{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px}
.g12>*{grid-column:1/-1;min-width:0}
@media(min-width:600px){:root{--gutter:24px}.g12{grid-template-columns:repeat(8,minmax(0,1fr));column-gap:20px}}
@media(min-width:960px){:root{--gutter:32px;--header-h:68px}.g12{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}}
.bleed-r{margin-right:calc(-1 * var(--bleed))}
.bleed-l{margin-left:calc(-1 * var(--bleed))}
.bleed-full{margin-inline:calc(-1 * var(--bleed))}
.sec{position:relative;padding-block:var(--pad,64px);overflow-x:clip}
.t-tight{--pad:40px}.t-normal{--pad:64px}.t-airy{--pad:88px}
@media(min-width:960px){.t-tight{--pad:56px}.t-normal{--pad:96px}.t-airy{--pad:144px}}
.b-p2{background:var(--paper-2)}
.b-tomato,.b-basil,.b-night{border-block:1px solid var(--band-border)}
.b-tomato{background:var(--band-tomato);color:var(--on-band-tomato);--fg:var(--on-band-tomato);--soft:var(--on-band-tomato);--acc:var(--on-band-tomato);--lnk:var(--on-band-tomato);
  --focus:var(--on-band-tomato);--btn-bg:var(--on-band-tomato);--btn-fg:var(--band-tomato);--btn-o:var(--on-band-tomato);--rule:rgba(255,255,255,.55)}
.b-basil{background:var(--band-basil);color:var(--on-band-basil);--fg:var(--on-band-basil);--soft:var(--eyebrow-on-basil);--acc:var(--eyebrow-on-basil);--lnk:var(--on-band-basil);
  --focus:var(--on-band-basil);--btn-bg:var(--on-band-basil);--btn-fg:var(--header);--btn-o:var(--on-band-basil);--rule:rgba(255,255,255,.35)}
.b-night{background:var(--band-night);color:var(--on-night);--fg:var(--on-night);--soft:var(--soft-on-night);--acc:var(--link-on-night);--lnk:var(--link-on-night);
  --focus:var(--link-on-night);--btn-bg:var(--on-night);--btn-fg:var(--band-night);--btn-o:var(--on-night);--rule:rgba(244,235,221,.3)}

/* ---------- header and footer ---------- */
header.site{position:sticky;top:0;z-index:40;background:var(--header);color:var(--on-header);--focus:var(--focus-on-header);--lnk:var(--on-header)}
.bar{display:flex;align-items:center;gap:16px;height:var(--header-h)}
.logo{display:flex;align-items:center;min-height:44px}
.logo img{height:34px;width:auto}
@media(min-width:960px){.logo img{height:44px}}
.nav-wrap{display:contents}
.nav-main{display:none;list-style:none;margin:0 0 0 auto;padding:0;gap:26px;align-items:center}
.nav-main a,.sheet a{color:var(--on-header);text-decoration:none;font:600 17px/1 var(--font-body);display:inline-flex;align-items:center;min-height:44px}
.nav-main a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.nav-main a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px;font-weight:700}
.nav-main .pill{background:var(--pill);color:var(--on-pill);border-radius:999px;padding:0 20px;text-decoration:none}
.nav-main .pill:hover{text-decoration:none;transform:translateY(-1px)}
.menu{margin-left:auto;background:none;border:2px solid var(--on-header);color:var(--on-header);border-radius:999px;font:600 17px var(--font-body);padding:0 20px;min-height:44px;cursor:pointer}
.sheet{display:none;background:var(--header);border-top:1px solid rgba(255,255,255,.2);max-height:calc(100vh - var(--header-h) - 8px);overflow-y:auto}
.sheet.open{display:block}
.sheet ul{list-style:none;padding:8px 0 4px}
.sheet-tools{padding:12px 0 20px}
.sheet a{display:flex;font-size:20px;min-height:52px;width:100%;border-bottom:1px solid rgba(255,255,255,.14);padding-left:4px}
.sheet a[aria-current="page"]{border-left:4px solid var(--on-header);padding-left:12px;font-weight:700}
@media(min-width:960px){.nav-main{display:flex}.menu,.sheet{display:none!important}}
.rule{height:1px;background:rgba(251,245,233,.12)}

footer.site::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--tri-green) 0 33.34%,var(--tri-white) 33.34% 66.67%,var(--tri-red) 66.67% 100%)}
footer.site{position:relative;background:var(--header);color:var(--on-header);--focus:var(--focus-on-header);--lnk:var(--on-header);--soft:var(--on-header);padding-block:48px 32px;font-size:17px;line-height:1.5}
.foot-grid{display:grid;gap:32px}
@media(min-width:960px){.foot-grid{grid-template-columns:1.2fr 1fr 1.2fr;gap:48px}}
footer.site p{margin:0 0 4px}
footer.site ul{list-style:none}
footer.site li a{color:var(--on-header);display:inline-flex;align-items:center;min-height:44px;font-weight:600}
footer.site a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px;font-weight:700}
footer .flogo{height:40px;width:auto;margin-bottom:12px}
.f-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.fbtn{background:none;border:2px solid var(--on-header);color:var(--on-header);border-radius:999px;min-height:44px;padding:0 20px;font:600 16px var(--font-body);cursor:pointer}
.fbtn[aria-pressed="true"]{background:var(--on-header);color:var(--header)}
.foot-base{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}
.foot-base p{margin:0;font-size:14px;line-height:1.5;max-width:none}
.foot-base a{color:var(--on-header);display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:16px}
.tag{display:inline-block;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:2px 12px;font:600 14px var(--font-body);letter-spacing:.08em;text-transform:uppercase}

/* ---------- buttons and links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 26px;border-radius:999px;font:600 18px/1.2 var(--font-body);text-decoration:none;border:2px solid transparent;cursor:pointer;text-align:center;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:scale(.98)}
.btn.p{background:var(--btn-bg);color:var(--btn-fg);border-color:var(--btn-bg)}
.btn.o{background:transparent;color:var(--btn-o);border-color:var(--btn-o)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.btn-row.stack{flex-direction:column}
@media(min-width:600px){.btn-row.stack{flex-direction:row}}
.link-arrow{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:600 18px/1.3 var(--font-body);color:var(--lnk)}
.link-arrow::after{content:"\2192";content:"\2192" / "";transition:transform .2s;display:inline-block}
.link-arrow:hover::after{transform:translateX(4px)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 24px;margin-bottom:32px}
.sec-head h2{margin:0}

/* ---------- pull quotes ---------- */
.pull{margin:0;position:relative}
.pull .qmark{display:block;font:400 120px/1 var(--font-display);color:var(--acc);height:64px;overflow:visible;margin-left:-6px}
.pull p{font:italic 400 clamp(30px,21.2px + 2.6vw,64px)/1.08 var(--font-display);margin:0 0 .45em;max-width:16em;text-wrap:balance}
.pull footer{font:700 14px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.pull cite{font-style:normal}
.pull.display p{font-size:clamp(40px,24px + 4.4vw,88px);line-height:1.04;max-width:14em;margin-inline:auto}
.pull.plain{margin:0}
.pull.center{text-align:center}
.nowrap{white-space:nowrap}
.pull.center .qmark{margin-inline:auto}

/* ---------- photos, credits, stamps ---------- */
.photo{position:relative;margin:0}
.photo img{width:100%;object-fit:cover}
.credit{position:absolute;left:6px;bottom:6px;max-width:calc(100% - 12px);background:rgba(251,245,233,.92);color:#2B211B;border-radius:999px;padding:3px 12px;font:400 14px/1.4 var(--font-body);z-index:2}
:root[data-theme="dark"] .credit{background:rgba(35,28,22,.92);color:#F4EBDD}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .credit{background:rgba(35,28,22,.92);color:#F4EBDD}}
.credit.r{left:auto;right:6px}
.chip{display:inline-block;background:var(--chip);color:var(--ink);border-radius:999px;padding:3px 14px;font:600 16px/1.5 var(--font-body)}
.chips{list-style:none;display:flex;flex-wrap:wrap;margin:0 0 12px;padding:0}
.chips li{font:600 14px/1.6 var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.chips li+li::before{content:"\00b7";content:"\00b7" / "";margin:0 .7em}
.chips li.aside{flex-basis:100%;text-transform:none;letter-spacing:0;font:italic 400 14px/1.4 var(--font-body)}
.chips li.aside::before{content:none}
.chips li.pw{flex-basis:100%;margin-top:6px;font:italic 400 21px/1.25 var(--font-display);letter-spacing:0;text-transform:none;color:var(--acc)}
.chips li.pw::before{content:none}
.stamp-wrap{filter:drop-shadow(0 3px 5px var(--shadow));display:inline-block}
.stamp{position:relative;width:104px;height:130px;background:var(--card);color:var(--ink);
  clip-path:polygon(0px 0px,2.5px 0px,2.8px 1.5px,3.7px 2.8px,5px 3.7px,6.5px 4px,8px 3.7px,9.3px 2.8px,10.2px 1.5px,10.5px 0px,15.5px 0px,15.8px 1.5px,16.7px 2.8px,18px 3.7px,19.5px 4px,21px 3.7px,22.3px 2.8px,23.2px 1.5px,23.5px 0px,28.5px 0px,28.8px 1.5px,29.7px 2.8px,31px 3.7px,32.5px 4px,34px 3.7px,35.3px 2.8px,36.2px 1.5px,36.5px 0px,41.5px 0px,41.8px 1.5px,42.7px 2.8px,44px 3.7px,45.5px 4px,47px 3.7px,48.3px 2.8px,49.2px 1.5px,49.5px 0px,54.5px 0px,54.8px 1.5px,55.7px 2.8px,57px 3.7px,58.5px 4px,60px 3.7px,61.3px 2.8px,62.2px 1.5px,62.5px 0px,67.5px 0px,67.8px 1.5px,68.7px 2.8px,70px 3.7px,71.5px 4px,73px 3.7px,74.3px 2.8px,75.2px 1.5px,75.5px 0px,80.5px 0px,80.8px 1.5px,81.7px 2.8px,83px 3.7px,84.5px 4px,86px 3.7px,87.3px 2.8px,88.2px 1.5px,88.5px 0px,93.5px 0px,93.8px 1.5px,94.7px 2.8px,96px 3.7px,97.5px 4px,99px 3.7px,100.3px 2.8px,101.2px 1.5px,101.5px 0px,104px 0px,104px 2.5px,102.5px 2.8px,101.2px 3.7px,100.3px 5px,100px 6.5px,100.3px 8px,101.2px 9.3px,102.5px 10.2px,104px 10.5px,104px 15.5px,102.5px 15.8px,101.2px 16.7px,100.3px 18px,100px 19.5px,100.3px 21px,101.2px 22.3px,102.5px 23.2px,104px 23.5px,104px 28.5px,102.5px 28.8px,101.2px 29.7px,100.3px 31px,100px 32.5px,100.3px 34px,101.2px 35.3px,102.5px 36.2px,104px 36.5px,104px 41.5px,102.5px 41.8px,101.2px 42.7px,100.3px 44px,100px 45.5px,100.3px 47px,101.2px 48.3px,102.5px 49.2px,104px 49.5px,104px 54.5px,102.5px 54.8px,101.2px 55.7px,100.3px 57px,100px 58.5px,100.3px 60px,101.2px 61.3px,102.5px 62.2px,104px 62.5px,104px 67.5px,102.5px 67.8px,101.2px 68.7px,100.3px 70px,100px 71.5px,100.3px 73px,101.2px 74.3px,102.5px 75.2px,104px 75.5px,104px 80.5px,102.5px 80.8px,101.2px 81.7px,100.3px 83px,100px 84.5px,100.3px 86px,101.2px 87.3px,102.5px 88.2px,104px 88.5px,104px 93.5px,102.5px 93.8px,101.2px 94.7px,100.3px 96px,100px 97.5px,100.3px 99px,101.2px 100.3px,102.5px 101.2px,104px 101.5px,104px 106.5px,102.5px 106.8px,101.2px 107.7px,100.3px 109px,100px 110.5px,100.3px 112px,101.2px 113.3px,102.5px 114.2px,104px 114.5px,104px 119.5px,102.5px 119.8px,101.2px 120.7px,100.3px 122px,100px 123.5px,100.3px 125px,101.2px 126.3px,102.5px 127.2px,104px 127.5px,104px 130px,101.5px 130px,101.2px 128.5px,100.3px 127.2px,99px 126.3px,97.5px 126px,96px 126.3px,94.7px 127.2px,93.8px 128.5px,93.5px 130px,88.5px 130px,88.2px 128.5px,87.3px 127.2px,86px 126.3px,84.5px 126px,83px 126.3px,81.7px 127.2px,80.8px 128.5px,80.5px 130px,75.5px 130px,75.2px 128.5px,74.3px 127.2px,73px 126.3px,71.5px 126px,70px 126.3px,68.7px 127.2px,67.8px 128.5px,67.5px 130px,62.5px 130px,62.2px 128.5px,61.3px 127.2px,60px 126.3px,58.5px 126px,57px 126.3px,55.7px 127.2px,54.8px 128.5px,54.5px 130px,49.5px 130px,49.2px 128.5px,48.3px 127.2px,47px 126.3px,45.5px 126px,44px 126.3px,42.7px 127.2px,41.8px 128.5px,41.5px 130px,36.5px 130px,36.2px 128.5px,35.3px 127.2px,34px 126.3px,32.5px 126px,31px 126.3px,29.7px 127.2px,28.8px 128.5px,28.5px 130px,23.5px 130px,23.2px 128.5px,22.3px 127.2px,21px 126.3px,19.5px 126px,18px 126.3px,16.7px 127.2px,15.8px 128.5px,15.5px 130px,10.5px 130px,10.2px 128.5px,9.3px 127.2px,8px 126.3px,6.5px 126px,5px 126.3px,3.7px 127.2px,2.8px 128.5px,2.5px 130px,0px 130px,0px 127.5px,1.5px 127.2px,2.8px 126.3px,3.7px 125px,4px 123.5px,3.7px 122px,2.8px 120.7px,1.5px 119.8px,0px 119.5px,0px 114.5px,1.5px 114.2px,2.8px 113.3px,3.7px 112px,4px 110.5px,3.7px 109px,2.8px 107.7px,1.5px 106.8px,0px 106.5px,0px 101.5px,1.5px 101.2px,2.8px 100.3px,3.7px 99px,4px 97.5px,3.7px 96px,2.8px 94.7px,1.5px 93.8px,0px 93.5px,0px 88.5px,1.5px 88.2px,2.8px 87.3px,3.7px 86px,4px 84.5px,3.7px 83px,2.8px 81.7px,1.5px 80.8px,0px 80.5px,0px 75.5px,1.5px 75.2px,2.8px 74.3px,3.7px 73px,4px 71.5px,3.7px 70px,2.8px 68.7px,1.5px 67.8px,0px 67.5px,0px 62.5px,1.5px 62.2px,2.8px 61.3px,3.7px 60px,4px 58.5px,3.7px 57px,2.8px 55.7px,1.5px 54.8px,0px 54.5px,0px 49.5px,1.5px 49.2px,2.8px 48.3px,3.7px 47px,4px 45.5px,3.7px 44px,2.8px 42.7px,1.5px 41.8px,0px 41.5px,0px 36.5px,1.5px 36.2px,2.8px 35.3px,3.7px 34px,4px 32.5px,3.7px 31px,2.8px 29.7px,1.5px 28.8px,0px 28.5px,0px 23.5px,1.5px 23.2px,2.8px 22.3px,3.7px 21px,4px 19.5px,3.7px 18px,2.8px 16.7px,1.5px 15.8px,0px 15.5px,0px 10.5px,1.5px 10.2px,2.8px 9.3px,3.7px 8px,4px 6.5px,3.7px 5px,2.8px 3.7px,1.5px 2.8px,0px 2.5px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;line-height:1}
.stamp::before{content:"";position:absolute;inset:9px;border:2px solid var(--tomato);pointer-events:none}
.stamp .st-top{font:700 14px/1.1 var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.stamp .st-big{font:400 29px/1.1 var(--font-display);color:var(--tomato);margin-top:6px}

/* ---------- motion frames ---------- */
.vwrap{position:relative}
.vframe{position:absolute;inset:0;overflow:hidden;background:var(--kraft);border-radius:inherit}
.vposter,.vframe video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vframe video{opacity:0;transition:opacity .2s}
.vframe video.on{opacity:1}
.pausebtn{position:absolute;right:12px;bottom:12px;width:44px;height:44px;border-radius:50%;border:2px solid #2B211B;background:rgba(251,245,233,.94);color:#2B211B;display:grid;place-items:center;cursor:pointer;padding:0;z-index:3;--focus:var(--tomato)}
:root[data-theme="dark"] .pausebtn{background:rgba(35,28,22,.94);color:#F4EBDD;border-color:#F4EBDD}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pausebtn{background:rgba(35,28,22,.94);color:#F4EBDD;border-color:#F4EBDD}}
.pausebtn svg{width:16px;height:16px;fill:currentColor}
.pausebtn .i-play{display:none}
.pausebtn[aria-pressed="true"] .i-play{display:block}
.pausebtn[aria-pressed="true"] .i-pause{display:none}

/* =================== HOME =================== */
.hero{padding-top:40px;padding-bottom:56px}
.hero-grid{row-gap:0}
.hero-text>*,.hero-media>*{grid-column:1/-1}
.hero-text,.hero-media{display:contents}
.hero .eyebrow{order:1;margin-bottom:14px}
.hero h1{order:2;margin:0 0 24px}
.hero h1 em{color:var(--tomato);font-style:italic}
.hero-photo{order:3;aspect-ratio:4/3;margin-inline:calc(-1 * var(--bleed))}
.hero-photo img{height:100%;object-position:62% 50%}
.hero .btn-row{order:5;margin-top:28px}
.sunday-line{order:6;margin:16px 0 0}
.sunday-line:empty{display:none}
.arch{display:none;order:7;position:relative;width:160px;height:200px;margin:36px 0 0;border:10px solid var(--paper);border-radius:999px 999px 12px 12px;background:var(--paper);box-shadow:0 10px 26px var(--shadow)}
.arch .vwrap{position:absolute;inset:0;border-radius:inherit}
.arch .pausebtn{right:8px;bottom:8px}
@media(min-width:600px){.hero-photo{aspect-ratio:5/4}.hero .btn-row{margin-top:32px}}
@media(min-width:700px){.arch{display:block}}
@media(min-width:960px){
  .hero{padding:0;min-height:min(88vh,820px)}
  .hero-grid{min-height:min(88vh,820px);align-items:stretch}
  .hero-text{display:flex;flex-direction:column;align-items:flex-start;grid-column:1/7;grid-row:1;position:relative;z-index:3;padding:88px 24px 72px 0}
  .hero-text>*{grid-column:auto}
  .hero-media{display:block;position:relative;grid-column:7/13;grid-row:1;margin-right:calc(-1 * var(--bleed))}
  .hero-photo{position:absolute;inset:0;margin:0;aspect-ratio:auto}
  .hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%}
  .hero .eyebrow{max-width:30em}
  .hero h1{font-size:clamp(52px,5.6vw,80px);margin-bottom:36px}
  .arch{width:240px;height:300px;margin-top:48px}
}
.dates-list{list-style:none;display:grid;gap:0}
.dates-list li{display:grid;grid-template-columns:42% 1fr;gap:4px 16px;align-items:center;padding:14px 0;border-top:1px solid var(--rule)}
.dates-list li:last-child{border-bottom:1px solid var(--rule)}
.d-num{font:400 clamp(52px,15vw,72px)/1 var(--font-display)}
.d-lab{font-size:20px;line-height:1.3}
.d-lab .tr{display:block;margin-top:4px}
.dates .link-arrow{margin-top:20px}
@media(min-width:960px){
  .dates-list{grid-template-columns:repeat(3,1fr);gap:32px;align-items:start}
  .dates-list li{display:block;border:0;border-top:2px solid var(--fg);padding:16px 0 0}
  .dates-list li:last-child{border-bottom:0}
  .dates-list li:nth-child(2){margin-top:40px}.dates-list li:nth-child(3){margin-top:80px}
  .d-num{display:block;font-size:96px;margin-bottom:8px}
  .dates .more{display:flex;justify-content:flex-end;margin-top:0}
}
.spread{padding-bottom:calc(var(--pad) + 40px)}
.spread-grid{row-gap:24px}
.sp-photo{margin:8px calc(-1 * var(--bleed)) 0}
.sp-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.sp-pull .eyebrow{margin-bottom:20px}
.sp-body .btn-row{margin-top:24px}
@media(min-width:600px){.sp-photo{margin-inline:0;max-width:540px}}
@media(min-width:960px){
  .spread{padding-bottom:calc(var(--pad) + 110px)}
  .sp-photo{grid-column:1/6;grid-row:1/3;margin:48px 0 0;max-width:540px;align-self:start}
  .sp-photo img{border-radius:6px;box-shadow:0 10px 28px var(--shadow)}
  .sp-pull{grid-column:6/13;grid-row:1}
  .sp-body{grid-column:6/13;grid-row:2}
}
.sauces-sec{padding-bottom:88px}
.jar-grid{row-gap:28px;align-items:start}
.jar-photo{margin:0;width:min(72%,300px)}
.jar-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.35)}
.jar-labels{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}
.jar-labels h3{font-size:28px;margin:0 0 6px;color:var(--fg)}
.jar-labels p{font-size:17px;line-height:1.45;margin:0;color:var(--fg)}
.jar-labels p em{font-size:15px;color:var(--soft)}
.jar-head .link-arrow{margin-top:20px}
@media(min-width:960px){
  .sauces-sec{padding-block:112px}
  .jar-head{grid-column:6/13;grid-row:1}
  .jar-photo{grid-column:1/6;grid-row:1/3;width:auto;max-width:420px;align-self:center}
  .jar-labels{grid-column:6/13;grid-row:2;gap:36px 32px}
  .jar-labels h3{font-size:30px}
}
.bento{display:grid;gap:40px 24px;grid-template-columns:1fr}
@media(min-width:960px){.bento{grid-template-columns:7fr 5fr;gap:48px;align-items:stretch}}
.minis{display:grid;grid-auto-rows:auto;align-content:space-between;gap:0}
.mini{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;border-top:1px solid var(--ink-soft);padding:24px 0;min-width:0}
.mini:last-child{border-bottom:1px solid var(--ink-soft)}
.mini-img{position:relative;aspect-ratio:1/1;border-radius:8px;overflow:hidden;align-self:start;background:var(--kraft)}
.mini-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mini-body{display:flex;flex-direction:column;min-width:0}
.mini h3{font-size:26px;margin:0 0 6px}
.mini p{font-size:17px;line-height:1.5;margin:0 0 8px}
.mini .credit-line{font-size:14px;color:var(--ink-soft)}
.mini .actions{margin-top:0}
.mini-body .link-arrow{margin-top:16px}
@media(min-width:600px){.mini{grid-template-columns:140px minmax(0,1fr)}}
@media(min-width:960px){.mini{grid-template-columns:176px minmax(0,1fr);gap:24px}}

/* cards (recipes, bento, videos) */
.cards{display:grid;gap:48px 24px;grid-template-columns:1fr;list-style:none;margin:0;padding:0;align-items:stretch}
@media(min-width:600px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.cards{grid-template-columns:repeat(3,1fr)}}
.cards>li{display:flex;min-width:0}
.card{display:flex;flex-direction:column;flex:1;min-width:0;background:var(--card);color:var(--ink);--fg:var(--ink);--soft:var(--ink-soft);--acc:var(--tomato);--lnk:var(--tomato);--focus:var(--tomato);
  --btn-bg:var(--tomato);--btn-fg:var(--on-tomato);--btn-o:var(--tomato);--rule:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 2px 10px var(--shadow);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-2px);box-shadow:0 10px 24px var(--shadow)}
.card .media{position:relative;aspect-ratio:4/3;background:var(--kraft);display:block}
.card.recipe{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}
.card.recipe:hover{transform:none;box-shadow:none}
.card.recipe .media{aspect-ratio:4/3;border-radius:8px;overflow:hidden}
@media(min-width:600px){.card.recipe .media{aspect-ratio:4/5}}
.card.recipe .body{padding:18px 0 0}
.card .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.card .body{display:flex;flex-direction:column;flex:1;padding:20px 20px 24px;min-width:0}
.card h3{font-size:26px;margin:0 0 8px}
.card .body p{font-size:18px;line-height:1.5;margin:0 0 12px}
.card .body .by{font-size:14px;color:var(--ink-soft);margin:0 0 10px}
.card .actions{margin-top:auto;padding-top:16px}
.card .body .credit-line{font-size:14px;color:var(--ink-soft);margin:0 0 8px}
.ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:28px;background:var(--paper-2);color:var(--ink)}
.ph-t{font:400 120px/1 var(--font-display);color:var(--tomato);position:relative}
.ph-s{font-size:14px;line-height:1.4;color:var(--ink-soft);position:relative}
.tile{justify-content:flex-start;background:var(--band-tomato);color:var(--on-band-tomato);--fg:var(--on-band-tomato);--soft:var(--on-band-tomato);--acc:var(--on-band-tomato);--lnk:var(--on-band-tomato);--focus:var(--on-band-tomato);--btn-bg:var(--on-band-tomato);--btn-fg:var(--band-tomato);--btn-o:var(--on-band-tomato);padding:28px 24px 24px;border:1px solid var(--band-border)}
.tile .eyebrow{margin-bottom:14px}
.tile-q{font:400 clamp(30px,22px + 1.4vw,38px)/1.55 var(--font-hand);margin:auto 0 20px;padding-top:24px;max-width:none}
.tile-by{font:700 14px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;margin:0 0 auto}
.tile .actions{margin-top:20px;padding-top:0}
.nf-text .eyebrow{margin-bottom:10px}
.nf-text h2{margin-bottom:16px}
.nf-text .btn-row{margin-top:24px;align-items:center}
.play{position:absolute;left:50%;top:50%;width:72px;height:72px;margin:-36px 0 0 -36px;border-radius:50%;background:rgba(31,61,43,.92);border:2px solid #FBF5E9;display:grid;place-items:center;transition:transform .2s}
.pthumb:hover .play,.pframe:hover .play,.vthumb:hover .play{transform:scale(1.06)}
.play svg{width:24px;height:24px;fill:#FBF5E9;margin-left:4px}
.fav-row{display:grid;gap:28px;align-items:center;max-width:920px;margin-inline:auto}
.favstrip .nf-text h2{font-size:clamp(34px,26px + 2.2vw,48px)}
.pthumb{position:relative;display:block;width:140px;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#000}
.pthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pthumb .play{width:48px;height:48px;margin:-24px 0 0 -24px}
.pthumb .play svg{width:16px;height:16px;margin-left:3px}
@media(min-width:700px){.fav-row{grid-template-columns:220px minmax(0,1fr);gap:56px}.pthumb{width:220px}.pthumb .play{width:56px;height:56px;margin:-28px 0 0 -28px}.pthumb .play svg{width:20px;height:20px}}
.vstage{position:relative;overflow:hidden;border-radius:24px;background:#000;padding:32px 20px;display:grid;gap:28px;justify-items:center}
.vstage::after{content:"";position:absolute;inset:0;background:rgba(8,6,5,.62);z-index:0}
.pback{position:absolute;left:-40px;top:-40px;width:calc(100% + 80px);height:calc(100% + 80px);max-width:none;object-fit:cover;filter:blur(24px) brightness(.5)}
.vstage .nf-text,.vstage .pmedia{position:relative;z-index:1}
.vstage .nf-text{justify-self:stretch;max-width:420px}
.pmedia{display:flex;justify-content:center}
.pframe{position:relative;display:block;width:min(70vw,300px);aspect-ratio:9/16;border-radius:20px;overflow:hidden;background:#000;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.pframe img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(min-width:700px){
  .vstage{grid-template-columns:auto minmax(0,340px);justify-content:center;align-items:center;column-gap:56px;padding:48px 32px}
  .vstage .pmedia{grid-column:1;grid-row:1}
  .vstage .nf-text{grid-column:2;grid-row:1}
  .pframe{width:300px}
}
@media(min-width:1100px){
  .vstage{grid-template-columns:360px minmax(0,420px);column-gap:64px;padding:56px 32px}
  .pframe{width:360px}
}
.ask-q .eyebrow{margin-bottom:20px}
.ask-pull p{font-size:clamp(34px,24px + 2.8vw,48px);line-height:1.12;max-width:16em;margin-bottom:.4em}
.ask-ways{margin-top:40px}
.ask .way-rows{--rule:var(--ink-soft)}
.ask-more{margin-top:20px}
@media(min-width:960px){.ask-q{grid-column:1/7}.ask-ways{grid-column:8/13;margin-top:0;align-self:center}}

/* =================== STORY =================== */
.title-band{position:relative;overflow-x:clip}
.tb-art{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--kraft)}
.tb-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.tb-card{position:relative;z-index:2;margin:-40px calc(-1 * var(--bleed)) 0;background:var(--paper);border-top:6px solid var(--tomato);padding:24px var(--bleed) 8px}
.tb-card .eyebrow{margin-bottom:12px}
.tb-card h1{font-size:clamp(48px,29px + 7vw,104px);line-height:1;margin:0 0 16px}
.cap-line{font-size:16px;color:var(--ink-soft);margin:0}
@media(min-width:600px){.tb-art{aspect-ratio:2/1}}
@media(min-width:960px){
  .tb-art{aspect-ratio:auto;height:min(64vh,600px)}
  .tb-card{grid-column:1/7;margin:-80px 0 0 -40px;padding:40px;border-top-width:6px}
  .tb-card h1{font-size:clamp(56px,7vw,104px)}
}
.dc{padding-bottom:calc(var(--pad) + 24px)}
.dc-text p.dropcap::first-letter{font:400 5.6em/.78 var(--font-display);float:left;color:var(--tomato);padding:.07em .1em 0 0;margin-top:.02em}
.dc-photo{margin:0 0 32px;width:78%;position:relative}
.dc-photo img{aspect-ratio:4/5;border-radius:6px}
.stamp-wrap.float{float:right;margin:0 0 12px 20px;transform:rotate(3deg)}
@media(max-width:599px){
  .dc-text{display:flex;flex-direction:column;align-items:flex-start}
  .dc-text .eyebrow{order:1}.dc-text .dropcap{order:2}
  .stamp-wrap.float{order:3;float:none;margin:24px 0 0 auto;transform:rotate(-3deg) scale(.92);transform-origin:right center}
}
.dc-photo figcaption{font-size:14px;line-height:1.45;color:var(--ink-soft);margin-top:8px;max-width:30ch}
.dc-text{margin-top:8px}
@media(min-width:960px){
  .dc{padding-bottom:calc(var(--pad) + 48px)}
  .dc-text{grid-column:1/8;grid-row:1;margin:0}
  .dc-photo{grid-column:9/13;grid-row:1;margin:80px 0 0;width:auto}
}
.qb-circle{width:200px;height:200px;border-radius:50%;overflow:hidden;border:6px solid var(--paper);box-shadow:0 8px 22px var(--shadow);margin-top:28px}
.qb-circle img{width:100%;height:100%;object-fit:cover}
.qb-body p{color:var(--fg)}
.qb-pull p{font-size:clamp(44px,26px + 4.6vw,84px);line-height:1.04}
.qb-left{margin-bottom:32px}
@media(min-width:960px){
  .qb-left{grid-column:1/6;position:sticky;top:104px;align-self:start;margin:0}
  .qb-circle{width:280px;height:280px;margin-top:40px}
  .qb-body{grid-column:7/13}
  .qb-body p{font-size:20px}
}
.tl-list{list-style:none;position:relative}
.tl-list li{display:grid;grid-template-columns:56px 1fr;grid-template-areas:"disc side" "disc body";column-gap:16px;margin-bottom:var(--gap,64px);position:relative}
.tl-list li:last-child{margin-bottom:0}
.tl-disc{grid-area:disc;position:relative;display:flex;justify-content:center;align-items:flex-start;align-self:stretch}
.tl-disc span{width:56px;height:56px;border-radius:50%;border:2px solid var(--tomato);background:var(--paper);color:var(--tomato);font:400 28px/1 var(--font-display);display:grid;place-items:center;position:relative;z-index:1}
.tl-list li:not(:last-child) .tl-disc::before{content:"";position:absolute;left:calc(50% - 1px);top:28px;width:2px;height:calc(100% + var(--gap,64px));background:var(--tomato)}
.tl-side{grid-area:side;margin-bottom:16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tl-side:empty{display:none}
.tl-side .cap{font-size:14px;line-height:1.4;color:var(--ink-soft);margin:0}
.tl-body{grid-area:body;min-width:0}
.tl-body p{margin:0}
.tl-list li:nth-child(1){--gap:64px}.tl-list li:nth-child(2){--gap:96px}
@media(min-width:960px){
  .tl-list li{grid-template-columns:minmax(0,3fr) 56px minmax(0,7fr);grid-template-areas:"side disc body";column-gap:32px;align-items:start}
  .tl-side{margin:0;justify-content:flex-end;text-align:right;flex-direction:column;align-items:flex-end;gap:8px}
  .tl-body{padding-top:4px;position:relative}
  .tl-body::before{content:"";position:absolute;left:-32px;top:28px;width:32px;height:2px;background:var(--tomato)}
}
.photoband{margin:0}
.photoband img{width:100%;max-width:1600px;margin-inline:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 30%}
@media(min-width:960px){.photoband img{aspect-ratio:21/9}}
.numeral-spread{align-items:end;row-gap:16px}
.numeral{font:400 clamp(96px,40px + 14vw,240px)/.9 var(--font-display);color:var(--tomato);margin:0;letter-spacing:-.02em}
.ns-text p{margin:0}
@media(min-width:960px){.ns-num{grid-column:1/7}.ns-text{grid-column:7/13;padding-bottom:12px}}
.polaroid-sec .eyebrow{margin-bottom:20px}
.print{margin:0 0 32px;width:84%;transform:rotate(-2deg);background:#fff;padding:12px;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.print img{width:100%;aspect-ratio:720/509;object-fit:cover}
.pb-pull{margin-bottom:24px}
.pb-pull p{max-width:14em;font-size:clamp(32px,22px + 2.8vw,56px)}
.pb-text p{color:var(--fg)}
@media(min-width:960px){.print{grid-column:1/6;width:auto;max-width:480px;margin:0;align-self:start}.pb-text{grid-column:6/13}}
.method-head{margin-bottom:40px}
.method-head h2{margin:0}
.method{display:flex;flex-direction:column;gap:28px}
.m-photo{order:0;width:78%;margin:0}
.m-photo img{aspect-ratio:4/5;border-radius:6px;width:100%;object-fit:cover}
.steps{display:contents;list-style:none}
.step{display:block}
.step:nth-child(1){order:10}.step:nth-child(2){order:20}.step:nth-child(3){order:30}.step:nth-child(4){order:40}.step:nth-child(5){order:50}
.hand-wrap{order:35;margin:12px 0}
.m-jars{order:45;margin:0}
.step .sn{font:400 40px/1 var(--font-display);color:var(--tomato);display:block;margin-bottom:4px}
.step h3{font-size:30px;margin-bottom:12px}
.step p{margin-bottom:0}
.jars img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.inline-quote{margin:4px 0 24px;padding:4px 0 4px 20px;border-left:4px solid var(--tomato);font:italic 400 clamp(24px,20px + 1vw,30px)/1.2 var(--font-display)}
.inline-quote p{margin:0;max-width:24em}
.gloss{order:51;margin:8px 0 0;padding:2px 0 2px 18px;border-left:4px solid var(--tomato)}
.gloss .g-it{font-size:28px;line-height:1.2;margin:0 0 8px;max-width:none}
.gloss .g-tr{font:400 16px/1.45 var(--font-body);color:var(--ink-soft);margin:0;max-width:300px}
.hand{background:var(--note);color:var(--note-ink);transform:rotate(-2deg);padding:30px 24px 26px;position:relative;box-shadow:0 8px 20px var(--shadow);font:400 26px/1.55 var(--font-hand);margin:0}
.hand::before,.hand::after{content:"";position:absolute;top:-10px;width:70px;height:22px;background:var(--kraft);opacity:.4}
.hand::before{left:14px;transform:rotate(-6deg)}.hand::after{right:14px;transform:rotate(5deg)}
.hand p{margin:0 0 .5em;font:inherit;max-width:none}
.hand p:last-child{margin:0}
@media(min-width:960px){
  .method{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:0;align-items:start}
  .m-photo{grid-column:1/5;grid-row:1/3;width:100%;margin:0 0 48px}
  .hand-wrap{grid-column:1/5;grid-row:3;margin:0 0 56px}
  .hand{font-size:28px}
  .m-jars{grid-column:1/5;grid-row:4}
  .gloss{grid-column:1/5;grid-row:5;align-self:start;margin:6px 0 0}
  .m-jars img{aspect-ratio:4/5}
  .steps{display:contents}
  .step{grid-column:6/13;display:grid;grid-template-columns:72px 1fr;column-gap:8px;margin-bottom:56px}
  .step:nth-child(1){grid-row:1}.step:nth-child(2){grid-row:2}.step:nth-child(3){grid-row:3}.step:nth-child(4){grid-row:4}.step:nth-child(5){grid-row:5;margin-bottom:0}
  .step .sn{grid-row:1/3;font-size:44px}
  .step h3,.step .step-body{grid-column:2}
}
.signoff{text-align:center}
.tricolore{display:block;width:64px;height:4px;margin:0 auto 28px;background:linear-gradient(90deg,var(--tri-green) 0 33.34%,var(--tri-white) 33.34% 66.67%,var(--tri-red) 66.67% 100%);box-shadow:0 0 0 1px var(--header)}
.signature{font:400 clamp(36px,30px + 1.4vw,44px)/1.25 var(--font-hand);margin:0 auto 40px;max-width:none}
.rows{list-style:none;text-align:left;max-width:var(--max);margin-inline:auto}
.rows a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;border-top:1px solid var(--rule);font:400 clamp(24px,20px + 1vw,30px)/1.15 var(--font-display);color:var(--fg);text-decoration:none;padding-block:12px}
.rows li:last-child a{border-bottom:1px solid var(--rule)}
.rows a::after{content:"\2192";content:"\2192" / "";font:400 28px var(--font-body);transition:transform .2s;flex:none}
.rows a:hover::after{transform:translateX(6px)}
.rows a:hover{text-decoration:underline;text-underline-offset:6px}

/* =================== SAUCES =================== */
.titleshelf{padding-top:56px;padding-bottom:0;background:linear-gradient(to bottom,var(--paper) calc(100% - 140px),var(--paper-2) calc(100% - 140px))}
.ts-head{align-items:end;row-gap:12px}
.ts-head h1{margin-bottom:12px}
.ts-head h1 em{display:block;color:var(--tomato);font-style:italic}
.ts-head .lead{margin:0 0 8px}
.shelf{margin:32px calc(-1 * var(--bleed)) 0;position:relative;z-index:2}
.shelf img{width:100%;aspect-ratio:1200/456;object-fit:cover;max-width:1500px;margin-inline:auto}
@media(min-width:960px){.titleshelf{padding-top:96px}.ts-head{padding-bottom:80px}.shelf{margin-top:-48px}.shelf img{box-shadow:0 14px 32px var(--shadow)}.ts-head>div:first-child{grid-column:1/9}.ts-head .tj{grid-column:9/13;text-align:right}.ts-head .tj a{justify-content:flex-end}}
.jc{list-style:none;margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:36px 20px}
.jc>li{display:flex;flex-direction:column;min-width:0;border-top:3px solid var(--tomato);padding-top:16px}
.jc-img{width:100%;max-width:200px;aspect-ratio:1/1;object-fit:cover;border-radius:8px;margin-bottom:16px}
.jc h3{font-size:clamp(26px,22px + 1.2vw,32px);line-height:1.15;margin:0 0 8px}
.jc p{font-size:17px;line-height:1.45;margin:0 0 16px;max-width:none}
.jc .link-arrow{display:block;margin-top:auto;font-size:17px;line-height:1.3;padding-block:10px;min-height:44px}
.jc .link-arrow::after{margin-left:8px}
@media(max-width:959px){.jc .link-arrow::after{content:none}}
@media(min-width:960px){
  .rows-sec{padding-top:72px}
  .jcw{margin-inline:calc(-1 * var(--bleed))}
  .jc{max-width:1500px;margin-inline:auto;margin-top:32px;grid-template-columns:18% 18% 19% 19% 1fr;gap:0}
  .jc>li{grid-column:auto;border-top:0;padding:0 24px 0 0;position:relative}
  .jc>li::before{content:"";display:block;height:3px;background:var(--tomato);margin-bottom:16px;margin-right:0}
  .jc>li:nth-child(1){grid-column:2}
  .jc-img{display:none}
}
.where h2{margin-bottom:16px}
.notice{border-left:6px solid var(--tomato);padding:4px 0 4px 28px;margin-top:32px}
.notice h3{font-size:clamp(28px,22px + 1.6vw,34px);margin-bottom:8px}
.notice p{margin-bottom:20px}
.notice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px}
.tlink{display:inline-flex;align-items:center;gap:.3em;flex-wrap:wrap;min-height:44px;font:600 18px/1.3 var(--font-body);color:var(--lnk)}
.where-clip{margin-top:32px}
.where-clip .vwrap{aspect-ratio:16/9;max-width:560px;border-radius:16px}
.where-clip .vposter,.where-clip .vframe video{filter:saturate(.9) contrast(1.05)}
.where-clip .vframe::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.08;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
@media(min-width:960px){
  .where-clip{grid-column:1/6;grid-row:1/3;margin:0;align-self:center}
  .where-text{grid-column:7/13;grid-row:1}
  .notice{grid-column:7/13;grid-row:2;margin-top:24px;align-self:start}
}
.pairs-head .btn-row{margin-top:24px}
.pairs{margin-top:44px}
.pairs>ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
.pairs h3{font-size:clamp(24px,20px + 1vw,30px);margin:0 0 6px;color:var(--fg)}
.pairs li ul{list-style:none}
.pairs li li a{display:flex;align-items:center;min-height:44px;font-weight:600;font-size:18px;line-height:1.25}
@media(min-width:960px){.pairs-head{grid-column:1/6}.pairs{grid-column:7/13;margin-top:0}}

/* =================== RECIPES =================== */
.idx-head{row-gap:32px;align-items:start}
.idx-head .lead{margin:0}
.rx-index{list-style:none}
.rx-index li{border-bottom:1px dotted var(--ink-soft)}
.rx-index li:first-child{border-top:1px dotted var(--ink-soft)}
.rx-index a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:4px 0;color:var(--ink);text-decoration:none;font-size:19px;line-height:1.3}
.rx-index a:hover .rx-n{text-decoration:underline}
.rx-index .ix{font:400 22px var(--font-display);color:var(--tomato);margin-right:14px;flex:none;width:2ch}
.rx-index .rx-n{flex:1}
.rx-index .rx-t{font-size:15px;color:var(--ink-soft);white-space:nowrap}
.idx-aside h2{font-size:30px;margin-bottom:12px}
.idx-photo{display:none}
@media(min-width:960px){
  .idx-head{align-items:center}
  .idx-lead{grid-column:1/7}.idx-aside{grid-column:8/13}
  .idx-photo{display:block;width:240px;margin:44px 0 0;padding:8px;background:#fff;transform:rotate(-2deg);box-shadow:0 10px 24px var(--shadow)}
  .idx-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}
  :root:root .idx-photo .credit{position:static;display:block;max-width:none;background:none;color:#2B211B;border-radius:0;padding:8px 2px 0}
}
.feat-photo{position:relative;margin:0 calc(-1 * var(--bleed)) 32px;aspect-ratio:4/3;overflow:hidden}
.feat-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.feat-body .chips{margin-top:8px;padding-left:0}
.feat-sec{padding-top:0}
.sub{font:700 18px/1.3 var(--font-body);margin:20px 0 6px;color:var(--fg)}
.feat-body ul,.feat-body ol{padding-left:1.25em;margin-bottom:12px}
.feat-body li{margin-bottom:6px}
@media(min-width:960px){
  .feat-sec{padding-top:var(--pad)}
  .feat-photo{grid-column:1/7;grid-row:1;margin:calc(-1 * var(--pad)) 0 calc(-1 * var(--pad)) calc(-1 * var(--bleed));aspect-ratio:auto;min-height:560px}
  .feat-body{grid-column:7/13;grid-row:1}
}
.buon{text-align:center}
.buon h2{font-size:clamp(64px,10vw,120px);line-height:1;margin:0 0 8px}
.buon .it{font-size:1em}
.buon .tr{display:block;margin:0 auto 32px;font-size:18px}
.buon .btn-row{justify-content:center}
.rx{margin-top:auto}
.rx>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;padding:0 2px;border-top:1px solid var(--ink-soft);color:var(--tomato);font:600 18px var(--font-body);cursor:pointer}
.rx>summary:hover{text-decoration:underline;text-underline-offset:5px}
.rx>summary::-webkit-details-marker{display:none}
.rx>summary::after{content:"+";font-size:26px;line-height:1}
.rx[open]>summary::after{content:"\2212"}
.rx[open]>summary{margin-bottom:16px}
.rx-body{font-size:18px;line-height:1.5}
.rx-body ul,.rx-body ol{padding-left:1.25em;margin-bottom:12px}
.rx-body li{margin-bottom:6px}
.rx-body p{font-size:18px}
.rx-dialog{width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 24px);border:0;border-radius:20px;padding:0;background:var(--card);color:var(--ink);overflow:auto;--lnk:var(--tomato)}
.rx-dialog::backdrop{background:rgba(20,12,8,.65)}
.rx-top{position:sticky;top:0;height:0;z-index:5}
.rx-close{position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:50%;border:2px solid var(--tomato);background:var(--card);color:var(--tomato);font:600 26px/1 var(--font-body);cursor:pointer}
.rx-hero{position:relative;height:clamp(160px,42vw,260px);background:var(--kraft)}
.rx-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rx-hero .credit{left:12px;bottom:12px}
.rx-content{padding:24px 24px 8px}
.rx-nohero .rx-content{padding-top:68px}
.rx-content h2{font-size:clamp(30px,26px + 1vw,40px);margin-bottom:8px}
.rx-content p{font-size:18px}
.rx-content .by{font-size:14px;color:var(--ink-soft)}
.rx-content .chips{margin:0 0 12px;padding:0}
.rx-content h3{font:700 18px/1.3 var(--font-body);margin:20px 0 6px}
.rx-content ul,.rx-content ol{padding-left:1.25em;margin:0 0 12px}
.rx-content li{margin-bottom:6px;font-size:18px;line-height:1.5}
.rx-method ol{list-style:none;padding:0;counter-reset:rxs}
.rx-method ol>li{counter-increment:rxs;position:relative;padding-left:46px;margin-bottom:14px}
.rx-method ol>li::before{content:counter(rxs);position:absolute;left:0;top:-2px;font:400 28px/1.1 var(--font-display);color:var(--tomato)}
.rx-foot{padding:8px 24px 24px;display:flex;gap:12px;flex-wrap:wrap}
.rx-foot .btn{--btn-o:var(--tomato)}
@media(min-width:900px){
  .rx-dialog{width:min(960px,calc(100vw - 48px))}
  .rx-content{padding:32px 40px 8px}
  .rx-cols{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start;margin-top:8px}
  .rx-need{position:sticky;top:24px}
  .rx-foot{padding:8px 40px 32px}
}
@media print{body>*:not(.rx-dialog){display:none!important}.rx-dialog{position:static;display:block;width:auto;max-height:none;box-shadow:none}.rx-top,.rx-foot{display:none}}

/* =================== VIDEOS =================== */
.vhead .lead{margin-bottom:0}
.vgroup-head{margin-bottom:32px}
.vgroup-head h2{margin:0}
.vthumb{position:relative;display:block;overflow:hidden;background:var(--kraft);border-radius:10px}
.vthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.vthumb .play{width:40px;height:40px;margin:-20px 0 0 -20px;border-width:1.5px}
.vthumb .play svg{width:14px;height:14px;margin-left:3px}
.vk{font:700 14px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--acc);margin:0}
.cap{font-size:17px;line-height:1.45;color:var(--soft);margin:0;max-width:46ch}
.vlink{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:600 17px/1.3 var(--font-body);color:var(--lnk);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.vlink::after{content:"";position:absolute;inset:0}
.vrow:has(.vlink:focus-visible),.s-item:has(.vlink:focus-visible),.oa-s:has(.vlink:focus-visible),.oa-big:has(.vlink:focus-visible){outline:3px solid var(--focus);outline-offset:6px;border-radius:4px}
.vlink:focus-visible{outline:none}

/* Shows and interviews: an editorial list, no cards */
.vlist{list-style:none}
.vrow{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"t k" "t h" "c c" "g g";column-gap:16px;row-gap:4px;padding:20px 0;border-top:1px solid var(--ink-soft)}
.vrow:last-child{border-bottom:1px solid var(--ink-soft)}
.vrow .vthumb{grid-area:t;aspect-ratio:4/3;align-self:start}
.vrow .vtext{display:contents}
.vrow .vk{grid-area:k}
.vrow h3{grid-area:h;font-size:22px;margin:0}
.vrow .cap{grid-area:c;margin-top:8px}
.vrow .vgo{grid-area:g}
.vrow:hover h3{text-decoration:underline;text-underline-offset:5px}
@media(min-width:700px){
  .vrow{grid-template-columns:200px minmax(0,1fr);grid-template-areas:"t k" "t h" "t c" "t g";column-gap:28px;row-gap:6px;padding:24px 0}
  .vrow .vthumb{aspect-ratio:16/9}
  .vrow h3{font-size:26px}
  .vrow .vthumb .play{width:48px;height:48px;margin:-24px 0 0 -24px}
}
@media(min-width:960px){
  .vrow{grid-template-columns:280px minmax(0,1fr) auto;grid-template-areas:"t b g";column-gap:40px;align-items:center;padding:28px 0}
  .vrow .vtext{display:block;grid-area:b}
  .vrow h3{font-size:28px;margin:4px 0 8px}
  .vrow .cap{margin:0}
  .vrow .vgo{align-self:center}
}

/* Grandpa Pete: two columns of cards, the one place that keeps the pinned outline button */
.playlist{list-style:none;display:grid;gap:20px;grid-template-columns:1fr;grid-auto-rows:auto}
.playlist>li{display:flex;min-width:0}
.vcard{display:flex;flex-direction:column;flex:1;min-width:0;background:var(--card);color:var(--ink);--fg:var(--ink);--soft:var(--ink-soft);--acc:var(--tomato);--lnk:var(--tomato);--focus:var(--tomato);--btn-bg:var(--tomato);--btn-fg:var(--on-tomato);--btn-o:var(--tomato);--rule:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 2px 10px var(--shadow);transition:transform .2s,box-shadow .2s}
.vcard:hover{transform:translateY(-2px);box-shadow:0 10px 24px var(--shadow)}
.vcard .vbody{display:flex;flex-direction:column;flex:1;min-width:0;padding:18px 20px 22px}
.vcard h3{font-size:26px;margin:0 0 8px}
.vcard.row{display:grid;grid-template-columns:96px 1fr;column-gap:14px;grid-template-rows:auto auto;padding:12px;align-items:start}
.vcard.row .vthumb{grid-column:1;grid-row:1/3;aspect-ratio:4/3;border-radius:10px}
.vcard.row .vbody{display:contents}
.vcard.row h3{grid-column:2;font-size:22px;margin:0 0 4px}
.vcard.row .cap{grid-column:2;font-size:16px;margin:0}
.vcard.row .actions{grid-column:1/-1;margin-top:0;padding-top:4px}
.vcard.row .actions .btn{border:0;min-height:44px;padding:0;justify-content:flex-start;font-size:17px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.vcard.row .vthumb .play{width:32px;height:32px;margin:-16px 0 0 -16px;border-width:1.5px}
.vcard.row .vthumb .play svg{width:11px;height:11px;margin-left:2px}
@media(min-width:760px){
  .playlist{grid-template-columns:1fr 1fr;grid-auto-rows:1fr}
  .vcard.row{display:flex;flex-direction:row;padding:0;align-items:stretch}
  .vcard.row .vthumb{flex:0 0 40%;aspect-ratio:auto;border-radius:0;min-height:150px}
  .vcard.row .vbody{display:flex;padding:16px 18px 18px}
  .vcard.row h3{font-size:24px;margin:0 0 8px}
  .vcard.row .cap{font-size:17px;margin:0 0 12px}
  .vcard.row .actions{align-self:flex-end;padding-top:12px;margin-top:auto}
  .vcard.row .actions .btn{border:2px solid var(--btn-o);padding:0 26px;justify-content:center;text-decoration:none;font-size:18px}
  .vcard.row .vthumb .play{width:44px;height:44px;margin:-22px 0 0 -22px;border-width:2px}
  .vcard.row .vthumb .play svg{width:16px;height:16px;margin-left:3px}
}

/* Making the first jars: a film strip on the basil band */
.strip{list-style:none;display:grid;gap:36px;grid-template-columns:1fr}
.s-item{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"n b" "t b";column-gap:16px;align-items:start}
.s-top{grid-area:n}
.s-top .n{display:block;font:400 44px/1 var(--font-display);color:var(--fg)}
.s-item .vthumb{grid-area:t;aspect-ratio:4/5;margin-top:10px;border-radius:6px}
.s-item .vthumb .play{width:32px;height:32px;margin:-16px 0 0 -16px}
.s-body{grid-area:b;display:flex;flex-direction:column;min-width:0}
.s-body .dlab{font:600 14px/1.3 var(--font-body);letter-spacing:.06em;color:var(--acc);margin:10px 0 0}
.s-body h3{font-size:26px;margin:0 0 8px;color:var(--fg)}
.s-body .vgo{margin-top:auto;padding-top:8px}
@media(min-width:700px){
  .strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
  .s-item{display:flex;flex-direction:column}
  .s-top{display:flex;align-self:stretch;align-items:center;gap:16px;margin-bottom:22px}
  .s-top .n{font-size:72px;line-height:.9}
  .s-top::after{content:"";flex:1;height:1px;background:var(--fg);opacity:.7}
  .s-item:not(:last-child) .s-top::after{margin-right:-32px}
  .s-item .vthumb{width:100%;max-width:300px;margin:0 0 22px}
  .s-item .vthumb .play{width:48px;height:48px;margin:-24px 0 0 -24px}
  .s-body{flex:1}
  .s-body h3{font-size:28px}
}

/* Out and about: one large piece and two smaller ones */
.oa{display:grid;gap:40px;grid-template-columns:1fr}
.oa-big{position:relative}
.oa-big .vthumb{aspect-ratio:16/9;border-radius:12px;box-shadow:0 12px 30px var(--shadow)}
.oa-big .vthumb .play{width:64px;height:64px;margin:-32px 0 0 -32px}
.oa-big .vthumb .play svg{width:20px;height:20px}
.oa-bb{padding-top:20px}
.oa-bb h3{font-size:clamp(30px,24px + 1.6vw,40px);margin-bottom:10px}
.oa-bb .vgo{margin-top:6px}
.oa-side{list-style:none}
.oa-s{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 16px;border-top:1px solid var(--ink-soft);padding:24px 0}
.oa-s:last-child{border-bottom:1px solid var(--ink-soft)}
.oa-s .vthumb{aspect-ratio:4/3;align-self:start}
.oa-s .vthumb .play{width:32px;height:32px;margin:-16px 0 0 -16px}
.oa-t h3{font-size:22px;margin:0 0 6px}
.oa-t .cap{font-size:16px}
.oa-t .vgo{margin-top:4px}
@media(min-width:700px){
  .oa-s{grid-template-columns:160px minmax(0,1fr);gap:0 24px}
  .oa-s .vthumb{aspect-ratio:3/2}
  .oa-s .vthumb .play{width:40px;height:40px;margin:-20px 0 0 -20px}
  .oa-t h3{font-size:26px}
}
@media(min-width:960px){
  .oa{grid-template-columns:7fr 5fr;gap:64px;align-items:stretch}
  .oa-side{display:flex;flex-direction:column;justify-content:space-between}
  .oa-s:first-child{border-top:0;padding-top:0}
  .oa-s:last-child{border-bottom:0;padding-bottom:0}
}

/* =================== CONTACT =================== */
.askhead{text-align:center}
.askhead h1{font-size:clamp(48px,28px + 4.7vw,72px);margin-bottom:24px}
.askhead .pull{margin-inline:auto}
.ways-grid{row-gap:32px;align-items:start}
.ways-grid p{color:var(--fg)}
.way-rows{list-style:none}
.way-rows a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:88px;border-top:1px solid var(--rule);font:400 clamp(24px,20px + 1vw,30px)/1.15 var(--font-display);color:var(--fg);text-decoration:none;padding-block:12px}
.way-rows li:last-child a{border-bottom:1px solid var(--rule)}
.way-rows a::after{content:"\2192";content:"\2192" / "";font:400 28px var(--font-body);transition:transform .2s;flex:none}
.way-rows a:hover::after{transform:translateX(6px)}
.way-rows a:hover .wr-l{text-decoration:underline;text-underline-offset:6px}
@media(min-width:960px){.ways-text{grid-column:1/4}.ways-lead{grid-column:4/12}}
.ways-lead{margin:0}
.callnow .wrap{text-align:left}
.bignum{display:inline-block;font:400 clamp(48px,9vw,128px)/1 var(--font-display);color:var(--tomato);text-decoration:none;white-space:nowrap;min-height:44px;letter-spacing:-.01em}
.bignum:hover{text-decoration:underline;text-decoration-thickness:4px;text-underline-offset:10px}
.cn-label{margin:16px 0 28px;font-size:15px}
.cn-social{display:flex;flex-wrap:wrap;gap:4px 32px;margin:0}
.cn-social a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:600 20px/1.3 var(--font-body)}
.person .g12{row-gap:32px;align-items:center}
.pp-text p{max-width:34em}
.pp-photo{margin:0}
.pp-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}
@media(min-width:960px){.pp-text{grid-column:1/7}.pp-photo{grid-column:8/13}.pp-photo img{aspect-ratio:4/5}}
@media(max-width:599px){.way-rows .nowrap{display:block;font-size:28px}}
.ways-grid .lead{max-width:34em}

/* =================== LEGAL =================== */
.legal{padding-block:56px 80px}
.legal .wrap>*{max-width:44rem}
.legal h1{font-size:clamp(36px,30px + 2vw,56px)}
.legal h2{font-size:clamp(26px,22px + 1vw,32px);margin-top:32px}
.legal ul{padding-left:1.3em;margin:0 0 1em}.legal li{margin-bottom:8px}
.draftnote{background:var(--chip);border:2px solid var(--tomato);border-radius:10px;padding:12px 16px;font-weight:600;margin-bottom:24px;max-width:44rem}
.confirm{background:var(--card);border:2px dashed var(--ink-soft);border-radius:12px;padding:0 20px;margin:0 0 24px}
.confirm summary{min-height:52px;display:flex;align-items:center;cursor:pointer;font:600 18px var(--font-body)}
.confirm ul{padding-bottom:12px}.confirm li{font-size:17px;line-height:1.5}
.back{display:inline-flex;align-items:center;min-height:44px;font-weight:600}

/* =================== motion, small touches, modes =================== */
.js-rv .rv{transform:translateY(16px);transition:transform .5s ease-out}
.js-rv .rv.seen{transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .pausebtn,.motion-toggle{display:none!important}
  .vframe video{display:none}
  .rv{transform:none!important}
}
@media(forced-colors:active){.card,.chips li,.vcard,.tile{border:1px solid CanvasText}}
