.profileCore,.profileCore *{box-sizing:border-box}
.profileCore{
    --ink:#f4f1ec;
    --muted:#9b9892;
    --muted-2:#6d6b67;
    --line:rgba(255,255,255,.12);
    --line-strong:rgba(255,255,255,.22);
    --accent:#ff5a32;

    position:relative;
    grid-column:1 / -1;
    justify-self:center;
    width:min(1180px,calc(100vw - 48px));
    max-width:none;
    margin:82px 0 90px;
    color:var(--ink);
    font-family:"Instrument Sans",Arial,sans-serif;
    overflow:hidden;
    background:
      radial-gradient(circle at 83% 18%,rgba(255,90,50,.12),transparent 31%),
      linear-gradient(180deg,#090909 0%,#050505 100%);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 40px 100px rgba(0,0,0,.36);
    isolation:isolate;
  }
  .profileCore::before{
    content:"";
    position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.36;
    background-image:
      linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
    background-size:48px 48px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 82%);
  }
  .profileCore::after{
    content:"";position:absolute;right:-180px;top:-260px;width:520px;height:520px;border:1px solid rgba(255,90,50,.16);border-radius:50%;pointer-events:none;
    box-shadow:0 0 0 80px rgba(255,90,50,.025),0 0 0 160px rgba(255,90,50,.018);
  }

  .profileCore__head{display:grid;grid-template-columns:1.25fr .75fr;gap:50px;padding:42px 46px 34px;border-bottom:1px solid var(--line)}
  .profileCore__eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 16px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
  .profileCore__eyebrow::before{content:"";width:34px;height:1px;background:var(--accent)}
  .profileCore h2{margin:0;max-width:690px;font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:clamp(44px,5.5vw,72px);line-height:.92;letter-spacing:-.055em;font-weight:680}
  .profileCore__intro{margin:7px 0 0;align-self:end;color:#aaa6a0;font-size:15px;line-height:1.65;max-width:380px}

  .profileCore__stage{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:570px}
  .profileCore__nav{position:relative;padding:24px 0 24px 22px;border-right:1px solid var(--line);background:rgba(255,255,255,.012)}
  .profileCore__nav::after{content:"";position:absolute;right:-1px;top:24px;width:1px;height:calc(100% - 48px);background:linear-gradient(transparent,rgba(255,90,50,.55),transparent);opacity:.65}
  .profileCore__navTitle{display:flex;justify-content:space-between;align-items:center;padding:0 24px 16px 8px;color:#74716c;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
  .profileCore__navTitle b{color:#aaa6a0;font-weight:700}
  .profileCore__tab{
    position:relative;width:100%;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:8px;padding:16px 22px 16px 8px;border:0;border-top:1px solid rgba(255,255,255,.07);background:transparent;color:#777570;text-align:left;cursor:pointer;transition:background .28s ease,color .28s ease,padding .28s ease;
  }
  .profileCore__tab:last-child{border-bottom:1px solid rgba(255,255,255,.07)}
  .profileCore__tab::before{content:"";position:absolute;left:0;top:50%;width:0;height:2px;background:var(--accent);transform:translateY(-50%);transition:width .28s ease}
  .profileCore__tab:hover{color:#d7d3cc;background:rgba(255,255,255,.018)}
  .profileCore__tab[aria-selected="true"]{color:var(--ink);padding-left:16px;background:linear-gradient(90deg,rgba(255,90,50,.09),transparent 76%)}
  .profileCore__tab[aria-selected="true"]::before{width:8px}
  .profileCore__num{font-size:12px;font-weight:800;letter-spacing:.12em;color:inherit}
  .profileCore__label{font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:21px;font-weight:620;letter-spacing:-.025em}
  .profileCore__kind{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#5f5d59;transition:color .28s ease}
  .profileCore__tab[aria-selected="true"] .profileCore__kind{color:var(--accent)}

  .profileCore__canvas{position:relative;min-width:0;padding:42px 48px 34px;display:flex;flex-direction:column;overflow:hidden}
  .profileCore__canvasTop{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;position:relative;z-index:2}
  .profileCore__counter{display:flex;align-items:baseline;gap:8px;color:#7d7a75;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
  .profileCore__counter strong{color:var(--accent);font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:28px;line-height:1;letter-spacing:-.04em}
  .profileCore__hint{display:flex;align-items:center;gap:7px;color:#5f5d58;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
  .profileCore__key{display:grid;place-items:center;width:24px;height:24px;border:1px solid rgba(255,255,255,.14);color:#8f8c86;font-size:12px}

  .profileCore__content{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;padding:38px 0 26px}
  .profileCore__ghost{position:absolute;right:-8px;top:54px;font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:clamp(180px,20vw,278px);line-height:.72;font-weight:700;letter-spacing:-.095em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);pointer-events:none;user-select:none;z-index:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .25s ease}
  .profileCore__title{position:relative;z-index:2;margin:0 0 16px;max-width:700px;font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:clamp(60px,7vw,96px);line-height:.86;letter-spacing:-.065em;font-weight:680}
  .profileCore__lead{position:relative;z-index:2;margin:0 0 18px;max-width:650px;font-family:"Inter Tight","Inter Display",Inter,Arial,sans-serif;font-size:clamp(22px,2.4vw,30px);line-height:1.18;letter-spacing:-.03em;color:#e5e1da;font-weight:510}
  .profileCore__copy{position:relative;z-index:2;margin:0;max-width:690px;color:#999690;font-size:16px;line-height:1.68}
  .profileCore__practice{position:relative;z-index:2;display:grid;grid-template-columns:118px 1fr;gap:22px;margin-top:auto;padding-top:22px;border-top:1px solid var(--line)}
  .profileCore__practice span{padding-top:2px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
  .profileCore__practice p{margin:0;max-width:620px;color:#d0ccc5;font-size:14px;line-height:1.55;font-weight:550}

  .profileCore__footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:18px 46px;border-top:1px solid var(--line);background:rgba(255,255,255,.012)}
  .profileCore__progress{height:2px;background:rgba(255,255,255,.08);overflow:hidden}
  .profileCore__progress i{display:block;width:14.285%;height:100%;background:linear-gradient(90deg,var(--accent),#ff8b6f);transition:width .36s cubic-bezier(.2,.7,.2,1)}
  .profileCore__controls{display:flex;align-items:center;gap:8px}
  .profileCore__controls button{width:42px;height:42px;border:1px solid var(--line-strong);background:#0b0b0c;color:#cbc7c0;font-size:18px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}
  .profileCore__controls button:hover,.profileCore__controls button:focus-visible{border-color:var(--accent);color:var(--accent);outline:none;background:#111}
  .profileCore__controls button:disabled{opacity:.28;cursor:default}

  .is-switching .profileCore__title,.is-switching .profileCore__lead,.is-switching .profileCore__copy,.is-switching .profileCore__practice{animation:coreIn .38s cubic-bezier(.22,.7,.2,1) both}
  .is-switching .profileCore__lead{animation-delay:.035s}.is-switching .profileCore__copy{animation-delay:.07s}.is-switching .profileCore__practice{animation-delay:.105s}
  .is-switching .profileCore__ghost{transform:translate3d(14px,-6px,0);opacity:.72}
  @keyframes coreIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

  @media(max-width:880px){
    .profileCore{width:100%;border-left:0;border-right:0}
    .profileCore__head{grid-template-columns:1fr;gap:18px;padding:32px 24px 26px}
    .profileCore__intro{max-width:620px;margin:0}
    .profileCore__stage{grid-template-columns:1fr;min-height:auto}
    .profileCore__nav{display:flex;overflow-x:auto;padding:0;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none}
    .profileCore__nav::-webkit-scrollbar{display:none}
    .profileCore__nav::after,.profileCore__navTitle{display:none}
    .profileCore__tab{flex:0 0 auto;width:auto;grid-template-columns:auto auto;gap:10px;padding:16px 18px;border-top:0;border-right:1px solid rgba(255,255,255,.07)}
    .profileCore__tab:last-child{border-bottom:0}
    .profileCore__tab[aria-selected="true"]{padding-left:18px;background:rgba(255,90,50,.08)}
    .profileCore__tab::before{left:0;top:auto;bottom:0;width:100%;height:0;transform:none}
    .profileCore__tab[aria-selected="true"]::before{width:100%;height:2px}
    .profileCore__label{font-size:16px}.profileCore__kind{display:none}.profileCore__num{font-size:10px}
    .profileCore__canvas{min-height:560px;padding:30px 24px 24px}
    .profileCore__hint{display:none}
    .profileCore__content{justify-content:flex-start;padding:54px 0 28px}
    .profileCore__ghost{right:-4px;top:74px;font-size:170px}
    .profileCore__title{font-size:58px}.profileCore__lead{font-size:23px}.profileCore__copy{font-size:15px;line-height:1.62}
    .profileCore__practice{grid-template-columns:1fr;gap:8px;margin-top:34px}
    .profileCore__footer{padding:16px 24px}
  }
  @media(max-width:480px){
    .profileCore__head{padding-top:28px}
    .profileCore h2{font-size:44px}
    .profileCore__intro{font-size:14px}
    .profileCore__canvas{min-height:590px}
    .profileCore__title{font-size:53px}
    .profileCore__lead{font-size:21px}
    .profileCore__footer{grid-template-columns:1fr auto}
  }
  @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.profileCore__progress i,.profileCore__ghost{transition:none}.is-switching .profileCore__title,.is-switching .profileCore__lead,.is-switching .profileCore__copy,.is-switching .profileCore__practice{animation:none}}


/* Integration with Night Atlas article grid
   Desktop: start in article column 2, never underneath the sticky TOC.
   Width uses the real remaining width of the 1440px Night Atlas reading grid. */
@media(min-width:1051px){
  .atlasReading > .profileCore{
    grid-column:2;
    justify-self:start;
    width:min(
      980px,
      calc(
        min(100vw, 1440px)
        - clamp(24px,5.3vw,78px)
        - clamp(24px,5.3vw,78px)
        - 235px
        - clamp(72px,9vw,160px)
      )
    );
    margin:82px 0 90px;
  }
}

/* Tablet: the article rail is narrower; keep the component beside it,
   but switch the component itself to a compact single-column presentation. */
@media(min-width:761px) and (max-width:1050px){
  .atlasReading > .profileCore{
    grid-column:2;
    justify-self:start;
    width:100%;
    margin:70px 0 80px;
  }
  .profileCore__head{grid-template-columns:1fr;gap:18px;padding:32px 28px 28px}
  .profileCore__intro{max-width:620px;margin:0}
  .profileCore__stage{grid-template-columns:1fr;min-height:auto}
  .profileCore__nav{display:flex;overflow-x:auto;padding:0;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none}
  .profileCore__nav::-webkit-scrollbar{display:none}
  .profileCore__nav::after,.profileCore__navTitle{display:none}
  .profileCore__tab{flex:0 0 auto;width:auto;grid-template-columns:auto auto;gap:10px;padding:16px 18px;border-top:0;border-right:1px solid rgba(255,255,255,.07)}
  .profileCore__tab[aria-selected="true"]{padding-left:18px}
  .profileCore__kind{display:none}
  .profileCore__canvas{min-height:540px;padding:30px 28px 26px}
}

/* After the special section, article copy returns to its normal right column. */
.atlasReading > .atlasContent--afterCore{grid-column:2}

@media(max-width:760px){
  .atlasReading > .atlasContent--afterCore{grid-column:auto}
  .atlasReading > .profileCore{
    width:100%;
    justify-self:stretch;
    margin:54px 0 64px;
  }
}

/* Mobile article hero: brighter image, but preserve text contrast. */
@media(max-width:760px){
  .nightAtlas.profileAtlas .atlasHero--split .atlasHeroArt{
    object-position:70% center;
    filter:brightness(.72) saturate(.98) contrast(1.03);
  }
  .nightAtlas.profileAtlas .atlasHero--split::before{
    background:linear-gradient(
      180deg,
      rgba(11,11,11,.14) 0%,
      rgba(11,11,11,.34) 34%,
      rgba(11,11,11,.62) 68%,
      rgba(11,11,11,.94) 100%
    );
  }
}

/* Guard against any accidental horizontal page shift from the mobile tab strip. */
@media(max-width:880px){
  .nightAtlas.profileAtlas{overflow-x:clip}
  .profileCore__nav{overscroll-behavior-x:contain}
}

/* Desktop editorial fit — compact proportions for the real article column. */
@media(min-width:1051px){
  .atlasReading > .profileCore{
    width:min(
      940px,
      calc(
        min(100vw,1440px)
        - clamp(24px,5.3vw,78px)
        - clamp(24px,5.3vw,78px)
        - 235px
        - clamp(72px,9vw,160px)
      )
    );
  }

  .profileCore__head{
    grid-template-columns:minmax(0,1.18fr) minmax(245px,.82fr);
    gap:34px;
    padding:34px 36px 29px;
  }
  .profileCore__eyebrow{margin-bottom:13px;font-size:10px}
  .profileCore h2{
    max-width:590px;
    font-size:clamp(43px,4.35vw,60px);
    line-height:.94;
  }
  .profileCore__intro{
    max-width:310px;
    font-size:14px;
    line-height:1.58;
  }

  .profileCore__stage{
    grid-template-columns:260px minmax(0,1fr);
    min-height:500px;
  }
  .profileCore__nav{padding:20px 0 20px 18px}
  .profileCore__navTitle{padding:0 20px 13px 7px;font-size:9px}
  .profileCore__tab{
    grid-template-columns:43px 1fr auto;
    padding:13px 18px 13px 7px;
  }
  .profileCore__tab[aria-selected="true"]{padding-left:14px}
  .profileCore__num{font-size:11px}
  .profileCore__label{font-size:18px}
  .profileCore__kind{font-size:8px}

  .profileCore__canvas{padding:34px 36px 28px}
  .profileCore__counter{font-size:10px}
  .profileCore__counter strong{font-size:25px}
  .profileCore__content{padding:31px 0 22px}
  .profileCore__ghost{top:50px;font-size:clamp(150px,13vw,205px)}
  .profileCore__title{
    max-width:590px;
    margin-bottom:13px;
    font-size:clamp(54px,5.2vw,76px);
    line-height:.89;
  }
  .profileCore__lead{
    max-width:560px;
    margin-bottom:15px;
    font-size:clamp(21px,2vw,26px);
    line-height:1.2;
  }
  .profileCore__copy{
    max-width:570px;
    font-size:15px;
    line-height:1.58;
  }
  .profileCore__practice{
    grid-template-columns:100px 1fr;
    gap:17px;
    padding-top:18px;
  }
  .profileCore__practice p{font-size:13px;line-height:1.5}
  .profileCore__footer{padding:14px 36px}
  .profileCore__controls button{width:38px;height:38px}
}
