@layer components{.photo-row{display: flex;gap: var(--sp-2);}}
@layer components{.photo-row--single .photo{aspect-ratio: max(var(--r),2.2);}}
@layer components{.photo__caption{position: absolute;left: 0;right: 0;bottom: 0;padding: 20px 12px 10px;font-family: var(--font-display);font-size: var(--fs-micro);font-weight: var(--fw-semi);letter-spacing: var(--ls-ui);text-transform: uppercase;color: var(--white-text);background: linear-gradient(180deg,transparent,rgba(8,8,10,.7));opacity: 0;transition: opacity var(--dur) var(--ease);pointer-events: none;}}
@layer components{.photo:hover .photo__caption,.photo:focus-within .photo__caption{opacity: 1;}}
@layer components{@media (max-width: 767px){.photo-row{flex-wrap: wrap;}}}
@layer components{@media (max-width: 767px){.photo--portrait,.photo--square{flex: 1 1 calc(50% - var(--sp-2) / 2);}}}
@layer components{@media (max-width: 767px){.photo__caption{opacity: 1;}}}
@layer components{.hphotos{background: linear-gradient(180deg, #181b1f, var(--graphite)); color: #fff; padding-block: var(--sp-8); border-top: 4px solid var(--red);}}
@layer components{.hphotos__head{display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: var(--sp-3); margin-bottom: var(--sp-5);}}
@layer components{.hphotos__kicker{display: block; font-family: var(--font-display); font-size: var(--fs-micro); font-weight: var(--fw-black); letter-spacing: var(--ls-label); text-transform: uppercase; color: rgba(255,255,255,.7);}}
@layer components{.hphotos__title{margin: 6px 0 0; font-family: var(--font-display); font-weight: var(--fw-black); font-size: clamp(2.25rem, 5vw, 4rem); line-height: .9; letter-spacing: var(--ls-tight); text-transform: uppercase; color: #fff;}}
@layer components{.hphotos__all{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-display); font-size: var(--fs-small); font-weight: var(--fw-bold); letter-spacing: var(--ls-ui); text-transform: uppercase; color: #fff; text-decoration: underline; text-underline-offset: 4px;}}
@layer components{.hphotos__all .icon{width: 16px; height: 16px;}}
@layer components{.hphotos__all:hover{color: #fff; text-decoration-thickness: 2px;}}
@layer components{.hphoto{position: relative; display: block; overflow: hidden; background: #0e1012; color: #fff; isolation: isolate;}}
@layer components{.hphoto--lead{grid-column: span 2; grid-row: span 2;}}
@layer components{.hphoto img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; transition: transform 600ms var(--ease, ease);}}
@layer components{.hphoto:hover img,.hphoto:focus-visible img{transform: scale(1.04);}}
@layer components{.hphoto::after{content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(8,8,10,0) 45%, rgba(8,8,10,.86) 100%); pointer-events: none;}}
@layer components{.hphoto__body{position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px 16px; border-left: 4px solid transparent; transition: border-color 200ms;}}
@layer components{.hphoto:hover .hphoto__body,.hphoto:focus-visible .hphoto__body{border-left-color: var(--red);}}
@layer components{.hphoto__title{font-family: var(--font-display); font-weight: var(--fw-black); font-size: 1.25rem; line-height: 1; letter-spacing: var(--ls-tight); text-transform: uppercase; text-shadow: 0 2px 14px rgba(0,0,0,.6);}}
@layer components{.hphoto--lead .hphoto__title{font-size: clamp(1.75rem, 3vw, 2.75rem); line-height: .92;}}
@layer components{.hphoto--lead .hphoto__body{padding: var(--sp-5); gap: 6px;}}
@layer components{.hphoto__meta{font-family: var(--font-display); font-size: var(--fs-micro); font-weight: var(--fw-semi); letter-spacing: var(--ls-label); text-transform: uppercase; color: rgba(255,255,255,.82);}}
@layer components{@media (max-width: 899px){.hphotos{padding-block: var(--sp-7);}}}
@layer components{@media (max-width: 899px){.hphoto--lead{grid-column: 1 / -1; grid-row: span 2;}}}
@layer components{@media (prefers-reduced-motion: reduce){.hphoto img{transition: none;}}}
@layer components{@media (prefers-reduced-motion: reduce){.hphoto:hover img{transform: none;}}}
@layer components{.crecent{display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: clamp(220px, 24vw, 340px);}}
@layer components{.crecent .hphoto__title{font-size: clamp(1.375rem, 2.2vw, 2rem);}}
@layer components{.crecent .hphoto__body{padding: var(--sp-4);}}
@layer components{@media (max-width: 767px){.crecent{grid-template-columns: 1fr; grid-auto-rows: 240px;}}}
@layer components{.hphotos{position: relative; overflow: hidden; isolation: isolate; padding-block: calc(var(--sp-8) + 22px); border-top: 0;}}
@layer components{.hphotos::before,.hphotos::after{content: ""; position: absolute; left: 0; right: 0; height: 22px; z-index: 1; background-color: #0c0d0f; background-image: repeating-linear-gradient(90deg, transparent 0 14px, rgba(255,255,255,.2) 14px 30px, transparent 30px 44px); background-size: 44px 10px; background-repeat: repeat-x; background-position: 0 6px;}}
@layer components{.hphotos::before{top: 0; border-bottom: 3px solid var(--red);}}
@layer components{.hphotos::after{bottom: 0;}}
@layer components{.hphotos__ghost{position: absolute; z-index: -1; right: -1vw; top: 18px; font-family: var(--font-display); font-weight: var(--fw-black); font-size: clamp(7rem, 22vw, 20rem); line-height: .8; letter-spacing: -.02em; text-transform: uppercase; color: transparent; -webkit-text-stroke: 2px rgba(255,255,255,.07); pointer-events: none; user-select: none;}}
@layer components{@supports not (-webkit-text-stroke: 1px #fff){.hphotos__ghost{color: rgba(255,255,255,.04);}}}
@layer components{.hphotos__head{align-items: end; margin-bottom: var(--sp-5); padding-bottom: var(--sp-3); border-bottom: 1px solid rgba(255,255,255,.16);}}
@layer components{.hphotos__kicker{display: inline-block; padding: 5px 16px 5px 10px; background: var(--red); color: #fff; clip-path: polygon(0 0, 100% 0, calc(100% - 10px) 100%, 0 100%);}}
@layer components{.hphotos__title{margin-top: 12px; font-size: clamp(2.75rem, 6.5vw, 5.5rem); line-height: .86;}}
@layer components{.hphoto{outline: 1px solid rgba(255,255,255,.1); outline-offset: -1px;}}
@layer components{.hphoto:not(.hphoto--lead) img{filter: grayscale(.85) contrast(1.06) brightness(.92); transition: transform 600ms var(--ease, ease), filter 400ms var(--ease, ease);}}
@layer components{.hphoto:not(.hphoto--lead):hover img,.hphoto:not(.hphoto--lead):focus-visible img{filter: none;}}
@layer components{.hphoto--lead img{filter: contrast(1.04) saturate(1.05);}}
@layer components{.hphoto::after{background: linear-gradient(180deg, rgba(8,8,10,.25) 0%, rgba(8,8,10,0) 30%, rgba(8,8,10,0) 48%, rgba(8,8,10,.9) 100%);}}
@layer components{.hphoto__body{border-left-width: 0; padding-left: 16px;}}
@layer components{.hphoto:hover .hphoto__body,.hphoto:focus-visible .hphoto__body{border-left-color: transparent;}}
@layer components{.hphoto__title{transition: color 200ms;}}
@layer components{.hphoto--lead .hphoto__title{font-size: clamp(2rem, 3.8vw, 3.5rem); line-height: .88;}}
@layer components{.hphoto__vf{position: absolute; inset: 10px; z-index: 3; pointer-events: none; opacity: 0; transition: opacity 200ms, inset 300ms var(--ease, ease); --c: #fff; --l: 18px; --t: 3px;
		background:
			linear-gradient(var(--c), var(--c)) left top / var(--l) var(--t) no-repeat, linear-gradient(var(--c), var(--c)) left top / var(--t) var(--l) no-repeat,
			linear-gradient(var(--c), var(--c)) right top / var(--l) var(--t) no-repeat, linear-gradient(var(--c), var(--c)) right top / var(--t) var(--l) no-repeat,
			linear-gradient(var(--c), var(--c)) left bottom / var(--l) var(--t) no-repeat, linear-gradient(var(--c), var(--c)) left bottom / var(--t) var(--l) no-repeat,
			linear-gradient(var(--c), var(--c)) right bottom / var(--l) var(--t) no-repeat, linear-gradient(var(--c), var(--c)) right bottom / var(--t) var(--l) no-repeat;}}
@layer components{.hphoto--lead .hphoto__vf{opacity: .9; inset: 14px; --l: 26px;}}
@layer components{.hphoto:hover .hphoto__vf,.hphoto:focus-visible .hphoto__vf{opacity: 1; --c: var(--red); inset: 8px;}}
@layer components{.hphoto--lead .hphoto__body{padding: var(--sp-6) var(--sp-6) calc(var(--sp-5) + 14px);}}
@layer components{.hphoto:not(.hphoto--lead) .hphoto__body{padding: 14px 18px 20px;}}
@layer components{@media (max-width: 899px){.hphotos__ghost{top: 30px; font-size: 34vw;}}}
@layer components{@media (max-width: 899px){.hphoto--lead .hphoto__body{padding: var(--sp-4) var(--sp-4) calc(var(--sp-4) + 10px);}}}
@layer components{.chx-photos .hphotos__title{font-size: clamp(2.25rem, 5vw, 4.25rem);}}
@layer components{.chx-photogrid{position: relative; z-index: 2;}}
@layer components{.chx-there{background: #fff; padding-block: var(--sp-8); border-top: 1px solid var(--silver-line); border-bottom: 1px solid var(--silver-line);}}
@layer components{.chx-there__inner{display: grid; gap: var(--sp-6); align-items: center;}}
@layer components{@media (min-width: 1000px){.chx-there__inner{grid-template-columns: 1.3fr .7fr; gap: var(--sp-8);}}}
@layer components{.chx-there__title{margin: 14px 0 0; max-width: 18ch; font-family: var(--font-display); font-weight: var(--fw-black); font-size: clamp(2.25rem, 5vw, 4.25rem); line-height: .9; letter-spacing: var(--ls-tight); text-transform: uppercase; color: var(--graphite);}}
@layer components{.chx-there p{margin: var(--sp-3) 0 0; max-width: 38rem; font-family: var(--font-serif); font-size: 1.125rem; line-height: 1.5; color: var(--gray-body);}}
@layer components{.chx-there__actions{display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3) var(--sp-4); margin-top: var(--sp-5);}}
@layer components{.chx-there .fbtn:hover{background: var(--graphite); color: #fff;}}
@layer components{.chx-there .chero__link{color: var(--graphite);}}
@layer components{.chx-there .chero__link:hover{color: var(--red);}}
@layer components{.chx-classes{padding: var(--sp-5); background: var(--graphite); color: #fff; border-top: 4px solid var(--red);}}
@layer components{.chx-classes > span{font-family: var(--font-display); font-size: var(--fs-micro); font-weight: var(--fw-black); letter-spacing: var(--ls-label); text-transform: uppercase; color: rgba(255,255,255,.75);}}
@layer components{.chx-classes ul{list-style: none; margin: 12px 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px;}}
@layer components{.chx-classes a{display: grid; place-items: center; padding: 14px 0 10px; background: rgba(255,255,255,.08); color: #fff; font-family: var(--font-display); font-weight: var(--fw-black); font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1; letter-spacing: -.01em;}}
@layer components{.chx-classes a:hover{background: #fff; color: var(--red);}}
@layer components{.chx-classes small{display: block; font-family: var(--font-serif); font-size: .9375rem; line-height: 1.45; color: rgba(255,255,255,.8);}}
@layer components{.chx-photos .crecent .hphoto--lead{grid-column: auto; grid-row: auto;}}
.hphotos{padding-block:calc(28px + 22px)}
.hphotos__head{margin-bottom:16px;padding-bottom:10px}
.hphotos__title{margin-top:8px;font-size:clamp(2rem,3.6vw,3rem)}
.hphotos__kicker{font-size:.7rem;padding:5px 10px}
.hphotos__ghost{font-size:clamp(90px,12vw,180px)}
.hphoto--lead .hphoto__title{font-size:clamp(1.3rem,2vw,1.8rem)}
.hphoto--lead .hphoto__body{padding:16px;gap:4px}
.hphoto__title{font-size:1rem}
.hphoto__body{padding:12px}
.hphoto__meta{font-size:.62rem}
.hphoto__vf{inset:10px}
@media (max-width:899px){.hphotos{padding-block:calc(22px + 22px)}}
.hphotos[data-depth] > .container{position: relative; z-index: 1;}
.hphotos{color: var(--gray-ink); background: linear-gradient(180deg, #ffffff, #eef0f2);}
.hphotos::before,.hphotos::after{background-color: var(--red); background-image: repeating-linear-gradient(90deg, transparent 0 14px, rgba(255,255,255,.55) 14px 30px, transparent 30px 44px);}
.hphotos::before{border-bottom: 3px solid #fff;}
.hphotos__ghost{-webkit-text-stroke: 2px rgba(206,26,39,.12);}
.hphotos__head{border-bottom-color: #cfd4da;}
.hphotos__title{color: var(--gray-ink);}
.hphotos__all,.hphotos__all:hover{color: var(--red);}
.chx-classes{background:#ce1a27!important;background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.07) 0 2px,transparent 2px 22px),linear-gradient(135deg,#e5262f,#ce1a27 55%,#a8141f)!important;border:0!important;box-shadow:none!important;color:#fff}
.chx-classes>span{color:#fff!important}
.chx-classes li a{background:#fff!important;color:#ce1a27!important;border:0!important;box-shadow:none!important}
@media (hover:hover){.chx-classes li a:hover{background:#eceef1!important}}
.chx-classes small{color:rgba(255,255,255,.9)!important}
.cnx{--cnx-steel: var(--graphite, #2b3036); --cnx-meta: #6b6b6b; --cnx-bg: var(--paper, #f3f4f6); background: var(--cnx-bg); font-family: var(--font-display); color: #2f343b;}
.cnx a{text-decoration: none;}
.cnx-k{display: inline-block; font-family: var(--font-display); font-size: 13px; font-weight: 800; letter-spacing: .3em; text-transform: uppercase; color: var(--red);}
.cnx-btn{display: inline-flex; align-items: center; gap: 8px; padding: 13px 22px; font-family: var(--font-display); font-size: 14px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase;}
.cnx-btn svg{width: 14px; height: 14px;}
.cnx-btn--g{background: var(--gray-section, #eef0f2); color: #2f343b;}
.cnx-btn--w{background: #fff; color: var(--red);}
.cnx-btn--t{background: rgba(255,255,255,.14); color: #fff;}
.cnx-btn--g:hover{background: var(--red); color: #fff;}
.cnx-btn--w:hover{background: var(--gray-section, #eef0f2); color: var(--red);}
.cnx-btn--t:hover{background: rgba(255,255,255,.24); color: #fff;}
.cnx-open{position: relative; overflow: hidden; isolation: isolate; min-height: min(92vh, 860px); color: #fff; display: flex; flex-direction: column; background: radial-gradient(70% 90% at 72% 40%, #e2303b 0%, var(--red) 30%, var(--red-deep) 62%, #6e0b12 100%);}
.cnx-open::before{content: ""; position: absolute; inset: 0; z-index: 1; background: repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 3px); pointer-events: none;}
.cnx-open.has-image::after{content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(110,11,18,.35) 0%, rgba(172,20,29,.55) 45%, rgba(110,11,18,.94) 100%);}
.cnx-open__bar{position: relative; z-index: 2; min-height: 54px; background: var(--cnx-steel); display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 40px; font-size: 13px; font-weight: 800; letter-spacing: .3em; text-transform: uppercase; color: #cfd3d8;}
.cnx-open__bar a{display: inline-flex; align-items: center; gap: 8px; color: #cfd3d8;}
.cnx-open__bar a:hover{color: #fff;}
.cnx-open__bar a svg{width: 14px; height: 14px;}
.cnx-open__bar b{color: #fff; text-align: right;}
.cnx-open__yr{position: absolute; z-index: 0; right: -30px; top: 40px; font-size: 620px; line-height: .8; font-weight: 900; font-style: italic; letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 3px rgba(255,255,255,.16); pointer-events: none;}
.cnx-open__c{position: absolute; z-index: 0; right: 6%; top: 150px; width: 520px; max-width: 60%; opacity: .12;}
.cnx-open__in{position: relative; z-index: 2; flex: 1; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; padding: 60px 40px 50px; max-width: 1360px; width: 100%; margin: 0 auto;}
.cnx-open__k{display: inline-flex; gap: 14px; align-items: center; font-size: 16px; font-weight: 800; letter-spacing: .34em; text-transform: uppercase;}
.cnx-open__k i{width: 60px; height: 3px; background: #fff;}
.cnx-open__h{margin: 18px 0 0; font-family: var(--font-display); font-size: clamp(64px, 12vw, 200px); line-height: .8; font-weight: 900; font-style: italic; text-transform: uppercase; letter-spacing: -.02em; color: #fff; max-width: 9ch; text-wrap: balance;}
.cnx-open__over{margin: 26px 0 0; font-size: 34px; font-weight: 900; text-transform: uppercase;}
.cnx-plate{display: inline-grid; grid-template-columns: auto auto auto; margin-top: 40px;}
.cnx-plate div{display: flex; align-items: center; gap: 18px; padding: 16px 26px; background: #e3e6ea; color: #6b6b6b;}
.cnx-plate div.is-us{background: #fff; color: #2f343b;}
.cnx-plate b{font-size: 64px; line-height: .9; font-weight: 900; font-style: italic;}
.cnx-plate div.is-us b{color: var(--red);}
.cnx-plate span{font-size: 22px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em;}
.cnx-plate em{display: flex; align-items: center; padding: 0 18px; background: var(--cnx-steel); color: #fff; font-style: normal; font-size: 14px; font-weight: 800; letter-spacing: .24em; text-transform: uppercase;}
.cnx-open__credits{display: flex; flex-wrap: wrap; gap: 8px 40px; margin-top: 34px; font-size: 15px; font-weight: 800; letter-spacing: .24em; text-transform: uppercase; color: rgba(255,255,255,.88);}
.cnx-open__credits a{color: rgba(255,255,255,.88);}
.cnx-open__credits a:hover b{text-decoration: underline;}
.cnx-open__credits b{color: #fff;}
.cnx-open__bot{position: relative; z-index: 2; height: 54px; background: var(--cnx-steel);}
.cnx-acts{padding: 90px 0 40px;}
.cnx-acts__h{display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 34px;}
.cnx-acts__h h2{margin: 0; font-family: var(--font-display); font-size: 92px; line-height: .85; font-weight: 900; text-transform: uppercase; font-style: italic; color: #2f343b;}
.cnx-acts__h p{margin: 0; max-width: 44ch; font-size: 20px; font-weight: 600; color: #3c3c3c;}
.cnx-act{display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 28px; padding: 30px 0; background: linear-gradient(var(--gray-line, #d3d7dc), var(--gray-line, #d3d7dc)) top / 100% 2px no-repeat;}
.cnx-act__lab{display: grid; align-content: start; gap: 6px;}
.cnx-act__lab b{font-size: 44px; line-height: .9; font-weight: 900; text-transform: uppercase;}
.cnx-act__lab > span:last-child{font-size: 30px; font-weight: 900; font-style: italic; color: var(--cnx-meta);}
.cnx-strip{display: flex; gap: 6px; overflow-x: auto; scrollbar-width: thin; padding: 18px 10px; background: radial-gradient(circle at 50% 50%, var(--cnx-bg) 4px, transparent 5px) 0 4px / 22px 10px repeat-x, radial-gradient(circle at 50% 50%, var(--cnx-bg) 4px, transparent 5px) 0 calc(100% - 4px) / 22px 10px repeat-x, var(--cnx-steel);}
.cnx-fr{flex: 1 1 0; min-width: 104px; background: #fff; padding: 14px 14px 12px; display: grid; gap: 4px; align-content: start; color: #2f343b;}
.cnx-fr:hover{background: var(--gray-section, #eef0f2);}
.cnx-fr__d{font-size: 12px; font-weight: 800; letter-spacing: .2em; color: var(--cnx-meta); text-transform: uppercase;}
.cnx-fr__s{font-size: 30px; line-height: .9; font-weight: 900; font-style: italic; white-space: nowrap;}
.cnx-fr__s i{font-style: normal; font-size: .5em; margin-right: 6px; color: var(--red); vertical-align: .4em;}
.cnx-fr__o{font-size: 14px; line-height: 1.1; font-weight: 800; text-transform: uppercase;}
.cnx-fr__v{font-size: 12px; font-weight: 700; color: var(--cnx-meta);}
.cnx-fr.is-l{background: #e3e6ea;}
.cnx-fr.is-l .cnx-fr__s,.cnx-fr.is-l .cnx-fr__s i{color: var(--cnx-meta);}
.cnx-act--title .cnx-strip{background: radial-gradient(circle at 50% 50%, var(--cnx-bg) 4px, transparent 5px) 0 4px / 22px 10px repeat-x, radial-gradient(circle at 50% 50%, var(--cnx-bg) 4px, transparent 5px) 0 calc(100% - 4px) / 22px 10px repeat-x, var(--red);}
.cnx-act--title .cnx-fr{padding: 22px 26px;}
.cnx-act--title .cnx-fr__s{font-size: 96px;}
.cnx-story{padding: 70px 0 90px;}
.cnx-story .container{max-width: 820px;}
.cnx-story__text{margin-top: 16px;}
.cnx-story__text > p:first-child{font-family: var(--font-display); font-size: 40px; line-height: 1.02; font-weight: 900; text-transform: uppercase; font-style: italic; color: #2f343b; text-wrap: balance;}
.cnx-scene{position: relative; overflow: hidden; background: var(--cnx-steel); color: #fff; padding: 90px 0 80px;}
.cnx-scene::after{content: attr(data-ghost); position: absolute; right: -20px; bottom: -110px; font-size: 440px; font-weight: 900; font-style: italic; color: rgba(255,255,255,.05); line-height: 1; pointer-events: none;}
.cnx-scene .container{position: relative; z-index: 1;}
.cnx-scene .cnx-k{color: #ce1a27;}
.cnx-scene h2{margin: 12px 0 0; font-family: var(--font-display); font-size: 84px; line-height: .86; font-weight: 900; text-transform: uppercase; font-style: italic; color: #fff; max-width: 16ch; text-wrap: balance;}
.cnx-qs{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin-top: 46px;}
.cnx-q{background: rgba(255,255,255,.06); padding: 22px 24px 26px; display: grid; gap: 10px; min-height: 250px; align-content: start;}
.cnx-q .cnx-k{color: #cfd3d8; font-size: 12px;}
.cnx-q b{font-size: 110px; line-height: .82; font-weight: 900; font-style: italic; color: rgba(255,255,255,.28);}
.cnx-q p{margin: 0; font-size: 17px; font-weight: 700; color: #cfd3d8;}
.cnx-q__run{margin-top: auto; font-size: 15px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #fff;}
.cnx-q.is-hot{background: var(--red);}
.cnx-q.is-hot b,.cnx-q.is-hot .cnx-k,.cnx-q.is-hot p{color: #fff;}
.cnx-final{display: flex; flex-wrap: wrap; align-items: center; gap: 14px 30px; margin-top: 4px; background: #fff; color: #2f343b; padding: 22px 26px;}
.cnx-qs + .cnx-final{margin-top: 4px;}
.cnx-scene h2 + .cnx-final{margin-top: 40px;}
.cnx-final b{font-size: 64px; line-height: .9; font-weight: 900; font-style: italic;}
.cnx-final b em{color: var(--red); font-style: italic;}
.cnx-final span{font-size: 15px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; color: var(--cnx-meta);}
.cnx-final a{margin-left: auto; display: inline-flex; align-items: center; gap: 8px; padding: 14px 22px; background: var(--red); color: #fff; font-size: 15px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase;}
.cnx-final a:hover{background: var(--red-deep); color: #fff;}
.cnx-final a svg{width: 14px; height: 14px;}
.cnx-voice{padding: 110px 0; background: #fff; text-align: center;}
.cnx-voice__q{margin: 22px auto 0; padding: 0;}
.cnx-voice__q p{max-width: 24ch; margin: 0 auto; font-family: var(--font-display); font-size: 68px; line-height: .98; font-weight: 900; text-transform: uppercase; font-style: italic; color: #2f343b; text-wrap: balance;}
.cnx-voice__q p::before{content: "“"; color: var(--red);}
.cnx-voice__q p::after{content: "”"; color: var(--red);}
.cnx-voice cite{display: block; margin-top: 28px; font-style: normal; font-size: 16px; font-weight: 800; letter-spacing: .26em; text-transform: uppercase; color: var(--cnx-meta);}
.cnx-voice cite b{color: var(--red);}
.cnx-voice__more{display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 4px; max-width: 1100px; margin: 56px auto 0; text-align: left;}
.cnx-voice__more blockquote{margin: 0; padding: 24px 26px; background: var(--gray-section, #eef0f2);}
.cnx-voice__more p{margin: 0; font-family: var(--font-serif); font-size: 18px; line-height: 1.55; color: #2f343b;}
.cnx-voice__more cite{margin-top: 14px; font-size: 13px; letter-spacing: .2em;}
.cnx-voice .cnx-btn{margin-top: 34px;}
.cnx-cred{background: radial-gradient(80% 60% at 50% 0%, var(--red-deep), #6e0b12); color: #fff; text-align: center; padding: 100px 0 110px;}
.cnx-cred .cnx-k{color: rgba(255,255,255,.75);}
.cnx-cred h2{margin: 14px 0 0; font-family: var(--font-display); font-size: 96px; line-height: .85; font-weight: 900; text-transform: uppercase; font-style: italic; color: #fff;}
.cnx-cred__role{margin-top: 54px; font-size: 14px; font-weight: 800; letter-spacing: .34em; text-transform: uppercase; color: rgba(255,255,255,.7);}
.cnx-cred__lead{display: inline-block; margin-top: 10px; font-size: 54px; font-weight: 900; text-transform: uppercase; color: #fff;}
.cnx-cred__lead:hover{color: #fff; text-decoration: underline;}
.cnx-cred__row{margin-top: 10px; font-size: 26px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em;}
.cnx-cred__cols{list-style: none; padding: 0; columns: 4; column-gap: 40px; max-width: 1100px; margin: 22px auto 0; font-size: 22px; line-height: 1.75; font-weight: 800; text-transform: uppercase; letter-spacing: .05em;}
.cnx-cred__cols li{break-inside: avoid;}
.cnx-cred__cols a{color: #fff;}
.cnx-cred__cols a:hover{text-decoration: underline;}
.cnx-cred__cols li.is-mem,.cnx-cred__cols li.is-mem a{color: rgba(255,255,255,.62);}
.cnx-cred__cols li.is-mem::after{content: " †"; color: #fff;}
.cnx-cred__note,.cnx-cred__miss{margin: 30px auto 0; max-width: 60ch; font-size: 15px; font-weight: 600; color: rgba(255,255,255,.78); letter-spacing: .04em;}
.cnx-cred__miss{font-size: 20px;}
.cnx-cred__acts{display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: 30px;}
.cnx-room{padding: 90px 0 60px;}
.cnx-room__h{display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 22px;}
.cnx-room__h h2{margin: 0; font-family: var(--font-display); font-size: 58px; line-height: .9; font-weight: 900; text-transform: uppercase; font-style: italic; color: #2f343b;}
.cnx-room__h a{display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--red); white-space: nowrap;}
.cnx-room__h a svg{width: 14px; height: 14px;}
.cnx-shelf{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px;}
.cnx-ti{position: relative; overflow: hidden; background: #fff; color: #2f343b; padding: 56px 28px 26px; display: grid; gap: 8px; min-height: 250px; align-content: end;}
a.cnx-ti:hover{background: var(--gray-section, #eef0f2); color: #2f343b;}
.cnx-ti__yr{position: absolute; right: -10px; top: -24px; font-size: 180px; font-weight: 900; font-style: italic; color: #eef0f2; line-height: 1;}
a.cnx-ti:hover .cnx-ti__yr{color: #fff;}
.cnx-ti > *:not(.cnx-ti__yr){position: relative;}
.cnx-ti__tag{position: absolute !important; top: 18px; left: 28px; font-size: 12px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase;}
.cnx-ti b{font-size: 64px; line-height: .85; font-weight: 900; font-style: italic;}
.cnx-ti__s{font-size: 20px; font-weight: 900; text-transform: uppercase;}
.cnx-ti small{font-size: 14px; font-weight: 700; color: var(--cnx-meta);}
.cnx-ti.is-here{background: var(--red); color: #fff;}
.cnx-ti.is-here .cnx-ti__yr{color: rgba(255,255,255,.1);}
.cnx-ti.is-here small{color: rgba(255,255,255,.85);}
.cnx-links{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin-top: 4px;}
.cnx-links a{background: #e3e6ea; color: #2f343b; padding: 18px 20px; font-size: 16px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.cnx-links a:hover{background: var(--red); color: #fff;}
.cnx-links a:hover span{color: rgba(255,255,255,.85);}
.cnx-links a.is-ex{background: var(--cnx-steel); color: #fff;}
.cnx-links a.is-ex span{color: #cfd3d8;}
.cnx-links a.is-ex:hover{background: var(--red);}
.cnx-links a span{display: block; font-size: 12px; letter-spacing: .2em; color: var(--cnx-meta); margin-bottom: 4px;}
@media (max-width: 1100px){.cnx-acts__h h2{font-size: 72px;}}
@media (max-width: 1100px){.cnx-act{grid-template-columns: 1fr; gap: 14px;}}
@media (max-width: 1100px){.cnx-qs{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 1100px){.cnx-shelf{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 1100px){.cnx-links{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 1100px){.cnx-cred__cols{columns: 3;}}
@media (max-width: 760px){.cnx-open{min-height: 0;}}
@media (max-width: 760px){.cnx-open__bar{padding: 10px 16px; font-size: 11px; letter-spacing: .14em;}}
@media (max-width: 760px){.cnx-open__in{padding: 60px 16px 40px;}}
@media (max-width: 760px){.cnx-open__yr{font-size: 300px; top: 60px;}}
@media (max-width: 760px){.cnx-open__c{width: 260px; top: 120px;}}
@media (max-width: 760px){.cnx-open__k{font-size: 13px; letter-spacing: .2em;}}
@media (max-width: 760px){.cnx-open__k i{width: 30px;}}
@media (max-width: 760px){.cnx-open__h{font-size: 64px;}}
@media (max-width: 760px){.cnx-plate{grid-template-columns: 1fr; width: 100%;}}
@media (max-width: 760px){.cnx-plate em{padding: 8px 16px;}}
@media (max-width: 760px){.cnx-plate b{font-size: 48px;}}
@media (max-width: 760px){.cnx-plate span{font-size: 18px;}}
@media (max-width: 760px){.cnx-open__credits{font-size: 12px; gap: 6px 20px; letter-spacing: .14em;}}
@media (max-width: 760px){.cnx-acts{padding-top: 60px;}}
@media (max-width: 760px){.cnx-acts__h{flex-direction: column; align-items: flex-start;}}
@media (max-width: 760px){.cnx-acts__h h2{font-size: 54px;}}
@media (max-width: 760px){.cnx-acts__h p{font-size: 17px;}}
@media (max-width: 760px){.cnx-act__lab b{font-size: 34px;}}
@media (max-width: 760px){.cnx-act--title .cnx-fr__s{font-size: 70px;}}
@media (max-width: 760px){.cnx-story{padding: 50px 0 60px;}}
@media (max-width: 760px){.cnx-story__text > p:first-child{font-size: 30px;}}
@media (max-width: 760px){.cnx-scene{padding: 60px 0;}}
@media (max-width: 760px){.cnx-scene h2{font-size: 46px;}}
@media (max-width: 760px){.cnx-scene::after{font-size: 240px; bottom: -50px;}}
@media (max-width: 760px){.cnx-q{min-height: 0; padding: 18px;}}
@media (max-width: 760px){.cnx-q b{font-size: 64px;}}
@media (max-width: 760px){.cnx-q p{font-size: 15px;}}
@media (max-width: 760px){.cnx-q__run{font-size: 12px; letter-spacing: .1em;}}
@media (max-width: 760px){.cnx-final b{font-size: 40px;}}
@media (max-width: 760px){.cnx-final a{margin-left: 0;}}
@media (max-width: 760px){.cnx-voice{padding: 70px 0;}}
@media (max-width: 760px){.cnx-voice__q p{font-size: 36px;}}
@media (max-width: 760px){.cnx-cred{padding: 70px 0 80px;}}
@media (max-width: 760px){.cnx-cred h2{font-size: 58px;}}
@media (max-width: 760px){.cnx-cred__lead{font-size: 36px;}}
@media (max-width: 760px){.cnx-cred__row{font-size: 20px;}}
@media (max-width: 760px){.cnx-cred__cols{columns: 2; font-size: 15px; column-gap: 16px;}}
@media (max-width: 760px){.cnx-room{padding: 60px 0 40px;}}
@media (max-width: 760px){.cnx-room__h{flex-direction: column; align-items: flex-start; gap: 8px;}}
@media (max-width: 760px){.cnx-room__h h2{font-size: 38px;}}
@media (max-width: 760px){.cnx-shelf{grid-template-columns: 1fr;}}
@media (max-width: 760px){.cnx-ti{min-height: 190px;}}
@media (max-width: 760px){.cnx-links{grid-template-columns: 1fr 1fr;}}
.cnx-story .prose--story > p:first-child::first-letter{font: inherit; float: none; margin: 0; color: inherit; line-height: inherit;}
.cnx-story .container{display: flex; flex-direction: column; align-items: center;}
.cnx-story .container > .cnx-k,.cnx-story .cnx-story__text{width: 100%; max-width: 720px; margin-left: 0; margin-right: 0;}
.cnx-story__text > h2:first-child{margin-top: 0;}
.cnx-voice{padding: 80px 0;}
.cnx-voice__q p{max-width: 34ch; font-size: 40px; line-height: 1.05;}
@media (max-width: 760px){.cnx-voice{padding: 56px 0;}}
@media (max-width: 760px){.cnx-voice__q p{font-size: 26px;}}