/* Canonical supplied homepage visual source, v24.8.384 */

:root{--bg:#F7F4EA;--card:#FFFFFF;--ink:#16261C;--soft:#3D4F44;--dim:#68786C;--line:#E4E0D2;--line2:#D3CEBD;--gold:#B8913A;--gold-s:#F4ECD8;--rose:#A32A3A;
--sage:#6B7A2A;--sage-s:#EEF0DA;--blue:#4467A8;--blue-s:#E3EAF6;--teal:#1E4D2F;--teal-s:#E1ECE2;--lav:#7462B8;--lav-s:#ECE8F8;--ocean:#2C5D78;--ocean-s:#E0ECF2;
--serif:'Instrument Serif',Georgia,serif;--sans:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--r:22px;--sh:0 1px 2px rgba(23,37,46,.05),0 8px 24px rgba(23,37,46,.06)}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;color:var(--ink);font:500 15.5px/1.55 var(--sans);-webkit-font-smoothing:antialiased;
 background:radial-gradient(900px 500px at 85% -10%,#E6EEDD 0,transparent 60%),radial-gradient(800px 500px at -10% 10%,#F1E9D2 0,transparent 60%),var(--bg);background-attachment:fixed}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2.5px solid var(--teal);outline-offset:2px;border-radius:8px}
h1,h2,h3,h4{margin:0}
p{margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.serif{font-family:var(--serif);font-weight:400;letter-spacing:-.01em}
.wrap{max-width:1360px;margin:0 auto;padding:0 24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}

/* Canonical global site header is provided by theme-site-header + 2027.css. */

/* ===== Layout ===== */
.layout{display:grid;grid-template-columns:260px minmax(0,640px) 320px;justify-content:center;gap:28px;padding-top:26px;padding-bottom:70px;align-items:start}
.side{position:sticky;top:110px;display:flex;flex-direction:column;gap:16px}

/* Left */
.hello{padding:18px}
.hello .row{display:flex;align-items:center;gap:12px}
.hello b{display:block;font-size:15.5px}
.hello small{color:var(--dim);font-size:13px}
.hello .nums{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;padding-top:12px;border-top:1px solid var(--line);text-align:center}
.hello .nums a{padding:2px}
.hello .nums strong{display:block;font-size:18px;font-weight:800}
.hello .nums span{font-size:12px;color:var(--dim);font-weight:600}
.home-side-menu{padding:8px}
.home-side-menu h3{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);padding:10px 12px 6px}
.home-side-menu a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:12px;font-weight:600;color:var(--soft)}
.home-side-menu a:hover{background:var(--bg);color:var(--ink)}
.home-side-menu a.on{background:var(--ink);color:#fff}
.home-side-menu a.on svg{color:#E2C97E}
.home-side-menu svg{width:19px;height:19px;color:var(--dim);flex:none}
.home-side-menu .cnt{margin-left:auto;font-size:12px;font-weight:700;background:var(--bg);border-radius:999px;padding:2px 8px;color:var(--dim)}
.home-side-menu a.on .cnt{background:rgba(255,255,255,.15);color:#fff}

/* Center */
.intro{padding:4px 2px 18px}
.intro h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4.6vw,58px);line-height:1;letter-spacing:-.02em}
.intro h1 em{color:var(--teal)}
.intro p{color:var(--soft);margin-top:8px;font-size:16.5px}
.search{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 18px;border-radius:18px;background:#fff;border:1px solid var(--line2);box-shadow:var(--sh);margin-top:16px}
.search:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px var(--teal-s)}
.search svg{color:var(--dim);flex:none}
.search input{flex:1;min-width:0;border:0;outline:none;background:none;font-size:16.5px;font-weight:600;min-height:46px}
.search input::placeholder{color:#8C9CA5;font-weight:500}
.search button{min-height:46px;padding:0 20px;border:0;border-radius:13px;background:var(--teal);color:#fff;font-weight:800}
.search button:hover{background:#163A23}
.quick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:14px 0 2px}
.quick a.qt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:88px;padding:12px 6px;border-radius:16px;background:#fff;border:1px solid var(--line);text-align:center;font-weight:700;font-size:13.5px;line-height:1.25;color:var(--soft);transition:border-color .15s,transform .15s,box-shadow .15s}
.quick a.qt:hover{border-color:var(--teal);color:var(--ink);transform:translateY(-2px);box-shadow:0 8px 18px rgba(22,38,28,.08)}
.quick .qi{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--teal-s);color:var(--teal)}
.quick .qi svg{width:19px;height:19px}
.quick a.qt.now-on .qi{background:var(--teal);color:#fff}
@media(max-width:600px){.quick{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:104px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.quick a.qt{scroll-snap-align:start}}

.feed-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 2px 12px;flex-wrap:wrap}
.feed-h h2{font-size:19px;font-weight:800;letter-spacing:-.02em}
.tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;background:#fff;border:1px solid var(--line);border-radius:14px}
.tabs button{flex:none;min-height:36px;padding:0 12px;border:0;border-radius:10px;background:none;font-weight:700;font-size:13.5px;color:var(--dim)}
.tabs button:hover{color:var(--ink)}
.tabs button[aria-pressed="true"]{background:var(--ink);color:#fff}
.feed{display:flex;flex-direction:column;gap:18px}

/* ===== Status cards ===== */
.post{overflow:hidden;position:relative}
.post::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--c)}
.p-head{display:flex;align-items:center;gap:12px;padding:20px 20px 0}
.p-av{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:none;font-family:var(--serif);font-size:26px;background:var(--cs);color:var(--c);border:1px solid color-mix(in srgb,var(--c) 22%,transparent)}
.p-who{flex:1;min-width:0}
.p-who b{display:flex;align-items:center;gap:6px;font-size:15.5px;font-weight:800}
.p-who b svg{color:var(--teal);flex:none}
.p-who small{display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:var(--dim);font-size:13px;font-weight:600}
.fol{color:var(--teal);font-weight:800}
.p-tag{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border-radius:999px;background:var(--cs);color:var(--c);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.p-tag svg{width:15px;height:15px}
.p-body{padding:14px 20px 0}
.p-body h3{font-size:22px;font-weight:800;letter-spacing:-.025em;line-height:1.2}
.p-body p{color:var(--soft);margin-top:6px}

/* rich blocks */
.blk{margin:16px 20px 0;border-radius:18px;background:var(--cs);border:1px solid color-mix(in srgb,var(--c) 18%,transparent)}
.blk-lbl{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
.go{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:13px;background:var(--c);color:#fff;font-weight:800;font-size:14.5px;white-space:nowrap}
.go:hover{filter:brightness(.9)}
.chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13.5px;font-weight:700;color:var(--soft)}

/* menu card */
.menu-blk{padding:16px}
.dishes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 14px}
.dish{background:#fff;border-radius:14px;padding:12px;border:1px solid var(--line)}
.dish .ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--cs);color:var(--c);margin-bottom:8px}
.dish b{display:block;font-size:14px;line-height:1.3}
.dish span{font-size:12.5px;color:var(--dim);font-weight:600}
.blk-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}

/* ticket */
.ticket{display:grid;grid-template-columns:118px minmax(0,1fr);background:#fff;border:1px solid var(--line2);position:relative}
.stub{background:var(--c);color:#fff;border-radius:17px 0 0 17px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 8px;position:relative}
.stub small{font-size:12px;font-weight:800;letter-spacing:.18em;opacity:.85}
.stub b{font-family:var(--serif);font-weight:400;font-size:58px;line-height:1}
.stub::after{content:"";position:absolute;right:-1px;top:12px;bottom:12px;border-right:2px dashed rgba(255,255,255,.0)}
.ticket::before,.ticket::after{content:"";position:absolute;left:109px;width:18px;height:18px;border-radius:50%;background:var(--card);border:1px solid var(--line2)}
.ticket::before{top:-10px;clip-path:inset(50% 0 0 0)}
.ticket::after{bottom:-10px;clip-path:inset(0 0 50% 0)}
.t-main{padding:16px 18px;border-left:2px dashed var(--line2)}
.t-main h4{font-size:17px;font-weight:800}
.t-row{display:flex;flex-wrap:wrap;gap:6px 16px;margin:6px 0 12px;font-size:14px;color:var(--soft);font-weight:600}
.t-row span{display:inline-flex;align-items:center;gap:6px}
.t-row svg{color:var(--c)}

/* job */
.job{padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}
.job .ic{width:52px;height:52px;border-radius:15px;background:#fff;color:var(--c);display:grid;place-items:center;border:1px solid var(--line)}
.job h4{font-size:17px;font-weight:800}
.job .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.job .blk-foot{grid-column:1/-1}

/* slots */
.slots-blk{padding:16px}
.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 14px}
.slot{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border-radius:14px;background:#fff;border:1.5px solid var(--line);font-weight:800;transition:border-color .15s,background .15s}
.slot small{font-size:12px;color:var(--dim);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.slot:hover{border-color:var(--c)}
.slot[aria-pressed="true"]{background:var(--c);border-color:var(--c);color:#fff}
.slot[aria-pressed="true"] small{color:rgba(255,255,255,.8)}

/* coupon */
.coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;background:#fff;border:2px dashed color-mix(in srgb,var(--c) 45%,transparent);position:relative}
.coupon .scis{position:absolute;top:-12px;left:22px;background:var(--card);padding:0 6px;color:var(--c)}
.c-main{padding:18px}
.c-main .big{font-family:var(--serif);font-size:38px;line-height:1;color:var(--c)}
.c-main p{font-size:14px;color:var(--soft);margin-top:4px}
.c-side{padding:16px;border-left:2px dashed color-mix(in srgb,var(--c) 30%,transparent);display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:180px}
.code{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding:0 6px 0 12px;border-radius:12px;background:var(--cs);font:800 14px ui-monospace,'SF Mono',Menlo,monospace;letter-spacing:.08em;color:var(--ink)}
.code button{min-height:32px;padding:0 10px;border-radius:9px;border:0;background:#fff;font:700 12.5px var(--sans);color:var(--c)}

/* actions */
.p-stats{display:flex;justify-content:space-between;padding:14px 20px 0;font-size:13px;color:var(--dim);font-weight:600}
.p-acts{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:10px 12px 12px;padding-top:8px;border-top:1px solid var(--line)}
.p-acts button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:0;border-radius:12px;background:none;font-weight:700;font-size:14px;color:var(--dim)}
.p-acts button:hover{background:var(--bg);color:var(--ink)}
.p-acts button svg{width:18px;height:18px}
.p-acts button[aria-pressed="true"]{color:var(--c)}
.p-acts button[aria-pressed="true"] svg{fill:currentColor}
.cmt{padding:0 20px 18px}
.cmt form{display:flex;gap:8px}
.cmt input{flex:1;min-width:0;min-height:44px;border-radius:12px;border:1px solid var(--line2);padding:0 14px;background:var(--bg)}
.cmt input:focus{outline:none;border-color:var(--c);background:#fff}
.cmt button{min-height:44px;padding:0 16px;border:0;border-radius:12px;background:var(--ink);color:#fff;font-weight:700}
.cmt-list p{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--bg);font-size:14px}
.cmt-list p b{margin-right:6px}

.t-menu{--c:var(--sage);--cs:var(--sage-s)}.t-event{--c:var(--blue);--cs:var(--blue-s)}.t-hiring{--c:var(--teal);--cs:var(--teal-s)}.t-open{--c:var(--lav);--cs:var(--lav-s)}.t-deal{--c:var(--ocean);--cs:var(--ocean-s)}
.empty{padding:40px 20px;text-align:center;color:var(--dim);font-weight:600}

/* Right */
/* Right-now discovery uses the existing canonical availability navigation data. */
.now{padding:18px;background:linear-gradient(160deg,#245A37,#16301F);color:#fff;border:0}
.now-h{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.now-h h2{color:#fff;margin:0}
.now .live{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#F7E5A8}
.now .live i{width:8px;height:8px;border-radius:50%;background:#F7E5A8;flex:none}
.now-intro{margin:10px 0 14px;color:#fff;line-height:1.5}
.now-main-link{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-radius:12px;background:#fff;color:#16301F;font-weight:800;text-decoration:none}
.now-main-link:hover,.now-main-link:focus-visible{background:#F7E5A8;color:#16301F}
.now nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.now nav a{display:flex;align-items:center;min-height:46px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.12);color:#fff;font-weight:700;font-size:12px;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.now nav a:hover,.now nav a:focus-visible{background:rgba(255,255,255,.24);color:#fff}
.now-note{margin:12px 0 0;font-size:12px;line-height:1.5;color:#E2F0E6}
.box{padding:18px}
.box-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.box-h h3{font-size:16px;font-weight:800}
.box-h a{font-size:13px;font-weight:700;color:var(--teal)}
.mini{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.mini:first-of-type{border-top:0}
.mini .d{width:44px;text-align:center;border-radius:12px;background:var(--blue-s);color:var(--blue);padding:4px 0;flex:none}
.mini .d small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.1em}
.mini .d b{font-family:var(--serif);font-size:22px;line-height:1;font-weight:400}
.mini b.t{display:block;font-size:14px;line-height:1.3}
.mini span.s{font-size:12.5px;color:var(--dim);font-weight:600}
.cats{display:flex;flex-wrap:wrap;gap:6px}
.cats a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;background:var(--bg);font-weight:700;font-size:13.5px;color:var(--soft)}
.cats a:hover{background:var(--ink);color:#fff}


/* Responsive */
@media(max-width:1260px){.layout{grid-template-columns:minmax(0,640px) 320px}.left{display:none}}
@media(max-width:960px){.layout{grid-template-columns:minmax(0,1fr)}.right{position:static;display:grid;grid-template-columns:1fr 1fr}.right .now{grid-column:1/-1}.foot{grid-template-columns:1fr 1fr 1fr}.foot>div:first-child{grid-column:1/-1}}
@media(max-width:600px){
 .wrap{padding:0 14px}.acts .hide-s{display:none}
 .right{grid-template-columns:1fr}
 .p-head{padding:16px 16px 0;flex-wrap:wrap}.p-tag{order:3;margin-left:60px}.p-body{padding:12px 16px 0}.blk{margin:14px 16px 0}.p-stats{padding:12px 16px 0}
 .dishes{grid-template-columns:1fr 1fr}.dish:nth-child(3){display:none}
 .ticket{grid-template-columns:90px minmax(0,1fr)}.ticket::before,.ticket::after{left:81px}.stub b{font-size:44px}
 .coupon{grid-template-columns:1fr}.c-side{border-left:0;border-top:2px dashed color-mix(in srgb,var(--c) 30%,transparent)}
 .p-acts button span{display:none}
 .foot{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* ===== Future features ===== */
.search .mic,.search .kbd{flex:none}
.mic{width:42px;height:42px;border:0;border-radius:12px;background:var(--teal-s);color:var(--teal);display:grid;place-items:center}
.mic:hover{background:#D3E4D5}
.mic.rec{background:var(--rose);color:#fff;animation:recp 1.2s ease-in-out infinite}
@keyframes recp{50%{box-shadow:0 0 0 7px rgba(163,42,58,.18)}}
.kbd{font:700 11.5px var(--sans);color:var(--dim);border:1px solid var(--line2);border-radius:7px;padding:3px 7px;background:var(--bg);cursor:pointer}
.weather{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.08);font-size:13.5px}
.weather b{font-size:20px;font-weight:800}
.weather span{color:#CFDCCF;line-height:1.35}
.peek{margin-top:12px}
.peek-h{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#E2C97E}
.peek input{width:100%;accent-color:#E2C97E;margin:8px 0 2px}
.peek-ticks{display:flex;justify-content:space-between;font-size:11px;color:#A9C0AE;font-weight:600}
.peek-list{display:grid;gap:4px;margin-top:10px}
.peek-list div{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.06)}
.peek-list i{font-style:normal;font-weight:700}
.peek-list .o{color:#B9E3B0}.peek-list .c{color:#A9B5AC}
.peek small{display:block;margin-top:6px;font-size:11px;color:#94AA99}
/* ===== Morning briefing ===== */
.brief{margin:22px 0 4px;padding:22px;border-radius:24px;border:1px solid var(--line);position:relative;overflow:hidden;box-shadow:var(--sh)}
.brief[data-mode="morning"]{background:linear-gradient(135deg,#FBF3DC 0%,#EEF3E4 70%)}
.brief[data-mode="afternoon"]{background:linear-gradient(135deg,#E8F1EE 0%,#F6F1E2 80%)}
.brief[data-mode="evening"]{background:linear-gradient(135deg,#1F4A30 0%,#14271B 85%);color:#EEF4EC;border-color:#1F4A30}
.brief[data-mode="weekend"]{background:linear-gradient(135deg,#ECE8F6 0%,#EEF3E4 80%)}
.brief::after{content:"";position:absolute;right:-60px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(226,201,126,.45),transparent 70%);pointer-events:none}
.brief[data-mode="evening"]::after{background:radial-gradient(circle,rgba(207,227,210,.18),transparent 70%)}
.brief-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.brief .bk{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.brief[data-mode="evening"] .bk{color:#E2C97E}
.brief h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.4vw,40px);line-height:1.05;margin:6px 0 4px}
.brief .bsub{font-size:14.5px;color:var(--soft)}
.brief[data-mode="evening"] .bsub{color:#C3D3C5}
.brief-x{position:relative;z-index:1;min-height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--line2);background:rgba(255,255,255,.6);font-weight:700;font-size:13px;color:var(--soft)}
.brief[data-mode="evening"] .brief-x{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#EEF4EC}
.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;position:relative;z-index:1}
.bi{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);transition:transform .15s,box-shadow .15s}
.bi:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(22,38,28,.08)}
.brief[data-mode="evening"] .bi{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12)}
.bi .bic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none;background:var(--teal);color:#fff}
.brief[data-mode="evening"] .bi .bic{background:#E2C97E;color:#16261C}
.bi b{display:block;font-size:14.5px;line-height:1.3}
.bi span{display:block;font-size:13px;color:var(--dim);margin-top:2px;line-height:1.4}
.brief[data-mode="evening"] .bi span{color:#B5C7B8}
.brief.min .brief-grid,.brief.min .bsub{display:none}
.brief.min h2{font-size:24px}


/* Production-only accessibility and integration */
.feed .empty{padding:24px}.home-dynamic-label{font-size:13px;color:var(--dim)}.home-disabled{opacity:.7;cursor:not-allowed}

/* Live PHP business-update cards use the exact canonical feed component structure. */
.t-general{--c:var(--teal);--cs:var(--teal-s)}
.home-post-link{padding:14px 20px 18px;margin-top:14px;border-top:1px solid var(--line)}
.home-post-link a{display:inline-flex;align-items:center;min-height:36px;font-size:14px;font-weight:800;color:var(--teal);text-decoration:none}
.home-post-link a:hover{text-decoration:underline}
.feed .p-body p{overflow-wrap:anywhere;white-space:pre-line;line-height:1.6}
.feed .p-who b a{overflow-wrap:anywhere}
@media(max-width:600px){.feed .p-head{flex-wrap:wrap}.feed .p-tag{margin-left:60px}.feed .p-body h3{font-size:20px}}

/* Homepage phase 2: active feed navigation and real event previews. */
.home-feed-browse{display:inline-flex;align-items:center;min-height:40px;color:var(--teal);font-size:14px;font-weight:800;text-decoration:none}
.home-feed-browse:hover{text-decoration:underline}
.home-feed-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:14px;font-size:13px;font-weight:700;color:var(--soft)}
.home-feed-pages a{display:inline-flex;align-items:center;min-height:38px;color:var(--teal);font-weight:800}
.side.right .home-rail-date{margin:10px 0 4px;color:var(--soft);font-size:13px;font-weight:700}
.side.right .home-rail-title{margin:4px 0 12px;font-size:15px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.side.right .box a{display:inline-flex;align-items:center;min-height:34px;font-weight:800}

/* Canonical homepage briefing accessibility and mobile layout. */
.brief[hidden]{display:none}
.brief .bi:focus-visible,.brief-x:focus-visible{outline:3px solid #174d3b;outline-offset:3px}
@media(max-width:600px){.brief{padding:18px;border-radius:18px}.brief-grid{grid-template-columns:1fr}.brief h2{font-size:30px}.brief-top{align-items:flex-start}}

/* Approved compact Right Now rail; server-derived data, no mockup sample values. */
.now{padding:16px;background:linear-gradient(160deg,#245A37,#16301F);color:#e9f3f3}
.now-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap}
.now-h .live{margin:0;font:800 11px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#e2c97e}
.now-h>a{font-size:12px;font-weight:800;color:#e2c97e}
.rail-clock{font:400 44px/1 var(--serif);margin:10px 0 2px}
.rail-date{margin:0;color:#a9c0c4;font-size:13px}
.rail-weather.weather{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:10px 12px;border:0;border-radius:12px;background:rgba(255,255,255,.08)}
.rail-weather b{font-size:20px;white-space:nowrap}.rail-weather span{font-size:12px;color:#cfdccf}
.peek{margin-top:12px}.peek-h{display:flex;justify-content:space-between;color:#e2c97e;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:800}
.rail-peek{display:block;margin:0}.rail-peek input[type=range]{display:block;width:100%;min-height:24px;margin:6px 0 0;accent-color:#e2c97e;cursor:pointer}
.rail-peek input:focus-visible{outline:3px solid #e2c97e;outline-offset:2px}
.peek-ticks{display:flex;justify-content:space-between;font-size:10px;color:#b4c5b8}
.peek-list{display:grid;gap:4px;margin-top:10px}
.peek-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.07);font-size:12px}
.peek-list a{color:#fff;text-decoration:none;overflow-wrap:anywhere}.peek-list a:hover,.peek-list a:focus-visible{text-decoration:underline}
.rail-state{font-style:normal;font-weight:700;white-space:nowrap;font-size:11px;color:#c1d0c5}
.rail-state-open{color:#b9e3b0}.rail-state-soon{color:#ffe5a3}.rail-source{display:block;margin-top:7px;font-size:10px;color:#a9c0ae;line-height:1.4}
.rail-empty{font-size:12px;margin:0}.rail-empty a{color:#fff}
.now nav.rail-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:13px}
.now nav.rail-shortcuts a{display:block;min-height:49px;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:12px;font-weight:800}
.now nav.rail-shortcuts a small{display:block;margin-top:2px;color:#b4c7bd;font-size:10px;font-weight:500}
.now nav.rail-shortcuts a:focus-visible{outline:3px solid #e2c97e}
.home-coming .box-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.home-coming .box-h h3{font-size:16px}.home-coming .box-h a{font-size:12px}
.home-coming .mini{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line);text-decoration:none}.home-coming .mini .d{flex:none;min-width:42px;text-align:center;padding:5px;border-radius:10px;background:var(--blue-s);color:var(--blue)}.home-coming .mini .d small{display:block;font-size:10px}.home-coming .mini .d b{font:400 20px var(--serif)}.home-coming .mini .t{display:block;font-size:13px}.home-coming .mini .s{display:block;font-size:11px;color:var(--dim)}
/* Phase 1 canonical homepage functional components; retained within authoritative stylesheet. */
.home-suggestions{position:relative;z-index:12;margin:-2px 0 12px;padding:8px;background:#fff;border:1px solid var(--line2);border-radius:0 0 16px 16px;box-shadow:var(--sh)}
.home-suggestions ul{list-style:none;margin:0;padding:0}.home-suggestions li a{display:flex;flex-direction:column;gap:1px;padding:10px 12px;border-radius:9px;line-height:1.35}.home-suggestions li a:hover,.home-suggestions li a:focus-visible{background:var(--teal-s)}.home-suggestions small{font-size:12px;color:var(--dim)}.home-search-feedback{padding:5px 12px;font-size:12px;color:var(--dim)}
.home-letter{padding:20px}.home-letter-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800}.home-letter h3{font:400 30px/1.1 var(--serif);margin:6px 0}.home-letter p{font-size:13px;color:var(--soft);margin:0 0 12px}.home-letter label{font-size:12px;font-weight:700}.home-letter-input{display:flex;gap:6px;margin-top:5px}.home-letter-input input{min-width:0;flex:1;border:1px solid var(--line2);border-radius:10px;padding:10px;background:#fff}.home-letter-input button{border:0;border-radius:10px;background:var(--teal);color:#fff;padding:10px 14px;font-weight:800}.home-letter-consent{display:flex;gap:8px;align-items:flex-start;margin-top:12px;line-height:1.4}.home-letter-consent input{margin-top:3px;flex:none}.home-letter-consent a,.home-letter-info{color:var(--teal);text-decoration:underline}.home-letter-info{display:inline-block;margin-top:10px;font-size:12px}
.home-command{position:fixed;inset:0;z-index:9999;display:grid;place-items:start center;padding:12vh 16px 16px;background:rgba(9,27,18,.7)}.home-command-panel{width:min(100%,590px);max-height:78vh;overflow:auto;background:#fff;border-radius:20px;padding:20px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.home-command-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.home-command-head h2{font:400 29px/1.1 var(--serif)}.home-command-head button{border:1px solid var(--line);border-radius:9px;padding:8px;background:#fff}.home-command-panel label{display:block;font-size:12px;font-weight:800;margin-bottom:5px}.home-command-panel input{width:100%;min-height:48px;border:1px solid var(--line2);border-radius:10px;padding:12px}.home-command-results{margin-top:12px;display:grid;gap:3px}.home-command-results a{display:block;padding:12px;border-radius:10px;font-weight:700}.home-command-results a:hover,.home-command-results a:focus-visible{background:var(--teal-s)}.home-command-results small{display:block;font-size:12px;font-weight:500;color:var(--dim)}.home-command-hint{margin-top:14px;font-size:12px;color:var(--dim)}
@media(max-width:600px){.home-command{padding-top:6vh}.home-letter-input{flex-wrap:wrap}.home-letter-input button{min-height:44px}}

/* Canonical homepage navigation: keep the real mobile toggle usable. */
@media(max-width:1100px){
}


/* Feed media and published menu content: canonical feed component scope. */
#feed .home-feed-photo{display:block;margin:12px 0;border-radius:14px;overflow:hidden;aspect-ratio:16/9;background:var(--surface,#eef2ef)}
#feed .home-feed-photo img{display:block;width:100%;height:100%;object-fit:cover}
#feed .home-menu-items{list-style:none;margin:10px 0 14px;padding:0;display:grid;gap:7px}
#feed .home-menu-items li{padding:9px 12px;border-radius:9px;background:rgba(0,0,0,.035);font-size:.92rem;line-height:1.5}
#feed .menu-feed .go{display:inline-flex;margin-top:4px}

/* Phase 3D public feed engagement */
.p-stats{display:flex;justify-content:space-between;gap:12px;padding:14px 20px 0;font-size:13px;color:var(--dim);font-weight:600}.p-acts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:10px 12px 12px;padding-top:8px;border-top:1px solid var(--line)}.p-acts form{margin:0}.p-acts button,.p-acts .feed-signin-action{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:0;border-radius:12px;background:none;font:700 14px var(--sans);color:var(--dim);text-decoration:none}.p-acts button:hover,.p-acts .feed-signin-action:hover{background:var(--bg);color:var(--ink)}.p-acts button[aria-pressed="true"]{color:var(--c,var(--teal))}.p-acts button:disabled{opacity:.55}.cmt{padding:0 20px 18px}.cmt form{display:flex;gap:8px}.cmt input{flex:1;min-width:0;min-height:44px;border-radius:12px;border:1px solid var(--line2);padding:0 14px;background:var(--bg)}.cmt button{min-height:44px;padding:0 16px;border:0;border-radius:12px;background:var(--ink);color:#fff;font-weight:700}.cmt-list p{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--bg);font-size:14px}.cmt-list p b{margin-right:6px}.feed-action-status{min-height:1.2em;margin-top:8px;font-size:12px;color:var(--dim)}@media(max-width:640px){.p-acts{grid-template-columns:repeat(5,minmax(56px,1fr));overflow-x:auto}.p-acts button,.p-acts .feed-signin-action{font-size:12px;padding:0 6px}.p-stats{font-size:12px}}

/* Repair roadmap Phase 2: canonical rich local-business feed. */
.feed-h-sub{margin:3px 0 0;color:var(--dim);font-size:13px;line-height:1.4}
.home-feed-filters{display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin:0 0 14px;padding:5px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow-x:auto;scrollbar-width:thin}
.home-feed-filters button{flex:none;min-height:36px;padding:7px 13px;border:0;border-radius:10px;background:transparent;color:var(--soft);font:700 13px var(--sans);cursor:pointer}
.home-feed-filters button:hover,.home-feed-filters button:focus-visible{background:var(--bg);color:var(--ink)}
.home-feed-filters button.is-active,.home-feed-filters button[aria-pressed="true"]{background:var(--ink);color:#fff}
.home-feed-filters button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.feed .post{border-radius:18px;box-shadow:0 8px 24px rgba(25,45,32,.07)}
.feed .post[hidden]{display:none}
.feed .p-head{padding-bottom:14px;border-bottom:1px solid var(--line)}
.feed .p-tag{border-radius:999px;padding:7px 10px;background:var(--cs);color:var(--c);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.feed .p-body{padding-top:16px}
.feed .home-feed-photo{margin:14px 0 0!important;border-radius:0!important;aspect-ratio:16/9!important}
.feed .blk{margin-top:14px}
.feed .ticket{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:16px}
.feed .ticket .stub{align-self:start;min-width:58px;padding:10px 8px;border-radius:14px;background:#fff;text-align:center;border:1px solid color-mix(in srgb,var(--c) 28%,transparent)}
.feed .ticket .stub small{display:block;font-size:10px;font-weight:800;color:var(--c)}
.feed .ticket .stub b{display:block;font:400 27px/1.05 var(--serif);color:var(--c)}
.feed .job{padding:16px;display:grid;grid-template-columns:auto 1fr;gap:12px}
.feed .job .ic{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--c);color:#fff;font-weight:900}
.feed .coupon{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:16px;border-style:dashed}
.feed .slots-blk{background:linear-gradient(135deg,var(--cs),#fff)}
.feed .p-stats{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}
.feed .home-post-link{display:none}
@media(max-width:640px){.feed-h{align-items:flex-start}.feed-h-sub{max-width:34ch}.home-feed-filters{width:100%}.feed .ticket,.feed .job,.feed .coupon{grid-template-columns:1fr}.feed .ticket .stub{width:58px}.feed .p-head{padding-bottom:12px}}

/* Repair roadmap Phase 3: non-AI Ask Thomasville discovery launcher. */
.ask-thomasville{position:fixed;right:max(20px,calc((100vw - 1320px)/2 + 20px));bottom:20px;z-index:1200;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 18px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:var(--teal);color:#fff;box-shadow:0 12px 30px rgba(15,38,25,.24);font:800 14px/1 var(--sans);cursor:pointer}.ask-thomasville:hover{filter:brightness(1.08)}.ask-thomasville:focus-visible{outline:3px solid #E2C97E;outline-offset:3px}.ask-thomasville span:first-child{color:#E2C97E;font-size:17px}.home-command[hidden]{display:none}
@media(max-width:600px){.ask-thomasville{right:14px;bottom:14px;min-height:46px;padding:0 15px}}


/* Repair roadmap Phase 4: contextual discovery rail parity. */
.home-directory .box-h{margin-bottom:12px}.home-directory-chips{display:flex;flex-wrap:wrap;gap:7px}.side.right .home-directory-chips a{display:inline-flex;min-height:32px;padding:7px 10px;border-radius:999px;background:var(--bg);color:var(--ink);font-size:11px;font-weight:700;text-decoration:none}.side.right .home-directory-chips a:hover,.side.right .home-directory-chips a:focus-visible{background:var(--teal);color:#fff}.side.right .home-directory-chips a:focus-visible{outline:3px solid #e2c97e;outline-offset:2px}

/* Phase 6: homepage integration with the canonical global public header. */
.page-home .topbar{font-family:var(--sans)}
.page-home .topbar .home-logout{display:inline-flex;margin:0}
.page-home .topbar .home-logout .btn{min-height:40px}
.page-home .topbar .home-notice-btn{position:relative}
.page-home .topbar .notice-count{position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--rose);color:#fff;display:grid;place-items:center;font:800 10px/1 var(--sans);border:2px solid var(--surface)}
.page-home #main-content{outline:0}
@media(max-width:600px){.page-home .topbar .home-logout{display:none}}
