/* BorderGlow / SpotlightCard interaction adapted from the supplied React Bits reference. */
#capabilities .domains{gap:18px}
#capabilities .domains .folio-row{position:relative;isolation:isolate;border:1px solid #d8d0c4;border-radius:18px;padding:27px 24px;min-height:190px;background:#f8f5ef;box-shadow:0 6px 20px #33251905;--presence:0;--angle:0deg;--edge:0}
#capabilities .domains small{display:block;font-family:var(--cn);font-size:19px;line-height:1.45;margin-bottom:14px}
#capabilities .domains p{color:#635d55;font-size:14px;line-height:1.8}
.domain-glow{position:absolute;inset:-1px;border:1px solid transparent;border-radius:inherit;pointer-events:none;background:linear-gradient(#f8f5ef,#f8f5ef) padding-box,conic-gradient(from var(--angle),#da6449,#e1ae83,#b82e25,#da6449) border-box;mask-image:conic-gradient(from var(--angle),#000 0%,transparent 24%,transparent 76%,#000 100%);opacity:var(--edge);z-index:-1;transition:opacity .16s}
.domain-halo{position:absolute;inset:-14px;pointer-events:none;border-radius:32px;mask-image:conic-gradient(from var(--angle),#000,transparent 16%,transparent 84%,#000);opacity:var(--edge);transition:opacity .16s;z-index:-1}
.domain-halo:before{content:"";position:absolute;inset:14px;border-radius:18px;box-shadow:0 0 13px #c6402a40,inset 0 0 9px #c6402a16}
#capabilities .skill-panel{position:relative;isolation:isolate;overflow:hidden;background:#171718;border:1px solid #ffffff18;border-radius:20px;padding:34px 36px;min-height:260px;box-shadow:0 12px 30px #2016100a;--presence:0;--press:1;--light-x:50%;--light-y:40%}
#capabilities .skill-panel small{color:#f4f0e8;font-size:20px;line-height:1.5;display:block}
#capabilities .skill-panel p{color:#bbb5ad;font-size:14px;line-height:1.8;margin-top:10px}
#capabilities .skill-visual{stroke:#e17b66;height:88px;margin-bottom:30px;position:relative;z-index:1}
.spotlight-fill,.spotlight-edge{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:var(--presence)}
.spotlight-fill{z-index:-1;background:radial-gradient(circle 260px at var(--light-x) var(--light-y),#f2c6ac24,transparent 75%);transform:scale(var(--press));transition:transform .15s}
.spotlight-edge{z-index:2;padding:1px;background:radial-gradient(circle 180px at var(--light-x) var(--light-y),#e9a18cc4,transparent 80%);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
@media(max-width:1050px){#capabilities .domains{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#capabilities .domains{grid-template-columns:1fr}#capabilities .domains .folio-row{min-height:0;padding:24px}#capabilities .skill-panel{padding:28px 24px;min-height:240px}}
@media(prefers-reduced-motion:reduce){.domain-glow,.domain-halo,.spotlight-fill{transition:none}}
/* Balance short capability copy and keep semantic phrases together. */
#capabilities .domains p{text-wrap:pretty;line-break:strict;overflow-wrap:normal}
#capabilities .domains small{text-wrap:balance}
#capabilities .domains .folio-row{padding:24px 20px}
.practice-points{margin:22px 0 0;padding-left:1.2em;line-height:1.8}
.practice-points li{padding-left:5px;margin:10px 0}.practice-points li::marker{color:var(--accent)}
#capabilities .skill-panel{padding:0 0 28px;overflow:hidden}
#capabilities .skill-panel .skill-image{display:block;width:100%;height:clamp(190px,21vw,290px);object-fit:cover;object-position:center 40%;margin:0 0 22px}
#capabilities .skill-panel>small,#capabilities .skill-panel>p{margin-left:28px;margin-right:28px}
#capabilities .skill-panel>p{text-wrap:pretty}

/* Four compact skills share one desktop row. */
#capabilities .skills-display{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:42px 0}
#capabilities .skill-panel{min-width:0;min-height:0;padding:0 0 20px}
#capabilities .skill-panel .skill-image{height:160px;object-position:center;margin-bottom:16px}
#capabilities .skill-panel>small{display:block;font-size:16px;line-height:1.5;margin:0 18px 10px;text-wrap:balance}
#capabilities .skill-panel>p{font-size:12px;line-height:1.7;margin:0 18px;overflow-wrap:anywhere}
.detail-practice{border-top:1px solid var(--line);padding:32px 0;margin-top:36px;display:grid;grid-template-columns:1fr 1.5fr;gap:40px}
.detail-practice[hidden]{display:none}
.detail-practice header>small{font:12px var(--mono);color:var(--accent)}
.detail-practice h2{font-size:24px;font-weight:450;margin:12px 0}
#practice .sportshub-logo{width:154px;height:70px;object-fit:contain;object-position:left center;display:block;margin:12px 0}
.detail-practice .folio-row{padding:0;border:0}.detail-practice .practice-points{font-size:15px}
@media(max-width:900px){#capabilities .skills-display{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#capabilities .skills-display{grid-template-columns:1fr}.detail-practice{grid-template-columns:1fr;gap:16px}}
