body { overflow-x: hidden; }
.art-icon { display:block; width:100%; height:100%; object-fit:contain }
.hero { background:radial-gradient(circle at 76% 6%,rgba(154,114,255,.5),transparent 27%),radial-gradient(circle at 10% 90%,rgba(255,99,15,.18),transparent 25%),linear-gradient(135deg,#24106e,#5122c6 72%,#6532d6) }
.hero-kicker { display:inline-flex; align-items:center; gap:8px; margin-top:34px; color:#d9cffb; font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase }
.hero-kicker::before { width:24px; height:2px; border-radius:2px; background:var(--o); content:"" }
.hero h1 { margin-top:13px }
.panel { box-shadow:0 22px 60px rgba(38,17,93,.11) }
.quick { padding:22px }
.section-heading { margin-bottom:18px }
.section-heading h2 { margin:3px 0 0; font-size:21px }
.section-heading span { color:var(--o); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase }
.section-heading p { display:none; margin:0; color:var(--mut); font-size:12px }
.quick-action { position:relative; min-width:0; min-height:150px; padding:9px 8px 15px; overflow:hidden; background:linear-gradient(180deg,#fff,#fdfcff) }
.quick-action::after { position:absolute; width:52px; height:3px; border-radius:3px 3px 0 0; background:linear-gradient(90deg,var(--p),var(--o)); content:""; bottom:0; left:50%; opacity:0; transform:translateX(-50%); transition:opacity .2s }
.quick-action:hover::after { opacity:1 }
.quick-action .orb { width:82px; height:82px; margin-bottom:3px; background:transparent }
.quick-action strong { overflow-wrap:anywhere; font-size:10px; letter-spacing:.025em }
.social { padding-block:9px }
.social-link { min-height:66px }
.social-link>.art-icon { width:46px; height:46px; flex:none }
.social-link>span { display:grid; gap:2px }
.social-link small { color:var(--mut); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase }
.nav-link>.art-icon { width:30px; height:30px }
.nav-link.active>.art-icon { filter:saturate(1.15); transform:scale(1.08) }
.page-header { isolation:isolate }
.header-art { position:absolute; z-index:1; width:138px; height:138px; right:8px; bottom:-20px; opacity:.94 }
.page-header::after { z-index:-1 }
.page-title { padding-right:86px }
.info-card .orb { width:76px; height:76px; background:transparent }
.callout>.art-icon { width:54px; height:54px; flex:none }
.schedule-header { display:flex; min-height:112px; align-items:center; gap:16px; padding:max(22px,env(safe-area-inset-top)) 20px 20px; color:#fff; background:linear-gradient(120deg,var(--pd),#5122c6) }
.schedule-header small { display:block; margin-bottom:4px; color:#c8baff; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase }
.schedule-header h1 { margin:0; font-size:clamp(22px,6vw,32px); line-height:1.1 }
.schedule-page { min-height:calc(100vh - 184px); padding:18px 12px 32px; background:#f3edf7 }
.schedule-board { max-width:1180px; margin:0 auto; overflow:hidden; border:1px solid #f0d8bd; border-radius:18px; background:linear-gradient(135deg,#fff5e9,#fffaf4 58%,#f9e5cc); box-shadow:0 18px 45px rgba(38,17,93,.12) }
.schedule-intro { display:flex; align-items:center; justify-content:center; padding:22px 18px 18px; text-align:center }
.schedule-label { display:inline-block; padding:5px 12px; color:#fff; background:#4b197f; font-family:"Barlow Condensed",sans-serif; font-size:29px; font-style:italic; font-weight:600; line-height:1; letter-spacing:.04em; text-transform:uppercase; transform:rotate(-1deg) }
.schedule-intro p { margin:8px 0 5px; color:#51217b; font-size:14px; font-weight:700; letter-spacing:.08em; text-transform:uppercase }
.schedule-intro>div:first-child>b,.mission-title span { display:inline-block; padding:3px 12px; color:#fff; background:#51217b; font-size:12px; text-transform:uppercase }
.mission-title { display:none }
.schedule-events { padding:0 12px }
.schedule-event { position:relative; display:grid; grid-template-columns:38px 48px minmax(0,1fr) 28px; align-items:center; min-height:68px; border-bottom:1px solid #eadac9 }
.schedule-event:last-child { border-bottom:0 }
.event-calendar { display:grid; width:32px; height:32px; place-items:center; border-radius:50%; color:#fff; background:#552084 }
.event-calendar svg { width:19px; height:19px }
.schedule-event time { display:flex; flex-direction:column; color:#4b197f; line-height:1 }
.schedule-event time b { font-size:17px }
.schedule-event time small { margin-top:3px; font-size:9px; font-weight:800; letter-spacing:.08em }
.event-copy { min-width:0; padding:9px 6px }
.event-copy strong,.event-copy small { display:block }
.event-copy strong { color:#2b2033; font-size:11px; line-height:1.25 }
.event-copy small { margin-top:3px; color:#695d6c; font-size:10px; line-height:1.25 }
.event-copy em { color:#6d2bae; font-style:normal; font-weight:800 }
.event-video { display:grid; width:27px; height:20px; place-items:center; border-radius:6px; color:#fff; background:#562087 }
.event-video svg { width:13px; height:13px }
.journey { display:none }
.schedule-contact { display:flex; align-items:center; gap:12px; padding:16px 18px; border-top:1px solid #ead5bd; background:rgba(255,255,255,.58) }
.schedule-contact>span { display:grid; width:48px; height:48px; flex:none; place-items:center; border-radius:50%; color:#fff; background:#20b84b; box-shadow:0 5px 12px rgba(20,120,48,.2) }
.schedule-contact svg { width:29px; height:29px }
.schedule-contact strong { color:#4b197f; font-size:11px; letter-spacing:.04em; text-transform:uppercase }
.schedule-contact p { margin:3px 0 0; color:#453a48; font-size:11px; line-height:1.35 }
.missions-header { position:relative; isolation:isolate; display:flex; min-height:156px; align-items:center; gap:16px; padding:max(26px,env(safe-area-inset-top)) 22px 24px; overflow:hidden; color:#fff; background:radial-gradient(circle at 85% 20%,rgba(139,96,245,.55),transparent 34%),linear-gradient(120deg,var(--pd),#5122c6) }
.missions-header>div { position:relative; z-index:2 }
.missions-header small { display:block; margin-bottom:5px; color:#c8baff; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase }
.missions-header h1 { margin:0; font-size:clamp(25px,7vw,36px) }
.missions-header-art { position:absolute; width:130px; height:130px; right:-14px; bottom:-27px; opacity:.68 }
.missions-page { min-height:calc(100vh - 228px); padding:24px 17px 42px; background:linear-gradient(180deg,#f6f2ff,#fff) }
.missions-card { max-width:900px; margin:0 auto; overflow:hidden; border:1px solid #e8e1f1; border-radius:24px; background:#fff; box-shadow:0 18px 48px rgba(38,17,93,.11) }
.missions-visual { position:relative; display:grid; height:190px; place-items:center; overflow:hidden; background:radial-gradient(circle at 75% 20%,#ffb287 0 5%,transparent 6%),linear-gradient(145deg,#3e168e,#6531cc) }
.missions-visual>.art-icon { position:relative; z-index:2; width:155px; height:155px }
.missions-visual>span { position:absolute; z-index:2; color:#fff; font-size:28px; right:17%; top:24px; transform:rotate(-18deg) }
.route-line { position:absolute; width:190px; height:100px; border:2px dashed rgba(255,255,255,.46); border-left-color:transparent; border-bottom-color:transparent; border-radius:50%; right:8%; top:38px; transform:rotate(-12deg) }
.missions-copy { padding:26px 23px 30px }
.missions-kicker { color:var(--o); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase }
.missions-copy h2 { margin:7px 0 18px; color:var(--pd); font-size:clamp(24px,7vw,34px); line-height:1.08 }
.missions-copy p { margin:0 0 15px; color:#62596e; font-size:14px; line-height:1.65 }
.missions-copy>strong { display:block; padding-top:3px; color:#4217b1; font-size:15px; line-height:1.5 }
@media(min-width:720px){.missions-page{padding:40px 28px 60px}.missions-card{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.15fr)}.missions-visual{height:auto;min-height:460px}.missions-visual>.art-icon{width:230px;height:230px}.missions-copy{display:flex;flex-direction:column;justify-content:center;padding:45px}.missions-copy h2{font-size:36px}.missions-copy p{font-size:15px}}
@media(min-width:540px){.section-heading{display:flex;align-items:end;justify-content:space-between}.section-heading p{display:block}.header-art{width:170px;height:170px;right:4vw;bottom:-30px}}
@media(min-width:720px){.schedule-intro{justify-content:space-between;padding:28px 38px;text-align:left}.mission-title{display:block;text-align:center}.mission-title small,.mission-title strong,.mission-title span{display:block}.mission-title small{color:#51217b;font-size:10px;font-weight:700;text-transform:uppercase}.mission-title strong{margin:4px 0;color:#51217b;font-family:"Barlow Condensed",sans-serif;font-size:39px;line-height:.82;letter-spacing:.03em;text-transform:uppercase}.mission-title span{font-size:13px}.schedule-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr);align-items:stretch}.schedule-events{padding:0 22px 18px}.schedule-event{grid-template-columns:42px 58px minmax(0,1fr) 30px;min-height:61px}.event-copy strong{font-size:12px}.journey{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;color:#fff;text-align:center;background:linear-gradient(145deg,#421777,#7132a5)}.journey-globe{font-size:86px}.journey h2{margin:18px 0 8px;font-size:22px}.journey p{max-width:240px;margin:0;color:#eadcf4;font-size:13px;line-height:1.5}.schedule-contact{max-width:70%;padding-inline:28px}}
@media(min-width:960px){.hero-kicker{margin-top:0}.quick{padding:30px}.quick-action{min-height:172px;padding-top:12px}.quick-action .orb{width:104px;height:104px}.sidebar .nav-link>.art-icon{width:34px;height:34px;margin:-5px}.header-art{width:210px;height:210px;right:7vw;bottom:-39px}.page-title{padding-right:190px}.schedule-header{min-height:132px;padding:32px 4vw}.schedule-page{min-height:calc(100vh - 132px);padding:30px 3vw 48px}.schedule-board{border-radius:22px}.schedule-label{font-size:38px}}
