/* Functional controls extend the approved visual direction. */
.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--ink);color:var(--bg);padding:14px 20px}.skip-link:focus{top:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}.header-cta{font-size:16px;line-height:1.45}.header nav a[aria-current]{color:var(--cyan)}.hero-actions .button,.hero-actions .text-link{font-size:18px}.hero-actions{flex-wrap:wrap;gap:16px 26px}.hero-actions .button{padding:18px 22px}.hero-actions .text-link{font-weight:700;min-height:56px}.hero{min-height:720px}.round{min-width:44px;min-height:44px}.round:disabled{opacity:.32;cursor:default}.round:disabled:hover{background:transparent;color:inherit}
.character-photo,.gallery-photo,.project-poster,.vertical-video{display:block;padding:0;border:0;color:inherit;font:inherit;text-align:left;width:100%;cursor:pointer;position:relative}.character-photo{height:420px}.character-photo:hover .photo-zoom,.gallery-photo:hover .photo-zoom{background:var(--ink);color:var(--bg)}.photo-zoom{position:absolute;bottom:16px;right:16px;border:1px solid #fff8;border-radius:50%;display:grid;place-items:center;width:38px;height:38px;background:#1118;color:white;font-size:23px;line-height:1;transition:background .2s}.card-order{min-height:52px}.card-order.selected{border-color:var(--cyan)}.gallery-photo{height:100%;overflow:hidden}.gallery-caption{position:absolute;bottom:0;left:0;padding:40px 65px 23px 23px;width:100%;background:linear-gradient(transparent,#000b);font-size:15px;font-weight:600}.project-poster{width:100%}.project-poster.podcast,.project-poster.esports{padding:23px}.project-poster .play,.vertical-video .play{transition:background .2s,transform .2s}.project-poster:hover .play,.vertical-video:hover .play{background:var(--red)}.vertical-video{width:158px;border:6px solid var(--bg)}.video-caption{position:absolute;bottom:14px;left:10px;right:8px;font-size:11px;font-weight:700}.video-caption>span{display:block;font-size:10px;letter-spacing:.12em;color:#d0dce6}
.select-field{min-width:0;width:100%}.select-field select{appearance:auto;width:100%;border:1px solid #455467;border-radius:0;background:#182331;color:#fff;font-family:var(--body);font-size:16px;line-height:1.5;min-height:52px;padding:10px 28px 10px 12px;cursor:pointer}.select-field select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.select-field .field-label{margin-bottom:9px;font-size:14px}.select-field small{padding-top:6px}.calculator .calc-label{font-size:14px;line-height:1.6}.calc-equation{font-size:13px;color:#c0cddd}.booking-summary{font-size:14px!important;border:1px solid #fff9;padding:12px 16px;color:white!important;line-height:1.6}
.modal-open{overflow:hidden}.media-dialog{padding:0;border:1px solid #4b5668;border-radius:2px;background:#0c0e12;color:var(--ink);max-width:calc(100vw - 36px);width:1050px;max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 25px 100px #000b}.media-dialog::backdrop{background:#02050ae8;backdrop-filter:blur(9px)}.dialog-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;background:var(--bg)}.dialog-bar h2{font-family:var(--body);font-size:16px;line-height:1.5;letter-spacing:0}.dialog-close{border:1px solid #667084;border-radius:50%;min-width:44px;height:44px;display:grid;place-items:center;font-size:28px;background:transparent;line-height:1}.dialog-close:hover{background:var(--ink);color:var(--bg)}#media-content{background:#000}.lightbox-image{height:min(72dvh,850px);width:100%;object-fit:contain}.dialog-footer{display:flex;align-items:center;justify-content:center;gap:20px;padding:14px 18px;font-size:14px;color:#c4d0e0}.dialog-footer>a{color:var(--cyan);text-align:center;padding:8px;min-height:44px}.video-dialog #media-content{aspect-ratio:16/9;max-height:72dvh}.video-dialog iframe{display:block;width:100%;height:100%;border:0;min-height:inherit}.vertical-dialog{width:min(460px,calc((100dvh - 155px)*9/16 + 32px))}.vertical-dialog #media-content{aspect-ratio:9/16;max-height:calc(100dvh - 180px)}.clip-fallback{position:relative;height:100%}.clip-fallback img{width:100%;height:100%;object-fit:cover;opacity:.6}.clip-fallback p{position:absolute;bottom:0;left:0;right:0;padding:30px 20px;background:linear-gradient(transparent,#000);color:white;text-align:center;font-size:16px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.revealed,.reveal:focus-within{opacity:1;transform:none}
@media(min-width:1600px){.character-photo{height:480px}}
@media(max-width:1280px){.header-cta{display:none}}
@media(max-width:1200px){.character-photo{height:365px}.hero{height:710px}.hero-content{padding-top:50px}.hero-actions{max-width:540px}}
@media(max-width:850px){.header-cta{display:block;font-size:15px}.character-photo{height:350px}.hero{height:750px}.hero-content{width:90%}.hero-actions{max-width:570px}.gallery-caption{font-size:14px}.vertical-video{width:160px}}
@media(max-width:580px){.header-cta{display:none}.hero{height:auto;min-height:840px}.hero-content{width:100%;padding:315px 20px 85px}.hero-actions{gap:8px}.hero-actions .button,.hero-actions .text-link{font-size:18px}.hero-actions .button{gap:10px;padding:17px 18px}.character-photo{height:370px}.round{min-width:44px;min-height:44px}.section-heading{flex-wrap:wrap}.catalog-tools{margin-left:auto}.gallery-caption{padding:30px 56px 15px 15px;font-size:13px}.photo-zoom{bottom:12px;right:12px}.calculator{padding:24px 19px}.calc-row{gap:10px}.calc-number{font-size:10px}.select-field select{font-size:16px;padding-right:12px}.calc-equation{font-size:12px}.media-dialog{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.dialog-bar{padding:10px 12px;gap:12px}.dialog-bar h2{font-size:14px}.dialog-footer{padding:9px 12px;font-size:12px}.lightbox-image{height:65dvh}.vertical-dialog{width:min(390px,calc((100dvh - 150px)*9/16 + 24px))}.vertical-dialog #media-content{max-height:calc(100dvh - 165px)}.vertical-video{width:132px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
@media print{.reveal{opacity:1;transform:none}.header,.hero-actions,.dialog,.review-bar{display:none}body{background:#fff;color:#000}.section{break-inside:avoid}}
.project-card{min-width:0}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:580px){.project-grid{grid-template-columns:minmax(0,1fr)}.esports>b{font-size:clamp(30px,10vw,40px)}}

/* Keep the clip anchored over the portrait, as in the approved composition. */
.about-visual .vertical-video{position:absolute}
.video-dialog video{display:block;width:100%;height:100%;object-fit:contain;background:#000}

.event-new{grid-column:span 1;min-width:0}.event-new img{object-position:50% 50%}@media(max-width:580px){.event-new{grid-column:span 1}.event-new img{object-position:50% 45%}}

