:root { --ink:#00113d; --paper:#fff; --gold:#004fff; --mist:#85b1ff; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Manrope",sans-serif; font-weight:300; }
a { color:inherit; text-decoration:none; }
.site-header { height:88px; display:flex; align-items:center; justify-content:space-between; padding:0 5vw; border-bottom:1px solid rgba(255,255,255,.18); position:absolute; inset:0 0 auto; z-index:10; color:var(--white); }
.brand { display:flex; align-items:center; }
.brand img { display:block; width:150px; height:auto; }
nav { display:flex; gap:2.4rem; font-size:.69rem; letter-spacing:.13em; text-transform:uppercase; }
nav a { position:relative; }
nav a::after { content:""; position:absolute; left:0; right:100%; bottom:-7px; height:1px; background:var(--gold); transition:.25s; }
nav a:hover::after { right:0; }
.menu-button { display:none; border:0; background:none; color:inherit; text-transform:uppercase; letter-spacing:.15em; }
.hero { min-height:100vh; position:relative; overflow:hidden; padding:clamp(150px,20vh,210px) 7vw 70px; color:var(--white); background:radial-gradient(circle at 76% 52%,rgba(0,79,255,.28) 0,transparent 29%),linear-gradient(135deg,#00113d,#001c62); }
.hero::before,.hero::after { content:""; position:absolute; border:1px solid rgba(133,177,255,.35); width:46vw; height:46vw; max-width:660px; max-height:660px; right:-5vw; top:15%; transform:rotate(45deg); }
.hero::after { transform:rotate(45deg) scale(.7); }
.eyebrow { margin:0 0 1.5rem; color:var(--gold); font-size:.66rem; font-weight:600; letter-spacing:.28em; text-transform:uppercase; }
.hero .eyebrow { color:var(--mist); }
h1,h2 { font-family:"Italiana",serif; font-weight:400; margin:0; line-height:.88; letter-spacing:-.025em; }
h1 { font-size:clamp(5.5rem,11.5vw,11rem); max-width:760px; }
h1 em,h2 em { color:var(--gold); font-weight:400; }
.hero h1 em { color:var(--mist); }
.hero-copy { width:min(390px,85vw); font-size:.95rem; line-height:1.8; margin:2.2rem 0 1.8rem; }
.text-link { display:inline-flex; align-items:center; gap:2rem; padding-bottom:.5rem; border-bottom:1px solid var(--gold); font-size:.7rem; font-weight:600; text-transform:uppercase; letter-spacing:.15em; }
.text-link span { color:var(--gold); font-size:1rem; }
.turbine { position:absolute; width:min(36vw,490px); aspect-ratio:1; right:8vw; top:27%; border-radius:50%; animation:float 7s ease-in-out infinite; }
.turbine-ring,.turbine-core { position:absolute; border-radius:50%; inset:0; border:1px solid rgba(133,177,255,.32); }
.ring-middle { inset:13%; border-color:var(--mist); }
.ring-inner { inset:30%; border:1px solid rgba(255,255,255,.55); }
.turbine-core { inset:43%; background:var(--gold); box-shadow:0 0 0 8px var(--ink),0 0 0 9px var(--mist); }
.blades { position:absolute; inset:17%; border-radius:50%; background:repeating-conic-gradient(from 2deg,transparent 0 8deg,rgba(255,255,255,.55) 9deg 11deg,transparent 12deg 24deg); mask:radial-gradient(circle,transparent 0 22%,#000 23% 70%,transparent 71%); animation:spin 30s linear infinite; }
.figure-label { position:absolute; right:9vw; bottom:7%; font-size:.55rem; letter-spacing:.25em; }
@keyframes spin { to { transform:rotate(360deg); } } @keyframes float { 50% { transform:translateY(-10px); } }
.statement { display:grid; grid-template-columns:1fr 3fr; gap:4rem; padding:150px 9vw; border-top:1px solid rgba(0,17,61,.16); }
.section-number { font-family:"Italiana"; color:var(--gold); font-size:2rem; }
h2 { font-size:clamp(3.3rem,7vw,7rem); }
.body-copy { max-width:610px; margin:2.5rem 0 0 22%; line-height:1.9; font-size:1rem; }
.engine { background:var(--ink); color:var(--white); padding:130px 7vw 110px; }
.engine-intro { display:flex; justify-content:space-between; align-items:start; margin-bottom:100px; }
.engine-intro h2 { font-size:clamp(3rem,5.5vw,5.5rem); }
.system-line { display:grid; grid-template-columns:repeat(4,1fr); position:relative; }
.system-line::before { content:""; position:absolute; top:73px; left:12%; right:12%; height:1px; background:rgba(133,177,255,.55); }
.system-line article { text-align:center; padding:0 1.4rem; position:relative; }
.system-line article>span { color:var(--gold); font-size:.55rem; letter-spacing:.2em; }
.stage-icon { width:58px; height:58px; border:1px solid var(--gold); border-radius:50%; margin:22px auto 30px; background:var(--ink); position:relative; }
.stage-icon::before,.stage-icon::after { content:""; position:absolute; inset:50% 15% auto; height:1px; background:var(--gold); }
.compressor::after { transform:rotate(90deg); }.combustor::before { transform:rotate(45deg); }.combustor::after { transform:rotate(-45deg); }.exhaust::before { inset:38% 20% auto; transform:rotate(12deg); }.exhaust::after { inset:60% 20% auto; transform:rotate(-12deg); }
h3 { font-family:"Italiana"; font-size:1.7rem; font-weight:400; }
.system-line p { color:rgba(255,255,255,.62); font-size:.78rem; line-height:1.7; max-width:180px; margin:auto; }
.team { min-height:700px; display:grid; grid-template-columns:1fr 1fr; }
.team-card { padding:130px 8vw; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.team-card h2 { font-size:clamp(3.5rem,5.8vw,6rem); }
.team-card>p:not(.eyebrow) { max-width:450px; line-height:1.9; margin:2.2rem 0; }
.team-graphic { background:linear-gradient(145deg,var(--gold),#003bc0); position:relative; display:grid; place-items:center; overflow:hidden; }
.team-graphic span { font-family:"Italiana"; font-size:clamp(4rem,9vw,9rem); letter-spacing:.2em; color:var(--white); z-index:2; }
.diamond { position:absolute; border:1px solid rgba(255,255,255,.4); transform:rotate(45deg); width:50%; aspect-ratio:1; }.d2{width:70%;}.d3{width:95%;}
.contact { padding:150px 7vw; text-align:center; background:var(--white); }
.contact h2 { margin-bottom:2rem; }.contact>p:not(.eyebrow){margin-bottom:2.5rem;}
.button { display:inline-flex; gap:3rem; align-items:center; padding:1.2rem 1.6rem; border:1px solid var(--gold); font-size:.72rem; letter-spacing:.12em; transition:.25s; }.button:hover{background:var(--gold);color:var(--white);}
footer { min-height:130px; padding:40px 5vw; display:flex; justify-content:space-between; align-items:center; border-top:1px solid rgba(255,255,255,.15); background:var(--ink); color:var(--white); font-size:.6rem; letter-spacing:.13em; text-transform:uppercase; }
@media (max-width:800px) {
  .site-header { height:72px; }.menu-button{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--ink);padding:2rem 5vw;flex-direction:column;border-bottom:1px solid var(--gold)}.site-header nav.open{display:flex}
  .hero { min-height:850px; padding-top:145px; }.hero h1{font-size:clamp(4.8rem,22vw,7rem)}.turbine{width:65vw;right:-7vw;top:52%;opacity:.75}.figure-label{bottom:4%}
  .statement{grid-template-columns:1fr;padding:100px 7vw}.section-number{display:none}.body-copy{margin-left:0}
  .engine{padding:100px 7vw}.engine-intro{display:block;margin-bottom:70px}.system-line{grid-template-columns:1fr 1fr;gap:60px 0}.system-line::before{display:none}
  .team{grid-template-columns:1fr}.team-card{padding:100px 7vw}.team-graphic{min-height:480px}
  .contact{padding:100px 7vw}footer{flex-direction:column;gap:1.5rem;text-align:center}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.blades,.turbine{animation:none}}

/* Multi-page experience */
.landing-page { background:var(--ink); }
.landing-hero { min-height:100vh; position:relative; overflow:hidden; padding:clamp(140px,18vh,190px) 7vw 6vw; color:#fff; background:radial-gradient(circle at 75% 35%,rgba(0,79,255,.3),transparent 30%),linear-gradient(145deg,#00113d,#001a5b); }
.landing-hero::before,.landing-hero::after { content:""; position:absolute; width:46vw; height:46vw; max-width:650px; max-height:650px; right:-8vw; top:8%; border:1px solid rgba(133,177,255,.28); transform:rotate(45deg); }
.landing-hero::after { transform:rotate(45deg) scale(.7); }
.landing-hero h1 { font-size:clamp(5rem,10vw,10rem); position:relative; z-index:2; }
.landing-hero h1.mission-title { font-size:clamp(3.4rem,7.2vw,7.4rem); line-height:.88; max-width:960px; }
.landing-hero h1 em { color:var(--mist); }
.landing-hero .hero-copy { position:relative; z-index:2; }
.landing-turbine { top:23%; opacity:.8; }
.project-launches { display:grid; grid-template-columns:1.35fr .65fr; width:min(860px,86vw); margin:clamp(65px,9vh,110px) 0 0 auto; position:relative; z-index:3; border:1px solid rgba(255,255,255,.25); }
.project-launches.single-project { grid-template-columns:1fr; width:min(620px,86vw); }
.launch-card { min-height:260px; padding:28px 32px; display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; }
.launch-card + .launch-card { border-left:1px solid rgba(255,255,255,.25); }
.launch-live { background:rgba(0,79,255,.14); transition:.35s ease; }
.launch-live::before { content:""; position:absolute; width:180px; height:180px; border:1px solid var(--mist); transform:rotate(45deg); right:-70px; bottom:-70px; transition:.4s ease; }
.launch-live:hover { background:var(--gold); }.launch-live:hover::before { transform:rotate(135deg); }
.launch-index,.launch-action { font-size:.57rem; letter-spacing:.22em; text-transform:uppercase; }.launch-action { display:flex; justify-content:space-between; }.launch-action b { font-size:1rem; }
.launch-title { font-family:"Italiana",serif; font-size:clamp(3rem,6vw,5.7rem); letter-spacing:.04em; line-height:.85; }
.launch-soon { color:rgba(255,255,255,.38); background:rgba(0,17,61,.4); }
.inner-page .site-header { position:absolute; background:transparent; }
.site-header nav a.active::after { right:0; }
.project-hero { min-height:100vh; padding:190px 7vw 80px; background:var(--ink); color:#fff; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
.project-hero::before { content:""; position:absolute; width:70vw; height:70vw; border:1px solid rgba(133,177,255,.18); transform:rotate(45deg); left:50%; top:-25%; }
.project-hero-copy { position:relative; z-index:2; }.project-hero h1 { font-size:clamp(7rem,20vw,20rem); color:#fff; line-height:.7; }.project-hero-copy>p:last-child { max-width:510px; line-height:1.8; margin:3rem 0 0 10%; }
.engine-silhouette { position:absolute; right:6vw; bottom:12%; width:min(50vw,700px); height:100px; display:flex; align-items:center; filter:drop-shadow(0 0 30px rgba(0,79,255,.5)); }
.engine-silhouette span { display:block; height:60%; background:linear-gradient(90deg,var(--gold),var(--mist)); border-right:2px solid var(--ink); }.engine-silhouette span:nth-child(1){width:10%;clip-path:polygon(0 25%,100% 0,100% 100%,0 75%)}.engine-silhouette span:nth-child(2){width:24%;height:85%}.engine-silhouette span:nth-child(3){width:13%;height:100%;clip-path:polygon(0 10%,100% 25%,100% 75%,0 90%)}.engine-silhouette span:nth-child(4){width:14%;height:70%}.engine-silhouette span:nth-child(5){width:24%;height:58%}.engine-silhouette span:nth-child(6){width:15%;clip-path:polygon(0 0,100% 25%,100% 75%,0 100%)}
.scroll-cue { position:absolute; bottom:35px; left:7vw; text-transform:uppercase; letter-spacing:.2em; font-size:.55rem; color:var(--mist); }
.section-pad { padding:140px 8vw; }.jotun-intro,.about-statement { display:grid; grid-template-columns:1fr 3fr; gap:4rem; }.section-kicker { font-family:"Italiana"; color:var(--gold); font-size:1.3rem; }.jotun-intro h2,.about-statement h2 { font-size:clamp(3.5rem,7vw,7rem); }.lead-copy { max-width:720px; margin:3rem 0 0 15%; line-height:1.9; }.status-note { max-width:600px; margin:2rem 0 0 15%; padding-left:1.2rem; border-left:1px solid var(--gold); color:#647279; font-size:.75rem; line-height:1.7; }
.jotun-numbers { display:grid; grid-template-columns:repeat(4,1fr); background:var(--gold); color:#fff; }.jotun-numbers article { min-height:240px; padding:45px 3vw; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid rgba(255,255,255,.3); }.jotun-numbers strong { font-family:"Italiana"; font-weight:400; font-size:clamp(2.8rem,5vw,5rem); }.jotun-numbers span { max-width:170px; font-size:.65rem; text-transform:uppercase; letter-spacing:.15em; line-height:1.7; }
.section-heading { display:flex; align-items:start; justify-content:space-between; margin-bottom:90px; }.section-heading h2 { font-size:clamp(3.5rem,6vw,6rem); }
.station-flow { display:grid; grid-template-columns:repeat(6,1fr); position:relative; }.station-flow::before { content:""; position:absolute; height:1px; left:8%; right:8%; top:48px; background:var(--mist); }.station-flow article { text-align:center; position:relative; padding:0 12px; }.station-flow article>span { font-size:.55rem; color:var(--gold); letter-spacing:.2em; }.station-flow i { display:block; width:17px; height:17px; border-radius:50%; background:#fff; border:4px solid var(--gold); margin:30px auto; position:relative; z-index:2; }.station-flow h3 { font-size:1.5rem; }.station-flow p { font-size:.72rem; line-height:1.7; color:#647279; }
.subsystem { min-height:720px; display:grid; grid-template-columns:1fr 1fr; }.subsystem-copy { padding:110px 8vw; display:flex; flex-direction:column; justify-content:center; }.subsystem-copy h2 { font-size:clamp(3.2rem,5vw,5.4rem); margin-bottom:2.2rem; }.subsystem-copy>p:not(.eyebrow) { line-height:1.85; }.subsystem-copy ul { padding:0; margin:2rem 0 0; list-style:none; }.subsystem-copy li { padding:12px 0; border-top:1px solid currentColor; font-size:.72rem; letter-spacing:.04em; opacity:.75; }
.subsystem-visual { display:grid; place-items:center; position:relative; overflow:hidden; }.subsystem-visual>span { position:absolute; bottom:9%; font-family:"Italiana"; font-size:1.15rem; letter-spacing:.08em; }.feature-dark { background:var(--ink); color:#fff; }.feature-dark .subsystem-visual { background:radial-gradient(circle,var(--gold),transparent 55%); }.feature-light { background:#eef4ff; }.reverse .subsystem-visual { order:2; }.feature-blue { background:var(--gold); color:#fff; }.feature-blue .eyebrow { color:var(--mist); }
.radial-machine { width:min(48vw,430px); aspect-ratio:1; border:1px solid currentColor; border-radius:50%; position:relative; background:repeating-conic-gradient(transparent 0 10deg,currentColor 11deg 12deg,transparent 13deg 25deg); mask:radial-gradient(circle,transparent 0 25%,#000 26% 66%,transparent 67%); animation:spin 38s linear infinite; }.radial-machine::before,.radial-machine::after { content:""; position:absolute; border:1px solid currentColor; border-radius:50%; inset:8%; }.radial-machine::after { inset:20%; }
.cans-visual { grid-template-columns:repeat(2,100px); grid-template-rows:repeat(2,100px); gap:35px; }.cans-visual i { width:100px; height:100px; border:1px solid var(--gold); border-radius:50%; position:relative; }.cans-visual i::after { content:""; position:absolute; inset:25%; background:var(--gold); transform:rotate(45deg); }
.reheat { background:#fff; }.reheat-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--mist); }.reheat-grid article { background:#fff; padding:65px 5vw; }.big-stat { font-family:"Italiana"; font-size:clamp(4rem,7vw,7rem); color:var(--gold); }.reheat-grid p { line-height:1.8; color:#647279; }
.build-philosophy { background:var(--ink); color:#fff; padding:130px 8vw; display:grid; grid-template-columns:1fr 1.3fr; gap:9vw; }.build-philosophy h2 { font-size:clamp(3.5rem,5.5vw,6rem); }.philosophy-list article { padding:32px 0; border-top:1px solid rgba(255,255,255,.25); display:grid; grid-template-columns:45px 1fr; }.philosophy-list article>span { color:var(--mist); font-size:.6rem; }.philosophy-list h3,.philosophy-list p { grid-column:2; }.philosophy-list h3 { margin:.2rem 0 .5rem; }.philosophy-list p { color:rgba(255,255,255,.6); line-height:1.7; font-size:.75rem; }
.project-next,.join-banner { padding:150px 7vw; text-align:center; }.project-next h2,.join-banner h2 { margin-bottom:3rem; }
.about-hero { min-height:85vh; background:radial-gradient(circle at 72% 40%,rgba(0,79,255,.34),transparent 28%),var(--ink); color:#fff; padding:190px 8vw 90px; display:flex; flex-direction:column; justify-content:center; }.about-hero h1 { font-size:clamp(5rem,12vw,12rem); }.about-hero h1 em { color:var(--mist); }.about-hero>p:last-child { max-width:520px; margin:3rem 0 0 42%; line-height:1.8; }
.team-roster { padding:130px 7vw; background:#eef4ff; }.roster-heading { display:flex; justify-content:space-between; margin-bottom:80px; }.roster-heading h2 { font-size:clamp(4rem,7vw,7rem); }.people-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:rgba(0,17,61,.18); border:1px solid rgba(0,17,61,.18); }.people-grid article { background:#eef4ff; min-height:410px; padding:25px; display:flex; flex-direction:column; }.people-grid article:nth-child(1),.people-grid article:nth-child(2){grid-column:span 3}.people-grid article:nth-child(n+3){grid-column:span 2}.person-number { color:var(--gold); font-size:.55rem; letter-spacing:.2em; }.person-monogram { width:105px; height:105px; border:1px solid var(--gold); transform:rotate(45deg); display:grid; place-items:center; margin:55px auto; font-family:"Italiana"; font-size:2rem; color:var(--gold); }.person-monogram::first-line { transform:rotate(-45deg); }.people-grid h3 { margin:auto 0 .6rem; font-size:1.6rem; }.people-grid p { font-size:.68rem; line-height:1.7; text-transform:uppercase; letter-spacing:.08em; color:#647279; }
.join-banner { background:var(--gold); color:#fff; }.join-banner .eyebrow { color:var(--mist); }.join-banner .button { border-color:#fff; }
@media (max-width:900px){
  .project-launches{grid-template-columns:1fr;margin-top:80px}.launch-card+.launch-card{border-left:0;border-top:1px solid rgba(255,255,255,.25)}.landing-turbine{opacity:.25;top:32%}
  .jotun-intro,.about-statement{grid-template-columns:1fr}.section-kicker{display:none}.lead-copy,.status-note{margin-left:0}.jotun-numbers{grid-template-columns:1fr 1fr}.station-flow{grid-template-columns:1fr 1fr;gap:45px 0}.station-flow::before{display:none}
  .subsystem{grid-template-columns:1fr}.subsystem-visual{min-height:480px}.reverse .subsystem-visual{order:0}.build-philosophy{grid-template-columns:1fr}.people-grid{grid-template-columns:1fr}.people-grid article:nth-child(n){grid-column:span 1}.roster-heading,.section-heading{display:block}.engine-silhouette{width:85vw;right:-12vw;opacity:.45}.about-hero>p:last-child{margin-left:0}
}
@media (max-width:600px){.landing-hero{padding-left:5vw;padding-right:5vw}.project-launches{width:100%}.launch-card{min-height:220px}.jotun-numbers{grid-template-columns:1fr}.jotun-numbers article{min-height:180px}.reheat-grid{grid-template-columns:1fr}.section-pad{padding:95px 7vw}.subsystem-copy{padding:90px 7vw}.cans-visual{grid-template-columns:repeat(2,75px);grid-template-rows:repeat(2,75px)}.cans-visual i{width:75px;height:75px}}
.person-monogram { border:0; transform:none; position:relative; }
.person-monogram::before { content:""; position:absolute; inset:0; border:1px solid var(--gold); transform:rotate(45deg); }

/* About Jet */
.about-principles { display:grid; grid-template-columns:repeat(3,1fr); background:var(--ink); color:#fff; padding:0 7vw; }
.about-principles article { padding:85px 4vw; border-right:1px solid rgba(255,255,255,.18); }.about-principles article:last-child{border:0}.about-principles span { color:var(--mist); font-size:.58rem; letter-spacing:.2em; }.about-principles h3 { font-size:2rem; margin:2.8rem 0 1rem; }.about-principles p { color:rgba(255,255,255,.62); font-size:.8rem; line-height:1.8; }
.about-origin { display:grid; grid-template-columns:1fr 1fr; gap:9vw; align-items:center; }.about-origin h2 { font-size:clamp(4rem,7vw,7rem); }.about-origin>div:last-child>p { line-height:1.9; margin-bottom:2.5rem; }

/* Team directory */
.team-hero { min-height:72vh; background:radial-gradient(circle at 76% 45%,rgba(0,79,255,.4),transparent 30%),var(--ink); color:#fff; padding:180px 7vw 100px; display:flex; flex-direction:column; justify-content:center; }.team-hero h1 { font-size:clamp(4.6rem,10vw,10rem); }.team-hero h1 em { color:var(--mist); }.team-hero>p:last-child { max-width:520px; margin:2.5rem 0 0 45%; line-height:1.8; }
.team-directory { padding:130px 7vw; display:grid; grid-template-columns:.75fr 1.4fr; gap:8vw; align-items:start; }.directory-intro { position:sticky; top:80px; }.directory-intro h2 { font-size:clamp(4rem,6vw,6rem); }.directory-intro>p:last-child { line-height:1.8; color:#647279; max-width:350px; margin-top:2rem; }
.group-stack { border-top:1px solid rgba(0,17,61,.2); }.team-group { border-bottom:1px solid rgba(0,17,61,.2); }.team-group summary { min-height:100px; display:grid; grid-template-columns:50px 1fr auto 35px; align-items:center; gap:18px; cursor:pointer; list-style:none; }.team-group summary::-webkit-details-marker{display:none}.team-group summary h3 { font-size:clamp(1.25rem,2.2vw,2rem); margin:0; }.group-code { color:var(--gold); font-size:.55rem; letter-spacing:.2em; }.team-group summary b { color:var(--gold); font-size:1.4rem; font-weight:300; transition:.25s; }.team-group[open] summary b { transform:rotate(45deg); }.hiring-tag { color:var(--gold); border:1px solid var(--gold); border-radius:100px; padding:6px 10px; font-size:.52rem; letter-spacing:.13em; text-transform:uppercase; }.group-body { padding:0 0 38px 68px; max-width:650px; }.group-body>p { line-height:1.8; color:#647279; }.group-body>a { display:inline-block; margin-top:1rem; color:var(--gold); text-transform:uppercase; letter-spacing:.12em; font-size:.62rem; }.member-line { display:flex; justify-content:space-between; align-items:baseline; gap:25px; border-top:1px solid rgba(0,17,61,.13); padding:18px 0; }.member-line strong { font-family:"Italiana"; font-size:1.25rem; font-weight:400; }.member-line span { color:#647279; font-size:.6rem; text-transform:uppercase; letter-spacing:.08em; text-align:right; }

/* Application */
.apply-hero { min-height:100vh; background:var(--ink); color:#fff; padding:170px 7vw 90px; display:grid; grid-template-columns:1.2fr .8fr; align-items:center; gap:5vw; overflow:hidden; }.apply-hero h1 { font-size:clamp(4.5rem,9vw,9rem); }.apply-hero h1 em { color:var(--mist); }.apply-hero>div>p:not(.eyebrow) { max-width:530px; line-height:1.8; margin:2rem 0; }.apply-cta { width:min(480px,100%); background:var(--gold); padding:22px 25px; display:flex; align-items:center; justify-content:space-between; text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; transition:.25s; }.apply-cta:hover { background:#fff; color:var(--ink); }.apply-cta b { font-size:1.2rem; }
.apply-orbit { width:min(38vw,480px); aspect-ratio:1; position:relative; display:grid; place-items:center; }.apply-orbit i { position:absolute; inset:5%; border:1px solid rgba(133,177,255,.45); border-radius:50%; }.apply-orbit i:nth-child(2){inset:20%}.apply-orbit i:nth-child(3){inset:35%;border-color:var(--gold)}.apply-orbit::before,.apply-orbit::after { content:""; position:absolute; inset:0 50%; width:1px; background:rgba(133,177,255,.35); }.apply-orbit::after { inset:50% 0; width:auto; height:1px; }.apply-orbit strong { font-family:"Italiana"; font-size:2rem; color:var(--mist); }
.application-path { display:grid; grid-template-columns:repeat(3,1fr); padding:0 7vw; background:#eef4ff; }.application-path article { padding:90px 4vw; border-right:1px solid rgba(0,17,61,.15); }.application-path span { color:var(--gold); font-size:.55rem; letter-spacing:.2em; }.application-path h3 { margin:2.4rem 0 1rem; font-size:1.75rem; }.application-path p { line-height:1.8; color:#647279; font-size:.78rem; }
.open-teams { padding:130px 8vw; text-align:center; }.open-teams h2 { margin-bottom:3rem; }.open-teams>div { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-bottom:3rem; }.open-teams>div span { border:1px solid var(--mist); padding:12px 18px; border-radius:100px; font-size:.65rem; }.open-teams .button b { font-size:1rem; }

/* Contact */
.contact-page { background:#f2f5fb; }.contact-shell { min-height:calc(100vh - 130px); padding:150px 7vw 90px; display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; align-items:center; background:radial-gradient(circle at 10% 70%,rgba(133,177,255,.26),transparent 28%),#f2f5fb; }.contact-intro h1 { font-size:clamp(4.2rem,7.5vw,7.5rem); }.contact-intro h1 em { color:var(--gold); }.contact-intro>p:not(.eyebrow) { max-width:430px; line-height:1.8; margin:2rem 0; }.contact-direct { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }.contact-direct a { color:var(--gold); font-size:.78rem; border-bottom:1px solid var(--mist); }
.contact-card { background:rgba(255,255,255,.78); backdrop-filter:blur(25px); -webkit-backdrop-filter:blur(25px); border:1px solid rgba(255,255,255,.9); border-radius:28px; padding:14px; box-shadow:0 30px 90px rgba(0,17,61,.12); }.form-tabs { display:grid; grid-template-columns:1fr 1fr; background:rgba(0,17,61,.06); padding:5px; border-radius:16px; }.form-tab { border:0; background:transparent; padding:13px; border-radius:12px; color:var(--ink); font:500 .72rem "Manrope"; cursor:pointer; }.form-tab.active { background:#fff; box-shadow:0 4px 18px rgba(0,17,61,.08); }.contact-form { display:none; padding:30px 20px 18px; }.contact-form.active { display:block; }.field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.contact-form label { display:block; color:#59636f; font-size:.63rem; letter-spacing:.04em; margin-bottom:14px; }.contact-form input,.contact-form textarea,.contact-form select { width:100%; border:1px solid rgba(0,17,61,.12); border-radius:12px; background:rgba(244,247,252,.75); padding:13px 14px; margin-top:7px; color:var(--ink); font:400 .82rem "Manrope"; outline:none; transition:.2s; }.contact-form textarea { resize:vertical; }.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { border-color:var(--gold); background:#fff; box-shadow:0 0 0 3px rgba(0,79,255,.09); }.contact-form button { width:100%; border:0; border-radius:13px; padding:16px 18px; background:var(--gold); color:#fff; display:flex; justify-content:space-between; font:600 .67rem "Manrope"; text-transform:uppercase; letter-spacing:.14em; cursor:pointer; }.form-note { color:#7c8792; font-size:.55rem; text-align:center; margin:12px 0 0; }

@media (max-width:1100px) and (min-width:801px){nav{gap:1.25rem;font-size:.61rem}}
@media (max-width:900px){.about-principles,.application-path{grid-template-columns:1fr}.about-principles article,.application-path article{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.about-origin,.team-directory,.apply-hero,.contact-shell{grid-template-columns:1fr}.directory-intro{position:static}.team-hero>p:last-child{margin-left:0}.apply-orbit{width:75vw;margin:auto}.contact-shell{padding-top:125px}.member-line{display:block}.member-line span{display:block;text-align:left;margin-top:5px}}
@media (max-width:600px){.team-group summary{grid-template-columns:35px 1fr 25px}.team-group summary .hiring-tag{display:none}.group-body{padding-left:0}.field-row{grid-template-columns:1fr}.contact-card{border-radius:20px}.contact-form{padding:25px 8px 12px}}

/* Project Jotun identity */
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.jotun-page { --ink:#0b0e1c; --gold:#ff4e00; --mist:#ff9a70; }
.jotun-page .project-hero { background:radial-gradient(circle at 72% 45%,rgba(255,78,0,.23),transparent 31%),linear-gradient(145deg,#080b16,#12172a); }
.jotun-project-logo { display:block; width:min(720px,82vw); height:auto; margin:1rem 0 1.4rem; filter:drop-shadow(0 0 35px rgba(255,78,0,.23)); position:relative; z-index:2; }
.jotun-page .project-hero::before { border-color:rgba(255,78,0,.22); }
.jotun-page .engine-silhouette span { background:linear-gradient(90deg,#ff4e00,#ff9a70); }
.jotun-page .jotun-numbers { background:#ff4e00; }
.jotun-page .feature-blue { background:linear-gradient(145deg,#ff4e00,#c92f00); }
.jotun-page .join-banner { background:#ff4e00; }
.jotun-page .button { border-color:#ff4e00; }

/* Board and contact header */
.board-group { border-left:3px solid var(--gold); padding-left:18px; }
.board-group .group-code { font-size:.48rem; }
.contact-page .site-header { color:var(--ink); border-bottom-color:rgba(0,17,61,.12); }
.contact-page .site-header .brand img { filter:brightness(0) saturate(100%); }
.contact-page .site-header nav { color:var(--ink); }
@media (max-width:800px){.brand img{width:125px}.contact-page .site-header nav{color:#fff}.contact-page .site-header .menu-button{color:var(--ink)}}
