/* WineKai — tasting notes / global edition, 2026-09-11.
 * Load after the existing child styles. No :root or unscoped theme overrides.
 * PHP adds only wk-top / wk-bc / wk-ft scope classes; query and JS hooks stay intact.
 * Tokens deliberately shadow the child theme, matching wk-event.css exactly.
 */
.wk-top.wk-top,
.wk-bc.wk-bc,
.wk-ft.wk-ft{
  --wk-wine:#5c1f27;
  --wk-wine-2:#8a3542;
  --wk-wine-ink:#3f141b;
  --wk-wine-tint:#f4ecee;
  --wk-cream:#f5efe4;
  --wk-paper:#fbf8f4;
  --wk-accent:#b9892c;
  --wk-accent-2:#d9bb78;
  --wk-text:#2a2224;
  --wk-text-2:#6b5a5e;
  --wk-line:#e6d9cd;
  --wk-line-strong:#c9b3a1;
  --wk-serif:"Times New Roman",Times,"Yu Mincho","游明朝","游明朝体",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro","MS PMincho",serif;
  color:var(--wk-text);
}
.wk-top.wk-top{background:var(--wk-paper)}
.wk-top .l-contents{padding-top:64px;padding-bottom:24px}
.wk-top .wk-top-section{margin-bottom:76px}
/* Hero geometry, slides and controls remain owned by the parent theme. */
.wk-top .p-hero{border-bottom:1px solid var(--wk-line-strong)}
.wk-top .p-hero__title{font-family:var(--wk-serif);letter-spacing:.08em}
.wk-top .p-headline02,
.wk-ft .p-headline02{
  display:block;position:relative;margin:0 0 30px;padding:0 0 18px;
  border:0;border-bottom:1px solid var(--wk-line-strong);background:transparent;
}
.wk-top .p-headline02::after,
.wk-ft .p-headline02::after{
  content:"";position:absolute;left:0;bottom:-2px;width:56px;height:3px;background:var(--wk-wine);
}
.wk-top .p-headline02::before,
.wk-ft .p-headline02::before{
  content:"";position:absolute;left:0;bottom:-6px;width:56px;height:1px;background:var(--wk-accent-2);
}
/* Existing child mobile title uses !important; the override is restricted to these headings. */
.wk-top .p-headline02__title,
.wk-ft .p-headline02__title{
  margin:0;color:var(--wk-wine);font-family:var(--wk-serif);
  font-size:clamp(1.65rem,3.4vw,2.35rem) !important;font-weight:400;line-height:1.25;letter-spacing:.14em;
}
.wk-top .p-headline02__sub,
.wk-ft .p-headline02__sub{margin:10px 0 0;color:var(--wk-text-2);font-size:12px;line-height:1.8;letter-spacing:.12em}
/* Events: preserve theme visibility rules (.is-active) for calendar filtering. */
.wk-top .p-event-list{gap:38px 28px;overflow:visible}
.wk-top .p-article07{min-width:0;padding-bottom:20px;border-bottom:1px solid var(--wk-line)}
.wk-top .p-article07 > a{display:block;position:relative;border-radius:3px;overflow:hidden;background:var(--wk-cream);box-shadow:none}
.wk-top .p-article07__img{position:relative;border-radius:3px;overflow:hidden;background:var(--wk-cream)}
.wk-top .p-article07__img::before{content:none;background:none}
.wk-top .p-article07__img img{display:block;width:100%;height:auto;aspect-ratio:740/500;object-fit:cover}
/* Compact version of wk-eventhead's month / day / year-weekday medallion.
 * The opaque paper keeps every photo readable without a gradient or shadow.
 */
.wk-top .p-article07__date.wk-top-date{
  position:absolute;z-index:2;top:18px;left:16px;right:auto;bottom:auto;transform:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  box-sizing:border-box;width:112px;height:auto;min-height:116px;margin:0;padding:10px 8px;
  border:0;border-top:1px solid var(--wk-wine);border-bottom:1px solid var(--wk-wine);
  border-radius:0;background:var(--wk-paper);color:var(--wk-wine);
  font-family:var(--wk-serif);font-size:12px;font-weight:400;line-height:1;text-align:center;box-shadow:none;
}
.wk-top .wk-top-date::before,
.wk-top .wk-top-date::after{content:"";position:absolute;left:0;right:0;height:1px;background:var(--wk-accent-2)}
.wk-top .wk-top-date::before{top:3px}
.wk-top .wk-top-date::after{bottom:3px}
.wk-top .wk-top-date__month{display:block;color:var(--wk-wine-2);font-size:10px;letter-spacing:.14em;text-indent:.14em;text-transform:uppercase;line-height:1.4}
.wk-top .wk-top-date .p-date__day{display:block;margin:4px 0 6px;color:var(--wk-wine-ink);font-size:48px;font-weight:400;line-height:.95;letter-spacing:0;font-variant-numeric:tabular-nums}
.wk-top .wk-top-date__foot{display:flex;justify-content:center;gap:8px;color:var(--wk-text-2);font-size:10px;letter-spacing:.1em;text-transform:uppercase;line-height:1.4}
/* Includes custom dates returned by the original AJAX renderer, which are paragraphs. */
.wk-top .p-article07__date.p-date__text{
  position:static;display:block;transform:none;width:auto;height:auto;max-width:none;
  margin:0;padding:10px 14px;border:0;border-top:1px solid var(--wk-line);border-radius:0;
  background:var(--wk-cream);color:var(--wk-wine);font-family:var(--wk-serif);font-size:13px;line-height:1.8;text-align:left;
}
.wk-top .p-article07__cat{position:static;display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 0;padding:0}
.wk-top .p-article07 .p-event-cat{
  display:inline-block;min-width:0;height:auto;padding:4px 12px;border:1px solid var(--wk-line-strong);
  border-radius:999px;background:transparent;color:var(--wk-wine);font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.08em;
}
.wk-top .p-article07 .p-event-cat:hover,
.wk-top .p-article07 .p-event-cat:focus-visible{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-top .p-article07__title{margin:12px 0 0;color:var(--wk-text);font-family:var(--wk-serif);font-size:17px;font-weight:600;line-height:1.8;letter-spacing:.025em}
.wk-top .p-article07__title a{color:inherit}
.wk-top .p-article07__title a:hover{color:var(--wk-wine)}
.wk-top .p-calendar{margin-bottom:28px;border-color:var(--wk-line);background:transparent}
.wk-top .p-calendar__item{border-color:var(--wk-line);color:var(--wk-text-2)}
.wk-top .p-calendar .js-calendar__item-btn{min-height:44px;border:1px solid var(--wk-line-strong);border-radius:2px;background:transparent;color:var(--wk-wine);font-family:var(--wk-serif);box-shadow:none}
.wk-top .p-calendar .js-calendar__item-btn:hover,
.wk-top .p-calendar .js-calendar__item-btn.is-active,
.wk-top .p-calendar .is-active > .js-calendar__item-btn{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}
/* Editorial sections: retain both special layouts and native ad markup. */
.wk-top .p-article06 > a,
.wk-top .p-article09 > a{box-shadow:none;border-radius:3px}
.wk-top .p-article06__img,
.wk-top .p-article09__img{overflow:hidden;border-radius:3px}
.wk-top .p-article06__title,
.wk-top .p-article09__title{color:var(--wk-text);font-family:var(--wk-serif);font-weight:600;line-height:1.8;letter-spacing:.025em}
.wk-top .p-article06__title{margin-top:14px;font-size:16px}
.wk-top .p-article09__content{background:var(--wk-cream);color:var(--wk-text);border-bottom:1px solid var(--wk-line-strong)}
.wk-top .p-article09__excerpt{color:var(--wk-text-2);line-height:1.9}
.wk-top .p-article11{border-color:var(--wk-line);background:transparent}
.wk-top .p-article11 > a{padding-top:22px;padding-bottom:22px;background:transparent;color:var(--wk-text)}
.wk-top .p-article11 > a:hover{background:var(--wk-cream);color:var(--wk-wine)}
.wk-top .p-article11__date{color:var(--wk-text-2);font-family:var(--wk-serif);font-size:13px;letter-spacing:.1em}
.wk-top .p-article11__title{font-size:15px;font-weight:400;line-height:1.9}
.wk-top .p-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;height:auto;
  padding:12px 32px;border:1px solid var(--wk-line-strong);border-radius:999px;
  background:transparent;color:var(--wk-wine);font-size:13px;line-height:1.6;letter-spacing:.1em;box-shadow:none;
}
.wk-top .p-btn:hover{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}
.wk-top .p-cb__item-btn{margin-top:30px}
/* Breadcrumb: preserve original ol/li/a and every microdata attribute. */
.wk-bc.wk-bc{background:var(--wk-paper);border-top:1px solid var(--wk-line);border-bottom:1px solid var(--wk-line)}
.wk-bc .p-breadcrumb__inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;list-style:none;padding-top:13px;padding-bottom:13px;height:auto;white-space:normal;overflow:visible}
.wk-bc .p-breadcrumb__item{display:flex;align-items:baseline;float:none;min-width:0;max-width:100%;height:auto;margin:0;padding:0;color:var(--wk-text-2);font-size:11px;line-height:1.9;letter-spacing:.05em;white-space:normal;overflow-wrap:anywhere}
.wk-bc .p-breadcrumb__item::after{content:none}
.wk-bc .p-breadcrumb__item + .p-breadcrumb__item::before{content:"/";position:static;display:inline-block;margin:0 12px;color:var(--wk-line-strong);font-family:var(--wk-serif)}
.wk-bc .p-breadcrumb__item a{color:var(--wk-wine);text-decoration:none}
.wk-bc .p-breadcrumb__item a:hover{text-decoration:underline;text-underline-offset:4px}
.wk-bc .p-breadcrumb__item:last-child{color:var(--wk-text-2)}
/* Footer: warm paper, one fine gold rule at the upper edge. */
.wk-ft.wk-ft{position:relative;background:var(--wk-cream);border-top:1px solid var(--wk-accent-2);color:var(--wk-text)}
.wk-ft .p-footer-links{padding:52px 0 44px;background:transparent;border-bottom:1px solid var(--wk-line)}
.wk-ft .p-footer-links__list{gap:20px}
.wk-ft .p-article02{border-radius:3px;overflow:hidden;box-shadow:none}
.wk-ft .p-article02 > a{display:block;background:var(--wk-paper);color:var(--wk-wine)}
.wk-ft .p-article02__img::before{content:none;background:none}
.wk-ft .p-article02__title{position:static;transform:none;width:auto;margin:0;padding:16px 18px;background:var(--wk-paper);color:var(--wk-wine);font-family:var(--wk-serif);font-size:16px;font-weight:600;line-height:1.8;text-align:left;text-shadow:none}
.wk-ft .wk-app-banner{padding:36px 0;background:var(--wk-paper);border:0;border-bottom:1px solid var(--wk-line)}
.wk-ft .wk-app-banner__inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.wk-ft .wk-app-banner__text{flex:1;margin:0;color:var(--wk-text-2);font-size:14px;line-height:1.9}
.wk-ft .wk-app-banner__text strong{display:block;margin-bottom:6px;color:var(--wk-wine);font-family:var(--wk-serif);font-size:22px;font-weight:600;letter-spacing:.06em}
.wk-ft .wk-app-banner__btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:48px;padding:12px 26px;border:1px solid var(--wk-wine);border-radius:999px;background:var(--wk-wine);color:#fff;font-size:13px;line-height:1.6;letter-spacing:.06em;text-decoration:none;box-shadow:none}
.wk-ft .wk-app-banner__btn:hover{background:var(--wk-wine-2);border-color:var(--wk-wine-2);color:#fff}
.wk-ft .p-footer-widgets{padding:40px 0 28px;background:transparent;border:0;color:var(--wk-text)}
.wk-ft .p-footer-widgets__item{color:var(--wk-text-2);font-size:13px;line-height:2}
.wk-ft .p-footer-widgets__item a{color:var(--wk-wine)}
.wk-ft .p-footer-widgets__item a:hover{text-decoration:underline;text-underline-offset:4px}
.wk-ft .p-footer-widgets__item .p-widget__title{color:var(--wk-wine);font-family:var(--wk-serif);border-color:var(--wk-line-strong)}
.wk-ft .p-social-nav{padding-top:16px;padding-bottom:28px}
.wk-ft .p-social-nav__item a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--wk-line-strong);border-radius:50%;background:transparent;color:var(--wk-wine)}
.wk-ft .p-social-nav__item a:hover{background:var(--wk-wine-tint);color:var(--wk-wine)}
.wk-ft .p-copyright{margin:0;padding:22px 20px;border-top:1px solid var(--wk-line);background:transparent;color:var(--wk-text-2);font-size:11px;line-height:1.8;letter-spacing:.08em;text-align:center}
.wk-ft .p-pagetop a{background:var(--wk-paper);color:var(--wk-wine);border:1px solid var(--wk-line-strong);box-shadow:none}
.wk-top a:focus-visible,
.wk-top button:focus-visible,
.wk-bc a:focus-visible,
.wk-ft a:focus-visible{outline:2px solid var(--wk-wine-2);outline-offset:4px}
@media (max-width:767px){
  .wk-top .l-contents{padding-top:36px;padding-bottom:8px}
  .wk-top .wk-top-section{margin-bottom:48px}
  .wk-top .p-headline02,.wk-ft .p-headline02{margin-bottom:26px;padding-bottom:15px}
  .wk-top .p-event-list{gap:28px}
  .wk-top .p-article07__title{font-size:16px}
  .wk-top .p-article07__date.wk-top-date{top:16px;left:14px;width:104px;min-height:110px}
  .wk-top .wk-top-date .p-date__day{font-size:44px}
  .wk-top .p-article11 > a{padding-top:18px;padding-bottom:18px}
  .wk-bc .p-breadcrumb__item + .p-breadcrumb__item::before{margin:0 8px}
  .wk-ft .p-footer-links{padding:36px 0 28px}
  .wk-ft .wk-app-banner{padding:28px 0}
  .wk-ft .wk-app-banner__inner{flex-direction:column;align-items:stretch;gap:20px}
  .wk-ft .wk-app-banner__text strong{font-size:20px}
  .wk-ft .wk-app-banner__btn{align-self:flex-start}
  .wk-ft .p-footer-widgets{padding:28px 0 16px}
  .wk-ft .p-article02__title{padding:12px;font-size:14px}
}
@media (prefers-reduced-motion:reduce){
  .wk-top a,.wk-top img,.wk-top button,.wk-ft a,.wk-ft img{transition:none !important;animation:none !important}
}
/* Explicit resets for the parent AVANT geometry (including its mobile rules). */
.wk-top .p-article06__img::before{content:none;background:none}
.wk-top .p-article06__content{position:static;padding:0;background:var(--wk-paper)}
.wk-top .p-article06__title,
.wk-top .p-article06__title:last-child{position:static;bottom:auto;padding:12px 0 14px;margin:0;border-bottom:1px solid var(--wk-line);background:var(--wk-paper);color:var(--wk-text)}
.wk-top .p-article06 a:hover .p-article06__title,
.wk-top .p-article09 a:hover .p-article09__title,
.wk-top .p-article11 a:hover .p-article11__title{color:var(--wk-wine)}
.wk-top .p-article11{height:auto;line-height:1.8;border-width:0 0 1px}
.wk-top .p-article11 > a{align-items:baseline;gap:24px;height:auto}
.wk-top .p-article11__date{flex-shrink:0;margin-right:0}
.wk-top .p-article11__title{margin:0;white-space:normal;overflow:visible}
.wk-ft .p-footer-links__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.wk-ft .p-footer-links__list-item,
.wk-ft .p-footer-links__list-item:nth-child(3n){width:auto;margin:0}
.wk-ft .p-social-nav{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;transform:none}
.wk-ft .p-social-nav__item{margin:0}
.wk-bc.wk-bc{height:auto;min-height:50px;line-height:1.9}
.wk-bc .p-breadcrumb__item:first-child a{color:var(--wk-wine)}
.wk-top .p-calendar .js-calendar__item-btn:focus-visible{outline:2px solid var(--wk-wine-2);outline-offset:3px}
@media (max-width:767px){
  .wk-top .p-article06__title,.wk-top .p-article06__title:last-child{font-size:14px}
  .wk-ft .p-footer-links__list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:479px){
  .wk-ft .p-footer-links__list{grid-template-columns:1fr}
}
/* Parent hero selectors: typography and overlay tone only, no slider geometry changes. */
.wk-top .p-hero{margin-bottom:0}
.wk-top .p-hero .p-article12__title,
.wk-top .p-hero .p-article13__title{font-family:var(--wk-serif);letter-spacing:.045em}
.wk-top .p-hero .p-article12__img::before,
.wk-top .p-hero .p-article13__img::before{background:rgba(63,20,27,.38)}
.wk-top .p-hero .p-event-cat{height:auto;min-width:0;padding:5px 12px;border:1px solid var(--wk-line-strong);background:var(--wk-paper);color:var(--wk-wine);font-size:11px;line-height:1.6}

/* トップ GEO/SEO 本文（2026-09-26・追記のみ）: ヒーロー直下の導入（.wk-top-intro）と
   FAQ・都道府県リンク・出典（.wk-top-guide）。既存セクションの見出し（.p-headline02）を流用する。 */
.wk-top .wk-top-intro{margin:0 0 76px}
.wk-top .wk-top-intro__title{margin:0 0 20px;color:var(--wk-wine-ink);font-family:var(--wk-serif);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:400;line-height:1.5;letter-spacing:.08em}
.wk-top .wk-top-intro p,
.wk-top .wk-top-guide p{margin:0 0 14px;color:var(--wk-text-2);font-size:14px;line-height:2}
.wk-top .wk-top-intro .wk-top-intro__lead{color:var(--wk-text);font-size:15px}
.wk-top .wk-top-intro__data{margin-top:32px}
.wk-top .wk-top-intro__heading{margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--wk-line-strong);color:var(--wk-wine);font-size:18px;font-weight:600;line-height:1.6}
.wk-top .wk-top-intro__subheading{margin:24px 0 10px;color:var(--wk-text);font-size:15px;font-weight:600;line-height:1.6}
.wk-top .wk-top-intro__table{width:100%;margin:0 0 8px;border-collapse:collapse;font-size:14px;line-height:1.8}
.wk-top .wk-top-intro__table caption{margin:0 0 8px;color:var(--wk-text-2);font-size:12px;text-align:left}
.wk-top .wk-top-intro__table th,
.wk-top .wk-top-intro__table td{padding:10px 14px;border:1px solid var(--wk-line);text-align:left;vertical-align:top}
.wk-top .wk-top-intro__table th{width:40%;background:var(--wk-cream);font-weight:500}
.wk-top .wk-top-intro__stats{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 8px;padding:0;list-style:none;font-size:14px;line-height:1.9}
.wk-top .wk-top-intro__table a,
.wk-top .wk-top-intro__stats a,
.wk-top .wk-top-sources a,
.wk-top .wk-top-faq__quote a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:4px}
.wk-top .wk-top-intro .wk-top-intro__note,
.wk-top .wk-top-guide .wk-top-sources__note{margin-top:12px;font-size:12px;line-height:1.8}
.wk-top .wk-top-faq__item{padding:18px 0;border-bottom:1px solid var(--wk-line)}
.wk-top .wk-top-faq__item:first-of-type{padding-top:4px}
.wk-top .wk-top-faq__q{margin:0 0 8px;color:var(--wk-text);font-size:15px;font-weight:600;line-height:1.7}
.wk-top .wk-top-faq__a p:last-child{margin-bottom:0}
.wk-top .wk-top-faq__a q{quotes:"「" "」"}
.wk-top .wk-top-faq__quote{margin:0 0 14px;padding:12px 16px;border-left:3px solid var(--wk-wine);background:var(--wk-cream)}
.wk-top .wk-top-guide .wk-top-faq__quote p{margin:0 0 6px;color:inherit}
.wk-top .wk-top-faq__quote footer{font-size:12px;line-height:1.8}
.wk-top .wk-top-faq__quote cite{font-style:normal}
.wk-top .wk-top-area{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}
.wk-top .wk-top-area__region{margin:0 0 10px;color:var(--wk-wine);font-size:15px;font-weight:600;line-height:1.6}
.wk-top .wk-top-area__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.wk-top .wk-top-area__list a{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--wk-line-strong);border-radius:999px;background:var(--wk-paper);color:var(--wk-text);font-size:13px;line-height:1.6}
.wk-top .wk-top-area__list a:hover,
.wk-top .wk-top-area__list a:focus-visible{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-top .wk-top-area__count{color:var(--wk-text-2);font-size:11px}
.wk-top .wk-top-area__list li{display:inline-flex;align-items:center;gap:4px}
.wk-top .wk-top-sources{margin:0 0 8px;padding-left:1.4em;font-size:13px;line-height:2}

/* 探索導線（2026-09-28 SEO監査・追記のみ）: h1直下に置く「地域／開催月／種類」の入口。
   旧・同位置の詳細統計は下部へ移設し、地域・月・種類のリンクはここへ集約した。 */
.wk-top .wk-top-explore{margin:0 0 8px}
.wk-top .wk-top-explore__block{margin:0 0 20px}
.wk-top .wk-top-explore__label{margin:0 0 10px;color:var(--wk-wine);font-size:14px;font-weight:600;line-height:1.6}
.wk-top .wk-top-explore__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.wk-top .wk-top-explore__list a{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--wk-line-strong);border-radius:999px;background:var(--wk-paper);color:var(--wk-text);font-size:13px;line-height:1.6}
.wk-top .wk-top-explore__list a:hover,
.wk-top .wk-top-explore__list a:focus-visible{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-top .wk-top-explore__count{color:var(--wk-text-2);font-size:11px}
.wk-top .wk-top-explore__more{margin:4px 0 0;font-size:14px;line-height:2}
.wk-top .wk-top-explore__more a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:4px}

@media (max-width:767px){
  .wk-top .wk-top-explore__list a{padding:4px 10px;font-size:12px}
}
@media (max-width:767px){
  .wk-top .wk-top-intro{margin-bottom:56px}
  .wk-top .wk-top-intro__heading{font-size:16px}
  .wk-top .wk-top-intro p,.wk-top .wk-top-guide p,.wk-top .wk-top-intro__table,.wk-top .wk-top-intro__stats{font-size:13px}
  .wk-top .wk-top-intro__table th,.wk-top .wk-top-intro__table td{padding:8px 10px}
  .wk-top .wk-top-area{grid-template-columns:1fr}
  .wk-top .wk-top-area__list a{padding:4px 10px;font-size:12px}
}

/* イベント一覧の追加本文のみ。既存トップ・都道府県の表示には適用しない。 */
.wk-arch-event .wk-event-guide{margin:48px 0;line-height:2;font-size:14px;overflow-wrap:anywhere}
.wk-arch-event .wk-event-guide h2{margin:36px 0 18px;font-size:22px;line-height:1.6;color:var(--wk-wine)}
.wk-arch-event .wk-event-guide h3{margin:24px 0 12px;font-size:17px;line-height:1.7}
.wk-arch-event .wk-event-guide p{margin:0 0 16px}
.wk-arch-event .wk-event-guide ul{padding-left:1.5em;margin:0 0 16px}
.wk-arch-event .wk-event-guide a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:3px}
.wk-arch-event .wk-event-guide table{width:100%;border-collapse:collapse;margin-bottom:16px}
.wk-arch-event .wk-event-guide caption{text-align:left;font-size:13px}
.wk-arch-event .wk-event-guide th,.wk-arch-event .wk-event-guide td{padding:10px;border:1px solid var(--wk-line);text-align:left}
.wk-arch-event .wk-event-guide th{width:36%;background:var(--wk-cream)}
.wk-arch-event .wk-event-guide blockquote{margin:16px 0;padding:16px;border-left:3px solid var(--wk-wine);background:var(--wk-cream)}
.wk-arch-event .wk-event-guide__faq{border-bottom:1px solid var(--wk-line);padding-bottom:12px}
/* wk-archive.css の nowrap をイベント一覧だけ解除。詳細度を上げて読込順に依存させない。 */
.wk-arch-event .wk-arch-header .p-page-header__upper-title{white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.5;font-size:clamp(24px,3.5vw,44px) !important}

/* コラム投稿ページの追加本文だけに適用。 */
body.blog .wk-column-guide{margin:48px 0 0;font-size:14px;line-height:2;overflow-wrap:anywhere}
body.blog .wk-column-guide h2{margin:36px 0 18px;color:var(--wk-wine);font-size:22px;line-height:1.6}
body.blog .wk-column-guide h3{margin:24px 0 12px;font-size:17px;line-height:1.7}
body.blog .wk-column-guide p{margin:0 0 16px}
body.blog .wk-column-guide ul{margin:0 0 16px;padding-left:1.5em}
body.blog .wk-column-guide a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:3px}
body.blog .wk-column-guide blockquote{margin:16px 0;padding:16px;border-left:3px solid var(--wk-wine);background:var(--wk-cream)}
body.blog .wk-column-guide__faq{padding-bottom:12px;border-bottom:1px solid var(--wk-line)}
body.blog .wk-arch-column .wk-arch-header .p-page-header__upper-title{white-space:normal;overflow-wrap:anywhere;line-height:1.5;font-size:clamp(24px,3.5vw,44px) !important}

/* --------------------------------------------------------------------------
   都道府県・タグアーカイブのヘッダー最適化（2026-09-27）
   --------------------------------------------------------------------------
   実測した問題:
     wk-archive.css:35 が white-space:nowrap と font-size:clamp(30px,4.2vw,54px) を
     指定しており、長い H1 が画面幅に収まらず見切れていた。
       「【東京】ワイン会・ワインイベント一覧」      18字 × 54px ≒ 970px
       「試飲会のワイン会・ワインイベント一覧」    19字 × 54px ≒ 1,026px
     イベント一覧・コラム一覧では既に nowrap を解除しているが、
     都道府県とタグは未対応だった（タグは同日に H1 を動的化した際に同じ状態になった）。

   対応: 折り返しを許可し、最大サイズを下げる。
     詳細度 .wk-arch-prefecture / .wk-arch-tag 前置で wk-archive.css の 0,2,0 に勝たせる
     （読込順に依存させない）。 */
.wk-arch-prefecture .wk-arch-header .p-page-header__upper-title,
.wk-arch-tag .wk-arch-header .p-page-header__upper-title{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.3;
  font-size:clamp(21px,3.2vw,40px) !important;
  padding-bottom:16px;
}
/* nowrap 解除で H1 が2行になりうるため、min-height を下げて余白を詰める。
   280px 固定のままだと2行時に下に大きな空白ができる。 */
.wk-arch-prefecture .wk-arch-header.p-page-header,
.wk-arch-tag .wk-arch-header.p-page-header{min-height:180px}
.wk-arch-prefecture .wk-arch-header .p-page-header__inner,
.wk-arch-tag .wk-arch-header .p-page-header__inner{min-height:180px}
.wk-arch-prefecture .wk-arch-header .p-page-header__upper,
.wk-arch-tag .wk-arch-header .p-page-header__upper{min-height:180px;padding:32px 40px}
@media screen and (max-width:600px){
  .wk-arch-prefecture .wk-arch-header .p-page-header__upper,
  .wk-arch-tag .wk-arch-header .p-page-header__upper{padding:24px 20px}
  .wk-arch-prefecture .wk-arch-header .p-page-header__upper-title,
  .wk-arch-tag .wk-arch-header .p-page-header__upper-title{font-size:clamp(20px,5.4vw,26px) !important}
}

/* --------------------------------------------------------------------------
   都道府県 × イベントタグ の絞り込みチップ（2026-09-27）
   --------------------------------------------------------------------------
   目的: 「北海道のメーカーズディナー」のような複合検索意図の受け皿。
   0件のタグは PHP 側で出さないため、ここでは見た目のみを担う。
   現在の絞り込み中タグは is-active で強調し、再クリックで解除できる。 */
.wk-arch-pref-tags{margin:0 0 28px;padding:18px 20px;border:1px solid var(--wk-line-strong);border-radius:8px;background:var(--wk-cream)}
.wk-arch-pref-tags__title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--wk-wine);letter-spacing:.02em}
.wk-arch-pref-tags__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.wk-arch-pref-tags__item{margin:0}
.wk-arch-pref-tags__link{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--wk-line-strong);border-radius:999px;background:#fff;color:var(--wk-text);font-size:14px;line-height:1.4;text-decoration:none;transition:background .15s,border-color .15s}
.wk-arch-pref-tags__link:hover{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}
.wk-arch-pref-tags__link.is-active{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff;font-weight:600}
.wk-arch-pref-tags__count{display:inline-block;padding:1px 7px;border-radius:999px;background:rgba(0,0,0,.07);font-size:12px;line-height:1.5}
.wk-arch-pref-tags__link:hover .wk-arch-pref-tags__count,
.wk-arch-pref-tags__link.is-active .wk-arch-pref-tags__count{background:rgba(255,255,255,.25)}
.wk-arch-pref-tags__clear{margin:12px 0 0;font-size:13px}
.wk-arch-pref-tags__clear a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:3px}
@media screen and (max-width:600px){
  .wk-arch-pref-tags{padding:14px 14px;margin-bottom:22px}
  .wk-arch-pref-tags__link{padding:6px 12px;font-size:13px}
}

/* --------------------------------------------------------------------------
   タグ → 都道府県 の絞り込みリンク（2026-09-27）
   --------------------------------------------------------------------------
   都道府県 → タグ のチップ（.wk-arch-pref-tags）と対になる導線。
   件数降順で並べるため、上位の都道府県から見つけられる。 */
.wk-arch-tag-prefs{margin:0 0 32px;padding:18px 20px;border:1px solid var(--wk-line-strong);border-radius:8px;background:var(--wk-cream)}
.wk-arch-tag-prefs__title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--wk-wine);letter-spacing:.02em}
.wk-arch-tag-prefs__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.wk-arch-tag-prefs__item{margin:0}
.wk-arch-tag-prefs__item a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--wk-line-strong);border-radius:999px;background:#fff;color:var(--wk-text);font-size:14px;line-height:1.4;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.wk-arch-tag-prefs__item a:hover{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}
.wk-arch-tag-prefs__count{display:inline-block;padding:1px 7px;border-radius:999px;background:rgba(0,0,0,.07);font-size:12px;line-height:1.5}
.wk-arch-tag-prefs__item a:hover .wk-arch-tag-prefs__count{background:rgba(255,255,255,.25)}
@media screen and (max-width:600px){
  .wk-arch-tag-prefs{padding:14px;margin-bottom:24px}
  .wk-arch-tag-prefs__item a{padding:6px 12px;font-size:13px}
}

/* トップ導線再編：既存 wk-global.css の末尾に追加 */
.wk-top .wk-top-actions,
.wk-top .wk-top-actions *,
.wk-top .wk-top-types,
.wk-top .wk-top-types * {
  box-sizing: border-box;
}
.wk-top .wk-top-intro .wk-top-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 24px;
  margin-top: 24px;
}
.wk-top .wk-top-actions__primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 20px;
  border: 1px solid var(--wk-wine);
  border-radius: 4px;
  background: var(--wk-wine);
  color: var(--wk-paper);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: background-color .16s ease, border-color .16s ease;
}
.wk-top .wk-top-actions__shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  min-width: 0;
}
.wk-top .wk-top-actions__jump {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 4px;
  color: var(--wk-wine);
  font-size: 14px;
  line-height: 1.6;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.wk-top #wk-top-area,
.wk-top #wk-top-types {
  scroll-margin-top: 112px;
}
.wk-top .wk-top-types .p-headline02 {
  margin-bottom: 24px;
}
.wk-top .wk-top-types .wk-top-types__note {
  margin: 0 0 20px;
  color: var(--wk-text-2);
  font-size: 13px;
  line-height: 1.8;
}
.wk-top .wk-top-types__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.wk-top .wk-top-types__item {
  min-width: 0;
  margin: 0;
  padding: 0;
}
.wk-top .wk-top-types__item:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}
.wk-top .wk-top-types__card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  align-items: start;
  gap: 12px;
  min-height: 112px;
  height: 100%;
  padding: 24px;
  border: 1px solid var(--wk-line-strong);
  border-left: 3px solid var(--wk-wine);
  border-radius: 4px;
  background: var(--wk-paper);
  color: var(--wk-text);
  text-decoration: none;
  transition: background-color .16s ease, border-color .16s ease;
}
.wk-top .wk-top-types .wk-top-types__title {
  min-width: 0;
  margin: 0;
  padding: 0;
  color: var(--wk-wine-ink);
  font-family: var(--wk-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .02em;
  overflow-wrap: anywhere;
}
.wk-top .wk-top-types__count {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--wk-wine-tint);
  color: var(--wk-wine-ink);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.wk-top .wk-top-types .wk-top-types__description {
  grid-column: 1 / -1;
  margin: 0;
  padding: 0;
  color: var(--wk-text-2);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.wk-top .wk-top-types__card--unavailable {
  border-left-color: var(--wk-line-strong);
  background: var(--wk-cream);
}
.wk-top .wk-top-area__list a {
  box-sizing: border-box;
  min-height: 44px;
  padding: 8px 12px;
}
@media (hover: hover) {
  .wk-top .wk-top-actions__primary:hover {
    background: var(--wk-wine-ink);
    border-color: var(--wk-wine-ink);
    color: var(--wk-paper);
  }
  .wk-top .wk-top-actions__jump:hover {
    color: var(--wk-wine-ink);
    text-decoration-thickness: 2px;
  }
  .wk-top a.wk-top-types__card:hover {
    background: var(--wk-cream);
    border-color: var(--wk-wine);
  }
  .wk-top a.wk-top-types__card:hover .wk-top-types__title {
    text-decoration: underline;
    text-underline-offset: 4px;
  }
}
.wk-top .wk-top-actions a:focus-visible,
.wk-top a.wk-top-types__card:focus-visible,
.wk-top .wk-top-area__list a:focus-visible,
.wk-top #wk-top-area:focus-visible,
.wk-top #wk-top-types:focus-visible {
  outline: 3px solid var(--wk-wine-ink);
  outline-offset: 4px;
}
.wk-top a.wk-top-types__card:focus-visible {
  border-color: var(--wk-wine);
  background: var(--wk-cream);
}
.wk-top a.wk-top-types__card:focus-visible .wk-top-types__title {
  text-decoration: underline;
  text-underline-offset: 4px;
}
@media (max-width: 767px) {
  .wk-top .wk-top-intro .wk-top-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
  }
  .wk-top .wk-top-actions__primary {
    width: 100%;
  }
  .wk-top .wk-top-types__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  .wk-top .wk-top-types__card {
    padding: 20px;
  }
  .wk-top .wk-top-types .wk-top-types__title {
    font-size: 17px;
  }
}
@media (max-width: 360px) {
  .wk-top .wk-top-types__card {
    grid-template-columns: minmax(0, 1fr);
  }
  .wk-top .wk-top-types__count {
    justify-self: start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .wk-top .wk-top-actions__primary,
  .wk-top .wk-top-types__card {
    transition: none;
  }
}
@media (forced-colors: active) {
  .wk-top .wk-top-actions__primary,
  .wk-top .wk-top-types__card,
  .wk-top .wk-top-types__count {
    border: 1px solid ButtonText;
  }
  .wk-top .wk-top-actions a:focus-visible,
  .wk-top a.wk-top-types__card:focus-visible,
  .wk-top .wk-top-area__list a:focus-visible,
  .wk-top #wk-top-area:focus-visible,
  .wk-top #wk-top-types:focus-visible {
    outline-color: Highlight;
  }
}

/* 種類セクション末尾の全件導線（2026-09-29 実装時に追加） */
.wk-top .wk-top-types__more{margin:24px 0 0}
.wk-top .wk-top-types__more-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--wk-line-strong);border-radius:4px;background:var(--wk-paper);color:var(--wk-wine);font-size:14px;line-height:1.6;text-decoration:none;overflow-wrap:anywhere}
@media (hover:hover){
  .wk-top .wk-top-types__more-link:hover{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine-ink)}
}
.wk-top .wk-top-types__more-link:focus-visible{outline:3px solid var(--wk-wine-ink);outline-offset:4px}

/* 掲載データ / 2026-10-18。既存の intro 指定より詳細度を上げ、
   このセクションだけを統計パネルにする。外側の76px / モバイル48pxは維持。 */
.wk-top .wk-top-intro__data.wk-top-section {
  box-sizing: border-box;
  padding: clamp(20px, 3vw, 36px);
  border: 1px solid var(--wk-line-strong);
  border-top: 3px solid var(--wk-wine);
  border-radius: 4px;
  background: var(--wk-cream);
  overflow-wrap: anywhere;
}
.wk-top .wk-top-intro__data .wk-top-intro__heading {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: var(--wk-serif);
  font-size: clamp(20px, 2.4vw, 28px);
  font-weight: 400;
  letter-spacing: .06em;
  /* 日本語の見出しが「開催状 / 況」「ワ / イン会」のように語中で割れるのを防ぐ。
     見出しは意味単位の span（.wk-top-data__seg）で構成し、その間だけで折り返す。
     balance は行長を揃える。 */
  text-wrap: balance;
  line-break: strict;
}
/* 語の途中で折り返さない（「ワイン会」を分割させない） */
.wk-top .wk-top-intro__data .wk-top-data__seg {
  display: inline-block;
}
.wk-top .wk-top-data__asof {
  margin: 10px 0 24px;
  color: var(--wk-text-2);
  font-size: 13px;
  line-height: 1.8;
}
.wk-top .wk-top-data__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
}
.wk-top .wk-top-data__metric {
  min-width: 0;
  padding: 8px 20px 16px;
  border-left: 1px solid var(--wk-line-strong);
}
.wk-top .wk-top-data__metric:first-child { padding-left: 0; border-left: 0; }
.wk-top .wk-top-data__metric:last-child { padding-right: 0; }
.wk-top .wk-top-data__label {
  color: var(--wk-wine-ink);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}
.wk-top .wk-top-data__value {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  margin: 14px 0 12px;
  color: var(--wk-wine);
}
.wk-top .wk-top-data__number {
  min-width: 0;
  font-family: var(--wk-serif);
  font-size: clamp(40px, 5vw, 64px);
  font-weight: 400;
  line-height: 1.1;
  font-variant-numeric: lining-nums tabular-nums;
  letter-spacing: -.035em;
}
.wk-top .wk-top-data__unit { font-size: 14px; line-height: 1.6; }
.wk-top .wk-top-data__detail {
  margin: 0;
  color: var(--wk-text-2);
  font-size: 12px;
  line-height: 1.9;
}
.wk-top .wk-top-data__empty { margin: 20px 0; color: var(--wk-wine); font-size: 20px; }
.wk-top .wk-top-intro__data .wk-top-data__source {
  margin: 20px 0 0;
  padding-top: 16px;
  border-top: 1px solid var(--wk-line-strong);
  color: var(--wk-text-2);
  font-size: 12px;
  line-height: 1.9;
}
/* FAQ: guide を加えた詳細度で既存の項目・first-of-type指定を上書き。
   本文とJSON-LDは変えず、質問に短い罫線と余白を与える。 */
.wk-top .wk-top-guide .wk-top-faq__item {
  padding: 28px 0;
  overflow-wrap: anywhere;
}
.wk-top .wk-top-guide .wk-top-faq__q {
  padding-left: 14px;
  margin-bottom: 16px;
  border-left: 3px solid var(--wk-wine);
  color: var(--wk-wine-ink);
  font-family: var(--wk-serif);
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.7;
}
.wk-top .wk-top-guide .wk-top-faq__a { max-width: 72ch; }
/* FAQ末尾: guide の汎用pより詳細度を上げ、次の探索導線を独立させる。 */
.wk-top .wk-top-guide .wk-top-faq__more {
  margin: 24px 0 0;
  padding: 20px;
  border: 1px solid var(--wk-line-strong);
  border-radius: 4px;
  background: var(--wk-wine-tint);
  color: var(--wk-text);
  overflow-wrap: anywhere;
}
.wk-top .wk-top-guide .wk-top-faq__more a {
  display: inline-block;
  padding-block: 8px;
  color: var(--wk-wine);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.wk-top .wk-top-guide .wk-top-faq__more a:focus-visible {
  outline: 3px solid var(--wk-wine-ink);
  outline-offset: 3px;
}
/* 種類カード: types を加え詳細度で既存指定に勝たせる。
   件数をピルから小さな統計欄にし、タイトルと説明の階層を明確にする。 */
.wk-top .wk-top-types .wk-top-types__card { gap: 16px; box-sizing: border-box; }
.wk-top .wk-top-types .wk-top-types__count {
  padding: 0 0 0 12px;
  border-left: 1px solid var(--wk-line-strong);
  border-radius: 0;
  background: transparent;
  color: var(--wk-wine);
  font-family: var(--wk-serif);
  font-size: 20px;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .wk-top .wk-top-data__grid { grid-template-columns: minmax(0, 1fr); }
  .wk-top .wk-top-data__grid .wk-top-data__metric {
    padding: 24px 0;
    border-left: 0;
    border-top: 1px solid var(--wk-line-strong);
  }
  .wk-top .wk-top-data__grid .wk-top-data__metric:first-child { padding-top: 0; border-top: 0; }
  .wk-top .wk-top-data__grid .wk-top-data__metric:last-child { padding-bottom: 0; }
  .wk-top .wk-top-data__number { font-size: clamp(44px, 10vw, 60px); }
}
/* 新規アニメーションなし。既存の種類カードのreduced-motion指定を維持。 */

/* FAQ refinement: one centered reading column, including heading and rules.
   aria-labelledby scopes this override to FAQ, not the other guide sections.
   Added specificity beats theme guide paragraphs and the earlier 72ch limit;
   existing rules stay intact. No animation or shadow is introduced. */
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] {
  box-sizing: border-box;
  width: 100%;
  /* 2026-10-19 main修正: セクション全体の中央寄せは、他セクションの左端（x=113）から
     FAQ だけ 200px ずれる実測不整合を生んだため撤回する。セクションは全幅・左揃えにして
     ページのグリッドに合わせ、読みやすいカラム幅は「項目」側で制限する。 */
  max-width: none;
  min-width: 0;
  margin-inline: 0;
}
.wk-top #wk-top-faq { scroll-margin-top: 112px; }
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .p-headline02 {
  margin-bottom: 12px;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__item {
  box-sizing: border-box;
  width: 100%;
  /* 日本語の可読行長（16px基準で約48文字）に制限する。質問・下罫線・回答が同じ右端で終わり、
     右側の余白は「設計された余白」として成立する。左端はページグリッドに揃える。 */
  max-width: 48rem;
  padding: 32px 0;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__q {
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 16px;
  padding-left: 14px;
  font-size: 20px;
  letter-spacing: .04em;
  line-height: 1.7;
  line-break: strict;
  word-break: normal;
  overflow-wrap: normal;
  text-wrap: pretty;
}
.wk-top .wk-top-guide .wk-top-faq__phrase {
  display: inline-block;
  max-width: 100%;
  vertical-align: top;
  /* Normal wrapping inside an overlong future phrase prevents overflow at zoom. */
  white-space: normal;
  overflow-wrap: anywhere;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__a {
  width: 100%;
  max-width: none;
  min-width: 0;
  line-break: strict;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__a p {
  font-size: 16px;
  line-height: 2;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__more {
  box-sizing: border-box;
  width: 100%;
  max-width: 48rem;
  margin: 28px 0 0;
  padding: 16px 20px;
  font-size: 15px;
  line-break: strict;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] a {
  color: var(--wk-wine);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
  transition: none;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__link a {
  display: inline-block;
  padding-block: 6px;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] a:hover {
  color: var(--wk-wine-ink);
  text-decoration-thickness: 2px;
  background: var(--wk-wine-tint);
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] a:focus-visible {
  outline: 3px solid var(--wk-wine);
  outline-offset: 3px;
  border-radius: 3px;
}
@media (max-width: 767px) {
  /* A measured 460px ancestor must not force FAQ beyond a narrow viewport.
     Keep the parent's left gutter; do not center within its oversized width. */
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] {
    width: min(100%, calc(100vw - 40px));
    margin-inline: 0;
  }
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__item {
    padding: 24px 0;
  }
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__q {
    margin-bottom: 12px;
    padding-left: 11px;
    font-size: 17px;
    letter-spacing: .025em;
  }
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__a p {
    font-size: 14px;
  }
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__more {
    margin-top: 24px;
    padding: 14px 16px;
    font-size: 14px;
  }
}

/* FAQ width audit: full-width rules frame a centered reading column.
   Supersedes the earlier comment describing the left-aligned 48rem as intentional.
   Keep the existing FAQ-scoped specificity (including aria-labelledby) to beat
   the generic guide rules; equal specificity wins by source order, no !important.
   42rem / 16px = about 42 Japanese characters at the default root size.
   Only inner text is capped: section, item rules and the closing panel share edges. */
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__item,
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__more {
  max-width: none;
}
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__q,
.wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__a {
  box-sizing: border-box;
  width: 100%;
  max-width: 42rem;
  min-width: 0;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .wk-top .wk-top-guide[aria-labelledby="wk-top-faq"] .wk-top-faq__more {
    /* Subtract the panel's 1px border so its text aligns with the 42rem column.
       Narrow panels retain 20px padding; border-box keeps the outer width fixed. */
    padding-inline: max(20px, calc((100% - 42rem) / 2 - 1px));
  }
}
