.film-player{width:var(--page-width,100%);max-width:none;margin-inline:calc((100% - var(--page-width,100%))/2);position:relative;background:#11171b;border:0;border-radius:0;overflow:visible}.film-frame{position:relative;aspect-ratio:16/9;width:100%;isolation:isolate;overflow:hidden;border:0;border-radius:0}.film-frame>video{display:block;width:100%;height:100%;object-fit:cover;border:0;border-radius:0;max-width:none}.film-annotations{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .32s}.film-annotations svg{position:absolute;width:100%;height:100%;overflow:visible}.film-annotations polyline{fill:none;stroke:#e8eaeb;stroke-width:1.2;filter:drop-shadow(0 1px 2px #1b1d1f)}.film-annotations circle{fill:#e8eaeb;stroke:#282c30;stroke-width:1.4}.film-label{position:absolute;display:flex;gap:16px;align-items:flex-start;color:#fff;text-shadow:0 1px 8px #000;background:linear-gradient(110deg,#142019d9,#14201970);padding:13px 15px;border-radius:3px;backdrop-filter:blur(8px);max-width:390px}.film-label strong{font-size:16px;line-height:1.35;letter-spacing:-.015em;font-weight:500;flex:0 0 112px}.film-label span{font-size:13px;line-height:1.6;font-weight:350;max-width:220px}.film-controls{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:12px;padding:25px 24px 10px;background:linear-gradient(transparent,#101817b0);color:white;opacity:0;transition:opacity .22s}.film-player:hover .film-controls,.film-player:focus-within .film-controls,.film-player.is-paused .film-controls{opacity:1}.film-controls button{border:0;background:transparent;color:white;width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border-radius:50%}.film-controls button:hover{background:#ffffff20}.film-controls svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.film-play svg{fill:currentColor;stroke:none}.film-controls input{min-width:0;flex:1;height:44px;accent-color:#d6d9dc;cursor:pointer}.film-time{font-size:12px;font-variant-numeric:tabular-nums;min-width:35px}.film-mobile-note{display:none}.film-note{font-size:12px;line-height:1.7;margin-top:18px;color:#748078}.film-player:fullscreen{background:#11171b;display:flex;align-items:center;justify-content:center}.film-player:fullscreen .film-frame{max-height:100svh;width:100%;height:100svh;aspect-ratio:auto}.film-player:fullscreen video{object-fit:contain}.film-player:fullscreen .film-mobile-note{display:none}
@media(pointer:coarse){.film-controls{opacity:1}}
@media(max-width:760px){.film-controls{gap:2px;padding:12px 8px 0;opacity:1}.film-controls button{width:44px;height:44px;flex-basis:44px}.film-controls .film-time{display:none}.film-label{padding:6px 9px;max-width:145px;backdrop-filter:blur(5px)}.film-label strong{font-size:11px;flex:auto;white-space:normal}.film-label span{display:none}.film-mobile-note{display:flex;align-items:flex-start;gap:18px;padding:20px;background:#fafafa;color:#222629;min-height:114px}.film-mobile-note strong{font-size:14px;line-height:1.45;flex:0 0 110px;font-weight:500}.film-mobile-note span{font-size:14px;line-height:1.65;color:#606870}.wrap{width:calc(100% - 40px)}.page-intro h1,.detail-intro h1{font-size:clamp(36px,10.5vw,49px);line-height:1.12;overflow-wrap:break-word}.section-heading h2,.rule-head h2{line-height:1.15}p{line-height:1.7}.header-actions .header-cta{display:none}header .brand{max-width:132px}header .mobile-toggle{min-width:44px;min-height:44px}.mega-links a,.mega-inner>a{min-height:44px}.local-nav,.jump{overflow-x:auto;flex-wrap:nowrap!important;gap:22px!important;max-width:100%;scrollbar-width:none;overscroll-behavior-inline:contain;padding-bottom:16px}.local-nav a,.jump a{white-space:nowrap;flex-shrink:0;min-height:44px;display:flex;align-items:center}.form-grid input,.form-grid select,.form-grid textarea,input[type=number],input[type=email],input[type=text],select{font-size:16px;min-height:48px}.button{min-height:48px}.prose-grid{gap:30px}.rule-section{scroll-margin-top:80px}.film-note{font-size:12px;padding-inline:0;margin-top:14px}.tech-index a{min-height:44px;display:flex;align-items:center}.film-player:fullscreen .film-label strong{font-size:14px}.film-player:fullscreen .film-label{max-width:240px}}
@media(prefers-reduced-motion:reduce){.film-annotations,.film-controls{transition:none}}
.film-mobile-note{display:flex;gap:24px;align-items:flex-start;min-height:110px;padding:24px max(24px,calc((100% - 1180px)/2));background:#fafafa;color:#222629}.film-mobile-note strong{flex:0 0 150px;font-size:16px;line-height:1.5;font-weight:500}.film-mobile-note span{max-width:700px;font-size:15px;line-height:1.7;color:#606870}.film-mobile-note strong:before{content:'';display:inline-block;width:7px;height:7px;margin-right:10px;border:1px solid #3e4449;border-radius:50%;background:#dee0e3;vertical-align:middle}.film-player.is-overlay .film-mobile-note{visibility:hidden}.film-label.is-title-only{display:block}.film-label.is-title-only strong{display:block}.film-label.is-title-only span{display:none}
@media(max-width:999px){.film-label{display:none!important}.film-player.is-overlay .film-mobile-note{visibility:visible}.film-mobile-note{padding:20px;gap:18px;min-height:114px}.film-mobile-note strong{flex-basis:110px;font-size:14px}.film-mobile-note span{font-size:14px}}

@media(max-width:760px){h2{line-height:1.16}h3{line-height:1.22}}

/* A complete frame that fits the available desktop height, without cropping. */
.film-player{--film-width:min(var(--page-width,100vw),calc((100svh - 116px)*1.777778));width:var(--film-width);margin-inline:calc((100% - var(--film-width))/2);border:0;border-radius:0}
.film-frame{aspect-ratio:16/9;max-height:calc(100svh - 116px)}
.film-frame>video{object-fit:contain;pointer-events:none}
.film-controls,.film-mobile-note{display:none!important}
.film-label{display:block!important;box-sizing:border-box;max-width:none;padding:10px 12px;border-radius:2px;background:#111b20d9;backdrop-filter:blur(6px)}
.film-label strong{display:block;font-size:16px;line-height:1.35;font-weight:500;margin-bottom:5px}
.film-label span{display:block;font-size:13px;line-height:1.5;color:#e2e4e6;max-width:none}
.film-annotations{transition:opacity .35s}
video::-webkit-media-controls{display:none!important}
@media(max-width:650px){.film-player{--film-width:var(--page-width,100vw)}.film-frame{max-height:none}.film-label{padding:7px 9px}.film-label strong{font-size:12px;margin-bottom:3px}.film-label span{font-size:10px;line-height:1.4}.film-annotations polyline{stroke-width:1}}
/* Translucent glass: the photograph supplies the colour and lighting. */
.film-label{--glass-ink:#f6f7f8;--glass-muted:#eff0f2;--glass-tint:rgba(20,30,38,.36);color:var(--glass-ink);background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.025) 48%,rgba(255,255,255,.10)),var(--glass-tint);border:1px solid rgba(255,255,255,.42);border-bottom-color:rgba(255,255,255,.15);border-radius:17px;box-shadow:inset 0 1px 1px rgba(255,255,255,.6),inset 0 -1px 1px rgba(255,255,255,.1),0 8px 28px rgba(0,0,0,.11);backdrop-filter:blur(14px) saturate(155%);-webkit-backdrop-filter:blur(14px) saturate(155%);text-shadow:0 1px 5px rgba(0,0,0,.14);transition:color .45s,background-color .45s,border-color .45s;padding:12px 15px}
.film-label.on-light{--glass-ink:#152129;--glass-muted:#283741;--glass-tint:rgba(245,250,253,.24);text-shadow:0 1px 3px rgba(255,255,255,.2);border-color:rgba(255,255,255,.65)}
.film-label strong{color:var(--glass-ink);transition:color .45s}.film-label span{color:var(--glass-muted);transition:color .45s}
.film-annotations.on-light polyline{stroke:#383c41;filter:drop-shadow(0 1px 1px #ffffff90)}.film-annotations.on-light circle{fill:#fbfbfb;stroke:#383c41}
@media(max-width:650px){.film-label{border-radius:12px;padding:8px 10px;backdrop-filter:blur(10px) saturate(150%);-webkit-backdrop-filter:blur(10px) saturate(150%)}}
@media(prefers-reduced-transparency:reduce){.film-label{--glass-tint:rgba(20,30,38,.92)}.film-label.on-light{--glass-tint:rgba(245,250,253,.94)}}
.film-annotations{transition:opacity .6s cubic-bezier(.22,1,.36,1)}
@media(prefers-reduced-motion:reduce){.film-annotations{transition:opacity .12s}}
