/* Public pages: compact information hierarchy, using the existing theme. */
body.home-page .home-hero{grid-template-columns:minmax(0,1.15fr) minmax(330px,1fr);gap:24px;margin-top:20px;align-items:start}
body.home-page .home-intro{min-height:0;height:auto;align-self:center;padding:30px 20px 30px 8px;border:0;background:transparent!important;box-shadow:none;display:block;border-radius:0}
body.home-page .home-intro::after{display:none}
body.home-page .home-intro h1{font-size:clamp(34px,4vw,52px);line-height:1.08;margin:12px 0 18px;max-width:15ch}
body.home-page .home-intro .home-lead{font-size:17px;line-height:1.6;max-width:42ch;margin:0}
body.home-page .home-intro .home-actions{margin-top:22px;gap:12px}
.home-trust-line{margin:16px 0 0;color:var(--muted);font-size:13px}
body.home-page .featured-game{min-height:0;grid-template-rows:130px auto;border-radius:18px}
body.home-page .featured-cover{height:130px;min-height:0}
body.home-page .featured-body{padding:20px;gap:8px;justify-content:flex-start}
body.home-page .featured-body .badges{gap:6px}
body.home-page .featured-body .badge{font-size:11px;padding:4px 8px}
body.home-page .featured-body h2{font-size:26px;margin:0;line-height:1.2}
body.home-page .featured-body .featured-kicker{font-size:10px;margin:0;letter-spacing:.1em}
body.home-page .featured-body .featured-meta{font-size:13px;gap:3px}
body.home-page .featured-body .featured-description{font-size:14px;margin:0}
body.home-page .featured-footer{padding-top:8px;margin-top:4px;gap:6px 10px}
body.home-page .featured-footer .participation-price__label{font-size:12px}
body.home-page .featured-footer .participation-price__amount{font-size:25px;white-space:nowrap}
body.home-page .featured-footer .participation-price__note{font-size:11px;line-height:1.4;margin:0}
body.home-page .featured-footer .button{min-height:44px;padding:11px 14px}
.quick-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 0;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quick-paths a{padding:18px 20px;display:grid;gap:3px;border-right:1px solid var(--line)}
.quick-paths a:first-child{padding-left:0}.quick-paths a:last-child{border:0}
.quick-paths span{font-size:12px;color:var(--muted)}.quick-paths strong{font-size:17px;font-weight:600;color:var(--accent)}
.quick-paths a:hover strong,.home-community-links a:hover{text-decoration:underline;text-underline-offset:4px}
body.home-page .home-section{margin-top:36px}
body.home-page .home-section-head{margin-bottom:18px}
body.home-page .home-section-head h2{font-size:clamp(23px,2.6vw,30px)}
.first-visit-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:0}
.first-visit-steps li{display:flex;align-items:flex-start;gap:12px}
.first-visit-steps li>span{font-size:13px;color:var(--accent);font-weight:700;padding-top:4px}
.first-visit-steps h3{font-size:17px;margin:0 0 6px;line-height:1.4}
.first-visit-steps p{color:var(--muted);font-size:14px;margin:0;max-width:30ch}
body.home-page .home-master-card-v50{padding:22px;grid-template-columns:140px minmax(0,1fr);gap:24px}
body.home-page .home-master-portrait-v50{max-width:140px;aspect-ratio:1;align-self:start}
body.home-page .home-master-copy-v50 h2{font-size:25px}
body.home-page .home-master-copy-v50>p{font-size:15px;line-height:1.6}
body.home-page .home-master-actions-v50{grid-column:2;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}
.master-approach{border-left:2px solid var(--accent);padding-left:14px;margin-top:16px;font-size:14px}
.master-approach p{margin:4px 0 0;color:var(--muted)}
.home-faq details{border-top:1px solid var(--line);padding:14px 0}
.home-faq summary{cursor:pointer;font-weight:600}
.home-faq p{max-width:75ch;color:var(--muted);margin:12px 0 0}
.home-community-links{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:28px 0;font-size:14px;color:var(--muted)}
body.home-page .home-game-card .cover{height:145px}
body.home-page .home-game-card .card-body{padding:18px;gap:6px}
body.home-page .home-game-card .badge{font-size:11px}
.game-atmosphere{color:var(--accent);font-size:13px}
body .participation-price .participation-price__amount{white-space:nowrap}
.participation-price:not(:has(.participation-price__standard)) .participation-price__options{grid-template-columns:1fr}
body .price-composition{font-size:13px;line-height:1.5;color:var(--muted);margin:8px 0 0}
.schedule-intentions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 12px}
.schedule-intentions a{padding:9px 14px;border:1px solid var(--line);border-radius:10px;font-size:14px;background:var(--theme-surface-1)}
.schedule-intentions a[aria-current=true]{background:var(--accent);color:var(--theme-bg-0);border-color:var(--accent)}
html[data-theme=light] .schedule-intentions a[aria-current=true]{color:#fff}
.schedule-scope{display:flex;gap:18px;flex-wrap:wrap;margin:8px 0 18px;font-size:13px;color:var(--muted)}
.schedule-scope a[aria-current=true]{color:var(--text);text-decoration:underline;text-underline-offset:6px}
body.game-detail-page .detail-layout{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:start;gap:26px}
body.game-detail-page .detail-cover{height:auto;max-height:410px;object-fit:cover;aspect-ratio:4/5;border-radius:18px}
body.game-detail-page .detail-main{padding:24px}
body.game-detail-page .detail-main h1{font-size:clamp(28px,3vw,40px);margin:12px 0}
.game-intro-teaser{font-size:16px;line-height:1.6;color:var(--muted)}
.game-experience{display:grid;gap:10px;margin:18px 0;padding:0}
.game-experience>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px}
.game-experience dt{font-size:13px;color:var(--muted)}.game-experience dd{margin:0;font-size:14px}
.campaign-entry{border-left:2px solid var(--accent);padding:0 0 0 14px;margin:18px 0;font-size:14px}
.campaign-entry p{margin:6px 0;color:var(--muted)}.campaign-entry a{font-size:13px;color:var(--accent)}
body.game-detail-page .game-date{font-size:18px;font-weight:600;color:var(--text);margin:16px 0}
.inline-account-link{font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;align-self:center}
.account-footnote{font-size:13px;color:var(--muted);margin:18px 0}
.account-footnote a{text-decoration:underline;text-underline-offset:3px}
body.game-detail-page .price-panel{padding:18px;margin:14px 0}
body.game-detail-page .price-panel h2{font-size:20px;margin:0 0 12px}
body.game-detail-page .price-panel .participation-price__note{font-size:12px;line-height:1.5;margin:4px 0 0}
body.game-detail-page .price-panel .participation-price__condition{font-size:12px;line-height:1.5;margin:4px 0 0}
body.game-detail-page .price-panel .participation-price__terms{margin-top:8px}
.game-story-details{margin:20px 0;border-top:1px solid var(--line);padding-top:14px}
.game-story-details summary{cursor:pointer;font-size:15px;font-weight:600}
.game-story-details .game-story{margin-top:12px}
.mobile-booking-bar{display:none}
@media(max-width:850px){
 body.home-page .home-hero{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);gap:20px}
 body.home-page .home-intro{padding:20px 0}
 body.home-page .home-intro h1{font-size:36px}
 body.game-detail-page .detail-layout{grid-template-columns:minmax(180px,.6fr) minmax(0,1.4fr);gap:16px}
}
@media(max-width:700px){
 body.home-page .home-hero{display:grid;grid-template-columns:1fr;margin-top:10px;gap:20px}
 body.home-page .home-intro{padding:12px 0 0}
 body.home-page .home-intro h1{font-size:36px;max-width:17ch}
 body.home-page .home-intro .home-lead{font-size:16px}
 body.home-page .home-intro .home-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
 body.home-page .home-intro .home-actions .button{padding:12px 10px;font-size:14px;min-width:0}
 body.home-page .featured-game{grid-template-rows:100px auto}
 body.home-page .featured-cover{height:100px}
 body.home-page .featured-body{padding:16px;gap:7px}
 .quick-paths{margin-top:20px;grid-template-columns:1fr}
 .quick-paths a,.quick-paths a:first-child{padding:13px 0;border:0;border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px}
 .quick-paths strong{font-size:14px}.quick-paths span{font-size:11px}
 .first-visit-steps{grid-template-columns:1fr;gap:18px}
 .first-visit-steps p{max-width:none}
 body.home-page .home-master-card-v50{grid-template-columns:72px minmax(0,1fr);gap:16px;padding:18px}
 body.home-page .home-master-portrait-v50{max-width:72px}
 body.home-page .home-master-copy-v50{min-width:0}
 body.home-page .home-master-copy-v50 h2{font-size:22px;overflow-wrap:anywhere}
 body.home-page .home-master-actions-v50{grid-column:1/-1}
 body.home-page .home-master-actions-v50 .button{font-size:13px;padding:11px 12px;min-width:0}
 body.game-detail-page .detail-layout{display:block}
 body.game-detail-page .detail-cover{width:100%;max-height:180px;aspect-ratio:16/7;margin-bottom:18px}
 body.game-detail-page .detail-main{padding:18px}
 body.game-detail-page .detail-main .actions>.button{width:100%}
 .game-experience>div{grid-template-columns:1fr;gap:2px}
 body.game-detail-page:has(.mobile-booking-bar){padding-bottom:170px}
 .mobile-booking-bar{position:fixed;z-index:19;left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-top:1px solid var(--line);background:var(--theme-surface-1);box-shadow:0 -4px 16px #0000000a}
 .mobile-booking-bar>div{display:grid;gap:2px;min-width:0}
 .mobile-booking-bar strong{font-size:12px}.mobile-booking-bar span{font-size:16px;font-weight:700;white-space:nowrap}
 .mobile-booking-bar>.button{min-height:44px;font-size:13px;padding:11px 14px;flex-shrink:0}
 body:has(.mobile-menu-v26:not([hidden])) .mobile-booking-bar{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
