/* Sports Injuries Hub — short premium routing page */
:root{
  --sh-ink:#1d1e22;
  --sh-soft:#5b5960;
  --sh-paper:#f7f3ed;
  --sh-paper-2:#efe8e4;
  --sh-wine:#6a1838;
  --sh-wine-dark:#320817;
  --sh-charcoal:#1f2025;
  --sh-lime:#cdf132;
  --sh-line:rgba(84,23,47,.18);
  --sh-serif:var(--serif,"Iowan Old Style","Palatino Linotype",Georgia,serif);
  --sh-sans:var(--sans,Inter,"Helvetica Neue",Arial,sans-serif);
}
.sports-hub-site{background:var(--sh-paper)}
.sports-hub-site main{overflow:hidden;background:linear-gradient(90deg,transparent calc(50% - .5px),rgba(83,26,48,.04) 50%,transparent calc(50% + .5px))}
.sh-shell{width:min(89vw,1360px);margin:0 auto;position:relative}
.sh-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 15px;color:var(--sh-wine);font-size:10px;font-weight:850;letter-spacing:.19em;line-height:1.4;text-transform:uppercase}
.sh-eyebrow:before{content:"";width:38px;height:1px;background:currentColor;flex:none}
.sh-eyebrow-lime{color:var(--sh-lime)}
.sh-button{--mag-x:0px;--mag-y:0px;display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:54px;padding:0 24px;border-radius:13px;background:var(--sh-lime);color:#111;font-size:12px;font-weight:850;transform:translate(var(--mag-x),var(--mag-y));transition:.2s ease}
.sh-button:hover{transform:translate(var(--mag-x),calc(var(--mag-y) - 2px));box-shadow:0 18px 38px rgba(162,199,25,.18)}
.sh-text-link{display:inline-flex;align-items:center;gap:12px;padding-bottom:8px;border-bottom:1px solid rgba(106,24,56,.4);color:var(--sh-wine);font-size:12px;font-weight:800}

/* Hero */
.sh-hero{position:relative;padding:138px 0 46px;background:radial-gradient(circle at 88% 14%,rgba(205,241,50,.14),transparent 23%),linear-gradient(180deg,#f8f4ee 0%,#f5f0e9 100%)}
.sh-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(92,34,56,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(92,34,56,.04) 1px,transparent 1px);background-size:90px 90px;pointer-events:none}
.sh-hero-grid{z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(460px,.95fr);gap:clamp(48px,6vw,88px);align-items:center}
.sh-breadcrumbs{display:flex;align-items:center;gap:11px;margin:0 0 28px;color:#77737a;font-size:9px;font-weight:760;letter-spacing:.15em;text-transform:uppercase}
.sh-breadcrumbs a:hover{color:var(--sh-wine)}
.sh-hero h1{max-width:790px;margin:0;font-family:var(--sh-serif);font-size:clamp(55px,5.35vw,82px);font-weight:400;letter-spacing:-.058em;line-height:.93}
.sh-hero h1 em{display:block;margin-top:8px;color:var(--sh-wine);font-weight:400}
.sh-lead{max-width:760px;margin:24px 0 0;color:#55545a;font-size:15px;font-weight:540;line-height:1.7}
.sh-actions{display:flex;align-items:center;gap:28px;margin-top:26px}
.sh-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}
.sh-keywords span{padding:8px 11px;border:1px solid rgba(106,24,56,.2);border-radius:999px;color:#70465a;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.52)}
.sh-hero-photo{position:relative;margin:0;padding:14px 18px 38px 0}
.sh-hero-photo img{display:block;width:100%;height:clamp(360px,47vh,490px);object-fit:cover;object-position:center 48%;border-radius:0 64px 0 64px;filter:saturate(.94) contrast(1.02)}
.sh-hero-frame{position:absolute;inset:0 0 20px 30px;border:1px solid rgba(106,24,56,.5);border-radius:48px 0 50px 0;pointer-events:none}
.sh-hero-frame:after{content:"";position:absolute;right:-9px;top:64px;width:15px;height:105px;background:var(--sh-lime)}
.sh-hero-photo figcaption{position:absolute;left:28px;right:50px;bottom:0;padding:13px 16px;background:rgba(49,8,24,.94);color:#fff}
.sh-hero-photo figcaption strong{display:block;font-family:var(--sh-serif);font-size:22px;font-weight:400}.sh-hero-photo figcaption span{display:block;margin-top:3px;color:rgba(255,255,255,.68);font-size:9px;line-height:1.45}

/* Routes */
.sh-routes{padding:62px 0 66px;background:#f8f4ee}
.sh-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.6fr);gap:clamp(48px,8vw,116px);align-items:end;margin-bottom:30px}
.sh-heading h2{margin:0;font-family:var(--sh-serif);font-size:clamp(46px,4.7vw,68px);font-weight:400;letter-spacing:-.052em;line-height:.98}
.sh-heading>p{margin:0;color:#5a5860;font-size:13px;font-weight:530;line-height:1.72}
.sh-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.sh-route-card{position:relative;min-height:220px;padding:24px 25px;border:1px solid rgba(106,24,56,.2);background:#fff;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.sh-route-card:hover{transform:translateY(-4px);border-color:var(--sh-wine);box-shadow:0 18px 44px rgba(73,20,39,.08)}
.sh-route-card.primary{background:linear-gradient(145deg,#251c22,#3d1024);color:#fff;border-color:rgba(205,241,50,.38)}
.sh-route-card.wide{grid-column:span 2;background:#fff}
.sh-route-card>span{display:grid;place-items:center;width:32px;height:32px;background:var(--sh-lime);color:#111;font-size:8px;font-weight:900}
.sh-route-card small{margin-top:18px;color:#7e3451;font-size:8px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.sh-route-card.primary small{color:var(--sh-lime)}
.sh-route-card h3{margin:9px 0 9px;font-family:var(--sh-serif);font-size:32px;font-weight:400;line-height:1;letter-spacing:-.035em}
.sh-route-card p{margin:0;color:#59575e;font-size:11.5px;font-weight:530;line-height:1.58}.sh-route-card.primary p{color:rgba(255,255,255,.72)}
.sh-route-card b{margin-top:auto;padding-top:16px;color:var(--sh-wine);font-size:10px}.sh-route-card.primary b{color:var(--sh-lime)}
.sh-assoc{display:flex;align-items:center;gap:22px;margin-top:16px;padding:14px 18px;border-top:1px solid var(--sh-line);border-bottom:1px solid var(--sh-line);color:#5a5860;font-size:10px}.sh-assoc strong{color:var(--sh-ink)}.sh-assoc a{color:var(--sh-wine);font-weight:850}.sh-assoc a:first-of-type{margin-left:auto}

/* Signature pathway */
.sh-pathway{padding:62px 0;background:linear-gradient(115deg,#1d1f24 0%,#241920 48%,#35101f 100%);color:#fff}
.sh-pathway-grid{display:grid;grid-template-columns:minmax(420px,.88fr) minmax(550px,1.12fr);gap:52px;align-items:center}
.sh-path-photo{margin:0;position:relative;padding:10px;border:1px solid rgba(205,241,50,.42)}
.sh-path-photo img{display:block;width:100%;height:340px;object-fit:cover;object-position:center 50%}
.sh-path-photo figcaption{position:absolute;left:24px;bottom:22px;padding:11px 14px;background:rgba(18,18,22,.82);font-size:9px;color:rgba(255,255,255,.7)}
.sh-path-copy h2{margin:0;font-family:var(--sh-serif);font-size:clamp(47px,4.5vw,66px);font-weight:400;letter-spacing:-.052em;line-height:.97}.sh-path-copy h2 em{color:var(--sh-lime);font-weight:400}
.sh-path-copy>p:not(.sh-eyebrow){margin:20px 0;color:rgba(255,255,255,.74);font-size:13px;font-weight:520;line-height:1.68}
.sh-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.sh-step{padding:16px 14px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.sh-step span{color:var(--sh-lime);font-size:8px;font-weight:900}.sh-step strong{display:block;margin-top:6px;font-family:var(--sh-serif);font-size:20px;font-weight:400}.sh-step small{display:block;margin-top:5px;color:rgba(255,255,255,.58);font-size:8.5px;line-height:1.45}

/* Assessment prompt */
.sh-assess{padding:58px 0 62px;background:#f1e7e7}
.sh-assess-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:54px;align-items:center}
.sh-assess-copy h2{margin:0;font-family:var(--sh-serif);font-size:clamp(45px,4.4vw,64px);font-weight:400;letter-spacing:-.05em;line-height:.98}
.sh-signs{display:grid;grid-template-columns:repeat(2,1fr);margin-top:24px;border-top:1px solid rgba(106,24,56,.22);border-left:1px solid rgba(106,24,56,.22)}
.sh-signs span{padding:13px 15px;border-right:1px solid rgba(106,24,56,.22);border-bottom:1px solid rgba(106,24,56,.22);color:#522139;font-size:10px;font-weight:760;line-height:1.35}
.sh-return-card{position:relative;margin:0;padding:11px;border:1px solid rgba(106,24,56,.24);background:#fff}
.sh-return-card img{display:block;width:100%;height:300px;object-fit:cover;object-position:center}
.sh-return-card figcaption{padding:12px 8px 2px;color:#5a5860;font-size:9px;line-height:1.5}.sh-return-card figcaption strong{color:var(--sh-wine)}

/* Doctor */
.sh-doctor{padding:58px 0 64px;background:#f8f4ee}
.sh-doctor-card{display:grid;grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);gap:0;overflow:hidden;border:1px solid rgba(106,24,56,.22);background:#fff;border-radius:0 42px 0 42px}
.sh-doctor-photo{margin:0;min-height:300px}.sh-doctor-photo img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover;object-position:center 28%}
.sh-doctor-copy{padding:36px 42px;display:flex;flex-direction:column;justify-content:center}
.sh-doctor-copy h2{margin:0;font-family:var(--sh-serif);font-size:clamp(42px,4vw,58px);font-weight:400;letter-spacing:-.05em;line-height:.98}
.sh-doctor-copy>p:not(.sh-eyebrow){max-width:760px;margin:18px 0 0;color:#55535a;font-size:13px;font-weight:530;line-height:1.7}
.sh-doctor-facts{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0}.sh-doctor-facts span{padding:8px 10px;border:1px solid rgba(106,24,56,.2);border-radius:999px;color:#64233e;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;background:#faf6f1}
.sh-doctor-actions{display:flex;align-items:center;gap:24px}

.sports-hub-site main p{letter-spacing:-.005em}

@media(max-width:1180px){
  .sh-hero-grid{grid-template-columns:1fr 1fr;gap:40px}.sh-hero h1{font-size:58px}.sh-hero-photo img{height:405px}.sh-route-card{min-height:225px}.sh-pathway-grid{grid-template-columns:.9fr 1.1fr;gap:38px}.sh-path-photo img{height:315px}
}
@media(max-width:900px){
  .sh-shell{width:min(92vw,760px)}.sh-hero{padding-top:122px}.sh-hero-grid,.sh-heading,.sh-pathway-grid,.sh-assess-grid,.sh-doctor-card{grid-template-columns:1fr}.sh-hero-photo{max-width:700px}.sh-hero-photo img{height:auto;aspect-ratio:16/10}.sh-route-grid{grid-template-columns:repeat(2,1fr)}.sh-route-card.wide{grid-column:span 1}.sh-path-photo img,.sh-return-card img{height:auto;aspect-ratio:16/10}.sh-steps{grid-template-columns:repeat(2,1fr)}.sh-doctor-photo{min-height:0}.sh-doctor-photo img{height:auto;min-height:0;aspect-ratio:16/9;object-position:center 24%}.sh-doctor-copy{padding:32px}.sh-assoc{flex-wrap:wrap}.sh-assoc a:first-of-type{margin-left:0}
}
@media(max-width:620px){
  .sh-shell{width:calc(100% - 34px)}.sh-hero{padding-top:104px;padding-bottom:34px}.sh-breadcrumbs{margin-bottom:22px}.sh-hero h1{font-size:47px}.sh-lead{font-size:13px}.sh-actions{align-items:flex-start;flex-direction:column;gap:15px}.sh-button{width:100%;justify-content:space-between}.sh-hero-photo{padding:10px 8px 42px 0}.sh-hero-photo img{border-radius:0 42px 0 42px}.sh-hero-photo figcaption{left:18px;right:26px}.sh-routes,.sh-pathway,.sh-assess,.sh-doctor{padding:48px 0}.sh-heading h2,.sh-path-copy h2,.sh-assess-copy h2{font-size:46px}.sh-route-grid{grid-template-columns:1fr}.sh-route-card{min-height:205px}.sh-steps{grid-template-columns:1fr 1fr}.sh-signs{grid-template-columns:1fr}.sh-doctor-copy{padding:28px 24px}.sh-doctor-copy h2{font-size:43px}.sh-doctor-actions{align-items:flex-start;flex-direction:column;gap:15px}.sh-assoc{align-items:flex-start;flex-direction:column;gap:9px}
}


/* Sports Hub card interaction polish — 2026-08-14 */
.sh-route-card{cursor:pointer;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease,color .22s ease}
.sh-route-card:hover,.sh-route-card:focus-visible{background:linear-gradient(145deg,#5c1632,#771f45);color:#fff;border-color:#771f45;box-shadow:0 20px 46px rgba(73,20,39,.18);transform:translateY(-4px)}
.sh-route-card:hover small,.sh-route-card:focus-visible small{color:var(--sh-lime)}
.sh-route-card:hover h3,.sh-route-card:focus-visible h3{color:#fff}
.sh-route-card:hover p,.sh-route-card:focus-visible p{color:rgba(255,255,255,.82)}
.sh-route-card:hover b,.sh-route-card:focus-visible b{color:var(--sh-lime)}
.sh-route-card:hover>span,.sh-route-card:focus-visible>span{background:var(--sh-lime);color:#111}
.sh-route-card.primary:hover,.sh-route-card.primary:focus-visible{background:linear-gradient(145deg,#451028,#6d183b)}
.sh-route-card.wide:hover,.sh-route-card.wide:focus-visible{background:linear-gradient(105deg,#5c1632,#771f45)}
@media (prefers-reduced-motion:reduce){.sh-route-card{transition:none}.sh-route-card:hover,.sh-route-card:focus-visible{transform:none}}
