/* Founder page — shares the homepage design system; only page-specific layout lives here. */
/* ---------- Hero ---------- */
.f-hero{position:relative;isolation:isolate;overflow:hidden;min-height:1040px;padding:150px 6% 60px;display:flex;flex-direction:column;align-items:center;
  background:linear-gradient(180deg,#b49c99 0%,#d8c8ba 22%,var(--ivory) 68%)}
.f-halo{position:absolute;width:70%;height:60%;left:15%;top:22%;border-radius:50%;background:radial-gradient(ellipse,#f5eee2cc,transparent 68%);z-index:-1;scale:calc(1 + var(--progress,0)*.3)}
.f-eyebrow{position:absolute;top:150px;left:6%;font-size:11px;letter-spacing:2px}
.f-title{font:300 clamp(64px,9.6vw,150px)/.86 var(--serif);letter-spacing:-.06em;text-align:center;margin:28px 0 0;position:relative;z-index:3;translate:0 calc(var(--progress,0)*-40px)}
.f-title em{font-weight:300}
.f-stage{position:relative;width:clamp(260px,34vw,500px);height:clamp(430px,50vw,640px);margin-top:-10px;z-index:2;translate:0 calc(var(--progress,0)*60px)}
.f-arch{position:absolute;left:0;right:0;bottom:0;height:76%;border-radius:999px 999px 6px 6px;background:radial-gradient(ellipse at 40% 25%,#d3bec9,#9a8a9d 52%,#6e6179);overflow:hidden}
.f-arch:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#ffffff05 3px,#ffffff05 4px)}
.f-figure{position:absolute;left:50%;bottom:0;height:104%;width:auto;max-width:none;translate:-50% 0;filter:drop-shadow(0 30px 38px rgba(36,26,46,.38));z-index:1}
.f-card{position:absolute;top:56%;width:19%;aspect-ratio:4/5;z-index:4;margin:0;box-shadow:0 30px 60px -30px rgba(36,26,46,.55)}
.f-card-left{left:5%;rotate:calc(-10deg + var(--progress,0)*7deg);translate:calc(var(--mxn,0)*-14px) calc(var(--progress,0)*-60px)}
.f-card-right{right:5%;rotate:calc(9deg - var(--progress,0)*7deg);translate:calc(var(--mxn,0)*18px) calc(var(--progress,0)*-90px)}
.f-bottom{width:100%;max-width:1180px;margin-top:46px;display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:end;position:relative;z-index:5}
.f-intro{font:24px/1.3 var(--serif);letter-spacing:-.2px;max-width:560px;margin:0}
.f-facts{display:flex;flex-direction:column;gap:12px;align-items:flex-end;font-size:10px;letter-spacing:1.6px;text-align:right}
.f-facts .scroll-cue{margin-top:14px}

/* ---------- Pillars ---------- */
.f-pillars{background:var(--ivory);padding-top:140px;padding-bottom:150px}
.f-pillars-head .eyebrow{margin-bottom:45px}
.f-pillars-head .editorial{font-size:clamp(60px,8vw,120px)}
.f-pillar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:90px}
.f-pillar:nth-child(2){padding-top:70px}.f-pillar:nth-child(3){padding-top:140px}
.f-pillar-top{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:16px 0;font:22px/1 var(--serif)}
.f-dot{width:46px;height:46px;border-radius:50%;background:#e1d8e9}
.f-dot-peach{background:#f1d9cc}
.f-pillar h3{font:84px/.9 var(--serif);letter-spacing:-3px;margin:34px 0 22px}
.f-pillar p{font-size:15px;line-height:1.9;margin:0}

/* ---------- Responsive ---------- */
@media(max-width:1100px){.f-card{width:21%}.f-pillar h3{font-size:68px}}
@media(max-width:800px){
  .f-hero{min-height:0;padding-top:130px}
  .f-eyebrow{position:static;margin-bottom:6px;align-self:flex-start}
  .f-card{top:clamp(340px,48vw,430px);bottom:auto;width:24%}
  .f-bottom{grid-template-columns:1fr;gap:28px;margin-top:34px}
  .f-facts{align-items:flex-start;text-align:left}
  .f-pillar-grid{grid-template-columns:1fr;gap:10px;margin-top:50px}
  .f-pillar:nth-child(2),.f-pillar:nth-child(3){padding-top:0}
  .f-pillar{padding-bottom:30px}
}
@media(max-width:600px){
  .f-hero{padding:115px 6% 50px}
  .f-title{font-size:15vw}
  .f-stage{width:62%;height:360px}
  .f-card{display:none}
  .f-intro{font-size:21px}
  .f-pillars{padding-top:90px;padding-bottom:80px}
  .f-pillar h3{font-size:58px}
}
@media(prefers-reduced-motion:reduce){.f-title,.f-stage,.f-card,.f-halo{translate:none;scale:none}}
@media(max-width:600px){.f-stage{margin-top:22px}}
/* ---------- Notable performances: year ledger ---------- */
.perf{padding-top:120px;padding-bottom:110px}
.perf-head,.learn-head{display:grid;grid-template-columns:1.3fr .7fr;gap:8%;align-items:end;max-width:1300px;margin:0 auto 70px}
.perf-head .eyebrow,.learn-head .eyebrow{display:block;margin-bottom:32px}
.perf-head .editorial,.learn-head .editorial{font-size:clamp(56px,7vw,112px)}
.perf-head p,.learn-head p{font-size:14px;line-height:1.8;max-width:330px;margin:0 0 8px;justify-self:end;color:#4a4150}
.perf-ledger{max-width:1300px;margin:0 auto}
.perf-year{display:grid;grid-template-columns:230px 1fr;gap:40px;border-top:1px solid var(--line);padding:34px 0 40px}
.perf-yr{position:sticky;top:120px;align-self:start;margin:0;font:300 clamp(64px,7.5vw,112px)/.9 var(--serif);letter-spacing:-.05em;color:#8e7e9a}
.perf-list{list-style:none;margin:0;padding:0}
.perf-row{position:relative;display:grid;grid-template-columns:46px 1fr auto;gap:18px;align-items:center;padding:24px 22px 24px 0;border-bottom:1px solid var(--line);transition:padding .5s var(--f-cubic),background .5s var(--f-cubic)}
.perf-row:last-child{border-bottom:0}
.perf-idx{font:400 13px var(--serif);letter-spacing:.5px;color:#8e7e9a}
.perf-row h4{margin:0;font:400 clamp(26px,2.8vw,38px)/1.05 var(--serif);letter-spacing:-.8px}
.perf-row p{margin:8px 0 0;font-size:13px;color:#6b606c}
.perf-tag{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#8e6a9e;text-align:right;white-space:nowrap}
.perf-row:hover{padding-left:16px}
.perf-featured{margin:10px 0;padding:30px 28px 30px 24px;border-radius:16px;border-bottom:0;
  background:linear-gradient(120deg,rgba(184,165,204,.32),rgba(232,185,160,.3));border:1px solid rgba(255,255,255,.6)}
.perf-featured:hover{padding-left:30px}
.perf-featured h4{font-size:clamp(32px,3.6vw,50px)}
.perf-featured .perf-tag{color:#c9794f}
.perf-foot{display:flex;justify-content:space-between;gap:20px;max-width:1300px;margin:40px auto 0;padding-top:24px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1.8px;color:#6b606c}

/* ---------- Academic journey ---------- */
.learn{padding-top:30px;padding-bottom:130px}
.learn-path{list-style:none;margin:0 auto;padding:0;max-width:1300px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;position:relative}
.learn-path:before{content:'';position:absolute;left:12%;right:12%;top:63px;height:1px;background:linear-gradient(90deg,#b8a5cc,#e0a487)}
.learn-card{position:relative;text-align:center;padding:0 10px 38px}
.learn-lens{position:relative;z-index:1;width:126px;height:126px;margin:0 auto 30px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#fff,#efe6f3 70%);border:1px solid var(--line);box-shadow:0 22px 44px -26px rgba(41,35,47,.5),0 0 0 9px rgba(244,239,232,.9)}
.learn-lens strong{font:400 34px/1 var(--serif);letter-spacing:-.03em;color:#6f5a87}
.learn-lens small{margin-top:6px;font-size:9px;letter-spacing:1.8px;color:#8a7f8e}
.learn-tag{display:block;font-size:10px;letter-spacing:2px;color:#8e6a9e;margin-bottom:14px}
.learn-card h3{margin:0 0 10px;font:400 clamp(32px,3.2vw,46px)/1 var(--serif);letter-spacing:-1px}
.learn-card p{margin:0 auto 22px;font-size:14px;line-height:1.7;color:#4a4150;max-width:260px}
.learn-uni{display:block;font:500 12px var(--sans);letter-spacing:1.4px;text-transform:uppercase}
.learn-country{display:block;margin-top:6px;font-size:10px;letter-spacing:1.6px;color:#8a7f8e}
.learn-featured .learn-lens{background:radial-gradient(circle at 35% 30%,#fff,#f3dcd0 75%);border-color:rgba(201,121,79,.4)}
.learn-featured .learn-lens strong{color:#c9794f}
.learn-foot{display:flex;justify-content:space-between;gap:20px;max-width:1300px;margin:34px auto 0;padding-top:24px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1.8px;color:#6b606c}

/* ---------- Responsive ---------- */
@media(max-width:1000px){
  .perf-head,.learn-head{grid-template-columns:1fr;gap:20px}
  .perf-head p,.learn-head p{justify-self:start}
  .perf-year{grid-template-columns:150px 1fr;gap:24px}
}
@media(max-width:700px){
  .perf{padding-top:80px;padding-bottom:70px}
  .perf-year{grid-template-columns:1fr;gap:6px;padding:26px 0 30px}
  .perf-yr{position:static;font-size:64px}
  .perf-row{grid-template-columns:34px 1fr;gap:12px;padding:20px 0}
  .perf-tag{grid-column:2;text-align:left;margin-top:-6px}
  .perf-featured{padding:24px 18px}
  .perf-foot,.learn-foot{flex-direction:column;gap:10px}
  .learn{padding-bottom:80px}
  .learn-path{grid-template-columns:1fr;gap:34px}
  .learn-path:before{display:none}
}
.perf-featured{margin:10px -22px 10px -24px;padding:30px 44px 30px 24px}
.perf-featured:hover{padding-left:38px}
@media(max-width:700px){.perf-featured{margin:10px -12px;padding:24px 12px}}



/* ---------- Hero cards: text card (left) + rounded photo (right) ---------- */
.f-card-text{display:flex;align-items:center;aspect-ratio:auto;min-height:0;padding:30px 28px;border-radius:22px;
  background:rgba(250,246,240,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.7);
  box-shadow:0 30px 60px -34px rgba(36,26,46,.45)}
.f-card-text p{margin:0;font:400 clamp(15px,1.28vw,19px)/1.5 var(--serif);letter-spacing:-.1px;color:#2f2933}
.f-card-right{border-radius:22px}
.f-bottom{display:flex;justify-content:center;max-width:none;margin-top:44px}
@media(max-width:900px){
  .f-card-right{display:none}
  .f-card-text{position:static;width:auto;max-width:560px;rotate:none;translate:none;margin:34px auto 0;padding:26px 24px}
  .f-card-text p{font-size:19px}
}

/* ---------- Achievements: grid with medals ---------- */
.milestones{padding:90px 0 130px}
.ms-grid{list-style:none;margin:80px auto 0;padding:0 5%;max-width:1280px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ms-card{position:relative;display:flex;flex-direction:column;padding:26px 26px 28px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .6s var(--f-cubic),background .6s var(--f-cubic),border-color .6s var(--f-cubic)}
.ms-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
.ms-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.ms-icon{flex:none;filter:drop-shadow(0 10px 16px rgba(0,0,0,.35))}
.ms-tag{color:#b8a5cc;font-size:10px;letter-spacing:2px;text-align:right;padding-top:4px}
.ms-stat{display:flex;align-items:baseline;gap:12px;margin:0 0 10px}
.ms-num{font:400 clamp(44px,4.2vw,64px)/.9 var(--serif);letter-spacing:-.04em;color:var(--ivory)}
.ms-num span{font:inherit;letter-spacing:inherit;text-transform:none;color:inherit;max-width:none;display:inline}
.ms-unit,.ms-prize{font-size:10px;letter-spacing:1.8px;color:#b9adbf}
.ms-prize{display:block;margin:0 0 10px;color:#e3c070}
.ms-silver .ms-prize,.ms-yoga .ms-prize{color:#cfcad8}
.ms-card h3{font:400 clamp(22px,2vw,28px)/1.1 var(--serif);letter-spacing:-.5px;margin:0 0 12px}
.ms-card p{font-size:13.5px;line-height:1.7;color:#cdc2d2;margin:0}
.ms-big{grid-column:span 2;grid-row:span 2;justify-content:flex-end;padding:40px 40px 42px;
  background:radial-gradient(ellipse at 20% 0%,rgba(224,164,135,.3),rgba(184,165,204,.12) 60%,rgba(255,255,255,.04));border-color:rgba(232,169,138,.42)}
.ms-big .ms-top{margin-bottom:auto}
.ms-big .ms-icon{width:96px;height:88px}
.ms-big .ms-num{font-size:clamp(80px,9vw,140px);color:#e8a98a}
.ms-big h3{font-size:clamp(30px,3vw,44px)}
.ms-big p{font-size:15px;max-width:420px}
@media(max-width:1000px){
  .ms-grid{grid-template-columns:repeat(2,1fr)}
  .ms-big{grid-column:1/-1;grid-row:auto}
}
@media(max-width:600px){
  .milestones{padding:60px 0 90px}
  .ms-grid{grid-template-columns:1fr;margin-top:50px;padding:0 6%}
  .ms-big{padding:30px 26px}
}

/* ---------- Achievements heading + description (centred) ---------- */
.ms-head{text-align:center;padding:0 8%}
.ms-head .grand-title{margin:54px 0 20px}
.ms-head p{max-width:470px;margin:0 auto;font-size:15px;line-height:1.8;color:#c9bdce}
.perf-row{grid-template-columns:46px 1fr}
@media(max-width:700px){.perf-row{grid-template-columns:34px 1fr}}
