/* Red Hill "Seaside chippy at night" theme (Concept B). Loaded only for Red Hill (S.theme). */
.th-night{--navy:#0e2a44;--night:#0a1a2c;--red:#ab2536;--amber:#f3b949;--cream:#f7efdc;--paper:#efe6cf;--ink:#0e2a44;--mut:#4a5868;--sand:#efe6cf;
font-family:"Libre Caslon Text",Georgia,serif;background:var(--paper);color:var(--ink);
background-image:repeating-linear-gradient(90deg,transparent 0 238px,rgba(14,42,68,.06) 238px 240px)}
.th-night h1,.th-night h2,.th-night h3,.th-night .btn,.th-night .links,.th-night .tabs a,.th-night .mode button,.th-night .tot,.th-night legend{font-family:Oswald,"Arial Narrow",sans-serif;letter-spacing:.03em}
.th-night h1,.th-night h2,.th-night h3{text-transform:uppercase;line-height:1.08}
.th-night img{height:auto}
/* header */
.th-night header.top{background:rgba(10,26,44,.96);box-shadow:0 2px 0 var(--red)}
.th-night .logo{display:flex;align-items:center;gap:10px}
.th-night .logo img{height:26px;width:auto}
.th-night .logo img.lw{height:34px}
.th-night .links{text-transform:uppercase;font-size:14px}
.th-night .links a[aria-current]{border-bottom-color:var(--amber)}
/* buttons */
.th-night .btn{border-radius:3px;text-transform:uppercase;font-weight:600;letter-spacing:.06em;box-shadow:0 3px 0 #6d1220}
.th-night .btn.ghost{background:var(--cream);color:var(--navy);box-shadow:0 3px 0 #b9ad90}
.th-night .btn.line{box-shadow:none}
.th-night .btn:disabled{box-shadow:none}
/* night hero */
.nhero{position:relative;min-height:min(92vh,780px);display:grid;place-items:center;text-align:center;overflow:hidden;isolation:isolate;color:var(--cream)}
.nhero picture,.nhero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.nhero:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 42%,rgba(10,26,44,.6),rgba(10,26,44,.3) 70%),linear-gradient(180deg,rgba(10,26,44,.35),transparent 35%,rgba(10,26,44,.88))}
.hin{padding:70px 18px 60px;max-width:840px;text-shadow:0 2px 10px rgba(0,0,0,.7)}
.hin .wm{width:min(600px,92%);margin:0 auto;filter:drop-shadow(0 0 18px rgba(243,185,73,.3))}
.strap{font:600 15px Oswald,sans-serif;letter-spacing:.28em;text-transform:uppercase;color:var(--amber);margin:14px 0 8px}
.nhero h1{font-size:clamp(26px,4vw,40px);margin:4px 0 12px}
.nhero h1 em{font-style:normal;color:var(--amber)}
.nhero .lede{max-width:640px;margin:0 auto;font-size:17px}
.th-night .dban{max-width:620px;margin:20px auto 6px;background:var(--cream);color:var(--navy);border-radius:4px;text-shadow:none;text-align:left;border:2px dashed var(--red)}
.nhero .ctas{justify-content:center}
.nhero .btn{text-shadow:none}
.nhero .trust{justify-content:center;opacity:.95}
/* paper story */
.paper{position:relative;background:var(--paper);background-image:repeating-linear-gradient(90deg,transparent 0 238px,rgba(14,42,68,.08) 238px 240px),repeating-linear-gradient(0deg,transparent 0 22px,rgba(14,42,68,.035) 22px 23px)}
.paper:before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px;background:radial-gradient(circle at 10px 18px,var(--paper) 12px,transparent 13px) 0 0/20px 18px repeat-x}
.story{display:grid;grid-template-columns:1fr 1.1fr;gap:46px;align-items:center;padding-top:60px;padding-bottom:60px}
.pcards{position:relative;min-height:430px}
.pc{position:absolute;margin:0;background:#fff;padding:10px 10px 34px;box-shadow:0 12px 28px rgba(0,0,0,.28)}
.pc img{width:100%;display:block}
.pc figcaption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font:italic 14px "Libre Caslon Text",serif}
.pc.c1{width:78%;left:0;top:0;transform:rotate(-4deg)}
.pc.c2{width:62%;right:0;top:175px;transform:rotate(5deg)}
.tape{position:absolute;top:-12px;left:50%;width:90px;height:24px;margin-left:-45px;background:rgba(243,185,73,.75);transform:rotate(-3deg)}
.ticket{background:var(--cream);border:2px dashed var(--navy);padding:26px 30px;
-webkit-mask:radial-gradient(circle 14px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 14px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat;
mask:radial-gradient(circle 14px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 14px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat}
.ticket .no{font:700 13px Oswald,sans-serif;letter-spacing:.25em;color:var(--red);text-transform:uppercase}
.ticket h2{font-size:clamp(28px,3.4vw,40px);margin:4px 0 12px}
.ticket .house{float:right;width:110px;margin:0 0 6px 12px}
/* chalkboard */
.nightblk{background:var(--night);color:var(--cream);padding:56px 0}
.board{background:#1d2a2b;color:#f4f1e8;border:14px solid #6b4a2b;border-radius:4px;padding:30px clamp(18px,4vw,42px);box-shadow:inset 0 0 60px rgba(0,0,0,.55),0 14px 30px rgba(0,0,0,.35);background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:6px 6px}
.board h2{font-family:"Permanent Marker",Oswald,sans-serif;text-transform:none;font-size:clamp(28px,3.6vw,40px);color:var(--amber);text-align:center;letter-spacing:0;margin:0 0 14px}
.chalk{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;font:22px "Permanent Marker",cursive;margin:0 0 24px;padding:0;list-style:none}
.chalk li:nth-child(odd){color:#fff}.chalk li:nth-child(even){color:#ffd3d8}
.chalk li+li:before{content:"★";color:var(--amber);margin-right:26px;font-size:16px}
.bcols{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:28px;border-top:2px dashed rgba(244,241,232,.35);padding-top:22px}
.bcols h3{font-size:22px;color:var(--amber);margin:0 0 8px}
.bcols p{margin:0 0 10px;font-size:16px}
.bcols a{color:#fff}
.bcols .warn{border:2px solid #ffd3d8;padding:6px 10px;color:#fff}
.board .ill{height:70px;width:auto;margin-bottom:8px;opacity:.9}
.thanks{text-align:center;font:italic 18px "Libre Caslon Text",serif;margin:36px auto 0;max-width:700px}
/* generic blocks */
.th-night section.blk{padding:44px 0}
.th-night section.alt{background:var(--night);color:var(--cream)}
.th-night section.alt .btn.line{color:var(--cream)}
.th-night .box{background:var(--cream);border:2px solid var(--navy);border-radius:3px;box-shadow:6px 6px 0 var(--navy)}
.th-night .box:nth-child(2){transform:rotate(-.6deg)}
.th-night table.hours td{border-bottom:1px dashed rgba(14,42,68,.35)}
.th-night .map{border-radius:3px;border:6px solid #fff;box-shadow:0 10px 24px rgba(0,0,0,.35)}
.th-night .prose{background:var(--cream);border:2px dashed var(--navy);padding:24px clamp(16px,3vw,32px);margin-top:10px;margin-bottom:10px}
.th-night .prose h1{font-size:clamp(28px,4vw,40px)}
.th-night .prose h2{color:var(--red)}
.th-night .note{color:var(--mut)}
.th-night .save{background:var(--cream);color:var(--navy);border:2px dashed var(--red);border-radius:3px}
/* order + table */
.th-night.order{background-color:var(--paper)}
.th-night .tabs{background:var(--night);border-bottom:3px solid var(--red)}
.th-night .tabs a{background:transparent;color:var(--cream);border:1px solid rgba(247,239,220,.35);border-radius:3px;text-transform:uppercase;font-weight:500}
.th-night .tabs a.on{background:var(--amber);color:var(--night);border-color:var(--amber)}
.th-night .mode{background:var(--cream);border:2px solid var(--navy);border-radius:4px}
.th-night .mode button{border-radius:2px;text-transform:uppercase;color:var(--navy)}
.th-night .mode button[aria-pressed=true]{background:var(--navy);color:#fff}
.th-night #menu h2{font-size:28px;border-bottom:3px double var(--navy);padding-bottom:6px}
.th-night .card{background:#fff;border:0;border-radius:2px;box-shadow:0 6px 16px rgba(14,42,68,.14)}
.th-night .card:hover{box-shadow:0 10px 22px rgba(14,42,68,.24)}
.th-night .card h3{font-size:17px}
.th-night .card .im{background:var(--cream)}
.th-night .add{background:var(--red)}
.th-night .cart{background:var(--cream);border:2px dashed var(--navy);border-radius:3px}
.th-night .cart h2{font-size:24px}
.th-night .line{border-bottom-color:rgba(14,42,68,.25)}
.th-night .status{background:var(--cream);border-left:5px solid var(--navy);border-radius:2px}
.th-night .status.table{background:#e6f4ec;border-left-color:#1d7a46}
.th-night .status.warn{border-left-color:var(--red)}
.th-night dialog{border-radius:4px}
.th-night .sheetbar{background:var(--cream)}
.th-night .field input,.th-night .field select,.th-night .field textarea{border-radius:3px;border-color:#9aa4ae;background:#fff}
/* footer */
.th-night footer{background:var(--night);color:#d9dde6;margin-top:0;padding-top:0;border-top:4px solid var(--red)}
.th-night footer .fsky{width:100%;max-width:1100px;margin:0 auto 18px;opacity:.5;display:block}
.th-night footer b{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:16px}
@media(max-width:860px){.story{grid-template-columns:1fr;padding-top:40px}.pcards{min-height:0;display:grid;gap:18px}.pc{position:relative!important;width:92%!important;top:auto!important;left:auto!important;right:auto!important}.pc.c2{justify-self:end}
.bcols{grid-template-columns:1fr}.chalk{font-size:19px}.chalk li+li:before{margin-right:14px}.hin{padding-top:48px}.th-night .logo img.lw{height:28px}.th-night .box:nth-child(2){transform:none}
.th-night .mbar{background:var(--night)}}
@media(max-width:480px){.strap{letter-spacing:.14em;font-size:13px}.th-night .logo img:first-child{display:none}.ticket{padding:22px 22px}.nhero{min-height:0}}

/* gluten friendly acknowledgement (styles all sites' markup; theme colours here) */
.gfack{display:flex;gap:10px;align-items:flex-start;margin:12px 0;padding:10px 12px;font-size:14px;line-height:1.4;border:2px solid var(--red,#ab2536);background:#fff;border-radius:3px;cursor:pointer}
.gfack input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--red,#ab2536)}
