/*
Theme Name:   YumYak Child
Theme URI:    https://www.yumyak.ca/
Description:  2026 redesign layer for the YumYak theme: new logo, #f25812 orange, Fraunces + Inter, cream editorial look. Restyles the parent markup; JS, ads, GTranslate and the cookie banner come from the parent, and only the Contact, Shop, front-page and single-restaurant templates are forked. 1.1: content hubs (neighbourhood, cuisine, Michelin, events). 1.3: Amazon.ca Associates compliant Shop and product blocks, footer disclosure, Google Consent Mode v2 region defaults.
Author:       YumYak
Template:     yumyak
Version:      1.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain:  yumyak-child
*/

/* =====================================================================
   0. Tokens (override parent custom properties; light scheme only)
   ===================================================================== */
:root,
html body{
  --bg:#fafaf7; --paper:#ffffff; --ink:#141414; --muted:#5f5f5a;
  --rust:#bf4209;          /* text-safe orange on cream (5.0:1) */
  --orange:#f25812;        /* brand orange (fills, ink text on it 5.4:1) */
  --orange-l:#ff8a4c;      /* orange text on dark */
  --line:#e4e2dc; --soft:#f2f0eb; --cream:#f2f0eb;
  --shadow:0 10px 30px rgba(20,20,20,.08);
  --yy-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --yy-sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --yy-r:14px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root,html body{--bg:#fafaf7;--paper:#fff;--ink:#141414;--muted:#5f5f5a;--line:#e4e2dc;--soft:#f2f0eb;--cream:#f2f0eb;color-scheme:light}
  html body{background:#fafaf7;color:#141414}
}

/* =====================================================================
   1. Base type
   ===================================================================== */
html body{background:var(--bg);color:var(--ink);font-family:var(--yy-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body h1,body h2,body h3,body h4{font-family:var(--yy-serif);font-weight:650;letter-spacing:-.015em;color:var(--ink);font-variation-settings:"opsz" 72}
body a{color:inherit}
body ::selection{background:var(--orange);color:#141414}
body :focus-visible{outline:3px solid var(--orange);outline-offset:2px}
body .eyebrow{display:inline-block;font-family:var(--yy-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rust);margin:0 0 10px;padding:0;background:none;border:0}
body .eyebrow::before,body .eyebrow::after{display:none}
body .text-link{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:1px}
body .text-link:hover{color:var(--rust)}
body .btn{font-family:var(--yy-sans);border-radius:999px;font-weight:700;padding:12px 22px;letter-spacing:0;text-transform:none;box-shadow:none}
body .btn.primary{background:var(--orange);color:#141414;border:2px solid var(--orange)}
body .btn.primary:hover{background:#ff6d2e;border-color:#ff6d2e;color:#141414}
body .btn.secondary{background:transparent;color:var(--ink);border:2px solid var(--ink)}
body .btn.secondary:hover{background:var(--ink);color:#fff}

/* =====================================================================
   2. Header (single row on desktop, parent mobile behaviour kept)
   ===================================================================== */
body header.top{background:rgba(250,250,247,.96);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line);box-shadow:none}
body header.top .site-brand img,body header.top .site-brand .yy-logo{height:46px;width:auto;max-width:none;display:block}
body .subscribe-btn{background:var(--orange)!important;color:#141414!important;border:0;border-radius:999px;font-family:var(--yy-sans);font-weight:700;letter-spacing:0;text-transform:none;font-size:14px;padding:10px 18px}
body .subscribe-btn:hover{background:#ff6d2e!important}
body .social-links a{color:var(--ink);width:32px;height:32px}
body .social-links a:hover{background:var(--soft);color:var(--rust)}
body .social-links svg{width:17px;height:17px}

@media (min-width:761px){
  /* one row: logo | menu ... search | lang | socials + subscribe */
  body header.top{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-rows:72px auto;align-items:center;padding-inline:max(18px,calc((100% - 1160px) / 2))}
  body header.top .masthead{display:contents}
  body header.top .site-brand{grid-column:1;grid-row:1;justify-self:start;margin:0 24px 0 0;padding:0}
  body header.top .navrow{grid-column:2;grid-row:1;width:auto;margin:0;border:0!important;padding:0;min-width:0}
  body header.top .navrow .navlinks{justify-content:flex-start!important;gap:0 2px;flex-wrap:nowrap;padding:0;border:0;background:transparent;width:100%}
  body header.top .navlinks a,body header.top .navlinks .nav-parent>a{font-family:var(--yy-sans);font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;color:#222;padding:8px 12px;border-bottom:2px solid transparent;white-space:nowrap}
  body header.top .navlinks a:hover,body header.top .navlinks a.active{color:var(--ink);border-bottom-color:var(--orange);background:transparent}
  body header.top .navlinks .nav-sep{display:none}
  body header.top .navlinks .nav-sub-toggle{color:#222;padding:0 6px 0 0;margin-left:-8px;font-size:11px}
  body header.top .navlinks .nav-search-toggle{margin-left:auto;color:var(--ink);padding:10px}
  body header.top .navlinks .nav-search-toggle svg{width:20px;height:20px}
  body header.top .translate-shell{grid-column:3;grid-row:1;justify-self:center;margin:0 8px 0 4px;z-index:2}
  body header.top .masthead-actions{grid-column:4;grid-row:1;display:flex;align-items:center;gap:6px;justify-self:end;margin:0}
  body header.top .site-search{grid-column:1/-1;grid-row:2;margin-inline:calc(-1 * max(18px,calc((100vw - 1160px) / 2)))}
}
@media (min-width:761px) and (max-width:1180px){
  body header.top .social-links a:not(.shop-icon){display:none}
  body header.top .navlinks a,body header.top .navlinks .nav-parent>a{padding:8px 9px;font-size:14px}
}
@media (max-width:760px){
  body header.top .masthead{padding:6px 0}
  body header.top .site-brand img,body header.top .site-brand .yy-logo{height:36px}
  body header.top .menu{color:var(--ink)}
  /* mobile menu panel: clean cream sheet instead of the navy "La Carte" frame */
  body header.top .navlinks{background:#fafaf7!important;padding:12px 18px 20px!important;border-bottom:1px solid var(--line);box-shadow:0 24px 40px rgba(20,20,20,.12)}
  body .nav-menu-frame{border:0}
  body .nav-menu-frame-inner{border:0;margin:0;padding:4px 0 8px}
  body .nav-menu-head{display:none}
  body header.top .navlinks .nav-menu-frame-inner a{text-align:left;font-family:var(--yy-serif);font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--ink)!important;padding:12px 0}
  body header.top .navlinks .nav-menu-frame-inner a+a{border-top:1px solid var(--line)}
  body header.top .navlinks .nav-menu-frame-inner a:hover,body header.top .navlinks .nav-menu-frame-inner a.active{background:transparent;color:var(--rust)!important}
  body .navlinks .nav-search-form{border-top:1px solid var(--line)}
  body .navlinks .nav-search-form svg{stroke:var(--ink)}
  body .navlinks .nav-search-form input[type="search"]{border:1px solid #cfccc4;color:var(--ink)}
  body .navlinks .nav-search-form button[type="submit"]{background:var(--orange);color:#141414}
  body .social-links a{width:34px;height:34px}
}
body .site-search{background:var(--paper);border-bottom:1px solid var(--line)}
body .site-search input[type="search"]{border-radius:999px;border:1px solid #cfccc4;font-family:var(--yy-sans)}
body .site-search button{border-radius:999px;background:var(--orange);color:#141414;border:0;font-weight:700}

/* PWA/app bar */
body .app-bar,body .event-bar{background:var(--soft);font-family:var(--yy-sans)}

/* =====================================================================
   3. Home H1 (added by functions.php only if the page has none)
   ===================================================================== */
body .yy-home-intro{padding:44px 0 20px}
body .yy-home-title{font-family:var(--yy-serif);font-weight:600;font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-.03em;margin:0 0 12px;max-width:16ch}
body .yy-home-title em{font-style:italic;font-weight:500;color:var(--orange)}
body .yy-home-dek{font-family:var(--yy-serif);font-size:clamp(18px,2vw,21px);line-height:1.5;color:#444;max-width:60ch;margin:0}
@media (max-width:760px){body .yy-home-intro{padding:28px 0 8px}}

/* =====================================================================
   4. Sections & section heads
   ===================================================================== */
body .section-head{display:block;border-top:0;padding-top:0;margin-bottom:26px;max-width:820px}
body .section-head .eyebrow{display:block}
body .section-head h2,body main section>.wrap>h2{font-family:var(--yy-serif);font-weight:600;font-size:clamp(28px,3.2vw,40px);line-height:1.1;letter-spacing:-.02em;text-transform:none;margin:0 0 6px}
body .section-head p{color:var(--muted);font-size:16px;max-width:62ch}
body .section-more{margin-top:20px}
body .filters{gap:8px;flex-wrap:wrap}
body .filters .filter,body .event-filters .filter,body .filters a,body .filters button{font-family:var(--yy-sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;border:1px solid #d6d3cb;background:var(--paper);color:var(--ink);border-radius:999px;padding:8px 14px;box-shadow:none}
body .filters .filter:hover,body .filters a:hover,body .filters button:hover{border-color:var(--ink)}
body .filters .filter.active,body .filters a.active,body .filters button.active,body .filters [aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
body .filters-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* =====================================================================
   5. Hero carousel -> feature card
   ===================================================================== */
body .headbanner{padding-top:12px}
body .carousel{border:0!important;border-radius:var(--yy-r);overflow:hidden;background:var(--ink)}
body .carousel-slide{min-height:500px}
body .carousel-copy{min-height:500px;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.78) 100%);padding:40px 48px 70px}
body .carousel-kicker{display:inline-block;align-self:flex-start;background:var(--orange);color:#141414;font-family:var(--yy-sans);font-size:12px;font-weight:700;letter-spacing:.1em;padding:5px 10px;border-radius:999px}
body .carousel-slide h2{font-family:var(--yy-serif);font-weight:600;font-size:clamp(30px,4.2vw,52px);line-height:1.04;letter-spacing:-.025em;margin:14px 0 10px}
body .carousel-slide p{font-family:var(--yy-sans);color:#ececec;font-size:17px;line-height:1.55}
body .carousel-cta{color:#fff;border-bottom:2px solid var(--orange);font-weight:700;font-size:15px;padding-bottom:2px;align-self:flex-start}
body .carousel-dot{background:rgba(255,255,255,.45)}
body .carousel-dot[aria-current="true"]{background:var(--orange)}
body .carousel-arrow{border-radius:999px;background:rgba(255,255,255,.92);border:0;color:var(--ink);width:42px;height:42px}
body .yumyak-wm{opacity:.75}
@media (max-width:760px){
  body .carousel{border-radius:12px}
  body .carousel-slide,body .carousel-copy{min-height:420px}
  body .carousel-copy{padding:24px 20px 56px}
  body .carousel-slide h2{font-size:30px}
  body .carousel-slide p{font-size:15px}
}

/* =====================================================================
   6. Cards: radar / michelin / related
   ===================================================================== */
body .radar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
@media (max-width:960px){body .radar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}}
@media (max-width:600px){body .radar-grid{grid-template-columns:1fr;gap:30px}}
body .radar-card{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
body .radar-media{border-radius:var(--yy-r);overflow:hidden;aspect-ratio:4/3;background:var(--soft);position:relative}
body .radar-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
body .radar-card:hover .radar-media img{transform:scale(1.035)}
body .radar-content{padding:14px 0 0}
body .radar-card h3,body .radar-content h3{font-family:var(--yy-serif);font-weight:600;font-size:23px;line-height:1.18;letter-spacing:-.015em;margin:6px 0 6px}
body .radar-card h3 a{text-decoration:none;color:var(--ink)}
body .radar-card h3 a:hover{color:var(--rust)}
body .radar-card .facts{font-size:14px;color:var(--muted);margin:0}
body .radar-card .why{font-size:15px;color:#333;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}
body .radar-card .why strong{color:var(--ink)}
body .taglabel{font-family:var(--yy-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rust);background:none;padding:0;border:0}
body .radar-status,body .distbadge,body .tagbadge,body .visit-badge,body .event-status{font-family:var(--yy-sans);font-size:11.5px;font-weight:700;letter-spacing:.02em;text-transform:none;border-radius:999px;padding:4px 10px;border:0;box-shadow:0 1px 2px rgba(0,0,0,.08);line-height:1.3}
body .radar-badges .radar-status,body .radar-badges .distbadge,body .radar-badges .tagbadge{background:rgba(255,255,255,.95);color:var(--ink)}
body .radar-status.status-coming_soon,body .event-status.soon{background:var(--orange)!important;color:#141414!important}
body .event-status.live{background:#141414;color:#fff}
body .event-status.muted{background:var(--soft);color:var(--muted)}
body .visit-badge,body .visit-badge.visit-verified{background:#e9f4ec;color:#1d5e33}
body .distbadge.dist-star{background:#141414!important;color:#fff!important}
body .distbadge.dist-bib{background:#c8102e!important;color:#fff!important}
body .distbadge.dist-recommended{background:#3d3d3d!important;color:#fff!important}
body .distbadge .michelin-year{color:inherit!important;background:transparent!important;padding:0!important}
body .distbadge .michelin-flower{height:13px;width:auto}
body .card-link{border:0}
/* Michelin band on home (dark section like the mockup) */
body main section:has(> .wrap > .michelin-grid),body main section:has(.michelin-grid):not(:has(.page-intro)){background:#141414;color:#f3f1ec;padding-top:64px;padding-bottom:64px;margin-top:40px}
body main section:has(.michelin-grid):not(:has(.page-intro)) .section-head h2,body main section:has(.michelin-grid):not(:has(.page-intro)) h3 a{color:#fff}
body main section:has(.michelin-grid):not(:has(.page-intro)) .section-head p,body main section:has(.michelin-grid):not(:has(.page-intro)) .facts,body main section:has(.michelin-grid):not(:has(.page-intro)) .why{color:#cfccc4;border-color:#2c2c2c}
body main section:has(.michelin-grid):not(:has(.page-intro)) .why strong{color:#fff}
body main section:has(.michelin-grid):not(:has(.page-intro)) .eyebrow,body main section:has(.michelin-grid):not(:has(.page-intro)) .taglabel{color:var(--orange-l)}
body main section:has(.michelin-grid):not(:has(.page-intro)) .text-link{color:#fff}
body main section:has(.michelin-grid):not(:has(.page-intro)) .filter{background:transparent;color:#fff;border-color:#444}
body main section:has(.michelin-grid):not(:has(.page-intro)) .filter.active{background:var(--orange);color:#141414;border-color:var(--orange)}
body .disclosure{font-size:13px;color:var(--muted)}

/* =====================================================================
   7. Events
   ===================================================================== */
body .event-list{gap:14px}
body .event{background:var(--paper);border:1px solid var(--line);border-radius:var(--yy-r);padding:14px;box-shadow:none;transition:border-color .2s,box-shadow .2s}
body .event:hover{border-color:#cfccc4;box-shadow:var(--shadow)}
body .event-media{border-radius:10px}
body .event-datebadge{background:#fff;color:var(--ink);border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.15);font-family:var(--yy-sans);text-align:center;line-height:1.05;padding:6px 8px;border:0}
body .event-datebadge .m{color:var(--rust);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;display:block}
body .event-datebadge .d{font-family:var(--yy-serif);font-size:24px;font-weight:600;display:block;color:var(--ink)}
body .event h3,body .event-head h3{font-family:var(--yy-serif);font-weight:600;font-size:21px;line-height:1.2;letter-spacing:-.01em;margin:0}
body .event h3 a{text-decoration:none;color:var(--ink)}
body .event h3 a:hover{color:var(--rust)}
body .event-meta,body .event-facts{color:var(--muted);font-size:14px}
body .event-cta-link{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:2px solid var(--orange)}

/* snapshot band */
body .snapshot{background:var(--soft);border:0;border-radius:var(--yy-r)}

/* =====================================================================
   8. Page intro (singles + archives)
   ===================================================================== */
body .page-intro{padding-top:44px;padding-bottom:24px;max-width:none;width:min(1160px,calc(100% - 36px))}
body .page-intro>*{max-width:820px}
body .page-intro .article-meta{max-width:820px}
body .page-intro h1{font-family:var(--yy-serif);font-weight:600;font-size:clamp(38px,5.6vw,64px);line-height:1.04;letter-spacing:-.03em;text-transform:none;margin:4px 0 14px}
body .page-intro>p:not(.place-badges):not(.place-cta):not(.article-meta){font-family:var(--yy-serif);font-size:clamp(18px,2vw,21px);line-height:1.5;color:#444;font-weight:400}
body .place-badges{display:flex;flex-wrap:wrap;gap:6px}
body .place-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
body .article-meta{font-size:13.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:20px}
@media (max-width:760px){body .page-intro{padding-top:26px}}

/* =====================================================================
   9. Article body
   ===================================================================== */
body .article-layout{max-width:740px}
body .article-layout:has(> .article-aside){max-width:1160px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
@media (max-width:960px){body .article-layout:has(> .article-aside){grid-template-columns:1fr;gap:28px}}
body .article-body{font-family:var(--yy-sans);min-width:0}
body .article-body p,body .article-body li{font-family:var(--yy-sans);font-size:18px;line-height:1.75;color:#222}
body .article-body p:first-of-type{font-family:var(--yy-sans);font-size:18px;font-style:normal;font-weight:400;color:#222}
body .article-body > p:first-of-type{font-family:var(--yy-serif);font-size:21px;line-height:1.55;color:var(--ink)}
body .article-body h2{font-family:var(--yy-serif);font-weight:600;font-size:30px;line-height:1.15;letter-spacing:-.015em;text-transform:none;margin:44px 0 12px}
body .article-body h3{font-family:var(--yy-serif);font-weight:600;font-size:22px;margin:30px 0 8px}
body .article-body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
body .article-body a:hover{color:var(--rust)}
body .article-body a.btn,body .article-body .byg-box a.btn{text-decoration:none}
body .article-body blockquote{border-left:4px solid var(--orange);font-family:var(--yy-serif);font-size:22px;padding:4px 0 4px 20px;margin:28px 0}
body .story-thumb img,body .article-body figure img{border-radius:var(--yy-r)}
body .article-body figcaption{font-size:13px;color:var(--muted)}
/* Before-you-go / Google reviews box */
body .byg-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--yy-r);box-shadow:none}
body .byg-box .section-head h2{font-size:26px;margin:0}
body .gr-review{background:var(--bg);border:1px solid var(--line);border-radius:12px}
body .gr-photos img{border-radius:10px}
body .gr-more{color:var(--rust);font-weight:700}
/* Event / page aside facts card */
body .article-aside{background:var(--paper);border:1px solid var(--line);border-radius:var(--yy-r);padding:22px;position:sticky;top:92px}
body .article-aside h2{font-family:var(--yy-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rust);margin:0 0 10px}
body .fact-list li{border-bottom:1px solid var(--line);padding:10px 0;font-size:15px}
body .fact-list li:last-child{border-bottom:0}
body .fact-list strong{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
@media (max-width:960px){body .article-aside{position:static}}
/* Rank Math FAQ */
body .rank-math-faq-item{border-top:1px solid var(--line);padding:16px 0 4px}
body .rank-math-faq-item:last-child{border-bottom:1px solid var(--line)}
body .rank-math-question{font-family:var(--yy-serif)!important;font-size:20px!important;margin:0 0 6px!important}
/* related */
body .related{border-top:1px solid var(--line);padding-top:48px}
/* ads: keep layout neutral, never clip */
body .article-body .code-block,body .ad-inline{margin:32px 0;min-width:0;overflow:visible}

/* =====================================================================
   10. Newsletter (orange block like the mockup)
   ===================================================================== */
body #newsletter .newsletter,body .newsletter.newsletter-a3{background:#1c1a19!important;color:#f5f1ea!important;border:0!important;border-radius:22px;padding:48px;box-shadow:none}
body #newsletter .newsletter h2,body .newsletter h2{font-family:var(--yy-serif);font-weight:600;font-size:clamp(28px,3.4vw,42px);line-height:1.08;letter-spacing:-.02em;color:#fff!important}
body .newsletter p,body .newsletter label{color:#cfc8bf!important}body .newsletter .eyebrow{color:var(--orange)!important}
body .newsletter input[type=email],body .newsletter input[type=text]{background:#fff!important;border:0!important;border-radius:999px!important;padding:14px 20px!important;font-family:var(--yy-sans)!important;font-size:16px!important;color:#141414!important;box-shadow:none!important}
body .newsletter .sib-default-btn,body .newsletter button[type=submit],body .newsletter input[type=submit]{background:var(--orange)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:14px 24px!important;font-family:var(--yy-sans)!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important}
body .newsletter .sib-default-btn:hover,body .newsletter button[type=submit]:hover{background:#d94a0c!important}
body .newsletter-note{font-size:13px;opacity:.85}
body #newsletter .newsletter h2 em,body .newsletter h2 em{color:var(--orange)!important;font-style:italic}
body .carousel h2,body .carousel h3,body .carousel .slide-title{text-shadow:0 2px 18px rgba(0,0,0,.45)}
@media (max-width:760px){body #newsletter .newsletter,body .newsletter.newsletter-a3{padding:28px 22px;border-radius:16px}}

/* =====================================================================
   11. Footer
   ===================================================================== */
body footer,body .site-footer{background:#141414!important;color:#cfccc4}
body footer .footer-logo,body footer img.footer-logo{height:auto!important;width:140px!important;max-width:140px!important;filter:none!important;background:transparent!important;padding:0!important;border:0!important;object-fit:contain}
body footer a{color:#fff}
body footer a:hover{color:var(--orange-l)}
body .footer-links a{font-weight:600;text-decoration:none}
body .back-top{background:var(--orange)!important;color:#141414!important;border-radius:999px;border:0}

/* =====================================================================
   12. Plugin chrome: colours only, layout left to the plugins
   ===================================================================== */
/* myStickymenu welcome bar */
body .mysticky-welcomebar-fixed{background-color:#141414!important;font-family:var(--yy-sans)!important}
body .mysticky-welcomebar-fixed .mysticky-welcomebar-content p,body .mysticky-welcomebar-fixed .mysticky-welcomebar-content{color:#fff!important;font-family:var(--yy-sans)!important}
body .mysticky-welcomebar-fixed .mysticky-welcomebar-btn a{background:var(--orange)!important;color:#141414!important;border-radius:999px!important;font-family:var(--yy-sans)!important;font-weight:700}
body .mysticky-welcomebar-close{color:#fff!important}
/* CookieYes banner: brand colours + fonts (consent logic untouched) */
body .cky-consent-container .cky-consent-bar,body .cky-preference-center{font-family:var(--yy-sans)!important;border-radius:14px!important;border-color:var(--line)!important}
body .cky-title,body .cky-preference-title{font-family:var(--yy-serif)!important;color:#141414!important}
body .cky-notice-des,body .cky-notice-des p{color:#333!important;font-family:var(--yy-sans)!important}
body .cky-btn{border-radius:999px!important;font-family:var(--yy-sans)!important;font-weight:700!important}
body .cky-btn.cky-btn-accept{background:#f25812!important;border-color:#f25812!important;color:#141414!important}
body .cky-btn.cky-btn-reject,body .cky-btn.cky-btn-customize,body .cky-btn.cky-btn-preferences{background:transparent!important;border:2px solid #141414!important;color:#141414!important}
body .cky-btn-revisit-wrapper{background:#f25812!important}

/* =====================================================================
   1.0.6 responsive fixes (tablet / iPad Safari ~800-1100px)
   - Events: parent 4.0.92 gives home cards aspect-ratio 16/10 + min-height
     260px, which makes each card at least 416px wide (260 x 1.6). In
     repeat(2,1fr) columns narrower than that (and in Safari already at
     ~950-1000px) the cards overflow their track and overlap. Tracks are now
     minmax(0,1fr) and cards may shrink (min-width:0) and clip.
   - Michelin/radar cards: .radar-top was a non-wrapping flex row with the
     default align-items:stretch, so a long neighbourhood that wraps made the
     "Details verified" pill stretch to the row height (huge oval) and get
     squashed. Row now wraps, badges never shrink or stretch, and the
     neighbourhood wraps inside its own column.
   ===================================================================== */
@media (min-width: 651px) {
	body.home .event-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.home .radar-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
body .event-list > .event { min-width: 0; max-width: 100%; overflow: hidden; }
body .event-list .event-body { min-width: 0; }
body .event-list .event-body h3,
body .event-list .event-meta { overflow-wrap: anywhere; }
body .radar-grid > .radar-card { min-width: 0; }

body .radar-top { flex-wrap: wrap; align-items: flex-start; row-gap: 6px; min-width: 0; }
body .radar-top > span { min-width: 0; overflow-wrap: anywhere; }
body .radar-top > .taglabel { flex: 0 0 auto; white-space: nowrap; }
body .radar-top.has-visit > span:not(.taglabel):not(.visit-badge) { flex: 1 1 7em; }
body .radar-top .visit-badge { flex: 0 0 auto; align-self: flex-start; white-space: nowrap; height: auto; max-width: 100%; overflow-wrap: normal; }
body .radar-badges > span { flex: 0 0 auto; white-space: nowrap; }
/* 1.0.6: on tablet widths the 16:10 frame is too short for long titles, so
   the text block ran up under the date badge (and was clipped). Between
   651px and 1099px the card grows with its text instead: the photo stays a
   full-bleed background, the text block sits in normal flow at the bottom. */
@media (min-width: 651px) and (max-width: 1099px) {
	body.home .event-list .event { aspect-ratio: auto; min-height: 280px; display: flex; flex-direction: column; justify-content: flex-end; }
	body.home .event-list .event-body { position: relative; left: auto; right: auto; bottom: auto; padding-top: 76px; }
}

/* =====================================================================
   1.1.0 Content hubs (templates/hub.php, inc/hubs.php)
   ===================================================================== */
/* Parent main.css styles every <nav> as the header bar (min-height:86px, space-between); reset for hub navs. */
body nav.hub-crumbs,body nav.hub-chips{min-height:0;justify-content:flex-start;align-items:center}
body nav.hub-crumbs{display:block}
.hub-crumbs{margin:0 0 14px;font:500 13px/1.4 var(--sans,Inter,system-ui,sans-serif);color:var(--muted)}
.hub-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0}
.hub-crumbs li{display:inline-flex;align-items:center;min-width:0}
.hub-crumbs li + li::before{content:"›";margin:0 8px;color:var(--muted);opacity:.7}
.hub-crumbs a{color:var(--muted);text-decoration:none}
.hub-crumbs a:hover{color:var(--rust);text-decoration:underline}
.hub-crumbs [aria-current]{color:var(--ink)}
.hub-intro h1{overflow-wrap:anywhere}
body .filters.hub-chips{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:0 0 24px}
.hub-chips a.filter{text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.hub-chips .hub-count{font-size:.8em;opacity:.65;font-variant-numeric:tabular-nums}
.hub-chips a.filter.active .hub-count{opacity:.85}
.hub-explore{padding:0 0 8px}
.hub-explore .wrap{display:flex;flex-direction:column;gap:12px;padding-top:4px}
.hub-explore-title{margin:0;font:700 12px/1 var(--sans,Inter,system-ui,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--rust)}
.hub-explore-row{display:flex;align-items:baseline;gap:12px;min-width:0}
.hub-explore-label{flex:0 0 120px;font:600 14px/1.3 var(--sans,Inter,system-ui,sans-serif);color:var(--ink)}
body .hub-explore .filters.hub-chips{margin:0;min-width:0}
.hub-explore .hub-chips a.filter{padding-top:6px;padding-bottom:6px;font-size:14px}
@media (max-width:650px){
  .hub-explore-row{flex-direction:column;gap:6px}
  .hub-explore-label{flex:none}
  body .hub-explore .filters.hub-chips{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  body .hub-section .filters.hub-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
}
.hub-index{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.hub-tile{background:var(--paper,#fff);border:1px solid var(--line,#e7e3dc);border-radius:var(--yy-r,14px);padding:20px 20px 18px;display:flex;flex-direction:column;gap:8px;min-width:0}
.hub-tile-title{margin:0;font-size:22px;line-height:1.2}
.hub-tile-title a{color:var(--ink);text-decoration:none}
.hub-tile-title a:hover{color:var(--rust)}
.hub-tile-count{margin:0;font:600 12px/1 var(--sans,Inter,system-ui,sans-serif);letter-spacing:.1em;text-transform:uppercase;color:var(--rust)}
.hub-tile.is-thin .hub-tile-count{color:var(--muted)}
.hub-tile-sub{margin:0;font-size:14px;color:var(--muted)}
.hub-tile-sub a{color:var(--ink)}
.hub-tile-list{margin:4px 0 0;padding:0 0 0 18px;font-size:15px;line-height:1.45}
.hub-tile-list li{margin:2px 0;overflow-wrap:anywhere}
.hub-tile-list a{color:var(--ink);text-decoration:none}
.hub-tile-list a:hover{color:var(--rust);text-decoration:underline}
.hub-tile-more{margin-top:auto;padding-top:6px;font-weight:600;color:var(--rust);text-decoration:none}
.hub-empty{padding:28px;border:1px dashed var(--line,#e7e3dc);border-radius:var(--yy-r,14px);color:var(--muted);text-align:center}
.hub-section .disclosure{margin-top:28px}
@media (min-width:651px){
  body.yy-hub .hub-events{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* =====================================================================
   1.2.0 Design polish (owner review 30/10)
   ===================================================================== */

/* --- 1. Articles / pages: gutters ----------------------------------------
   The parent paints .article-body as a white panel (main.css:19) and later
   zeroes its padding (main.css:234), so the text sat flush against the panel
   edge (most visible on iPad). The layout was also 1232px wide at x=24 while
   the title block is 1160px at x=60. Now: no panel, the text column lines up
   with the title, and every width keeps a real gutter. */
body .wrap.article-layout{width:min(1160px,calc(100% - 36px))}
body .article-layout .article-body{background:transparent;padding:0;overflow-wrap:break-word}
body .article-layout .story-thumb{margin:0 0 26px}
@media (max-width:650px){body .article-layout .story-thumb{height:auto}}
/* empty sidebar (only an "ads disabled" comment, e.g. Privacy Policy) was a blank white box */
body .wrap.article-layout > .article-aside:not(:has(*)){display:none}
@media (min-width:651px){
  body .wrap.article-layout:has(> .article-aside:has(*)){display:block;max-width:none}
  /* plain pages without a review box: comfortable line length */
  body .wrap.article-layout:not(:has(> .article-aside:has(*))):not(:has(.byg-box)) > .article-body{max-width:820px}
}
@media (min-width:961px){
  body .wrap.article-layout:has(> .article-aside:has(*)){display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
}
body .article-layout .article-aside{background:var(--paper);padding:22px 24px;margin-top:0;border-top:1px solid var(--line)}
@media (max-width:960px){body .article-layout .article-aside{margin-top:32px;position:static}}

/* Every listing / page body now shares the title block's measure (1160px, 18px
   phone gutters) instead of 1240px/12px, so headings and content start on the
   same line. Home and the (postponed) Shop page keep their own grids. */
body:not(.home):not(.page-template-page-shop) main .wrap{width:min(1160px,calc(100% - 36px))}

/* --- 2. Before-you-go / Google reviews box -------------------------------- */
body .byg-box{padding:22px}
@media (max-width:650px){body .byg-box{padding:18px}}
@media (min-width:651px) and (max-width:1023px){
  body .article-layout .article-body .byg-box-top{width:clamp(260px,40%,340px);margin:0 0 20px 24px}
}
body .byg-box .gr-list{display:grid;gap:10px;margin:14px 0 16px}
body .byg-box .gr-review,
body .byg-box .gr-review + .gr-review,
body .byg-box .gr-review:last-child{padding:12px 14px;margin:0;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
body .byg-box .gr-author{gap:10px}
body .byg-box .gr-text{margin:8px 0 0}
body .google-reviews .gr-stars,body .byg-box .gr-stars{color:var(--orange)}
body .google-reviews .gr-summary{background:var(--soft);border-color:var(--line);border-radius:12px}
body .google-reviews .gr-yumyak,body .byg-box .gr-yumyak{border-left-color:var(--orange)}
body .gr-photo-attr{color:var(--muted)}

/* --- 3. Leftover old-theme colours --------------------------------------- */
/* maroon #800020 restaurant name / address in article intros */
body .article-body .place-name{color:var(--ink);font-size:1.08em;font-weight:700}
body .article-body .place-address{color:var(--rust);font-weight:600}
/* gold #ffcf00 "Explore event" on the dark event cards */
body .event-list .event-cta-link{color:#fff;border-bottom-color:var(--orange)}
body .event-list .event-cta-link:hover{color:var(--orange-l)}
/* Event "save the date" box written inline in older posts (#FFF7F0 / #E8632B) */
body .article-body div[style*="#FFF7F0" i]{background:var(--paper)!important;border:1px solid var(--line)!important;border-top:3px solid var(--orange)!important;border-radius:var(--yy-r)!important}
body .article-body div[style*="#FFF7F0" i] p[style*="letter-spacing:3px"]{color:var(--rust)!important;letter-spacing:.14em!important}
body .article-body div[style*="#FFF7F0" i] p[style*="Georgia"]{font-family:var(--yy-serif)!important;font-weight:600!important;color:var(--ink)!important}
body .article-body div[style*="#FFF7F0" i] p[style*="#666"]{color:var(--muted)!important;font-family:var(--yy-sans)!important}
body .article-body a[style*="background:#E8632B" i]{background:var(--orange)!important;color:#fff!important;border-radius:999px!important;letter-spacing:.06em!important;font-size:14px!important;padding:13px 30px!important}
body .article-body a[style*="background:#E8632B" i]:hover{background:var(--rust)!important}
/* Advertise page: inline #E8632B / brown greys -> brand tokens */
body .advertise-page a[style*="background:#E8632B" i]{background:var(--orange)!important}
body .advertise-page [style*="border:2px solid #E8632B" i]{border-color:var(--orange)!important}
body .advertise-page p[style*="color:#E8632B" i]{color:var(--rust)!important}
body .advertise-page a[style*="color:#E8632B" i]{color:var(--rust)!important}
body .advertise-page [style*="#5c5348" i],body .advertise-page [style*="#8a7a63" i]{color:var(--muted)!important}
body .advertise-page [style*="#3d362e" i]{color:#3a3a36!important}
body .advertise-page [style*="#e8e0d8" i]{border-color:var(--line)!important}
body .advertise-page [style*="background:#fdf0e9" i]{background:var(--soft)!important}

/* --- 4. Event cards: long titles ran up under the date badge on phones --- */
body:not(.home) .event-list .event:not([hidden]){display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;aspect-ratio:auto}
body:not(.home) .event-list .event-body{position:relative;left:auto;right:auto;bottom:auto;padding-top:78px}

/* --- 5. Search / archive cards still used Playfair Display --------------- */
body .story-card h3{font-family:var(--yy-serif);font-weight:600;font-size:20px;line-height:1.22;letter-spacing:-.01em;margin:6px 0 4px}
body .story-card h3 a{color:var(--ink);text-decoration:none}
body .story-card h3 a:hover{color:var(--rust)}
body .story-card-media{border-radius:var(--yy-r);overflow:hidden}
body .story-card .story-date{color:var(--muted);font-size:13.5px}

/* --- 6. Short pages (404, empty archive, search): line up with the title,
   keep the footer at the bottom of the screen ------------------------------ */
body.error404 main > section > .wrap,
body.search main > section > .wrap,
body.archive main > section > .wrap{width:min(1160px,calc(100% - 36px))}
body.error404 main > section{padding-top:28px}
body.error404 main,body.archive main,body.search-no-results main{min-height:calc(100vh - 420px)}

/* =====================================================================
   1.2.0 Contact page (page-contact.php)
   Scoped to .yy-contact / .yy-about, so none of the parent's gold
   .contact-page .partner-p4 rules apply any more.
   ===================================================================== */
.yy-contact [hidden],.yy-about [hidden]{display:none!important}
body .yy-contact-intro{border-bottom:0;padding-bottom:28px}
body .yy-contact-intro h1 em{font-style:italic;color:var(--orange)}
body .yy-contact-intro h1::after{content:"";display:block;width:56px;height:4px;border-radius:4px;background:var(--orange);margin-top:18px}

body main section.yy-contact{padding:0 0 64px}
.yy-contact .wrap.yy-contact-grid{width:min(1160px,calc(100% - 36px));display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
@media (max-width:900px){.yy-contact .wrap.yy-contact-grid{grid-template-columns:1fr}}

.yy-ico{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:38px;height:38px;border-radius:11px}
.yy-ico svg{width:20px;height:20px}

/* form card */
.yy-contact-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:28px 30px 30px;box-shadow:0 1px 2px rgba(20,20,20,.04),0 18px 40px -24px rgba(20,20,20,.18)}
@media (max-width:650px){.yy-contact-card{padding:18px 16px 22px;border-radius:18px}}
.yy-contact-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;margin:0 0 26px;background:var(--soft);border-radius:16px}
.yy-contact-switch button{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 14px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--yy-sans);transition:background .15s,border-color .15s,box-shadow .15s}
.yy-contact-switch button:hover{background:rgba(255,255,255,.6)}
.yy-contact-switch button[aria-selected="true"]{background:var(--paper);border-color:var(--line);box-shadow:0 1px 2px rgba(20,20,20,.06),0 6px 16px -10px rgba(20,20,20,.25)}
.yy-contact-switch button:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.yy-contact-switch .yy-ico{background:var(--paper);color:var(--muted);border:1px solid var(--line)}
.yy-contact-switch button[aria-selected="true"] .yy-ico{background:var(--ink);color:var(--orange-l);border-color:var(--ink)}
.yy-tab-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.yy-tab-text strong{font-size:15px;font-weight:700;line-height:1.25}
.yy-tab-text small{font-size:12.5px;line-height:1.35;color:var(--muted)}
@media (max-width:560px){
  .yy-contact-switch button{flex-direction:column;align-items:flex-start;gap:8px;padding:10px}
  .yy-contact-switch .yy-ico{width:32px;height:32px;border-radius:9px}
  .yy-tab-text strong{font-size:14px}
  .yy-tab-text small{display:none}
}
/* without JS both panels show: separate them */
.yy-contact-card:not(.yy-tabs-ready) .yy-contact-panel + .yy-contact-panel{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}

.yy-panel-head{margin:0 0 20px}
.yy-panel-head .eyebrow{margin:0 0 6px}
.yy-panel-head h2{font-family:var(--yy-serif);font-weight:600;font-size:clamp(26px,3vw,32px);line-height:1.12;letter-spacing:-.02em;margin:0 0 6px;color:var(--ink);text-transform:none}
.yy-panel-head h2 em{font-style:italic;color:var(--rust)}
.yy-panel-sub{margin:0;color:var(--muted);font-size:16px;line-height:1.5}
.yy-panel-note{margin:18px 0 0;padding-top:16px;border-top:1px dashed var(--line);font-size:14px;line-height:1.55;color:var(--muted)}
.yy-panel-note .contact-email,.yy-side-list a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}

/* WPForms (modern render): drive its own CSS variables, then tidy details */
body .yy-contact .contact-form{background:none;padding:0;display:block}
body .yy-contact .wpforms-container-full{
  --wpforms-field-border-color:#d9d6cf!important;--wpforms-field-border-radius:10px!important;--wpforms-field-border-size:1px!important;
  --wpforms-field-background-color:#fff!important;--wpforms-field-text-color:#141414!important;
  --wpforms-label-color:#141414!important;--wpforms-label-sublabel-color:#5f5f5a!important;--wpforms-label-error-color:#b42318!important;
  --wpforms-button-background-color:#141414!important;--wpforms-button-text-color:#fff!important;--wpforms-button-border-radius:999px!important;--wpforms-button-border-size:0px!important;
  --wpforms-field-size-input-height:46px!important;--wpforms-field-size-input-spacing:18px!important;--wpforms-field-size-font-size:16px!important;--wpforms-field-size-padding-h:14px!important;
  --wpforms-label-size-font-size:14px!important;--wpforms-label-size-line-height:18px!important;
  --wpforms-button-size-height:48px!important;--wpforms-button-size-padding-h:26px!important;--wpforms-button-size-font-size:15px!important;--wpforms-button-size-margin-top:6px!important;
  margin:0!important;font-family:var(--yy-sans)}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field{padding:0 0 18px;margin:0;min-width:0;grid-column:1/-1}
body .yy-contact #wpforms-390-field_1-container,body .yy-contact #wpforms-390-field_2-container,
body .yy-contact #wpforms-225-field_1-container,body .yy-contact #wpforms-225-field_2-container{grid-column:auto}
@media (max-width:560px){
  body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field-container{grid-template-columns:1fr}
}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field-label{font-family:var(--yy-sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink);margin:0 0 6px}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-required-label{color:var(--orange)}
body .yy-contact .wpforms-container-full .wpforms-form input[type=text],
body .yy-contact .wpforms-container-full .wpforms-form input[type=email],
body .yy-contact .wpforms-container-full .wpforms-form textarea{width:100%;max-width:100%;font-family:var(--yy-sans);background:#fff;border:1px solid #d9d6cf;border-radius:10px;box-shadow:none;transition:border-color .15s,box-shadow .15s}
body .yy-contact .wpforms-container-full .wpforms-form textarea{min-height:132px;height:132px;padding-top:12px;resize:vertical;line-height:1.5}
body .yy-contact .wpforms-container-full .wpforms-form input[type=text]:focus,
body .yy-contact .wpforms-container-full .wpforms-form input[type=email]:focus,
body .yy-contact .wpforms-container-full .wpforms-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(242,88,18,.22);outline:none}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field input.wpforms-error,
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error{border-color:#b42318}
body .yy-contact .wpforms-container-full .wpforms-form label.wpforms-error,
body .yy-contact .wpforms-container-full .wpforms-form em.wpforms-error{font-size:13px;color:#b42318;margin-top:6px}
body .yy-contact .wpforms-container-full .wpforms-form .wpforms-submit-container{margin-top:2px;padding:0;text-align:left}
body .yy-contact .wpforms-container-full .wpforms-form button.wpforms-submit{background:var(--ink);color:#fff;border:0;border-radius:999px;font-family:var(--yy-sans);font-weight:700;letter-spacing:.01em;text-transform:none;box-shadow:none;transition:background .15s,box-shadow .15s,transform .15s}
body .yy-contact .wpforms-container-full .wpforms-form button.wpforms-submit::after{content:" \2192";color:var(--orange-l)}
body .yy-contact .wpforms-container-full .wpforms-form button.wpforms-submit:hover{background:#000;box-shadow:0 0 0 3px rgba(242,88,18,.28);transform:translateY(-1px)}
body .yy-contact .wpforms-container-full .wpforms-form button.wpforms-submit:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
body .yy-contact .wpforms-confirmation-container-full{background:var(--soft)!important;border:1px solid var(--line)!important;border-left:4px solid var(--orange)!important;border-radius:12px;color:var(--ink)!important;font-family:var(--yy-sans)}
@media (max-width:560px){body .yy-contact .wpforms-container-full .wpforms-form button.wpforms-submit{width:100%}}

/* side column */
.yy-contact-side{position:sticky;top:24px}
@media (max-width:900px){.yy-contact-side{position:static}}
.yy-side-card{background:#1c1a19;color:#f3f1ec;border-radius:22px;padding:26px 24px}
@media (max-width:650px){.yy-side-card{padding:22px 18px;border-radius:18px}}
.yy-side-card h2.yy-side-title{font-family:var(--yy-serif);font-weight:600;font-size:24px;line-height:1.15;color:#fff;margin:0 0 16px;text-transform:none;letter-spacing:-.01em}
.yy-side-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.yy-side-list li{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #2f2b29;font-size:14.5px;line-height:1.45;color:#d9d5ce}
.yy-side-list li:last-child{border-bottom:0}
.yy-side-list li > span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}
.yy-side-list small,.yy-side-social small{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a8a39b}
.yy-side-list .yy-ico{background:rgba(255,255,255,.06);color:var(--orange-l);width:36px;height:36px;border-radius:10px}
.yy-side-list .yy-ico svg{width:18px;height:18px}
.yy-side-card .yy-side-list a{color:#fff;font-size:15.5px}
.yy-side-card .yy-side-list a:hover{color:var(--orange-l)}
.yy-side-social{margin-top:14px;padding-top:16px;border-top:1px solid #2f2b29}
.yy-social-row{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.yy-social-row a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid #3a3532;color:#fff;transition:border-color .15s,color .15s,background .15s}
.yy-social-row a:hover{border-color:var(--orange);color:var(--orange-l);background:rgba(242,88,18,.08)}
.yy-social-row svg{width:19px;height:19px}

/* About */
body main section.yy-about{background:var(--soft);border-top:1px solid var(--line);padding:64px 0 72px}
@media (max-width:650px){body main section.yy-about{padding:44px 0 52px}}
.yy-about > .wrap{width:min(1160px,calc(100% - 36px))}
.yy-about-lead{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:56px;align-items:start;margin:0 0 36px}
.yy-about-lead > h2,.yy-about-lead > .yy-about-tagline{grid-column:1}
.yy-about-lead > .yy-about-dek,.yy-about-lead > .yy-about-text{grid-column:2}
.yy-about-lead > .yy-about-dek{grid-row:1 / span 2}
@media (max-width:900px){
  .yy-about-lead{grid-template-columns:1fr}
  .yy-about-lead > *{grid-column:1!important;grid-row:auto!important}
}
.yy-about-lead h2{font-family:var(--yy-serif);font-weight:600;font-size:clamp(32px,3.6vw,44px);line-height:1.05;letter-spacing:-.025em;margin:0 0 12px;color:var(--ink);text-transform:none}
.yy-about-tagline p{margin:0 0 20px;font-family:var(--yy-serif);font-style:italic;font-size:21px;line-height:1.4;color:var(--rust)}
.yy-about-dek p{margin:0 0 14px;font-family:var(--yy-serif);font-size:clamp(19px,1.8vw,22px);line-height:1.5;color:var(--ink)}
.yy-about-text p{margin:0 0 14px;font-family:var(--yy-sans);font-size:16px;line-height:1.7;color:#3a3a36}
.yy-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:900px){.yy-pillars{grid-template-columns:1fr}}
.yy-pillar{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px 24px 22px;scroll-margin-top:24px}
.yy-pillar .yy-ico{background:var(--ink);color:var(--orange-l);width:44px;height:44px;border-radius:12px}
.yy-pillar .yy-ico svg{width:22px;height:22px}
.yy-pillar h3{font-family:var(--yy-serif);font-weight:600;font-size:21px;line-height:1.2;letter-spacing:-.01em;margin:16px 0 8px;color:var(--ink);text-transform:none}
.yy-pillar p{margin:0 0 10px;font-family:var(--yy-sans);font-size:15.5px;line-height:1.65;color:#3a3a36}
.yy-pillar p:last-child{margin-bottom:0}
.yy-pillar a,.yy-about a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
.yy-disclosure{display:flex;gap:10px;align-items:flex-start;margin:28px 0 0;padding:14px 16px;border:1px dashed #d9d6cf;border-radius:12px;font-size:13.5px;line-height:1.55;color:var(--muted)}
.yy-disclosure .yy-ico{width:20px;height:20px;border-radius:0;color:var(--muted)}
.yy-disclosure .yy-ico svg{width:18px;height:18px}
.yy-disclosure p{margin:0}
.yy-disclosure em{font-style:normal}
.yy-about-plain .wrap > *{max-width:760px}
.yy-contact .yy-side-list a.contact-email,.yy-contact .yy-panel-note a.contact-email{display:inline;margin:0;padding:0;align-self:flex-start;background:none;font-family:var(--yy-sans)}
body:has(main section.yy-about) footer{margin-top:0}

/* =====================================================================
   1.3.0 Amazon.ca product blocks: Shop, home editor picks, article
   "Related products". Brand black buttons, orange as an accent only,
   no prices / stars / galleries (removed from the markup).
   ===================================================================== */
body.page-template-page-shop main .wrap{width:min(1160px,calc(100% - 36px))}
body.page-template-page-shop .page-intro{padding-bottom:8px}
body .shop-intro p{max-width:720px}
body .shop-intro .shop-disclosure{font-style:normal;font-size:13px;color:var(--muted);max-width:720px}
body .shop-disclosure a,body .yy-amz-disclosure a,body .yy-amz-footer a{color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
body .shop-disclosure a:hover,body .yy-amz-disclosure a:hover{color:var(--rust)}
body .shop-amazon-banner{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:10px;max-width:720px;padding:16px 18px}
body .shop-amazon-banner p{color:var(--ink);font-size:15px;margin:0 0 10px}
body .shop-amazon-btn,body .shop-amazon-btn:visited{background:var(--ink);color:#fff;border-radius:999px;font-weight:700;padding:10px 20px}
body .shop-amazon-btn:hover,body .shop-amazon-btn:focus-visible{background:#000;color:#fff;box-shadow:0 0 0 3px var(--orange)}
body .shop-intro .shop-nav,body .shop-nav{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px;margin-top:20px}
body .shop-intro .shop-nav a{flex:0 0 auto;width:auto}
body .shop-intro .shop-disclosure{margin-top:12px}
body .shop-nav a{border-color:#d6d3cb;color:var(--ink);background:var(--paper)}
body .shop-nav a:hover,body .shop-nav a:focus-visible{background:var(--ink);border-color:var(--ink);color:#fff}

.yy-amz-section .section-head{margin-bottom:12px}
.yy-amz-disclosure{font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 16px;padding-left:10px;border-left:3px solid var(--orange)}

body .shop-grid.yy-amz-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
body #editor-picks .shop-grid.yy-amz-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body .yy-amz-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:none}
body .yy-amz-card:hover{transform:none;box-shadow:0 8px 24px rgba(20,20,20,.08);border-color:#d6d3cb}
body .yy-amz-media{aspect-ratio:1/1;background:#fff;padding:14px;border-bottom:1px solid var(--line);box-sizing:border-box}
body .yy-amz-media img{width:100%;height:100%;object-fit:contain;display:block}
body .yy-amz-body{padding:16px;gap:8px;display:flex;flex-direction:column;flex:1}
body .yy-amz-body h3{font-family:var(--yy-serif);font-size:17px;line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body .yy-amz-body .shop-verdict{font-size:14px;line-height:1.5;color:var(--muted);flex:0 0 auto}
body .yy-amz-body .shop-info{border-top:1px solid var(--line);padding-top:8px}
body .yy-amz-body .shop-info summary{color:var(--ink);font-weight:700;font-size:13px}
body .yy-amz-body .shop-info summary::before{content:"+ ";color:var(--orange)}
body .yy-amz-body .shop-info[open] summary::before{content:"– "}
body .yy-amz-body .shop-info-body p{color:var(--muted)}
body .yy-amz-body .shop-info-body p strong{color:var(--ink)}
body a.yy-amz-btn,body a.yy-amz-btn:visited{margin-top:auto;display:block;text-align:center;white-space:normal;background:var(--ink);color:#fff;font-family:var(--yy-sans);font-weight:700;font-size:14px;line-height:1.3;padding:11px 14px;border-radius:8px;border-bottom:3px solid var(--orange);text-decoration:none}
body a.yy-amz-btn:hover,body a.yy-amz-btn:focus-visible{background:#000;color:#fff;border-bottom-color:var(--orange);outline:0;box-shadow:0 0 0 2px var(--orange)}

/* Kitchen Essentials: the first card (Lodge) runs full width, so the other
   36 fill every row at 4, 2 or 1 per row (no lone card). */
body .yy-amz-lead > .yy-amz-card:first-child{grid-column:1/-1;flex-direction:row}
body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-media{flex:0 0 280px;width:280px;border-bottom:0;border-right:1px solid var(--line)}
body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-body{padding:24px 28px;justify-content:center}
body .yy-amz-lead > .yy-amz-card:first-child h3{font-size:22px}
body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-btn{margin-top:8px;align-self:flex-start;padding-inline:22px}

/* Gallery remnants from the parent (not rendered any more). */
body .ap-thumbs,body .ap-count,body .ap-lightbox,body .shop-price-badge,body .shop-rating,body .shop-rating-src{display:none!important}

body #shop-faq .shop-faq details{border-color:var(--line);background:var(--paper)}
body #shop-faq .shop-faq summary{color:var(--ink)}

.yy-amz-footer{font-size:13px;color:inherit;opacity:.85;margin:10px 0 0;flex-basis:100%}

@media (max-width:999px){
  body .shop-grid.yy-amz-grid,body #editor-picks .shop-grid.yy-amz-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
/* Phones: one product per row, image left / text right. */
@media (max-width:560px){
  body .shop-grid.yy-amz-grid,body #editor-picks .shop-grid.yy-amz-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  body .yy-amz-card,body .yy-amz-lead > .yy-amz-card:first-child{flex-direction:row;align-items:stretch}
  body .yy-amz-media,body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-media{flex:0 0 112px;width:112px;aspect-ratio:auto;min-height:112px;padding:8px;border-bottom:0;border-right:1px solid var(--line)}
  body .yy-amz-body,body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-body{padding:12px;gap:6px}
  body .yy-amz-body h3,body .yy-amz-lead > .yy-amz-card:first-child h3{font-size:15px;-webkit-line-clamp:3}
  body .yy-amz-body .shop-verdict{font-size:13px}
  body a.yy-amz-btn,body .yy-amz-lead > .yy-amz-card:first-child .yy-amz-btn{align-self:stretch;font-size:13px;padding:9px 10px;margin-top:auto}
}
