@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#12213c;font-synthesis:none;text-rendering:optimizelegibility;--navy-950:#051832;--navy-900:#08265d;--navy-800:#10387d;--navy-700:#154899;--gold:#cda349;--gold-soft:#f4e7c6;--ink:#12213c;--muted:#68758a;--surface:#fff;--line:#dfe5ec;--success:#18765b;--shadow:0 18px 50px #08265d17;background:#f3f5f8;font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f3f5f8;min-width:320px}body{background:radial-gradient(circle at 92% 2%,#cda34924,#0000 28rem),#f3f5f8;min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}a{color:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{font-family:Manrope,sans-serif}.sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{min-height:100vh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.topbar{z-index:20;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#051832f5;border-bottom:1px solid #ffffff1a;position:sticky;top:0}.topbar-inner{width:min(100%,1120px);min-height:66px;padding:env(safe-area-inset-top) 16px 0;grid-template-columns:44px 1fr 44px;align-items:center;margin:0 auto;display:grid}.brand{color:#fff;justify-self:center;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand-mark{width:34px;height:34px;color:var(--navy-950);background:var(--gold);border-radius:11px 4px;place-items:center;font-size:17px;font-weight:800;display:grid}.brand>span:last-child{flex-direction:column;line-height:1;display:flex}.brand strong{letter-spacing:.02em;font-size:14px}.brand small{color:#aebbd0;letter-spacing:.12em;text-transform:uppercase;margin-top:3px;font-size:10px}.back-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-size:21px;display:grid}.back-placeholder{width:38px}.connection-dot{color:#aebbd0;letter-spacing:.1em;border:1px solid #ffffff26;border-radius:999px;justify-self:end;padding:5px 6px;font-size:8px;font-weight:700}.connection-dot.is-line{color:#fff;background:#06c755;border-color:#06c755}.connection-dot.is-loading{color:var(--gold-soft);letter-spacing:.06em}.status-banner{color:#614c19;text-align:center;background:#fff4d5;border-bottom:1px solid #ead69f;padding:9px 16px;font-size:12px}.content-loading{min-height:45vh;color:var(--muted-text);place-items:center;font-weight:700;display:grid}.update-banner{color:var(--gold-soft);text-align:center;background:#051832f5;border-bottom:1px solid #cda3496b;justify-content:center;align-items:center;gap:12px;padding:10px 16px;font-size:12px;font-weight:600;animation:.22s cubic-bezier(.22,1,.36,1) both update-banner-enter;display:flex}.update-banner button{min-height:32px;color:var(--navy-950);white-space:nowrap;cursor:pointer;background:var(--gold);border:0;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:800}.update-banner button:hover,.update-banner button:focus-visible{background:var(--gold-soft);outline-offset:2px;outline:2px solid #f4e7c657}.main-content{width:min(100%,1120px);margin:0 auto;padding:28px 16px 52px}.page-stack{gap:24px;display:grid}.route-view{animation:.22s cubic-bezier(.22,1,.36,1) both route-enter}.narrow-page{max-width:720px;margin-inline:auto}.page-header{max-width:760px;padding:8px 0 4px}.eyebrow{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:800}.page-header h1,.hero h1{color:var(--navy-950);letter-spacing:-.045em;margin-bottom:12px;font-size:clamp(2rem,8vw,4rem);line-height:1.04}.page-description,.hero>p:not(.eyebrow){max-width:670px;color:var(--muted);margin-bottom:0;font-size:16px;line-height:1.65}.hero{color:#fff;background:linear-gradient(135deg, #ffffff0d, transparent 55%), var(--navy-950);min-height:360px;box-shadow:var(--shadow);border-radius:30px 8px;padding:44px 28px;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #cda34959;border-radius:50%;width:370px;height:370px;position:absolute;bottom:-180px;right:-120px;box-shadow:0 0 0 35px #cda3490d,0 0 0 70px #cda3490a}.hero h1{color:#fff;max-width:750px}.hero>p:not(.eyebrow){color:#b9c6da}.hero-accent{z-index:1;align-items:end;gap:8px;display:flex;position:absolute;bottom:24px;right:24px}.hero-accent span{color:#ffffff73;letter-spacing:.13em;writing-mode:vertical-rl;font-size:9px;font-weight:800}.hero-accent span:nth-child(2){color:var(--gold)}.section-heading{justify-content:space-between;align-items:end;margin-bottom:15px;display:flex}.section-heading h2,.resource-panel h2{color:var(--navy-950);letter-spacing:-.03em;margin-bottom:0;font-size:23px}.menu-grid,.activity-grid{gap:14px;display:grid}.menu-card{min-height:120px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:22px 6px;grid-template-columns:50px 1fr 22px;align-items:center;gap:14px;padding:20px;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 26px #08265d0a}.menu-card:hover,.menu-card:focus-visible{box-shadow:var(--shadow);border-color:#cda349d9;outline:none;transform:translateY(-2px)}.menu-card-icon,.course-monogram{width:50px;height:50px;color:var(--gold-soft);background:var(--navy-900);border-radius:16px 5px;place-items:center;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;display:grid}.menu-card-copy{flex-direction:column;min-width:0;display:flex}.menu-card-copy strong{color:var(--navy-950);font-family:Manrope,sans-serif;font-size:17px}.menu-card-copy>span:last-child{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.45}.menu-card-meta{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:800}.menu-card-arrow{color:#9ca7b6;font-size:17px}.guideline-blocks{gap:14px;display:grid}.guideline-block{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:40px 1fr;gap:14px;padding:21px;display:grid}.step-number{color:var(--gold);letter-spacing:.1em;padding-top:2px;font-size:12px;font-weight:800}.guideline-block h2{color:var(--navy-950);margin-bottom:10px;font-size:18px}.guideline-block ul{color:var(--muted);gap:8px;margin:0;padding-left:19px;line-height:1.55;display:grid}.course-list{gap:10px;display:grid}.course-card{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:50px 1fr 20px;align-items:center;gap:14px;padding:16px;text-decoration:none;display:grid}.course-card>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.course-card strong{font-family:Manrope,sans-serif}.course-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.external-button,.secondary-button{color:#fff;text-align:center;background:var(--navy-900);border:1px solid var(--navy-900);border-radius:13px;justify-content:center;align-items:center;min-height:48px;padding:12px 17px;font-weight:700;text-decoration:none;display:inline-flex}.external-button:hover,.external-button:focus-visible,.secondary-button:hover,.secondary-button:focus-visible{background:var(--navy-700);outline:3px solid #cda3494d}.external-inline,.text-link,.faq-answer a{color:var(--navy-700);text-underline-offset:3px;font-weight:700;text-decoration-color:#15489959}.action-row{flex-wrap:wrap;gap:10px;display:flex}.detail-panel,.resource-panel,.external-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:24px 7px;padding:22px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 20px;display:grid}.detail-grid>div{background:#f5f7fa;border-radius:14px;padding:16px}.detail-list{gap:0;margin:0 0 22px;display:grid}.detail-list>div,.compact-details>div{border-bottom:1px solid var(--line);padding:14px 0}dt{color:var(--navy-950);margin-bottom:4px;font-size:12px;font-weight:800}dd{color:var(--muted);margin:0;line-height:1.55}.source-note,.switch-hint{color:var(--muted);margin:17px 0 0;font-size:12px;line-height:1.55}.segment-switch{background:#e4e8ee;border-radius:14px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.segment-switch a{color:var(--muted);text-align:center;border-radius:10px;padding:10px 16px;font-weight:700;text-decoration:none}.resource-panel h2{margin-bottom:16px}.activity-card{border:1px solid var(--line);background:#fff;border-radius:22px 6px;flex-direction:column;min-height:100%;padding:21px;display:flex}.activity-card-heading{justify-content:space-between;align-items:start;gap:10px;display:flex}.activity-card-heading h2{color:var(--navy-950);margin-bottom:0;font-size:19px;line-height:1.25}.activity-card-heading em,.status-pill{color:var(--success);background:#e8f6ef;border-radius:999px;flex:none;padding:4px 8px;font-size:10px;font-style:italic;font-weight:700}.compact-details{margin:11px 0}.compact-details>div{padding:8px 0}.compact-details dd{font-size:13px}.activity-card>p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:17px;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.activity-card .text-link{margin-top:auto}.status-pill{margin-bottom:10px;display:inline-flex}.contact-section{padding-top:4px}.empty-state{color:var(--muted);text-align:center;background:#ffffffa6;border:1px dashed #cbd3dd;border-radius:18px;padding:30px 22px}.empty-state>span{color:var(--gold);font-size:25px}.empty-state h2{color:var(--navy-950);margin:8px 0 5px;font-size:17px}.empty-state p{margin:0;font-size:13px}.faq-list{gap:12px;display:grid}.faq-item{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden}.faq-trigger{width:100%;min-height:76px;color:var(--navy-950);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:42px minmax(0,1fr) 32px;align-items:center;gap:12px;padding:16px 14px 16px 18px;font-family:Manrope,sans-serif;display:grid}.faq-number{color:var(--gold);letter-spacing:.1em;font-size:12px;font-weight:800}.faq-question{font-size:15px;font-weight:750;line-height:1.4}.faq-toggle{width:32px;height:32px;color:var(--gold-soft);background:#05183275;border:1px solid #cda34957;border-radius:50%;place-items:center;transition:color .18s,background-color .18s,transform .18s;display:grid}.faq-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:17px;height:17px}.faq-answer-region{visibility:hidden;opacity:0;background:#0518324d;border-top:1px solid #0000;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.22,1,.36,1),opacity .18s,border-color .18s,visibility 0s linear .26s;display:grid}.faq-answer-frame{min-height:0;overflow:hidden}.faq-answer{color:var(--muted);grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px 54px 20px 18px;display:grid}.faq-answer-label{color:var(--gold-soft);letter-spacing:.12em;text-transform:uppercase;padding-top:2px;font-family:Manrope,sans-serif;font-size:9px;font-weight:800}.faq-answer-copy{font-size:14px;line-height:1.65}.faq-answer-copy p{margin-bottom:10px}.faq-answer-copy p:last-child{margin-bottom:0}@media (width<=360px){.faq-trigger{grid-template-columns:34px minmax(0,1fr) 30px;gap:10px;padding-left:14px;padding-right:12px}.faq-answer{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:14px 16px 18px 14px}}.external-panel{justify-items:start;display:grid}.document-icon{width:72px;height:88px;color:var(--gold-soft);background:var(--navy-900);border-radius:9px 9px 24px;place-items:center;margin-bottom:24px;font-family:Manrope,sans-serif;font-size:13px;font-weight:800;display:grid}.external-panel h2{color:var(--navy-950);margin-bottom:8px}.external-panel p{color:var(--muted);margin-bottom:20px;line-height:1.6}.not-found{text-align:center;align-content:center;place-items:center;min-height:60vh;display:grid}.not-found>span{color:var(--gold);font-family:Manrope,sans-serif;font-size:72px;font-weight:800}.not-found h1{color:var(--navy-950);margin-bottom:8px;font-size:26px}.not-found p{max-width:440px;color:var(--muted);margin-bottom:20px}.content-unavailable{text-align:center;align-content:center;place-items:center;min-height:68vh;padding:32px 20px;display:grid}.content-unavailable-mark{width:66px;height:66px;color:var(--navy-950);background:linear-gradient(145deg,#e0ba62,#bd8d2f);border-radius:18px 5px;place-items:center;margin-bottom:24px;font-family:Manrope,sans-serif;font-size:34px;font-weight:900;display:grid;box-shadow:0 14px 32px #cda34933}.content-unavailable h1{color:#fff;max-width:560px;margin:6px 0 10px;font-size:clamp(28px,8vw,42px);line-height:1.08}.content-unavailable>p:not(.eyebrow){max-width:460px;color:var(--muted);margin:0 0 24px;line-height:1.65}.loading-screen{color:#fff;background:var(--navy-950);align-content:center;place-items:center;min-height:100vh;display:grid}.loading-mark{border:3px solid #fff3;border-top-color:var(--gold);border-radius:50%;width:46px;height:46px;animation:.9s linear infinite spin}.loading-screen p{color:#bdc7d7;margin-top:14px}.bottom-nav{z-index:30;padding:8px max(12px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:#8792a2;flex-direction:column;align-items:center;gap:3px;font-size:9px;font-weight:700;text-decoration:none;display:flex}.bottom-nav a span{border-radius:9px;place-items:center;width:28px;height:28px;font-size:16px;display:grid}.bottom-nav a.active{color:var(--navy-900)}.bottom-nav a.active span{color:var(--gold-soft);background:var(--navy-900)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes route-enter{0%{opacity:.92;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes update-banner-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (width>=680px){.main-content{padding:40px 24px 70px}.hero{padding:62px 50px}.menu-grid,.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel,.resource-panel,.external-panel{padding:30px}}@media (width>=960px){.app-shell{padding-bottom:0}.bottom-nav{display:none}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{color:#f7f9fc;--ink:#f7f9fc;--muted:#b9c6da;--surface:#08265dc7;--line:#ffffff24;--success:#6fd6aa;--shadow:0 22px 60px #0007164d;background:#051832}html{background:#051832}body{color:var(--ink);background:linear-gradient(#051832b8,#051832e0),url(/rich-menu-background.png) 50%/cover fixed,#051832}.app-shell{isolation:isolate;min-height:100vh;padding-bottom:env(safe-area-inset-bottom);position:relative}.app-shell:before,.app-shell:after{z-index:-1;pointer-events:none;content:"";border:1px solid #cda3492e;border-radius:50%;width:420px;height:420px;position:fixed}.app-shell:before{top:18%;right:-310px;box-shadow:0 0 0 38px #cda34906,0 0 0 76px #cda34905}.app-shell:after{bottom:-330px;left:-260px;box-shadow:0 0 0 38px #cda34906,0 0 0 76px #cda34905}.topbar{background:#051832e6;border-bottom-color:#cda34961;box-shadow:0 10px 30px #00081938}.topbar-inner{min-height:70px}.brand-mark{color:var(--navy-950);background:linear-gradient(145deg,#e0ba62,#bd8d2f);border-radius:10px;box-shadow:0 7px 18px #cda3492e}.brand small{color:var(--gold-soft)}.back-button{color:var(--gold-soft);background:#cda34914;border-color:#cda34966}.back-button:hover,.back-button:focus-visible{background:#cda3492e;outline:2px solid #cda34947}.connection-dot{color:var(--gold-soft);border-color:#cda3494d}.main-content{width:min(100%,1040px);padding-bottom:calc(44px + env(safe-area-inset-bottom))}.page-header{padding-top:25px;position:relative}.page-header:before{content:"";background:linear-gradient(90deg, var(--gold), var(--gold-soft));border-radius:999px;width:76px;height:5px;position:absolute;top:0;left:0}.page-header h1,.section-heading h2,.resource-panel h2,.guideline-block h2,.activity-card-heading h2,.empty-state h2,.external-panel h2,.not-found h1{color:#fff}.page-description,.source-note,.switch-hint,.external-panel p,.not-found p{color:var(--muted)}.eyebrow{color:var(--gold-soft)}.menu-card,.course-card,.guideline-block,.activity-card,.faq-item,.detail-panel,.resource-panel,.external-panel{color:var(--ink);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(145deg,#10387de6,#051832f0),url(/rich-menu-background.png) 50%/cover;border-color:#ffffff26;position:relative;overflow:hidden}.menu-card:before,.activity-card:before,.detail-panel:before,.resource-panel:before,.external-panel:before{content:"";background:linear-gradient(90deg, var(--gold), var(--gold-soft));border-radius:999px;height:3px;position:absolute;top:0;left:18px;right:18px}.menu-card:hover,.menu-card:focus-visible,.course-card:hover,.course-card:focus-visible{border-color:#cda349b3;box-shadow:0 22px 60px #0007166b}.menu-card-copy strong,.course-card strong{color:#fff}.menu-card-copy>span:last-child,.course-card small,.activity-card>p,.faq-answer,dd,.guideline-block ul{color:var(--muted)}.menu-card-icon,.course-monogram{color:var(--gold-soft);background:#051832b8;border:1px solid #cda34975;border-radius:14px}.menu-card-arrow{color:var(--gold)}.detail-grid>div{background:#0518328a;border:1px solid #ffffff17}.detail-list>div,.compact-details>div{border-bottom-color:#ffffff21}dt{color:var(--gold-soft);letter-spacing:.02em}.external-button,.secondary-button{color:var(--navy-950);background:linear-gradient(145deg,#e0ba62,#bd8d2f);border-color:#d4a94d;box-shadow:0 10px 24px #cda3492e}.external-button:hover,.external-button:focus-visible,.secondary-button:hover,.secondary-button:focus-visible{color:var(--navy-950);background:linear-gradient(145deg,#efd384,#c89a3e);outline-color:#f4e7c652}.external-inline,.text-link,.faq-answer a{color:var(--gold-soft);text-decoration-color:#cda3498c}.segment-switch{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0518329e;border:1px solid #ffffff21;padding:5px}.segment-switch a{color:var(--muted)}.segment-switch a.active{color:var(--navy-950);background:linear-gradient(145deg,#e0ba62,#bd8d2f);box-shadow:0 8px 20px #cda34933}.activity-card-heading em,.status-pill{color:#bdf2d9;background:#18765b4d;border:1px solid #6fd6aa40}.empty-state{color:var(--muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0518327a;border-color:#cda34952}.faq-trigger{color:#fff}.faq-trigger:hover .faq-toggle,.faq-trigger:focus-visible .faq-toggle{color:var(--navy-950);background:var(--gold-soft)}.faq-trigger:focus-visible{outline-offset:-2px;outline:2px solid #f4e7c67a}.faq-item.is-open{border-color:#cda3496b}.faq-item.is-open .faq-toggle{color:var(--navy-950);background:var(--gold);transform:rotate(180deg)}.faq-item.is-open .faq-answer-region{visibility:visible;opacity:1;border-top-color:#ffffff1c;grid-template-rows:1fr;transition-delay:0s}.document-icon{color:var(--navy-950);background:linear-gradient(145deg,#e0ba62,#bd8d2f)}.loading-screen{background:linear-gradient(#051832c7, #051832e0), url(/rich-menu-background.png) center / cover, var(--navy-950)}.main-content.rich-menu-main{width:100%;max-width:none;margin:0;padding:0}.rich-menu-test-page{min-height:100svh;padding:max(12px, env(safe-area-inset-top)) 0 max(12px, env(safe-area-inset-bottom));place-content:center;justify-items:center;display:grid}.rich-menu-preview{aspect-ratio:2500/1686;background:var(--navy-950);width:min(100vw,1040px);position:relative;overflow:hidden;box-shadow:0 28px 80px #0007166b}.rich-menu-preview>img{object-fit:contain;width:100%;height:100%;display:block}.rich-menu-hotspot{color:#0000;background:0 0;border:2px solid #0000;border-radius:clamp(6px,1.7vw,18px);outline:none;margin:0;padding:0;text-decoration:none;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .12s;display:block;position:absolute}.rich-menu-hotspot>span:not(.sr-only){display:none}.rich-menu-hotspot:hover,.rich-menu-hotspot:focus-visible{background:#f4e7c614;border-color:#f4e7c6db;box-shadow:inset 0 0 0 2px #05183247}.rich-menu-hotspot:active{background:#cda3492e;transform:scale(.985)}.rich-menu-test-hint{color:var(--muted);letter-spacing:.04em;text-align:center;margin:13px 16px 0;font-size:11px;font-weight:700}@media (width>=680px){.page-stack{gap:28px}.menu-card,.activity-card{min-height:150px}.rich-menu-preview{border:1px solid #cda3493d;border-radius:18px}}
