:root {
  --navy:   #0D1B2A;
  --navy2:  #1B3A5C;
  --navy3:  #080f18;
  --steel:  #2E5D8E;
  --gold:   #C9A84C;
  --gold2:  #E8C97A;
  --accent: #00A8E8;
  --cream:  #FFFDF5;
  --warm:   #F8F4EC;
  --dim:    rgba(255,255,255,.55);
  --mid:    rgba(255,255,255,.75);
  --green:  #1A6B3A;
  --ease:   cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Barlow',sans-serif;background:var(--navy3);color:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");opacity:.025;pointer-events:none;z-index:9999}

/* CURTAIN */
#page-curtain{position:fixed;inset:0;background:var(--navy3);z-index:9998;transform-origin:bottom;animation:curtain .9s var(--ease) .1s forwards}
@keyframes curtain{from{transform:scaleY(1)}to{transform:scaleY(0)}}

/* STICKY CTA */
.sticky-cta{display:none;position:fixed;bottom:1.5rem;right:1.5rem;z-index:700;font-family:'Barlow Condensed',sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:.9rem 1.5rem;text-decoration:none;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 100%,6px 100%);transition:transform .2s,box-shadow .2s;box-shadow:0 8px 30px rgba(0,0,0,.4)}
.sticky-cta:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,.5)}
@media(max-width:960px){.sticky-cta{display:block}}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:800;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.5rem,5vw,4rem);transition:background .5s,border-color .5s;border-bottom:1px solid transparent}
nav.scrolled{background:rgba(8,15,24,.96);backdrop-filter:blur(16px);border-bottom-color:rgba(201,168,76,.15)}
.nav-logo{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.4rem;letter-spacing:.14em;color:var(--gold);text-decoration:none;display:flex;align-items:center;gap:.6rem}
.nav-logo span{color:rgba(255,255,255,.45);font-weight:300;font-size:.85rem;letter-spacing:.08em}
.nav-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:blink 2s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{font-family:'Barlow Condensed',sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);text-decoration:none;transition:color .2s;position:relative;padding-bottom:2px}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav-links a:hover{color:#fff}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta{font-family:'Barlow Condensed',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:.55rem 1.4rem;text-decoration:none;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 100%,8px 100%);transition:background .2s,transform .2s,box-shadow .2s}
.nav-cta:hover{background:var(--gold2);transform:translateY(-1px);box-shadow:0 4px 20px rgba(201,168,76,.35)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}
.hamburger span{display:block;width:22px;height:1.5px;background:var(--gold);transition:all .3s}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.mobile-nav{display:none;position:fixed;top:68px;left:0;right:0;bottom:0;background:rgba(8,15,24,.98);backdrop-filter:blur(20px);flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;z-index:799;opacity:0;pointer-events:none;transition:opacity .3s}
.mobile-nav.open{display:flex;opacity:1;pointer-events:all}
.mobile-nav a{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:600;color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s}
.mobile-nav a:hover{color:var(--gold)}
.mobile-cta{font-family:'Barlow Condensed',sans-serif !important;font-size:.85rem !important;font-weight:700 !important;letter-spacing:.15em !important;text-transform:uppercase !important;color:var(--navy) !important;background:var(--gold);padding:.9rem 2.5rem !important}

/* HERO */
#hero{min-height:100vh;min-height:100dvh;display:flex;align-items:center;position:relative;overflow:hidden;padding:0 clamp(1.5rem,5vw,4rem)}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 90% 70% at 65% 35%,rgba(27,58,92,.55) 0%,transparent 65%),radial-gradient(ellipse 50% 60% at 15% 85%,rgba(201,168,76,.06) 0%,transparent 55%),linear-gradient(165deg,#080f18 0%,#0d1b2a 60%,#060c12 100%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 75%)}
.hero-glow{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none}
.g1{width:600px;height:600px;background:rgba(0,168,232,.05);top:-150px;right:-100px;animation:fg 10s ease-in-out infinite}
.g2{width:500px;height:500px;background:rgba(201,168,76,.04);bottom:-100px;left:25%;animation:fg 14s ease-in-out infinite reverse}
@keyframes fg{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(20px,-30px) scale(1.1)}}
.hero-content{position:relative;z-index:10;max-width:760px;padding-top:68px}
.hero-eyebrow{font-family:'Barlow Condensed',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:1rem;margin-bottom:2rem;opacity:0;animation:ru .9s var(--ease) .8s forwards}
.ey-line{width:36px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;animation:el .8s var(--ease) 1s forwards}
@keyframes el{to{transform:scaleX(1)}}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(3.2rem,7.5vw,6.5rem);font-weight:700;line-height:.96;letter-spacing:-.02em;margin-bottom:1.8rem;opacity:0;animation:ru .9s var(--ease) 1s forwards}
.t-gold{color:var(--gold);display:block}
.t-italic{font-weight:300;font-style:italic;display:block}
.hero-sub{font-size:clamp(.95rem,1.8vw,1.1rem);font-weight:300;line-height:1.8;color:var(--mid);max-width:520px;margin-bottom:2.8rem;opacity:0;animation:ru .9s var(--ease) 1.2s forwards}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;opacity:0;animation:ru .9s var(--ease) 1.4s forwards}
.btn-primary{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:1rem 2.2rem;text-decoration:none;border:none;cursor:pointer;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 100%,10px 100%);transition:background .25s,transform .25s,box-shadow .25s;display:inline-block}
.btn-primary:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 8px 32px rgba(201,168,76,.35)}
.btn-ghost{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.65);background:transparent;padding:1rem 2.2rem;text-decoration:none;cursor:pointer;border:1px solid rgba(255,255,255,.18);transition:border-color .25s,color .25s,transform .25s;display:inline-block}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.hero-right{position:absolute;right:clamp(2rem,6vw,6rem);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:2.5rem;text-align:right;opacity:0;animation:rl 1s var(--ease) 1.6s forwards}
.h-stat{border-right:2px solid rgba(201,168,76,.4);padding-right:1.25rem}
.h-num{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:700;color:var(--gold);line-height:1}
.h-lbl{font-family:'Barlow Condensed',sans-serif;font-size:.65rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:.3rem}
.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.6rem;opacity:0;animation:ru 1s var(--ease) 2s forwards}
.hero-scroll span{font-family:'Barlow Condensed',sans-serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.3)}
.scroll-bar{width:1px;height:52px;background:linear-gradient(to bottom,var(--gold),transparent);animation:sp 2.2s ease-in-out infinite}
@keyframes sp{0%{transform:scaleY(0);transform-origin:top;opacity:0}45%{transform:scaleY(1);transform-origin:top;opacity:1}50%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom;opacity:0}}
@keyframes ru{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}
@keyframes rl{from{opacity:0;transform:translate(24px,-50%)}to{opacity:1;transform:translate(0,-50%)}}

/* TICKER */
.ticker-strip{background:var(--gold);overflow:hidden;padding:.65rem 0}
.ticker-track{display:flex;gap:0;animation:tr 35s linear infinite;white-space:nowrap}
.ti{font-family:'Barlow Condensed',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);padding:0 2.5rem;display:flex;align-items:center;gap:1.2rem}
.ti::after{content:'◆';font-size:.4rem}
@keyframes tr{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* SECTION */
.si{max-width:1160px;margin:0 auto;padding:clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,4rem)}
.ey{font-family:'Barlow Condensed',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.9rem;margin-bottom:1.1rem}
.ey::before{content:'';display:block;width:28px;height:1px;background:var(--gold)}
.ey.center{justify-content:center}.ey.center::before{display:none}
.ey.dark{color:var(--navy2)}.ey.dark::before{background:var(--navy2)}
.st{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4.5vw,3.4rem);font-weight:700;line-height:1.08;margin-bottom:1.4rem}
.st.dark{color:var(--navy)}.st.center{text-align:center}
.sb{font-size:1.02rem;line-height:1.78;font-weight:300;color:var(--mid);max-width:600px}
.sb.dark{color:rgba(13,27,42,.65)}.sb.center{text-align:center}.sb.mxauto{margin-left:auto;margin-right:auto}
.mt1{margin-top:1rem}.mt2{margin-top:2rem}.mt0{margin-top:0}
.gc{color:var(--gold)}.ac{color:var(--accent)}

/* ABOUT */
#about{background:var(--navy)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.threat-list{display:flex;flex-direction:column;gap:.6rem}
.threat-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.055);font-size:.88rem;color:var(--mid);transition:border-color .25s,background .25s}
.threat-item:hover{border-color:rgba(201,168,76,.25);background:rgba(201,168,76,.04)}
.t-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.t-icon svg{width:14px;height:14px}
.decl-quote{position:relative;padding:2.5rem 2.5rem 2.5rem 3rem;border-left:3px solid var(--gold);background:rgba(201,168,76,.03);margin-bottom:1.5rem}
.decl-quote::before{content:'\201C';font-family:'Cormorant Garamond',serif;font-size:7rem;color:var(--gold);opacity:.12;position:absolute;top:-1.5rem;left:1rem;line-height:1;pointer-events:none}
.decl-quote blockquote{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:400;font-style:italic;line-height:1.55;color:var(--cream)}
.decl-quote cite{display:block;margin-top:1.2rem;font-family:'Barlow Condensed',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-style:normal}
.info-box{padding:1.6rem;background:rgba(201,168,76,.04);border:1px solid rgba(201,168,76,.1)}
.info-p{font-size:.88rem;line-height:1.75;color:rgba(255,255,255,.55)}
.not-panel{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);padding:2rem}
.not-h{font-family:'Barlow Condensed',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:1.2rem}
.not-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.not-item{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:rgba(255,255,255,.45)}
.nx::before{content:'×';color:rgba(200,80,80,.6);font-size:1.1rem;font-weight:700}

/* PILLARS */
#pillars{background:linear-gradient(180deg,var(--navy) 0%,var(--navy3) 100%)}
.pillars-head{text-align:center;margin-bottom:4rem}
.pillar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.5px;background:rgba(201,168,76,.1);outline:1.5px solid rgba(201,168,76,.1)}
.pc{background:var(--navy);padding:2.2rem 2rem;position:relative;overflow:hidden;cursor:default;transition:background .35s}
.pc::before{content:'';position:absolute;inset:0;background:linear-gradient(125deg,rgba(201,168,76,.07) 0%,transparent 55%);opacity:0;transition:opacity .35s}
.pc:hover{background:#111f30}.pc:hover::before{opacity:1}
.pn{font-family:'Cormorant Garamond',serif;font-size:5rem;font-weight:700;color:rgba(201,168,76,.07);line-height:1;margin-bottom:.6rem;transition:color .35s;user-select:none}
.pc:hover .pn{color:rgba(201,168,76,.16)}
.pname{font-family:'Barlow Condensed',sans-serif;font-size:.92rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem}
.pt{font-size:.88rem;line-height:1.68;color:rgba(255,255,255,.55);font-weight:300}
.pbar{position:absolute;bottom:0;left:0;right:0;height:2px;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.pc:hover .pbar{transform:scaleX(1)}
.p-ripple{position:absolute;border-radius:50%;background:rgba(201,168,76,.08);transform:scale(0);pointer-events:none;animation:rip .7s var(--ease) forwards}
@keyframes rip{to{transform:scale(8);opacity:0}}

/* FARREACH */
#farreach{background:var(--navy3);overflow:hidden}
.fr-wrap{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.orbital-scene{position:relative;width:100%;padding-bottom:100%}
.orbital-canvas{position:absolute;inset:0;width:100%;height:100%}
.phases{display:flex;flex-direction:column;gap:1px;background:rgba(255,255,255,.06);margin-top:2.5rem}
.ph{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:1.2rem;padding:1rem 1.2rem;background:var(--navy3);border-left:2px solid transparent;transition:border-color .3s,background .3s;cursor:default}
.ph:hover{border-left-color:var(--gold);background:rgba(255,255,255,.03)}
.ph-lbl{font-family:'Barlow Condensed',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}
.ph-name{font-size:.9rem;font-weight:400;color:#fff}
.ph-s{font-family:'Barlow Condensed',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .55rem;white-space:nowrap}
.active{color:#4ade80;border:1px solid rgba(74,222,128,.3)}
.planned{color:var(--accent);border:1px solid rgba(0,168,232,.3)}
.future{color:rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.1)}
.accent-note{margin-top:1.5rem;padding:1.1rem 1.25rem;background:rgba(0,168,232,.05);border-left:2px solid rgba(0,168,232,.35);font-size:.83rem;line-height:1.7;color:rgba(255,255,255,.5)}

/* JOIN */
#join{background:var(--cream);color:var(--navy)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:4rem}
.steps::before{content:'';position:absolute;top:2.7rem;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,var(--gold) 30%,var(--gold) 70%,transparent)}
.step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 1.2rem;transition:transform .3s var(--ease)}
.step:hover{transform:translateY(-6px)}
.step-c{width:56px;height:56px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;margin-bottom:1.4rem;position:relative;z-index:1;box-shadow:0 4px 20px rgba(13,27,42,.18)}
.step-c span{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:700;color:var(--gold)}
.step-t{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin-bottom:.6rem}
.step-d{font-size:.85rem;line-height:1.65;color:rgba(13,27,42,.55);font-weight:300}
.rights-h{font-family:'Barlow Condensed',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--navy2);margin-top:4.5rem;margin-bottom:1.5rem}
.rights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.right-c{padding:1.4rem 1.2rem 1.4rem 1.5rem;background:rgba(13,27,42,.05);border-left:3px solid var(--navy2);transition:border-left-color .3s}
.right-c:hover{border-left-color:var(--gold)}
.r-icon{width:36px;height:36px;margin-bottom:1rem;background:var(--navy);border-radius:4px;display:flex;align-items:center;justify-content:center}
.r-icon svg{width:18px;height:18px}
.r-title{font-family:'Barlow Condensed',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin-bottom:.4rem}
.r-desc{font-size:.85rem;line-height:1.6;color:rgba(13,27,42,.55)}

/* FAQ */
#faq{background:var(--navy)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.06);margin-top:3.5rem}
.faq-item{background:var(--navy)}
.faq-q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:1.5rem 1.8rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;transition:background .25s}
.faq-q:hover{background:rgba(255,255,255,.03)}
.faq-qt{font-family:'Barlow Condensed',sans-serif;font-size:.92rem;font-weight:600;letter-spacing:.04em;color:#fff;text-align:left;line-height:1.4}
.faq-ch{width:20px;height:20px;flex-shrink:0;border:1px solid rgba(201,168,76,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .35s var(--ease),background .25s}
.faq-ch svg{width:10px;height:10px}
.faq-item.open .faq-ch{transform:rotate(180deg);background:rgba(201,168,76,.12)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease),padding .35s;padding:0 1.8rem}
.faq-item.open .faq-a{max-height:400px;padding:0 1.8rem 1.5rem}
.faq-a p{font-size:.9rem;line-height:1.75;font-weight:300;color:var(--mid);border-top:1px solid rgba(255,255,255,.06);padding-top:1.2rem}

/* APPLY */
#apply{background:linear-gradient(180deg,var(--navy3) 0%,var(--navy) 100%)}
.apply-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:5rem;align-items:start;margin-top:3.5rem}
.apply-h3{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;color:var(--gold);margin-bottom:1rem}
.apply-p{font-size:.92rem;line-height:1.78;font-weight:300;color:var(--dim);margin-bottom:1.2rem}
.apply-note{padding:1.1rem 1.25rem;background:rgba(201,168,76,.05);border-left:2px solid rgba(201,168,76,.4);font-size:.83rem;line-height:1.65;color:rgba(255,255,255,.45)}
.privacy-note{margin-top:1rem;padding:1rem 1.25rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);font-size:.8rem;line-height:1.65;color:rgba(255,255,255,.35)}
.aura-form{display:flex;flex-direction:column;gap:1.1rem}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fg{display:flex;flex-direction:column;gap:.35rem}
.fl{font-family:'Barlow Condensed',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.fg input,.fg select,.fg textarea{background:rgba(255,255,255,.038);border:1px solid rgba(255,255,255,.09);color:#fff;padding:.82rem 1rem;font-family:'Barlow',sans-serif;font-size:.92rem;font-weight:300;outline:none;width:100%;appearance:none;-webkit-appearance:none;transition:border-color .2s,background .2s;border-radius:0}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:rgba(201,168,76,.6);background:rgba(255,255,255,.055)}
.fg input::placeholder,.fg textarea::placeholder{color:rgba(255,255,255,.22)}
.fg select option{background:#0d1b2a;color:#fff}
.fg textarea{min-height:110px;resize:vertical}
.fck{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}
.fck input[type=checkbox]{width:16px;height:16px;min-width:16px;margin-top:3px;accent-color:var(--gold);cursor:pointer}
.fck span{font-size:.83rem;line-height:1.6;color:rgba(255,255,255,.45)}
.f-submit{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:1rem 2.4rem;border:none;cursor:pointer;align-self:flex-start;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 100%,10px 100%);transition:background .25s,transform .25s,box-shadow .25s}
.f-submit:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 8px 28px rgba(201,168,76,.3)}
.f-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}
.form-success{display:none;text-align:center;padding:3rem 2rem;background:rgba(26,107,58,.08);border:1px solid rgba(26,107,58,.25)}
.form-success.show{display:block}
.form-success h3{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--gold);margin-bottom:1rem}
.form-success p{font-size:.95rem;line-height:1.75;color:var(--dim)}

/* PORTAL */
#portal{background:var(--navy)}
.portal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;margin-top:3rem}
.portal-card{padding:1.8rem;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.02);text-decoration:none;color:inherit;transition:all .3s var(--ease);display:block;position:relative}
.portal-card.active:hover{border-color:rgba(201,168,76,.4);background:rgba(201,168,76,.04);transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.3)}
.portal-card.locked{opacity:.45;cursor:not-allowed}
.p-icon{width:44px;height:44px;margin-bottom:1.1rem;border:1px solid rgba(201,168,76,.2);display:flex;align-items:center;justify-content:center}
.p-icon svg{width:20px;height:20px;fill:none;stroke-linecap:round;stroke-linejoin:round}
.portal-card h3{font-family:'Barlow Condensed',sans-serif;font-size:.88rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}
.portal-card p{font-size:.85rem;line-height:1.65;color:rgba(255,255,255,.45);font-weight:300}
.p-badge{position:absolute;top:1rem;right:1rem;font-family:'Barlow Condensed',sans-serif;font-size:.55rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.2rem .5rem;background:rgba(255,255,255,.06);color:rgba(255,255,255,.3)}
.p-link{display:flex;align-items:center;gap:.4rem;margin-top:1.2rem;font-family:'Barlow Condensed',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);transition:gap .25s}
.portal-card.active:hover .p-link{gap:.7rem}

/* FOOTER */
footer{background:#060d14;border-top:1px solid rgba(201,168,76,.08)}
.fi{max-width:1160px;margin:0 auto;padding:4rem clamp(1.5rem,5vw,4rem) 2.5rem}
.ft{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:2rem}
.flogo{font-family:'Barlow Condensed',sans-serif;font-size:1.5rem;font-weight:800;letter-spacing:.14em;color:var(--gold);display:block;margin-bottom:1rem}
.fbrand p{font-size:.85rem;line-height:1.72;font-weight:300;color:rgba(255,255,255,.35);max-width:260px}
.fcol h4{font-family:'Barlow Condensed',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem}
.fcol ul{list-style:none;display:flex;flex-direction:column;gap:.65rem}
.fcol a{font-size:.85rem;color:rgba(255,255,255,.35);text-decoration:none;transition:color .2s}
.fcol a:hover{color:var(--gold)}
.fb{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:rgba(255,255,255,.2);flex-wrap:wrap;gap:.5rem}
.ftagline{font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(201,168,76,.35)}

/* REVEAL */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.reveal.in{opacity:1;transform:translateY(0)}
.rd1{transition-delay:.1s}.rd2{transition-delay:.2s}.rd3{transition-delay:.3s}.rd4{transition-delay:.4s}

/* RESPONSIVE */
@media(max-width:960px){
  .nav-links,.nav-cta{display:none}
  .hamburger{display:flex}
  .hero-right{display:none}
  .about-grid{grid-template-columns:1fr;gap:3rem}
  .fr-wrap{grid-template-columns:1fr;gap:3rem}
  .apply-grid{grid-template-columns:1fr;gap:3rem}
  .ft{grid-template-columns:1fr 1fr}
  .fbrand{grid-column:1/-1}
  .faq-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr;row-gap:2.5rem}
  .steps::before{display:none}
}
@media(max-width:600px){
  .si{padding:clamp(3rem,8vw,5rem) 1.25rem}
  .steps{grid-template-columns:1fr}
  .f-row{grid-template-columns:1fr}
  .not-grid{grid-template-columns:1fr}
  .ft{grid-template-columns:1fr;gap:2rem}
  .fb{flex-direction:column;text-align:center}
  .hero-title{font-size:2.8rem}
}
