/* Native animated layers around the supplied FOCUS game artwork. */
#v-focus.fx-career-view{padding:0;background:#030b35}
#v-focus.fx-career-view .fx-wrap{position:absolute;inset:0;padding:0;display:block}
/* Pad/heading height stay fixed when expanding — animating them resizes .fc-interaction
   mid-flight and fights the JS polygon tween (flash / jump / clipped footer). */
#v-focus .fx-card.fx-careers{position:absolute;inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0;box-shadow:none;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#1370c9 0,#071b63 32%,#050e31 80%);font-family:var(--f-body);--career-color:#ffdc80;--panel-cut:56px;--preview-footer:112px;--sky-x:0px;--sky-y:0px;--mouse-x:0;--mouse-y:0;--logo-rx:0deg;--logo-ry:0deg;--shine-x:50%;--shine-y:50%;--brand-width:min(600px,48vw);--fc-heading-h:220px;--fc-pad-top:152px}
#v-focus .fx-card.fx-careers.has-selection{--panel-cut:18px;--brand-width:min(420px,34vw)}
body:has(#v-focus.fx-career-view.on) .hud::before{display:none}
body:has(#v-focus.fx-career-view.on) .hud{pointer-events:none;justify-content:flex-end}
body:has(#v-focus.fx-career-view.on) .hud button{pointer-events:auto}
.fc-backdrop{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 12% 90%,#8622ff55,transparent 35%),radial-gradient(ellipse at 86% 90%,#00c69e44,transparent 35%)}
.fc-backdrop::after{content:'';position:absolute;inset:65% -30% -30%;background:repeating-linear-gradient(90deg,transparent 0 78px,#2e91db22 79px 80px),repeating-linear-gradient(0deg,transparent 0 48px,#2e91db22 49px 50px);transform:perspective(500px) rotateX(45deg);mask-image:linear-gradient(transparent,#000);opacity:.6}
.fc-backdrop i{position:absolute;left:20%;top:7%;width:4px;height:4px;background:#fff5ad;box-shadow:0 0 12px #fff1ad;clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);animation:fcTwinkle 3.8s ease-in-out infinite;translate:calc(var(--mouse-x)*14px) calc(var(--mouse-y)*7px)}
.fc-backdrop i:nth-child(2){left:78%;top:12%;width:12px;height:12px;animation-delay:-1s}.fc-backdrop i:nth-child(3){left:13%;top:25%;animation-delay:-2s}.fc-backdrop i:nth-child(4){left:90%;top:32%;animation-delay:-3s}.fc-backdrop i:nth-child(5){left:33%;top:3%;animation-delay:-1.4s}.fc-backdrop i:nth-child(6){left:62%;top:8%;animation-delay:-2.6s}
.fc-header{position:absolute;left:max(16px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));z-index:30}
.fc-header .fx-back{font-size:13px;min-height:44px;padding:6px 14px;background:#07184ae8;color:#fff8df;border:2px solid #83caffaa;border-radius:12px;box-shadow:0 3px 0 #020729}
.fc-body{position:absolute;inset:0;display:flex;flex-direction:column;padding:var(--fc-pad-top,152px) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow:hidden}
.fc-heading{position:absolute;inset:0 0 auto;height:var(--fc-heading-h,220px);z-index:10;pointer-events:none;overflow:visible}
.fc-banner{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.fc-sky{pointer-events:visiblePainted}.fc-wave{transform-origin:800px 60px;animation:fcWave 8s ease-in-out infinite;transform:translate(var(--sky-x),var(--sky-y))}.fc-wave-b{animation-delay:-4s}.fc-halo{animation:fcHalo 5s ease-in-out infinite;transform:translate(calc(var(--sky-x)*.5),calc(var(--sky-y)*.8))}
/* Supplied alpha logo, separate gold wings, stars and native metadata badge. */
.fc-decoration{position:absolute;inset:0;pointer-events:none;z-index:1}
.fc-responsive-decoration{position:absolute;transform:translate(calc(var(--mouse-x)*var(--depth)),calc(var(--mouse-y)*var(--depth)*.65));pointer-events:auto}
.fc-wing{width:clamp(85px,12vw,170px);top:76px;filter:drop-shadow(0 0 8px #ffe37066)}
.fc-wing img{display:block;width:100%;height:auto;transition:filter .25s}
.fc-wing-left{left:calc(50% - var(--brand-width)*.5 - 90px);rotate:-12deg}.fc-wing-right{left:calc(50% + var(--brand-width)*.5 - 80px);rotate:12deg}.fc-wing-right img{transform:scaleX(-1)}
.fc-wing.is-near img,.fc-wing:hover img{filter:brightness(1.18) drop-shadow(0 0 8px #ffda3d)}
.fc-emblem{width:30px;top:44px;left:calc(50% - var(--brand-width)*.5 - 46px)}
.fc-emblem-2{width:26px;top:35px;left:calc(50% + var(--brand-width)*.5 + 14px)}
.fc-emblem-3{width:14px;top:21px;left:calc(50% - var(--brand-width)*.5 - 100px)}
.fc-emblem-4{width:13px;top:108px;left:calc(50% + var(--brand-width)*.5 + 80px)}
.fc-emblem-5{width:10px;top:115px;left:calc(50% - var(--brand-width)*.5 - 128px)}
.fc-emblem-6{width:10px;top:20px;left:calc(50% + var(--brand-width)*.5 + 116px)}
.fc-star{display:block;filter:drop-shadow(0 0 7px #ffdf67);animation:fcStarFloat 4.5s calc(var(--i)*-.7s) ease-in-out infinite;transition:filter .2s,scale .2s}
.fc-star svg{display:block;width:100%;height:auto}
.fc-emblem:hover .fc-star,.fc-emblem.is-near .fc-star{filter:brightness(1.25) drop-shadow(0 0 12px #fff4a2);scale:1.23}
.fc-brand{position:absolute;left:50%;top:0;transform:translateX(-50%);pointer-events:auto;transition:top .68s;z-index:2;text-align:center}
.fc-logo-frame{position:relative;width:var(--brand-width);background:transparent;transform:perspective(900px) translate(calc(var(--mouse-x)*5px),calc(var(--mouse-y)*3px)) rotateX(var(--logo-rx)) rotateY(var(--logo-ry));transition:width .72s cubic-bezier(.22,.8,.25,1)}
.fc-logo{display:block;width:100%;height:auto;object-fit:contain;animation:fcLogoFloat 5s ease-in-out infinite;filter:drop-shadow(0 5px 10px #00143b88);transition:filter .2s}
.fc-logo-frame.is-near .fc-logo{filter:drop-shadow(0 0 12px #7ccfff88)}
.fc-logo-sheen{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at var(--shine-x) var(--shine-y),#fff9,transparent 42%);mask:url('../assets/focus-careers/focus-logo.webp') center/100% 100% no-repeat;mix-blend-mode:screen;transition:opacity .25s}
.fc-logo-frame.is-near .fc-logo-sheen{opacity:.55}
.fc-badge{position:relative;display:block;width:max-content;max-width:100%;margin:-12px auto 0;padding:2px 22px;border:2px solid #fff5b4;border-radius:99px;background:linear-gradient(#fff3a1,#ffca32 65%,#f6a719);box-shadow:0 3px 0 #886000,0 0 14px #ffe36344;color:#261906;font:900 22px/1.15 var(--f-num);letter-spacing:.02em;white-space:nowrap;transform:translate(calc(var(--mouse-x)*-3px),calc(var(--mouse-y)*-1px));transition:font-size .72s cubic-bezier(.22,.8,.25,1),padding .72s cubic-bezier(.22,.8,.25,1),margin .72s cubic-bezier(.22,.8,.25,1)}
.fc-instruction{position:absolute;left:50%;bottom:4px;transform:translateX(-50%);display:flex;align-items:center;gap:14px;margin:0;white-space:nowrap;color:#fff7dc;font-size:13px;text-shadow:0 2px 3px #020b37}
.fc-instruction span{font-weight:800;letter-spacing:.06em}.fc-instruction small{font-size:11px;color:#c8e7ff;letter-spacing:.03em}.fc-hint-touch{display:none}
.fc-actions{position:absolute;right:max(16px,env(safe-area-inset-right));top:66px;display:flex;justify-content:flex-end;gap:8px;min-height:44px;pointer-events:auto}
.fc-reset,.fc-motion{min-height:44px;border:1px solid #a7c9ff80;border-radius:10px;background:#091c52ed;color:#fff4d2;font:700 12px var(--f-body);padding:6px 13px;cursor:pointer;box-shadow:0 3px 0 #030a2e}
.has-selection .fc-badge{font-size:17px;padding:2px 16px}.has-selection .fc-instruction{display:none}
.fc-interaction{flex:1;min-height:0;width:100%;display:flex;position:relative}
.fc-deck{flex:1;min-height:0;height:100%;max-height:var(--deck-height,100%);margin:auto 0;transition:max-height .72s cubic-bezier(.22,.8,.25,1);position:relative;display:flex;isolation:isolate;overflow:hidden}
.fc-column{container-type:inline-size;position:relative;flex:1 1 0;min-width:0;min-height:0;margin:0 calc(var(--panel-cut)*-.5);overflow:hidden;background:linear-gradient(0deg,#050b2e,var(--career-color));clip-path:polygon(var(--panel-cut) 0,100% 0,calc(100% - var(--panel-cut)) 100%,0 100%);transition:flex-grow .72s cubic-bezier(.22,.8,.25,1),flex-basis .72s cubic-bezier(.22,.8,.25,1),clip-path .72s cubic-bezier(.22,.8,.25,1),margin .72s cubic-bezier(.22,.8,.25,1);animation:none}
.fc-column:first-child{margin-left:0;clip-path:polygon(0 0,100% 0,calc(100% - var(--panel-cut)) 100%,0 100%)}
.fc-column:last-child{margin-right:0;clip-path:polygon(var(--panel-cut) 0,100% 0,100% 100%,0 100%)}
.has-selection .fc-column{flex-grow:.7}.has-selection .fc-column.is-active{flex-grow:var(--active-grow,6.5);z-index:2;clip-path:polygon(var(--panel-cut) 0,100% 0,calc(100% - var(--panel-cut)) 100%,0 100%)}
.has-selection .fc-column.is-active:first-child{clip-path:polygon(0 0,100% 0,calc(100% - var(--panel-cut)) 100%,0 100%)}.has-selection .fc-column.is-active:last-child{clip-path:polygon(var(--panel-cut) 0,100% 0,100% 100%,0 100%)}
.fc-scene{container-type:inline-size;position:absolute;inset:0 0 104px;overflow:hidden;pointer-events:none;transition:opacity .35s}
.fc-strip-picture{position:absolute;inset:0;display:block}
.fc-strip-art{--atlas-height:max(162.623%,calc((100cqw - var(--panel-cut))*3.7532));position:absolute;left:50%;top:calc(var(--atlas-height)*-.23185484);width:auto;max-width:none;height:var(--atlas-height);transform:translateX(calc(var(--scene-x)*-100%));transition:filter .5s;pointer-events:none}
.has-selection .fc-column:not(.is-active) .fc-scene{inset:0}
.has-selection .fc-column:not(.is-active) .fc-strip-art{filter:brightness(.84) saturate(1.08)}
.has-selection .fc-column:not(.is-active) .fc-panel-shine{border-bottom-width:0;background:linear-gradient(180deg,#0003,transparent 38%)}
.fc-column.is-active .fc-scene{opacity:0;visibility:hidden;display:none}
.fc-career{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;border-radius:0;background:linear-gradient(0deg,#040b3ed9 0,transparent 24%);padding:0;color:#fff;cursor:pointer;outline:none;transition:opacity .25s}
.fc-column.is-active .fc-career{opacity:0;pointer-events:none}
.fc-panel-shine{position:absolute;inset:0;pointer-events:none;border-bottom:3px solid var(--career-color);background:linear-gradient(105deg,transparent 70%,#ffffff12)}
.fc-cutlines{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:5;transition:opacity .25s}
.has-selection .fc-cutlines{opacity:0}
.fc-cutlines path{fill:none;stroke:#f6fcff;stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px var(--line-color)) drop-shadow(0 0 8px var(--line-color))}
.fc-caption{position:absolute;inset:auto calc(var(--panel-cut) + 6px) 16px 8px;display:flex;flex-direction:column;gap:0;text-align:center;filter:drop-shadow(0 0 8px var(--career-color));transition:opacity .25s}
.fc-column:last-child .fc-caption{right:8px}
.fc-caption small{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:#fff7b9;font:800 22px var(--f-num);background:linear-gradient(90deg,#0b1242aa,color-mix(in srgb,var(--career-color) 45%,#0b1242));clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 100%,0 100%)}
.fc-caption svg{width:26px;height:26px;filter:drop-shadow(0 0 4px #ffffff80)}
.fc-caption b{position:relative;display:flex;align-items:center;justify-content:center;min-height:64px;padding:8px 8px;font:900 clamp(16px,9.5cqw,32px)/1.06 var(--f-num);color:#fff;text-shadow:0 3px 0 #051134,0 0 5px #050c30;isolation:isolate}
.fc-caption b::before,.fc-caption b::after{content:'';position:absolute;inset:0;clip-path:polygon(9% 0,91% 0,100% 50%,91% 100%,9% 100%,0 50%);z-index:-2;background:linear-gradient(135deg,#fff,var(--career-color) 45%,#fff)}
.fc-caption b::after{inset:3px;z-index:-1;background:linear-gradient(160deg,color-mix(in srgb,var(--career-color) 35%,#061347),#051135 65%)}
.has-selection .fc-column:not(.is-active) .fc-caption{inset:16px 0;align-items:center;justify-content:center;filter:drop-shadow(0 0 6px var(--career-color))}
.has-selection .fc-column:not(.is-active) .fc-caption b{writing-mode:vertical-rl;font-size:22px;min-height:0;padding:16px 7px;white-space:nowrap;letter-spacing:.04em}
.has-selection .fc-column:not(.is-active) .fc-caption b::before,.has-selection .fc-column:not(.is-active) .fc-caption b::after{clip-path:polygon(0 5%,50% 0,100% 5%,100% 95%,50% 100%,0 95%)}
.has-selection .fc-column:not(.is-active) .fc-caption small,.has-selection .fc-name-break{display:none}
.fc-career:hover .fc-panel-shine{background:#ffffff18}.fc-column:has(.fc-career:focus-visible){filter:drop-shadow(0 0 6px #fff4a2)}
.fc-career:focus-visible .fc-panel-shine{border:4px solid #fff4a2}
.fc-stage{position:absolute;inset:0 0 var(--preview-footer) 0;overflow:hidden;background:#0d1738;opacity:1;visibility:visible;transition:opacity .35s;z-index:2}
.fc-column.is-active{background:#0d1738}
.fc-stage[aria-hidden=true]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
.fc-stage-media,.fc-picture,.fc-art,.fc-video{position:absolute;inset:0;width:100%;height:100%;display:block}
/* Cover fills the (aspect-matched) stage — no side letterbox, no sliced neighbour art. */
.fc-art,.fc-video{object-fit:cover;object-position:center;background:#0d1738}
.fc-video{opacity:0;transition:opacity .3s;pointer-events:none}.has-video .fc-video{opacity:1}
.fc-stage-media{max-width:none;flex:none;transform:none;transition:none;animation:none}
.fc-scan{position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 47%,#fff5 50%,transparent 53%);transform:translateX(-150%);mix-blend-mode:soft-light}
.fc-scan{display:none}
.fc-atmosphere{position:absolute;inset:20% 0 5% 48%;pointer-events:none;overflow:hidden;opacity:.45}
.fc-atmosphere i{position:absolute;width:4px;height:4px;left:80%;bottom:0;border-radius:50%;background:#fff8c6;box-shadow:0 0 10px var(--career-color);animation:fcEmber 6s ease-out infinite}
.fc-atmosphere i:nth-child(2){left:60%;animation-delay:-1s;width:3px;height:3px}.fc-atmosphere i:nth-child(3){left:38%;animation-delay:-2.4s}.fc-atmosphere i:nth-child(4){left:76%;animation-delay:-3.6s}.fc-atmosphere i:nth-child(5){left:93%;animation-delay:-1.8s}
.fc-stage[data-world=english] .fc-atmosphere i{width:40px;height:1px;border-radius:0;animation-name:fcFlight}
.fc-stage[data-world=mathematics] .fc-atmosphere i{width:12px;height:12px;border:1px solid #fff3a5;background:none;border-radius:2px;animation-name:fcGeometry}
.fc-video-title{display:none;position:absolute;left:24px;top:22px;max-width:65%;padding:12px 16px;border-left:3px solid var(--career-color);border-radius:0 8px 8px 0;background:#111b38dd;color:#fff9df}
.has-video .fc-video-title{display:block}.fc-video-title>b{font:900 27px/1 var(--f-num);letter-spacing:.06em;color:#ffdf7e}.fc-video-title h3{font:800 22px/1.1 var(--f-num);margin:6px 0;color:#fff9df}.fc-video-title p{font:800 10px var(--f-num);margin:6px 0}.fc-video-title small{font:700 10px var(--f-num)}

.fc-footer{display:none;position:absolute;left:20px;right:20px;bottom:0;height:var(--preview-footer);color:#fff9df;z-index:3;min-width:0;box-sizing:border-box;padding:6px 0 10px}
.fc-column.is-active .fc-footer{display:block}
.fc-details{display:flex;align-items:center;justify-content:space-between;gap:20px;height:100%;min-height:0;animation:fcTitleReveal .5s .15s both}
.fc-copy{min-width:0}.fc-copy p{margin:0}.fc-copy .fc-skill{font:700 11px var(--f-body);letter-spacing:.07em;color:var(--career-color)}
.fc-copy h2{margin:0 0 4px;font:900 clamp(24px,3vw,38px)/1.1 var(--f-num);color:var(--career-color);text-shadow:0 2px 0 #081031}
.fc-description{font-size:11px;line-height:1.5;color:#cadbff}.fc-copy small{display:block;margin-top:4px;font-size:10px;color:#a9c8f0}
.fc-start{width:190px;flex:none;text-align:center}
.fc-enter{min-height:50px;width:100%;padding:8px 14px;border:3px solid var(--ink);border-radius:12px;background:linear-gradient(#fff19e,#ffc83b);color:var(--ink);box-shadow:0 5px 0 var(--ink),0 0 18px #ffce4540;font:800 16px var(--f-body);cursor:pointer}
.fc-enter b{margin-left:18px;font-size:21px}.fc-enter:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 var(--ink)}
.fc-enter:disabled{background:#cbc6d7;color:#534c67;box-shadow:0 4px 0 #0d122d;cursor:default}
.fc-enter:focus-visible,.fc-reset:focus-visible,.fc-motion:focus-visible{outline:3px solid #fff4a2;outline-offset:3px}
@keyframes fcPaneReveal{from{opacity:0;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}
@keyframes fcScan{to{transform:translateX(150%)}}
@keyframes fcTitleReveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes fcEmber{0%{opacity:0;transform:translateY(0)}20%{opacity:.7}100%{opacity:0;transform:translate(-18px,-220px)}}
@keyframes fcFlight{0%{opacity:0;transform:translate(40px,-40px) rotate(-25deg)}20%{opacity:.6}100%{opacity:0;transform:translate(-200px,45px) rotate(-25deg)}}
@keyframes fcGeometry{0%{opacity:0;transform:translateY(0) rotate(0)}20%{opacity:.6}100%{opacity:0;transform:translateY(-220px) rotate(100deg)}}

@keyframes fcStarFloat{0%,100%{opacity:.8;transform:translateY(0) rotate(-4deg)}50%{opacity:1;transform:translateY(-5px) rotate(5deg)}}
@keyframes fcWave{0%,100%{transform:translate(var(--sky-x),var(--sky-y)) scaleX(1)}50%{transform:translate(var(--sky-x),var(--sky-y)) scaleX(1.035)}}
@keyframes fcHalo{0%,100%{opacity:.7}50%{opacity:1}}
@keyframes fcLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes fcTwinkle{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}
@keyframes fcGlint{0%,70%,100%{opacity:0;transform:scale(.4)}80%{opacity:1;transform:scale(1.8)}}
@keyframes fcPanelArrival{from{opacity:0}to{opacity:1}}
@media(hover:none),(pointer:coarse){.fc-hint-mouse{display:none}.fc-hint-touch{display:block}}
@media(orientation:portrait){
  #v-focus .fx-card.fx-careers,#v-focus .fx-card.fx-careers.has-selection{--panel-cut:8px;--preview-footer:128px;--brand-width:min(300px,78vw)}
  #v-focus .fx-card.fx-careers,#v-focus .fx-card.fx-careers.has-selection{--fc-heading-h:201px;--fc-pad-top:205px}
  .fc-body{padding:var(--fc-pad-top) 14px max(20px,env(safe-area-inset-bottom))}
  .fc-banner{height:180px}
  .fc-brand,.has-selection .fc-brand{top:48px}.fc-badge,.has-selection .fc-badge{font-size:14px;padding:2px 14px;margin-top:-16px}.fc-wing,.has-selection .fc-wing{width:85px;top:94px}.fc-wing-left{left:calc(50% - var(--brand-width)*.5 - 18px)}.fc-wing-right{left:calc(50% + var(--brand-width)*.5 - 65px)}.fc-emblem{top:89px;width:20px;left:calc(50% - var(--brand-width)*.5 - 4px)}.fc-emblem-2{top:75px;left:calc(50% + var(--brand-width)*.5 - 12px)}.fc-emblem-3,.fc-emblem-4,.fc-emblem-5,.fc-emblem-6{display:none}
  .fc-instruction{bottom:6px;flex-direction:column;gap:2px;font-size:12px}.fc-instruction small{font-size:9px}
  .fc-actions{top:156px;right:14px}.fc-reset,.fc-motion{font-size:11px;padding:5px 10px}
  .fc-deck{flex-direction:column}
  .fc-column{margin:calc(var(--panel-cut)*-.5) 0;min-height:52px;clip-path:polygon(0 8px,100% 0,100% calc(100% - 8px),0 100%)}
  .fc-column:first-child{margin-top:0;clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),0 100%)}
  .fc-column:last-child{margin-bottom:0;clip-path:polygon(0 8px,100% 0,100% 100%,0 100%)}
  .has-selection .fc-column:not(.is-active){flex:1 1 0}.has-selection .fc-column.is-active{flex-grow:var(--active-grow,6.5);clip-path:polygon(0 8px,100% 0,100% calc(100% - 8px),0 100%)}
  .has-selection .fc-column.is-active:first-child{clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),0 100%)}.has-selection .fc-column.is-active:last-child{clip-path:polygon(0 8px,100% 0,100% 100%,0 100%)}
  .fc-scene{inset:0;height:100%;width:100%;aspect-ratio:auto;max-width:none;mask-image:linear-gradient(90deg,transparent 0 50%,#000b 62%,#000 74%)}
  .fc-strip-art{inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 30%;transform:none}
  .fc-career{background:linear-gradient(90deg,#061643ee 0 28%,#071c5266 46%,transparent 65%)}
  .fc-panel-shine{border-right:0;border-left:3px solid var(--career-color);border-bottom:1px solid var(--career-color)}.fc-panel-shine::before{display:none}
  .fc-caption,.fc-column:last-child .fc-caption{inset:0 16px;justify-content:center;align-items:flex-start;text-align:left;gap:0;filter:drop-shadow(0 0 5px var(--career-color))}
  .fc-caption small{width:108px;height:23px;padding:0 12px;font-size:14px}.fc-caption svg{height:20px;width:20px}
  .fc-name-break{display:none}.fc-caption b{width:max-content;max-width:100%;padding:7px 15px;min-height:40px;font-size:24px;line-height:1.1}
  .has-selection .fc-column:not(.is-active) .fc-caption{inset:0 14px;align-items:flex-start;justify-content:center}.has-selection .fc-column:not(.is-active) .fc-caption b{writing-mode:horizontal-tb;font-size:20px;padding:5px 14px;letter-spacing:0;min-height:32px}
  .has-selection .fc-column:not(.is-active) .fc-caption b::before,.has-selection .fc-column:not(.is-active) .fc-caption b::after{clip-path:polygon(9% 0,91% 0,100% 50%,91% 100%,9% 100%,0 50%)}
  .fc-footer{left:14px;right:14px}.fc-details{flex-direction:column;align-items:stretch;justify-content:center;gap:7px}.fc-copy h2{font-size:26px;margin:0 0 3px}.fc-copy .fc-skill{font-size:10px}.fc-copy small{font-size:10px;margin-top:3px}.fc-description{display:none}
  .fc-start{width:100%}.fc-enter{min-height:46px;font-size:14px;padding:6px 10px}.fc-enter b{margin-left:12px;font-size:18px}
  .fc-video-title{left:14px;top:12px;padding:8px 10px;max-width:80%}.fc-video-title>b{font-size:19px}.fc-video-title h3{font-size:17px}.fc-video-title p,.fc-video-title small{font-size:8px}
}
@media(min-width:700px) and (orientation:portrait){
  #v-focus .fx-card.fx-careers,#v-focus .fx-card.fx-careers.has-selection{--preview-footer:120px;--brand-width:min(520px,70vw)}
  #v-focus .fx-card.fx-careers,#v-focus .fx-card.fx-careers.has-selection{--fc-heading-h:222px;--fc-pad-top:224px}
  .fc-body{padding:var(--fc-pad-top) 24px 24px}.fc-banner{height:222px}.fc-brand,.has-selection .fc-brand{top:0}.fc-badge,.has-selection .fc-badge{font-size:20px;padding:2px 20px;margin-top:-14px}.fc-wing,.has-selection .fc-wing{width:130px;top:92px}.fc-wing-left{left:calc(50% - var(--brand-width)*.5 - 68px)}.fc-wing-right{left:calc(50% + var(--brand-width)*.5 - 62px)}.fc-emblem{top:74px;left:calc(50% - var(--brand-width)*.5 - 25px)}.fc-emblem-2{top:53px;left:calc(50% + var(--brand-width)*.5 + 8px)}.fc-instruction{bottom:8px;font-size:12px;flex-direction:row;gap:12px}.fc-instruction small{font-size:10px}.fc-actions{top:165px;right:24px}
  .fc-caption{inset:0 26px}.fc-caption small{width:140px;height:26px;font-size:18px}.fc-caption svg{height:25px;width:25px}.fc-caption b{font-size:30px}.fc-details{flex-direction:row;align-items:center;gap:20px}.fc-copy h2{font-size:36px}.fc-copy .fc-skill{font-size:12px}.fc-description{display:block;font-size:12px}.fc-start{width:220px}.has-selection .fc-column:not(.is-active) .fc-caption b{font-size:23px}
}
@media(max-height:500px) and (orientation:landscape){
  #v-focus .fx-card.fx-careers,#v-focus .fx-card.fx-careers.has-selection{--panel-cut:28px;--preview-footer:80px;--fc-heading-h:110px;--fc-pad-top:80px}
  #v-focus .fx-card.fx-careers{--brand-width:270px}#v-focus .fx-card.fx-careers.has-selection{--panel-cut:12px;--brand-width:210px}
  .fc-body{padding:var(--fc-pad-top) 12px 12px}.fc-brand{top:0}.fc-badge{font-size:13px;padding:1px 12px;margin-top:-14px}.has-selection .fc-badge{font-size:10px;padding:1px 10px;margin-top:-11px}.fc-wing{top:40px;width:80px}.fc-wing-left{left:calc(50% - var(--brand-width)*.5 - 45px)}.fc-wing-right{left:calc(50% + var(--brand-width)*.5 - 35px)}.fc-emblem{width:17px;top:27px;left:calc(50% - var(--brand-width)*.5 - 25px)}.fc-emblem-2{top:22px;left:calc(50% + var(--brand-width)*.5 + 4px)}.fc-emblem-3,.fc-emblem-4,.fc-emblem-5,.fc-emblem-6{display:none}.fc-instruction{bottom:0;font-size:10px;gap:10px}.fc-instruction small{font-size:8px}.fc-actions{top:50px;right:12px}.fc-reset,.fc-motion{font-size:10px;padding:5px 9px}
  .fc-scene{bottom:68px}.fc-caption{inset:auto calc(var(--panel-cut) + 3px) 7px 4px}.fc-column:last-child .fc-caption{right:4px}.fc-caption small{height:22px;font-size:14px;padding:0 8px}.fc-caption svg{width:19px;height:19px}.fc-caption b{min-height:40px;font-size:clamp(11px,8.7cqw,18px);padding:6px 4px}
  .has-selection .fc-column:not(.is-active) .fc-caption b{font-size:16px;padding:8px 5px}.fc-footer{left:16px;right:24px}.fc-details{gap:12px}.fc-copy h2{font-size:28px;margin:0 0 4px}.fc-copy .fc-skill{font-size:10px}.fc-description,.fc-copy small{display:none}.fc-start{width:145px}.fc-enter{min-height:44px;font-size:13px;padding:5px 12px}.fc-enter b{font-size:18px;margin-left:10px}.fc-video-title{left:14px;top:10px;padding:6px 10px}.fc-video-title>b{font-size:18px}.fc-video-title h3{font-size:15px;margin:4px 0}.fc-video-title p,.fc-video-title small{font-size:8px;margin:2px 0}
}
@media(prefers-reduced-motion:reduce){.fx-careers *{animation:none!important;transition:none!important}.fc-scan,.fc-atmosphere,.fc-backdrop i{display:none}.fc-logo-frame,.fc-badge,.fc-responsive-decoration{transform:none!important}.fc-logo-sheen{display:none}}

/* Landscape uses the source artwork's unequal polygons, painted as one shared geometry. */
@media(orientation:landscape){
  .fc-deck{flex:none;width:100%;max-height:none;transition:none}
  .fc-column,.fc-column:first-child,.fc-column:last-child,.has-selection .fc-column.is-active{position:absolute;top:0;height:100%;margin:0;flex:none;transition:opacity .35s,filter .35s}
  .fc-strip-art{transform:none;max-width:none;transition:filter .5s}
  .fc-caption,.fc-column:last-child .fc-caption{left:var(--caption-left,8px);right:var(--caption-right,8px)}
  .fc-caption b{font-size:clamp(16px,calc(var(--caption-width,180px)*.098),32px);padding:8px 4px}
  .fc-column:first-child .fc-caption small{padding-inline:6px}
  .has-selection .fc-column:not(.is-active) .fc-caption{left:0;right:0}
}
/* Desktop: only the logo width eases — never the page chrome height. */
@media(hover:hover) and (pointer:fine) and (orientation:landscape){
  #v-focus .fx-card.fx-careers{--brand-width:min(560px,44vw)}
  #v-focus .fx-card.fx-careers.has-selection{--brand-width:min(460px,36vw);--panel-cut:22px}
  .has-selection .fc-badge{font-size:18px;padding:2px 18px}
}
@media(max-height:500px) and (orientation:landscape){
  .fc-caption b{font-size:clamp(12px,calc(var(--caption-width,130px)*.098),18px);padding:6px 4px}
}

.fc-availability{align-self:center;margin-top:4px;padding:2px 8px;border:1px solid #fff4c2;border-radius:8px;background:#101947ed;color:#fff4c2;font:700 12px/1.2 var(--f-num);font-style:normal}
.has-selection .fc-column:not(.is-active) .fc-availability{display:none}
@media(orientation:portrait){.fc-availability{align-self:flex-start;margin-left:10px;font-size:11px;position:absolute;top:4px;right:10px}}

/* Explicit row sizes make the fixed preview canvas exactly match the final cut. */
@media(orientation:portrait){.fc-column,.has-selection .fc-column:not(.is-active),.has-selection .fc-column.is-active{flex:0 0 auto;transition:height .72s cubic-bezier(.22,.8,.25,1),clip-path .72s cubic-bezier(.22,.8,.25,1)}}

/* The existing illustrated covers already carry the full textbook title. */
.has-video.has-baked-title .fc-video-title{display:none}

/* Small, silent subject clips replace the static selection panels when available. */
#v-focus .fx-card.fx-careers,#v-focus .fc-body{overflow:clip}
.has-lobby-videos .fc-instruction{display:none}
.fc-strip-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:0;pointer-events:none;transition:opacity .3s}
.fc-scene.has-preview-video .fc-strip-video{opacity:1}
.fc-title-lock{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
@media(prefers-reduced-motion:reduce){.fc-strip-video{display:none}}

/* Closing keeps the playing preview pane on top while its panel shrinks back into the lobby. */
.fc-column.is-closing{z-index:2}
/* A released clip disappears at once rather than fading an empty frame over the new cover. */
.fc-video[hidden]{display:none}

/* Hover only highlights a panel; opening needs a click. */
@media(hover:hover) and (pointer:fine){.fc-column:has(.fc-career:hover):not(.is-active) .fc-scene{filter:brightness(1.12) saturate(1.05)}.fc-scene{transition:opacity .35s,filter .25s}}
