/* Copied from extra.css. url() paths are relative to the site root. */
/* FP-0019 r2 Sipps On Wheels: "fishfry" (alternative design v2 to r1f, not a replacement).
   A warm Southern fish-fry: butcher-paper page with kraft grain, cast-iron and bayou-dark bands, hot-sauce red and
   lemon accents, red gingham trim like a fish-fry table, chunky slab headlines (Alfa Slab One), hand-lettered
   labels (Caveat Brush) and a dark menu board with dotted leaders. All fonts are free Google Fonts, self-hosted (OFL).
   Colors come from content.json tokens (var(--c-*)); the raw hex values below are the fry-board extras. */
@font-face{font-family:"Caveat Brush";src:url("assets/fonts/CaveatBrush-Regular.subset.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
.layout-fishfry{--hand:"Caveat Brush","Comic Sans MS",cursive;--iron:#211C18;--bayou:#17241F;--sauce:#A8320F;--sauce-hi:#D9481C;--lemon:#F2C230;--paper:#F5ECDC;--kraft:#E9D8B9;
  --gingham:repeating-linear-gradient(90deg,rgba(176,38,26,.55) 0 12px,transparent 12px 24px),repeating-linear-gradient(0deg,rgba(176,38,26,.55) 0 12px,#F7EFE2 12px 24px);
  --grain:url("assets/img/paper-grain.png");
  font-size:1.0625rem;line-height:1.62;background:var(--c-bg) var(--grain);background-size:240px}
.layout-fishfry h1,.layout-fishfry h2,.layout-fishfry h3{font-weight:400;letter-spacing:.005em;text-wrap:balance}
.layout-fishfry h1{font-size:clamp(2.4rem,10.5vw,4.4rem);line-height:1.02}
.layout-fishfry h2{font-size:clamp(1.85rem,7.4vw,2.7rem);line-height:1.08}
.layout-fishfry h3{font-size:1.25rem;line-height:1.2}
.layout-fishfry section{padding-block:3rem}
.layout-fishfry p{max-width:40rem}

/* hand-lettered section labels: the h2s get a lemon brush underline */
.layout-fishfry main h2{position:relative;padding-bottom:.35rem}
.layout-fishfry main h2::after{content:"";display:block;width:4.5rem;height:.42rem;margin-top:.35rem;border-radius:999px 30% 999px 40%;background:var(--sauce);transform:rotate(-1.5deg)}

/* header: cast-iron bar with a gingham edge */
.layout-fishfry .site-header{background:var(--iron);color:var(--paper);border-bottom:0;position:relative;z-index:5}
.layout-fishfry .site-header::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:10px;background:var(--gingham)}
.layout-fishfry .site-header .wrap{padding-block:.6rem .5rem;row-gap:.2rem}
.layout-fishfry .brand{font-family:var(--f-heading);font-size:1.45rem;color:var(--paper)}
.layout-fishfry .brand:focus-visible,.layout-fishfry .site-nav a:focus-visible{outline-color:var(--lemon)}
.layout-fishfry .site-nav a{color:var(--paper);font-weight:700;font-size:1rem;letter-spacing:.02em}
.layout-fishfry .site-nav a:hover{color:var(--lemon)}
.layout-fishfry .site-nav a[aria-current="page"]{color:var(--lemon);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:.35em}
@media (max-width:47.99rem){
  .layout-fishfry .site-nav{width:100%}
  .layout-fishfry .site-nav ul{flex-wrap:wrap;gap:0 .9rem;padding:0}
  .layout-fishfry .site-nav a{white-space:nowrap;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:.2rem .1rem}
}
@media (max-width:23rem){.layout-fishfry .site-nav ul{gap:0 .6rem}.layout-fishfry .site-nav a{font-size:.95rem}}

/* buttons: chunky slab labels, offset "stamp" shadow */
.layout-fishfry .btn{font-family:var(--f-heading);font-weight:400;letter-spacing:.02em;border-radius:3px;min-height:52px;padding-inline:1.35rem;border:2px solid var(--iron);box-shadow:4px 4px 0 var(--iron);touch-action:manipulation;transition:transform .12s,box-shadow .12s}
.layout-fishfry .btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--iron)}
.layout-fishfry .btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--iron)}
.layout-fishfry .btn-primary{background:var(--c-primary);color:#fff}
.layout-fishfry .btn-secondary{background:var(--paper);color:var(--iron)}

/* hero: bayou-dark with grain; photo in a paper-lined fry basket, tilted, on the LEFT on desktop and on top on phones */
.layout-fishfry .hero{padding:0;background:var(--bayou) var(--grain);background-size:240px;color:var(--c-hero-text);position:relative;overflow:hidden}
.layout-fishfry .hero h1{color:var(--c-hero-text)}
.layout-fishfry .hero .wrap{display:grid;gap:1.5rem;padding-block:2rem 2.75rem}
.layout-fishfry .hero .eyebrow{font-family:var(--hand);font-size:1.55rem;line-height:1.1;color:var(--lemon);text-transform:none;letter-spacing:0;margin:0 0 .3rem}
.layout-fishfry .hero picture{order:-1;display:block;margin:0 auto;width:100%;max-width:36rem;background:var(--gingham);padding:12px;border-radius:4px;transform:rotate(-1.6deg);box-shadow:0 18px 30px rgba(0,0,0,.45)}
.layout-fishfry .hero-art{display:block;width:100%;max-width:none;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.layout-fishfry .hero p.lead{font-size:1.15rem;max-width:32rem}
.layout-fishfry .hero .hero-hours{font-weight:700;color:var(--lemon);margin:.9rem 0 0;max-width:32rem}
.layout-fishfry .hero .hero-rating a{color:var(--c-hero-text);text-decoration-color:var(--lemon)}
.layout-fishfry .hero .hero-rating .star{color:var(--lemon)}
.layout-fishfry .hero .btn-row{flex-wrap:wrap;gap:.9rem}
.layout-fishfry .hero .btn{border-color:#0c1310;box-shadow:4px 4px 0 #0c1310}
.layout-fishfry .hero .btn-primary{background:var(--sauce);border-color:#0c1310}
.layout-fishfry .hero .btn-secondary{background:var(--lemon);color:var(--iron)}
.layout-fishfry .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:var(--gingham)}
@media (min-width:52rem){
  .layout-fishfry .hero .wrap{grid-template-columns:1.1fr 1fr;gap:3.5rem;align-items:center;padding-block:3.5rem 4rem}
  .layout-fishfry .hero picture{order:-1;margin:0}
  .layout-fishfry .hero-art{aspect-ratio:4/3}
}

/* Today's spot: lemon "order ticket" with a dashed tear line and a hot-sauce pin */
.layout-fishfry .todays-spot{background:var(--lemon);color:var(--iron);padding-block:2.2rem 2.4rem;border-bottom:3px dashed var(--iron)}
.layout-fishfry .todays-spot h2{color:var(--iron);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.layout-fishfry .todays-spot h2::before{content:"";flex:none;width:1.05rem;height:1.05rem;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--sauce);box-shadow:0 0 0 3px var(--iron)}
.layout-fishfry .todays-spot h2::after{display:none}
.layout-fishfry .todays-spot .spot-label{font-family:var(--hand);font-size:1.6rem;line-height:1.1;margin:.2rem 0 .3rem}
.layout-fishfry .todays-spot address{font-style:normal;font-weight:700;font-size:1.2rem}
.layout-fishfry .todays-spot .btn-primary{background:var(--iron);color:var(--paper)}
.layout-fishfry .todays-spot .map-embed{border:3px solid var(--iron);border-radius:3px;box-shadow:6px 6px 0 rgba(33,28,24,.85)}
.layout-fishfry .todays-spot .map-embed iframe{height:260px}
@media (min-width:52rem){.layout-fishfry .todays-spot .map-embed iframe{height:300px}}

/* gallery: polaroid-style prints pinned on kraft paper */
.layout-fishfry #gallery{background:var(--kraft) var(--grain);background-size:240px}
.layout-fishfry .gallery{grid-template-columns:1fr 1fr;gap:1rem}
@media (min-width:52rem){.layout-fishfry .gallery{grid-template-columns:repeat(3,1fr);gap:1.6rem}}
.layout-fishfry .gallery figure{background:#FFFDF8;padding:.55rem .55rem .7rem;box-shadow:0 6px 14px rgba(42,33,27,.25);border-radius:2px}
.layout-fishfry .gallery li:nth-child(odd) figure{transform:rotate(-1.4deg)}
.layout-fishfry .gallery li:nth-child(even) figure{transform:rotate(1.2deg)}
.layout-fishfry .gallery img{aspect-ratio:1;object-fit:cover;border-radius:1px}
.layout-fishfry .gallery figcaption{font-family:var(--hand);font-size:1.25rem;line-height:1.2;color:var(--iron);margin-top:.4rem}

/* weekly specials: chalk-on-iron tickets */
.layout-fishfry #weekly-specials{background:var(--iron) var(--grain);background-size:240px;color:var(--paper)}
.layout-fishfry #weekly-specials h2{color:var(--paper)}
.layout-fishfry #weekly-specials h2::after{background:var(--lemon)}
.layout-fishfry #weekly-specials .section-intro,.layout-fishfry #weekly-specials p{color:var(--paper)}
.layout-fishfry .specials{gap:1rem}
.layout-fishfry .special{background:#2E2721;color:var(--paper);border:2px dashed rgba(245,236,220,.55);border-radius:4px;box-shadow:none}
.layout-fishfry .special h3{color:var(--lemon)}
.layout-fishfry .special .when{font-family:var(--hand);font-size:1.4rem;line-height:1.1;color:#FFD9A8;margin-bottom:.3rem}
.layout-fishfry .special .price,.layout-fishfry .special strong{color:var(--lemon)}
.layout-fishfry .special a{color:var(--lemon)}

/* follow strip (inside the sections) */
.layout-fishfry .strip-sec{background:var(--paper);padding-block:1.8rem 2rem;border-block:0}
.layout-fishfry .strip-sec h2{font-size:1.5rem}

/* reviews: torn-paper order slips on butcher paper */
.layout-fishfry .reviews-sec{background:var(--c-bg) var(--grain);background-size:240px}
.layout-fishfry .reviews-toggle{font-family:var(--f-heading);border:2px solid var(--iron);border-radius:3px;background:var(--paper);color:var(--iron);min-height:44px;padding-inline:1rem;box-shadow:3px 3px 0 var(--iron)}
.layout-fishfry .review-card{background:#FFFDF8;border:0;border-top:6px solid var(--sauce);border-radius:2px;box-shadow:0 8px 18px rgba(42,33,27,.18)}
.layout-fishfry .review-stars{color:#9A6A00;letter-spacing:.12em;font-size:1.15rem}
.layout-fishfry .review-card blockquote p{font-size:1.02rem}
.layout-fishfry .review-author{font-family:var(--f-heading);font-weight:400;color:var(--iron)}
.layout-fishfry .review-src{color:var(--c-link);font-weight:700}

/* about: cast-iron skillet circle photo */
.layout-fishfry #about{background:var(--bayou) var(--grain);background-size:240px;color:var(--c-hero-text)}
.layout-fishfry #about h2{color:var(--c-hero-text)}
.layout-fishfry #about h2::after{background:var(--lemon)}
.layout-fishfry #about a{color:var(--lemon)}
.layout-fishfry #about img{border-radius:50%;aspect-ratio:1;object-fit:cover;border:10px solid var(--iron);box-shadow:0 0 0 4px #3B332C,0 16px 30px rgba(0,0,0,.45);width:100%;max-width:min(100%,24rem);height:auto;box-sizing:border-box;display:block;margin-inline:auto}
@media (min-width:52rem){.layout-fishfry #about .grid-2{align-items:center}}

/* hours & find us: kraft card hours, lemon today row, open light */
.layout-fishfry #visit{background:var(--c-bg) var(--grain);background-size:240px}
.layout-fishfry .hours{font-variant-numeric:tabular-nums;max-width:26rem;background:#FFFDF8;border:2px solid var(--iron);box-shadow:5px 5px 0 var(--iron)}
.layout-fishfry .hours th,.layout-fishfry .hours td{padding:.6rem .8rem}
.layout-fishfry .hours th{font-weight:700}
.layout-fishfry .hours td{text-align:right;white-space:nowrap}
.layout-fishfry .hours tr.is-today th,.layout-fishfry .hours tr.is-today td{background:var(--lemon);box-shadow:none}
.layout-fishfry #visit .tz{margin-top:.8rem;font-size:.95rem}
.layout-fishfry .today-now{font-weight:700;font-size:1.15rem;margin:.1rem 0 .7rem}
.layout-fishfry .today-now:not([hidden]){display:flex;align-items:center;gap:.55rem}
.layout-fishfry .today-now::before{content:"";flex:none;width:.95rem;height:.95rem;border-radius:50%;background:var(--sauce);box-shadow:0 0 0 2px var(--iron)}
.layout-fishfry .today-now.is-open::before{background:#2E8B57}
.layout-fishfry .home-qr{background:#FFFDF8;border:2px dashed var(--iron);border-radius:3px}
.layout-fishfry .home-qr figcaption strong{font-family:var(--f-heading);font-weight:400;font-size:1.2rem}
.layout-fishfry #visit address.card{background:#FFFDF8;border:2px solid var(--iron);border-radius:3px;box-shadow:5px 5px 0 var(--iron)}
.layout-fishfry #visit .good-to-know{margin:.4rem 0 1rem}
.layout-fishfry #visit .spot-ref a{font-weight:700}
.layout-fishfry #visit .visit-photo{background:var(--gingham);padding:10px;border-radius:3px;transform:rotate(1deg)}
.layout-fishfry #visit .visit-photo img{border-radius:2px;aspect-ratio:3/2;object-fit:cover;height:auto;display:block}
.layout-fishfry #visit .visit-photo figcaption{background:#FFFDF8;padding:.3rem .5rem;margin-top:8px}

/* contact */
.layout-fishfry #contact{background:var(--kraft) var(--grain);background-size:240px}
.layout-fishfry .link-list a{background:#FFFDF8;border:2px solid var(--iron);border-radius:3px;box-shadow:3px 3px 0 var(--iron);font-weight:700;justify-content:flex-start}
.layout-fishfry .link-list a:hover{background:var(--lemon)}

/* footer: cast iron with gingham top */
.layout-fishfry .site-footer{position:relative;padding-top:calc(10px + 1.6rem);background:var(--iron);color:var(--paper)}
.layout-fishfry .site-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:var(--gingham)}
.layout-fishfry .site-footer a{color:var(--lemon)}

/* ===== menu page: the menu board ===== */
.layout-fishfry.page-menu main{background:var(--iron) var(--grain);background-size:240px;color:var(--paper)}
.layout-fishfry.page-menu .menu-head{padding-block:2.2rem 1rem}
.layout-fishfry.page-menu .menu-head h1{color:var(--lemon)}
.layout-fishfry.page-menu .menu-head p{color:var(--paper)}
.layout-fishfry.page-menu .menu-head a,.layout-fishfry .menu-order a{color:var(--lemon);font-weight:700}
.layout-fishfry .menu-order a{display:inline-flex;align-items:center;min-height:44px}
.layout-fishfry .cat-nav{background:var(--iron);box-shadow:0 2px 0 rgba(245,236,220,.25)}
.layout-fishfry .cat-nav a{background:transparent;color:var(--paper);border:2px solid rgba(245,236,220,.5);border-radius:3px;font-weight:700}
.layout-fishfry .cat-nav a:hover{border-color:var(--lemon);color:var(--lemon)}
.layout-fishfry .cat-nav a[aria-current="true"]{background:var(--lemon);border-color:var(--lemon);color:var(--iron)}
.layout-fishfry .cat-nav a:focus-visible{outline-color:var(--lemon)}
.layout-fishfry .menu-cat,.layout-fishfry .menu-cat.alt{background:transparent;color:var(--paper);padding-block:1.6rem}
.layout-fishfry .menu-cat .wrap{border:3px solid #5A4A3C;outline:2px solid #2E2721;outline-offset:-9px;padding:1.4rem 1.25rem;background:#1A1613;border-radius:4px;box-shadow:inset 0 0 40px rgba(0,0,0,.55)}
.layout-fishfry .menu-cat h2{color:var(--lemon);text-align:center}
.layout-fishfry .menu-cat h2::after{margin-inline:auto;background:var(--sauce-hi)}
.layout-fishfry .menu-cat p,.layout-fishfry .menu-cat .cat-note{color:#E9DCC4}
.layout-fishfry .item{border-bottom:1px dashed rgba(245,236,220,.25);padding-block:1rem}
.layout-fishfry .item:last-child{border-bottom:0}
.layout-fishfry .item-top{display:flex;align-items:baseline;gap:.4rem}
.layout-fishfry .item h3{color:var(--paper);font-size:1.2rem;flex:1;display:flex;align-items:baseline;gap:.5rem}
.layout-fishfry .item h3::after{content:"";flex:1;min-width:1rem;border-bottom:3px dotted rgba(242,194,48,.55);transform:translateY(-.25em)}
.layout-fishfry .price{color:var(--lemon);font-family:var(--f-heading);font-weight:400;font-size:1.2rem;white-space:nowrap}
.layout-fishfry .item .desc{color:#E9DCC4;font-size:1rem}
.layout-fishfry .variants{color:#E9DCC4}
.layout-fishfry .variants li{border-color:rgba(245,236,220,.2)}
.layout-fishfry .variants .price{font-size:1.05rem}
.layout-fishfry.page-menu a{color:var(--lemon)}
.layout-fishfry.page-menu .site-header a,.layout-fishfry.page-menu .site-footer a{color:inherit}
.layout-fishfry.page-menu .site-nav a[aria-current="page"]{color:var(--lemon)}
.layout-fishfry.page-menu .site-footer a{color:var(--lemon)}
.layout-fishfry.page-menu .tag,.layout-fishfry.page-menu .badge{background:var(--c-tag-bg);color:var(--c-tag-text)}

/* focus rings visible on dark bands */
.layout-fishfry .hero :focus-visible,.layout-fishfry #weekly-specials :focus-visible,.layout-fishfry #about :focus-visible,.layout-fishfry.page-menu main :focus-visible,.layout-fishfry .site-footer :focus-visible,.layout-fishfry .site-header :focus-visible{outline:3px solid var(--lemon);outline-offset:3px}

@media (prefers-reduced-motion:reduce){.layout-fishfry *{transition:none!important;animation:none!important}}
@media (max-width:51.99rem){.layout-fishfry .hero .wrap{padding-block:1.4rem 2.5rem;gap:1.2rem}.layout-fishfry .hero picture{padding:9px;max-width:30rem}.layout-fishfry .hero-art{aspect-ratio:3/2}}
/* menu board notes in hand lettering (chalk) */
.layout-fishfry .menu-cat .wrap>p{font-family:var(--hand);font-size:1.45rem;line-height:1.2;text-align:center;color:#FFD9A8;max-width:none}
