/* ═══════════════════════════════════════════════════════════════════════════════════════════
   Gay's Seafood and Deli (2026-10-05): the board by the door.
   Display: Bitter, a slab with a real italic, set heavy and leaning like the letters on their sign. Reading: Figtree.
   The board: Kalam, a chalk hand, in the board's own blue and red.
   Motifs: the rope round the frame (a twisted border), the wood plank that says SPECIALS, the order slip.
   Ground: the cream of the dining room tablecloths. Photographs are the only dark.
   ═══════════════════════════════════════════════════════════════════════════════════════════ */
:root{--nav-h:100px;--gs-rope:repeating-linear-gradient(-52deg,var(--rope) 0 7px,var(--rope-2) 7px 9px,#CFA466 9px 16px,var(--rope-2) 16px 18px)}
body.gs{background:var(--paper);color:var(--body);font-family:var(--sans)}
body.gs main{overflow:clip}
.gs .gd{font-family:var(--serif);font-weight:800;letter-spacing:-.015em;line-height:1.04;color:var(--ink);margin:0;padding-bottom:.14em;text-wrap:balance}
.gs .gd em{font-style:italic;font-weight:700;color:var(--accent)}
.gs h2.gd{font-size:clamp(2.1rem,4vw,3.6rem)}
body.gs .eyebrow{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-txt);margin:0 0 14px}
.gs .lede{font-size:19px;line-height:1.7;color:var(--muted);max-width:56ch;margin:18px 0 0}
.gs .lede a{color:var(--ink);font-weight:600}
.gs .sec{padding-block:clamp(84px,10vw,140px)}
.gs .sec-stone{background:var(--stone)}
.gs .gs-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:18px 56px;align-items:end;margin-bottom:clamp(30px,4vw,54px)}
.gs .gs-head .lede{margin:0 0 6px}
@media(max-width:860px){.gs .gs-head{grid-template-columns:1fr}}
.gs .gs-head-1{grid-template-columns:1fr}

/* the name, leaning the way the sign leans */
.gs .gs-mark{display:inline-flex;flex-direction:column;line-height:1;color:var(--ink)}
.gs .gs-mark .w1{font-family:var(--serif);font-style:italic;font-weight:800;font-size:30px;letter-spacing:-.01em}
.gs .gs-mark .w2{font-family:var(--sans);font-weight:600;font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-txt);margin-top:5px}

/* buttons: a pill, the crab's red */
.gs .btn.gs-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;border-radius:100px;border:2px solid var(--accent);
  background:var(--accent);color:#fff;font-family:var(--sans);font-size:17px;font-weight:600;letter-spacing:.01em;text-transform:none;text-decoration:none;
  box-shadow:var(--lift-1);transition:transform var(--t-micro,.3s) var(--ease-out,ease),box-shadow var(--t-micro,.3s) var(--ease-out,ease),background var(--t-micro,.3s) var(--ease-out,ease),color var(--t-micro,.3s) var(--ease-out,ease)}
.gs .btn.gs-btn:hover{transform:translateY(-2px);background:var(--ink);border-color:var(--ink);box-shadow:var(--lift-2)}
.gs .btn.gs-btn:active{transform:translateY(0)}
.gs .tlink{display:inline-flex;align-items:center;min-height:44px;font-family:var(--sans);font-size:17px;font-weight:600;color:var(--ink);
  text-decoration:underline;text-decoration-color:var(--accent-lt);text-decoration-thickness:2px;text-underline-offset:7px;transition:color var(--t-micro,.3s) var(--ease-out,ease)}
.gs .tlink:hover{color:var(--accent)}
.gs .btns{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:32px}

/* ── the header ── */
.nav.gs{background:rgba(246,241,230,.95);-webkit-backdrop-filter:saturate(1.2) blur(14px);backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid var(--line);z-index:90}
.nav.gs .nav-in{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;height:var(--nav-h)}
.nav.gs .brand{margin:0;min-height:44px;display:flex;align-items:center;text-decoration:none}
.nav.gs .nlinks{justify-self:center;display:flex;gap:32px}
.nav.gs .nlinks a{font-family:var(--sans);font-size:17px;font-weight:500;color:var(--ink);padding:10px 0;text-decoration:none;position:relative}
.nav.gs .nlinks a::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--accent-lt);transform:scaleX(0);transform-origin:left;transition:transform var(--t-micro,.3s) var(--ease-out,ease)}
.nav.gs .nlinks a:hover::after,.nav.gs .nlinks a[aria-current]::after{transform:scaleX(1)}
.nav.gs .nlinks a[aria-current]{color:var(--accent)}
.nav.gs .ncta{display:flex;align-items:center;gap:16px}
.nav.gs .btn.gs-btn{min-height:52px;padding:0 22px;font-size:17px}
.nav.gs .menubtn{border-color:rgba(29,35,39,.25);border-radius:100px}
@media(max-width:1179px){.nav.gs .nlinks{display:none}.nav.gs .menubtn{display:inline-flex}}
@media(max-width:760px){.nav.gs .menubtn{width:auto;padding:0 16px}.nav.gs .m-t{position:static;width:auto;height:auto;margin:0;clip:auto;overflow:visible}}
@media(max-width:640px){:root{--nav-h:86px}.gs .gs-mark .w1{font-size:24px}.gs .gs-mark .w2{font-size:11px;letter-spacing:.2em}.nav.gs .btn.gs-btn{display:none}}
.gs .menu-page .mp-links a span{font-family:var(--serif);font-weight:800}

/* ── the line of news under the header: a strip of the plank ── */
.gs .gs-news{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 16px;min-height:48px;padding:8px 20px;background:var(--plank);color:var(--ink);text-decoration:none;font-size:17px;line-height:1.3;border-bottom:1px solid var(--rope-2);transition:background var(--t-micro,.3s) var(--ease-out,ease)}
.gs .gs-news:hover{background:#E6C598}
.gs .gs-news-k{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px}
.gs .gs-news-t{font-family:var(--hand);font-weight:700;font-size:19px}
.gs .gs-news-d{font-size:15px}
.gs .gs-news.is-stale .gs-news-t{text-decoration:line-through;text-decoration-thickness:1px}
@media(max-width:640px){.gs .gs-news-d,.gs .gs-news-k{display:none}.gs .gs-hero-sub,.gs .gs-hero-tel{display:none}}

/* ── HOME: the box of crabs, the headline on it, the board laid on the corner ── */
.gs .gs-hero{position:relative;isolation:isolate;min-height:clamp(600px,calc(100svh - var(--nav-h) - 48px),860px);display:flex;align-items:flex-end;padding:120px 0 clamp(40px,5vw,72px)}
.gs .gs-hero-ph{position:absolute;inset:0;z-index:-1}
.gs .gs-hero-ph picture{display:block;width:100%;height:100%}
.gs .gs-hero-ph img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;display:block}
.gs .gs-hero-ph::after{content:'';position:absolute;inset:0;background:linear-gradient(78deg,rgba(18,14,10,.9) 0%,rgba(18,14,10,.76) 34%,rgba(18,14,10,.34) 62%,rgba(18,14,10,.1) 100%)}
.gs .gs-hero-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(30px,5vw,80px);align-items:end;padding-block:18px}
.gs .gs-hero h1{font-family:var(--serif);font-weight:800;font-size:clamp(2.6rem,5.2vw,5rem);line-height:1.03;letter-spacing:-.02em;color:#FFF8EA;margin:0;padding-bottom:.12em;text-wrap:balance}
.gs .gs-hero h1 em{font-style:italic;font-weight:700;color:#FFC9A8}
body.gs .gs-hero .gs-hero-k{color:#FFE2C8}
.gs .gs-hero-sub{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.6;color:#FFF8EA;margin:20px 0 0;max-width:40ch}
.gs .gs-hero-acts{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:30px}
.gs .gs-hero .btn.gs-btn{background:#FFF8EA;border-color:#FFF8EA;color:var(--ink)}
.gs .gs-hero .btn.gs-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.gs .gs-hero-tel{display:inline-flex;align-items:center;min-height:44px;color:#FFF8EA;font-size:19px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.gs .gs-hero-print{margin:0;justify-self:end;width:min(100%,340px);background:#FFF8EA;padding:10px 10px 12px;box-shadow:var(--lift-3);transform:rotate(2.5deg);transition:transform var(--t-micro,.3s) var(--ease-out,ease)}
.gs .gs-hero-print:hover{transform:rotate(0)}
.gs .gs-hero-print img{width:100%;height:auto;display:block;aspect-ratio:1080/1204}
.gs .gs-hero-print figcaption{font-family:var(--hand);font-size:17px;color:var(--ink);margin-top:8px;text-align:center}
@media(max-width:900px){.gs .gs-hero{min-height:clamp(540px,78svh,720px)}.gs .gs-hero-in{grid-template-columns:1fr}.gs .gs-hero-print{display:none}
  .gs .gs-hero-ph::after{background:linear-gradient(0deg,rgba(18,14,10,.92) 0%,rgba(18,14,10,.74) 44%,rgba(18,14,10,.2) 100%)}}
@media(prefers-reduced-motion:reduce){.gs .gs-hero-print{transform:none}}

/* ── THE BOARD: the rope, the plank, the chalk, on paper ── */
.gs .gs-board{position:relative;max-width:980px;margin-inline:auto;padding:16px;border-radius:26px;background:var(--gs-rope);box-shadow:var(--lift-3)}
.gs .gs-plank{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 20px;margin:-34px 34px 0;padding:14px 26px 12px;background:var(--plank);border:1px solid var(--rope-2);border-radius:6px;box-shadow:var(--lift-1);
  background-image:repeating-linear-gradient(0deg,rgba(156,111,55,.14) 0 1px,transparent 1px 9px)}
.gs .gs-plank span{font-family:var(--serif);font-weight:800;font-size:clamp(1.7rem,3.4vw,2.5rem);letter-spacing:.14em;text-transform:uppercase;color:#5A3A14;line-height:1}
.gs .gs-plank time{font-family:var(--hand);font-weight:700;font-size:19px;color:#5A3A14}
.gs .gs-slate{background:var(--paper-2);border-radius:14px;margin-top:-22px;padding:clamp(44px,5vw,60px) clamp(20px,4vw,48px) clamp(24px,3vw,36px)}
.gs .gs-b-sec{padding-block:22px;border-bottom:2px solid var(--line)}
.gs .gs-b-sec:first-of-type{padding-top:0}
.gs .gs-b-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-bottom:16px}
.gs .gs-b-head h3{font-family:var(--hand);font-weight:700;font-size:clamp(1.9rem,3.6vw,2.6rem);line-height:1.35;color:var(--accent-2);margin:0;letter-spacing:.01em;text-transform:uppercase}
.gs .gs-b-price{font-size:.86em;color:var(--ink);margin-left:.5em;white-space:nowrap}
.gs .gs-b-note{font-family:var(--hand);font-size:19px;color:var(--accent-2);margin:0 0 0 auto}
.gs .gs-days{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.gs .gs-days li{display:grid;gap:4px;padding:14px 16px 13px;border:1px dashed var(--line);border-radius:10px;background:var(--paper)}
.gs .gs-d{font-family:var(--hand);font-weight:700;font-size:19px;color:var(--accent-2);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.gs .gs-dish{font-family:var(--hand);font-size:19px;line-height:1.3;color:var(--ink)}
.gs .gs-days li.is-today{border:2px solid var(--accent);background:#FFF3E6;box-shadow:var(--lift-1)}
.gs .gs-days li.is-today .gs-d::after{content:' · today';color:var(--accent-txt);text-decoration:none}
.gs .gs-lunch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0}
.gs .gs-l{padding:4px 24px 4px 0}
.gs .gs-l + .gs-l{padding:4px 0 4px 24px;border-left:2px solid var(--accent-lt)}
.gs .gs-l-k{font-family:var(--hand);font-size:19px;color:var(--accent-2);margin:0}
.gs .gs-l-k b{font-weight:700;color:var(--ink);white-space:nowrap}
.gs .gs-chalk{font-family:var(--hand);font-weight:700;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.1;color:var(--accent);margin:8px 0 6px}
.gs .gs-l-w{font-family:var(--hand);font-size:19px;line-height:1.35;color:var(--ink);margin:0}
.gs .gs-soups{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 24px}
.gs .gs-soups li{font-family:var(--hand);font-size:21px;color:var(--ink);padding-left:22px;position:relative;line-height:1.3}
.gs .gs-soups li::before{content:'';position:absolute;left:2px;top:.55em;width:9px;height:9px;border-radius:50%;background:var(--accent-lt)}
.gs .gs-soups li:nth-child(odd)::before{background:var(--accent-2)}
.gs .gs-b-foot{padding-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px}
.gs .gs-posted{flex:1 1 320px;margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.gs .gs-stale{display:none;flex:1 1 100%;margin:0;padding:12px 16px;background:#FFF3E6;border-left:4px solid var(--accent);font-size:17px;line-height:1.5;color:var(--body)}
.gs .gs-stale a{color:var(--ink);font-weight:700}
.gs .gs-board.is-stale .gs-stale{display:block}
.gs .gs-boardsec .btns{justify-content:center}
@media(max-width:760px){.gs .gs-board{padding:11px;border-radius:20px}.gs .gs-plank{margin:-28px 14px 0;padding:12px 16px 10px}.gs .gs-days{grid-template-columns:1fr 1fr}.gs .gs-lunch{grid-template-columns:1fr}.gs .gs-l{padding:0 0 16px}.gs .gs-l + .gs-l{padding:16px 0 0;border-left:0;border-top:2px solid var(--accent-lt)}.gs .gs-soups{grid-template-columns:1fr}.gs .gs-b-note{margin-left:0}}
@media(max-width:420px){.gs .gs-days{grid-template-columns:1fr}}
.gs .gs-days-wide{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gs .gs-days-wide li{background:var(--paper-2);padding:20px 22px;border-style:solid}
@media(max-width:760px){.gs .gs-days-wide{grid-template-columns:1fr}}

/* ── prints: their photographs on paper, a little off square ── */
.gs .gs-print{margin:0;background:var(--paper-2);padding:9px 9px 11px;border:1px solid var(--line);border-radius:4px;box-shadow:var(--lift-2)}
.gs .gs-print img{width:100%;height:auto;display:block;border-radius:2px}
.gs .gs-print figcaption{font-family:var(--hand);font-size:19px;color:var(--ink);margin-top:8px;padding:0 4px}

/* ── the case ── */
.gs .gs-caselist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.gs .gs-caselist a{display:grid;gap:8px;align-content:start;height:100%;padding:9px 9px 20px;background:var(--paper-2);border:1px solid var(--line);border-radius:4px;text-decoration:none;color:var(--body);box-shadow:var(--lift-1);transition:transform var(--t-micro,.3s) var(--ease-out,ease),box-shadow var(--t-micro,.3s) var(--ease-out,ease)}
.gs .gs-caselist a:hover{transform:translateY(-4px);box-shadow:var(--lift-3)}
.gs .gs-c-ph{display:block;overflow:hidden;border-radius:2px}
.gs .gs-c-ph img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .6s var(--ease-out,ease)}
.gs .gs-caselist a:hover img{transform:scale(1.035)}
.gs .gs-case-note{margin:26px 0 0;font-size:17px;line-height:1.6;color:var(--muted);max-width:60ch}
.gs .gs-c-n{font-family:var(--serif);font-weight:800;font-size:1.6rem;line-height:1.1;color:var(--ink);padding:6px 8px 0}
.gs .gs-c-p{font-size:17px;line-height:1.55;color:var(--muted);padding:0 8px}
@media(max-width:1000px){.gs .gs-caselist{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.gs .gs-caselist{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-22px;padding:6px 22px 18px;scrollbar-width:none}.gs .gs-caselist::-webkit-scrollbar{display:none}.gs .gs-caselist li{flex:0 0 78%;scroll-snap-align:start}}
.gs .gs-caserows{display:grid;gap:clamp(48px,6vw,84px)}
.gs .gs-crow{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center;scroll-margin-top:calc(var(--nav-h) + 20px)}
.gs .gs-crow.flip .gs-print{order:2}
.gs .gs-crow h2.gd{font-size:clamp(2rem,3.4vw,3rem)}
.gs .gs-crow .gs-print img{aspect-ratio:4/3;object-fit:cover}
@media(max-width:860px){.gs .gs-crow{grid-template-columns:1fr}.gs .gs-crow.flip .gs-print{order:0}}
.gs .gs-cold{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.gs .gs-cold li{font-family:var(--hand);font-weight:700;font-size:21px;color:var(--ink);padding:8px 18px;background:var(--paper-2);border:1px solid var(--line);border-radius:100px}

/* ── this week from the kitchen ── */
.gs .gs-week{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.gs .gs-tile{margin:0;background:var(--paper-2);padding:7px 7px 12px;border:1px solid var(--line);border-radius:4px;box-shadow:var(--lift-1);transition:transform var(--t-micro,.3s) var(--ease-out,ease),box-shadow var(--t-micro,.3s) var(--ease-out,ease)}
.gs .gs-tile:hover{transform:translateY(-4px);box-shadow:var(--lift-2)}
.gs .gs-tile img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border-radius:2px}
.gs .gs-tile figcaption{display:grid;gap:2px;font-size:15px;line-height:1.4;color:var(--muted);padding:9px 4px 0}
.gs .gs-tile figcaption b{font-family:var(--hand);font-weight:700;font-size:19px;color:var(--accent-txt)}
@media(max-width:1100px){.gs .gs-week{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ── the receipts, in their hand ── */
.gs .mm-said{background:var(--paper)}
.gs .mm-said-head h2{font-family:var(--serif);font-weight:800;letter-spacing:-.015em;line-height:1.04;color:var(--ink);font-size:clamp(2.1rem,4vw,3.6rem)}
.gs .mm-said-head h2 em{font-style:italic;font-weight:700;color:var(--accent)}
.gs .mm-said-big{font-family:var(--serif);font-weight:800;color:var(--accent)}
.gs .mm-receipt{box-shadow:var(--lift-2);border-top:4px solid var(--accent-lt)}
.gs .mm-receipt blockquote p{font-family:var(--sans);font-style:normal;font-weight:400;font-size:17px;line-height:1.6;color:var(--body)}
.gs .mm-receipt figcaption{font-family:var(--serif);font-weight:700;font-size:17px}

/* ── come by ── */
.gs .gs-visit-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.gs .gs-room{transform:rotate(-1.2deg)}
@media(prefers-reduced-motion:reduce){.gs .gs-room{transform:none}}
.gs .gs-hours{margin:26px 0 0;display:grid;gap:0;border-top:2px solid var(--ink)}
.gs .gs-hours > div{display:grid;grid-template-columns:minmax(0,10.5rem) minmax(0,1fr);gap:6px 20px;padding:15px 0;border-bottom:1px solid var(--line)}
.gs .gs-hours dt{font-family:var(--hand);font-weight:700;font-size:21px;color:var(--accent-2);margin:0}
.gs .gs-hours dd{margin:0;font-size:17px;line-height:1.5;color:var(--body)}
.gs .gs-hours dd a{color:var(--ink);font-weight:600;display:inline-flex;align-items:center;min-height:44px}
.gs .gs-hours-big dd{font-size:19px}
@media(max-width:860px){.gs .gs-visit-in{grid-template-columns:1fr}.gs .gs-room{transform:none}}
@media(max-width:480px){.gs .gs-hours > div{grid-template-columns:1fr}}

/* ── the order slip ── */
.gs .gs-hold-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px);align-items:start}
.gs .gs-hold-tx{padding-bottom:22px}
.gs .gs-box{max-width:300px;margin-top:34px;transform:rotate(-2deg)}
.gs .gs-box img{aspect-ratio:4/5;object-fit:cover}
.gs .gs-hold-in .gs-room{max-width:480px;margin-top:34px;transform:none}
.gs .gs-slip{position:relative;background:var(--paper-2);border:1px solid var(--line);border-radius:4px;padding:28px 30px 26px;box-shadow:var(--lift-3);
  background-image:repeating-linear-gradient(0deg,transparent 0 37px,rgba(23,80,127,.07) 37px 38px)}
.gs .gs-slip-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:2px solid var(--accent);margin-bottom:18px}
.gs .gs-slip-co{margin:0;font-family:var(--hand);font-weight:700;font-size:1.8rem;color:var(--ink);line-height:1.1}
.gs .gs-slip-n{margin:0;font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-txt)}
.gs .gs-slip .chipset{margin:0 0 18px}
.gs .gs-slip .chipset legend{font-family:var(--sans);font-size:15px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2)}
.gs .gs-slip .chip{border-radius:100px}
.gs .gs-slip .fld label{font-family:var(--sans);font-size:15px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.gs .gs-slip input,.gs .gs-slip textarea{font-size:17px;border-radius:8px;border:1px solid var(--line);background:var(--paper)}
.gs .gs-slip input:focus,.gs .gs-slip textarea:focus{border-color:var(--accent-2)}
.gs .gs-slip-foot{margin-top:6px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.gs .gs-slip-foot .fnote{margin:0;font-size:15px;color:var(--muted)}
@media(max-width:900px){.gs .gs-hold-in{grid-template-columns:1fr}.gs .gs-slip{padding:24px 20px 22px}.gs .gs-box{display:none}}
@media(prefers-reduced-motion:reduce){.gs .gs-box{transform:none}}

/* ── inner page heads ── */
.gs .gs-phead{padding-top:clamp(48px,6vw,84px);padding-bottom:0}
.gs .gs-phead-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(28px,4vw,64px);align-items:end;padding-bottom:clamp(30px,4vw,56px)}
.gs .gs-phead:not(.has-ph) .gs-phead-in{grid-template-columns:1fr;max-width:880px}
.gs .gs-crumbs{font-family:var(--sans);font-size:15px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 20px;display:flex;align-items:center;gap:10px}
.gs .gs-crumbs a{color:var(--muted);display:inline-flex;align-items:center;min-height:44px}
.gs .gs-phead h1.gd{font-size:clamp(2.6rem,5.6vw,5.2rem)}
.gs .gs-phead .gs-print{transform:rotate(1.6deg);max-width:420px;justify-self:end}
.gs .gs-phead .gs-print img{aspect-ratio:4/3;object-fit:cover}
@media(max-width:860px){.gs .gs-phead-in{grid-template-columns:1fr}.gs .gs-phead .gs-print{transform:none;justify-self:start}}
@media(prefers-reduced-motion:reduce){.gs .gs-phead .gs-print{transform:none}}

/* ── the log of earlier boards ── */
.gs .gs-log{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gs .gs-log > li{background:var(--paper-2);border:1px solid var(--line);border-top:5px solid var(--rope);border-radius:4px;padding:22px 24px;box-shadow:var(--lift-1)}
.gs .gs-log-d{font-family:var(--hand);font-weight:700;font-size:21px;color:var(--accent-2);margin:0 0 10px}
.gs .gs-log ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.gs .gs-log ul li{font-family:var(--hand);font-size:19px;line-height:1.35;color:var(--ink)}
@media(max-width:900px){.gs .gs-log{grid-template-columns:1fr}}

/* ── footer ── */
.gs .gs-foot{background:var(--stone);border-top:10px solid transparent;border-image:var(--gs-rope) 10;padding:clamp(56px,7vw,90px) 0 120px}
.gs .gs-f-grid{display:grid;grid-template-columns:1.2fr 1fr 1.2fr .8fr;gap:clamp(28px,4vw,56px)}
.gs .gs-f-name{margin:0 0 14px}
.gs .gs-f-brand p{font-size:17px;line-height:1.6;color:var(--muted);max-width:34ch;margin:0}
.gs .gs-foot h4{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-txt);margin:0 0 14px}
.gs .gs-foot p{margin:0 0 10px;font-size:17px;line-height:1.6;color:var(--body)}
.gs .gs-foot a{color:var(--ink)}
.gs .gs-foot p a{display:inline-flex;align-items:center;min-height:44px}
.gs .gs-f-tel{font-family:var(--serif);font-weight:800;font-size:1.7rem;text-decoration:none}
.gs .gs-f-tel:hover{color:var(--accent)}
.gs .gs-foot ul{list-style:none;padding:0;margin:0}
.gs .gs-foot li a{display:inline-flex;align-items:center;min-height:44px;font-size:17px;text-decoration:none}
.gs .gs-foot li a:hover{text-decoration:underline;text-decoration-color:var(--accent-lt)}
.gs .gs-f-hunt{margin:40px 0 0!important;padding-top:20px;border-top:1px solid var(--line);font-family:var(--hand);font-size:19px!important}
.gs .gs-f-bot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}
.gs .gs-f-bot a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:900px){.gs .gs-f-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gs .gs-f-grid{grid-template-columns:1fr}}

/* ── the phone bar ── */
body.gs .bookbar.quiet .b1{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}

/* ── 404 ── */
.gs .gs-404{padding:120px 0;text-align:center}

/* phones: one quiet first screen (after the hero rules, so it wins) */
@media(max-width:640px){.gs .gs-hero-sub,.gs .gs-hero-tel{display:none}}
.gs .gs-phead + .sec{padding-top:clamp(36px,4vw,64px)}

/* 2026-10-07: iPhone Safari hung the "(" of a phone number outside the link (finish.css hanging-punctuation): it ate the space before an in-sentence number and pulled footer numbers left. */
a[href^="tel:"]{hanging-punctuation:none}
/* SEO pages (2026-10-07): the keyword line inside the hero H1, the steamed crabs steps, two quotes, the questions */
body.gs .gs-hero h1 .eyebrow{display:block;margin:0 0 18px;line-height:1.4}
.gs .gs-steps{list-style:none;counter-reset:st;margin:8px 0 0;padding:0;display:grid;gap:18px}
.gs .gs-steps li{counter-increment:st;position:relative;padding:0 0 0 58px;font-size:18px;line-height:1.6;color:var(--body);max-width:60ch}
.gs .gs-steps li::before{content:counter(st);position:absolute;left:0;top:-2px;width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--serif);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center}
.gs .gs-steps b{color:var(--ink)}
.gs .gs-quotes{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gs .gs-q{margin:0;padding:28px 30px;background:var(--paper-2);border:1px solid var(--line);border-radius:4px;box-shadow:0 14px 30px -18px rgba(29,35,39,.35)}
.gs .gs-q p{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.3rem;line-height:1.5;color:var(--ink);margin:0 0 16px}
.gs .gs-q cite{font-style:normal;font-weight:600;font-size:17px;color:var(--ink)}
.gs .gs-q cite span{display:block;font-weight:400;font-size:16px;color:var(--muted)}
.gs .gs-faq{margin:6px 0 0;display:grid}
.gs .gs-faq>div{padding:22px 0;border-top:1px solid var(--line)}
.gs .gs-faq>div:last-child{border-bottom:1px solid var(--line)}
.gs .gs-faq dt{font-family:var(--serif);font-weight:700;font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.25;color:var(--ink);margin:0 0 8px}
.gs .gs-faq dd{margin:0;font-size:18px;line-height:1.6;color:var(--body);max-width:62ch}
@media (max-width:800px){.gs .gs-quotes{grid-template-columns:1fr}}
.gs .gs-crabband-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1fr);gap:36px;align-items:center}
.gs .gs-crabband-tx .lede{margin-top:0}
@media (max-width:1000px){.gs .gs-crabband-in{grid-template-columns:1fr 1fr}.gs .gs-crabband-tx{grid-column:1/-1}}
@media (max-width:700px){.gs .gs-crabband-in{grid-template-columns:1fr}}
