/** Shopify CDN: Minification failed

Line 2146:64 Unexpected "*"

**/
/* ============================================
   ATSPECT - Custom Design System
   "静かな美術館" UI
   ============================================ */

/* --- Typography --- */
:root {
  /* 見出し＝欧文Cormorant＋和文明朝(Shippori/Noto Serif JP)。本文＝Jost＋Noto Sans JP。CJK出し分けは下部 [data-lang] で */
  --font-heading: 'Cormorant Garamond', 'Shippori Mincho', 'Noto Serif JP', Georgia, serif;
  --font-body: 'Jost', 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Helvetica Neue', sans-serif;
  --font-body-family: 'Jost', 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Helvetica Neue', sans-serif;
  --font-heading-family: 'Cormorant Garamond', 'Shippori Mincho', 'Noto Serif JP', Georgia, serif;

  /* ── ベースカラー ── */
  --color-bg: #F9F8F6;            /* 和紙・胡粉色：生成りの極薄温白 */
  --color-bg-warm: #f3f0e8;       /* より温かみのある生成り：交互セクション背景 */
  --color-bg-dark: #0e0e0e;       /* ダークセクション */
  --color-text: #2C2C2C;          /* 墨色：深みのあるダークグレー（純黒を避ける） */
  --color-text-light: #6b6b6b;
  --color-border: #e8e8e8;
  --color-accent: #1a1a1a;

  /* ── ゴールドアクセント（新設）── */
  --color-gold: #b8965a;          /* メインゴールド */
  --color-gold-light: #d4b07a;    /* ライトゴールド（ホバー時） */
  --color-gold-pale: rgba(184,150,90,0.12);  /* 薄いゴールド（背景ティント） */

  --spacing-section: 120px;
  --spacing-section-sm: 72px;
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── ゴールドアクセント：グローバル適用 ── */

/* ナビゲーション下線ホバー */
.atspect-sitenav__link::after {
  background: var(--color-gold) !important;
}

/* フィルターボタン アクティブ */
.atspect-archive__filter-btn.is-active {
  background: var(--color-gold) !important;
  border-color: var(--color-gold) !important;
  color: #fff !important;
}

/* バイオタブ アクティブ下線 */
.atspect-adetail__bio-tab.is-active {
  border-bottom-color: var(--color-gold) !important;
  color: var(--color-gold) !important;
}

/* ページヘッダー eyebrow 線 */
.atspect-page-header__eyebrow-line {
  background: var(--color-gold) !important;
}

/* セクション区切り線 */
.atspect-footer__bottom {
  border-top: 1px solid #E8E2D6 !important;
}

/* ウォームクリーム背景：交互セクションに適用 */
.atspect-archive,
.atspect-adetail__body {
  background: var(--color-bg-warm);
}

/* ============================================
   全画面共通：文字サイズ統一
   1rem = 10px ベース。section内 <style> より後で
   読み込まれるため !important で上書き
   ============================================ */

/* ── Eyebrow / 上部小ラベル: 12px（旧11px→12px） ── */
.atspect-hero__eyebrow,
.atspect-mission__eyebrow,
.atspect-genre__eyebrow,
.atspect-ccta__eyebrow,
.atspect-acta__eyebrow,
.atspect-press__eyebrow,
.atspect-archive__eyebrow,
.atspect-adetail__eyebrow,
.atspect-featured__eyebrow,
.atspect-artists__eyebrow,
.atspect-quote__eyebrow,
.atspect-footer__sns-label { font-size: 1.2rem !important; letter-spacing: 0.38em !important; font-weight: 400 !important; }

/* ── font-weight 強化：各セクション本文・説明文 ── */
/* ミッション・CTA・アーカイブ等で 300 指定されている本文を 400 に統一 */
.atspect-mission__body,
.atspect-mission__quote,
.atspect-ccta__body,
.atspect-ccta__list-item,
.atspect-acta__body,
.atspect-acta__feature-body,
.atspect-press__item-title,
.atspect-artists__description,
.atspect-featured__bio,
.atspect-archive__card-bio,
.atspect-adetail__bio-text,
.atspect-adetail__meta-value,
.atspect-footer__address,
.atspect-footer__contact-link,
.atspect-footer__nav-link { font-weight: 400 !important; }

/* ── Heading weight：見出しは 300 が多いので 400 に底上げ ── */
.atspect-mission__heading,
.atspect-ccta__heading,
.atspect-acta__heading,
.atspect-press__heading,
.atspect-artists__heading,
.atspect-featured__name-ja,
.atspect-genre__label { font-weight: 400 !important; }

/* ── ヒーローサブテキスト: 15px ── */
.atspect-hero__subheading { font-size: 1.5rem !important; line-height: 2 !important; }

/* ── ヒーローCTA: 13px ── */
.atspect-hero__button { font-size: 1.3rem !important; letter-spacing: 0.14em !important; }

/* ── スクロールラベル: 10px ── */
.atspect-hero__scroll-label { font-size: 1.0rem !important; letter-spacing: 0.28em !important; }

/* ── ミッション本文: 15px ── */
.atspect-mission__body { font-size: 1.5rem !important; line-height: 2.1 !important; }
.atspect-mission__btn  { font-size: 1.3rem !important; letter-spacing: 0.14em !important; }

/* ── ジャンルラベル ── */
.atspect-genre__label { font-size: 1.4rem !important; }

/* ── コレクターCTA ── */
.atspect-ccta__heading { font-size: clamp(2.2rem, 3.5vw, 3.8rem) !important; }
.atspect-ccta__body    { font-size: 1.5rem !important; line-height: 2 !important; }
.atspect-ccta__list-item { font-size: 1.4rem !important; }
.atspect-ccta__btn     { font-size: 1.3rem !important; letter-spacing: 0.14em !important; }

/* ── 作家登録CTA ── */
.atspect-acta__heading       { font-size: clamp(2.0rem, 2.6vw, 3.2rem) !important; }
.atspect-acta__body          { font-size: 1.5rem !important; line-height: 2 !important; }
.atspect-acta__feature-num   { font-size: 1.6rem !important; }
.atspect-acta__feature-title { font-size: 1.5rem !important; letter-spacing: 0.06em !important; }
.atspect-acta__feature-body  { font-size: 1.3rem !important; line-height: 1.85 !important; }
.atspect-acta__btn--primary  { font-size: 1.3rem !important; letter-spacing: 0.14em !important; }
.atspect-acta__btn--secondary { font-size: 1.2rem !important; }
.atspect-acta__feature-langs { font-size: 1.1rem !important; letter-spacing: 0.06em !important; line-height: 1.7 !important; }

/* ── プレス・メディア ── */
.atspect-press__heading    { font-size: clamp(2.0rem, 3vw, 2.8rem) !important; }
.atspect-press__item-title { font-size: 1.4rem !important; line-height: 1.7 !important; }
.atspect-press__item-date  { font-size: 1.1rem !important; }
.atspect-press__item-source { font-size: 1.1rem !important; }
.atspect-press__cta-btn    { font-size: 1.3rem !important; letter-spacing: 0.1em !important; }

/* ── 作家一覧・アーカイブ ── */
.atspect-artists__heading    { font-size: clamp(2.2rem, 3.5vw, 3.5rem) !important; }
.atspect-artists__description { font-size: 1.4rem !important; line-height: 1.9 !important; }
.atspect-archive__card-name  { font-size: 1.5rem !important; }
.atspect-archive__card-genre { font-size: 1.1rem !important; }
.atspect-archive__card-location { font-size: 1.2rem !important; }
.atspect-archive__card-bio   { font-size: 1.3rem !important; }

/* ── フィーチャード作家 ── */
.atspect-featured__genre    { font-size: 1.1rem !important; }
.atspect-featured__name-ja  { font-size: clamp(2.4rem, 4vw, 4.8rem) !important; }
.atspect-featured__name-en  { font-size: 1.3rem !important; }
.atspect-featured__location { font-size: 1.2rem !important; }
.atspect-featured__bio      { font-size: 1.4rem !important; line-height: 2 !important; }
.atspect-featured__work-title { font-size: 1.5rem !important; }
.atspect-featured__work-meta { font-size: 1.2rem !important; }
.atspect-featured__btn      { font-size: 1.3rem !important; }

/* ── 作家詳細ページ ── */
.atspect-adetail__bio-tab   { font-size: 1.2rem !important; }
.atspect-adetail__bio-text  { font-size: 1.4rem !important; line-height: 2 !important; }
.atspect-adetail__meta-label { font-size: 1.1rem !important; }
.atspect-adetail__meta-value { font-size: 1.3rem !important; }
.atspect-adetail__award     { font-size: 1.3rem !important; }

/* ── フッター ── */
.atspect-footer__nav-link   { font-size: 1.4rem !important; }
.atspect-footer__address    { font-size: 1.3rem !important; }
.atspect-footer__contact-link { font-size: 1.3rem !important; }
.atspect-footer__copy       { font-size: 1.1rem !important; }
.atspect-footer__corp-label { font-size: 1.0rem !important; }
.atspect-footer__corp-name  { font-size: 1.1rem !important; }

/* ── 名言ticker（Weekly Epigraph）— 階層感：text > attribution > label
   PC：本文32px・作者名14px・ラベル13px。モバイルは下方@mediaで別途指定 ── */
.atspect-qb__label       { font-size: 1.3rem !important; letter-spacing: 0.32em !important; }
.atspect-qb__text        { font-size: clamp(2.0rem, 3vw, 3.2rem) !important; }
.atspect-qb__attribution { font-size: 1.4rem !important; letter-spacing: 0.22em !important; }

/* ============================================
   PC底上げ（≥750px限定）：モバイルには一切影響させない
   - 全セクションのアイブロウを 12px に統一
   - Instagram / Featured Media の小文字群を底上げ
   ============================================ */
@media screen and (min-width: 750px) {

  /* ── 全セクションのアイブロウ（英字小ラベル）12px ── */
  .atspect-hero__eyebrow,
  .atspect-mission__eyebrow,
  .atspect-genre__eyebrow,
  .atspect-ccta__eyebrow,
  .atspect-acta__eyebrow,
  .atspect-press__eyebrow,
  .atspect-ig__eyebrow,
  .atspect-fmedia__eyebrow,
  .atspect-archive__eyebrow,
  .atspect-adetail__eyebrow,
  .atspect-quote__eyebrow { font-size: 1.2rem !important; }

  /* ── Featured Media：小文字群（脇役は12px、CTAは13px） ── */
  .atspect-fmedia__play-label,
  .atspect-fmedia__caption,
  .atspect-fmedia__source     { font-size: 1.2rem !important; }
  .atspect-fmedia__subheading,
  .atspect-fmedia__cta        { font-size: 1.3rem !important; }

  /* ── Instagram：ハンドル名・CTA 13px ── */
  .atspect-ig__handle { font-size: 1.3rem !important; }
  .atspect-ig__cta    { font-size: 1.3rem !important; }

}

/* ============================================
   モバイルファースト：文字サイズ底上げ
   注意: このテーマは html { font-size: 62.5% } なので 1rem = 10px
   14px = 1.4rem、12px = 1.2rem、11px = 1.1rem
   ============================================ */
@media screen and (max-width: 749px) {

  /* ── 眉毛テキスト（Eyebrow）12px（旧11px→12px） ── */
  .atspect-hero__eyebrow,
  .atspect-mission__eyebrow,
  .atspect-genre__eyebrow,
  .atspect-ccta__eyebrow,
  .atspect-acta__eyebrow,
  .atspect-press__eyebrow,
  .atspect-archive__eyebrow,
  .atspect-adetail__eyebrow,
  .atspect-quote__eyebrow,
  .atspect-footer__sns-label { font-size: 1.2rem !important; letter-spacing: 0.32em !important; font-weight: 400 !important; }

  /* ── 本文テキスト 15px ── */
  .atspect-mission__body,
  .atspect-ccta__body,
  .atspect-acta__body,
  .atspect-press__item-title,
  .atspect-archive__card-bio { font-size: 1.5rem !important; line-height: 1.9 !important; }

  /* ── ジャンル・特徴ラベル 14px ── */
  .atspect-genre__label,
  .atspect-acta__feature-title { font-size: 1.4rem !important; }

  /* ── CTAボタン 13px ── */
  .atspect-hero__button,
  .atspect-mission__btn,
  .atspect-ccta__btn,
  .atspect-acta__btn--primary,
  .atspect-acta__btn--secondary { font-size: 1.3rem !important; letter-spacing: 0.12em !important; }

  /* ── リスト項目・説明文 13px ── */
  .atspect-ccta__list-item,
  .atspect-acta__feature-body { font-size: 1.3rem !important; line-height: 1.85 !important; }

  /* ── プレスメタ・日付・ソース 12px ── */
  .atspect-press__item-date,
  .atspect-press__item-source { font-size: 1.2rem !important; }

  /* ── ナビリンク（フッター） 14px ── */
  .atspect-footer__nav-link { font-size: 1.4rem !important; }

  /* ── フッター住所・メール 13px ── */
  .atspect-footer__address,
  .atspect-footer__contact-link { font-size: 1.3rem !important; }

  /* ── コピーライト 11px ── */
  .atspect-footer__copy { font-size: 1.1rem !important; }

  /* ── ARTS RESPECT バッジ 11px ── */
  .atspect-footer__corp-label,
  .atspect-footer__corp-name { font-size: 1.1rem !important; }

  /* ── スクロールラベル（ヒーロー）11px ── */
  .atspect-hero__scroll-label { font-size: 1.1rem !important; }


  /* ── プレスメタ余白 ── */
  .atspect-press__item-meta { margin-bottom: 10px !important; }

  /* ── 番号 01 02 03  16px ── */
  .atspect-acta__feature-num { font-size: 1.6rem !important; }

  /* ── ヒーローサブテキスト 15px ── */
  .atspect-hero__subheading { font-size: 1.5rem !important; }

  /* ── 名言ticker（モバイル） ── */
  .atspect-qb__label       { font-size: 1.1rem !important; letter-spacing: 0.26em !important; }
  .atspect-qb__text        { font-size: clamp(1.7rem, 4.5vw, 2.0rem) !important; }
  .atspect-qb__attribution { font-size: 1.2rem !important; letter-spacing: 0.18em !important; }

}

/* --- Global Reset for ATSPECT --- */
body {
  font-family: var(--font-body);
  font-weight: 400;           /* 300(Light)→400(Regular)：全体の可読性・存在感を向上 */
  letter-spacing: 0.02em;
  color: var(--color-text);
  background: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* --- Headings --- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4 {
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.2;
  font-feature-settings: "palt" 1;
}

/* --- Header / Navigation --- */
.header {
  background: rgba(249,248,246,0.97);
  border-bottom: 1px solid var(--color-border);
  padding: 20px 40px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: box-shadow 0.4s ease;
}

.header__heading-link,
.header__heading {
  font-family: var(--font-heading);
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--color-text);
}

.header__menu-item {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-text-light);
}

.header__menu-item:hover {
  color: var(--color-text);
}

/* ── header-wrapper background override (Dawn color-scheme reset → 和紙色) ── */
.header-wrapper,
.header-wrapper.gradient,
.color-scheme-1.header-wrapper,
.color-scheme-2.header-wrapper {
  background: #F9F8F6 !important;
  background-color: #F9F8F6 !important;
}
.header-wrapper--border-bottom {
  border-bottom: 1px solid rgba(44,44,44,0.10) !important;
  box-shadow: none !important;
}

/* --- Buttons --- */
.button,
.btn {
  font-family: var(--font-body);
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-radius: 0;
  padding: 14px 32px;
  border: 1px solid var(--color-text);
  background: transparent;
  color: var(--color-text);
  transition: all 0.3s ease;
}

.button:hover,
.btn:hover {
  background: var(--color-text);
  color: #ffffff;
}

.button--primary {
  background: var(--color-text);
  color: #ffffff;
}

.button--primary:hover {
  background: transparent;
  color: var(--color-text);
}

/* --- Product / Artwork Cards --- */
.card-wrapper {
  border: none;
}

.card {
  border-radius: 0;
  box-shadow: none;
  border: none;
}

.card__heading {
  font-family: var(--font-heading);
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.04em;
}

.price {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 300;
  letter-spacing: 0.08em;
  color: var(--color-text-light);
}

/* --- Section Spacing --- */
.section {
  padding-top: var(--spacing-section);
  padding-bottom: var(--spacing-section);
}

@media screen and (max-width: 749px) {
  .section {
    padding-top: var(--spacing-section-sm);
    padding-bottom: var(--spacing-section-sm);
  }
}

/* --- Hero / Banner --- */
.banner {
  min-height: 70vh;
  display: flex;
  align-items: center;
}

.banner__heading {
  font-family: var(--font-heading);
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  line-height: 1.1;
}

/* --- Footer --- */
.footer {
  background: #F9F8F6;
  border-top: 1px solid var(--color-border);
  font-family: var(--font-body);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: var(--color-text-light);
}

/* --- Announcement Bar --- */
.announcement-bar {
  background: var(--color-text);
  color: #ffffff;
  font-family: var(--font-body);
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 10px;
  text-align: center;
}

/* --- Links --- */
a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.25s ease, color 0.25s ease;
}

a:hover {
  opacity: 0.68;
}

/* --- Logo --- */
.atspect-logo-horizontal {
  display: block;
  height: auto;
  max-width: 240px;
}

.atspect-logo-vertical {
  display: none;
}

@media screen and (max-width: 749px) {
  .atspect-logo-horizontal {
    display: block;
    max-width: 160px;
  }
  .atspect-logo-vertical {
    display: none;
  }
}

/* --- Language / Locale Switcher (Shopify Localization) --- */
.atspect-locale-switcher {
  display: flex;
  align-items: center;
  margin-right: 14px;
}

.atspect-locale-inner {
  display: flex;
  align-items: center;
  gap: 0;
}

.atspect-locale-link {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #aaa;
  text-decoration: none;
  padding: 3px 6px;
  line-height: 1;
  transition: color 0.2s ease;
  border-bottom: 1px solid transparent;
}

.atspect-locale-link:hover {
  color: #555;
  text-decoration: none;
}

.atspect-locale-link--active {
  color: #1a1a1a;
  border-bottom-color: #1a1a1a;
}

.atspect-locale-link--pending {
  cursor: default;
  opacity: 0.45;
}

.atspect-locale-sep {
  font-size: 0.5rem;
  color: #ddd;
  line-height: 1;
  pointer-events: none;
  user-select: none;
}

/* Mobile drawer localization */
.menu-drawer__localization .localization-form {
  padding: 0;
}

.menu-drawer__localization .disclosure__button {
  font-family: var(--font-body);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: #555;
  background: none;
  border: none;
  border-bottom: 1px solid #eee;
  padding: 10px 0;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.menu-drawer__localization .disclosure__list {
  background: #faf9f7;
  border: 1px solid #eee;
  padding: 4px 0;
}

.menu-drawer__localization .disclosure__link {
  font-family: var(--font-body);
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  color: #555;
  padding: 8px 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}

.menu-drawer__localization .disclosure__link[aria-current='true'] {
  color: #1a1a1a;
  font-weight: 500;
}

/* --- Utility --- */
.visually-hidden-sm {
  display: none;
}

@media (min-width: 750px) {
  .header {
    padding: 24px 60px;
  }
}

/* --- Artist card hover overlay --- */
.atspect-artist-card__image-wrapper {
  position: relative;
}

.atspect-artist-card__image-wrapper::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(15, 15, 15, 0);
  transition: background 0.4s ease;
}

.atspect-artist-card:hover .atspect-artist-card__image-wrapper::after {
  background: rgba(15, 15, 15, 0.12);
}

.atspect-artist-card:hover {
  opacity: 1;
}

.atspect-artist-card__name {
  transition: letter-spacing 0.3s ease;
}

.atspect-artist-card:hover .atspect-artist-card__name {
  letter-spacing: 0.08em;
}

/* Hero ::after removed — new split-panel hero uses clean white left panel */

/* --- Scroll fade-in animation （静寂なる出現）--- */
/* 1.15s のゆっくりした浮かび上がり。translateY を大きく取って美術館らしい沈黙から始める */
.atspect-fade-init {
  opacity: 0;
  transform: translateY(36px);
  transition:
    opacity  1.15s cubic-bezier(0.16, 1, 0.3, 1),
    transform 1.15s cubic-bezier(0.16, 1, 0.3, 1);
}

.atspect-fade-init.atspect-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 見出し専用：さらに深い場所から浮かぶ */
.atspect-fade-init--heading {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity  1.25s cubic-bezier(0.16, 1, 0.3, 1),
    transform 1.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.atspect-fade-init--heading.atspect-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 横スライド（左から・右から） */
.atspect-fade-init--left {
  opacity: 0;
  transform: translateX(-28px);
  transition:
    opacity  1.15s cubic-bezier(0.16, 1, 0.3, 1),
    transform 1.15s cubic-bezier(0.16, 1, 0.3, 1);
}
.atspect-fade-init--left.atspect-visible {
  opacity: 1;
  transform: translateX(0);
}
.atspect-fade-init--right {
  opacity: 0;
  transform: translateX(28px);
  transition:
    opacity  1.15s cubic-bezier(0.16, 1, 0.3, 1),
    transform 1.15s cubic-bezier(0.16, 1, 0.3, 1);
}
.atspect-fade-init--right.atspect-visible {
  opacity: 1;
  transform: translateX(0);
}

/* prefers-reduced-motion 全無効化 */
@media (prefers-reduced-motion: reduce) {
  .atspect-fade-init,
  .atspect-fade-init--heading,
  .atspect-fade-init--left,
  .atspect-fade-init--right {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* ==============================================
   余白の美（Negative Space）— Museum-grade spacing
   ============================================== */

/* ── CSS変数の更新 ── */
:root {
  --spacing-section: 200px;     /* 旧120px → 200px：1.67倍 */
  --spacing-section-sm: 110px;  /* 旧72px  → 110px：1.53倍 */
}

/* ── 各セクションのパディング拡張 ── */
.atspect-mission   { padding-top: 200px !important; padding-bottom: 200px !important; }
.atspect-genre     { padding-top: 180px !important; padding-bottom: 180px !important; }
.atspect-featured  { padding-top: 180px !important; padding-bottom: 180px !important; }
.atspect-artists   { padding-top: 180px !important; padding-bottom: 180px !important; }
.atspect-ccta      { padding-top: 200px !important; padding-bottom: 200px !important; }
.atspect-acta      { padding-top: 200px !important; padding-bottom: 200px !important; }
.atspect-press     { padding-top: 180px !important; padding-bottom: 180px !important; }
.atspect-phil      { padding-top: 220px !important; padding-bottom: 220px !important; }
.atspect-ig        { padding-top: 160px !important; padding-bottom: 160px !important; }
.atspect-ticker    { padding-top: 0 !important; }

/* ── 見出し → コンテンツの呼吸スペース ── */
.atspect-genre__header          { margin-bottom: 72px !important; }
.atspect-artists__header        { margin-bottom: 80px !important; }
.atspect-press__header          { margin-bottom: 72px !important; }
.atspect-featured__label-row    { margin-bottom: 56px !important; }
.atspect-mission__eyebrow       { margin-bottom: 48px !important; }
.atspect-ccta__eyebrow          { margin-bottom: 32px !important; }
.atspect-acta__eyebrow          { margin-bottom: 32px !important; }
.atspect-phil__eyebrow          { margin-bottom: 64px !important; }
.atspect-phil__ornament         { margin-bottom: 16px !important; }

/* モバイルでは少し抑える */
@media screen and (max-width: 749px) {
  .atspect-mission,
  .atspect-genre,
  .atspect-featured,
  .atspect-artists,
  .atspect-ccta,
  .atspect-acta,
  .atspect-press    { padding-top: 110px !important; padding-bottom: 110px !important; }
  .atspect-phil     { padding-top: 120px !important; padding-bottom: 120px !important; }
  .atspect-genre__header,
  .atspect-artists__header,
  .atspect-press__header  { margin-bottom: 48px !important; }
  .atspect-phil__eyebrow  { margin-bottom: 40px !important; }
}

/* ==============================================
   没入感 Hover Scale Effect — 上品なゆっくりズーム
   ============================================== */

/* ── ジャンルグリッド ── */
.atspect-genre__item {
  overflow: hidden;
}
.atspect-genre__img {
  transition: transform 1.1s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: transform;
}
.atspect-genre__item:hover .atspect-genre__img {
  transform: scale(1.05) !important;
}

/* ── コレクション（ジャンル別作品一覧）カード ── */
.atspect-collection-card__img-wrap {
  overflow: hidden;
}
.atspect-collection-card__img {
  transition: transform 1.0s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.atspect-collection-card:hover .atspect-collection-card__img {
  transform: scale(1.04);
}

/* ── 作家アーカイブカード ── */
.atspect-archive__card-img-wrap,
.atspect-artist-card__img-wrap {
  overflow: hidden;
}
.atspect-archive__card-img,
.atspect-artist-card__img {
  transition: transform 1.0s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.atspect-archive__card:hover .atspect-archive__card-img,
.atspect-artist-card:hover .atspect-artist-card__img {
  transform: scale(1.04);
}

/* ── Featured Artist メイン画像 ── */
.atspect-featured__image-wrap {
  overflow: hidden;
}
.atspect-featured__image {
  transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: transform;
}
.atspect-featured__image-wrap:hover .atspect-featured__image {
  transform: scale(1.03) !important;
}

/* ── Cinematic セクション：スクロール固定はそのままでホバー演出なし ── */

/* hover 中は reduced-motion 無効 */
@media (prefers-reduced-motion: reduce) {
  .atspect-genre__img,
  .atspect-collection-card__img,
  .atspect-archive__card-img,
  .atspect-artist-card__img,
  .atspect-featured__image {
    transition: none !important;
  }
}

/* --- Header scroll shrink --- */
.atspect-header--scrolled {
  box-shadow: 0 2px 32px rgba(0,0,0,0.08);
  border-bottom-color: transparent;
}

/* --- Featured Collection title override --- */
.featured-collection .title-wrapper h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.6rem, 2.5vw, 2.4rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #1a1a1a;
}

/* --- Collection header (used by artists/about/contact) --- */
.collection__header {
  display: none;
}

/* Shopify collection page default title - hide it */
.collection .collection__title {
  display: none;
}

/* ============================================
   Product Page — 静かな美術館 スタイル
   ============================================ */

/* Product title */
.product__title {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.6rem, 3vw, 2.8rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.2 !important;
  color: #1a1a1a !important;
}

/* Vendor / artist name above title */
.product__text.caption-with-letter-spacing,
.product__vendor {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #999 !important;
}

/* Price */
.product__price .price--large,
.product__price .price__regular {
  font-family: var(--font-body) !important;
  font-size: 1rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  color: #1a1a1a !important;
}

/* Add to cart button */
.product-form__submit {
  font-family: var(--font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 16px 40px !important;
  background: #1a1a1a !important;
  color: #ffffff !important;
  border: 1px solid #1a1a1a !important;
  transition: all 0.3s ease !important;
  box-shadow: none !important;
}

.product-form__submit:hover:not([disabled]) {
  background: transparent !important;
  color: #1a1a1a !important;
}

/* Product description */
.product__description {
  font-family: var(--font-body) !important;
  font-size: 0.85rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.9 !important;
  color: #555 !important;
}

/* Variant pills */
.swatch__input:checked + .swatch__label,
.variant-pills__input:checked + .variant-pills__label {
  border-color: #1a1a1a !important;
  background: #1a1a1a !important;
  color: #fff !important;
}

.variant-pills__label {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.1em !important;
  border-radius: 0 !important;
}

/* Media / image area */
.product__media-wrapper {
  background: #faf9f7;
}

/* Related products heading */
.related-products .title-wrapper h2,
.related-products .collection__title {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.2rem, 2vw, 1.8rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

/* Share button minimal */
.share-button__button {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.12em !important;
  color: #999 !important;
}

/* Quantity selector clean */
.quantity__input {
  font-family: var(--font-body) !important;
  font-size: 0.85rem !important;
  border-radius: 0 !important;
}

.quantity__button {
  border-radius: 0 !important;
}

/* ============================================
   Mobile Drawer Menu — ATSPECT refined
   ============================================ */

.menu-drawer {
  border-radius: 0 !important;
}

.menu-drawer__menu-item {
  font-family: var(--font-body) !important;
  font-size: 0.8rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

/* ============================================
   Global link & focus refinements
   ============================================ */

/* Smoother focus ring（キーボード操作の可視化・A11y） */
*:focus-visible {
  outline: 2px solid #1a1a1a;
  outline-offset: 2px;
}
/* ダーク背景ではフォーカスリングを白に（非テキストコントラスト確保） */
.atspect-stats *:focus-visible,
.atspect-footer *:focus-visible,
.atspect-collector-cta *:focus-visible,
.color-dark *:focus-visible {
  outline-color: #ffffff;
}

/* Collection product grid — remove card borders/shadows */
.card-wrapper .card--product {
  box-shadow: none !important;
}

/* Breadcrumb style (for built-in Shopify breadcrumbs) */
.breadcrumbs__item {
  font-family: var(--font-body);
  font-size: 0.65rem;
  letter-spacing: 0.12em;
  color: #bbb;
}

.breadcrumbs__separator {
  color: #ddd;
}

/* ============================================
   Page / rich-text sections — clean up Dawn defaults
   ============================================ */

.shopify-section-page-width {
  padding-left: 0;
  padding-right: 0;
}

/* Announcement bar text link override */
.announcement-bar a {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ============================================
   Collection grid: artwork thumbnails
   ============================================ */

/* Ensure product card images feel like a gallery */
.card__inner .media {
  background: #faf9f7 !important;
}

.card .card__heading {
  font-family: var(--font-heading) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
}

/* Remove card border and rounded corners everywhere */
.card,
.card__inner {
  border-radius: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

/* Pagination */
.pagination__list {
  font-family: var(--font-body);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
}

/* ============================================
   Error / empty state pages
   ============================================ */

.empty-page-content {
  font-family: var(--font-body);
  font-size: 0.9rem;
  letter-spacing: 0.04em;
  color: #666;
}

/* ============================================
   Smooth scroll & reduced motion
   ============================================ */

html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
  .atspect-fade-init {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* ============================================
   Selection color
   ============================================ */

::selection {
  background: #2C2C2C;
  color: #F9F8F6;
}

/* ============================================
   Scrollbar — minimal
   ============================================ */

::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #e0e0e0; border-radius: 2px; }
::-webkit-scrollbar-thumb:hover { background: #bbb; }

/* ============================================
   Skip link — accessibility
   ============================================ */

.skip-to-content-link:focus {
  clip: auto;
  background: #1a1a1a;
  color: #fff;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: 0.75rem;
  letter-spacing: 0.1em;
}

/* ============================================
   Shopify default section padding reset
   ============================================ */

.shopify-section {
  --section-padding-top: 0;
  --section-padding-bottom: 0;
}

/* ============================================
   Page header for custom pages (about / contact)
   ============================================ */

.shopify-policy__title {
  font-family: var(--font-heading) !important;
  font-weight: 300 !important;
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  letter-spacing: 0.04em !important;
}

.shopify-policy__body {
  font-family: var(--font-body) !important;
  font-size: 0.85rem !important;
  font-weight: 300 !important;
  line-height: 2 !important;
  letter-spacing: 0.04em !important;
  color: #555 !important;
}

/* ============================================
   Notification / alert banners
   ============================================ */

.atspect-notice {
  background: #fafafa;
  border: 1px solid #e8e8e8;
  border-left: 3px solid #1a1a1a;
  padding: 16px 20px;
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: #444;
  margin-bottom: 24px;
}

.atspect-notice--success {
  border-left-color: #27ae60;
  background: #f0fdf4;
}

.atspect-notice--error {
  border-left-color: #c0392b;
  background: #fef2f2;
}

/* ============================================
   Print styles
   ============================================ */

@media print {
  .atspect-line-float,
  .header,
  .atspect-footer,
  .atspect-ig,
  .atspect-lcta { display: none !important; }

  body { font-size: 12pt; color: #000; }

  .atspect-hero { height: auto !important; min-height: unset !important; }
  .atspect-hero__media { display: none; }
  .atspect-hero__content { color: #000 !important; position: static !important; }
}

/* ============================================
   Transition: genre img override for JS parallax
   ============================================ */

.atspect-genre__img {
  will-change: transform;
}

/* ============================================
   日本語の不自然な折り返し抑制（「1文字落ち」防止）
   - word-break: keep-all     → 単語・熟語の途中で改行しない
   - overflow-wrap: break-word → どうしても入らない場合のみ単語境界で改行を許可
   - line-break: strict       → 厳密な禁則処理
   日本語のみに適用（他言語の自然な折り返しを壊さない）
   ============================================ */
:where(html[data-lang="ja"], html:not([data-lang])) :is(
  .atspect-hero__heading,
  .atspect-hero__button,
  .atspect-mission__heading,
  .atspect-mission__btn,
  .atspect-ccta__heading,
  .atspect-ccta__btn,
  .atspect-ccta__list-item,
  .atspect-acta__heading,
  .atspect-acta__btn--primary,
  .atspect-acta__btn--secondary,
  .atspect-press__heading,
  .atspect-artists__heading,
  .atspect-artists__description,
  .atspect-archive__heading,
  .atspect-genre__heading,
  .atspect-genre__label,
  .atspect-featured__name-ja,
  .atspect-footer__artist-cta-headline,
  .atspect-footer__artist-cta-eyebrow,
  .atspect-footer__nav-link,
  .atspect-qb__text,
  .atspect-fmedia__cta,
  .atspect-fmedia__source,
  .atspect-fmedia__heading,
  .atspect-pw__heading,
  .atspect-404__heading,
  .atspect-faq__heading,
  .atspect-faq__cat-heading,
  .atspect-faq__question
) {
  word-break: keep-all;
  overflow-wrap: break-word;
  line-break: strict;
}

/* ============================================
   Cart Page — Dawn override for ATSPECT style
   ============================================ */

/* Cart header */
.cart__title-heading {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.6rem, 3vw, 2.6rem) !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

/* Cart table header */
.cart-items thead th {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #bbb !important;
  border-bottom: 1px solid #e8e8e8 !important;
  padding-bottom: 12px !important;
}

/* Cart item title */
.cart-item__name {
  font-family: var(--font-heading) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

/* Cart item vendor */
.cart-item__details .product-option {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  color: #999 !important;
}

/* Cart item price */
.cart-item__price-wrapper .price {
  font-family: var(--font-body) !important;
  font-size: 0.85rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  color: #555 !important;
}

/* Cart quantity input */
.cart-item .quantity__input {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  border-radius: 0 !important;
  border-color: #e8e8e8 !important;
}

/* Cart remove button */
.cart-item__remove .button {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.1em !important;
  color: #bbb !important;
}

.cart-item__remove .button:hover {
  color: #1a1a1a !important;
}

/* Cart subtotal */
.cart-subtotal__title {
  font-family: var(--font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #666 !important;
}

.cart-subtotal__value {
  font-family: var(--font-body) !important;
  font-size: 1.1rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  color: #1a1a1a !important;
}

/* Checkout button */
.cart__cta .button--primary,
.cart__dynamic-checkout-buttons .shopify-payment-button__button {
  font-family: var(--font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  background: #1a1a1a !important;
  color: #ffffff !important;
  padding: 18px 40px !important;
  border: 1px solid #1a1a1a !important;
  transition: all 0.3s ease !important;
  box-shadow: none !important;
  width: 100% !important;
}

.cart__cta .button--primary:hover {
  background: transparent !important;
  color: #1a1a1a !important;
}

/* Cart note textarea */
.cart__note .field__input {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  font-weight: 300 !important;
  border-radius: 0 !important;
  border-color: #ddd !important;
  letter-spacing: 0.04em !important;
}

/* Tax/shipping note */
.cart__tax-note {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  color: #bbb !important;
  text-align: center !important;
}

/* Empty cart */
.cart__empty-text {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.2rem, 2.5vw, 2rem) !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  color: #999 !important;
}

/* ============================================
   Collection banner (Dawn default) — hide/override
   ============================================ */

/* Hide default collection title when using our custom template */
.main-collection-banner__title {
  font-family: var(--font-heading) !important;
  font-weight: 300 !important;
  font-size: clamp(1.8rem, 3.5vw, 3rem) !important;
  letter-spacing: 0.04em !important;
}

/* ============================================
   Blog list — Dawn style harmonization
   ============================================ */

.blog .article-card__title {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.1rem, 1.8vw, 1.5rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

.blog .article-card__excerpt {
  font-family: var(--font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 300 !important;
  line-height: 1.8 !important;
  letter-spacing: 0.03em !important;
  color: #666 !important;
}

.blog .article-card__date {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.12em !important;
  color: #bbb !important;
}

/* ============================================
   Article page — Dawn style harmonization
   ============================================ */

.article__title {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.8rem, 3.5vw, 3.2rem) !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.2 !important;
  color: #1a1a1a !important;
}

.article__date {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.12em !important;
  color: #bbb !important;
}

.article__content,
.article .rte {
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 300 !important;
  line-height: 2 !important;
  letter-spacing: 0.04em !important;
  color: #444 !important;
}

.article .rte h2,
.article .rte h3 {
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
  color: #1a1a1a !important;
}

/* ============================================
   Predictive search / quick search dropdown
   ============================================ */

.predictive-search {
  border-radius: 0 !important;
  border-color: #e8e8e8 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;
}

.predictive-search__heading {
  font-family: var(--font-body) !important;
  font-size: 0.55rem !important;
  letter-spacing: 0.25em !important;
  text-transform: uppercase !important;
  color: #bbb !important;
}

.predictive-search-option__heading {
  font-family: var(--font-heading) !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

.predictive-search-option__vendor {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #bbb !important;
}

.predictive-search-option__price {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  font-weight: 300 !important;
  color: #666 !important;
}

/* Search form in header */
.search-modal .field__input {
  font-family: var(--font-body) !important;
  font-size: 1rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  border-radius: 0 !important;
  border-bottom-color: #1a1a1a !important;
}

/* ============================================
   Pagination (Shopify default)
   ============================================ */

.pagination__list li a,
.pagination__list li span {
  font-family: var(--font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.1em !important;
  border-radius: 0 !important;
}

.pagination__list .pagination__item--current {
  background: #1a1a1a !important;
  color: #ffffff !important;
  border-color: #1a1a1a !important;
}

/* ============================================
   Cart Drawer — Dawn slide-out cart override
   ============================================ */

.cart-drawer {
  border-radius: 0 !important;
  box-shadow: -4px 0 40px rgba(0,0,0,0.08) !important;
}

.cart-drawer__header {
  border-bottom: 1px solid #e8e8e8 !important;
  padding: 20px 24px !important;
}

.cart-drawer__heading {
  font-family: var(--font-heading) !important;
  font-size: 1.1rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  color: #1a1a1a !important;
}

.cart-drawer__close {
  color: #999 !important;
  transition: color 0.2s ease !important;
}

.cart-drawer__close:hover {
  color: #1a1a1a !important;
  opacity: 1 !important;
}

.cart-drawer-items .cart-item__name {
  font-family: var(--font-heading) !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #1a1a1a !important;
}

.cart-drawer .cart-item__price-wrapper .price {
  font-family: var(--font-body) !important;
  font-size: 0.8rem !important;
  font-weight: 300 !important;
  color: #666 !important;
}

.cart-drawer-items .cart-item__vendor {
  font-family: var(--font-body) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #bbb !important;
}

.cart-drawer .quantity__input {
  font-family: var(--font-body) !important;
  border-radius: 0 !important;
}

.cart-drawer .quantity__button {
  border-radius: 0 !important;
}

.cart-drawer__footer {
  border-top: 1px solid #e8e8e8 !important;
  padding: 20px 24px !important;
}

.cart-drawer__footer .totals__subtotal-value {
  font-family: var(--font-body) !important;
  font-size: 1rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  color: #1a1a1a !important;
}

.cart-drawer__footer .totals__subtotal {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #999 !important;
}

.cart-drawer__checkout.button {
  font-family: var(--font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  background: #1a1a1a !important;
  color: #ffffff !important;
  padding: 16px 32px !important;
  border: 1px solid #1a1a1a !important;
  transition: all 0.3s ease !important;
  box-shadow: none !important;
  width: 100% !important;
}

.cart-drawer__checkout.button:hover {
  background: transparent !important;
  color: #1a1a1a !important;
}

/* ============================================
   Notification toast / cart popup
   ============================================ */

.cart-notification {
  border-radius: 0 !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.1) !important;
}

.cart-notification-product__name {
  font-family: var(--font-heading) !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
}

.cart-notification__view-cart {
  font-family: var(--font-body) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.15em !important;
  border-radius: 0 !important;
}

/* ============================================
   Age verification / popups overlay
   ============================================ */

.modal__content {
  border-radius: 0 !important;
}

/* ============================================
   Cookie / consent banner (if using Dawn native)
   ============================================ */

.cookie-consent {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
  border-radius: 0 !important;
}

/* ============================================
   Collapsible / accordion (product description, FAQ)
   ============================================ */

.disclosure__button {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  color: #555 !important;
  border-radius: 0 !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
}

.disclosure__summary {
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  color: #555 !important;
}

.disclosure__panel {
  font-family: var(--font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  letter-spacing: 0.04em !important;
  color: #666 !important;
}

/* ============================================
   Print styles — updated for new hero layout
   ============================================ */

@media print {
  .atspect-hero {
    min-height: auto !important;
    height: auto !important;
    display: block !important;
  }
  .atspect-hero__image-panel { display: none !important; }
  .atspect-hero__text-panel { padding: 24px 0 !important; }
  .atspect-hero__sep { display: none !important; }
}

/* ============================================
   Shared section eyebrow utility
   ============================================ */

.atspect-eyebrow {
  font-family: var(--font-body);
  font-size: 0.58rem;
  font-weight: 400;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #bbb;
  margin: 0;
}

/* ============================================
   Section separator line (horizontal rule)
   ============================================ */

.atspect-sep {
  width: 40px;
  height: 1px;
  background: #d8d8d8;
  margin: 0 auto 48px;
  border: none;
}

.atspect-sep--left {
  margin-left: 0;
}

/* ============================================
   Image hover transitions — gallery feel
   ============================================ */

.atspect-collection-card__image,
.atspect-artist-card__image,
.atspect-genre__img {
  transition: transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.atspect-collection-card:hover .atspect-collection-card__image,
.atspect-artist-card:hover .atspect-artist-card__image {
  transform: scale(1.03);
}

/* ============================================
   Back-to-top button refinement
   ============================================ */

#atspect-back-to-top {
  border-radius: 0 !important;
  transition: opacity 0.35s ease, transform 0.35s ease !important;
}

#atspect-back-to-top:hover {
  transform: translateY(-3px);
  opacity: 0.8 !important;
}

/* ============================================
   Mobile: page-width padding refinement
   ============================================ */

@media screen and (max-width: 749px) {
  .page-width {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ============================================
   Artist name / artwork title: Japanese optical sizing
   ============================================ */

.atspect-featured__name-ja,
.atspect-artist-card__name,
.atspect-artist__name-ja,
.atspect-collection-card__title,
.atspect-artwork__title,
.atspect-exh__title,
.atspect-mission__quote,
.atspect-hero__heading {
  font-feature-settings: "palt" 1;
}

/* ============================================
   Section row labels (eyebrow + link side by side)
   ============================================ */

.atspect-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 48px;
  padding-bottom: 20px;
  border-bottom: 1px solid #f0f0f0;
}

.atspect-section-header--flush {
  border-bottom: none;
  padding-bottom: 0;
}

.atspect-section-viewall {
  font-family: var(--font-body);
  font-size: 0.62rem;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #888;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  transition: color 0.2s ease;
}

.atspect-section-viewall:hover {
  color: #111;
  opacity: 1;
}

/* ============================================
   Refined hover for menu items
   ============================================ */

.header__menu-item {
  position: relative;
  transition: color 0.25s ease;
}

.header__menu-item::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background: currentColor;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.header__menu-item:hover::after,
.header__menu-item--active::after {
  width: 100%;
}

/* ============================================
   Artist card subtle line below genre
   ============================================ */

.atspect-artist-card__genre {
  position: relative;
  display: inline-block;
}

/* ============================================
   Global img lazy-load shimmer
   ============================================ */

img[loading="lazy"] {
  background: #f5f3f0;
}

/* ============================================
   Focus outline refined
   ============================================ */

*:focus-visible {
  outline: 2px solid #1a1a1a;
  outline-offset: 2px;
}

/* ============================================
   Horizontal rule inside sections
   ============================================ */

.atspect-rule {
  border: none;
  border-top: 1px solid #ebebeb;
  margin: 0;
}

/* Artist detail name rail pattern 2' */
.aad-rail__cat {
  font-size: .95rem;
  color: #7d766c;
  letter-spacing: .18em;
  margin: 0 0 12px;
}

.aad-rail__name {
  font-size: 2.5rem;
}

.aad-rail__en {
  font-size: 1.05rem;
  font-style: italic;
  color: #8c857b;
  margin: 4px 0 0;
}

.aad-rail__genre {
  font-size: 1.08rem;
  color: #5f5a53;
  margin: 20px 0 0;
}

@media (max-width: 880px) {
  .aad-rail__name {
    font-size: 2rem;
  }
}


/* ============================================================
   ATSPECT タイポグラフィ統一基準（px トークン＝1rem=10px の影響を受けない）
   全ページの本文/ラベル/見出しを一括是正・再発防止。section <style> より後勝ち(!important)。
   ============================================================ */
:root{
  --fs-body:16px; --fs-long:17px; --fs-aux:14px; --fs-aux-sm:13px;
  --fs-label:12px; --fs-label-static:11px;
  --fs-h1:clamp(28px,5vw,40px); --fs-h2:clamp(22px,3vw,28px); --fs-h3:clamp(18px,2vw,20px);
  --lh-ja:1.8; --lh-en:1.7;
  --c-body:#1a1a1a; --c-aux:#595959; --c-label:#6b6b6b;
}
/* CJK 出し分け：中国語/韓国語は Noto Sans/Serif の各字形へ */
html[data-lang="zh-cn"]{ --font-body:'Jost','Noto Sans SC','Hiragino Sans GB',sans-serif; --font-heading:'Cormorant Garamond','Noto Serif SC',serif; --font-body-family:'Jost','Noto Sans SC',sans-serif; --font-heading-family:'Cormorant Garamond','Noto Serif SC',serif; }
html[data-lang="zh-tw"]{ --font-body:'Jost','Noto Sans TC','Hiragino Sans CNS',sans-serif; --font-heading:'Cormorant Garamond','Noto Serif TC',serif; --font-body-family:'Jost','Noto Sans TC',sans-serif; --font-heading-family:'Cormorant Garamond','Noto Serif TC',serif; }
html[data-lang="ko"]{ --font-body:'Jost','Noto Sans KR','Apple SD Gothic Neo',sans-serif; --font-heading:'Cormorant Garamond','Noto Serif KR',serif; --font-body-family:'Jost','Noto Sans KR',sans-serif; --font-heading-family:'Cormorant Garamond','Noto Serif KR',serif; }

/* ── ① 本文ベース：白地で十分な大きさ・濃さ（再発防止の基準） ── */
body, .rte, .rte p, .rte li{ font-size: var(--fs-body); color: var(--c-body); }
.rte, .rte p, .rte li, .atspect-about__body .about-p,
[class*="__description-body"], [class*="__lead-text"], [class*="__bio"]{
  font-size: var(--fs-long) !important; line-height: var(--lh-ja) !important; color: var(--c-body) !important; font-weight: 400 !important;
}

/* ── ⑤ ラベル/眉/件数 等の最低サイズ・最低コントラスト（極小5〜8pxを解消） ── */
[class*="__eyebrow"], [class*="__filter-label"], [class*="__sort-label"],
[class*="__count"], [class*="__meta"], [class*="__date"], [class*="__source"],
[class*="__type-tag"], [class*="__tags-label"]{
  font-size: var(--fs-label) !important; color: var(--c-label) !important;
}

/* ── ② 作品一覧(collection)：検索/絞り込み/件数/カード ── */
.atspect-collection__count, .atspect-collection__count span{ font-size: var(--fs-aux) !important; color: var(--c-aux) !important; }
.atspect-collection__sort-label, .atspect-collection__filter-label{ font-size: var(--fs-label) !important; color: var(--c-label) !important; }
.atspect-collection__sort-select, .atspect-collection__genre-select, .atspect-collection__sort-select option{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }
.atspect-collection__searchbar-input{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }
.atspect-collection__searchbar-input::placeholder{ color: var(--c-aux) !important; opacity:1; }
.atspect-col-filter-btn{ font-size: var(--fs-aux-sm) !important; color: var(--c-body) !important; }
.atspect-col-filter-hint{ font-size: var(--fs-label) !important; color: var(--c-aux) !important; }
.atspect-collection-card__title{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }
.atspect-collection-card__vendor{ font-size: var(--fs-aux-sm) !important; color: var(--c-aux) !important; }
.atspect-collection-card__price{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }
.atspect-collection-card__genre{ font-size: var(--fs-label) !important; color: var(--c-label) !important; }
.atspect-collection__no-results-text{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }
.atspect-collection__no-results-reset, .atspect-collection__filter-reset{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }
.atspect-collection__page-btn, .atspect-collection__page-num{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }
.atspect-collection__empty-text{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }

/* ── 検索(search)ページ：カード/メタ/結果なし ── */
.atspect-search-card__title{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }
.atspect-search-card__vendor{ font-size: var(--fs-aux-sm) !important; color: var(--c-aux) !important; }
.atspect-search-card__price{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }
.atspect-search-card__excerpt{ font-size: var(--fs-aux) !important; color: var(--c-aux) !important; }
.atspect-search__empty-text{ font-size: var(--fs-body) !important; color: var(--c-body) !important; }
.atspect-search__tag, .atspect-search__all-link{ font-size: var(--fs-aux) !important; color: var(--c-body) !important; }

/* ── About 本文（10px→17px・濃く） ── */
.atspect-about__body .about-p, .atspect-about__body .about-p--closing{ font-size: var(--fs-long) !important; line-height: var(--lh-ja) !important; color: var(--c-body) !important; }

/* ── 作品詳細/作家詳細：説明本文・メタ ── */
.atspect-artwork__description-body, .atspect-artwork__description-body p, .aw-d{ font-size: var(--fs-body) !important; line-height: var(--lh-ja) !important; color: var(--c-body) !important; }
.atspect-artwork__spec dt, .atspect-artwork__spec dd{ font-size: var(--fs-aux) !important; }
.aad-body, .aad-msg{ font-size: var(--fs-long) !important; line-height: var(--lh-ja) !important; color: var(--c-body) !important; }

/* ── ⑥ 見出しレベル統一：ページ見出し(H1)を役割で統一 ── */
.atspect-page-header__heading, .atspect-about__heading{ font-size: var(--fs-h1) !important; color: var(--c-body) !important; }

/* ── ④ 低コントラスト是正：本文/重要ラベルに極薄グレーを使わない（罫線のみ可） ── */
.atspect-collection__sort-arrow, .atspect-collection-card__genre{ /* 罫・補助は据え置き */ }

/* ── モバイル：本文比率の底上げ（極小化を防ぐ） ── */
@media screen and (max-width: 749px){
  .rte, .rte p, .atspect-about__body .about-p{ font-size: 16px !important; }
  .atspect-collection-card__title, .atspect-search-card__title{ font-size: 15px !important; }
}

/* ── ③-2 ポリシー/情報ページ（特商法・プライバシー・お問い合わせ）：統一基準から漏れていたため是正（トークン参照・再発防止） ── */
/* 本文サイズ/行間を一括底上げ（色はリンク等を壊さないよう本文クラスに個別指定） */
.atspect-tokushoho dt, .atspect-tokushoho dd, .atspect-tokushoho li, .atspect-tokushoho > p, .atspect-tokushoho__body,
.atspect-privacy p, .atspect-privacy li,
.atspect-contact p, .atspect-contact li, .atspect-contact__body{
  font-size: var(--fs-body) !important; line-height: var(--lh-ja) !important;
}
.atspect-tokushoho__def, .atspect-tokushoho__term, .atspect-tokushoho__body,
.atspect-privacy__intro, .atspect-privacy__section-body, .atspect-privacy__section-body p, .atspect-privacy__list li,
.atspect-contact__body{ color: var(--c-body) !important; }
.atspect-tokushoho__note, .atspect-tokushoho__en, .atspect-tokushoho__heading-en,
.atspect-privacy__heading-en, .atspect-privacy__date,
.atspect-contact__side-note, .atspect-contact__required{
  font-size: var(--fs-aux-sm) !important; color: var(--c-aux) !important;
}
.atspect-tokushoho__label, .atspect-tokushoho__eyebrow,
.atspect-privacy__eyebrow, .atspect-contact__label, .atspect-contact__side-label{
  font-size: var(--fs-label) !important; color: var(--c-label) !important;
}
.atspect-tokushoho__heading, .atspect-privacy__heading{ font-size: var(--fs-h1) !important; color: var(--c-body) !important; }
.atspect-privacy__section-title{ font-size: var(--fs-h2) !important; color: var(--c-body) !important; }
@media screen and (max-width: 749px){
  .atspect-tokushoho dt, .atspect-tokushoho dd, .atspect-privacy p, .atspect-privacy li, .atspect-contact p{ font-size: 16px !important; }
}

/* ============================================================
   作品画像のホバー：消えない・ズームしない・静かに（デザインシステム準拠）
   原因＝collectionカードがホバーで主画像 opacity:0（単数画像で消失）。
   方針＝画像は常に表示・過剰ズーム禁止・反応は「ごく僅かな濃度＋タイトル下線」のみ。
   ============================================================ */
/* 画像は常に見える（消失バグ無効化）・トランジションは濃度のみ */
.atspect-collection-card__img, .atspect-fw__img, .atspect-search-card__img,
.atspect-artist__work-img, .aad-w__frame img{
  opacity: 1 !important; transition: filter .35s ease !important;
}
/* ホバー：消えない・ズームしない・ごく僅かに濃度（上品な反応） */
.atspect-collection-card:hover .atspect-collection-card__img,
.atspect-fw__card:hover .atspect-fw__img,
.atspect-search-card:hover .atspect-search-card__img,
.atspect-artist__work-card:hover .atspect-artist__work-img,
.aad-w:hover .aad-w__frame img{
  opacity: 1 !important; transform: none !important; filter: brightness(1.03) !important; /* V3 灯りのホバー：触れると照明がわずかに上がる（旧0.96=暗転→1.03=点灯） */
}
/* 2枚目画像へのホバー差し替えを無効化（消失の元凶） */
.atspect-collection-card__img--alt{ opacity: 0 !important; }
.atspect-collection-card:hover .atspect-collection-card__img--alt{ opacity: 0 !important; }
/* 暗幕オーバーレイ・「作品を見る」ラベルは静かに（出さない/極薄） */
.atspect-artist__work-card:hover .atspect-artist__work-overlay{ background: rgba(0,0,0,0.05) !important; }
.atspect-artist__work-overlay span{ display: none !important; }
/* タイトルに細い下線（＝上品な hover 反応・線/下線） */
.atspect-collection-card:hover .atspect-collection-card__title,
.atspect-fw__card:hover .atspect-fw__title,
.atspect-search-card:hover .atspect-search-card__title{
  text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; text-decoration-color: rgba(38,32,25,0.38);
}

/* ── ジャンル線画アイコン（確定版）共通 ── */
.atspect-genre-ic{ display:inline-block; vertical-align:middle; color: var(--c-body); }
.atspect-collection-card__genre-wrap{ display:inline-flex; align-items:center; gap:5px; }
.atspect-collection-card__genre-wrap .atspect-genre-ic{ color: var(--c-label); flex:none; }
.aad-rail__cat-wrap{ display:flex; align-items:center; gap:8px; margin:0 0 12px; }
.aad-rail__cat-wrap .aad-rail__cat{ margin:0; }
.aad-rail__cat-wrap .atspect-genre-ic{ color:#7d766c; flex:none; }

/* ※ ジャンルグリッドのカード/アイコン/署名色のデザインは sections/atspect-genre.liquid の <style> に集約
   （華やか＝署名色メダリオン／静か＝墨アイコン+明朝。card_styleで切替）。ここでの旧 :has 上書きは撤去。 */

/* ── 上品な「未設定」プレースホルダ（フリー素材を貼らない・胡粉地＋線画） ── */
.atspect-ph{ width:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
  background:#faf6ee; box-shadow: inset 0 0 0 1px #e6ddcd; color:#bcb4a4; }
.atspect-ph--video{ aspect-ratio:16/9; } .atspect-ph--image{ aspect-ratio:4/3; }
.atspect-ph--instagram{ aspect-ratio:1/1; } .atspect-ph--portrait{ aspect-ratio:3/4; }
.atspect-ph__ic{ width:54px; height:54px; }
.atspect-ph__label{ font-family:var(--font-heading); font-size:13px; letter-spacing:.18em; text-transform:uppercase; color:#a89f90; }

/* ── Instagram 未設定プレースホルダ（作品画像をIG投稿に見せかけない） ── */
.atspect-ig__ph{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; min-height:220px;
  background:#faf6ee; box-shadow: inset 0 0 0 1px #e6ddcd; color:#8a8275; text-decoration:none; transition: background .3s ease; }
.atspect-ig__ph svg{ width:46px; height:46px; }
.atspect-ig__ph-handle{ font-family:var(--font-heading); font-size:15px; letter-spacing:.12em; color:#6b6258; }
.atspect-ig__ph:hover{ background:#f4ede1; }

/* ── 作家カード（作家一覧）肖像未設定：作品画像を肖像に見せかけない・墨地＋ジャンル線画 ── */
.atspect-artist-card__scene-ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:#37322a; color:rgba(247,244,238,0.42); }
.atspect-artist-card__scene-ph .atspect-genre-ic{ width:54px; height:54px; }
/* ── ピックアップ作家 画像未設定：胡粉地＋ジャンル線画 ── */
.atspect-featured__image-ph{ display:flex; align-items:center; justify-content:center; min-height:340px; background:#f3ece0; box-shadow: inset 0 0 0 1px #e6ddcd; color:#a89c87; }
.atspect-featured__image-ph .atspect-genre-ic{ width:72px; height:72px; }

/* ── 作家プロフィール ヒーロー肖像未設定：墨地＋ジャンル線画 ── */
.atspect-artist__hero-ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:#2a2620; color:rgba(247,244,238,0.34); }
.atspect-artist__hero-ph .atspect-genre-ic{ width:84px; height:84px; }

/* ── Step4：差し色＝明るいセクションの眉を群青(署名色)に ── */
.atspect-mission__eyebrow, .atspect-genre__eyebrow, .atspect-fmedia__eyebrow,
.atspect-press__eyebrow, .atspect-archive__eyebrow, .atspect-about__eyebrow,
.atspect-acta__eyebrow, .atspect-collection__eyebrow, .atspect-search__eyebrow,
.atspect-ccta__eyebrow, .atspect-collection__hero-eyebrow{ color:#33548a !important; }
/* ヒーローの眉はセクション側のモード別CSSに委ねる（design=群青／media=白）。!important上書きしない */

/* ── ページ地色を和紙色で統一（セクション間の隙間/未指定領域が白く浮くのを防ぐ）── */
body { background-color: #f4efe6 !important; }

/* ============================================================
   リリース前 文字可読性 底上げ（サイト全体・PC/モバイル）  2026-06-30
   前提：このテーマは html{font-size:62.5%} ＝ 1rem=10px。
   各 section <style> と既存集中ブロックに残る極小文字(5〜10px)を、末尾で一括上書き(!important・後勝ち)。
   基準：本文/長文≥15px・標準テキスト/リンク/ボタン13〜14px・補助/メタ/ラベル12px・eyebrow11〜12px下限・
        フォーム入力16px(iOSズーム回避)。薄すぎる読み物グレーは濃色化。見出し/装飾の大小・確定コピー内容は不変。
   ※既存ブロックがクラス名不一致(aad-*/aad-arch-*/featured__genre-tag等)で空振りしていた箇所もここで救済。
   ============================================================ */

/* ── トップ：mission / hero（PCで本文が8px台のまま残る）── */
.atspect-mission__body{ font-size:1.5rem !important; line-height:1.9 !important; color:#4a4a4a !important; }
.atspect-mission__btn{ font-size:1.2rem !important; }
.atspect-hero__subheading{ font-size:1.4rem !important; }

/* ── 名言ticker（qb）原文・注記（未カバー）── */
.atspect-qb__original{ font-size:1.3rem !important; color:rgba(44,44,44,.62) !important; }
.atspect-qb__original-note{ font-size:1.1rem !important; color:rgba(44,44,44,.5) !important; }

/* ── スタッツ（ダーク地・白系）── */
.atspect-stats__label{ font-size:1.2rem !important; color:rgba(255,255,255,.7) !important; }
.atspect-stats__label-en{ font-size:1.1rem !important; color:rgba(255,255,255,.34) !important; }

/* ── about（8言語正文・eyebrow）── */
.atspect-about__eyebrow{ font-size:1.2rem !important; }
.atspect-about__body .about-p{ font-size:1.6rem !important; line-height:1.95 !important; }

/* ── 汎用ページヘッダー（未カバー）── */
.atspect-page-header__eyebrow{ font-size:1.2rem !important; }
.atspect-page-header__description{ font-size:1.5rem !important; color:#595959 !important; }

/* ── シネマティック（ダーク地）── */
.atspect-cine__eyebrow{ font-size:1.2rem !important; }
.atspect-cine__attribution{ font-size:1.2rem !important; color:rgba(255,255,255,.5) !important; }

/* ── フッター（名前不一致で未カバーだった小ラベル）── */
.atspect-footer__artist-cta-eyebrow{ font-size:1.2rem !important; color:rgba(44,44,44,.6) !important; }
.atspect-footer__nl-heading{ font-size:1.2rem !important; color:rgba(44,44,44,.55) !important; }
.atspect-footer__nl-desc-en{ font-size:1.2rem !important; }
.atspect-footer__corp-label{ font-size:1.1rem !important; }
.atspect-footer__address, .atspect-footer__contact-link{ color:#595959 !important; }

/* ── ピックアップ作家（__genre-tag/__profile-btn/__all-link は名前不一致で未カバー＝5〜6px放置）── */
.atspect-featured__genre-tag{ font-size:1.2rem !important; color:#595959 !important; }
.atspect-featured__all-link{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-featured__profile-btn{ font-size:1.3rem !important; }
.atspect-featured__image-caption span{ font-size:1.2rem !important; color:#595959 !important; }

/* ============================================================
   作品一覧（collection）：購入の中核。PC拡大が無く全面6〜8px
   ============================================================ */
.atspect-collection__hero-eyebrow{ font-size:1.2rem !important; }
.atspect-collection__hero-desc{ font-size:1.4rem !important; }
.atspect-collection__eyebrow{ font-size:1.2rem !important; }
.atspect-collection__desc{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-collection__count{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-collection__sort-label{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-collection__sort-select, .atspect-collection__genre-select{ font-size:1.3rem !important; color:#4a4a4a !important; }
.atspect-collection__searchbar-input{ font-size:16px !important; }
.atspect-collection__searchbar-input::placeholder{ color:#8c8c8c !important; }
.atspect-collection__filter-label{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-col-filter-btn{ font-size:1.2rem !important; color:#595959 !important; }
.atspect-col-filter-hint{ font-size:1.1rem !important; }
.atspect-collection__filter-reset{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-collection-card__vendor{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-collection-card__title{ font-size:1.5rem !important; }
.atspect-collection-card__price{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-collection-card__genre{ font-size:1.2rem !important; }
.atspect-collection-card__sold-badge{ font-size:1.1rem !important; }

/* ============================================================
   検索（search）：カード・タグ・ページャ・入力欄
   ============================================================ */
.atspect-search__meta{ font-size:1.2rem !important; color:#595959 !important; }
.atspect-search__input{ font-size:16px !important; }
.atspect-search__input::placeholder{ color:#8c8c8c !important; }
.atspect-search-card__vendor{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-search-card__title{ font-size:1.5rem !important; }
.atspect-search-card__price{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-search-card__sold{ font-size:1.1rem !important; color:#6b6b6b !important; }
.atspect-search-card__type-tag{ font-size:1.1rem !important; color:#6b6b6b !important; }
.atspect-search-card__excerpt{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-search-card__date{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-search__page-btn{ font-size:1.2rem !important; }
.atspect-search__page-info{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-search__empty-text{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-search__tags-label{ font-size:1.1rem !important; color:#6b6b6b !important; }
.atspect-search__tag{ font-size:1.3rem !important; }
.atspect-search__all-link{ font-size:1.3rem !important; }

/* ============================================================
   作品詳細（artwork-detail）：tombstone・補足・ボタン・読み物（購入の中核）
   価格(1.6rem)・群青「取得する」の存在感は維持。文字サイズ/コントラストのみ底上げ。
   ============================================================ */
.atspect-artwork__artist-link{ font-size:1.2rem !important; }
.atspect-artwork__meta dt{ font-size:1.3rem !important; color:#4a4a4a !important; }
.atspect-artwork__meta dd{ font-size:1.5rem !important; }
.atspect-artwork__inch{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-artwork__price-note{ font-size:1.2rem !important; }
.atspect-artwork__price-fx{ font-size:1.3rem !important; }
.atspect-artwork__order-note{ font-size:1.3rem !important; }
.atspect-artwork__trust-item{ font-size:1.2rem !important; }
.atspect-artwork__option-name{ font-size:1.2rem !important; }
.atspect-artwork__pill span{ font-size:1.2rem !important; }
.atspect-artwork__add-btn{ font-size:1.3rem !important; }      /* 主導線（群青塗り）＝副(問い合わせ)より一段大きく階層維持 */
.atspect-artwork__inquire-btn{ font-size:1.2rem !important; }
.atspect-artwork__block-label{ font-size:1.2rem !important; }
.atspect-artwork__description-body, .atspect-artwork__provenance-body{ font-size:1.55rem !important; }
.atspect-artwork__about-link, .atspect-artwork__back-link{ font-size:1.3rem !important; }
.atspect-artwork__others-title{ font-size:1.3rem !important; }
.aws-share__h{ font-size:1.2rem !important; }
.aws-share__b{ font-size:1.3rem !important; }
.aws-qr__cap{ font-size:1.3rem !important; }
.aws-qr__url{ font-size:1.2rem !important; }

/* ============================================================
   作家詳細（artist-detail / aad-*）：597名全員のページ。集中ブロック未カバーで6〜10px
   ============================================================ */
.aad-rail__cat{ font-size:1.2rem !important; }
.aad-rail__en{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-rail__genre{ font-size:1.3rem !important; }
.aad-rail__facts{ font-size:1.4rem !important; }
.aad-rail__facts .aad-lab{ font-size:1.2rem !important; color:#8c867d !important; }
.aad-rail__stmt-orig{ font-size:1.2rem !important; color:#595959 !important; }
.aad-lead__cap-m, .aad-lead__cap-sub{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-books{ font-size:1.5rem !important; }
.aad-book-rom, .aad-book-en{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-prof dt{ font-size:1.2rem !important; color:#8c867d !important; }
.aad-prof dd{ font-size:1.5rem !important; }
.aad-works-intro{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-w__t{ font-size:1.3rem !important; }
.aad-w__sub, .aad-w__m{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-w__hint{ font-size:1.3rem !important; }
.aad-wlb__buy{ font-size:1.4rem !important; }
.aad-totop{ font-size:1.3rem !important; }
.aad-copyr{ font-size:1.2rem !important; color:#8c867d !important; }
.aad-share__h{ font-size:1.2rem !important; color:#8c867d !important; }
.aad-share__b{ font-size:1.3rem !important; }
.aad-qr__cap{ font-size:1.3rem !important; color:#6f6a63 !important; }
.aad-qr__url{ font-size:1.2rem !important; color:#8c867d !important; }
.aad-qr__act{ font-size:1.3rem !important; }

/* ============================================================
   作家一覧（artist-archive / aad-arch-*）：クラス名不一致で集中ブロックが空振り＝5.5〜9px放置
   ============================================================ */
.aad-arch__eyebrow{ font-size:1.2rem !important; color:#595959 !important; }
.aad-arch__lead{ font-size:1.5rem !important; color:#595959 !important; }
.aad-arch__glabel{ font-size:1.1rem !important; color:#595959 !important; }
.aad-arch__idx-lab{ font-size:1.1rem !important; color:#595959 !important; }
.aad-arch__gbtn{ font-size:1.3rem !important; color:#4a4a4a !important; }
.aad-arch__idx button{ font-size:1.2rem !important; color:#4a4a4a !important; }
.aad-arch__hint{ font-size:1.2rem !important; color:#777 !important; }
.aad-arch__total{ font-size:1.2rem !important; color:#595959 !important; }
.aad-arch__count{ font-size:1.2rem !important; color:#595959 !important; }
.aad-arch__pager a, .aad-arch__pager span, .aad-arch__pager button{ font-size:1.3rem !important; color:#4a4a4a !important; }
.aad-arch__prompt-t{ color:#595959 !important; }
.aad-arch__prompt-s{ font-size:1.3rem !important; color:#595959 !important; }
.aad-arch__none{ font-size:1.5rem !important; color:#595959 !important; }
.aad-arch__card-n{ font-size:1.5rem !important; }
.aad-arch__card-en{ font-size:1.3rem !important; color:#777 !important; }
.aad-arch__card-g{ font-size:1.2rem !important; color:#595959 !important; }
.aad-arch__card-y{ font-size:1.3rem !important; color:#777 !important; }
.aad-arch__search-input{ font-size:16px !important; }
.aad-arch__search-input::placeholder{ color:#777 !important; }

/* ============================================================
   お問い合わせ（contact）：5.5〜8.2px＋薄グレー全面（policyブロックで一部のみ救済済の残り）
   ============================================================ */
.atspect-contact__eyebrow{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-contact__optional{ font-size:1.2rem !important; color:#767676 !important; }
.atspect-contact__sub{ font-size:1.5rem !important; color:#4a4a4a !important; }
.atspect-contact__label{ font-size:1.3rem !important; }
.atspect-contact__input, .atspect-contact__textarea, .atspect-contact__select{ font-size:16px !important; }
.atspect-contact__input::placeholder, .atspect-contact__textarea::placeholder{ color:#8c8c8c !important; }
.atspect-contact__privacy{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-contact__privacy-link{ color:#4a4a4a !important; }
.atspect-contact__error{ font-size:1.3rem !important; }
.atspect-contact__side-link{ font-size:1.3rem !important; }
.atspect-contact__side-address{ font-size:1.3rem !important; color:#4a4a4a !important; }
.atspect-contact__side-note{ color:#595959 !important; }
.atspect-contact__success-text{ font-size:1.4rem !important; color:#4a4a4a !important; }
.atspect-contact__submit{ font-size:1.3rem !important; }
.atspect-contact__line-btn{ font-size:1.3rem !important; }

/* ============================================================
   作家の方へ（artist-registration / areg）：入力16px・バッジ/注記の底上げ
   ============================================================ */
.atspect-areg__eyebrow, .atspect-areg__block-label, .atspect-areg__form-eyebrow{ font-size:1.2rem !important; }
.atspect-areg__input, .atspect-areg__textarea, .atspect-areg__select{ font-size:16px !important; }
.atspect-areg__req, .atspect-areg__opt{ font-size:1.2rem !important; color:#595959 !important; }
.atspect-areg__cond{ font-size:1.2rem !important; color:#6b5e3e !important; }
.atspect-areg__hint, .atspect-areg__consent-note{ font-size:1.3rem !important; }
.atspect-areg__field-error{ font-size:1.3rem !important; }
.atspect-areg__form-note{ font-size:1.3rem !important; color:#595959 !important; }
.atspect-areg__radio{ font-size:1.4rem !important; }

/* ── FAQ ── */
.atspect-faq__eyebrow{ font-size:1.2rem !important; }
.atspect-faq__cat-heading{ font-size:1.2rem !important; color:rgba(44,44,44,.55) !important; }
.atspect-faq__answer p{ font-size:16px !important; line-height:1.9 !important; color:#595959 !important; }  /* 長文の型：回答本文14.5/14px→16px（2026-07-06） */
.atspect-faq__contact-btn{ font-size:1.3rem !important; }

/* ============================================================
   展示・イベント（exhibitions）：5.5〜8.5px全面（@media補正なし）
   ============================================================ */
.atspect-exh__eyebrow{ font-size:1.1rem !important; color:#6b6b6b !important; }
.atspect-exh__sub{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-exh__block-label{ font-size:1.1rem !important; color:#6b6b6b !important; }
.atspect-exh__item-status, .atspect-exh__item-status--upcoming, .atspect-exh__item-status--current{ font-size:1.1rem !important; }
.atspect-exh__item-dates{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-exh__item-venue{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-exh__item-desc{ font-size:1.5rem !important; color:#4a4a4a !important; }
.atspect-exh__item-link{ font-size:1.3rem !important; }
.atspect-exh__empty-state{ font-size:1.3rem !important; color:#6b6b6b !important; }
.atspect-exh__past-date{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-exh__past-title{ font-size:1.4rem !important; }
.atspect-exh__past-venue{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-exh__cta-text{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-exh__cta-btn{ font-size:1.3rem !important; }

/* ── プレスページ（PC @mediaで本文が10pxに縮小）── */
.atspect-press-pg__eyebrow{ font-size:1.2rem !important; }
.atspect-press-pg__sec-label{ font-size:1.2rem !important; }
.atspect-press-pg__lead{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-press-pg__contact-desc{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-press-pg__email{ font-size:1.6rem !important; }

/* ── 作家プラン（11〜12px帯）── */
.atspect-ap__eyebrow, .atspect-ap__plan-label, .atspect-ap__variant-label, .atspect-ap__trust, .atspect-ap__note{ font-size:1.2rem !important; }

/* ── 404 ── */
.atspect-404__eyebrow{ font-size:1.2rem !important; color:#6b6b6b !important; }
.atspect-404__body{ font-size:1.5rem !important; color:#595959 !important; }
.atspect-404__btn{ font-size:1.3rem !important; }

/* ── パスワードゲート/ページ（atspect-pw・ダーク地＝白系のまま濃度を上げる）── */
.atspect-pw__eyebrow{ font-size:1.2rem !important; }
.atspect-pw__body, .atspect-pw__sub{ font-size:1.5rem !important; color:rgba(255,255,255,.72) !important; }
.atspect-pw__form-label{ font-size:1.3rem !important; color:rgba(255,255,255,.62) !important; }
.atspect-pw__email-input, .atspect-pw__input{ font-size:16px !important; }
.atspect-pw__submit{ font-size:1.4rem !important; }
.atspect-pw__success{ font-size:1.3rem !important; }
.atspect-pw__unlock{ font-size:1.3rem !important; color:rgba(255,255,255,.72) !important; }
.atspect-pw__error{ font-size:1.3rem !important; }
.atspect-pw__admin{ font-size:1.2rem !important; }
.atspect-pw__sns-link{ font-size:1.2rem !important; }
.atspect-pw__footer-copy, .atspect-pw__footer-link, .atspect-pw__copy{ font-size:1.2rem !important; }

/* ── ポリシー系の薄すぎる読み物グレー（サイズはpolicyブロックで救済済・色のみ是正）── */
.atspect-tokushoho__footer p{ font-size:16px !important; color:#595959 !important; }
.atspect-privacy__intro--lang, .atspect-privacy__footer p{ color:#595959 !important; }

/* ── モバイル：タップ領域（主要ボタン/フィルタ/ページャ/入力 min 44px）── */
@media screen and (max-width: 749px){
  .atspect-contact__submit, .atspect-contact__line-btn,
  .atspect-areg__radio,
  .aad-arch__gbtn, .aad-arch__idx button,
  .aad-arch__pager a, .aad-arch__pager button,
  .atspect-search__submit,
  .atspect-featured__profile-btn{ min-height:44px !important; }
}

/* ============================================================
   V3 灯りのホバー（触れると照明がわずかに上がる・全カード共通作法）
   2026-07-04 第1バッチ ─ 反応は brightness(1.03) のみ。拡大・跳ね・色反転はしない。
   作品カードは上の「④画像は常に表示」ブロックで brightness(1.03) に統一済。
   ここでは作家カード／アーカイブ／featured／ジャンルの拡大ホバーを同じ作法へ揃える。
   ============================================================ */
.atspect-artist-card__img, .atspect-artist-card__image,
.atspect-archive__card-img,
.atspect-featured__image,
.atspect-genre__img{
  transition: filter .2s ease, transform .2s ease !important;
}
.atspect-artist-card:hover .atspect-artist-card__img,
.atspect-artist-card:hover .atspect-artist-card__image,
.atspect-archive__card:hover .atspect-archive__card-img,
.atspect-featured__image-wrap:hover .atspect-featured__image,
.atspect-genre__item:hover .atspect-genre__img{
  transform: none !important;           /* 拡大しない */
  filter: brightness(1.03) !important;  /* 照明がわずかに上がる */
}
/* 再利用ユーティリティ＋控えめな一覧CTAのホバー明度（けばけばしくしない） */
.atspect-lift{ transition: filter .2s ease; }
.atspect-lift:hover{ filter: brightness(1.03); }
.atspect-section-viewall{ transition: color .2s ease, filter .2s ease; }
.atspect-section-viewall:hover{ filter: brightness(1.03); }
@media (prefers-reduced-motion: reduce){
  .atspect-artist-card__img, .atspect-artist-card__image,
  .atspect-archive__card-img, .atspect-featured__image, .atspect-genre__img,
  .atspect-lift, .atspect-section-viewall{ transition: none !important; }
}

/* ============================================================
   V4 金の点 ─ 主要セクション境界の金茶罫線に金点を一粒（トップページ3箇所）
   2026-07-04 第1バッチ ─ CSS疑似要素のみ・4px・主張しすぎないあつぺくとの署名。
   ticker(hero下)／mission下境界(genre上)／collector-cta下境界 の3箇所。
   overflow:hidden 内でも切れないよう罫線に接して内側に置く。
   ============================================================ */
.atspect-qb, .atspect-ccta{ position: relative; }
.atspect-qb::before,
.atspect-mission::after,
.atspect-ccta::after{
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--color-gold, #b8965a);
  pointer-events: none;
}
.atspect-qb::before{ top: 0; }        /* hero ↔ ticker 境界 */
.atspect-mission::after{ bottom: 0; } /* mission ↔ genre 境界 */
.atspect-ccta::after{ bottom: 0; }    /* collector-cta 下境界 */

/* F2-1 画面外アニメ一時停止（汎用オプトイン）。ticker専用ルールは atspect-ticker.liquid に併置。
   任意の要素に data-pause-offscreen を付ければ、画面外で自身と子孫のアニメが paused（省電力）。 */
[data-pause-offscreen].is-anim-off,
[data-pause-offscreen].is-anim-off *{ animation-play-state: paused !important; }

/* ============================================================
   A-2残 他ページの極小文字 是正（第3バッチ 2026-07-04）
   1rem=10px。④ブロック未カバーで 5〜8px だった可視テキストを可読値へ。
   各クラスは単一 font-size 宣言（responsive変種なし＝縮小事故なし）を確認済。
   静かなトーン維持のため最小限（操作/本文=12px・ラベル/eyebrow=11px）。
   ============================================================ */
/* ボタン・操作テキスト（7px前後→12px） */
.atspect-artwork__reserve-btn,
.atspect-artwork__inq-submit,
.atspect-lcta__btn,
.atspect-ig__follow-btn,
.atspect-artist-card__cta,
.atspect-artists__view-all,
.atspect-filter-btn,
.atspect-collection__empty-link{ font-size: 1.2rem !important; }
/* 注記・本文・ヒント（7〜8px→12px） */
.atspect-artwork__inq-hint,
.atspect-privacy__note,
.atspect-lcta__body,
.atspect-press__placeholder{ font-size: 1.2rem !important; }
/* ラベル・eyebrow・バッジ・メタ（5〜7px→11px） */
.atspect-lcta__eyebrow,
.atspect-artist-card__badge,
.atspect-artist-card__scene-label,
.atspect-artwork__inq-target-label,
.atspect-artist-card__name-en,
.atspect-artist-card__location,
.atspect-artists__coming-en{ font-size: 1.1rem !important; }

/* ============================================================
   V6 和紙の呼吸 ─ ページ遷移の一瞬のフェード（第4バッチ 2026-07-04）
   View Transitions API（cross-document）。対応ブラウザ（Chrome126+/Safari18+等）のみ
   0.2秒の穏やかなクロスフェード＝和紙地(#f4efe6)が透けて「間」が生まれる。
   非対応ブラウザは即時遷移＝無害デグレード。reduced-motionは無効化。
   ============================================================ */
@view-transition { navigation: auto; }
::view-transition-old(root){ animation: atspect-vt-out 0.18s ease both; }
::view-transition-new(root){ animation: atspect-vt-in 0.22s ease both; }
@keyframes atspect-vt-out{ to{ opacity: 0; } }
@keyframes atspect-vt-in{ from{ opacity: 0; } }
@media (prefers-reduced-motion: reduce){
  @view-transition { navigation: none; }
}

/* ============================================================
   モバイル文字組み・可読性の総仕上げ  2026-07-06
   設計＝[[_調査_モバイル可読性と文字組み_20260706_ATSPECT]]（田川氏Android実機所感）。
   本ブロックは atspect.css に集約（section <style> を触らず後勝ち!important／高い詳細度で確実に勝つ）。
   1rem=10px 前提。他言語（欧文/中韓）の自然な折返しは壊さない（keep-all は ja 限定）。
   ============================================================ */

/* ── C. 長文の読みやすさの型：規約全文（読了ゲート前提の契約文書）本文13.5px→15px ──
   （行間1.95・字間0.02em・段落間10px は section 側が既に型の範囲内。ここではサイズのみ底上げ） */
.atspect-aterms__doc p, .atspect-aterms__doc li{ font-size: 15px !important; }
/* 規約の表（区分・料金）も極小を回避（12.5px→13px） */
.atspect-aterms__table th, .atspect-aterms__table td{ font-size: 13px !important; }

/* ── A1. プライバシー §4 注記（決済代行の一文）：section側 0.72rem!important(=7.2px) の取り残しを是正。
   同じ詳細度では section が後読みで勝つため、詳細度を上げて（p.クラス＝(0,2,1) > (0,1,0)）確実に上書き。 */
.atspect-privacy p.atspect-privacy__note{ font-size: 13px !important; color: #595959 !important; }

/* ── B. 下層ページのヒーロー見出しをモバイルで中央に統一（案A・調査観点1）。
   対象＝規約/解約/お気に入り/登録案内/404（現状モバイル左）。本文・フォームは左のまま（ヒーローのみ）。
   トップの「導入3つ中央→genre以降左」の意図構成は不変。PCの各ページ既存整列も不変（調査はモバイル観点）。
   検索ページ系（作家を探す/作品を探す）はリサーチ担当のため対象外。 */
@media screen and (max-width: 749px){
  .atspect-aterms__hero,
  .atspect-acancel__hero,
  .atspect-wishlist__head,
  .atspect-wishlist__empty,
  .atspect-404__content,
  /* 登録案内は hero-inner/lead に text-align:left が直接指定されているため、親でなく該当要素を直接中央化 */
  .atspect-areg__hero-inner,
  .atspect-areg__lead{ text-align: center !important; }
  .atspect-404__actions{ justify-content: center !important; }
}

/* ── A4. 泣き別れ抑制（keep-all）の横展開：既存 ja 専用ブロックと同方式を下層ページ見出し/ボタンへ拡張。
   ja 限定＝他言語（欧文スペース折返し・中韓 strict）に無影響。 */
:where(html[data-lang="ja"], html:not([data-lang])) :is(
  .atspect-aterms__heading,
  .atspect-tokushoho__heading,
  .atspect-tokushoho__term,
  .atspect-privacy__heading,
  .atspect-privacy__section-title,
  .atspect-contact__heading,
  .atspect-contact__label,
  .atspect-acancel__heading,
  .atspect-acancel__submit,
  .atspect-wishlist__heading,
  .atspect-wishlist__empty,
  .atspect-areg__heading,
  .atspect-areg__applybtn,
  .atspect-areg__submit
){
  word-break: keep-all;
  overflow-wrap: break-word;
  line-break: strict;
}

/* ── 見出し系に text-wrap:balance（対応ブラウザのみ有効・非対応は無害・全言語で2行見出しの左右均整を改善） ── */
:is(
  .atspect-aterms__heading,
  .atspect-tokushoho__heading,
  .atspect-privacy__heading,
  .atspect-privacy__section-title,
  .atspect-contact__heading,
  .atspect-acancel__heading,
  .atspect-wishlist__heading,
  .atspect-areg__heading
){
  text-wrap: balance;
}
