
/* Elite Talents extension — inherits the Elite landing page design tokens and navigation/footer. */
.talents-site{background:var(--white-sec);overflow-x:hidden;}
.talents-site #nav{height:88px}.talents-site #nav.scrolled{height:74px}
/* ── Talents hero spacing system ───────────────────────────────────────────
   The fixed navigation overlays the hero, so the hero reserves the navigation's
   height inside its own padding-top and can never collide with it. Content is
   centred in the resulting padded box, and the reserved lower band is
   deliberately larger than the upper one, which biases the composition into the
   upper-middle of the usable hero area. Breakpoints retune the three variables
   only — no negative margins, transforms or per-page offsets. */
.talents-hero{--talents-hero-nav:88px;--talents-hero-lift:clamp(20px,3.4vh,44px);--talents-hero-band:clamp(112px,19vh,208px);position:relative;min-height:92svh;background:#050505;color:#fff;display:flex;align-items:center;overflow:hidden;padding-top:calc(var(--talents-hero-nav) + var(--talents-hero-lift));padding-bottom:var(--talents-hero-band)}
.talents-hero-image{position:absolute;inset:0;background:url('../assets/images/division-talents.jpg') center/cover no-repeat;transform:scale(1.04);filter:saturate(.72) contrast(1.05) brightness(.55)}
.talents-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.7) 46%,rgba(0,0,0,.33) 100%),linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.85))}
.talents-hero-content{position:relative;z-index:2;width:min(1320px,calc(100% - 144px));margin:0 auto;padding:0}
.talents-division-mark{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.58);margin-bottom:20px}.talents-division-line{width:32px;height:1px;background:var(--orange);flex:0 0 32px}
.talents-kicker{font-size:9px;letter-spacing:.28em;color:var(--orange);text-transform:uppercase;margin-bottom:22px}
.talents-h1{font-family:var(--serif);font-size:clamp(54px,6.4vw,96px);line-height:.98;font-weight:400;letter-spacing:-.025em;max-width:1000px}.talents-h1 em{color:var(--orange);font-weight:400}
.talents-lead{max-width:720px;font-size:17px;line-height:1.75;font-weight:300;color:rgba(255,255,255,.68);margin:30px 0 38px}
.talents-hero-foot{position:absolute;z-index:2;bottom:25px;left:50%;transform:translateX(-50%);width:min(1320px,calc(100% - 144px));display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding-top:14px;font-size:8px;letter-spacing:.25em;color:rgba(255,255,255,.36)}
.talents-wrap{width:min(1320px,calc(100% - 144px));margin:0 auto}.talents-intro{padding:120px 0;background:#fff}.intro-grid{width:min(1320px,calc(100% - 144px));margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.intro-title{font-family:var(--serif);font-size:clamp(42px,4.6vw,72px);line-height:1.02;font-weight:400}.intro-title em{color:var(--orange);font-weight:400}.intro-copy>p{font-size:17px;line-height:1.9;color:var(--text-mid);font-weight:300}.metric-row{margin-top:44px;padding-top:28px;border-top:1px solid var(--line-l);display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.metric-row strong{display:block;font-family:var(--serif);font-size:32px;font-weight:400}.metric-row span{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#777;margin-top:5px}
.talents-solutions,.process-section,.jobs-section,.form-section,.service-overview{padding:118px 0;background:var(--light-sec)}.talents-section-head{max-width:820px;margin-bottom:60px}.talents-section-title{font-family:var(--serif);font-size:clamp(42px,4.5vw,68px);font-weight:400;line-height:1.04}.talents-section-intro{font-size:16px;color:var(--text-mid);font-weight:300;line-height:1.8;margin-top:20px;max-width:720px}.solutions-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-l);border-left:1px solid var(--line-l)}.solution-card{position:relative;min-height:310px;padding:44px;border-right:1px solid var(--line-l);border-bottom:1px solid var(--line-l);background:#fff;transition:transform .3s,background .3s;overflow:hidden}.solution-card:nth-child(5){grid-column:1/-1;min-height:250px}.solution-card:before{content:'';position:absolute;left:0;top:0;height:3px;width:0;background:var(--orange);transition:width .35s}.solution-card:hover{background:#fbfaf8}.solution-card:hover:before{width:100%}.solution-num{font-size:11px;letter-spacing:.18em;color:var(--orange);margin-bottom:50px}.solution-card h3{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.08;max-width:500px}.solution-card p{font-size:14px;color:#696164;line-height:1.75;max-width:600px;margin-top:16px}.solution-link{display:flex;align-items:center;gap:8px;margin-top:32px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#111}
.advantage-dark{padding:118px 0;background:#080808;color:#fff}.advantage-dark .talents-section-title{color:#fff}.advantage-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.12);border-left:1px solid rgba(255,255,255,.12)}.adv-card{min-height:340px;padding:44px;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.adv-card>span{display:block;color:var(--orange);font-size:11px;letter-spacing:.18em;margin-bottom:80px}.adv-card h3{font-family:var(--serif);font-size:31px;font-weight:400}.adv-card p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.48);margin-top:16px;font-weight:300}
.process-section{background:#fff}.process-line{display:grid;grid-template-columns:repeat(6,1fr);position:relative;border-top:1px solid var(--line-l)}.process-line:before{content:'';position:absolute;top:-1px;left:0;width:18%;height:1px;background:var(--orange)}.process-step{padding:32px 22px 20px 0;min-height:150px}.process-step span{display:block;color:var(--orange);font-size:10px;letter-spacing:.18em;margin-bottom:30px}.process-step strong{font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.2}.process-line.compact{grid-template-columns:repeat(5,1fr)}
.industries-section{padding:100px 0 118px;background:var(--grey-sec)}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line-l);border-top:1px solid var(--line-l)}.industry-pill{padding:28px 24px;border-right:1px solid var(--line-l);border-bottom:1px solid var(--line-l);background:rgba(255,255,255,.35);font-family:var(--serif);font-size:22px}
.dual-path{display:grid;grid-template-columns:1fr 1fr}.path-card{min-height:540px;padding:80px max(7vw,60px);display:flex;flex-direction:column;justify-content:flex-end;position:relative}.path-card.employer{background:#0b0b0b;color:#fff}.path-card.candidate{background:var(--orange);color:#fff}.path-tag{font-size:9px;letter-spacing:.24em;text-transform:uppercase;opacity:.6;margin-bottom:22px}.path-card h2{font-family:var(--serif);font-size:55px;line-height:1;font-weight:400}.path-card p{max-width:520px;font-size:15px;line-height:1.75;opacity:.66;margin:20px 0 34px}.path-card>div{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.final-cta{padding:130px 0;background:#fff}.final-cta-inner{width:min(900px,calc(100% - 48px));margin:0 auto;text-align:center}.final-cta h2{font-family:var(--serif);font-size:clamp(48px,5.5vw,80px);font-weight:400;line-height:1}.final-cta p{max-width:720px;margin:24px auto 34px;color:var(--text-mid);font-size:16px;line-height:1.8;font-weight:300}.final-cta .btn-primary{display:inline-flex;align-items:center;gap:10px}
.service-overview{background:#fff}.service-overview-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:40px}.service-quote{font-family:var(--serif);font-size:31px;line-height:1.2;color:#7c7273;border-left:2px solid var(--orange);padding-left:28px;margin-bottom:60px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-l);border-left:1px solid var(--line-l)}.detail-item{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:36px;border-right:1px solid var(--line-l);border-bottom:1px solid var(--line-l);min-height:210px}.detail-item>span{color:var(--orange);font-size:22px;font-weight:300}.detail-item h3{font-family:var(--serif);font-size:25px;font-weight:400}.detail-item p{font-size:13px;line-height:1.75;color:var(--text-mid);margin-top:12px}.benefit-section{padding:110px 0;background:#0a0a0a;color:#fff}.benefit-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.benefit-section .talents-section-title{color:#fff}.benefit-list{list-style:none;border-top:1px solid rgba(255,255,255,.12)}.benefit-list li{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:15px;color:rgba(255,255,255,.62);position:relative;padding-left:26px}.benefit-list li:before{content:'—';position:absolute;left:0;color:var(--orange)}
.jobs-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:34px}.jobs-toolbar input,.jobs-toolbar select,.talent-form input,.talent-form select,.talent-form textarea{width:100%;border:1px solid #d9d5d1;background:#fff;padding:15px 16px;font:inherit;font-size:13px;outline:none}.jobs-toolbar input:focus,.jobs-toolbar select:focus,.talent-form input:focus,.talent-form select:focus,.talent-form textarea:focus{border-color:var(--orange)}.jobs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.job-card{background:#fff;border:1px solid var(--line-l);padding:34px}.job-card .job-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#777}.job-card h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:18px 0 10px}.job-card p{font-size:13px;color:#686064;line-height:1.7}.job-card a{display:inline-flex;gap:8px;align-items:center;margin-top:24px;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.jobs-empty{background:#fff;border:1px solid var(--line-l);padding:64px;text-align:center}.jobs-empty h3{font-family:var(--serif);font-size:38px;font-weight:400}.jobs-empty p{max-width:620px;margin:16px auto 30px;color:var(--text-mid)}.jobs-empty .btn-primary{display:inline-flex;gap:8px;align-items:center}.job-detail-section{padding:110px 0;background:var(--light-sec)}.job-detail-card{background:#fff;padding:55px;border:1px solid var(--line-l)}.job-detail-card h1{font-family:var(--serif);font-size:52px;font-weight:400}.job-detail-card .job-meta{display:flex;gap:16px;flex-wrap:wrap;margin:18px 0 36px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777}.job-detail-card h2{font-family:var(--serif);font-size:28px;font-weight:400;margin:32px 0 12px}.job-detail-card p,.job-detail-card li{font-size:14px;line-height:1.8;color:var(--text-mid)}.job-detail-card ul{padding-left:18px}
.form-section{background:var(--light-sec)}.form-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;background:#fff;border:1px solid var(--line-l);padding:60px}.form-intro .talents-section-head{margin-bottom:0}.talent-form{align-self:start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.talent-form label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#5f585a}.talent-form label.full{grid-column:1/-1}.talent-form input,.talent-form select,.talent-form textarea{margin-top:8px;text-transform:none;letter-spacing:0;color:#111}.form-submit{margin-top:24px;display:flex;gap:9px;align-items:center}.form-status{margin-top:14px;font-size:12px;color:#9b4b15}.form-note{margin-top:18px;padding:12px 14px;background:#fff5eb;border-left:2px solid var(--orange);font-size:11px;line-height:1.6;color:#775642;text-transform:none;letter-spacing:0}
@media(max-width:1000px){.talents-hero-content,.talents-hero-foot,.talents-wrap,.intro-grid{width:min(100% - 64px,900px)}.talents-hero{--talents-hero-band:clamp(104px,17vh,168px)}.intro-grid,.service-overview-grid,.benefit-grid,.form-shell{grid-template-columns:1fr;gap:45px}.solutions-grid{grid-template-columns:1fr}.solution-card:nth-child(5){grid-column:auto}.advantage-grid{grid-template-columns:1fr}.adv-card{min-height:260px}.adv-card>span{margin-bottom:45px}.process-line,.process-line.compact{grid-template-columns:repeat(3,1fr)}.industry-grid{grid-template-columns:repeat(2,1fr)}.form-shell{padding:38px}.service-quote{margin-bottom:0}.jobs-grid{grid-template-columns:1fr}}
/* Tablet ceiling: the header already switches to the hamburger up to 1023px
   (nav-links hide there), so the hero stops enforcing a full 92svh screen for
   the same range — previously cinematic-height at tablet widths, leaving
   300–500px of dead space below the content before the next section. Sits
   after the 1000px rule above so it wins for the whole 701–1023px band; the
   700px rule below still wins under that for the phone-tuned values. */
@media(max-width:1023px){.talents-hero{min-height:auto;--talents-hero-lift:clamp(20px,3vh,40px);--talents-hero-band:clamp(90px,13vh,150px)}}
@media(max-width:700px){.talents-site #nav{height:72px}.talents-hero{--talents-hero-nav:72px}.talents-hero-content,.talents-wrap,.intro-grid{width:calc(100% - 40px)}.talents-hero-content{padding:0}.talents-h1{font-size:clamp(42px,12vw,58px)}.talents-lead{font-size:14px;margin-top:22px}.talents-hero-foot{width:calc(100% - 40px);font-size:6.8px;letter-spacing:.12em;gap:16px}.talents-intro,.talents-solutions,.process-section,.service-overview,.jobs-section,.form-section{padding:78px 0}.intro-title,.talents-section-title{font-size:40px}.intro-copy>p{font-size:15px}.metric-row{grid-template-columns:1fr;gap:18px}.solutions-grid{border-left:0}.solution-card{padding:30px;min-height:270px;border-left:1px solid var(--line-l)}.solution-card h3{font-size:28px}.advantage-dark{padding:80px 0}.advantage-grid{border-left:0}.adv-card{padding:30px;border-left:1px solid rgba(255,255,255,.12)}.process-line,.process-line.compact{grid-template-columns:1fr 1fr}.process-step{min-height:125px}.industry-grid{grid-template-columns:1fr 1fr}.industry-pill{font-size:18px;padding:22px 15px}.dual-path{grid-template-columns:1fr}.path-card{min-height:420px;padding:55px 28px}.path-card h2{font-size:44px}.final-cta{padding:85px 0}.final-cta h2{font-size:46px}.detail-grid{grid-template-columns:1fr;border-left:0}.detail-item{border-left:1px solid var(--line-l);padding:28px}.benefit-section{padding:80px 0}.jobs-toolbar{grid-template-columns:1fr}.jobs-empty{padding:40px 24px}.jobs-empty h3{font-size:32px}.job-detail-card{padding:30px}.job-detail-card h1{font-size:40px}.form-shell{padding:28px 20px}.form-grid{grid-template-columns:1fr}.talent-form label.full{grid-column:auto}.service-quote{font-size:26px}}

/* ==========================================================================\n   MOBILE ART-DIRECTION PASS — 2026-08\n   Purpose: keep Elite's desktop visual language while redesigning phone layouts\n   as deliberate mobile compositions rather than compressed desktop grids.\n   ========================================================================== */
@media (max-width:700px){
  /* Core mobile geometry */
  .talents-site #nav{height:58px!important;padding:0 20px!important}
  .talents-site #nav.scrolled{height:50px!important}
  .talents-site .nav-logo img{height:54px!important}
  .talents-site{overflow-x:hidden}
  .talents-hero-content,.talents-wrap,.intro-grid{width:calc(100% - 40px)}

  /* Hero: cleaner hierarchy, full-bleed screen, better image crop */
  /* Full-bleed on phones too, matching desktop's 92svh: the background
     image carries the extra height beyond the pathway rail's content. */
  .talents-hero{--talents-hero-nav:58px;--talents-hero-lift:clamp(18px,3vh,30px);--talents-hero-band:clamp(84px,13vh,124px);min-height:92svh;align-items:center}
  .talents-hero-image{background-position:58% center;transform:scale(1.015);filter:saturate(.72) contrast(1.06) brightness(.52)}
  .talents-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.91) 0%,rgba(0,0,0,.66) 63%,rgba(0,0,0,.42) 100%),linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.36) 54%,rgba(0,0,0,.94) 100%)}
  .talents-hero-content{padding:0}
  .talents-division-mark{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:14px;margin-bottom:10px;font-size:8px;line-height:1.45;letter-spacing:.17em;max-width:330px}
  .talents-division-line{width:34px;margin-top:6px}
  .talents-kicker{font-size:7.6px;line-height:1.45;letter-spacing:.22em;margin:0 0 18px 48px;max-width:280px}
  .talents-h1{font-size:clamp(43px,11.7vw,54px);line-height:.98;letter-spacing:-.027em;max-width:100%}
  .talents-h1 br{display:none}
  .talents-h1 em{display:block;margin-top:6px}
  .talents-lead{max-width:35ch;font-size:14px;line-height:1.7;margin:24px 0 28px;color:rgba(255,255,255,.68)}
  .hero-btns{gap:10px}
  .hero-btns .btn-primary,.hero-btns .btn-outline{min-height:52px;padding:14px 18px;font-size:9px;letter-spacing:.18em}
  .talents-hero-foot{bottom:18px;width:calc(100% - 40px);padding-top:12px;font-size:6.2px;letter-spacing:.12em;line-height:1.4;gap:14px}
  .talents-hero-foot span:last-child{text-align:right}

  /* Universal section rhythm */
  .talents-intro,.talents-solutions,.process-section,.service-overview,.jobs-section,.form-section{padding:66px 0}
  .industries-section{padding:66px 0 72px}
  .advantage-dark,.benefit-section{padding:68px 0}
  .talents-section-head{margin-bottom:34px}
  .eyebrow{font-size:9px;letter-spacing:.22em;margin-bottom:14px}
  .intro-title,.talents-section-title{font-size:clamp(36px,10vw,43px);line-height:1.04;letter-spacing:-.02em}
  .talents-section-intro,.intro-copy>p{font-size:14.5px;line-height:1.72;max-width:35ch}

  /* Intro metrics become compact horizontal facts */
  .metric-row{margin-top:30px;padding-top:0;border-top:0;grid-template-columns:1fr;gap:0}
  .metric-row>div{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:15px;padding:15px 0;border-top:1px solid var(--line-l)}
  .metric-row>div:last-child{border-bottom:1px solid var(--line-l)}
  .metric-row strong{font-size:27px}
  .metric-row span{font-size:8.5px;line-height:1.45;margin-top:0}

  /* Services: editorial rows, not tall presentation cards */
  .solutions-grid{display:block;border:0;background:#fff}
  .solution-card,.solution-card:nth-child(5){display:block;min-height:0!important;padding:27px 20px 26px;border:0;border-top:1px solid var(--line-l);background:#fff}
  .solution-card:last-child{border-bottom:1px solid var(--line-l)}
  .solution-card:before{display:none}
  .solution-num{margin-bottom:18px;font-size:9px;letter-spacing:.2em}
  .solution-card h3{font-size:clamp(27px,7.8vw,33px);line-height:1.05;max-width:92%}
  .solution-card p{font-size:13.5px;line-height:1.68;margin-top:13px;max-width:34ch}
  .solution-link{margin-top:22px;min-height:44px;display:inline-flex;padding:8px 0;font-size:8.5px;letter-spacing:.17em}

  /* Advantage: compact numbered editorial stack */
  .advantage-grid{display:block;border:0}
  .adv-card{min-height:0!important;padding:28px 0;border:0;border-top:1px solid rgba(255,255,255,.12)}
  .adv-card:last-child{border-bottom:1px solid rgba(255,255,255,.12)}
  .adv-card>span{margin-bottom:17px;font-size:9px}
  .adv-card h3{font-size:27px;line-height:1.08}
  .adv-card p{font-size:13.5px;line-height:1.7;margin-top:12px;max-width:35ch}

  /* Process: one clear vertical timeline */
  .process-line,.process-line.compact{display:block;border-top:1px solid var(--line-l)}
  .process-step{min-height:0!important;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:14px;padding:18px 2px;border:0;border-bottom:1px solid var(--line-l);background:transparent}
  .process-step span{margin:0;font-size:9px;letter-spacing:.16em;color:var(--orange)}
  .process-step strong{font-size:14px;line-height:1.35;font-weight:500}

  /* Industries: numbered list with strong rhythm instead of empty box */
  .industry-grid{display:block;border:0;counter-reset:elite-industry;background:transparent}
  .industry-pill{counter-increment:elite-industry;display:grid;grid-template-columns:40px 1fr;align-items:center;min-height:58px;padding:15px 2px;border:0;border-top:1px solid rgba(0,0,0,.12);background:transparent;font-size:23px;line-height:1.1}
  .industry-pill:last-child{border-bottom:1px solid rgba(0,0,0,.12)}
  .industry-pill:before{content:counter(elite-industry, decimal-leading-zero);font-family:var(--sans);font-size:8px;font-weight:500;letter-spacing:.16em;color:var(--orange)}

  /* Employer / candidate conversion paths: purposeful, not stretched */
  .dual-path{display:block}
  .path-card{min-height:0!important;padding:58px 24px 54px;justify-content:flex-start}
  .path-tag{font-size:8.5px;letter-spacing:.24em;margin-bottom:28px}
  .path-card h2{font-size:clamp(42px,11vw,50px);line-height:.98;max-width:9ch}
  .path-card p{font-size:14px;line-height:1.72;margin:22px 0 28px;max-width:34ch}
  .path-card>div{min-height:48px;font-size:8.5px;letter-spacing:.16em;padding:8px 0}

  /* Final CTA */
  .final-cta{padding:70px 20px 74px}
  .final-cta-inner{width:100%}
  .final-cta h2{font-size:clamp(40px,10.7vw,48px);line-height:1.01}
  .final-cta p{font-size:14px;line-height:1.72;margin:21px auto 28px;max-width:34ch}
  .final-cta .btn-primary{width:100%;min-height:52px;justify-content:center;padding:14px 16px;font-size:8.5px;letter-spacing:.16em}

  /* Service detail pages */
  .service-overview-grid{gap:28px;margin-bottom:28px}
  .service-quote{font-size:24px;line-height:1.25;padding-left:20px;margin-bottom:0}
  .detail-grid{display:block;border:0}
  .detail-item{display:grid;grid-template-columns:28px 1fr;gap:12px;min-height:0;padding:25px 0;border:0;border-top:1px solid var(--line-l)}
  .detail-item:last-child{border-bottom:1px solid var(--line-l)}
  .detail-item>span{font-size:18px}
  .detail-item h3{font-size:24px;line-height:1.08}
  .detail-item p{font-size:13.5px;line-height:1.68}
  .benefit-grid{gap:30px}
  .benefit-list li{font-size:13.5px;line-height:1.6;padding:17px 0 17px 22px}

  /* Jobs and forms */
  .jobs-toolbar{grid-template-columns:1fr;gap:10px;margin-bottom:24px}
  .jobs-toolbar input,.jobs-toolbar select,.talent-form input,.talent-form select,.talent-form textarea{min-height:48px;font-size:16px;padding:13px 14px;border-radius:0}
  .job-card{padding:26px 20px}
  .job-card h3{font-size:28px}
  .jobs-empty{padding:36px 20px}
  .jobs-empty h3{font-size:31px;line-height:1.08}
  .job-detail-section{padding:64px 0}
  .job-detail-card{padding:28px 20px}
  .job-detail-card h1{font-size:38px;line-height:1.03}
  .form-shell{padding:0;border:0;background:transparent;gap:32px}
  .talent-form{background:#fff;border:1px solid var(--line-l);padding:24px 18px}
  .form-grid{grid-template-columns:1fr;gap:16px}
  .talent-form label.full{grid-column:auto}
  .form-submit .btn-primary{width:100%;min-height:52px;justify-content:center}

  /* Touch interaction and reduced-motion support */
  .solution-card,.path-card,.btn-primary,.btn-outline,.solution-link,.job-card a{ -webkit-tap-highlight-color:transparent }
}

@media (max-width:390px){
  .talents-hero-content,.talents-wrap,.intro-grid{width:calc(100% - 32px)}
  .talents-hero-foot{width:calc(100% - 32px)}
  .talents-h1{font-size:41px}
  .intro-title,.talents-section-title{font-size:36px}
  .path-card h2{font-size:41px}
  .industry-pill{font-size:21px}
}

@media (any-pointer:coarse){
  .talents-site a,.talents-site button{touch-action:manipulation}
}

@media (prefers-reduced-motion:reduce){
  .talents-site .reveal,.talents-site .reveal.in{opacity:1!important;transform:none!important;transition:none!important}
  .talents-site *{scroll-behavior:auto!important}
}

/* Talents refinement: compact mobile rhythm and route-specific image crops. */
.talents-division-mark{margin-bottom:14px}
.talents-kicker{margin-bottom:26px}
.talents-service--recruitment .talents-hero-image{background-position:58% center}
.talents-service--staffing .talents-hero-image{background-position:70% center}
.talents-service--international .talents-hero-image{background-position:44% center}
.talents-service--hr-management .talents-hero-image{background-position:64% center}
.talents-service--hr-consulting .talents-hero-image{background-position:52% center}
.talents-service--staffing .talents-hero-overlay,.talents-service--hr-management .talents-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.72) 43%,rgba(0,0,0,.28) 100%),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.88))}
.talents-service--international .talents-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.38) 100%),linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.82))}
.form-note{display:none}
body.elite-dev .form-note{display:block}
body:not(.elite-dev) .form-status{display:none}

/* Talents motion and section rhythm: restrained editorial movement, not page effects. */
.talents-site .reveal{
  transform:translateY(16px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
  will-change:opacity,transform;
}
.talents-site .reveal.in{transform:translateY(0)}
.talents-site .solutions-grid .reveal:nth-child(2),
.talents-site .detail-grid .reveal:nth-child(2),
.talents-site .industry-grid .reveal:nth-child(2){transition-delay:.08s}
.talents-site .solutions-grid .reveal:nth-child(3),
.talents-site .detail-grid .reveal:nth-child(3),
.talents-site .industry-grid .reveal:nth-child(3){transition-delay:.16s}
.talents-site .solutions-grid .reveal:nth-child(4),
.talents-site .detail-grid .reveal:nth-child(4),
.talents-site .industry-grid .reveal:nth-child(4){transition-delay:.24s}
.talents-site .solutions-grid .reveal:nth-child(5),
.talents-site .detail-grid .reveal:nth-child(5),
.talents-site .industry-grid .reveal:nth-child(n+5){transition-delay:.3s}
.talents-site .solution-card,
.talents-site .adv-card,
.talents-site .industry-pill,
.talents-site .path-card{
  transition:background-color .35s ease,color .35s ease,transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease;
}
@media (hover:hover) and (pointer:fine){
  .talents-site .solution-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(23,18,20,.08)}
  .talents-site .adv-card:hover{transform:translateY(-4px);background:#111}
  .talents-site .industry-pill:hover{background:#fff}
  .talents-site .path-card:hover{transform:scale(1.012);z-index:1}
}
@media (min-width:701px){
  /* The two adjacent blocks on the Talents landing page read as one narrative beat. */
  .talents-solutions{padding-bottom:84px}
  .talents-solutions + .advantage-dark{padding-top:84px}
}

/* Typographic parity from tablet up: wider content column and desktop-scale
   type apply from 701px, independent of the hero's own height (below). */
@media (min-width:701px){
  .talents-hero-content{
    width:min(1320px,calc(100% - 144px));
    padding:0;
  }
  .talents-h1{
    font-size:clamp(52px,5.35vw,82px);
    line-height:.96;
    max-width:920px;
  }
  .talents-lead{
    max-width:680px;
    margin:24px 0 28px;
    line-height:1.68;
  }
  .talents-hero-foot{
    bottom:18px;
    width:min(1320px,calc(100% - 144px));
  }
}
/* Desktop viewport fit: only once the real desktop navigation is showing
   (1024px, matching the nav's own breakpoint) does the hero own the full
   viewport. Below that the tablet rule further up (max-width:1023px) governs,
   so the hamburger-nav range never carries a cinematic full-screen hero. */
@media (min-width:1024px){
  .talents-hero{
    min-height:100svh;
    --talents-hero-nav:88px;
    --talents-hero-lift:clamp(22px,3.6vh,48px);
    --talents-hero-band:clamp(150px,22vh,236px);
  }
}

/* A 768px-high desktop is common on laptops. Keep every hero control and its
   footer in the first viewport without relying on clipping or page-specific offsets. */
@media (min-width:701px) and (max-height:820px){
  .talents-site #nav{height:76px}
  .talents-hero{min-height:600px;--talents-hero-nav:76px;--talents-hero-lift:clamp(16px,2.6vh,30px);--talents-hero-band:clamp(112px,16vh,158px)}
  .talents-hero-content{padding:0}
  .talents-h1{font-size:clamp(48px,5vw,70px)}
  .talents-lead{font-size:15px;margin:18px 0 22px;line-height:1.58}
  .talents-hero-foot{bottom:14px;padding-top:10px}
  .hero-btns .btn-primary,.hero-btns .btn-outline{padding-top:12px;padding-bottom:12px}
}
@media (min-width:701px) and (max-width:1000px){.dual-path .path-card{min-height:480px}}
@media (max-width:700px){
  .talents-division-mark{margin-bottom:8px}
  .talents-kicker{margin:0 0 16px 48px}
  .solution-card,.solution-card:nth-child(5){padding:24px 20px 22px;min-height:0}
  .solution-num{margin-bottom:14px}
  .solution-card p{font-size:13px;line-height:1.62;margin-top:11px}
  .solution-link{margin-top:15px}
  .path-card{padding:44px 24px 38px}
  .path-tag{margin-bottom:20px}
  .path-card p{margin:16px 0 17px;line-height:1.64}
  .path-card>div{min-height:44px}
  .jobs-empty{padding:34px 20px;border-top:2px solid var(--orange)}
  .job-detail-card,.talent-form{border-top:2px solid var(--orange)}
}

/* Shared Talents hero eyebrow: line, category, then division attribution. */
.talents-division-mark{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  grid-template-areas:"line label" "line subline";
  column-gap:14px;
  row-gap:7px;
  align-items:start;
  max-width:min(100%,620px);
  margin-bottom:26px;
}
.talents-division-line{
  grid-area:line;
  width:32px;
  height:1px;
  margin-top:.68em;
  background:var(--orange);
}
.talents-division-label{
  grid-area:label;
  min-width:0;
  line-height:1.45;
}
.talents-division-subline{
  grid-area:subline;
  min-width:0;
  font-size:9px;
  line-height:1.45;
  letter-spacing:.28em;
  color:var(--orange);
}
@media (min-width:701px){.talents-division-label{white-space:nowrap}}
@media (max-width:700px){
  .talents-division-mark{
    grid-template-columns:34px minmax(0,1fr);
    column-gap:14px;
    row-gap:6px;
    max-width:100%;
    margin-bottom:18px;
  }
  .talents-division-line{width:34px;margin-top:6px}
  .talents-division-label{font-size:8px;line-height:1.45;letter-spacing:.17em}
  .talents-division-subline{font-size:7.6px;line-height:1.45;letter-spacing:.22em}
}

/* ══════════════════════════════════════════════════════════════════════════
   TALENTS HERO PATHWAY RAIL
   Three primary visitor journeys surfaced inside the hero architecture as a
   typographic rail rather than a card block: thin architectural dividers,
   restrained orange accents and a subtle corner arrow. The navbar taxonomy
   (SERVICES / OPPORTUNITIES / FOR EMPLOYERS) is unchanged — these are
   contextual, action-oriented entry points into the same existing routes.
   ══════════════════════════════════════════════════════════════════════════ */
.talents-pathways{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:1040px;
  margin-top:clamp(28px,4.2vh,50px);
  border-top:1px solid rgba(255,255,255,.17);
}
.talents-pathway{
  position:relative;
  display:block;
  padding:20px 42px 18px 0;
  color:#fff;
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:26px;
  transition:background-color .32s ease;
}
.talents-pathway:first-child{border-left:0;padding-left:0}
/* Hairline accent that draws in from the divider on hover/focus. */
.talents-pathway:before{
  content:'';
  position:absolute;
  top:-1px;
  left:0;
  height:1px;
  width:0;
  background:var(--orange);
  transition:width .38s ease;
}
.talents-pathway:hover:before,
.talents-pathway:focus-visible:before{width:100%}
.talents-pathway__label{
  display:block;
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  line-height:1.3;
  color:#fff;
  transition:color .28s ease;
}
.talents-pathway__desc{
  display:block;
  margin-top:9px;
  max-width:26ch;
  font-size:12.5px;
  font-weight:300;
  line-height:1.62;
  color:rgba(255,255,255,.56);
  transition:color .28s ease;
}
.talents-pathway__arrow{
  position:absolute;
  top:19px;
  right:14px;
  width:13px;
  height:13px;
  color:rgba(255,255,255,.42);
  transition:transform .32s ease,color .28s ease;
}
.talents-pathway:hover .talents-pathway__label,
.talents-pathway:focus-visible .talents-pathway__label{color:var(--orange)}
.talents-pathway:hover .talents-pathway__desc,
.talents-pathway:focus-visible .talents-pathway__desc{color:rgba(255,255,255,.76)}
.talents-pathway:hover .talents-pathway__arrow,
.talents-pathway:focus-visible .talents-pathway__arrow{color:var(--orange);transform:translate(3px,-3px)}
.talents-pathway:focus-visible{outline:1px solid var(--orange);outline-offset:4px}

/* Tablet: keep three columns but relax the gutters before the mobile switch. */
@media (max-width:1000px){
  .talents-pathways{max-width:100%;margin-top:clamp(24px,3.4vh,38px)}
  .talents-pathway{padding-right:30px;padding-left:20px}
  .talents-pathway__desc{font-size:12px;max-width:24ch}
  .talents-pathway__arrow{right:8px}
}

/* Mobile: three compact rows, full-row tap target, never stacked cards. */
@media (max-width:700px){
  .talents-pathways{
    grid-template-columns:1fr;
    margin-top:22px;
    border-top:0;
  }
  .talents-pathway{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:60px;
    padding:13px 34px 13px 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.15);
  }
  .talents-pathway:first-child{padding-left:0}
  .talents-pathway__label{font-size:9.5px;letter-spacing:.17em}
  .talents-pathway__desc{margin-top:5px;max-width:34ch;font-size:12px;line-height:1.5}
  .talents-pathway__arrow{top:50%;right:2px;margin-top:-6.5px;width:12px;height:12px}
  .talents-pathway:hover .talents-pathway__arrow,
  .talents-pathway:focus-visible .talents-pathway__arrow{transform:translate(2px,-2px)}
}
@media (max-width:390px){
  .talents-pathway__desc{font-size:11.5px;max-width:30ch}
}
@media (prefers-reduced-motion:reduce){
  .talents-pathway,.talents-pathway:before,.talents-pathway__label,
  .talents-pathway__desc,.talents-pathway__arrow{transition:none!important}
}

/* ── Candidate form: Industry select + conditional "Other" specify field ── */
.talent-form label[hidden]{display:none!important}
.talent-form select{
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23111' stroke-width='1.6'%3E%3Cpath d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  padding-right:42px;
  border-radius:0;
}
.industry-other-field{animation:industryOtherIn .26s ease}
@keyframes industryOtherIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.industry-other-field{animation:none}}

/* Mobile form controls: 16px prevents iOS Safari from zooming on focus, and
   keeps every control a comfortable touch target without horizontal overflow. */
@media (max-width:700px){
  .talent-form input,.talent-form select,.talent-form textarea{
    font-size:16px;
    min-height:50px;
    padding:13px 15px;
    max-width:100%;
  }
  .talent-form textarea{min-height:120px}
  .talent-form select{background-position:right 14px center;padding-right:38px}
}

/* ── Mobile micro-typography floor ────────────────────────────────────────
   The hero eyebrow and division attribution carry real context, so they get a
   readable floor on phones; letter-spacing absorbs the extra width. */
@media (max-width:700px){
  .talents-site .talents-division-label{font-size:10px;letter-spacing:.14em}
  .talents-site .talents-division-subline{font-size:9.5px;letter-spacing:.14em}
  .talents-kicker{font-size:10px;letter-spacing:.16em}
  .talents-hero-foot{font-size:9px;letter-spacing:.1em}
  .talents-site .btn-primary,.talents-site .btn-outline{font-size:11px;letter-spacing:.14em}
  .solution-num,.metric-row span,.job-card .job-meta{font-size:10px}
}
@media (max-width:390px){
  .talents-site .talents-division-label{font-size:9.5px;letter-spacing:.12em}
  .talents-site .talents-division-subline{font-size:9px;letter-spacing:.11em}
}

/* Small orange text on light grounds takes the accessible brand tone; the
   standard orange stays on dark grounds, rules, arrows and display type. */
.talents-site .eyebrow,
.talents-site .solution-num,
.talents-site .process-step span,
.talents-site .detail-item>span{color:var(--orange-text)}
/* Dark sections keep the standard orange, which already clears AA there. */
.talents-site .advantage-dark .eyebrow,
.talents-site .benefit-section .eyebrow,
.talents-site .talents-hero .eyebrow{color:var(--orange)}

/* The resolved job title is the card's lead, but the page's single h1 lives in
   the hero, so it renders at h1 scale as an h2. */
.job-detail-card .job-detail-title{font-family:var(--serif);font-size:52px;font-weight:400;line-height:1.04;margin:0}
@media (max-width:700px){.job-detail-card .job-detail-title{font-size:40px}}

/* Sibling-division routes in the Talents footer — Investment already offers the
   equivalent route back, so the ecosystem now links both ways. */
.talents-site .footer-links--ecosystem{margin-bottom:22px}

/* Grid items default to min-width:auto, so the dual-path cards could not shrink
   below their longest French label and overflowed between 701px and ~760px
   (the band just above the single-column collapse). Letting them shrink and
   easing the gutters keeps both columns inside the viewport. */
.dual-path .path-card{min-width:0}
@media (min-width:701px) and (max-width:900px){
  .dual-path .path-card{padding-left:38px;padding-right:38px}
}


/* ══════════════════════════════════════════════════════════════════════════
   TALENTS — TWO-SIDED ENTRY
   The hero's three routes are the employer / candidate / solutions decision,
   so a visitor places themselves before reading anything else. The tertiary
   line carries the candidate's second action, which previously existed only
   in the navigation and the footer.
   ══════════════════════════════════════════════════════════════════════════ */

.talents-hero-tertiary{
  margin-top:18px;
  font-size:13px;
  font-weight:300;
  color:rgba(255,255,255,.62);
}
.talents-hero-tertiary a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:#fff;
  border-bottom:1px solid rgba(245,130,32,.55);
  transition:color .25s,border-color .25s;
}
.talents-hero-tertiary a:hover{color:var(--orange);border-bottom-color:var(--orange)}

/* The candidate panel's second action. It sits on the orange ground, so it
   takes the dark CTA ink rather than white. */
.path-sub{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-top:14px;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--cta-ink);
  border-bottom:1px solid rgba(20,16,12,.45);
  transition:border-color .25s;
}
.path-sub:hover{border-bottom-color:var(--cta-ink)}
.path-card.candidate .path-tag,
.path-card.candidate h2,
.path-card.candidate p,
.path-card.candidate>div{color:var(--cta-ink)}
.path-card.candidate p{opacity:.8}
.path-card.candidate .path-tag{opacity:.75}

/* Portrait tablets kept a full-viewport hero at 1024x1366, which left the
   pathway routes below the fold on the exact device that shows them best. */
@media (min-width:1024px) and (max-aspect-ratio:1/1){
  .talents-hero{min-height:auto;--talents-hero-band:clamp(96px,11vh,168px)}
}

@media (max-width:700px){
  .talents-hero-tertiary{margin-top:14px;font-size:13.5px}
}

@media (prefers-reduced-motion:reduce){
  .talents-hero-tertiary a,.path-sub{transition:none!important}
}


/* ── Contrast corrections on the Talents landing page ───────────────────────
   Both predate this pass. The hero foot carried the market and the tagline at
   .36 opacity (3.19:1), and the orange emphasis inside section titles sat on a
   light ground at 2.59:1 — under AA even at display size. The brand orange is
   unchanged wherever it sits on dark. */
.talents-hero-foot{color:rgba(255,255,255,.58)}
.talents-intro .intro-title em,
.talents-solutions .talents-section-title em,
.process-section .talents-section-title em,
.industries-section .talents-section-title em,
.service-overview .talents-section-title em,
.jobs-section .talents-section-title em,
.form-section .talents-section-title em{color:var(--orange-text)}

/* ═══════════════════════════════════════════════════════════════════════════
   SOLUTIONS — what an employer or a family can actually request
   ───────────────────────────────────────────────────────────────────────────
   An editorial index, not a card wall. Each row states the need in the
   visitor's own words, names the service that answers it, and carries the
   request straight into the form with the service already chosen. Rules and
   type do the work; there are no boxes, no checkmark grids and no pricing.
   ═══════════════════════════════════════════════════════════════════════════ */
.tsol { border-top: 1px solid var(--line-l); }

.tsol__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px;
  padding: 17px 0 16px;
  border-bottom: 1px solid var(--line-l);
}

/* The need first, small and quiet: the visitor recognises themselves before
   they read a service name. */
.tsol__need {
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--orange-text);
}
.tsol__name {
  font-family: var(--serif);
  font-size: clamp(19px, 4.3vw, 25px);
  font-weight: 400;
  line-height: 1.16;
  color: var(--text);
}
.tsol__copy {
  font-family: var(--sans);
  font-size: 14px;
  line-height: 1.52;
  color: var(--text-mid);
  max-width: 62ch;
}

.tsol__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px 26px;
  margin-top: 4px;
}
/* The commercial action always names what happens next. */
.tsol__cta {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  font-family: var(--sans);
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--text);
  text-decoration: underline;
  text-decoration-color: var(--orange-text);
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
  transition: color .2s;
}
.tsol__cta:hover { color: var(--orange-text); }
.tsol__arrow { color: var(--orange-text); transition: transform .2s; }
/* On the filled plan button the ground is the brand orange, so the arrow takes
   the button's own ink — the orange glyph would be invisible on it. */
.tplan__cta .tsol__arrow { color: inherit; }
.tsol__cta:hover .tsol__arrow { transform: translateX(3px); }

/* The deeper service page — present, but never competing with the request. */
.tsol__detail {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-family: var(--sans);
  font-size: 13px;
  color: var(--text-mid);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 5px;
  transition: color .2s, text-decoration-color .2s;
}
.tsol__detail:hover { color: var(--text); text-decoration-color: var(--line-l); }

/* ── Nanny Services ───────────────────────────────────────────────────────
   A specialized private solution inside Elite Talents. Set apart by a rule and
   a label rather than by imagery or colour, so it is easy to find without
   repositioning the division as a domestic-staffing agency. */
.tsol__row--special {
  margin-top: 8px;
  padding-top: 22px;
  border-top: 1px solid var(--line-l);
}
.tsol__flag {
  display: inline-block;
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--text-mid);
  padding-bottom: 4px;
}

@media (min-width: 900px) {
  /* Desktop earns the asymmetry: the need and the service hold the left
     column, the description and the action sit against them. */
  .tsol__row {
    grid-template-columns: minmax(0, 7fr) minmax(0, 9fr);
    grid-template-areas:
      'need copy'
      'name copy'
      'name actions';
    column-gap: 56px;
    row-gap: 10px;
    padding: 34px 0 32px;
    align-items: start;
  }
  .tsol__need    { grid-area: need; }
  .tsol__name    { grid-area: name; font-size: clamp(24px, 2vw, 31px); }
  .tsol__copy    { grid-area: copy; font-size: 15px; }
  .tsol__actions { grid-area: actions; align-self: end; margin-top: 0; }
  /* The flag is an extra row in the left column, so the special row needs its
     own template — otherwise it auto-places into an implicit row underneath. */
  .tsol__row--special {
    padding-top: 30px;
    grid-template-areas:
      'flag copy'
      'need copy'
      'name copy'
      'name actions';
  }
  .tsol__row--special .tsol__flag { grid-area: flag; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   RECRUITMENT PLANS — an editorial comparison, never a pricing table
   Hidden entirely until plans are approved (js/talents-offers.js).
   ═══════════════════════════════════════════════════════════════════════════ */
.talents-plans[hidden] { display: none !important; }
.tplans {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: 1px solid var(--line-l);
}
.tplan {
  padding: 30px 0 32px;
  border-bottom: 1px solid var(--line-l);
}
.tplan__num {
  display: block;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .18em;
  color: var(--orange-text);
  margin-bottom: 10px;
}
.tplan__name {
  font-family: var(--serif);
  font-size: clamp(24px, 5.2vw, 32px);
  font-weight: 400;
  line-height: 1.15;
  color: var(--text);
}
.tplan__use {
  font-family: var(--sans);
  font-size: 15px;
  line-height: 1.6;
  color: var(--text-mid);
  margin-top: 10px;
  max-width: 54ch;
}
.tplan__block { margin-top: 22px; }
.tplan__label {
  display: block;
  font-family: var(--sans);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--text-mid);
  margin-bottom: 7px;
}
.tplan__block p { font-family: var(--sans); font-size: 14.5px; line-height: 1.6; color: var(--text); }
.tplan__list { list-style: none; margin: 0; padding: 0; }
/* A rule per line, not a wall of checkmarks. */
.tplan__list li {
  font-family: var(--sans);
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--text);
  padding: 9px 0 9px 18px;
  border-top: 1px solid var(--line-l);
  position: relative;
}
.tplan__list li::before {
  content: '';
  position: absolute;
  left: 0; top: 18px;
  width: 8px; height: 1px;
  background: var(--orange);
}
.tplan__cta {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 46px;
  margin-top: 24px;
  padding: 12px 24px;
  font-family: var(--sans);
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--cta-ink);
  background: var(--orange);
  text-decoration: none;
  transition: background .2s;
}
.tplan__cta:hover { background: var(--orange2); }

@media (min-width: 900px) {
  .tplans { grid-template-columns: 1fr 1fr; column-gap: 64px; }
  .tplan { border-bottom: none; }
  /* A single hairline between the two, so they read as one comparison. */
  .tplan + .tplan { border-left: 1px solid var(--line-l); padding-left: 64px; margin-left: -64px; }
}

@media (prefers-reduced-motion: reduce) {
  .tsol__arrow, .tsol__cta, .tsol__detail { transition: none; }
}
