/* ===== Dark Theme Variables ===== */
.page-da-ga { --c-bg: #0D0E12; --c-card: #17191F; --c-main: #FFF3E6; --c-border: #A84F0C; --c-accent: #FF8C1A; --c-accent-2: #FFA53A; --c-deep-orange: #D96800; --c-glow: #FFB04D; background-color: var(--c-bg); color: var(--c-main); font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif; line-height: 1.7; overflow-x: hidden; }

/* ===== Hero Banner (Image first - then content) ===== */
.page-da-ga__hero-section { background-color: var(--c-bg); padding-top: 10px; display: flex; flex-direction: column; align-items: center; }
.page-da-ga__hero-image-block { width: 100%; max-width: 1920px; display: flex; justify-content: center; }
.page-da-ga__hero-image { width: 100%; height: auto; aspect-ratio: 16/5; object-fit: cover; display: block; pointer-events: none; }
/* Content block stays below image in default flow without overlapping */
.page-da-ga__hero-content { width: 100%; max-width: 1300px; text-align: center; padding: 28px 24px 48px; }
.page-da-ga__hero-title { font-weight: 800; line-height: 1.25; letter-spacing: -0.01em; color: var(--c-main); text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8); margin: 0 0 14px; text-wrap: balance; }
.page-da-ga__hero-subtitle { font-size: 1.125rem; max-width: 900px; margin: 0 auto 24px; color: #FFE3C2; }
.page-da-ga__hero-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }

/* ===== BEM Buttons ===== */
.page-da-ga__btn { display: inline-block; text-decoration: none; font-weight: 700; letter-spacing: 0.3px; border-radius: 9999px; padding: 14px 32px; transition: transform 0.2s, box-shadow 0.2s; the border-radius ensures no clipped corners in flex contexts; }
.page-da-ga__btn--primary, .page-da-ga__btn--cta, .page-da-ga__show-actions .page-da-ga__btn { background: linear-gradient(180deg, #FFA53A 0%, #D96800 100%); color: #0D0E12 !important; text-shadow: none; box-shadow: 0 6px 18px rgba(255, 138, 26, 0.25); }
.page-da-ga__btn--secondary { background-color: #17191F; color: var(--c-accent-2) !important; border: 1px solid var(--c-border); }
.page-da-ga__btn--secondary:hover { border-color: var(--c-accent-2); }
.page-da-ga__btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(255, 138, 26, 0.35); }
.page-da-ga__btn:active { transform: translateY(0); }

/* ===== Section Titles & Intros ===== */
.page-da-ga__h2-title { color: var(--c-main); font-size: clamp(1.6rem, 3vw, 2.6rem); font-weight: 800; letter-spacing: -0.01em; line-height: 1.2; margin: 0 0 16px; text-align: center; }
.page-da-ga__section-intro { text-align: center; max-width: 700px; margin: 0 auto 40px; color: #E6C9B0; font-size: 1.1rem; }

/* ===== Logo Grid (4 + 2 placement) ===== */
.page-da-ga__logo-section { padding: 40px 16px 60px; background: linear-gradient(180deg, var(--c-bg) 0%, #11141C 100%); }
.page-da-ga__logo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px 16px; justify-items: center; max-width: 1100px; margin: 0 auto 32px; align-items: stretch; }
.page-da-ga__logo-item { background: var(--c-card); border: 1px solid #232634; border-radius: 14px; padding: 12px 12px 16px; transition: border-color .2s, box-shadow .2s; display: flex; flex-direction: column; align-items: center; gap: 10px; color: var(--c-main); text-decoration: none; width: 100%; box-sizing: border-box; }
.page-da-ga__logo-item:hover { border-color: var(--c-accent); box-shadow: 0 8px 24px rgba(168, 79, 12, 0.1); }
.page-da-ga__logo-image { max-width: 100%; width: 400px; height: auto; aspect-ratio: 2 / 1; object-fit: contain; object-position: center; background: transparent; }
.page-da-ga__logo-item span { font-weight: 700; font-size: 1rem; letter-spacing: 0.3px; color: var(--c-glow); }
/* Last 2 items go to center via column 2 & 3 */
.page-da-ga__logo-item:nth-child(5) { grid-column: 2; }
.page-da-ga__logo-item:nth-child(6) { grid-column: 3; }
.page-da-ga__logo-cta { margin-top: 16px; text-align: center; }

/* ===== Guide Section ===== */
.page-da-ga__guide-section { padding: 60px 0 90px; background-color: var(--c-bg); }
.page-da-ga__guide-inner { background: var(--c-card); border-top: 1px solid var(--c-border); padding: 36px 16px 64px; text-align: center; width: 100%; }
.page-da-ga__guide-inner .page-da-ga__h2-title { color: #FFE1BE; }
.page-da-ga__guide-inner .page-da-ga__section-intro { color: #C9B9AA; }
.page-da-ga__guide-figure img { width: 100%; max-width: 1200px; height: auto; aspect-ratio: 2/1; object-fit: cover; border-radius: 16px; margin: 0 auto; display: block; }
.page-da-ga__guide-caption { font-style: italic; margin-top: 12px; color: #D6B391; }
.page-da-ga__guide-detail { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 24px 0 32px; }
.page-da-ga__guide-large-figure { margin: 36px auto 30px; }
.page-da-ga__guide-large-figure img { width: 100%; max-width: 1100px; height: auto; aspect-ratio: 2/1; object-fit: cover; border-radius: 16px; display: block; margin: 0 auto; }
.page-da-ga__guide-quick { max-width: 900px; margin: 20px auto 0; text-align: center; }
.page-da-ga__guide-text { font-size: 1.1rem; color: #C9B9AA; margin-bottom: 24px; }

/* ===== Shared ===== */
.page-da-ga__btn { white-space: normal; word-break: break-word; max-width: 100%; }
.page-da-ga__show-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; margin-top: 20px; }
.page-da-ga img { height: auto; max-width: 100%; }

/* ===== Mobile ===== */
@media (max-width: 768px) {
  .page-da-ga__hero-section { padding-top: 8px; }
  .page-da-ga__hero-image { aspect-ratio: 2/1; }
  .page-da-ga__hero-content { padding: 18px 12px 34px; }
  .page-da-ga__hero-title { font-size: 1.6rem; line-height: 1.3; }
  .page-da-ga__hero-subtitle { font-size: 1rem; }
  .page-da-ga__logo-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .page-da-ga__logo-item:nth-child(5), .page-da-ga__logo-item:nth-child(6) { grid-column: auto; }
  .page-da-ga__logo-item { padding: 8px; gap: 6px; }
  .page-da-ga__logo-image { width: 100%; height: auto; }
  .page-da-ga__btn { max-width: 100%; box-sizing: border-box; padding: 12px 16px; font-size: 0.95rem; }
  .page-da-ga__hero-actions, .page-da-ga__guide-quick, .page-da-ga__guide-detail, .page-da-ga__show-actions { flex-direction: column; align-items: center; width: 100%; max-width: 100%; overflow: hidden; box-sizing: border-box; }
  .page-da-ga__guide-actions a, .page-da-ga__show-actions a, .page-da-ga__hero-actions a, .page-da-ga__guide-quick a { width: 100%; text-align: center; }
  .page-da-ga__guide-large-figure img, .page-da-ga__guide-figure img, .page-da-ga img { max-width: 100% !important; height: auto !important; }
  .page-da-ga__guide-inner { padding: 28px 10px 45px; }
  .page-da-ga__h2-title { font-size: 1.45rem; }
  .page-da-ga__section-intro { font-size: 1rem; }
}
@media (max-width: 480px) {
  .page-da-ga__hero-title { font-size: 1.4rem; }
  .page-da-ga__section-intro { font-size: 0.95rem; }
}