/* Campaign-style header with fixed Futura Condensed ExtraBold artwork. */
.links-page { background: #fff; }
.links-shell { width: calc(100% - 32px); max-width: 1200px; margin: auto; }
.links-top { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.links-top-actions { display: flex; gap: 20px; align-items: center; }
.links-top-actions > span { display: none; font-size: 11px; }
.links-top .share-button { background: #f3f3f3; }
.links-top .share-button:hover { background: #e5e5e5; }
.links-identity { position: relative; isolation: isolate; overflow: hidden; background: var(--orange); text-align: center; }
.identity-content { position: relative; z-index: 1; padding: 36px 24px 32px; }
.identity-texture { position: absolute; inset: 0; overflow: hidden; pointer-events: none; color: var(--ink); }
.texture-lines { position: absolute; width: 340px; height: 340px; max-width: none; opacity: .16; }
.texture-left { left: -135px; top: -80px; }
.texture-right { right: -150px; bottom: -65px; transform: rotate(180deg); opacity: .19; }
.identity-content .eyebrow { font-size: 13px; font-weight: 500; text-transform: none; letter-spacing: 0; }
.links-identity h1 { margin: 28px 0 0; line-height: 0; }
.identity-title-mobile { display: block; width: 100%; max-width: 286px; margin: auto; }
.identity-title-mobile svg { display: block; width: 100%; height: auto; }
.identity-title-wide { display: none; }
.links-bio { margin-top: 24px; font-size: 14px; line-height: 1.5; font-weight: 400; }
.identity-arrow { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; margin-top: 22px; padding: 10px 23px; border-radius: 30px; background: #fff; font-size: 14px; font-weight: 550; }
.identity-arrow:hover { background: #e9e9e9; }
.links-destinations { padding-top: 36px; min-width: 0; }
.destinations-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.destinations-heading h2 { font-size: 28px; font-weight: 400; }
.destinations-heading > span { font-size: 10px; color: var(--muted); }
.platform-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.platform-card { position: relative; min-width: 0; display: grid; grid-template-columns: 1fr auto; padding: 20px; border: 0; background: #f3f3f0; transition: background .18s; }
.platform-card.wide { grid-column: 1 / -1; grid-template-columns: 34px minmax(0,1fr) auto; gap: 14px; align-items: center; min-height: 100px; }
.platform-card.tile { min-height: 164px; }
.platform-icon { grid-column: 1; grid-row: 1; display: inline-flex; }
.platform-icon svg { width: 26px; height: 26px; }
.platform-arrow { grid-column: 2; grid-row: 1; align-self: start; justify-self: end; display: grid; place-items: center; }
.platform-arrow svg { width: 17px; height: 17px; }
.platform-card.wide .platform-arrow { grid-column: 3; align-self: center; }
.platform-copy { grid-column: 1 / -1; display: flex; flex-direction: column; align-self: end; gap: 8px; margin-top: 26px; }
.platform-copy strong { font-size: 23px; line-height: 1.1; font-weight: 650; letter-spacing: -.045em; }
.platform-copy > span { font-size: 11px; line-height: 1.4; color: var(--muted); }
.platform-card.wide .platform-copy { grid-column: 2; grid-row: 1; margin: 0; align-self: center; }
.platform-instagram { background: var(--ink); color: #fff; }
.platform-instagram .platform-copy > span { color: #c7c7c7; }
.platform-instagram .platform-arrow { width: 32px; height: 32px; background: #fff; color: var(--ink); border-radius: 50%; }
.platform-tiktok { background: var(--orange); }
.platform-tiktok .platform-copy > span { color: var(--ink); }
.platform-card:hover { background: #e7e7e3; }
.platform-instagram:hover { background: #2c2c2c; }
.platform-tiktok:hover { background: #ef5400; }
.utility-links { margin-top: 38px; }
.training-feature-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.training-feature-heading h2 { font-size: 28px; font-weight: 400; }
.training-feature-heading > a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; font-size: 11px; }
.training-feature-heading > a svg { width: 13px; height: 13px; }
.training-feature-heading > a:hover { text-decoration: underline; text-underline-offset: 4px; }
.training-session { display: block; padding: 21px; background: #f6f5f1; color: var(--ink); border-top: 3px solid var(--orange); }
.session-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 8px; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.session-meta > span { color: var(--ink); font-weight: 600; }
.session-main { display: flex; align-items: center; gap: 22px; margin-top: 25px; }
.session-rounds { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; font-size: 86px; line-height: .8; font-weight: 750; letter-spacing: -.07em; }
.session-rounds > span { font-size: 8px; line-height: 1; letter-spacing: .08em; text-transform: uppercase; font-weight: 500; margin-top: 13px; }
.session-title { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.session-title > span { font-size: 10px; color: var(--muted); }
.session-title strong { font-size: clamp(30px,8vw,38px); font-weight: 400; line-height: 1; }
.session-title strong .display-line svg { max-width: 100%; }
.session-detail { display: block; margin-top: 24px; font-size: 12px; line-height: 1.55; color: var(--muted); }
.session-watch { display: flex; align-items: center; justify-content: space-between; margin-top: 20px; padding-top: 15px; border-top: 1px solid var(--line); font-size: 12px; font-weight: 550; }
.session-watch > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.session-watch > span:first-child svg { width: 18px; height: 18px; }
.session-arrow { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--orange); }
.session-arrow svg { width: 15px; height: 15px; }
.training-session:hover .session-arrow { background: #eb5100; }
.training-link { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 80px; border-bottom: 1px solid var(--line); }
.training-link > span { display: grid; gap: 6px; }
.training-link small { font-size: 10px; color: var(--muted); }
.training-link strong { font-size: 18px; }
.training-link svg { width: 18px; height: 18px; }
.business-contact { display: grid; grid-template-columns: 40px minmax(0,1fr) 18px; align-items: center; gap: 14px 12px; margin-top: 24px; padding: 21px; border: 1px solid var(--line); background: #fff; }
.contact-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--orange); }
.contact-icon svg { width: 21px; height: 21px; }
.business-contact strong { font-size: 20px; line-height: 1.15; font-weight: 650; letter-spacing: -.03em; }
.contact-arrow { display: flex; }
.contact-arrow svg { width: 18px; height: 18px; }
.contact-email { grid-column: 1 / -1; font-size: 14px; line-height: 1.45; color: var(--muted); overflow-wrap: anywhere; }
.business-contact:hover { border-color: var(--ink); }
.business-contact:hover .contact-email { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; }
.home-link { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 66px; font-size: 11px; color: var(--muted); }
.home-link svg { width: 14px; height: 14px; }
.home-link:hover { color: var(--ink); }
.links-footer { margin-top: 22px; padding: 22px 0; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 8px; color: var(--muted); }
.links-footer a { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; }
.links-footer svg { width: 10px; height: 10px; }
@media (min-width:600px) {
  .links-shell { width: calc(100% - 64px); }
  .links-top { min-height: 90px; }
  .links-top-actions > span { display: block; }
  .identity-content { padding: 54px 40px 48px; }
  .identity-content .eyebrow { font-size: 15px; }
  .identity-title-mobile { max-width: 390px; }
  .texture-lines { width: 470px; height: 470px; }
  .texture-left { left: -150px; top: -110px; }
  .texture-right { right: -175px; bottom: -100px; }
  .links-bio { font-size: 16px; }
  .identity-arrow { min-height: 48px; font-size: 15px; padding-inline: 25px; }
  .links-destinations { padding-top: 44px; }
  .destinations-heading h2, .training-feature-heading h2 { font-size: 34px; }
  .destinations-heading > span { font-size: 12px; }
  .platform-grid { gap: 16px; }
  .platform-card { padding: 26px; }
  .platform-card.wide { min-height: 112px; }
  .platform-card.tile { min-height: 185px; }
  .platform-copy strong { font-size: 28px; }
  .platform-copy > span { font-size: 13px; }
  .utility-links { margin-top: 48px; }
  .training-feature-heading > a { font-size: 13px; }
  .training-session { padding: 28px; }
  .session-meta { font-size: 10px; }
  .session-title strong { font-size: 42px; }
  .session-detail, .session-watch { font-size: 14px; }
  .business-contact { padding: 26px 28px; column-gap: 18px; row-gap: 4px; }
  .business-contact strong { font-size: 23px; }
  .contact-icon { grid-row: 1 / 3; }
  .contact-arrow { grid-column: 3; grid-row: 1 / 3; }
  .contact-email { grid-column: 2; font-size: 15px; }
  .links-footer { font-size: 10px; }
}
@media (min-width:900px) {
  .links-shell { width: calc(100% - 96px); }
  .links-top { min-height: 96px; }
  .links-top .brand svg { width: 176px; }
  .identity-content { padding: 54px 48px 46px; }
  .links-identity h1 { margin-top: 32px; }
  .identity-title-mobile { display: none; }
  .identity-title-wide { display: block; max-width: 900px; margin: auto; }
  .identity-title-wide svg { display: block; width: 100%; height: auto; }
  .texture-lines { width: 560px; height: 560px; }
  .texture-left { left: -135px; top: -160px; }
  .texture-right { right: -150px; bottom: -150px; }
  .links-bio { margin-top: 25px; }
  .identity-arrow { margin-top: 22px; }
  .links-destinations { padding-top: 48px; }
  .destinations-heading { margin-bottom: 24px; }
  .platform-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .platform-card, .platform-card.wide, .platform-card.tile { grid-column: auto; grid-template-columns: 1fr auto; min-height: 192px; padding: 24px; align-items: start; }
  .platform-card.wide .platform-arrow { grid-column: 2; align-self: start; }
  .platform-card.wide .platform-copy { grid-column: 1 / -1; grid-row: 2; margin-top: 26px; align-self: end; }
  .platform-copy strong { font-size: 26px; }
  .platform-copy > span { font-size: 12px; }
  .training-session { display: grid; grid-template-columns: 1.1fr 1fr; column-gap: 56px; padding: 30px 34px; }
  .session-meta { grid-column: 1 / -1; }
  .session-main { grid-column: 1; grid-row: 2 / 4; margin-top: 27px; gap: 30px; }
  .session-rounds { font-size: 104px; }
  .session-rounds > span { font-size: 10px; }
  .session-title strong { font-size: 46px; }
  .session-title > span { font-size: 12px; }
  .session-detail { grid-column: 2; grid-row: 2; align-self: end; margin-top: 28px; }
  .session-watch { grid-column: 2; grid-row: 3; }
  .home-link { min-height: 72px; font-size: 12px; }
  .links-footer { margin-top: 24px; }
}
@media (max-width:359px) {
  .links-shell { width: calc(100% - 24px); }
  .brand svg { width: 146px; }
  .identity-content { padding: 30px 20px; }
  .links-identity h1 { margin-top: 24px; }
  .links-bio { font-size: 13px; }
  .destinations-heading h2, .training-feature-heading h2 { font-size: 24px; }
  .destinations-heading > span { font-size: 8px; }
  .platform-card { padding: 17px; }
  .platform-card.wide { grid-template-columns: 28px minmax(0,1fr) auto; gap: 10px; }
  .platform-copy strong { font-size: 21px; }
  .platform-copy > span { font-size: 10px; }
  .platform-icon svg { width: 24px; height: 24px; }
  .session-main { gap: 18px; }
  .session-rounds { font-size: 72px; }
  .session-title strong { font-size: 29px; }
  .session-meta { font-size: 7px; }
  .business-contact { padding: 18px; grid-template-columns: 36px minmax(0,1fr) 16px; gap: 14px 10px; }
  .contact-icon { width: 36px; height: 36px; }
  .business-contact strong { font-size: 18px; }
  .links-footer { font-size: 7px; }
}
@media (prefers-reduced-motion:reduce) {
  .platform-card { transition: none; }
}
