@font-face{font-family:'Young Serif';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/young-serif-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Mulish';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/mulish-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Mulish';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/mulish-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Mulish';font-style:normal;font-weight:700 900;font-display:swap;src:url(/fonts/mulish-latin-700-normal.woff2) format('woff2')}

/* Fitted to the site: shared header/footer, marsh green for site actions, Cormorant headings, 4px corners. Cranberry and gold only for holiday parts.
   Layout: a bog-harvest poster — the countdown sits on a flooded cranberry bog of floating berries; below it, compact list rows built for phones. Single light look by choice. */
:root{
  --bog:#8E1330; --bog-deep:#5C0A1E; --berry:#C8233F; --blush:#FBEDEF;
  --leaf:#4F5E24; --leaf-soft:#EDF0E0; --gold:#F2B544;
  --paper:#FFFFFF; --ink:#26161A; --muted:#6E5A5F; --line:#EBDDE0;
  --display:"Young Serif", Georgia, serif;
  --serif:"Cormorant Garamond", Georgia, serif;
  --marsh:#3E5C4E; --marsh-dk:#2F4A3E; --site-line:#DDD6C8;
  --body:Mulish, "Segoe UI", system-ui, sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.55 var(--body)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bog-deep)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1{font-family:var(--display);font-weight:400}
h2,h3{font-family:var(--serif);font-weight:600}
h1,h2,h3{line-height:1.08;text-wrap:balance;margin:0}
button{font:inherit;cursor:pointer}
a{color:var(--bog)}

/* site header, holiday variant: deep cranberry, no phone, newsletter button on the right */
.site{background:var(--bog-deep);color:#fff;position:relative;z-index:6}
.hdr{display:flex;align-items:center;gap:20px;min-height:72px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;margin-right:auto;min-width:0}
.brand img{width:48px;height:48px;background:#fff;border-radius:50%;padding:2px;flex:none}
.brand b{display:block;font-family:var(--serif);font-weight:600;font-size:1.45rem;line-height:1;white-space:nowrap}
.brand small{display:block;font-size:.8rem;color:#F6DDE2;margin-top:3px}
.site nav{display:flex;gap:20px;font-size:.95rem}
.site nav a{color:#F6DDE2;text-decoration:none;padding:6px 0}
.site nav a:hover{color:#fff}
.site nav a[aria-current]{color:#fff;font-weight:800;box-shadow:inset 0 -2px 0 var(--gold)}
.hdr-cta{background:var(--gold);color:var(--ink);text-decoration:none;font-weight:800;border-radius:4px;padding:0 16px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap;flex:none}
.hdr-cta:hover{background:#F6C466}
.hdr-cta .l-short{display:none}
.menu-btn{display:none;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.35);background:none;border-radius:4px;align-items:center;justify-content:center;color:#fff;flex:none}
.menu-btn svg{width:22px;height:22px}
@media (max-width:980px){
  .hdr{flex-wrap:wrap;gap:0 10px;min-height:64px}
  .menu-btn{display:inline-flex;order:-1}
  .site nav{display:none;order:5;flex:1 0 100%;flex-direction:column;gap:0;padding-bottom:8px}
  .site.open nav{display:flex}
  .site nav a{padding:14px 4px;border-top:1px solid rgba(255,255,255,.18);font-size:1.1rem}
}
@media (max-width:520px){
  .hdr{gap:0 8px}
  .brand{gap:8px;flex:1 1 0}
  .brand img{width:34px;height:34px}
  .brand b{font-size:1.12rem;overflow:hidden;text-overflow:ellipsis}
  .brand span{min-width:0;overflow:hidden}
  .brand small{display:none}
  .hdr-cta{padding:0 12px;font-size:.92rem}
  .hdr-cta .l-long{display:none}.hdr-cta .l-short{display:inline}
}
/* hero: the bog */
.bog{position:relative;background:radial-gradient(120% 90% at 70% 20%,var(--berry),var(--bog) 55%,var(--bog-deep));color:#fff;overflow:hidden}
.bog canvas{position:absolute;inset:0;width:100%;height:100%}
.bog .wrap{position:relative;padding-block:48px 120px;display:grid;grid-template-columns:auto 1fr;gap:12px 40px;align-items:end}
.big{font-family:var(--display);font-size:clamp(7rem,17vw,13rem);line-height:.8;color:var(--gold);letter-spacing:-.02em}
.big small{display:block;font-family:var(--body);font-size:1.05rem;font-weight:800;letter-spacing:0;color:#fff;margin-top:14px;line-height:1.2}
.bog h1{font-size:clamp(2.3rem,5vw,4.2rem)}
.bog p{margin:.7rem 0 0;font-size:1.1rem;color:#FBE3E7;max-width:44ch}
@media (max-width:820px){
  .bog .wrap{grid-template-columns:1fr;padding-block:26px 104px;gap:10px}
  .big{font-size:6.2rem;display:flex;align-items:flex-end;gap:12px}
  .big small{margin:0 0 10px;font-size:1rem}
  .bog h1{font-size:2.3rem}
}
/* photo rail rides over the bog's bottom edge */
.rail{position:relative;margin-top:-92px;z-index:2}
.rail .wrap{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.rail figure{margin:0;position:relative;border-radius:4px;overflow:hidden;aspect-ratio:1;border:4px solid var(--paper);box-shadow:0 10px 24px -12px rgba(92,10,30,.6);background:var(--blush)}
.rail img{width:100%;height:100%;object-fit:cover;display:block}
.rail figcaption{position:absolute;inset:auto 0 0;font-size:.7rem;padding:12px 6px 4px;color:#fff;background:linear-gradient(transparent,rgba(38,22,26,.8))}
@media (max-width:820px){.rail{margin-top:-80px}.rail .wrap{grid-template-columns:repeat(5,104px);overflow-x:auto;padding-bottom:6px;scrollbar-width:none}}
.trust{padding-block:12px 0;color:var(--muted);font-size:.92rem}
.trust b{color:var(--ink)}

/* type-only tiles */
.choose{padding-block:26px 6px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.tile{border:0;border-radius:4px;padding:16px 16px 14px;text-align:left;color:var(--ink);background:var(--blush);min-height:96px;display:flex;flex-direction:column;justify-content:space-between}
.tile b{font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.1}
.tile span{font-weight:800;font-size:.95rem;color:var(--bog)}
.tile.green{background:var(--leaf-soft)}.tile.green span{color:var(--leaf)}
.tile[aria-pressed="true"]{background:var(--bog);color:#fff}.tile[aria-pressed="true"] span{color:var(--gold)}
@media (max-width:820px){.tiles{grid-template-columns:1fr 1fr}.tile b{font-size:1.2rem}.tile{min-height:84px;padding:12px}}

/* deadlines: this week, as a short list */
.week{padding-block:26px 4px}
.week h2{font-size:1.7rem;margin-bottom:10px}
.dl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.dl li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:3px solid var(--ink)}
.dl .d{font-family:var(--display);font-size:2rem;line-height:1;min-width:2.2ch;color:var(--bog)}
.dl .d small{display:block;font-family:var(--body);font-size:.75rem;font-weight:800;color:var(--muted);margin-top:4px}
.dl strong{display:block;line-height:1.25;font-size:.98rem}
.dl span{display:block;font-size:.86rem;color:var(--muted);line-height:1.3}
.dl li.hot{border-top-color:var(--berry)}
.dl li.hot em{font-style:normal;font-weight:800;color:var(--berry);font-size:.86rem}
@media (max-width:820px){.dl{grid-template-columns:1fr;gap:0}.dl li{border-top-width:1px;border-top-color:var(--line)}.dl li.hot{border-top-color:var(--line)}.dl li:nth-child(n+5){display:none}}

/* sticky: one row */
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--paper);border-bottom:1px solid var(--line);margin-top:20px}
.bar .wrap{display:flex;gap:8px;align-items:center;min-height:58px}
.seg{display:flex;gap:4px;overflow-x:auto;flex:1;min-width:0;scrollbar-width:none;mask-image:linear-gradient(90deg,#000 88%,transparent)}
.seg button{flex:none;border:0;background:none;padding:10px 12px;min-height:44px;font-weight:800;color:var(--muted);border-bottom:3px solid transparent}
.seg button[aria-pressed="true"]{color:var(--ink);border-bottom-color:var(--bog)}
.ib{flex:none;min-width:44px;min-height:44px;border:0;background:var(--blush);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;font-weight:800;color:var(--bog)}
.ib svg{width:20px;height:20px}

/* list rows on phones, cards on desktop */
.section{padding-block:26px 10px}
.section h2{font-size:2rem}
.lede{color:var(--muted);max-width:62ch;margin:.4rem 0 16px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{position:relative;display:grid;grid-template-rows:auto 1fr;background:var(--paper);border-radius:4px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.card .ph{aspect-ratio:3/2;background:var(--blush);position:relative}
.card .ph img{width:100%;height:100%;object-fit:cover;display:block}
.card .ph small{position:absolute;left:8px;bottom:8px;font-size:.7rem;background:rgba(38,22,26,.7);color:#fff;padding:1px 6px;border-radius:3px}
.card .body{padding:14px 16px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.card .row{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.card h3{font-size:1.35rem}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a::after{content:"";position:absolute;inset:0}
.card .price{font-weight:900;color:var(--bog);white-space:nowrap;font-size:1.05rem}
.card .town{color:var(--muted);font-size:.92rem}
.card .bottom{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;position:relative;z-index:1}
.chip{display:inline-block;font-size:.82rem;font-weight:800;padding:3px 10px;border-radius:999px;margin:0}
.chip.ok{background:var(--leaf-soft);color:var(--leaf)}
.chip.hot{background:var(--gold);color:var(--ink)}
.chip.closed{background:#EEE;color:#666;text-decoration:line-through}
.chk{font-size:.82rem;color:var(--leaf);font-weight:700}
.acts{display:flex}
.acts button{border:0;background:none;min-width:44px;min-height:44px;border-radius:4px;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}
.acts svg{width:21px;height:21px}
[data-save][aria-pressed="true"] svg{fill:var(--berry);stroke:var(--berry)}
@media (max-width:820px){
  .grid{grid-template-columns:1fr;gap:0}
  .card{grid-template-rows:none;grid-template-columns:104px 1fr;box-shadow:none;border-radius:0;border-bottom:1px solid var(--line);padding:12px 0}
  .card .ph{aspect-ratio:1;border-radius:4px;overflow:hidden}
  .card .ph small{display:none}
  .card .body{padding:0 0 0 12px;gap:2px}
  .card .row{flex-direction:column;gap:0}
  .card h3{font-size:1.18rem}
  .card .bottom{padding-top:2px}
  .chk{display:none}
}
.more{margin-top:16px}
.more button{width:100%;max-width:360px;border:0;background:var(--bog);color:#fff;font-weight:800;border-radius:4px;min-height:50px}

.signup{background:var(--leaf);color:#fff;margin-top:40px}
.signup .wrap{padding-block:28px;display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between}
.signup h2{font-size:1.7rem}
.signup p{margin:.2rem 0 0;color:#E4EBCF}
.signup form{display:flex;gap:8px;flex:1;min-width:min(100%,360px)}
.signup input{flex:1;min-width:0;min-height:50px;border:0;border-radius:4px;padding:0 14px;font:inherit}
.signup button{border:0;border-radius:4px;background:var(--gold);color:var(--ink);font-weight:900;padding:0 18px}
footer{padding-block:24px 40px;color:var(--muted);font-size:.9rem}

dialog{border:0;border-radius:6px;padding:0;max-width:520px;width:calc(100% - 24px);color:var(--ink)}
dialog::backdrop{background:rgba(92,10,30,.6)}
.dlg-top{position:sticky;top:0;display:flex;justify-content:flex-end;padding:6px;background:var(--paper)}
.dlg-top button{min-width:48px;min-height:48px;border:0;background:var(--blush);border-radius:4px;font-size:1.4rem;color:var(--bog)}
.dlg-body{padding:0 22px 22px}
.dlg-img{width:100%;height:auto;border-radius:4px;display:block}
.dlg-credit{font-size:.75rem;color:var(--muted);margin:.3rem 0 .8rem}
.dlg-name{font-size:1.9rem}
.dlg-town{margin:.1rem 0;color:var(--muted)}
.dlg-price{font-weight:900;color:var(--bog);font-size:1.2rem;margin:.4rem 0}
.dlg-note{background:var(--blush);padding:10px 12px;border-radius:4px;font-size:.9rem}
.dlg-verified{color:var(--leaf);font-weight:700;font-size:.9rem}
@media (max-width:600px){dialog{margin:auto 0 0;width:100%;max-width:none;border-radius:6px 6px 0 0;max-height:88vh}}

.bar .wrap{display:block;min-height:0}
.fb-search{background:var(--blush);border-radius:4px}
.fb-search svg{color:var(--bog)}
.fb-chip{border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);border-radius:0;padding:0 10px}
.fb-chip .fb-c{font-weight:600;font-size:.82rem}
.fb-chip[aria-pressed="true"]{color:var(--ink);border-bottom-color:var(--bog)}
.fb-quick{border:1px solid var(--line);border-radius:4px;color:var(--ink);padding:0 12px}
.fb-quick[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.fb-sep{background:var(--line)}
.fb-btn{border:0;background:var(--blush);border-radius:4px;color:var(--bog)}
.fb-n{background:var(--bog);color:#fff}.fb-pn{background:var(--paper);color:var(--bog)}
.fp{border-radius:12px;background:var(--paper);color:var(--ink)}.fp::backdrop{background:rgba(92,10,30,.6)}
.fp-head,.fp-foot{background:var(--paper)}.fp-foot{border-top:1px solid var(--line)}
.fp-head h2{font-size:1.6rem}.fp-x{background:var(--blush);border-radius:4px;color:var(--bog)}
.fp-opt span{background:var(--blush);border-radius:4px}
.fp-opt input:checked+span{background:var(--bog);color:#fff}
.fp-opt input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.fp select{border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}
.fp-clear{color:var(--bog)}.fp-go{background:var(--bog);color:#fff;border-radius:4px}
.sec{padding-block:28px 6px}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:3px solid var(--ink);padding-bottom:6px}
.sec-head h2{font-size:1.9rem}.sec-n{font-weight:900;color:var(--bog)}
.sec .lede{margin:.6rem 0 12px}
.results{margin:18px 0 0;font-weight:700}
.results-clear,.none-opt{font:inherit;cursor:pointer}
.results-clear{border:0;background:none;color:var(--bog);text-decoration:underline;font-weight:800;min-height:44px}
.none{padding:30px 0}.none h2{font-size:1.7rem}
.none-opt{border:0;background:var(--blush);color:var(--bog);border-radius:4px;min-height:44px;padding:0 14px;font-weight:800}
.ph-none{background:var(--blush);color:var(--bog);font-weight:800;font-size:.85rem}
.ph-none svg{width:34px;height:34px}
.newb{color:var(--leaf)}

/* fitted overrides */
.sec-head h2{font-size:2.3rem}
.card h3{font-size:1.5rem;line-height:1.1}
.week h2{font-size:2rem}
.tile b{font-family:var(--serif);font-weight:600;font-size:1.65rem}
.more button{background:var(--marsh);border-radius:4px}
.more button:hover{background:var(--marsh-dk)}
.fp-go{background:var(--marsh)}
.fb-btn{background:var(--paper);border:1px solid var(--site-line);color:var(--ink)}
.fb-n{background:var(--marsh)}.fb-pn{background:var(--bog);color:#fff}
.dlg-name{font-family:var(--serif);font-weight:600;font-size:2.1rem}
@media (max-width:820px){.card h3{font-size:1.3rem}.sec-head h2{font-size:2rem}.tile b{font-size:1.35rem}}
/* newsletter CTAs: site green for the action, cranberry stays decoration */
.nl-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;background:var(--marsh);color:#fff;text-decoration:none;font-weight:800;border-radius:4px;white-space:nowrap}
.nl-btn:hover{background:var(--marsh-dk)}
.nl{padding-block:24px 0}
.nl-card{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;background:var(--blush);border-radius:4px;padding:20px 22px;position:relative;overflow:hidden}
.nl-card::after{content:"";position:absolute;right:-18px;top:-18px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#F05A70,var(--berry) 55%,#7A0F26);opacity:.18}
.nl-card>div{min-width:0;flex:1 1 380px}
.nl-card h2{font-size:1.9rem;color:var(--bog)}
.nl-card p{margin:.3rem 0 0;max-width:60ch}
.nl-end{background:var(--bog-deep);color:#fff;margin-top:44px;padding-block:0}
.nl-end-in{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;padding-block:34px}
.nl-end-in>div{flex:1 1 420px;min-width:0}
.nl-end h2{font-size:2.2rem;color:#fff}
.nl-end p{margin:.4rem 0 0;color:#F6DDE2;max-width:62ch}
.nl-end .nl-btn{background:var(--gold);color:var(--ink)}
.nl-end .nl-btn:hover{background:#F6C466}
@media (max-width:820px){.nl-card .nl-btn,.nl-end .nl-btn{width:100%}.nl-card h2{font-size:1.6rem}.nl-end h2{font-size:1.8rem}}
.foot{border-top:1px solid var(--site-line);color:var(--muted);font-size:.92rem}
.foot-in{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:20px;padding-block:28px 40px}
.foot-in div{display:flex;flex-direction:column;gap:6px;min-width:0}
.foot-in b,.foot-in strong{color:var(--ink)}
.foot-in a{color:var(--muted)}
.foot .proto{font-style:italic}
@media (max-width:820px){.foot-in{grid-template-columns:1fr 1fr}}
/* slim phone bar: one line, closable, only on phones */
.nlbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;gap:8px;background:var(--paper);border-top:1px solid var(--site-line);box-shadow:0 -6px 18px -10px rgba(38,22,26,.35);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))}
.nlbar p{margin:0;flex:1;min-width:0;font-weight:800;font-size:.95rem;line-height:1.2}
.nlbar .nl-btn{min-height:40px;padding:0 14px;font-size:.92rem}
.nlbar-x{min-width:40px;min-height:40px;border:0;background:none;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}
.nlbar-x svg{width:18px;height:18px}
@media (min-width:821px){.nlbar{display:none!important}}
/* closed / sold-out popup */
.dlg-missed{background:var(--blush);border-radius:4px;padding:12px 14px;margin:12px 0}
.dlg-missed p{margin:0 0 10px}
.dlg-missed-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dlg-still{border:0;background:none;color:var(--marsh);font-weight:800;text-decoration:underline;min-height:44px;padding:0 4px}

/* conversion pass */
/* (prototype-only bar removed) */
.proto-bar{display:none;background:#FFF7D6;color:#3D3200;font-size:.85rem;padding:6px max(16px,env(safe-area-inset-left,0px));border-bottom:1px dashed #C9A227;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.proto-bar select{font:inherit;font-weight:700;min-height:32px;max-width:100%}
.find{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:18px;font-weight:800}
.find-sel{position:relative;display:inline-flex}
.find-sel::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border:solid var(--ink);border-width:0 2px 2px 0;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.find select{appearance:none;-webkit-appearance:none;font:inherit;font-weight:800;font-size:1rem;color:var(--ink);background:#fff;border:0;border-radius:4px;min-height:50px;padding:0 44px 0 16px;max-width:100%;cursor:pointer;box-shadow:0 6px 18px -8px rgba(0,0,0,.45)}
.find select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
@media (max-width:820px){.find{margin-top:14px}.find-sel,.find select{width:100%}}
.rail-open{all:unset;display:block;width:100%;height:100%;cursor:pointer}
.rail-open:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.rail figure:hover img{transform:scale(1.03)}.rail img{transition:transform .3s}
.fresh-strip{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:10px;background:var(--leaf-soft);padding:10px 14px;border-radius:4px;color:var(--ink)}
.fresh-strip button{border:0;background:none;color:var(--leaf);font-weight:900;text-decoration:underline;min-height:40px;padding:0}
.wk-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.wk-head h2{margin:0}.wk-head h2 span{font-family:var(--body);font-size:1rem;font-weight:800;color:var(--muted);margin-left:6px}
.link-btn{border:0;background:none;color:var(--marsh);font-weight:800;text-decoration:underline;min-height:44px;padding:0}
.dl strong a{color:var(--ink);text-decoration:none}.dl strong a:hover{text-decoration:underline}
.card .when{font-size:.88rem;color:var(--ink);margin-top:2px}
.menu-hint{font-size:.85rem;font-weight:800;color:var(--marsh)}
.card.is-sold .ph img{filter:grayscale(.6);opacity:.8}
.more button{background:var(--paper);color:var(--marsh);border:2px solid var(--marsh)}
.more button:hover{background:var(--marsh);color:#fff}
.nl-proof{display:block;font-weight:800;color:var(--bog);margin-top:4px;font-size:.92rem}
.nl{padding-block:28px 4px}
.fb-sel{border:1px solid var(--site-line);border-radius:4px;background:var(--paper);color:var(--ink)}
.fb-pn.zero{background:var(--paper);color:var(--muted);box-shadow:inset 0 0 0 1px var(--site-line)}
.toast{background:var(--ink);color:#fff;box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
.sec .lede{max-width:62ch}

/* ---- live-page additions (10 Nov 2026 port) ---- */
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:10px 14px;z-index:99;font-weight:800}
.skip:focus{left:8px;top:8px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
img{max-width:100%}
.answer{padding-block:18px 0}
.answer p{margin:0;max-width:72ch;color:var(--ink)}
.answer details{margin-top:6px}.answer summary{cursor:pointer;color:var(--marsh);font-weight:800;min-height:44px;display:inline-flex;align-items:center}
.faq{padding-block:30px 0}.faq h2{font-size:2rem;margin-bottom:10px}
.faq details{border-top:1px solid var(--line);padding:6px 0}.faq summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}
.faq p{margin:.2rem 0 .8rem;max-width:72ch}
.how{padding-block:26px 0;color:var(--muted);font-size:.95rem}.how h2{font-size:1.6rem;color:var(--ink);margin-bottom:6px}.how p{max-width:72ch;margin:.3rem 0}
.static-list{list-style:none;margin:0;padding:0}.static-list li{padding:8px 0;border-bottom:1px solid var(--line)}
html.js .static-list-wrap{display:none}
/* full menus: static HTML (no-JS, print, search engines); JS moves one at a time into the popup */
.menus-static{padding-block:30px 0}
.menus-static>h2{font-size:2rem;margin-bottom:8px}
html.js .menus-static{display:none}
.menus-static details{border-top:1px solid var(--line);padding:8px 0}
.menus-static summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}
.menus-static .t2-open .vh{position:static!important;width:auto;height:auto;clip:auto}
.c-menu-body .t2-mnav,.c-menu-body .t2-acts .c-save,.c-menu-body .t2-share,.c-menu-body .c-cmpchk,.c-menu-body .c-ics{display:none!important}
.c-menu-body .t2-mh{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.c-menu-body .t2-mh span{color:var(--muted);font-size:.92rem}
.c-menu-body .t2-mh strong{font-family:var(--serif);font-weight:600;font-size:2rem;line-height:1.05}
.c-mimg{margin:0 0 12px}.c-mimg img{width:100%;height:auto;border-radius:4px;display:block}
.c-mimg figcaption{font-size:.75rem;color:var(--muted);margin-top:4px}
.t2-mtitle{font-weight:800;margin:.2rem 0}.t2-mprice{font-weight:900;color:var(--bog);font-size:1.12rem;margin:.3rem 0}
.c-meta{margin:.6rem 0;display:grid;gap:6px}.c-meta div{display:flex;gap:10px;align-items:baseline}
.c-meta dt{display:flex;align-items:center;gap:6px;font-weight:800;min-width:7.5em;color:var(--muted);font-size:.9rem}
.c-meta dt svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}.c-meta dd{margin:0}
.c-left{margin-left:6px;font-weight:800;color:var(--berry);font-size:.88rem}
.c-desc{margin:.6rem 0}
.c-mprices{list-style:none;margin:.6rem 0;padding:0;border-top:1px solid var(--line)}
.c-mprices li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}
.c-msec{margin-top:14px}.c-msec h4{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin:0 0 4px}
.c-msec ul{margin:0;padding-left:1.1em}.c-msec li{margin:2px 0}
.c-mnote,.c-cav{background:var(--blush);padding:10px 12px;border-radius:4px;font-size:.92rem;margin:12px 0}
.c-tags,.c-mtags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.c-tag{font-size:.8rem;font-weight:800;padding:3px 10px;border-radius:999px;background:var(--leaf-soft);color:var(--leaf)}
.t2-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0 8px}
.c-btn{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 18px;border-radius:4px;background:var(--marsh);color:#fff;text-decoration:none;font-weight:800}
.c-btn:hover{background:var(--marsh-dk)}.c-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4}
.c-phone{font-weight:800;color:var(--ink);min-height:44px;display:inline-flex;align-items:center}
.c-msrc{font-size:.88rem;color:var(--leaf);font-weight:700;margin-top:12px}.c-orig{color:var(--marsh)}
.c-mx svg{width:18px;height:18px}
/* popup chrome */
dialog#menu-dialog{max-height:90vh;overflow:auto;padding:0}
.dlg-top{justify-content:space-between;gap:6px;z-index:2;border-bottom:1px solid var(--line)}
.dlg-nav{display:flex;gap:6px}
.dlg-nav button{min-width:48px;min-height:48px;border:0;background:var(--blush);border-radius:4px;font-size:1.4rem;color:var(--bog);cursor:pointer}
.dlg-nav button[disabled]{opacity:.35;cursor:default}
.dlg-body{padding-top:14px}
html.dlg-lock{overflow:hidden}
@media print{.site,.bog canvas,.rail,.bar,.nlbar,.nl,.nl-end,.choose,.week,#browse-list,.fresh-strip{display:none!important}html.js .menus-static{display:block}.menus-static details>*{display:block}}
.card .price{white-space:normal;text-align:right;max-width:55%}
@media (max-width:820px){.card .price{text-align:left;max-width:none}}
.card .body,.card .row,.card h3{min-width:0;overflow-wrap:anywhere}
.foot-in>div{min-width:0}.foot-in a,.foot-in span{overflow-wrap:anywhere}

/* Share kit (10 Nov 2026): hero share pill, shared-plan and my-plan banners, popup actions */
.share-pill{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.75);background:rgba(255,255,255,.12);color:#fff;font:700 .98rem/1 Mulish,system-ui,sans-serif;cursor:pointer;min-height:44px}
.share-pill:hover,.share-pill:focus-visible{background:#fff;color:var(--bog,#7A0F26);outline:none}
.share-pill svg{width:18px;height:18px}
.trust a{color:var(--marsh);font-weight:700;text-underline-offset:3px}
.plan-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 6px;padding:14px 16px;border-radius:14px;background:#F3F7F4;border:1px solid #CFE0D5}
.plan-in p{margin:0;max-width:60ch}
.plan-in-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.plan-in .nl-btn{border:0;cursor:pointer}
.dlg-plan{display:flex;flex-wrap:wrap;gap:6px 18px}
