*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #04091e;--text: #ffffff;--subtext: rgba(255, 255, 255, .6);--gold: #c4a06a;--gold-dim: rgba(196, 160, 106, .55);--divider: rgba(180, 200, 240, .1);--serif: "Cormorant Garamond", "Garamond", "Times New Roman", serif;--sans: "Montserrat", "Helvetica Neue", Helvetica, sans-serif}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 48px;background:#0c364e;transition:padding .4s,border-color .4s}.nav.scrolled{padding:10px 48px;border-bottom:1px solid var(--divider)}.nav--home{background:transparent}.nav--home.scrolled{background:#0c364e}.nav-logo{display:flex;align-items:center;opacity:.92;transition:opacity .3s}.nav-logo:hover{opacity:1;color:inherit}.nav-links{display:flex;align-items:center;gap:44px;list-style:none}.nav-links a{font-size:10px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--text);transition:color .3s;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-3px;left:0;right:100%;height:1px;background:var(--gold);transition:right .35s ease}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-links a:hover:after,.nav-links a.active:after{right:0}.hero{position:relative;width:100%;height:100vh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:72px}.hero-content{position:relative;z-index:10;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px;opacity:0;transform:translateY(18px);transition:opacity 1.2s ease,transform 1.2s ease;background:#0c355180;border-radius:14px;padding:36px 52px}.hero-content.visible{opacity:1;transform:translateY(0)}.hero-tagline{font-size:11px;letter-spacing:.35em;text-transform:uppercase;color:#fff}.hero-cta{display:inline-block;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.75);padding:13px 38px;transition:background .3s,color .3s,border-color .3s}.hero-cta:hover{background:var(--gold);color:var(--bg);border-color:var(--gold)}.assoc-bar{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:28px;z-index:10;opacity:0;transition:opacity 1.5s ease .5s}.assoc-bar.visible{opacity:1}.assoc-bar span{font-size:8.5px;letter-spacing:.25em;text-transform:uppercase;color:var(--subtext)}.assoc-dot{width:3px;height:3px;border-radius:50%;background:var(--divider);flex-shrink:0}.page-hero{min-height:55vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:160px 10vw 80px;border-bottom:1px solid var(--divider);position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 30% 60%,rgba(80,120,220,.07) 0%,transparent 65%);pointer-events:none}.page-hero-logo{position:absolute;right:10vw;bottom:80px;height:80px;width:auto;opacity:1;pointer-events:none}.page-hero--vision{min-height:100vh;flex-direction:row;align-items:center;justify-content:space-between;padding-top:100px}@keyframes logo-drift{0%{transform:translate(0);opacity:0}to{transform:translate(-25vw);opacity:.75}}.page-hero--vision .page-hero-logo{position:static;height:160px;flex-shrink:0;animation:logo-drift 18s ease-out 1 forwards}.page-kicker{font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}.page-headline{font-family:var(--serif);font-size:clamp(52px,7vw,88px);font-weight:300;line-height:1.05;letter-spacing:.02em;max-width:820px}.section{padding:100px 10vw}.section+.section{border-top:1px solid var(--divider)}.section-grid{display:grid;grid-template-columns:1fr 1.8fr;gap:60px 80px;align-items:start}.section-label{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);padding-top:8px}.section-body p{font-family:var(--serif);font-size:clamp(18px,2.2vw,26px);font-weight:300;line-height:1.7;color:var(--text);margin-bottom:28px;opacity:.9}.section-body p:last-child{margin-bottom:0}.section-body .accent{font-style:italic;color:var(--gold);opacity:1}.manifesto{padding:120px 10vw;background:#78a0ff06;border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);text-align:center}.manifesto-text{font-family:var(--serif);font-size:clamp(28px,4vw,52px);font-weight:300;line-height:1.4;letter-spacing:.03em;max-width:900px;margin:0 auto}.manifesto-text em{color:var(--gold);font-style:normal}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact-info h3{font-family:var(--serif);font-size:22px;font-weight:300;letter-spacing:.05em;margin-bottom:18px}.contact-info p{font-size:13px;line-height:1.9;color:var(--subtext);letter-spacing:.04em;margin-bottom:12px}.contact-info a{color:var(--gold);transition:opacity .2s}.contact-info a:hover{opacity:.75}.contact-form{display:flex;flex-direction:column;gap:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1px}.form-field{position:relative;border:1px solid var(--divider);margin:-1px 0 0 -1px}.form-field.full{grid-column:1 / -1}.form-field label{position:absolute;top:18px;left:22px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--subtext);transition:top .2s,font-size .2s,color .2s;pointer-events:none}.form-field input,.form-field textarea{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--sans);font-size:13px;font-weight:300;letter-spacing:.04em;padding:34px 22px 16px;resize:none;caret-color:var(--gold)}.form-field textarea{min-height:140px}.form-field input:focus~label,.form-field input:not(:placeholder-shown)~label,.form-field textarea:focus~label,.form-field textarea:not(:placeholder-shown)~label{top:10px;font-size:8px;color:var(--gold)}.form-field input::placeholder,.form-field textarea::placeholder{opacity:0}.form-field:focus-within{border-color:#c4a06a73;z-index:1}.form-submit{margin-top:1px;background:transparent;border:1px solid var(--divider);margin-left:-1px;color:var(--text);font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.28em;text-transform:uppercase;padding:22px 40px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background .3s,border-color .3s,color .3s}.form-submit svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;transition:transform .3s}.form-submit:hover{background:var(--gold);border-color:var(--gold);color:var(--bg)}.form-submit:hover svg{transform:translate(5px)}.kf-section{padding:60px 10vw;border-top:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;gap:40px}.kf-text{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--subtext)}.kf-links{display:flex;gap:36px;list-style:none}.kf-links a{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--subtext);transition:color .3s}.kf-links a:hover{color:var(--gold)}footer{padding:32px 10vw;border-top:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-logo{font-family:var(--serif);font-size:18px;font-weight:300;letter-spacing:.2em;color:var(--subtext)}.footer-copy{font-size:9px;letter-spacing:.15em;color:#b4c8f038}.fade-up{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.fade-up.in-view{opacity:1;transform:translateY(0)}@media (max-width: 900px){.nav{padding:22px 28px}.nav.scrolled{padding:16px 28px}.nav-links{gap:28px}.page-hero{padding:120px 6vw 60px}.section{padding:72px 6vw}.section-grid{grid-template-columns:1fr;gap:32px}.section-label{padding-top:0}.manifesto{padding:80px 6vw}.contact-grid{grid-template-columns:1fr;gap:56px}.form-row{grid-template-columns:1fr}.kf-section{flex-direction:column;align-items:flex-start}footer{flex-direction:column;align-items:flex-start;gap:10px}}@media (max-width: 600px){.nav{padding:18px 20px}.nav-links{gap:20px}.assoc-bar{flex-wrap:wrap;gap:10px}}
