/* Version 2.1: purposeful interactions */
:root{--action:#f6b644;--ink:#102943}button,a{touch-action:manipulation}.btn,.hall-tab{transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.btn{border-radius:9px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px}.btn:hover,.hall-tab:hover{transform:translateY(-2px);box-shadow:0 7px 20px #061d3426}.btn:focus-visible,.hall-tab:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #e69b00;outline-offset:3px}.btn-outline{background:white;color:#12436b!important;border:2px solid #c5d7e4;box-shadow:none}.hall-explorer{background:#eaf3f9}.hall-layout{display:grid;grid-template-columns:minmax(220px,.85fr) 2fr;gap:20px;margin-top:25px}.hall-tabs{display:grid;gap:10px}.hall-tab{border:1px solid #c8dbe7;background:#fff;color:#123c5e;text-align:left;padding:18px 22px;border-radius:12px;font:inherit;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.hall-tab.is-active{background:#133e63;color:white;border-color:#133e63}.hall-detail{border:1px solid #cbdde8;background:white;border-radius:18px;padding:30px;box-shadow:0 8px 26px #0c2c4710}.hall-detail h3{font-size:1.8rem;margin:8px 0}.hall-detail p{line-height:1.7}.hall-actions,.planner-extra{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}.fine-print{font-size:.82rem;color:#566d7e;margin-top:20px}.planner-feedback{font-size:.85rem;color:#235a40}.guide-card:hover,.journey-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0c2c4715}.guide-card,.journey-card{transition:transform .16s ease,box-shadow .16s ease}@media(max-width:700px){.hall-layout{grid-template-columns:1fr}.hall-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.hall-tab{padding:13px;font-size:.9rem}.hall-detail{padding:22px}.hall-actions .btn{width:100%}}@media(prefers-reduced-motion:reduce){.btn,.hall-tab,.guide-card,.journey-card{transition:none!important}.btn:hover,.hall-tab:hover,.guide-card:hover,.journey-card:hover{transform:none!important}}@media print{header,.menu,.hero-art,.hall-tabs,.search-band,.ad-region,.callout,.footer,.planner-button,.planner-extra{display:none!important}.planner-results{display:block!important}}

/* V2.2 — responsive ATF advertising inventory; preview intentionally visible only in this demo. */
.atf-ad-region{background:#f3f7fa;border-bottom:1px solid #e1eaf1}
.atf-ad-inner{padding-top:16px;padding-bottom:16px}
.atf-ad-slot{width:100%;max-width:970px;margin-inline:auto;min-width:0;overflow:hidden;text-align:center}
.atf-ad-slot[data-ad-status="empty"]{display:none}
.atf-ad-region:has(.atf-ad-slot[data-ad-status="empty"]){display:none}
.atf-ad-slot[data-ad-status="preview"],.atf-ad-slot[data-ad-status="active"]{min-height:90px}
.atf-ad-preview{min-height:90px;padding:13px 16px;border:1px dashed #9ab5c9;border-radius:12px;background:linear-gradient(100deg,#e7f0f6,#fff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#193e5b}
.atf-ad-preview strong{font-size:clamp(.86rem,1.6vw,1.1rem);line-height:1.3}
.atf-ad-preview small{font-size:.76rem;color:#557087}
.atf-ad-label{font-size:.64rem;letter-spacing:.13em;color:#566f83;font-weight:800}
.atf-ad-slot[data-ad-status="active"]{display:flex;align-items:center;justify-content:center}
.atf-ad-slot[data-ad-status="active"]>ins,.atf-ad-slot[data-ad-status="active"]>div{max-width:100%}
@media(max-width:700px){.atf-ad-inner{padding-top:10px;padding-bottom:10px}.atf-ad-slot[data-ad-status="preview"],.atf-ad-slot[data-ad-status="active"]{min-height:100px}.atf-ad-preview{min-height:100px;padding:10px}.atf-ad-preview small{font-size:.7rem}}
@media print{.atf-ad-region{display:none!important}}

/* V2.3 — three reusable contextual homepage ad slots. Preview mode only. */
.inline-ad-region{background:#fff}
.inline-ad-inner{padding-block:16px}
.inline-ad-slot{width:100%;max-width:970px;min-width:0;margin-inline:auto;text-align:center;overflow:hidden}
.inline-ad-slot[data-ad-status="empty"]{display:none}
.inline-ad-region:has(.inline-ad-slot[data-ad-status="empty"]){display:none}
.inline-ad-slot[data-ad-status="preview"],.inline-ad-slot[data-ad-status="active"]{min-height:90px}
.inline-ad-preview{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:90px;padding:12px 16px;border:1px dashed #9ab5c9;border-radius:12px;background:linear-gradient(105deg,#e9f2f8,#fff);color:#193e5b}
.inline-ad-label{font-size:.65rem;letter-spacing:.12em;font-weight:800;color:#516e82}
.inline-ad-preview strong{font-size:clamp(.85rem,1.5vw,1.08rem)}
.inline-ad-preview small{font-size:.73rem;color:#557087}
.inline-ad-slot[data-ad-status="active"]{display:flex;align-items:center;justify-content:center}
.inline-ad-slot[data-ad-status="active"]>ins,.inline-ad-slot[data-ad-status="active"]>div{max-width:100%}
@media(max-width:700px){.inline-ad-inner{padding-block:10px}.inline-ad-slot[data-ad-status="preview"],.inline-ad-slot[data-ad-status="active"],.inline-ad-preview{min-height:100px}.inline-ad-preview{padding:10px}}
@media print{.inline-ad-region{display:none!important}}
