.page-hero{color:#fff;background-color:var(--navy);background-image:linear-gradient(180deg, rgba(var(--navy-rgb), .6) 0%, rgba(var(--navy-rgb), .92) 100%), var(--hero-image);padding-top:calc(var(--section-y-sm) + 8px);padding-bottom:calc(var(--section-y-sm) + 8px);background-position:50%;background-size:cover;position:relative;overflow:hidden}.page-hero:before{content:"";pointer-events:none;background-image:var(--dots);background-size:var(--dots-size);position:absolute;top:0;bottom:0;left:0;right:0}.page-hero-content{z-index:2;position:relative}.page-hero h1{color:#fff;letter-spacing:-.03em;max-width:22ch;font-size:clamp(2rem,1.3rem + 3vw,3.5rem);line-height:1.08}.page-hero-body{color:#eeeff1d9;max-width:62ch;font-size:clamp(1rem,.95rem + .35vw,1.2rem)}.page-hero-body>:last-child{margin-bottom:0}.page-hero .eyebrow{align-items:center;gap:.75rem;display:flex}.page-hero .eyebrow:before{content:"";background:var(--gold);flex:none;width:32px;height:1px}.page-hero .eyebrow-gold{color:var(--gold-light)}.page-hero-orb{background:radial-gradient(circle, rgba(var(--gold-rgb), .26) 0%, transparent 65%);z-index:1;pointer-events:none;border-radius:50%;width:440px;height:440px;position:absolute;top:-180px;right:-180px}.breadcrumb-wrap{border-bottom:1px solid var(--line);background:var(--light)}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.15rem .4rem;margin:0;padding-top:10px;padding-bottom:10px;font-size:.82rem;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:.4rem;display:flex}.breadcrumb li+li:before{content:"›";color:var(--muted)}.breadcrumb a,.breadcrumb li>span{align-items:center;min-height:36px;display:inline-flex}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--gold-dark)}.breadcrumb li[aria-current=page]{color:var(--navy);font-weight:500}.loading{text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:.6rem;padding:48px 0;display:flex}.loading-inline{padding:20px 0}.spinner{border:2px solid var(--line);border-top-color:var(--navy);border-radius:50%;flex:none;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton-group{flex-direction:column;gap:.55rem;display:flex}.skeleton-line,.skeleton-circle{background:linear-gradient(90deg, var(--light) 25%, var(--skeleton-hi) 50%, var(--light) 75%);background-size:200% 100%;border-radius:6px;animation:1.4s ease-in-out infinite shimmer;display:block}.skeleton-line{height:12px}.skeleton-line:last-child{width:60%}.skeleton-circle{border-radius:50%;width:44px;height:44px;margin-bottom:.9rem}@keyframes shimmer{to{background-position:-200% 0}}.error-state{border:1px solid var(--red);border-radius:var(--radius);background:var(--error-bg);border-left-width:4px;align-items:flex-start;gap:.9rem;padding:1.15rem;display:flex}.error-state h3{color:var(--error-fg);margin-bottom:.25rem;font-size:1rem}.error-state p{margin-bottom:.8rem}.error-state-icon{color:var(--red);flex:none}.error-state-icon svg{width:24px;height:24px}.empty-state{text-align:center;border:1px dashed var(--line);border-radius:var(--radius);background:var(--light);padding:32px 20px}.empty-state-icon{border:1px solid var(--line);width:48px;height:48px;color:var(--muted);background:#fff;border-radius:50%;justify-content:center;align-items:center;margin-bottom:.75rem;display:inline-flex}.empty-state-icon svg{width:22px;height:22px}.empty-state h3{font-size:1.05rem}.empty-state p{max-width:46ch;margin-left:auto;margin-right:auto}.link-arrow{color:var(--gold-dark);align-items:center;gap:.35rem;font-size:.92rem;font-weight:600;display:inline-flex}.link-arrow svg{width:16px;height:16px;transition:transform .15s}a.link-arrow:hover svg{transform:translate(3px)}.toast-stack{z-index:90;left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;gap:.5rem;display:flex;position:fixed}.toast{pointer-events:auto;border-radius:var(--radius-sm);background:var(--navy);color:#fff;box-shadow:var(--shadow);align-items:flex-start;gap:.6rem;padding:.8rem .9rem;font-size:.9rem;line-height:1.4;animation:.18s ease-out toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.toast span{flex:1}.toast button{color:inherit;cursor:pointer;opacity:.8;background:0 0;border:0;flex:none;margin:-2px;padding:2px;line-height:0}.toast button:hover{opacity:1}.toast button svg{width:18px;height:18px}.toast-success{background:var(--green)}.toast-error{background:var(--red)}@media (min-width:640px){.toast-stack{max-width:380px;bottom:20px;left:auto;right:20px}}.modal-backdrop{z-index:95;background:rgba(var(--navy-rgb), .5);justify-content:center;align-items:flex-end;padding:0;animation:.15s ease-out fade-in;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{-webkit-overflow-scrolling:touch;border-radius:var(--radius) var(--radius) 0 0;width:100%;max-height:92dvh;padding:1.15rem;padding-bottom:calc(1.15rem + env(safe-area-inset-bottom));animation:.2s ease-out sheet-up;overflow-y:auto}@keyframes sheet-up{0%{transform:translateY(16px)}to{transform:none}}.modal:focus{outline:none}.modal-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.modal-head h3{margin:0}.modal-close{cursor:pointer;color:var(--muted);width:var(--tap);height:var(--tap);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:-10px -10px 0 0;display:inline-flex}.modal-close:hover{color:var(--navy)}.modal-close svg{width:22px;height:22px}.modal-desc{margin:.4rem 0 0}.modal-body{margin-top:1rem}.modal-foot{flex-direction:column-reverse;gap:.6rem;margin-top:1.2rem;display:flex}.modal-foot .btn{width:100%}@media (min-width:560px){.modal-backdrop{align-items:center;padding:24px}.modal{border-radius:var(--radius);max-width:480px;max-height:86dvh;padding-bottom:1.5rem}.modal-foot{flex-direction:row;justify-content:flex-end}.modal-foot .btn{width:auto}}@media (min-width:768px){.page-hero{padding-top:calc(var(--section-y) + 8px);padding-bottom:calc(var(--section-y) + 8px)}.page-hero-orb{width:620px;height:620px;top:-260px;right:-200px}.empty-state{padding:48px 24px}}
