:root{--xp-ink:#101317;--xp-navy:#071522;--xp-ivory:#f3efe6;--xp-paper:#fbf8f1;--xp-gold:#a9823f;--xp-gold-dark:#76591f;--xp-line:rgba(16,19,23,.17);--xp-muted:#625f58;--xp-red:#933a31;--xp-green:#315f48;--xp-serif:Georgia,"Times New Roman",serif;--xp-sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--xp-mono:ui-monospace,"SFMono-Regular",Consolas,monospace}
*{box-sizing:border-box}
.xp-body{margin:0;background:var(--xp-ivory);color:var(--xp-ink);font:16px/1.55 var(--xp-sans);-webkit-font-smoothing:antialiased}
.xp-body a:not(.xp-button):not(.xp-utility):not(.xp-skip){color:inherit}
.xp-skip{position:fixed;z-index:1000;top:12px;left:12px;display:inline-flex;align-items:center;min-height:44px;padding:.7rem 1rem;background:var(--xp-ink);color:#fff;transform:translateY(-180%)}
.xp-skip:focus{transform:none}
.xp-header{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:76px;padding:0 clamp(1.25rem,4vw,4rem);border-bottom:1px solid var(--xp-line);background:rgba(243,239,230,.96);backdrop-filter:blur(18px)}
.xp-brand{text-decoration:none;font:600 1.25rem var(--xp-serif);letter-spacing:.015em}
.xp-brand small{display:block;margin-top:.25rem;color:var(--xp-gold-dark);font:700 .58rem var(--xp-sans);letter-spacing:.16em;text-transform:uppercase}
.xp-nav{display:flex;gap:1.4rem;justify-content:center}
.xp-nav a,.xp-utility{font-size:.76rem;font-weight:700;letter-spacing:.055em;text-decoration:none;text-transform:uppercase}
.xp-utility{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;background:var(--xp-ink);color:#fff}
.xp-body .xp-button--primary,.xp-body .xp-button--primary:visited,.xp-body .xp-utility,.xp-body .xp-utility:visited,.xp-body .xp-skip,.xp-body .xp-skip:visited{color:#fff}
.xp-main{width:min(1380px,calc(100vw - 3rem));min-width:0;margin:auto}
.xp-breadcrumb{display:flex;gap:.55rem;min-width:0;padding:1.2rem 0;color:var(--xp-muted);font-size:.74rem;overflow-wrap:anywhere}
.xp-breadcrumb a{text-decoration:none}
.xp-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.55fr);gap:clamp(2rem,8vw,8rem);align-items:end;min-width:0;min-height:560px;padding:clamp(4rem,9vw,8rem) 0;border-bottom:1px solid var(--xp-line)}
.xp-hero>*{min-width:0}
.xp-kicker{margin:0 0 1.2rem;color:var(--xp-gold-dark);font-size:.69rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.xp-hero h1{max-width:950px;margin:0;font:400 clamp(3.4rem,7.7vw,8rem)/.88 var(--xp-serif);letter-spacing:-.05em;text-wrap:balance;overflow-wrap:anywhere}
.xp-lede{max-width:780px;margin:2rem 0 0;color:#3f3d38;font:400 clamp(1.25rem,2vw,2rem)/1.3 var(--xp-serif);overflow-wrap:anywhere}
.xp-actions{display:flex;flex-wrap:wrap;gap:.7rem;min-width:0;margin-top:2rem}
.xp-button{display:inline-flex;align-items:center;justify-content:space-between;max-width:100%;min-height:46px;padding:.75rem 1.05rem;border:1px solid var(--xp-ink);text-align:center;text-decoration:none;font-size:.73rem;font-weight:800;letter-spacing:.04em;overflow-wrap:anywhere}
.xp-button--primary{background:var(--xp-ink);color:#fff}
.xp-body .xp-button:hover,.xp-body .xp-button:active{border-color:var(--xp-gold);background:var(--xp-gold);color:var(--xp-ink)}
.xp-button:focus-visible,.xp-utility:focus-visible,.xp-skip:focus-visible,a.xp-card:focus-visible{outline:3px solid var(--xp-gold);outline-offset:3px}
.xp-status{min-width:0;padding:1.5rem;border:1px solid var(--xp-line);background:var(--xp-paper)}
.xp-status span{display:inline-block;margin-bottom:1rem;padding:.3rem .55rem;border:1px solid var(--xp-gold);color:var(--xp-gold-dark);font:.64rem var(--xp-mono)}
.xp-status strong{display:block;font:500 1.65rem var(--xp-serif)}
.xp-status p{margin:.7rem 0 0;color:var(--xp-muted);font-size:.84rem}
.xp-boundary{min-width:0;margin:2rem 0 0;padding:1.1rem 1.3rem;border-left:4px solid var(--xp-gold);background:var(--xp-paper);font-size:.84rem;overflow-wrap:anywhere}
.xp-boundary strong{display:block;margin-bottom:.25rem;letter-spacing:.045em}
.xp-section{min-width:0;padding:clamp(4rem,8vw,7rem) 0;border-bottom:1px solid var(--xp-line)}
.xp-section-head{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,8vw,8rem);min-width:0;margin-bottom:2.8rem}
.xp-section-head>*{min-width:0}
.xp-section h2{margin:0;font:400 clamp(2.5rem,5vw,5rem)/.95 var(--xp-serif);letter-spacing:-.04em;text-wrap:balance;overflow-wrap:anywhere}
.xp-section-head>p{align-self:end;margin:0;color:var(--xp-muted);font:400 clamp(1.05rem,1.6vw,1.4rem)/1.45 var(--xp-serif)}
.xp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;min-width:0;border:1px solid var(--xp-line);background:var(--xp-line)}
.xp-card{min-width:0;min-height:220px;padding:1.5rem;background:var(--xp-paper);overflow-wrap:anywhere}
a.xp-card{text-decoration:none}
.xp-card b{display:block;margin:.25rem 0 1.5rem;color:var(--xp-gold-dark);font:.68rem var(--xp-mono);letter-spacing:.08em;text-transform:uppercase}
.xp-card h3{margin:0 0 .8rem;font:500 1.55rem/1.08 var(--xp-serif)}
.xp-card p{margin:0;color:var(--xp-muted);font-size:.9rem}
.xp-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--xp-line)}
.xp-list li{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--xp-line)}
.xp-list span{color:var(--xp-gold-dark);font:.7rem var(--xp-mono)}
.xp-list p{margin:0;overflow-wrap:anywhere}
.xp-dual{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1rem,4vw,4rem);min-width:0}
.xp-panel{min-width:0;padding:clamp(1.4rem,3vw,2.5rem);border:1px solid var(--xp-line);background:var(--xp-paper);overflow-wrap:anywhere}
.xp-panel h3{margin:0 0 1rem;font:500 1.8rem var(--xp-serif)}
.xp-journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;border:1px solid var(--xp-line)}
.xp-journey li{min-width:0;min-height:150px;padding:1.2rem;border-right:1px solid var(--xp-line);background:var(--xp-paper)}
.xp-journey li:last-child{border-right:0}
.xp-journey span{color:var(--xp-gold-dark);font:.65rem var(--xp-mono)}
.xp-journey strong{display:block;margin-top:2.6rem;font:500 1.25rem var(--xp-serif);overflow-wrap:anywhere}
.xp-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;min-width:0;border:1px solid var(--xp-line);background:var(--xp-line)}
.xp-meta div{min-width:0;padding:1.1rem 1.3rem;background:var(--xp-paper)}
.xp-meta dt{color:var(--xp-muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.xp-meta dd{margin:.45rem 0 0;font-family:var(--xp-mono);font-size:.78rem;overflow-wrap:anywhere}
.xp-footer{margin-top:6rem;padding:3rem clamp(1.25rem,4vw,4rem);background:var(--xp-navy);color:#d9d5cc}
.xp-footer-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;max-width:1380px;margin:auto}
.xp-footer strong{font:500 1.35rem var(--xp-serif)}
.xp-footer p{max-width:720px;margin:.5rem 0 0;color:#aaa59b;font-size:.78rem}
.xp-footer nav{display:flex;gap:1rem;align-items:start}
.xp-footer a{font-size:.75rem;text-decoration:none}
.app-body{background:#eeeae1}
.app-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:0 1.5rem;background:var(--xp-navy);color:#fff}
.app-header .xp-brand small{color:#cfb982}
.app-header nav{display:flex;gap:1.1rem}
.app-header nav a{font-size:.72rem;text-decoration:none}
.app-auth{font-size:.72rem;color:#cfcbc2}
.app-layout{display:grid;grid-template-columns:230px minmax(0,1fr);min-width:0;min-height:calc(100vh - 64px)}
.app-side{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:1.5rem;border-right:1px solid var(--xp-line);background:var(--xp-paper)}
.app-side nav{display:grid;gap:.25rem}
.app-side .app-utility{margin-top:auto}
.app-side a{padding:.65rem .75rem;text-decoration:none;font-size:.78rem}
.app-side a[aria-current=page]{background:#e6dcc7;font-weight:800}
.app-main{width:min(1100px,calc(100vw - 280px));min-width:0;padding:clamp(2rem,5vw,5rem);overflow-wrap:anywhere}
.app-main h1{margin:.15rem 0 1rem;font:400 clamp(2.7rem,6vw,5.5rem)/.92 var(--xp-serif);letter-spacing:-.04em;overflow-wrap:anywhere}
.app-main h2{font:500 2rem var(--xp-serif)}
.app-main .eyebrow{margin:0 0 1rem;color:var(--xp-gold-dark);font-size:.69rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.app-main .lede{max-width:760px;color:#49463f;font:1.25rem/1.4 var(--xp-serif)}
.app-main .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:1rem;margin:2rem 0;border:0;background:transparent}
.app-main .card{position:static;display:block;min-width:0;min-height:0;padding:1.3rem;border:1px solid var(--xp-line);background:var(--xp-paper);text-decoration:none;overflow-wrap:anywhere}
.app-main .card strong,.app-main .card b{display:block;margin:.35rem 0}
.app-main .card p{color:var(--xp-muted)}
.app-main .badge,.app-main .rail span{display:inline-flex;max-width:100%;padding:.3rem .55rem;border:1px solid var(--xp-gold);font:.65rem var(--xp-mono);overflow-wrap:anywhere}
.app-main .rail{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0}
.app-main .next{margin:1.6rem 0;padding:1.2rem 1.4rem;border-left:4px solid var(--xp-gold);background:var(--xp-paper)}
.app-main .next b{display:block}
.app-main .button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:44px;margin:.5rem .5rem .5rem 0;padding:.75rem 1rem;border:1px solid var(--xp-ink);background:var(--xp-ink);color:#fff;text-align:center;text-decoration:none;font-size:.76rem;font-weight:800;overflow-wrap:anywhere}
.app-main .button.alt{background:transparent;color:var(--xp-ink)}
.app-main .button:focus-visible,.app-main .card:focus-visible,.app-header a:focus-visible,.app-side a:focus-visible{outline:3px solid var(--xp-gold);outline-offset:3px}
.app-main .fine{color:var(--xp-muted);font-size:.8rem}
.app-context{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.45rem 1rem;margin:0 0 2rem;padding:1rem 1.2rem;border:1px solid var(--xp-line);background:#071522;color:#f3efe6;font-size:.76rem}
.app-context b{color:#d4b15c}.app-context code,.app-context span{min-width:0;overflow-wrap:anywhere}
@media(max-width:1120px){.xp-hero{grid-template-columns:1fr;min-height:auto}}
@media(max-width:900px){.xp-header{grid-template-columns:1fr auto}.xp-nav{display:none}.xp-grid{grid-template-columns:1fr 1fr}.xp-section-head{grid-template-columns:1fr}.xp-journey{grid-template-columns:1fr}.xp-journey li{min-height:auto;border-right:0;border-bottom:1px solid var(--xp-line)}.xp-journey strong{margin-top:.8rem}.app-layout{display:block}.app-side{display:none}.app-main{width:auto}.app-header nav{display:none}}
@media(max-width:620px){.xp-main{width:min(100% - 2rem,1380px)}.xp-header{padding-inline:1rem}.xp-utility{min-height:44px;padding:.6rem .7rem}.xp-hero h1{font-size:clamp(2.75rem,14vw,3.35rem)}.xp-actions{display:grid;grid-template-columns:1fr}.xp-actions .xp-button{width:100%;justify-content:center;white-space:normal}.xp-grid,.xp-dual,.xp-meta{grid-template-columns:1fr}.xp-footer-inner{grid-template-columns:1fr}.xp-footer nav{flex-wrap:wrap}.app-main{padding-inline:1rem}.app-main .button{width:100%;margin:.5rem 0;white-space:normal}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
