/* PROFILE STORY V17 — person-first public presentation */
.profile-story-v17{position:relative;padding:96px 0;border-bottom:1px solid rgba(255,255,255,.06);overflow:hidden}
.profile-story-v17::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 18%,rgba(100,247,161,.10),transparent 28%),radial-gradient(circle at 82% 38%,rgba(91,234,255,.08),transparent 30%)}
.profile-story-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:46px;align-items:center}
.profile-story-copy{min-width:0}
.profile-story-kicker{display:flex;align-items:center;gap:10px;color:rgb(var(--world-accent)/.92);font:700 .72rem/1.2 monospace;letter-spacing:.10em;text-transform:uppercase}
.profile-story-kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:rgb(var(--world-accent));box-shadow:0 0 18px rgb(var(--world-accent)/.44)}
.profile-story-copy h2{margin:18px 0 18px;max-width:760px;font-size:clamp(3rem,5.6vw,6.4rem);line-height:.9;letter-spacing:-.065em}
.profile-story-copy>p{max-width:720px;margin:0;color:rgba(238,246,255,.72);font-size:clamp(1rem,1.15vw,1.18rem);line-height:1.72}
.profile-story-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.profile-story-links a{min-height:46px;padding:0 17px;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.025);font-size:.84rem;font-weight:750}
.profile-story-links a:first-child{color:#071017;background:linear-gradient(105deg,rgb(var(--world-accent)/.96),rgb(var(--world-accent-2)/.94))}
.profile-photo-stage{position:relative;min-height:650px}
.profile-photo{position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:30px;background:#08121b;box-shadow:0 28px 70px rgba(0,0,0,.26)}
.profile-photo img{width:100%;height:100%;display:block;object-fit:cover}
.profile-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 54%,rgba(6,13,20,.52))}
.profile-photo.a{left:0;top:12px;width:44%;height:400px;transform:rotate(-2deg)}
.profile-photo.b{right:0;top:0;width:51%;height:330px;transform:rotate(2deg)}
.profile-photo.c{left:18%;bottom:0;width:38%;height:290px;transform:rotate(1.2deg)}
.profile-photo.d{right:2%;bottom:22px;width:37%;height:275px;transform:rotate(-1.5deg)}
.profile-photo-tag{position:absolute;z-index:2;left:14px;bottom:13px;padding:7px 10px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(5,14,22,.72);backdrop-filter:blur(14px);color:rgba(255,255,255,.78);font:700 .62rem/1 monospace;letter-spacing:.06em}
.profile-path{padding:86px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.profile-path-head{display:grid;grid-template-columns:1fr minmax(300px,.58fr);gap:40px;align-items:end;margin-bottom:26px}
.profile-path-head h2{margin:0;font-size:clamp(2.5rem,4.6vw,5rem);line-height:.92;letter-spacing:-.055em}
.profile-path-head p{margin:0;color:rgba(238,246,255,.64);font-size:1rem;line-height:1.7}
.profile-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.profile-path-card{position:relative;min-height:300px;padding:22px;border:1px solid rgba(255,255,255,.095);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),rgba(10,22,34,.74);box-shadow:0 22px 60px rgba(0,0,0,.16)}
.profile-path-card span{color:rgb(var(--world-accent)/.78);font:700 .7rem/1 monospace;letter-spacing:.09em}
.profile-path-card h3{margin:18px 0 12px;font-size:1.55rem;letter-spacing:-.035em}
.profile-path-card p{margin:0;color:rgba(238,246,255,.66);font-size:.98rem;line-height:1.65}
.profile-path-card small{position:absolute;left:22px;bottom:20px;color:rgba(255,255,255,.34);font:650 .66rem/1.4 monospace;letter-spacing:.05em}
.profile-language{display:flex;gap:6px;align-items:center}
.profile-language button{min-width:40px;min-height:36px;padding:0 10px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:rgba(255,255,255,.56);background:rgba(255,255,255,.015);cursor:pointer;font-size:.72rem;font-weight:800}
.profile-language button.is-active{color:#071017;border-color:transparent;background:linear-gradient(110deg,rgb(var(--world-accent)),rgb(var(--world-accent-2)))}
@media(min-width:1001px) and (prefers-reduced-motion:no-preference){
  .profile-photo.a{animation:profileFloatA 8s ease-in-out infinite}
  .profile-photo.b{animation:profileFloatB 9s ease-in-out infinite}
}
@keyframes profileFloatA{50%{transform:translateY(-8px) rotate(-1.3deg)}}
@keyframes profileFloatB{50%{transform:translateY(9px) rotate(1.2deg)}}
@media(max-width:1000px){
  .profile-story-grid{grid-template-columns:1fr;gap:34px}
  .profile-photo-stage{min-height:620px;max-width:820px}
  .profile-path-head{grid-template-columns:1fr;gap:16px}
}
@media(max-width:700px){
  .profile-story-v17,.profile-path{padding:66px 0}
  .profile-photo-stage{min-height:760px}
  .profile-photo.a{left:0;top:0;width:56%;height:340px}
  .profile-photo.b{right:0;top:120px;width:50%;height:310px}
  .profile-photo.c{left:0;bottom:62px;width:49%;height:280px}
  .profile-photo.d{right:0;bottom:0;width:50%;height:270px}
  .profile-path-grid{grid-template-columns:1fr}
  .profile-path-card{min-height:260px}
}
.profile-subpage{padding:88px 0 96px}
.profile-subhero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,.62fr);gap:42px;align-items:center}
.profile-subcopy h1{margin:16px 0 18px;font-size:clamp(3.2rem,6.4vw,7rem);line-height:.88;letter-spacing:-.07em}
.profile-subcopy>p{margin:0;max-width:760px;color:rgba(238,246,255,.70);font-size:1.08rem;line-height:1.75}
.profile-subvisual{position:relative;overflow:hidden;min-height:560px;border:1px solid rgba(255,255,255,.10);border-radius:32px;background:#08121b;box-shadow:0 30px 80px rgba(0,0,0,.24)}
.profile-subvisual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-subvisual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(5,13,20,.68))}
.profile-subvisual span{position:absolute;z-index:2;left:18px;bottom:18px;padding:8px 11px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(5,14,22,.76);font:700 .68rem/1 monospace;letter-spacing:.06em}
.profile-chapters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:44px}
.profile-chapter{min-height:260px;padding:24px;border:1px solid rgba(255,255,255,.085);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),rgba(9,21,32,.72)}
.profile-chapter>span{color:rgb(var(--world-accent)/.78);font:700 .68rem/1 monospace;letter-spacing:.08em}
.profile-chapter h2{margin:18px 0 12px;font-size:1.75rem;letter-spacing:-.04em}
.profile-chapter p{margin:0;color:rgba(238,246,255,.66);font-size:1rem;line-height:1.7}
.profile-private-boundary{margin-top:16px;padding:18px 20px;border:1px solid rgba(184,255,104,.16);border-radius:22px;background:rgba(184,255,104,.035);color:rgba(232,255,210,.76);font-size:.96rem;line-height:1.65}
.profile-subnav{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.profile-subnav a{min-height:42px;padding:0 15px;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.10);border-radius:999px;background:rgba(255,255,255,.02);font-size:.82rem;font-weight:750}
.profile-subnav a:hover{border-color:rgb(var(--world-accent)/.28);background:rgb(var(--world-accent)/.04)}
@media(max-width:900px){.profile-subhero{grid-template-columns:1fr}.profile-subvisual{min-height:520px}.profile-chapters{grid-template-columns:1fr}}
@media(max-width:620px){.profile-subpage{padding:64px 0 72px}.profile-subvisual{min-height:460px}.profile-chapter{min-height:auto}}
/* PROFILE STORY V18 — expanded public narrative */
.profile-subhero{display:block;padding:clamp(4rem,7vw,7rem) 0 3rem}
.profile-subhero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.75fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.profile-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1.4rem}
.profile-section-head>span{color:rgb(var(--world-accent)/.78);font:700 .7rem/1 monospace;letter-spacing:.12em;text-transform:uppercase}
.profile-section-head h2{max-width:900px;margin:0;font-size:clamp(2.25rem,4.4vw,4.7rem);line-height:.95;letter-spacing:-.05em}
.profile-facts,.profile-story-body,.profile-visual-story,.profile-timeline,.profile-value,.profile-next{padding:clamp(3rem,6vw,6rem) 0;border-top:1px solid rgba(255,255,255,.06)}
.profile-fact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.profile-fact-grid article{min-height:180px;padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:28px;background:linear-gradient(145deg,rgba(100,247,161,.055),rgba(91,234,255,.025)),rgba(8,19,29,.76)}
.profile-fact-grid strong{display:block;font-size:clamp(2.2rem,4vw,4.2rem);line-height:.9;letter-spacing:-.055em;color:#f4fbff}
.profile-fact-grid span{display:block;margin-top:18px;color:rgba(235,245,250,.68);line-height:1.5}
.profile-story-stack{display:grid;gap:12px}
.profile-story-section{display:grid;grid-template-columns:72px minmax(0,1fr);gap:1.2rem;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid rgba(255,255,255,.085);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),rgba(9,21,32,.72)}
.profile-story-section>span{color:rgb(var(--world-accent));font:700 .72rem/1 monospace;letter-spacing:.12em}
.profile-story-section h2{margin:0 0 .75rem;font-size:clamp(1.65rem,3vw,2.7rem);letter-spacing:-.035em}
.profile-story-section p{margin:0;max-width:90ch;color:rgba(238,246,255,.69);font-size:1.04rem;line-height:1.76}
.profile-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.profile-gallery-card{position:relative;margin:0;min-height:340px;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.09);background:#08121b}
.profile-gallery-card img{width:100%;height:100%;display:block;object-fit:cover;position:absolute;inset:0}
.profile-gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(4,11,18,.76))}
.profile-gallery-card figcaption{position:absolute;z-index:2;left:16px;right:16px;bottom:15px;color:#fff;font-weight:750;letter-spacing:-.01em}
.profile-timeline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.profile-timeline-item{position:relative;min-height:270px;padding:22px;border:1px solid rgba(255,255,255,.085);border-radius:28px;background:rgba(9,21,32,.74)}
.profile-timeline-item>span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgb(var(--world-accent)/.12);color:rgb(var(--world-accent));font:800 .72rem/1 monospace}
.profile-timeline-item h3{margin:2rem 0 .75rem;font-size:1.35rem;line-height:1.1}
.profile-timeline-item p{margin:0;color:rgba(238,246,255,.66);line-height:1.68}
.profile-value-inner,.profile-next-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:2rem;align-items:end}
.profile-value span,.profile-next span{color:rgb(var(--world-accent));font:700 .7rem/1 monospace;letter-spacing:.12em}
.profile-value h2,.profile-next h2{margin:.65rem 0 0;font-size:clamp(2.2rem,4.4vw,4.6rem);line-height:.95;letter-spacing:-.05em}
.profile-value p{margin:0;color:rgba(238,246,255,.72);font-size:1.08rem;line-height:1.76}
.profile-next-actions{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:flex-end}
.profile-next-actions a{display:inline-flex;align-items:center;min-height:48px;padding:0 17px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.025);font-weight:800}
.profile-next-actions a:first-child{color:#071017;background:linear-gradient(110deg,rgb(var(--world-accent)),rgb(var(--world-accent-2)));border-color:transparent}
.profile-subpage>.profile-private-boundary{margin-top:0}
@media(max-width:1000px){
 .profile-subhero-grid,.profile-value-inner,.profile-next-inner{grid-template-columns:1fr}
 .profile-fact-grid,.profile-timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile-next-actions{justify-content:flex-start}
}
@media(max-width:680px){
 .profile-section-head{display:block}
 .profile-section-head>span{display:block;margin-bottom:.7rem}
 .profile-fact-grid,.profile-timeline-grid,.profile-gallery{grid-template-columns:1fr}
 .profile-story-section{grid-template-columns:1fr}
 .profile-story-section>span{margin-bottom:.25rem}
 .profile-gallery-card{min-height:390px}
 .profile-fact-grid article,.profile-timeline-item{min-height:0}
}

/* PROFILE HERO SIZE FIX — keep portrait supportive, never a 1.5-screen takeover */
.profile-subvisual{
  margin:0;
  min-height:0 !important;
  height:clamp(340px,38vw,500px);
  max-height:58vh;
  aspect-ratio:1.05/1;
}
.profile-subvisual img{
  object-fit:cover;
  object-position:center 24%;
}
@media(max-width:900px){
  .profile-subvisual{
    width:min(100%,620px);
    height:clamp(320px,62vw,460px);
    max-height:56vh;
    aspect-ratio:1.18/1;
  }
}
@media(max-width:620px){
  .profile-subvisual{
    height:clamp(300px,92vw,410px);
    max-height:52vh;
    border-radius:24px;
  }
}

/* V19 — story cards with integrated real imagery */
.profile-story-section{
  position:relative;
  overflow:hidden;
  grid-template-columns:72px minmax(0,1fr) minmax(180px,32%)!important;
  min-height:240px;
}
.profile-story-section::after{
  content:"";
  grid-column:3;
  grid-row:1;
  position:absolute;
  top:0;right:0;bottom:0;
  width:32%;
  min-width:180px;
  background-position:center 28%;
  background-size:cover;
  background-repeat:no-repeat;
  filter:saturate(.92) contrast(1.02);
  opacity:.88;
}
.profile-story-section::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0 0 0 auto;
  width:38%;
  background:linear-gradient(90deg,rgba(8,19,29,.98),rgba(8,19,29,.24) 48%,rgba(8,19,29,.12));
  pointer-events:none;
}
.profile-story-section>span,
.profile-story-section>div{
  position:relative;
  z-index:2;
}
.profile-story-section:nth-child(1)::after{background-image:url("../media/profile/tim-03-practical.webp")}
.profile-story-section:nth-child(2)::after{background-image:url("../media/profile/tim-04-transport.webp")}
.profile-story-section:nth-child(3)::after{background-image:url("../media/profile/tim-05-software.webp")}
.profile-story-section:nth-child(4)::after{background-image:url("../media/profile/tim-04-transport.webp")}
.profile-story-section:nth-child(5)::after{background-image:url("../media/profile/tim-01-formal.webp")}
.profile-story-section:nth-child(6)::after{background-image:url("../media/profile/tim-05-software.webp")}
.profile-story-section>div{padding-right:clamp(1rem,3vw,2rem)}
@media(max-width:820px){
  .profile-story-section{
    grid-template-columns:1fr!important;
    padding-top:210px!important;
  }
  .profile-story-section::after{
    top:0;left:0;right:0;bottom:auto;
    width:100%;height:190px;min-width:0;
    background-position:center 28%;
  }
  .profile-story-section::before{
    inset:0 0 auto 0;
    width:100%;height:210px;
    background:linear-gradient(180deg,rgba(8,19,29,.08),rgba(8,19,29,.92));
  }
  .profile-story-section>div{padding-right:0}
}

/* V20 — compact evidence facts: useful, not dominant */
.profile-facts{padding:clamp(1.8rem,3.5vw,3rem) 0!important}
.profile-facts .profile-section-head{margin-bottom:.9rem}
.profile-facts .profile-section-head h2{font-size:clamp(1.55rem,2.8vw,2.5rem)!important;max-width:none}
.profile-fact-grid{gap:8px!important}
.profile-fact-grid article{
  min-height:112px!important;
  padding:16px 17px!important;
  border-radius:20px!important;
}
.profile-fact-grid strong{
  font-size:clamp(1.65rem,2.8vw,2.65rem)!important;
  line-height:.95!important;
}
.profile-fact-grid span{
  margin-top:9px!important;
  font-size:.86rem;
  line-height:1.4!important;
}
@media(max-width:700px){
  .profile-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){
  .profile-fact-grid{grid-template-columns:1fr!important}
}
