/* Shared TheMatchman.com shell and one-screen route deck. Canonical tokens: RIGLI_WEB_STANDARDS v2.1. */
:root{
  --site-page:#FFF8EC;
  --site-surface:#FFFEF9;
  --site-soft:#FFF0C8;
  --site-accent:#D83A2E;
  --site-accent-strong:#A9231A;
  --site-gold:#F4B400;
  --site-gold-text:#805600;
  --site-ink:#4A211B;
  --site-ink-soft:#70463C;
  --site-line:#F1D5B5;
  --site-shadow:0 18px 50px rgba(95,40,30,.09);
}

html{width:100%;height:100%;scroll-snap-type:none!important;scroll-padding:0!important}
body.site-one-screen{
  width:100%;height:100svh;min-height:100svh;margin:0;
  display:flex;flex-direction:column;overflow-x:clip;
  background:radial-gradient(55% 42% at 90% 0,#FFE08A 0,transparent 68%),radial-gradient(42% 38% at 0 5%,#FFE1D7 0,transparent 70%),var(--site-page);
  color:var(--site-ink);font-family:'Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;font-style:normal;
}
.site-one-screen em,.site-one-screen i,.site-one-screen cite,.site-one-screen address{font-style:normal}
.site-one-screen *{box-sizing:border-box}
.site-one-screen a{color:inherit}
.site-one-screen :focus-visible{outline:3px solid var(--site-gold);outline-offset:2px;border-radius:6px}
.site-shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.site-global-skip{position:fixed;left:12px;top:-60px;z-index:300;padding:7px 12px;border-radius:999px;background:var(--site-accent);color:#fff!important;font-size:11px;font-weight:900;text-decoration:none}
.site-global-skip:focus{top:8px}

.site-global-header{
  position:relative;z-index:100;height:60px;flex:0 0 60px;
  display:flex;align-items:center;background:rgba(255,252,247,.96);border-bottom:1px solid var(--site-line);
}
.site-global-header__inner{height:100%;display:flex;align-items:center;gap:22px}
.site-global-brand{display:flex;align-items:center;gap:9px;margin-right:auto;color:var(--site-ink);text-decoration:none;white-space:nowrap}
.site-global-brand img{display:block!important;visibility:visible!important;flex:none;width:auto!important;height:32px!important;max-width:43px!important;margin:0!important;border-radius:8px;box-shadow:0 4px 14px rgba(74,44,33,.08)}
.site-global-brand>span{display:grid;line-height:1}
.site-global-brand strong{color:var(--site-ink);font-size:17px;font-weight:900;letter-spacing:-.035em}
.site-global-brand small{margin-top:3px;color:var(--site-ink-soft);font-size:9px;font-weight:800;letter-spacing:.02em}
.site-global-header nav,.site-global-footer nav{
  position:static!important;inset:auto!important;z-index:auto!important;width:auto!important;min-width:0!important;max-width:none!important;
  min-height:0!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;transform:none!important;
}
.site-global-nav{display:flex;align-items:center;gap:15px}
.site-global-nav a,.site-global-menu a{color:var(--site-ink-soft);font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}
.site-global-nav a:hover,.site-global-nav a:focus-visible,.site-global-menu a:hover,.site-global-menu a:focus-visible,.site-global-nav a[aria-current="page"]{color:var(--site-accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.site-global-menu{display:none;position:relative}
.site-global-menu summary{cursor:pointer;color:var(--site-accent);font-size:12px;font-weight:900;list-style:none}
.site-global-menu summary::-webkit-details-marker{display:none}
.site-global-header .site-global-menu nav{position:absolute!important;right:0!important;top:31px!important;width:185px!important;padding:9px!important;display:grid;gap:2px;background:var(--site-surface)!important;border:1px solid var(--site-line)!important;border-radius:16px!important;box-shadow:var(--site-shadow)!important}
.site-global-menu nav a{padding:7px 9px;border-radius:9px}

.site-global-footer{height:34px;flex:0 0 34px;background:rgba(255,252,247,.96);border-top:1px solid var(--site-line)}
.site-global-footer__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--site-ink-soft);font-size:9px;font-weight:800}
.site-global-footer p{margin:0;white-space:nowrap}
.site-global-footer nav{display:flex;align-items:center;gap:13px}
.site-global-footer a{color:var(--site-accent-strong);font-weight:900;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;white-space:nowrap}

.one-screen-main{width:min(1180px,calc(100% - 32px));min-height:0;flex:1 1 auto;margin-inline:auto;padding:10px 0;display:flex}
.one-screen-deck{position:relative;isolation:isolate;min-width:0;min-height:0;width:100%;padding:15px 17px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:9px;overflow:hidden;background:rgba(255,252,247,.96);border:1px solid var(--site-line);border-radius:22px;box-shadow:var(--site-shadow)}
.one-screen-deck::after{content:"";position:absolute;z-index:-1;right:-45px;top:-60px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(244,180,0,.16),transparent 68%);pointer-events:none}
.one-screen-deck--home{background:linear-gradient(90deg,rgba(255,254,249,.99) 0%,rgba(255,254,249,.96) 50%,rgba(255,254,249,.65) 72%,rgba(255,254,249,.32) 100%),url('/images/matchman-hero.jpg') center right 34%/auto 108% no-repeat}
.one-screen-deck--home .one-screen-intro,.one-screen-deck--home .screen-panels{width:min(72%,820px)}
.one-screen-deck--screenplay{background:linear-gradient(135deg,rgba(255,254,250,.98),rgba(255,246,228,.98))}
.one-screen-intro{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.one-screen-kicker{margin:0 0 3px!important;color:var(--site-gold-text)!important;font-size:11px!important;line-height:1.2!important;font-weight:900!important;letter-spacing:.12em;text-transform:uppercase}
.one-screen-intro h1{max-width:100%;margin:0!important;color:var(--site-ink)!important;font-size:clamp(29px,4.3vw,52px)!important;font-weight:700!important;line-height:1.02!important;letter-spacing:-.045em!important;text-wrap:balance}
.one-screen-lead{max-width:72ch!important;margin:5px 0 0!important;color:var(--site-ink-soft)!important;font-size:13px!important;line-height:1.32!important;font-weight:600!important}
.one-screen-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.one-screen-actions a{min-height:31px;padding:7px 11px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--site-accent);border-radius:999px;color:var(--site-accent-strong);font-size:10px;font-weight:900;line-height:1.1;text-decoration:none;text-align:center}
.one-screen-actions a:first-child{background:var(--site-accent);color:#fff}
.print-source{display:none!important}
.screen-panels{min-height:0;position:relative}
.screen-panel{display:none;position:relative;height:100%;min-height:0;grid-template-rows:minmax(0,1fr) 31px;gap:7px}
.screen-anchor{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden}
.screen-panel__content{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min-content;align-content:start;gap:7px}
.screen-block{min-width:0;max-width:none!important;margin:0!important;padding:9px 11px!important;overflow:visible!important;background:rgba(255,254,250,.95)!important;border:1px solid var(--site-line)!important;border-radius:14px!important;box-shadow:0 5px 16px rgba(88,48,23,.035)!important;color:var(--site-ink-soft)!important}
.screen-block h2,.screen-block h3,.screen-block h4,.screen-block>h2,.screen-block>h3{margin:0!important;color:var(--site-ink)!important;font-size:15px!important;font-weight:700!important;line-height:1.18!important;letter-spacing:0!important;text-transform:none!important}
.screen-block p,.screen-block li,.screen-block blockquote,.screen-block span,.screen-block div{font-size:11px;line-height:1.3}
.screen-block p,.screen-block blockquote{max-width:none!important;margin:0!important;color:var(--site-ink-soft)!important}
.screen-block ul,.screen-block ol{margin:0!important;padding-left:18px!important;columns:auto!important}
.screen-block li{margin:0 0 2px!important;color:var(--site-ink-soft)!important}
.screen-block a:not(.btn):not(.sbtn):not(.button){color:var(--site-accent-strong)!important;text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important}
.screen-block--heading{grid-column:1/-1;padding:6px 10px!important;background:var(--site-soft)!important;border-color:transparent!important}
.screen-block--media{display:grid;place-items:center;padding:5px!important}
.screen-block--media iframe,.screen-block--media video{width:min(100%,420px)!important;height:auto!important;aspect-ratio:16/9!important;border:0!important;border-radius:10px!important}
.screen-block--media audio{width:min(100%,420px)!important;height:38px!important}
.screen-block--media img{width:auto!important;max-width:100%!important;height:auto!important;max-height:210px!important;object-fit:contain!important;border-radius:10px!important}
.screen-block img{width:auto!important;max-width:100%!important;height:auto!important;max-height:210px!important;object-fit:contain!important;margin-inline:auto!important}
.screen-block figure{min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
.screen-block figure img{max-height:160px!important}
.screen-block figure figcaption{position:static!important;inset:auto!important;width:auto!important;margin:3px 0 0!important;padding:0!important;background:transparent!important;color:var(--site-ink-soft)!important;font-size:9px!important;line-height:1.15!important;text-align:center!important}
.screen-block figure figcaption span{display:block!important;font-size:9px!important;line-height:1.15!important}
.screen-block--compact:has(figure){grid-column:1/-1;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.screen-block--stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.screen-block--stats .stat{min-width:0!important;margin:0!important;padding:6px!important;border:0!important;border-radius:9px!important;background:var(--site-soft)!important;box-shadow:none!important;text-align:center!important;text-decoration:none!important;transform:none!important}
.screen-block--stats .stat .n{margin:0!important;color:var(--site-accent-strong)!important;font-size:18px!important;line-height:1!important;font-weight:900!important}
.screen-block--stats .stat .l{margin:3px 0 0!important;color:var(--site-ink-soft)!important;font-size:10px!important;line-height:1.15!important;font-weight:800!important}
.screen-block--lyrics{white-space:pre-line;font-size:10px!important;line-height:1.28!important;color:var(--site-ink)!important}
.screen-block--card{align-self:stretch}
.screen-block--card img{max-height:115px!important;width:auto!important;object-fit:contain!important;margin:0 auto 5px!important}
.screen-block--card .scard-blurb,.screen-block--card .song-blurb{font-size:10px!important;line-height:1.2!important;margin:3px 0!important}
.screen-card-links{margin-top:6px!important;display:flex;gap:5px;flex-wrap:wrap}
.screen-card-links a{min-height:25px;padding:4px 7px;border:1px solid var(--site-accent);border-radius:999px;font-size:9px!important;font-weight:900}
.screen-block span,.screen-block em,.screen-block i,.screen-block small{color:var(--site-ink-soft)!important}
.screen-block span[style*="font-size"],.screen-block small[style*="font-size"]{font-size:inherit!important}
.screen-block .btn,.screen-block .btn-primary,.screen-block .sbtn,.screen-block .button,.screen-block button,.screen-block a[style*="background"]{min-height:25px!important;padding:4px 7px!important;background:var(--site-accent-strong)!important;color:#fff!important;border-color:var(--site-accent-strong)!important;border-radius:999px!important;font-size:9px!important;line-height:1.1!important}
.screen-block .btn::before,.screen-block .btn::after,.screen-block .button::before,.screen-block .button::after{display:none!important;content:none!important}
.screen-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}
.screen-facts div{min-width:0;padding:7px;background:var(--site-soft);border-radius:9px}
.screen-facts dt{color:var(--site-gold-text);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.screen-facts dd{margin:2px 0 0;color:var(--site-ink);font-size:10px;font-weight:700;line-height:1.18}
.screen-block .facet-label,.screen-block .meta-label{color:var(--site-ink)!important}
.screen-block form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px 7px!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.screen-block form label{min-width:0;display:grid!important;gap:2px!important;font-size:9px!important;font-weight:800!important}
.screen-block form input,.screen-block form select,.screen-block form textarea{width:100%!important;min-height:28px!important;padding:4px 7px!important;border:1px solid var(--site-line)!important;border-radius:8px!important;font:600 10px/1.2 'Nunito',sans-serif!important}
.screen-block form input[type="checkbox"],.screen-block form input[type="radio"]{width:18px!important;height:18px!important;min-height:18px!important;padding:0!important}
.screen-block form .check{min-width:0;display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:start!important;gap:6px!important}
.screen-block form textarea{height:42px!important;min-height:42px!important;resize:none!important}
.screen-block form *{font-size:9px!important}
.screen-block .seo-list{max-height:none!important;overflow:visible!important}
.screen-block--table table{display:table!important;width:100%!important;max-width:100%!important;overflow:visible!important;table-layout:fixed!important}
.screen-block--table th,.screen-block--table td{color:var(--site-ink-soft)!important;overflow-wrap:anywhere!important;word-break:normal!important}
.screen-block--table td:first-child,.screen-block--table th{color:var(--site-ink)!important}
.screen-pager{display:grid;grid-template-columns:90px minmax(0,1fr) 90px;align-items:center;gap:7px}
.screen-pager a,.screen-pager .is-disabled{min-height:29px;padding:5px 9px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--site-accent);border-radius:999px;color:var(--site-accent-strong);font-size:9px;font-weight:900;line-height:1;text-decoration:none;cursor:pointer}
.screen-pager .is-disabled{border-color:var(--site-line);background:var(--site-soft);color:var(--site-ink-soft);opacity:1;cursor:default}
.screen-pager output{color:var(--site-ink-soft);font-size:9px;font-weight:900;text-align:center}


/* URL-fragment chapter switching, functional with JavaScript disabled and without a page-count ceiling. */
.screen-panel--1{display:grid}
.screen-panels:has(.screen-panel:target,.screen-anchor:target)>.screen-panel--1{display:none}
.screen-panels>.screen-panel:target,.screen-panels>.screen-panel:has(.screen-anchor:target){display:grid!important}

.not-found-main{width:min(720px,calc(100% - 32px));min-height:0;flex:1;margin-inline:auto;padding:10px 0;display:grid;place-items:center}
.not-found-card{width:100%;padding:clamp(30px,7vw,68px);background:var(--site-surface);border:1px solid var(--site-line);border-radius:22px;box-shadow:var(--site-shadow);text-align:center}
.not-found-card h1{margin:0;color:var(--site-ink);font-size:clamp(34px,6vw,58px);font-weight:700;line-height:1}
.not-found-card p{margin:10px auto 0;max-width:54ch;color:var(--site-ink-soft);font-weight:600}
.not-found-card a{margin-top:15px;min-height:32px;padding:7px 13px;display:inline-flex;align-items:center;border-radius:999px;background:var(--site-accent);color:#fff;font-size:10px;font-weight:900;text-decoration:none}

@media(max-width:900px){
  .site-shell,.one-screen-main{width:min(100% - 18px,1180px)}
  .site-global-header{height:54px;flex-basis:54px}
  .site-global-brand img{width:auto!important;height:29px!important}
  .site-global-brand strong{font-size:15px}.site-global-brand small{font-size:9px}
  .site-global-nav--desktop{display:none}.site-global-menu{display:block}
  .site-global-footer{height:29px;flex-basis:29px}
  .site-global-footer__inner{font-size:9px}.site-global-footer nav{gap:9px}
  .one-screen-main{padding:6px 0}
  .one-screen-deck{padding:9px;gap:6px;border-radius:17px}
  .one-screen-deck--home{background:linear-gradient(rgba(255,254,249,.90),rgba(255,254,249,.98)),url('/images/matchman-hero.jpg') center/cover no-repeat}
  .one-screen-deck--home .one-screen-intro,.one-screen-deck--home .screen-panels{width:100%}
  .one-screen-intro{grid-template-columns:1fr;gap:5px;align-items:start}
  .one-screen-intro h1{font-size:clamp(25px,7.5vw,34px)!important;line-height:1.02!important}
  .one-screen-kicker{font-size:9px!important}
  .one-screen-lead{font-size:10.5px!important;line-height:1.24!important;margin-top:3px!important}
  .one-screen-actions{justify-content:flex-start}.one-screen-actions a{min-height:27px;padding:5px 9px;font-size:9px}
  .screen-panel{grid-template-rows:minmax(0,1fr) 27px;gap:4px}
  .screen-panel__content{grid-template-columns:1fr;gap:4px}
  .screen-block{padding:6px 8px!important;border-radius:11px!important}
  .screen-block h2,.screen-block h3,.screen-block h4,.screen-block>h2,.screen-block>h3{font-size:12px!important;line-height:1.14!important}
  .screen-block p,.screen-block li,.screen-block blockquote,.screen-block span,.screen-block div{font-size:9.5px;line-height:1.2}
  .screen-block--lyrics{font-size:9px!important;line-height:1.17!important}
  .screen-block--media iframe,.screen-block--media video{width:min(100%,300px)!important}
  .screen-block--media img{max-height:150px!important}
  .screen-block img{max-height:150px!important}
  .screen-block figure img{max-height:95px!important}
  .screen-block--card img{max-height:80px!important}
  .screen-block--card .scard-blurb,.screen-block--card .song-blurb{font-size:9px!important}
  .screen-block form{grid-template-columns:1fr!important}
  .screen-facts{grid-template-columns:1fr;gap:3px}.screen-facts div{padding:5px}.screen-facts dd{font-size:9px}
  .screen-pager{grid-template-columns:75px minmax(0,1fr) 75px;gap:4px}
  .screen-pager a,.screen-pager .is-disabled{min-height:25px;padding:4px 7px;font-size:9px}
  .screen-pager output{font-size:9px}
}

@media(max-width:560px){
  .site-global-footer nav a:first-child{display:none}
  .site-global-footer__credits{display:none}
  .one-screen-actions a:nth-child(n+3){display:none}
}

@media(max-width:420px){
  .site-global-brand small{display:none}
  .site-global-footer nav a:nth-child(-n+2){display:none}
}

@media(max-height:700px){
  .one-screen-main{padding:4px 0}.one-screen-deck{padding:7px;gap:4px}
  .one-screen-intro h1{font-size:25px!important}.one-screen-lead{font-size:9.5px!important}
  .screen-block{padding:5px 7px!important}.screen-block p,.screen-block li,.screen-block blockquote,.screen-block span,.screen-block div{font-size:9px;line-height:1.16}
  .screen-block--media img{max-height:120px!important}
  .screen-block img{max-height:120px!important}
}

@media print{
  body.site-one-screen{height:auto;display:block;background:#fff;overflow:visible}
  .site-global-header,.site-global-footer,.one-screen-main{display:none!important}
  template{display:none!important}
  .print-source{display:block!important}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
