:root{
  --ink:#1f241f;
  --paper:#f2efe7;
  --soft:#ddd8cb;
  --sage:#b9bea8;
  --deep:#2f3b31;
  --sand:#d8c6a8;
  --line:rgba(31,36,31,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-weight:400}
a{color:inherit;text-decoration:none}
.site-header{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:22px 4.5vw;border-bottom:1px solid transparent;transition:.3s;background:linear-gradient(to bottom,rgba(242,239,231,.92),rgba(242,239,231,.58),transparent);backdrop-filter:blur(8px)}
.site-header.scrolled{background:rgba(242,239,231,.94);border-bottom-color:var(--line)}
.brand{font-size:14px;letter-spacing:.28em;font-weight:600}
.nav{display:flex;gap:28px;align-items:center;font-size:13px}
.nav a{opacity:.75}.nav a:hover{opacity:1}
.nav-cta{border:1px solid var(--ink);padding:10px 14px;border-radius:999px}
.menu-toggle{display:none;background:none;border:0;font:inherit}
.hero{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:6vw;align-items:end;padding:140px 6vw 8vh;position:relative;overflow:hidden}
.hero-copy{max-width:840px;position:relative;z-index:2}
.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:600;margin:0 0 22px;text-transform:uppercase}
h1,h2,h3{font-weight:500;margin:0;line-height:.97;letter-spacing:-.035em}
h1{font-family:"Playfair Display",serif;font-size:clamp(66px,10vw,146px)}
h1 em{font-weight:500}
.hero-text{max-width:620px;font-size:20px;line-height:1.55;margin:30px 0 36px;color:rgba(31,36,31,.78)}
.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.button{display:inline-flex;justify-content:center;align-items:center;border-radius:999px;padding:15px 22px;font-size:13px;font-weight:600;border:0;cursor:pointer}
.button-dark{background:var(--ink);color:var(--paper)}
.text-link{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:4px}
.hero-card{min-height:420px;border:1px solid var(--line);border-radius:180px 180px 28px 28px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,rgba(185,190,168,.8),rgba(216,198,168,.55));position:relative;z-index:2}
.hero-card h2{font-family:"Playfair Display",serif;font-size:58px}.hero-card p{max-width:270px;line-height:1.5}
.card-label{font-size:10px;letter-spacing:.2em}
.hero-orb{position:absolute;border-radius:50%;filter:blur(4px);opacity:.55}.orb-one{width:48vw;height:48vw;right:-10vw;top:-8vw;background:radial-gradient(circle at 30% 30%,#d8c6a8,#b9bea8)}.orb-two{width:24vw;height:24vw;left:22vw;bottom:-10vw;background:radial-gradient(circle,#c9d0bc,transparent 70%)}
.split-section,.journey-section{padding:120px 6vw;border-top:1px solid var(--line)}
.section-number{font-size:11px;letter-spacing:.18em;margin-bottom:60px;opacity:.55}
.split-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw}.split-grid h2,.journey-head h2,.founder-copy h2,.closing-section h2{font-family:"Playfair Display",serif;font-size:clamp(48px,6vw,88px)}
.section-copy{font-size:19px;line-height:1.7;max-width:590px}.section-copy p{margin-top:0;margin-bottom:24px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:80px}.feature-card{border-top:1px solid var(--ink);padding:18px 4px 10px}.feature-card span{font-size:10px;letter-spacing:.15em;opacity:.5}.feature-card h3{font-size:26px;margin:32px 0 16px}.feature-card p{line-height:1.65;opacity:.72}
.vision-section{padding:0 3vw 100px}.vision-panel{background:var(--deep);color:var(--paper);padding:90px 6vw;border-radius:28px}.vision-panel h2{font-family:"Playfair Display",serif;font-size:clamp(56px,8vw,112px);margin-bottom:70px}.brand-system{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(242,239,231,.25)}.brand-system div{padding:22px 0;border-bottom:1px solid rgba(242,239,231,.25);display:flex;flex-direction:column;gap:6px}.brand-system div:nth-child(3n+2){padding-left:28px}.brand-system div:nth-child(3n+3){padding-left:28px}.brand-system strong{font-size:20px}.brand-system span{font-size:12px;opacity:.55}
.journey-head{max-width:850px;margin-bottom:70px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.timeline-item{padding:22px 24px 0 0;border-right:1px solid var(--line);min-height:240px}.timeline-item:last-child{border-right:0;padding-left:24px}.timeline-item:not(:first-child){padding-left:24px}.timeline-item span{font-size:10px;letter-spacing:.18em;opacity:.5}.timeline-item h3{font-size:25px;margin:36px 0 18px}.timeline-item p{line-height:1.6;opacity:.72}
.founder-section{display:grid;grid-template-columns:1fr .85fr;gap:8vw;padding:120px 6vw;background:#e8e4d9}.founder-copy p{font-size:18px;line-height:1.65;max-width:620px}.founder-copy ul{padding-left:18px;line-height:2}.fineprint{font-size:12px!important;opacity:.55;margin-top:34px}.join-card{background:var(--paper);padding:42px;border-radius:24px;align-self:start}.join-card h3{font-family:"Playfair Display",serif;font-size:48px}.join-card>p{line-height:1.6;opacity:.72}form{display:grid;gap:16px;margin-top:26px}label{display:grid;gap:8px}label span{font-size:11px;letter-spacing:.08em}input,select{width:100%;border:1px solid var(--line);background:transparent;padding:14px 12px;border-radius:10px;font:inherit;color:inherit}.form-message{font-size:12px;margin:4px 0 0;min-height:18px}
.closing-section{padding:150px 6vw 170px;text-align:center}.closing-section h2{font-size:clamp(64px,9vw,130px)}
footer{padding:40px 6vw 32px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.footer-brand{letter-spacing:.25em;font-size:13px;font-weight:600}.footer-links{display:flex;gap:20px;font-size:12px}footer p{font-size:11px;opacity:.5;grid-column:1/-1;margin:0}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.delay-3{transition-delay:.36s}
@media(max-width:900px){.nav{display:none;position:absolute;top:70px;left:4vw;right:4vw;background:var(--paper);padding:22px;border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-toggle{display:block}.hero{grid-template-columns:1fr;padding-top:130px}.hero-card{min-height:330px;max-width:520px}.split-grid,.founder-section{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.brand-system{grid-template-columns:1fr}.brand-system div:nth-child(n){padding-left:0}.timeline{grid-template-columns:1fr}.timeline-item{border-right:0;border-bottom:1px solid var(--line);padding:24px 0!important;min-height:auto}footer{grid-template-columns:1fr}}
@media(max-width:560px){.site-header{padding:18px 5vw}.hero,.split-section,.journey-section,.founder-section{padding-left:5vw;padding-right:5vw}.hero-text{font-size:17px}.join-card{padding:28px}.vision-section{padding-left:2vw;padding-right:2vw}.vision-panel{padding:70px 7vw}}

.brand { display:flex; align-items:center; gap:10px; }
.brand .ja-mark { width:28px; height:28px; flex:0 0 auto; }
.logo-lockup { display:flex; align-items:center; gap:10px; }
.logo-lockup .ja-mark { width:30px; height:30px; }

.team-section{padding:110px 6vw;background:#f0eee7;border-top:1px solid rgba(20,24,20,.12)}
.team-head{max-width:800px;margin:0 0 48px 9vw}
.team-head h2{font-family:'Playfair Display',serif;font-size:clamp(48px,7vw,88px);font-weight:500;line-height:.95;letter-spacing:-.04em;margin:10px 0 20px}
.team-head>p:last-child{max-width:650px;font-size:18px;line-height:1.6;color:#666c66}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-left:9vw}
.team-card{min-height:390px;background:#e6e1d7;padding:26px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(20,24,20,.08)}
.team-initial{font-family:'Playfair Display',serif;font-size:120px;line-height:1;color:#1c211c;opacity:.95}
.team-meta span{font-size:11px;letter-spacing:.16em;color:#7c827c}
.team-meta h3{font-family:'Playfair Display',serif;font-weight:500;font-size:38px;margin:8px 0 8px}
.team-meta p{margin:0;color:#646a64;line-height:1.45}
@media(max-width:900px){
  .team-head,.team-grid{margin-left:0}
  .team-grid{grid-template-columns:1fr}
  .team-card{min-height:300px}
}

:root{
  --ja-deep-earth:#4A4238;
  --ja-warm-sand:#C9B89C;
  --ja-dark-jungle:#2E4A43;
  --ja-soft-linen:#F5F2EC;
}
body{background:var(--ja-soft-linen);}
.site-header,.team-section,.vision-section,.journey-section,.founder-section,.closing-section,footer{
  background-color:var(--ja-soft-linen);
}
.brand,.footer-brand,.ja-mark{color:var(--ja-dark-jungle);}
.button-dark{background:var(--ja-dark-jungle);}
.hero-card,.team-card{border-color:rgba(46,74,67,.12);}

/* --- Logo concept: THE HORIZON --- */
.concept-logo{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:var(--ja-dark-jungle,#2E4A43);
  line-height:1;
}
.concept-mark{
  width:76px;
  height:56px;
  display:block;
  margin-bottom:2px;
}
.concept-wordmark{
  font-family:'Playfair Display', Georgia, serif;
  font-size:24px;
  font-weight:500;
  letter-spacing:.25em;
  white-space:nowrap;
  margin-left:.25em;
}
.concept-tagline{
  margin-top:9px;
  color:var(--ja-warm-sand,#C9B89C);
  font-family:'DM Sans', Arial, sans-serif;
  font-size:7px;
  font-weight:500;
  letter-spacing:.34em;
  white-space:nowrap;
  margin-left:.34em;
}

.brand-concept{
  text-decoration:none;
  display:block;
  padding:4px 0;
}
.brand-concept .concept-mark{
  width:46px;
  height:34px;
}
.brand-concept .concept-wordmark{
  font-size:15px;
}
.brand-concept .concept-tagline{
  display:none;
}

.hero{
  position:relative;
  padding-top:190px;
}
.hero-logo-lockup{
  position:absolute;
  left:50%;
  top:38px;
  transform:translateX(-50%);
  z-index:3;
}
.hero-logo-lockup .concept-mark{
  width:108px;
  height:80px;
}
.hero-logo-lockup .concept-wordmark{
  font-size:38px;
  letter-spacing:.28em;
}
.hero-logo-lockup .concept-tagline{
  font-size:9px;
  margin-top:13px;
}

.footer-concept .concept-logo{
  align-items:flex-start;
}
.footer-concept .concept-mark{
  width:48px;
  height:36px;
}
.footer-concept .concept-wordmark{
  font-size:15px;
}
.footer-concept .concept-tagline{
  font-size:6px;
  margin-top:7px;
}

@media(max-width:900px){
  .hero{padding-top:170px}
  .hero-logo-lockup{top:28px}
  .hero-logo-lockup .concept-mark{width:88px;height:66px}
  .hero-logo-lockup .concept-wordmark{font-size:28px}
  .hero-logo-lockup .concept-tagline{font-size:7px;letter-spacing:.25em}
}
@media(max-width:640px){
  .brand-concept .concept-wordmark{font-size:12px}
  .hero{padding-top:150px}
  .hero-logo-lockup .concept-wordmark{font-size:23px;letter-spacing:.2em}
  .hero-logo-lockup .concept-tagline{font-size:6px}
}
