/* Frozen shared primitives and page 14 only. */
.pf-bespoke { --bespoke-radius: 28px; }
.pf-bespoke section { position: relative; }
.pf-bespoke h1, .pf-bespoke h2 { text-wrap: balance; }
@media (prefers-reduced-motion: reduce) {.pf-bespoke *, .pf-bespoke ::before, .pf-bespoke ::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }}
.pf-b14 { --b14-ink: #17213f; --b14-ink-deep: #0d142c; --b14-red: #c8493b; --b14-red-dark: #8f3029; --b14-paper: #f4eddf; --b14-sheet: #fffaf0; --b14-brass: #d7a63b; --b14-sage: #a6c79a; --b14-line: rgba(23,33,63,.2); color: var(--b14-ink); background: var(--b14-paper); }
.pf-b14 .pf-preview-notice { color: rgb(255, 255, 255); background: var(--b14-ink-deep); border-color: rgba(255, 255, 255, 0.14); }
.pf-b14 .pf-preview-notice__inner > a { color: rgb(255, 255, 255); }
.pf-b14 .pf-preview-notice__badge { color: rgb(255, 255, 255); background: rgba(255, 255, 255, 0.09); }
.pf-b14 .pf-preview-notice__badge i { background: var(--b14-brass); }
.pf-b14 .pf-preview-button--primary { color: rgb(255, 255, 255); background: var(--b14-red); border-color: var(--b14-red); }
.b14-hero { position: relative; overflow: hidden; padding: clamp(85px, 10vw, 150px) 0px clamp(100px, 12vw, 180px); background: var(--b14-paper); }
.b14-hero::before { position: absolute; inset: 0px; opacity: 0.32; background-image: linear-gradient(rgba(23, 33, 63, 0.07) 1px, transparent 1px); background-size: 100% 29px; content: ""; }
.b14-hero::after { position: absolute; right: -110px; bottom: -190px; width: 470px; height: 470px; border: 1px solid rgba(200, 73, 59, 0.25); border-radius: 50%; box-shadow: rgba(200, 73, 59, 0.043) 0px 0px 0px 42px, rgba(200, 73, 59, 0.035) 0px 0px 0px 91px; content: ""; }
.b14-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0px, 0.88fr) minmax(480px, 0.72fr); align-items: center; gap: clamp(55px, 8vw, 125px); }
.b14-kicker, .b14-section-head > span, .b14-catalog__copy > span, .b14-request__copy > span { color: var(--b14-red); font: 700 10px / 1.2 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.18em; text-transform: uppercase; }
.b14-hero h1 { max-width: 860px; margin: 22px 0px 28px; font-size: clamp(53px, 5.9vw, 91px); font-weight: 400; line-height: 0.94; letter-spacing: -0.06em; }
.b14-hero__copy > p { max-width: 750px; margin: 0px 0px 31px; color: rgba(23, 33, 63, 0.68); font-size: 18px; line-height: 1.65; }
.b14-text-link { display: inline-flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 35px; padding: 0px 3px; color: var(--b14-ink); border-bottom: 1px solid var(--b14-ink); font: 600 10px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.04em; text-transform: uppercase; }
.b14-proof { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); max-width: 720px; margin-top: 42px; border-top: 1px solid var(--b14-line); border-left: 1px solid var(--b14-line); }
.b14-proof span { display: flex; min-height: 61px; flex-direction: column; justify-content: center; gap: 3px; padding: 10px 16px; color: rgba(23, 33, 63, 0.55); border-right: 1px solid var(--b14-line); border-bottom: 1px solid var(--b14-line); font-size: 10px; }
.b14-proof b { color: var(--b14-ink); font: 700 11px / 1.2 "PF Montserrat", Arial, sans-serif; text-transform: uppercase; }
.b14-overture { position: relative; min-width: 0px; padding: 17px; color: rgb(255, 255, 255); background: var(--b14-ink); border: 1px solid var(--b14-ink); box-shadow: 20px 23px 0 var(--b14-red),34px 38px 0 rgba(215,166,59,.7); transform: rotate(1.2deg); }
.b14-overture > header { display: flex; justify-content: space-between; padding: 5px 3px 17px; color: rgba(255, 255, 255, 0.61); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; }
.b14-overture > header b { color: var(--b14-brass); font-weight: 700; }
.b14-overture__photo { position: relative; overflow: hidden; height: 275px; background: var(--b14-ink-deep); }
.b14-overture__photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(0.72) contrast(1.05); }
.b14-overture__photo::after { position: absolute; inset: 0px; background: linear-gradient(transparent 45%, rgba(13, 20, 44, 0.82)); content: ""; }
.b14-overture__photo small { position: absolute; z-index: 1; right: 14px; bottom: 12px; left: 14px; color: rgba(255, 255, 255, 0.78); font: 600 7px / 1.35 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.08em; }
.b14-table-score { position: relative; height: 178px; margin-top: 16px; background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px); background-size: 100% 30px; border: 1px solid rgba(255, 255, 255, 0.14); }
.b14-table-score::before { position: absolute; top: 62px; right: 48px; left: 48px; height: 48px; background: var(--b14-paper); border: 3px double var(--b14-red); border-radius: 25px; content: ""; }
.b14-table-score i { position: absolute; z-index: 1; width: 18px; height: 18px; background: var(--b14-brass); border: 4px solid var(--b14-ink); border-radius: 50%; }
.b14-table-score i:nth-child(1), .b14-table-score i:nth-child(2), .b14-table-score i:nth-child(3), .b14-table-score i:nth-child(4) { top: 48px; }
.b14-table-score i:nth-child(5), .b14-table-score i:nth-child(6), .b14-table-score i:nth-child(7), .b14-table-score i:nth-child(8) { top: 103px; }
.b14-table-score i:nth-child(1), .b14-table-score i:nth-child(5) { left: 65px; }
.b14-table-score i:nth-child(2), .b14-table-score i:nth-child(6) { left: 35%; }
.b14-table-score i:nth-child(3), .b14-table-score i:nth-child(7) { right: 35%; }
.b14-table-score i:nth-child(4), .b14-table-score i:nth-child(8) { right: 65px; }
.b14-table-score strong { position: absolute; z-index: 2; top: 77px; right: 0px; left: 0px; color: var(--b14-ink); font: 700 9px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.18em; text-align: center; }
.b14-table-score em { position: absolute; right: 12px; bottom: 10px; color: rgba(255, 255, 255, 0.4); font: 600 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.11em; }
.b14-overture > ol { display: grid; grid-template-columns: repeat(4, 1fr); margin: 15px 0px 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(255, 255, 255, 0.17); }
.b14-overture > ol li { display: flex; min-width: 0px; flex-direction: column; gap: 5px; padding: 13px 7px 3px; color: rgba(255, 255, 255, 0.55); font: 600 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.09em; }
.b14-overture > ol li + li { border-left: 1px solid rgba(255, 255, 255, 0.12); }
.b14-overture > ol span { color: var(--b14-brass); font-size: 9px; }
.b14-format, .b14-cues, .b14-estimate { padding: clamp(95px, 11vw, 165px) 0px; background: var(--b14-sheet); }
.b14-section-head { display: grid; grid-template-columns: minmax(0px, 0.72fr) minmax(260px, 0.28fr); grid-template-areas: "eyebrow copy" "title copy"; align-items: end; gap: 10px clamp(50px, 8vw, 120px); margin-bottom: 58px; }
.b14-section-head > span { grid-area: eyebrow; }
.b14-section-head h2 { grid-area: title; max-width: 900px; margin: 8px 0px 0px; font-size: clamp(44px, 5.4vw, 80px); font-weight: 400; line-height: 0.96; letter-spacing: -0.057em; }
.b14-section-head > p { grid-area: copy; margin: 0px; color: rgba(23, 33, 63, 0.62); font-size: 16px; line-height: 1.65; }
.b14-section-head--light > span { color: rgb(242, 199, 93); }
.b14-section-head--light > p { color: rgba(255, 255, 255, 0.58); }
.b14-format__split { display: grid; grid-template-columns: 1.08fr 0.92fr; border: 1px solid var(--b14-line); box-shadow: rgba(23, 33, 63, 0.08) 15px 18px 0px; }
.b14-format__split article { min-height: 520px; padding: 28px; }
.b14-format__split article + article { border-left: 1px solid var(--b14-line); }
.b14-format__split article > header { display: flex; justify-content: space-between; color: rgba(23, 33, 63, 0.48); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; }
.b14-format__split article > header b { color: var(--b14-red); }
.b14-format__banquet { background: var(--b14-paper); }
.b14-format__buffet { color: rgb(255, 255, 255); background: var(--b14-ink); }
.b14-format__buffet > header { color: rgba(255, 255, 255, 0.47) !important; }
.b14-format__buffet > header b { color: var(--b14-brass) !important; }
.b14-format__split h3 { margin: 43px 0px 15px; font-size: 36px; font-weight: 500; letter-spacing: -0.035em; }
.b14-format__split p { max-width: 500px; margin: 0px; color: rgba(23, 33, 63, 0.61); line-height: 1.65; }
.b14-format__buffet p { color: rgba(255, 255, 255, 0.59); }
.b14-format__buffet > a { display: inline-flex; gap: 30px; margin-top: 26px; padding-bottom: 7px; color: rgb(255, 255, 255); border-bottom: 1px solid rgba(255, 255, 255, 0.4); font: 600 9px / 1 "PF Montserrat", Arial, sans-serif; text-transform: uppercase; }
.b14-seating-map, .b14-flow-map { position: relative; height: 180px; margin-top: 64px; }
.b14-seating-map::before { position: absolute; top: 55px; right: 12%; left: 12%; height: 62px; background: var(--b14-sheet); border: 2px solid var(--b14-red); border-radius: 32px; content: ""; }
.b14-seating-map i { position: absolute; z-index: 1; top: 38px; width: 24px; height: 24px; background: var(--b14-brass); border: 5px solid var(--b14-paper); border-radius: 50%; box-shadow: 0 88px 0 var(--b14-brass),0 88px 0 5px var(--b14-paper); }
.b14-seating-map i:nth-child(1) { left: 20%; }
.b14-seating-map i:nth-child(2) { left: calc(50% - 12px); }
.b14-seating-map i:nth-child(3) { right: 20%; }
.b14-seating-map strong { position: absolute; z-index: 1; top: 81px; right: 0px; left: 0px; color: var(--b14-red); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.16em; text-align: center; }
.b14-flow-map { overflow: hidden; background-image: radial-gradient(circle, rgba(215, 166, 59, 0.22) 0px, rgba(215, 166, 59, 0.22) 4px, transparent 5px); background-size: 34px 34px; }
.b14-flow-map::before { position: absolute; top: 45px; right: 17%; left: 17%; height: 87px; border: 1px dashed rgba(255, 255, 255, 0.42); border-radius: 50%; content: ""; }
.b14-flow-map i { position: absolute; width: 21px; height: 21px; background: var(--b14-brass); border-radius: 50%; }
.b14-flow-map i:nth-child(1) { top: 24px; left: 14%; }
.b14-flow-map i:nth-child(2) { top: 118px; left: 30%; }
.b14-flow-map i:nth-child(3) { top: 28px; right: 29%; }
.b14-flow-map i:nth-child(4) { top: 112px; right: 11%; }
.b14-flow-map strong { position: absolute; top: 83px; right: 0px; left: 0px; color: rgb(255, 255, 255); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.16em; text-align: center; }
.b14-score { padding: clamp(95px, 11vw, 165px) 0px; color: rgb(255, 255, 255); background: var(--b14-ink-deep); }
.b14-scoreboard { display: grid; grid-template-columns: minmax(0px, 1fr) minmax(370px, 0.47fr); align-items: start; gap: 26px; }
.b14-scoreboard__controls { border: 1px solid rgba(255, 255, 255, 0.22); }
.b14-choice { position: relative; display: grid; grid-template-columns: 190px repeat(4, 1fr); min-width: 0px; margin: 0px; padding: 0px; border: 0px; }
.b14-choice + .b14-choice { border-top: 1px solid rgba(255, 255, 255, 0.2); }
.b14-choice legend { display: contents; }
.b14-choice legend::before { display: none; }
.b14-choice legend > span { display: flex; grid-area: 1 / 1; min-height: 76px; align-items: flex-start; padding: 16px 18px; color: var(--b14-brass); background: rgba(255, 255, 255, 0.043); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; }
.b14-choice legend > b { display: flex; grid-area: 1 / 1; align-items: flex-end; padding: 17px 18px; color: rgb(255, 255, 255); font-size: 17px; }
.b14-choice button { min-width: 0px; min-height: 76px; padding: 12px 8px; color: rgba(255, 255, 255, 0.6); background: transparent; border-width: 0px 0px 0px 1px; border-style: none none none solid; border-color: currentcolor currentcolor currentcolor rgba(255, 255, 255, 0.17); border-image: none; cursor: pointer; font: 600 9px / 1.35 "PF Montserrat", Arial, sans-serif; transition: color 0.18s, background 0.18s; }
.b14-choice button:hover, .b14-choice button:focus-visible { color: rgb(255, 255, 255); background: rgba(255, 255, 255, 0.07); }
.b14-choice button.is-active { color: var(--b14-ink-deep); background: var(--b14-sage); }
.b14-scoreboard__output { position: sticky; top: 24px; padding: 25px; color: var(--b14-ink); background: var(--b14-paper); border: 1px solid var(--b14-brass); box-shadow: 14px 16px 0 var(--b14-red); }
.b14-scoreboard__output > header { display: flex; justify-content: space-between; padding-bottom: 15px; color: rgba(23, 33, 63, 0.49); border-bottom: 1px solid var(--b14-line); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.11em; }
.b14-scoreboard__output > header b { color: var(--b14-red); }
.b14-scoreboard__code { margin: 31px 0px 21px; }
.b14-scoreboard__code small { display: block; margin-bottom: 8px; color: rgba(23, 33, 63, 0.47); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; }
.b14-scoreboard__code strong { display: block; color: var(--b14-red); font: 700 clamp(25px, 3vw, 42px) / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: -0.04em; }
.b14-scoreboard__output > p { min-height: 72px; margin: 0px; color: rgba(23, 33, 63, 0.68); font-size: 14px; line-height: 1.55; }
.b14-scoreboard__open { margin: 24px 0px; padding: 17px 0px; border-block: 1px solid var(--b14-line); }
.b14-scoreboard__open > span { color: var(--b14-red); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; }
.b14-scoreboard__open ul { margin: 13px 0px 0px; padding: 0px; list-style: none; }
.b14-scoreboard__open li { position: relative; padding: 6px 0px 6px 19px; color: rgba(23, 33, 63, 0.65); font-size: 12px; line-height: 1.35; }
.b14-scoreboard__open li::before { position: absolute; top: 10px; left: 1px; width: 7px; height: 7px; background: var(--b14-brass); border-radius: 50%; content: ""; }
.b14-scoreboard__output > em { display: block; color: rgba(23, 33, 63, 0.43); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-scoreboard__output > button { display: flex; width: 100%; min-height: 51px; align-items: center; justify-content: space-between; margin-top: 20px; padding: 0px 16px; color: rgb(255, 255, 255); background: var(--b14-red); border: 0px; cursor: pointer; font: 700 9px / 1 "PF Montserrat", Arial, sans-serif; text-transform: uppercase; }
.b14-cue-rail { display: grid; grid-template-columns: minmax(0px, 1fr) 390px; background: var(--b14-paper); border: 1px solid var(--b14-line); box-shadow: rgba(23, 33, 63, 0.09) 15px 18px 0px; }
.b14-cue-rail__buttons { display: grid; grid-template-columns: repeat(5, 1fr); min-width: 0px; }
.b14-cue-rail__buttons button { position: relative; min-width: 0px; min-height: 355px; padding: 25px 18px; color: rgba(23, 33, 63, 0.52); background: transparent; border-top: 0px; border-bottom: 0px; border-left: 0px; border-image: none; border-right: 1px solid var(--b14-line); cursor: pointer; text-align: left; }
.b14-cue-rail__buttons button::after { position: absolute; top: 91px; right: 0px; left: 0px; height: 3px; background: repeating-linear-gradient(90deg,var(--b14-line) 0 5px,transparent 5px 12px); content: ""; }
.b14-cue-rail__buttons button b { position: absolute; top: 139px; left: 18px; color: var(--b14-ink); font: 700 12px / 1.15 "PF Montserrat", Arial, sans-serif; writing-mode: vertical-rl; transform: rotate(180deg); }
.b14-cue-rail__buttons button span { position: absolute; right: 14px; bottom: 20px; left: 18px; padding-top: 12px; border-top: 1px solid var(--b14-line); font: 600 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; text-transform: uppercase; }
.b14-cue-rail__buttons button.is-active { color: rgb(255, 255, 255); background: var(--b14-red); }
.b14-cue-rail__buttons button.is-active b { color: rgb(255, 255, 255); }
.b14-cue-rail__buttons button.is-active::after { background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.46) 0px, rgba(255, 255, 255, 0.46) 5px, transparent 5px, transparent 12px); }
.b14-cue-rail__readout { display: flex; min-height: 355px; flex-direction: column; justify-content: space-between; padding: 31px; color: rgb(255, 255, 255); background: var(--b14-ink); }
.b14-cue-rail__readout > span { color: var(--b14-brass); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; }
.b14-cue-rail__readout > p { margin: 85px 0px auto; font-size: 25px; line-height: 1.3; letter-spacing: -0.025em; }
.b14-cue-rail__readout > small { padding-top: 17px; color: rgba(255, 255, 255, 0.42); border-top: 1px solid rgba(255, 255, 255, 0.16); font: 600 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-evidence { padding: clamp(95px, 11vw, 165px) 0px; color: rgb(255, 255, 255); background: var(--b14-red-dark); }
.b14-contact-sheet { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: 320px 310px; gap: 12px; }
.b14-contact-sheet figure { position: relative; overflow: hidden; min-width: 0px; margin: 0px; background: var(--b14-ink); }
.b14-contact-sheet__wide { grid-column: span 2; }
.b14-contact-sheet figure img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s; }
.b14-contact-sheet figure:hover img { transform: scale(1.02); }
.b14-contact-sheet figcaption { position: absolute; right: 0px; bottom: 0px; left: 0px; display: flex; justify-content: space-between; gap: 15px; padding: 17px 19px; background: linear-gradient(transparent, rgba(13, 20, 44, 0.88)); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-contact-sheet figcaption span { color: var(--b14-brass); }
.b14-case-ticket { display: flex; flex-direction: column; grid-column: span 2; justify-content: flex-start; padding: 32px; color: var(--b14-ink); background: var(--b14-paper); border: 1px dashed var(--b14-ink); }
.b14-case-ticket > span { color: var(--b14-red); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; }
.b14-case-ticket > strong { max-width: 540px; margin-top: 48px; font-size: 32px; line-height: 1.05; }
.b14-case-ticket > p { max-width: 660px; margin: 15px 0px 12px; color: rgba(23, 33, 63, 0.65); line-height: 1.55; }
.b14-case-ticket > small { color: rgba(23, 33, 63, 0.43); font: 600 7px / 1.3 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.08em; }
.b14-case-ticket > a { align-self: flex-start; margin-top: auto; padding-bottom: 6px; color: var(--b14-red); border-bottom: 1px solid; font: 700 9px / 1 "PF Montserrat", Arial, sans-serif; text-transform: uppercase; }
.b14-staves { margin: 0px; padding: 0px; list-style: none; border-top: 4px solid var(--b14-ink); }
.b14-staves li { position: relative; display: grid; grid-template-columns: 150px minmax(120px, 0.8fr) minmax(250px, 1fr) auto; align-items: center; gap: 25px; min-height: 126px; padding: 20px 22px; border-right: 1px solid var(--b14-line); border-bottom: 1px solid var(--b14-line); border-left: 1px solid var(--b14-line); }
.b14-staves li:nth-child(2n) { background: var(--b14-paper); }
.b14-staves li > span { color: var(--b14-red); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; }
.b14-staves li > i { height: 38px; background: repeating-linear-gradient(to bottom,var(--b14-line) 0 1px,transparent 1px 9px); }
.b14-staves li h3 { margin: 0px; font-size: 28px; font-weight: 500; }
.b14-staves li p { margin: 7px 0px 0px; color: rgba(23, 33, 63, 0.58); line-height: 1.45; }
.b14-staves li > b { padding: 11px 13px; color: var(--b14-red); border: 1px solid; font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-catalog { padding: clamp(95px, 11vw, 165px) 0px; background: rgb(223, 232, 216); }
.b14-catalog__grid { display: grid; grid-template-columns: minmax(310px, 0.52fr) minmax(0px, 1fr); align-items: start; gap: clamp(55px, 9vw, 140px); }
.b14-catalog__copy { position: sticky; top: 24px; }
.b14-catalog__copy h2, .b14-request h2 { max-width: 650px; margin: 14px 0px 26px; font-size: clamp(43px, 5.2vw, 76px); font-weight: 400; line-height: 0.97; letter-spacing: -0.055em; }
.b14-catalog__copy > p { max-width: 600px; margin: 0px; color: rgba(23, 33, 63, 0.63); font-size: 17px; line-height: 1.65; }
.b14-catalog__minimum { display: flex; flex-direction: column; gap: 6px; margin: 35px 0px 24px; padding: 22px 0px; border-block: 1px solid rgba(23, 33, 63, 0.2); }
.b14-catalog__minimum small { color: rgba(23, 33, 63, 0.45); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; }
.b14-catalog__minimum strong { color: var(--b14-red); font: 600 29px / 1 "PF Montserrat", Arial, sans-serif; }
.b14-catalog__minimum span { color: rgba(23, 33, 63, 0.52); font-size: 11px; }
.b14-catalog__copy > a { display: inline-flex; gap: 35px; padding-bottom: 7px; color: var(--b14-ink); border-bottom: 1px solid; font: 700 9px / 1 "PF Montserrat", Arial, sans-serif; text-transform: uppercase; }
.b14-slips { display: flex; flex-direction: column; gap: 15px; }
.b14-slip { display: grid; grid-template-columns: 230px 1fr; min-height: 230px; color: var(--b14-ink); background: var(--b14-sheet); border: 1px solid rgba(23, 33, 63, 0.19); box-shadow: rgba(23, 33, 63, 0.07) 10px 12px 0px; }
.b14-slip:nth-child(2) { transform: translateX(24px); }
.b14-slip img { width: 100%; height: 100%; min-height: 230px; object-fit: cover; }
.b14-slip > div { position: relative; display: flex; min-width: 0px; flex-direction: column; padding: 27px 29px; }
.b14-slip small { color: var(--b14-red); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-slip h3 { max-width: 420px; margin: 36px 0px 18px; font-size: 27px; line-height: 1.06; }
.b14-slip span { color: rgba(23, 33, 63, 0.51); font-size: 11px; }
.b14-slip strong { position: absolute; right: 28px; bottom: 27px; color: var(--b14-red); font: 600 27px / 1 "PF Montserrat", Arial, sans-serif; }
.b14-rehearsal { padding: clamp(95px, 11vw, 165px) 0px; color: rgb(255, 255, 255); background: var(--b14-ink); }
.b14-rehearsal__line { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0px; padding: 0px; list-style: none; border: 1px solid rgba(255, 255, 255, 0.2); }
.b14-rehearsal__line li { position: relative; min-height: 355px; padding: 28px 24px; }
.b14-rehearsal__line li + li { border-left: 1px solid rgba(255, 255, 255, 0.18); }
.b14-rehearsal__line li > span { color: var(--b14-brass); font: 700 8px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; }
.b14-rehearsal__line li > strong { display: block; margin-top: 120px; font-size: 25px; line-height: 1.08; }
.b14-rehearsal__line li > p { margin: 17px 0px 0px; color: rgba(255, 255, 255, 0.55); line-height: 1.5; }
.b14-rehearsal__line li > b { position: absolute; right: 24px; bottom: 25px; left: 24px; padding-top: 13px; color: var(--b14-sage); border-top: 1px solid rgba(255, 255, 255, 0.16); font: 700 7px / 1 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.1em; }
.b14-request { padding: clamp(95px, 11vw, 165px) 0px; background: var(--b14-paper); }
.b14-request__grid { display: grid; grid-template-columns: minmax(0px, 0.8fr) minmax(470px, 0.64fr); align-items: start; gap: clamp(55px, 8vw, 125px); }
.b14-request__copy > p { max-width: 680px; margin: 0px; color: rgba(23, 33, 63, 0.63); font-size: 17px; line-height: 1.65; }
.b14-faq { margin-top: 36px; border-top: 1px solid var(--b14-line); }
.b14-faq details { border-bottom: 1px solid var(--b14-line); }
.b14-faq summary { position: relative; padding: 20px 43px 20px 0px; cursor: pointer; list-style: none; font: 600 14px / 1.45 "PF Montserrat", Arial, sans-serif; }
.b14-faq summary::-webkit-details-marker { display: none; }
.b14-faq summary i::before, .b14-faq summary i::after { position: absolute; top: 28px; right: 5px; width: 14px; height: 2px; background: var(--b14-red); content: ""; }
.b14-faq summary i::after { transform: rotate(90deg); }
.b14-faq details[open] summary i::after { transform: none; }
.b14-faq details p { margin: -2px 35px 22px 0px; color: rgba(23, 33, 63, 0.62); line-height: 1.55; }
.b14-contacts { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; }
.b14-contacts a { padding: 13px 17px; color: rgb(255, 255, 255); background: var(--b14-ink); border: 1px solid var(--b14-ink); font: 600 10px / 1.2 "PF Montserrat", Arial, sans-serif; }
.b14-form { position: sticky; top: 24px; border-radius: 2px; box-shadow: 17px 19px 0 var(--b14-red),29px 31px 0 var(--b14-brass); }
@media (max-width: 1180px) {.b14-hero__grid { grid-template-columns: minmax(0px, 0.8fr) 450px; gap: 55px; }
.b14-choice { grid-template-columns: 150px repeat(4, 1fr); }
.b14-scoreboard { grid-template-columns: minmax(0px, 1fr) 350px; }
.b14-cue-rail { grid-template-columns: minmax(0px, 1fr) 330px; }
.b14-request__grid { grid-template-columns: 1fr 430px; gap: 48px; }}
@media (max-width: 960px) {.b14-hero__grid, .b14-catalog__grid, .b14-request__grid { grid-template-columns: 1fr; }
.b14-overture { width: min(630px, 100% - 35px); margin: 25px auto; }
.b14-section-head { grid-template-columns: 1fr; grid-template-areas: "eyebrow" "title" "copy"; gap: 13px; }
.b14-section-head > p { max-width: 650px; margin-top: 10px; }
.b14-scoreboard { grid-template-columns: 1fr; }
.b14-scoreboard__output, .b14-catalog__copy, .b14-form { position: static; }
.b14-cue-rail { grid-template-columns: 1fr; }
.b14-cue-rail__readout { min-height: 260px; }
.b14-contact-sheet { grid-template-rows: 280px 280px; }
.b14-staves li { grid-template-columns: 125px 120px minmax(220px, 1fr) auto; gap: 17px; }
.b14-rehearsal__line { grid-template-columns: repeat(2, 1fr); }
.b14-rehearsal__line li:nth-child(3) { border-top: 1px solid rgba(255, 255, 255, 0.18); border-left: 0px; }
.b14-rehearsal__line li:nth-child(4) { border-top: 1px solid rgba(255, 255, 255, 0.18); }}
@media (max-width: 720px) {.b14-hero { padding-block: 70px 100px; }
.b14-hero h1 { font-size: clamp(46px, 13vw, 62px); }
.b14-proof { grid-template-columns: 1fr; }
.b14-overture { padding: 12px; box-shadow: 10px 12px 0 var(--b14-red),18px 21px 0 rgba(215,166,59,.7); transform: none; }
.b14-overture__photo { height: 220px; }
.b14-table-score { height: 158px; }
.b14-table-score::before { right: 25px; left: 25px; }
.b14-table-score i:nth-child(1), .b14-table-score i:nth-child(5) { left: 34px; }
.b14-table-score i:nth-child(2), .b14-table-score i:nth-child(6) { left: 35%; }
.b14-table-score i:nth-child(3), .b14-table-score i:nth-child(7) { right: 35%; }
.b14-table-score i:nth-child(4), .b14-table-score i:nth-child(8) { right: 34px; }
.b14-format__split { grid-template-columns: 1fr; }
.b14-format__split article { min-height: 465px; }
.b14-format__split article + article { border-top: 1px solid var(--b14-line); border-left: 0px; }
.b14-choice { grid-template-columns: repeat(2, 1fr); }
.b14-choice legend > span, .b14-choice legend > b { grid-column: 1 / -1; }
.b14-choice legend > span { min-height: 60px; }
.b14-choice legend > b { padding-bottom: 12px; }
.b14-choice button { min-height: 62px; border-top: 1px solid rgba(255, 255, 255, 0.17); }
.b14-choice button:nth-of-type(2n+1) { border-left: 0px; }
.b14-scoreboard__output { padding: 21px 18px; box-shadow: 9px 11px 0 var(--b14-red); }
.b14-cue-rail__buttons { grid-template-columns: 1fr; }
.b14-cue-rail__buttons button { min-height: 74px; padding: 16px 17px; border-right: 0px; border-bottom: 1px solid var(--b14-line); }
.b14-cue-rail__buttons button::after { inset: auto 16px 14px; }
.b14-cue-rail__buttons button b { position: static; display: inline-block; margin-left: 16px; writing-mode: initial; transform: none; }
.b14-cue-rail__buttons button span { position: absolute; inset: 17px 16px auto auto; padding: 0px; border: 0px; }
.b14-cue-rail__readout { min-height: 230px; padding: 25px 20px; }
.b14-cue-rail__readout > p { margin: 55px 0px auto; font-size: 22px; }
.b14-contact-sheet { grid-template-columns: 1fr; grid-template-rows: repeat(3, 260px) auto; }
.b14-contact-sheet__wide, .b14-case-ticket { grid-column: auto; }
.b14-case-ticket { min-height: 360px; padding: 25px 20px; }
.b14-case-ticket > strong { margin-top: 40px; font-size: 27px; }
.b14-staves li { grid-template-columns: 1fr auto; gap: 8px 18px; padding: 22px 18px; }
.b14-staves li > span { grid-column: 1; }
.b14-staves li > i { display: none; }
.b14-staves li h3 { grid-column: 1; margin-top: 16px; }
.b14-staves li p { grid-column: 1 / -1; }
.b14-staves li > b { grid-area: 1 / 2 / 3; align-self: center; }
.b14-slip, .b14-slip:nth-child(2) { grid-template-columns: 135px 1fr; min-height: 195px; transform: none; }
.b14-slip img { min-height: 195px; }
.b14-slip > div { padding: 20px 17px; }
.b14-slip h3 { margin: 25px 0px 12px; font-size: 20px; }
.b14-slip strong { right: 17px; bottom: 19px; font-size: 22px; }
.b14-rehearsal__line { grid-template-columns: 1fr; }
.b14-rehearsal__line li, .b14-rehearsal__line li:nth-child(3), .b14-rehearsal__line li:nth-child(4) { min-height: 290px; border-top: 1px solid rgba(255, 255, 255, 0.18); border-left: 0px; }
.b14-rehearsal__line li:first-child { border-top: 0px; }
.b14-rehearsal__line li > strong { margin-top: 75px; }
.b14-form { box-shadow: 9px 11px 0 var(--b14-red),17px 19px 0 var(--b14-brass); }}
@media (max-width: 430px) {.b14-overture > ol li { font-size: 6px; letter-spacing: 0.04em; }
.b14-table-score i:nth-child(2), .b14-table-score i:nth-child(6) { left: 34%; }
.b14-table-score i:nth-child(3), .b14-table-score i:nth-child(7) { right: 34%; }
.b14-slip { grid-template-columns: 112px 1fr; }
.b14-slip small { font-size: 6px; letter-spacing: 0.04em; }
.b14-slip h3 { font-size: 18px; }
.b14-slip strong { position: static; margin-top: auto; font-size: 20px; }}
@media (prefers-reduced-motion: reduce) {.b14-choice button, .b14-contact-sheet figure img { transition: none; }}
.pf-real-story { --pf-story-accent: #ef7a35; padding: clamp(86px, 10vw, 150px) 0px; color: rgb(36, 33, 41); background: rgb(244, 239, 230); }
.pf-real-story__head { display: grid; grid-template-columns: minmax(150px, 0.32fr) minmax(320px, 0.88fr) minmax(260px, 0.62fr); gap: clamp(24px, 4vw, 62px); align-items: end; margin-bottom: clamp(38px, 5vw, 70px); }
.pf-real-story__head > span { color: var(--pf-story-accent); font: 800 9px / 1.25 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.15em; text-transform: uppercase; }
.pf-real-story__head h2 { max-width: 770px; margin: 0px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(42px, 4.9vw, 72px); font-weight: 400; line-height: 0.98; letter-spacing: -0.04em; }
.pf-real-story__head p { margin: 0px; color: rgba(36, 33, 41, 0.66); font-size: 14px; line-height: 1.65; }
.pf-real-story__grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: clamp(14px, 2vw, 28px); }
.pf-real-story__item { position: relative; min-height: 460px; margin: 0px; overflow: hidden; background: rgb(222, 216, 206); }
.pf-real-story__item img { position: absolute; inset: 0px; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: transform 0.6s; }
.pf-real-story__item:hover img { transform: scale(1.025); }
.pf-real-story__item figcaption { position: absolute; z-index: 1; right: 0px; bottom: 0px; left: 0px; padding: clamp(20px, 3vw, 34px); color: rgb(255, 255, 255); background: linear-gradient(transparent, rgba(21, 18, 24, 0.9)); }
.pf-real-story__item figcaption > span { display: block; margin-bottom: 10px; color: rgb(255, 215, 189); font: 800 8px / 1.2 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.13em; text-transform: uppercase; }
.pf-real-story__item figcaption > strong { display: block; max-width: 620px; font: 800 clamp(18px, 2vw, 28px) / 1.08 "PF Montserrat", Arial, sans-serif; }
.pf-real-story__item figcaption > p { max-width: 620px; margin: 12px 0px 0px; color: rgba(255, 255, 255, 0.82); font-size: 12px; line-height: 1.55; }
.pf-real-story--mosaic .pf-real-story__item--1 { grid-column: span 7; min-height: 620px; }
.pf-real-story--mosaic .pf-real-story__item--2, .pf-real-story--mosaic .pf-real-story__item--3 { grid-column: span 5; min-height: 296px; }
.pf-real-story--panorama .pf-real-story__item--1 { grid-column: 1 / -1; min-height: 570px; }
.pf-real-story--panorama .pf-real-story__item--2, .pf-real-story--panorama .pf-real-story__item--3 { grid-column: span 6; min-height: 380px; }
.pf-real-story--triptych .pf-real-story__item { grid-column: span 4; min-height: 560px; }
.pf-real-story--editorial .pf-real-story__item--1 { grid-column: span 5; min-height: 650px; }
.pf-real-story--editorial .pf-real-story__item--2 { grid-column: span 7; min-height: 390px; }
.pf-real-story--editorial .pf-real-story__item--3 { grid-column: 6 / -1; min-height: 235px; }
.pf-real-story--rail .pf-real-story__grid { display: flex; gap: 18px; overflow-x: auto; padding: 0px 0px 14px; scroll-snap-type: x mandatory; }
.pf-real-story--rail .pf-real-story__item { flex: 0 0 min(74vw, 620px); min-height: 500px; scroll-snap-align: start; }
.pf-real-story--split .pf-real-story__item--1 { grid-column: span 8; min-height: 610px; }
.pf-real-story--split .pf-real-story__item--2, .pf-real-story--split .pf-real-story__item--3 { grid-column: span 4; min-height: 291px; }
.pf-real-story__offer { display: grid; grid-template-columns: minmax(210px, 0.65fr) minmax(300px, 1fr) auto; gap: clamp(20px, 4vw, 60px); align-items: center; margin-top: clamp(28px, 4vw, 52px); padding: clamp(24px, 3vw, 40px); color: rgb(255, 255, 255); background: rgb(38, 34, 43); border-left: 8px solid var(--pf-story-accent); }
.pf-real-story__offer div > span { display: block; margin-bottom: 9px; color: rgb(239, 183, 147); font: 800 8px / 1.2 "PF Montserrat", Arial, sans-serif; letter-spacing: 0.12em; text-transform: uppercase; }
.pf-real-story__offer div > strong { display: block; font: 800 clamp(18px, 2vw, 27px) / 1.1 "PF Montserrat", Arial, sans-serif; }
.pf-real-story__offer > p { margin: 0px; color: rgba(255, 255, 255, 0.72); font-size: 13px; line-height: 1.6; }
.pf-real-story__offer > a { display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 18px; color: rgb(38, 34, 43); background: rgb(255, 255, 255); font: 800 10px / 1.2 "PF Montserrat", Arial, sans-serif; text-decoration: none; white-space: nowrap; }
@media (max-width: 900px) {.pf-real-story__head { grid-template-columns: 1fr 1.7fr; }
.pf-real-story__head > p { grid-column: 2; }
.pf-real-story--triptych .pf-real-story__item { grid-column: span 6; }
.pf-real-story--triptych .pf-real-story__item--3 { grid-column: 1 / -1; min-height: 420px; }
.pf-real-story__offer { grid-template-columns: 1fr 1fr; }
.pf-real-story__offer > a { grid-column: 1 / -1; justify-self: start; }}
@media (max-width: 660px) {.pf-real-story { padding: 78px 0px; }
.pf-real-story__head { display: block; }
.pf-real-story__head h2 { margin: 18px 0px 20px; font-size: 42px; }
.pf-real-story__grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.pf-real-story__item, .pf-real-story--mosaic .pf-real-story__item--1, .pf-real-story--mosaic .pf-real-story__item--2, .pf-real-story--mosaic .pf-real-story__item--3, .pf-real-story--panorama .pf-real-story__item--1, .pf-real-story--panorama .pf-real-story__item--2, .pf-real-story--panorama .pf-real-story__item--3, .pf-real-story--triptych .pf-real-story__item, .pf-real-story--triptych .pf-real-story__item--3, .pf-real-story--editorial .pf-real-story__item--1, .pf-real-story--editorial .pf-real-story__item--2, .pf-real-story--editorial .pf-real-story__item--3, .pf-real-story--split .pf-real-story__item--1, .pf-real-story--split .pf-real-story__item--2, .pf-real-story--split .pf-real-story__item--3 { grid-column: 1; min-height: 410px; }
.pf-real-story--rail .pf-real-story__grid { display: flex; }
.pf-real-story--rail .pf-real-story__item { flex-basis: 86vw; min-height: 430px; }
.pf-real-story__offer { grid-template-columns: 1fr; }
.pf-real-story__offer > a { grid-column: 1; white-space: normal; }}
@media (prefers-reduced-motion: reduce) {.pf-real-story__item img { transition: none; }}
