/* Interface refinements: drawn icons, contained display type, expanded menu and category detail overlays. */

.ui-icon{position:relative;width:1.05em;height:1.05em;display:inline-block;flex:0 0 auto;color:currentColor;font-style:normal;transform-origin:center}
.ui-icon::before{content:"";position:absolute;left:12%;right:14%;top:50%;height:1.5px;background:currentColor;transform:translateY(-50%)}
.ui-icon::after{content:"";position:absolute;right:13%;top:25%;width:48%;height:48%;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}
.ui-icon--back{transform:rotate(180deg)}
.ui-icon--down{transform:rotate(90deg)}
.ui-icon--external{transform:rotate(-45deg)}
.icon-link{display:inline-flex!important;align-items:center;gap:.55em}

/* Mobile menu: content begins at the top and both navigation groups open immediately. */
.gala-menu__top button svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.gala-menu nav{flex:0 0 auto;justify-content:flex-start;margin:18px auto 0;padding:10px 0 24px}
.gala-menu details{border-top:1px solid rgba(255,255,255,.14)}
.gala-menu details:last-of-type{border-bottom:1px solid rgba(255,255,255,.14)}
.gala-menu summary{padding:17px 0 12px;font-size:17px}
.gala-menu summary .menu-chevron{width:24px;height:24px;display:grid;place-items:center;color:rgba(255,248,233,.62);transition:transform .22s var(--nav-ease)}
.gala-menu summary .menu-chevron svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.gala-menu details[open] summary .menu-chevron{transform:rotate(180deg)}
.gala-menu details>div{padding:0 0 19px 18px}
.gala-menu details p{margin-top:10px}
.gala-menu details a{padding:6px 0}
.gala-menu__direct{min-height:52px;padding:15px 0}
.gala-menu__cta{flex:0 0 auto;margin:8px auto 0}

/* Display type must remain inside its own line boxes and viewport at every supported size. */
.awards-v10 h1,.awards-v10 h2,.awards-admin h1,.awards-admin h2,.nominee-profile h1,.nominee-profile h2,.awards-nominate-v10 h1,.awards-nominate-v10 h2{overflow:visible;text-wrap:balance;padding-bottom:.18em}
.awards-v10-hero__copy{width:min(960px,74vw)}
.awards-v10-hero h1{max-width:940px;font-size:clamp(64px,min(9vw,15vh),148px);line-height:.9;letter-spacing:-.072em}
.awards-stage-panel h2{font-size:clamp(58px,min(7.2vw,12vh),112px);line-height:.92;letter-spacing:-.065em;padding-block:.04em .18em}
.awards-v10-categories header h2{font-size:clamp(58px,min(7.5vw,12vh),116px);line-height:.92;letter-spacing:-.068em;padding-block:.04em .18em}
.awards-v10-path h2{font-size:clamp(58px,min(7.4vw,12vh),116px);line-height:.92;padding-bottom:.18em}
.awards-v10-final__copy h2{font-size:clamp(58px,min(7vw,12vh),108px);line-height:.92;padding-bottom:.18em}
.awards-admin__hero h1,.nominee-profile__hero h1{font-size:clamp(62px,min(8vw,14vh),126px);line-height:.9;padding-bottom:.18em}
.nominate-v10-hero h1{font-size:clamp(62px,min(8vw,14vh),126px);line-height:.9;padding-bottom:.18em}

/* Every category is an explicit action rather than static list text. */
.awards-v10-category-list li{padding:0}
.awards-v10-category-list li button{width:100%;min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:18px;align-items:center;padding:14px 0;border:0;background:transparent;color:rgba(247,247,242,.82);font-size:13px;font-weight:750;line-height:1.3;text-align:left;text-transform:uppercase;cursor:pointer;transition:color .2s ease,padding .2s ease}
.awards-v10-category-list li button .ui-icon{font-size:16px;color:var(--awards-cyan);transition:transform .2s ease}
.awards-v10-category-list li button:hover,.awards-v10-category-list li button:focus-visible{padding-left:8px;color:#fff;outline:none}
.awards-v10-category-list li button:hover .ui-icon,.awards-v10-category-list li button:focus-visible .ui-icon{transform:translateX(3px)}

/* Category detail popout — deliberately fills ninety percent of the viewport. */
.award-category-dialog{position:fixed;z-index:6500;inset:0;color:var(--awards-white)}
.award-category-dialog[hidden]{display:none!important}
.award-category-dialog__backdrop{position:absolute;inset:0;width:100%;border:0;background:rgba(1,3,8,.86);backdrop-filter:blur(14px)}
.award-category-dialog__panel{position:absolute;inset:5%;width:90%;height:90%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(167,243,255,.28);background:radial-gradient(circle at 88% 8%,rgba(185,166,255,.18),transparent 27%),#080d1d;box-shadow:0 36px 120px rgba(0,0,0,.62)}
.award-category-dialog__panel>header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px clamp(22px,3vw,46px);border-bottom:1px solid rgba(167,243,255,.18)}
.award-category-dialog__panel>header p{margin:0;color:var(--awards-cyan);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.award-category-dialog__panel>header span{display:block;margin-top:5px;color:rgba(247,247,242,.45);font-size:11px}
.award-category-dialog__panel>header button{width:48px;height:48px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;cursor:pointer}
.award-category-dialog__panel>header button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.award-category-dialog__body{overflow-y:auto;overscroll-behavior:contain;padding:clamp(42px,5vw,78px) clamp(22px,6vw,92px) clamp(60px,7vw,105px)}
.award-category-dialog__lead{display:inline-flex;margin:0 0 28px;padding:9px 12px;background:linear-gradient(100deg,var(--awards-cyan),var(--awards-lilac));color:#07101c;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.award-category-dialog__body>h2{max-width:1120px;margin:0;font-size:clamp(52px,min(7vw,12vh),112px);font-weight:900;line-height:.86;letter-spacing:-.072em;text-transform:uppercase;text-wrap:balance;padding-bottom:.12em}
.award-category-dialog__intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,5vw,80px);max-width:1120px;margin:38px 0 76px;padding-top:28px;border-top:1px solid rgba(167,243,255,.2)}
.award-category-dialog__intro p{margin:0;color:rgba(247,247,242,.7);font-size:clamp(16px,1.5vw,21px);line-height:1.55}
.award-category-dialog__body>section{padding:42px 0;border-top:1px solid rgba(167,243,255,.18)}
.award-category-dialog__body section>p,.award-category-dialog__criteria section>p{margin:0 0 14px;color:var(--awards-cyan);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.award-category-dialog__body section>h3{max-width:920px;margin:0 0 30px;font-size:clamp(30px,3.6vw,58px);font-weight:850;line-height:1;letter-spacing:-.045em}
.award-category-dialog__body ul{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(30px,5vw,80px);margin:0;padding:0;list-style:none}
.award-category-dialog__body li{padding:16px 0;border-top:1px solid rgba(167,243,255,.11);color:rgba(247,247,242,.72);font-size:14px;line-height:1.45}
.award-category-dialog__criteria{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid rgba(167,243,255,.18)}
.award-category-dialog__criteria section{min-width:0;padding:42px clamp(20px,4vw,58px) 48px 0}
.award-category-dialog__criteria section+section{padding-left:clamp(20px,4vw,58px);border-left:1px solid rgba(167,243,255,.18)}
.award-category-dialog__criteria span{display:block;color:#fff;font-size:clamp(20px,2vw,30px);font-weight:650;line-height:1.35}
.award-category-dialog__evidence{margin-top:54px}
.award-category-dialog__panel>footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:18px clamp(22px,3vw,46px);border-top:1px solid rgba(167,243,255,.18);background:#050812}
.award-category-dialog__panel>footer>span{color:rgba(247,247,242,.54);font-size:12px}

@media(max-height:760px) and (min-width:901px){
  .awards-v10-hero{padding-top:130px;padding-bottom:42px}
  .awards-v10-hero h1{font-size:clamp(62px,13vh,96px)}
  .awards-v10-hero__copy>span{margin-top:19px;padding-top:15px}
  .awards-v10-hero__copy>div{margin-top:22px}
  .awards-stage-panel h2,.awards-v10-categories header h2{font-size:clamp(58px,11vh,84px)}
}

@media(max-width:900px){
  .awards-v10-hero__copy{width:100%}
  .awards-v10-hero h1{font-size:clamp(50px,min(14.2vw,10vh),72px);line-height:.92;letter-spacing:-.064em}
  .awards-stage-panel h2,.awards-v10-categories header h2,.awards-v10-path h2,.awards-v10-final__copy h2{font-size:clamp(52px,min(14vw,11vh),78px);line-height:.92}
  .awards-admin__hero h1,.nominee-profile__hero h1,.nominate-v10-hero h1{font-size:clamp(55px,min(15vw,12vh),82px);line-height:.92}
  .award-category-dialog__panel{inset:5%;width:90%;height:90%}
  .award-category-dialog__panel>header{padding:16px 18px}.award-category-dialog__panel>header span{display:none}
  .award-category-dialog__body{padding:34px 20px 60px}
  .award-category-dialog__body>h2{font-size:clamp(47px,min(13vw,9vh),72px);line-height:.89}
  .award-category-dialog__intro,.award-category-dialog__body ul,.award-category-dialog__criteria{grid-template-columns:1fr}
  .award-category-dialog__intro{gap:18px;margin:25px 0 48px;padding-top:20px}
  .award-category-dialog__criteria section+section{padding-left:0;border-left:0;border-top:1px solid rgba(167,243,255,.18)}
  .award-category-dialog__panel>footer{display:grid;padding:14px 18px}.award-category-dialog__panel>footer>span{display:none}.award-category-dialog__panel>footer a{width:100%}
}

@media(max-width:520px){
  .gala-menu{justify-content:flex-start}
  .gala-menu nav{margin-top:10px}
  .gala-menu details>div{padding-left:10px}
  .awards-v10-category-list li button{font-size:12px}
}
