/*
Theme Name: Project Excelsior XCL
Theme URI: https://projectxcel.com
Author: Project Excelsior
Description: Official Project Excelsior (XCL) website with built-in pages and editorial updates.
Version: 1.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: project-excelsior
*/
:root{--bg:#071326;--surface:#0d2039;--surface2:#122b48;--edge:#29415a;--txt:#f2f7ff;--muted:#afc4da;--blue:#6cbcff;--mint:#74e6d4;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--txt);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;line-height:1.65}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid var(--mint);outline-offset:3px}h1,h2,h3{line-height:1.16;letter-spacing:-.035em;margin:0 0 .7em}h1{font-size:clamp(2.9rem,7vw,5.9rem)}h2{font-size:clamp(2rem,4vw,3.4rem)}h3{font-size:1.4rem}p{margin:0 0 1.25em}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(151,190,224,.15);background:rgba(7,19,38,.94);backdrop-filter:blur(16px)}.head-inner{min-height:78px;display:flex;align-items:center;gap:32px;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;color:#fff;font-weight:800;letter-spacing:.045em;line-height:1.15}.brand:hover{text-decoration:none}.brand svg{width:46px;height:46px}.brand small{display:block;font-size:.65rem;letter-spacing:.21em;color:#9db4cf;font-weight:600;margin-top:5px}.nav{display:flex;align-items:center;gap:24px}.nav a{color:#d6e5f6;font-size:.91rem;font-weight:600}.nav a:hover{color:white}.nav .nav-cta{border:1px solid #5eb0fa;border-radius:8px;padding:10px 15px}.menu-toggle{display:none;border:1px solid var(--edge);background:var(--surface);color:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;font-size:1.35rem}.hero{position:relative;overflow:hidden;padding:112px 0 105px;background:radial-gradient(ellipse at 80% 36%,#123b69 0%,transparent 40%),radial-gradient(ellipse at 10% 85%,#123345 0%,transparent 35%)}.hero:after{content:'';position:absolute;right:-190px;top:-200px;width:620px;height:620px;border-radius:50%;border:1px solid #315271;box-shadow:0 0 0 90px #ffffff05,0 0 0 180px #ffffff04;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:42px;align-items:center;position:relative;z-index:1}.eyebrow{display:inline-flex;gap:10px;align-items:center;text-transform:uppercase;letter-spacing:.16em;color:var(--mint);font-weight:800;font-size:.75rem;margin-bottom:23px}.eyebrow:before{content:'';width:8px;height:8px;border-radius:100%;background:var(--mint);box-shadow:0 0 12px var(--mint)}.hero h1 span,.gradient{background:linear-gradient(105deg,#fff 10%,#84bdff 58%,#77e6d1);background-clip:text;-webkit-background-clip:text;color:transparent}.lead{font-size:1.19rem;color:#bdd0e5;max-width:670px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:10px;padding:13px 20px;font-weight:800;font-size:.94rem;border:1px solid transparent;transition:transform .2s,background .2s}.btn:hover{text-decoration:none;transform:translateY(-2px)}.btn-main{color:#071326;background:#74c3ff}.btn-main:hover{background:#ace0ff}.btn-ghost{color:white;border-color:#587797;background:#ffffff08}.btn-ghost:hover{background:#ffffff14}.hero-art{position:relative;display:grid;place-items:center;min-height:360px}.orbit{width:min(100%,365px);aspect-ratio:1;border:1px solid #436e98;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 30px #ffffff05,0 0 0 65px #ffffff03;position:relative}.orbit:before,.orbit:after{content:'';position:absolute;width:13px;height:13px;background:var(--mint);border-radius:50%;top:10%;right:11%;box-shadow:0 0 18px var(--mint)}.orbit:after{top:auto;right:auto;bottom:10%;left:11%;width:8px;height:8px;background:var(--blue)}.xcl-emblem{width:200px;height:200px;filter:drop-shadow(0 14px 40px #3489e577)}.section{padding:96px 0}.section-alt{background:#0a1a30}.section-head{max-width:750px;margin-bottom:36px}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--edge);background:linear-gradient(145deg,#102540,#0b1b31);border-radius:18px;padding:29px;min-width:0}.card .icon{width:48px;height:48px;border:1px solid #3c7299;color:var(--blue);background:#143452;border-radius:13px;display:grid;place-items:center;font-size:1.5rem;margin-bottom:27px}.card h3{margin-bottom:12px}.card p{color:var(--muted)}.card .textlink{font-weight:750}.highlight{border:1px solid #47799b;background:linear-gradient(110deg,#163657,#0c2136);border-radius:24px;padding:clamp(30px,5vw,70px);display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.tag{display:inline-block;padding:5px 10px;font-size:.77rem;letter-spacing:.06em;font-weight:800;text-transform:uppercase;border-radius:99px;border:1px solid #367e83;color:var(--mint);margin-bottom:15px}.phone{background:#081426;border:9px solid #274866;border-radius:35px;width:min(240px,100%);min-height:405px;padding:25px 16px;box-shadow:25px 30px 65px #0005;justify-self:center;transform:rotate(5deg)}.phone-dot{height:8px;width:80px;border-radius:20px;background:#31526c;margin:0 auto 42px}.phone-icon{margin:auto;width:72px;height:72px;background:#173d63;border-radius:20px;display:grid;place-items:center;font-size:1.9rem;color:#8ee4db}.phone-label{text-align:center;margin-top:18px;color:white;font-weight:800}.phone-balance{margin:27px 0;padding:18px;border:1px solid #30536c;border-radius:12px;background:#112b47;text-align:center;font-size:1.4rem;font-weight:800}.phone-balance small{display:block;font-size:.66rem;color:#b1c6db;text-transform:uppercase;letter-spacing:.12em}.fake-dashes{display:grid;gap:11px}.fake-dashes span{height:9px;border-radius:8px;background:#25425f}.fake-dashes span:nth-child(2){width:70%}.fake-dashes span:nth-child(3){width:85%}.notice{border-left:4px solid var(--mint);background:#102840;border-radius:0 12px 12px 0;padding:25px 30px;color:#d7e8f4}.notice p:last-child{margin-bottom:0}.footer{border-top:1px solid var(--edge);padding:55px 0 24px;background:#06101f}.footer-columns{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:48px}.footer a{display:block;margin:8px 0}.footer .brand{display:flex}.fineprint{color:#91aac4;font-size:.79rem}.copyright{border-top:1px solid #24405a;padding-top:22px;margin-top:45px;display:flex;justify-content:space-between;gap:20px;color:#9bb1c7;font-size:.84rem}.page-hero{padding:92px 0 62px;background:radial-gradient(ellipse at 90% 0%,#15375c,transparent 46%)}.page-hero h1{font-size:clamp(2.8rem,6vw,4.8rem);max-width:960px}.prose{max-width:790px}.prose h2{margin-top:55px;font-size:2rem}.prose h3{margin-top:35px}.prose p,.prose li{color:#bed0e0;font-size:1.05rem}.prose ul{padding-left:22px}.prose li{padding-bottom:10px}.resource{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--edge)}.resource strong{display:block;font-size:1.15rem}.resource small{display:block;color:var(--muted);overflow-wrap:anywhere}.post{padding:26px 0;border-bottom:1px solid var(--edge)}.post time{font-size:.82rem;color:var(--mint)}.post h3{margin-top:8px}.small{font-size:.89rem}.site-main{min-height:52vh}.screen-reader-text{position:absolute;left:-9999px}.screen-reader-text:focus{position:static}.wp-block-image img{max-width:100%;height:auto}@media(max-width:920px){.hero-grid,.highlight{grid-template-columns:1fr}.hero-art{min-height:280px}.orbit{width:250px}.xcl-emblem{width:160px;height:160px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{gap:12px}.nav a{font-size:.8rem}}@media(max-width:680px){.menu-toggle{display:block}.nav{display:none;position:absolute;top:78px;left:0;right:0;flex-direction:column;align-items:stretch;padding:20px;background:#09192e;border-bottom:1px solid var(--edge)}.nav.is-open{display:flex}.nav a{font-size:1rem;padding:6px}.hero{padding:72px 0}.hero-art{min-height:230px}.grid,.grid.two,.footer-columns{grid-template-columns:1fr}.section{padding:68px 0}.highlight{padding:28px}.resource{align-items:flex-start;flex-direction:column}.copyright{flex-direction:column}.brand span{font-size:.82rem}.brand svg{width:40px;height:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* XCL development timeline */
.xcl-timeline{position:relative;margin:38px 0 42px;padding-left:37px;border-left:2px solid #426f92}
.xcl-milestone{position:relative;padding:0 0 30px 4px}
.xcl-milestone:last-child{padding-bottom:0}
.xcl-milestone:before{content:"";position:absolute;left:-46px;top:4px;width:14px;height:14px;border:3px solid #071326;border-radius:50%;background:#74e6d4;box-shadow:0 0 0 2px #397c9e}
.xcl-milestone-label{font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;color:#74e6d4;font-weight:800;margin:0 0 9px}
.prose .xcl-milestone h3{font-size:1.48rem;margin:0 0 12px}
.prose .xcl-milestone p{margin:0;max-width:660px}
@media(max-width:680px){.xcl-timeline{padding-left:26px}.xcl-milestone:before{left:-35px}}
