/* ─── HERO ─── */
.about-hero{padding:clamp(72px,8vw,112px) 0 clamp(var(--s12),7vw,96px);border-bottom:1px solid var(--bds);position:relative;overflow:hidden}
.hero-bg-word{position:absolute;font-family:var(--fd);font-size:clamp(140px,18vw,280px);font-weight:800;color:var(--ac);opacity:.025;line-height:1;right:-20px;bottom:-20px;letter-spacing:-.05em;pointer-events:none;user-select:none;white-space:nowrap}

/* ─── MISSION ─── */
.mission{padding:clamp(var(--s12),8vw,100px) 0}
.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--s8),6vw,96px);align-items:center}
.mission-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:var(--s5)}
.mission-title{font-family:var(--fd);font-size:clamp(1.5rem,2.8vw + .3rem,2.6rem);font-weight:700;color:var(--t);letter-spacing:-.04em;line-height:1.15;margin-bottom:var(--s6)}
.mission-body{display:flex;flex-direction:column;gap:var(--s5)}
.mission-body p{font-size:1rem;color:var(--t2);line-height:1.85}
.mission-body strong{font-weight:600;color:var(--t)}
.mission-visual{position:relative;border-radius:var(--rxl);overflow:hidden;background:linear-gradient(145deg,oklch(90% 0.055 285),oklch(84% 0.09 295));min-height:480px;display:flex;align-items:center;justify-content:center}
.mv-deco1{position:absolute;width:360px;height:360px;border-radius:50%;top:-80px;right:-80px;background:oklch(85% 0.08 285);opacity:.6}
.mv-deco2{position:absolute;width:240px;height:240px;border-radius:50%;bottom:-50px;left:-50px;background:oklch(78% 0.1 300);opacity:.35}
.mv-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--s3)}
.mv-logo{font-family:var(--fd);font-size:2rem;font-weight:800;color:oklch(40% 0.14 285);letter-spacing:-.05em;opacity:.5}
.mv-wave{display:flex;align-items:center;gap:5px;height:56px}
.mv-wave span{width:5px;border-radius:4px;background:var(--ac);opacity:.45;flex-shrink:0}

/* ─── STORY ─── */
.story{background:var(--bg-s);border-top:1px solid var(--bds);border-bottom:1px solid var(--bds);padding:clamp(var(--s12),8vw,100px) 0}
.story-inner{max-width:800px;margin:0 auto}
.story-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:var(--s6);text-align:center}
.story-title{font-family:var(--fd);font-size:clamp(1.4rem,2.5vw + .2rem,2.2rem);font-weight:700;color:var(--t);letter-spacing:-.04em;line-height:1.2;margin-bottom:clamp(var(--s8),4vw,48px);text-align:center}
.story-body{display:flex;flex-direction:column;gap:var(--s5)}
.story-body p{font-size:1rem;color:var(--t2);line-height:1.85}
.story-body strong{font-weight:600;color:var(--t)}
.story-quote{background:var(--surf);border-radius:var(--rxl);padding:clamp(var(--s6),3vw,40px);margin:var(--s6) 0;position:relative;overflow:hidden}
.story-quote::before{content:'\201C';font-family:var(--fd);font-size:6rem;color:var(--ac);opacity:.15;position:absolute;top:-16px;left:var(--s6);line-height:1;pointer-events:none}
.story-quote p{font-size:1.1rem;font-style:italic;font-weight:500;color:var(--t);line-height:1.7;position:relative;z-index:1}
.story-quote cite{display:block;font-size:.82rem;color:var(--t3);font-style:normal;margin-top:var(--s4)}
.story-quote-av{display:flex;align-items:center;gap:var(--s3);margin-top:var(--s4)}
.sq-av{width:40px;height:40px;border-radius:50%;background:var(--ac);display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;color:var(--oa);flex-shrink:0}

/* ─── VALUES ─── */
.values{padding:clamp(var(--s12),8vw,100px) 0}
.values-head{margin-bottom:clamp(var(--s8),5vw,64px)}
.values-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:var(--s4)}
.values-title{font-family:var(--fd);font-size:clamp(1.4rem,2.5vw + .2rem,2.2rem);font-weight:700;color:var(--t);letter-spacing:-.04em;line-height:1.15;max-width:18ch}
.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s4)}
.val-card{background:var(--surf);border:1px solid var(--bd);border-radius:var(--rxl);padding:clamp(var(--s6),3vw,40px);display:grid;grid-template-columns:auto 1fr;gap:var(--s5);align-items:start}
.val-card:nth-child(3){background:var(--ac);border-color:transparent}
.val-num{font-family:var(--fd);font-size:clamp(2.5rem,4vw,4rem);font-weight:800;letter-spacing:-.05em;line-height:1;color:var(--acd);flex-shrink:0;width:80px}
.val-card:nth-child(3) .val-num{color:oklch(72% 0.12 285)}
.val-title{font-family:var(--fd);font-size:clamp(.9rem,1.2vw + .05rem,1.1rem);font-weight:700;color:var(--t);letter-spacing:-.025em;margin-bottom:var(--s3);line-height:1.25}
.val-card:nth-child(3) .val-title{color:var(--oa)}
.val-text{font-size:.9rem;color:var(--t2);line-height:1.75}
.val-card:nth-child(3) .val-text{color:oklch(90% 0.05 285)}

/* ─── TEAM ─── */
.team{background:var(--bg-s);border-top:1px solid var(--bds);padding:clamp(var(--s12),8vw,100px) 0}
.team-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s8);margin-bottom:clamp(var(--s8),5vw,64px)}
.team-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:var(--s4)}
.team-title{font-family:var(--fd);font-size:clamp(1.4rem,2.5vw + .2rem,2.2rem);font-weight:700;color:var(--t);letter-spacing:-.04em;line-height:1.15}
.team-sub{font-size:.95rem;color:var(--t2);line-height:1.7;max-width:36ch}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s4)}
.tm-card{background:var(--surf);border:1px solid var(--bd);border-radius:var(--rxl);overflow:hidden;transition:box-shadow 280ms var(--ex),transform 280ms var(--ex)}
.tm-card:hover{box-shadow:0 6px 28px oklch(16% 0.015 285 / 0.09);transform:translateY(-3px)}
.tm-photo{height:200px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.tm-initials{font-family:var(--fd);font-size:2rem;font-weight:800;color:var(--oa);opacity:.9;z-index:1;position:relative;letter-spacing:-.04em}
.tm-body{padding:var(--s5) var(--s6)}
.tm-name{font-family:var(--fd);font-size:.88rem;font-weight:700;color:var(--t);letter-spacing:-.025em;margin-bottom:var(--s1)}
.tm-role{font-size:.78rem;color:var(--ac);font-weight:600;margin-bottom:var(--s3)}
.tm-bio{font-size:.8rem;color:var(--t2);line-height:1.6}

/* ─── MILESTONES ─── */
.milestones{padding:clamp(var(--s12),8vw,100px) 0;border-top:1px solid var(--bds)}
.ms-head{margin-bottom:clamp(var(--s8),5vw,64px)}
.ms-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin-bottom:var(--s4)}
.ms-title{font-family:var(--fd);font-size:clamp(1.4rem,2.5vw + .2rem,2.2rem);font-weight:700;color:var(--t);letter-spacing:-.04em;line-height:1.15}
.ms-track{position:relative;display:flex;flex-direction:column;gap:0}
.ms-track::before{content:'';position:absolute;left:80px;top:0;bottom:0;width:1px;background:var(--bds)}
.ms-item{display:grid;grid-template-columns:80px 1fr;gap:clamp(var(--s6),4vw,56px);padding:clamp(var(--s5),3vw,32px) 0;align-items:start}
.ms-item:not(:last-child){border-bottom:1px solid var(--bds)}
.ms-year{font-family:var(--fd);font-size:.78rem;font-weight:700;color:var(--t3);padding-top:4px;text-align:right;padding-right:var(--s6);position:relative}
.ms-year::after{content:'';position:absolute;right:-5px;top:8px;width:9px;height:9px;border-radius:50%;background:var(--bg);border:2px solid var(--bd)}
.ms-item.active .ms-year{color:var(--ac)}
.ms-item.active .ms-year::after{background:var(--ac);border-color:var(--ac)}
.ms-content{display:flex;flex-direction:column;gap:var(--s3)}
.ms-event-title{font-family:var(--fd);font-size:.88rem;font-weight:700;color:var(--t);letter-spacing:-.02em;line-height:1.3}
.ms-event-text{font-size:.875rem;color:var(--t2);line-height:1.7;max-width:60ch}
.ms-tags{display:flex;gap:var(--s2);flex-wrap:wrap}
.ms-tag{font-size:.68rem;font-weight:600;padding:3px 10px;border-radius:var(--rp)}

/* ─── JOIN ─── */
.join{background:oklch(13% 0.018 285);padding:clamp(var(--s12),8vw,100px) 0}
.join-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--s8),6vw,96px);align-items:center}
.join-label{font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:oklch(55% 0.14 285);margin-bottom:var(--s5)}
.join-title{font-family:var(--fd);font-size:clamp(1.6rem,3vw + .3rem,2.8rem);font-weight:800;color:oklch(92% 0.015 285);letter-spacing:-.05em;line-height:1.1;margin-bottom:var(--s5)}
.join-title em{font-style:normal;color:var(--ac)}
.join-body{font-size:1rem;color:oklch(55% 0.018 285);line-height:1.8;max-width:44ch}
.vacancies{display:flex;flex-direction:column;gap:var(--s3)}
.vacancy{background:oklch(18% 0.018 285);border:1px solid oklch(26% 0.018 285);border-radius:var(--rxl);padding:var(--s5) var(--s6);display:flex;align-items:center;justify-content:space-between;gap:var(--s4);cursor:pointer;transition:border-color 200ms,background 200ms;text-decoration:none;color:inherit}
.vacancy:hover{border-color:oklch(40% 0.1 285);background:oklch(21% 0.02 285)}
.vac-title{font-family:var(--fd);font-size:.82rem;font-weight:700;color:oklch(88% 0.015 285);letter-spacing:-.02em;margin-bottom:var(--s1)}
.vac-tags{display:flex;gap:var(--s2);flex-wrap:wrap}
.vac-tag{font-size:.68rem;color:oklch(50% 0.015 285);background:oklch(22% 0.015 285);border-radius:var(--rp);padding:3px 10px}
.vac-arr{color:oklch(44% 0.12 285);flex-shrink:0;transition:transform 200ms var(--ex)}
.vacancy:hover .vac-arr{transform:translateX(4px);color:var(--ac)}
.join-bottom{margin-top:var(--s6);display:flex;align-items:center;gap:var(--s4)}
.join-email{font-size:.9rem;color:oklch(50% 0.018 285)}
.join-email a{color:oklch(65% 0.12 285);transition:color 150ms}
.join-email a:hover{color:var(--ac)}

/* FOOTER */
.foot{background:oklch(13% 0.018 285)}
.foot-brand{padding:clamp(var(--s12),6vw,80px) 0 clamp(var(--s8),4vw,48px);display:grid;grid-template-columns:1fr auto;align-items:end;gap:var(--s8);border-bottom:1px solid oklch(22% 0.018 285)}
.foot-wordmark{font-family:var(--fd);font-size:clamp(2.4rem,5vw + .5rem,4.5rem);font-weight:800;color:oklch(92% 0.015 285);letter-spacing:-.05em;line-height:1;margin-bottom:var(--s3)}
.foot-tagline{font-size:.95rem;color:oklch(48% 0.018 285);line-height:1.6;max-width:38ch}
.foot-cta-btn{font-family:var(--fb);height:46px;padding:0 var(--s6);background:var(--ac);color:var(--oa);border:none;border-radius:var(--rp);font-size:.9rem;font-weight:600;cursor:pointer;transition:background 120ms;white-space:nowrap}
.foot-cta-btn:hover{background:var(--ach)}
.fg2{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(var(--s6),3vw,var(--s12));padding:clamp(var(--s8),4vw,48px) 0}
.fct{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:oklch(38% 0.015 285);margin-bottom:var(--s4)}
.flk{display:block;font-size:.85rem;color:oklch(52% 0.018 285);margin-bottom:var(--s3);text-decoration:none;transition:color 150ms;cursor:pointer}
.flk:hover{color:oklch(78% 0.025 285)}
.fsoc{display:flex;gap:var(--s3);margin-top:var(--s4)}
.fsoc-a{width:36px;height:36px;border-radius:var(--rm);background:oklch(20% 0.018 285);display:flex;align-items:center;justify-content:center;color:oklch(52% 0.018 285);text-decoration:none;transition:background 150ms,color 150ms}
.fsoc-a:hover{background:oklch(26% 0.02 285);color:oklch(80% 0.025 285)}
.fbot{border-top:1px solid oklch(20% 0.015 285);padding:var(--s5) 0;display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}
.fcp{font-size:.78rem;color:oklch(32% 0.012 285)}
.flgl{display:flex;gap:var(--s6)}

/* RESPONSIVE */
@media(max-width:1100px){
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .values-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .mission-grid,.join-inner{grid-template-columns:1fr}
  .mission-visual{min-height:280px}
}
@media(max-width:640px){
  .team-grid{grid-template-columns:1fr 1fr}
  .ms-track::before{left:60px}
  .ms-item{grid-template-columns:60px 1fr}
  .fg2{grid-template-columns:repeat(2,1fr)}
  .foot-brand{grid-template-columns:1fr}
  .fbot{flex-direction:column;gap:var(--s3);text-align:center}
  .nls{display:none}
  .team-head{flex-direction:column;align-items:flex-start}
}
