/* Conference evidence and speaking media. Scoped to these two page additions. */
.speaking-video-opening{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(32px,6vw,96px);padding:clamp(32px,5vw,80px) max(6%,calc((100vw - 1200px)/2));background:linear-gradient(135deg,var(--cfs-tint),#f7f3ed)}
.speaking-opening-copy{max-width:640px}.speaking-opening-copy h1{font-size:clamp(38px,4.4vw,66px);line-height:1.06;letter-spacing:-.045em;margin:20px 0 28px;color:var(--cfs-ink)}
.speaking-opening-copy>p:not(.eyebrow){font-size:clamp(18px,1.6vw,22px);line-height:1.65;max-width:43ch;margin-bottom:32px}
.speaking-opening-copy .scene-cta{background:var(--cfs-violet);color:#fff;border-color:var(--cfs-violet);display:inline-flex;gap:28px}
.speaking-opening-copy .scene-cta:hover{background:var(--cfs-violet-hover)}
.speaking-feedback-link{display:block;width:fit-content;margin-top:22px;text-underline-offset:5px;color:var(--cfs-violet)}
.speaking-video-banner{width:100%;max-width:385px;margin:0 auto}
.speaking-video-banner .session-video-frame{aspect-ratio:9/16;margin:0;border-radius:14px;box-shadow:0 20px 50px #3022331a;animation:none!important}
.speaking-video-banner figcaption{font-size:12px;line-height:1.55;color:#57505c;margin:12px 0 0;max-width:36ch}
.feedback-ribbon{padding:56px 0 32px;background:#35253f;color:#fff;overflow:hidden}
.feedback-heading,.feedback-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-inline:max(6%,calc((100vw - 1200px)/2))}
body[data-revision=warm] .feedback-heading h2{font-size:clamp(28px,3vw,42px);line-height:1.15;margin:8px 0 0;color:#fff;letter-spacing:-.035em}
.feedback-heading .eyebrow{color:#e2c3df;margin:0}
.feedback-ribbon :focus-visible{outline:3px solid #f1ccee;outline-offset:4px}
.feedback-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:32px max(6%,calc((100vw - 1200px)/2));margin:0}
.feedback-list>li{min-width:0;padding:28px;border:1px solid #ffffff38;border-radius:14px;background:#ffffff08;display:flex;flex-direction:column;justify-content:space-between}
.feedback-list figure{display:flex;flex-direction:column;justify-content:space-between;gap:28px;height:100%;margin:0}.feedback-list blockquote{margin:0}.feedback-list blockquote p{font-size:clamp(20px,2vw,26px);line-height:1.5;letter-spacing:-.015em;margin:0}
.feedback-list figcaption{display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.6}.feedback-list figcaption span,.feedback-context{font-size:13px;line-height:1.65;color:#e4d9e7}.feedback-card-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 20px}
.conference-ratings{display:flex;gap:32px;margin:0 0 20px}.conference-ratings dt{font-size:14px;line-height:1.5;margin-bottom:8px}.conference-ratings dd{font-family:var(--cfs-font);font-weight:700;font-size:clamp(36px,4vw,56px);letter-spacing:-.045em;line-height:1.1;margin:0;white-space:nowrap}.conference-ratings dd span{font:400 18px var(--cfs-body-font);letter-spacing:0}
.conference-rating-card>p{font-size:14px;line-height:1.6;margin:8px 0 0}.conference-rating-card .feedback-context{font-size:13px}
.feedback-release-note{font-size:12px;line-height:1.6;margin:0;max-width:65ch}.feedback-footer{align-items:baseline}.feedback-footer a{color:#fff;flex-shrink:0;font-size:14px}
.conference-feedback-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,7vw,100px);padding:72px max(6%,calc((100vw - 1200px)/2));background:#35253f;color:#fff;scroll-margin-top:130px}
.conference-feedback-detail .eyebrow{color:#e2c3df}.conference-feedback-detail h2{color:#fff;font-size:clamp(30px,3.4vw,46px);line-height:1.15;letter-spacing:-.035em}.conference-feedback-detail p{max-width:62ch;line-height:1.7}.conference-feedback-detail .feedback-release-note{border-left:2px solid #dfb8da;padding-left:16px;margin-top:24px;color:#e4d9e7}.conference-feedback-detail .conference-ratings{margin:32px 0}.conference-feedback-detail .feedback-context{font-size:14px}
.studio-bridge{padding:36px max(6%,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;align-items:baseline;gap:24px;background:var(--cfs-tint)}.studio-bridge p{max-width:44ch;font-size:20px;line-height:1.5;margin:0}.studio-bridge a{flex-shrink:0}
@media(max-width:800px){.speaking-video-opening{grid-template-columns:1fr;padding:32px 24px 44px;gap:32px}.speaking-opening-copy{max-width:600px}.speaking-opening-copy h1{font-size:clamp(36px,7vw,54px)}.speaking-video-banner{max-width:355px}.feedback-heading,.feedback-footer{margin-inline:24px}.feedback-footer{align-items:flex-start;flex-direction:column;gap:18px}.conference-feedback-detail{grid-template-columns:1fr;padding:48px 24px;gap:12px}.conference-feedback-detail .conference-ratings{margin-top:12px}.studio-bridge{flex-direction:column;padding:28px 24px;gap:20px}}
@media(max-width:480px){.speaking-video-opening{padding-inline:20px}.speaking-opening-copy h1{font-size:36px}.feedback-heading{align-items:flex-start;flex-direction:column;gap:20px}.feedback-heading,.feedback-footer{margin-inline:20px}.feedback-list{padding-inline:20px}.conference-ratings{gap:24px}.conference-ratings dd{font-size:38px}.feedback-list blockquote p{font-size:22px}.feedback-ribbon{padding-top:40px}.studio-bridge{padding-inline:20px}}

#feedback-title{scroll-margin-top:150px}

/* Selected exact conference comments, readable without the moving ribbon. */
.conference-quote-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.conference-quote-grid figure{margin:0;padding:24px;border:1px solid #ffffff38;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.conference-quote-grid blockquote{margin:0}.conference-quote-grid blockquote p{font-size:22px;line-height:1.5;margin:0;letter-spacing:-.015em}
.conference-quote-grid figcaption{display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.65}.conference-quote-grid figcaption span{color:#e4d9e7;font-size:13px}
@media(max-width:800px){.conference-quote-grid{grid-template-columns:1fr;margin-top:20px}}

/* Feedback is stationary. JS shows a user-selected window of the original list. */
.feedback-list>li[hidden]{display:none}
.feedback-controls{display:grid;grid-template-columns:auto minmax(64px,1fr) auto;align-items:center;gap:12px;flex-shrink:0;max-width:320px;width:100%}
.feedback-controls[hidden]{display:none}
.feedback-controls button{min-height:44px;padding:10px 14px;border:1px solid #dbbedf;border-radius:8px;background:transparent;color:#fff;font:500 14px var(--cfs-body-font);cursor:pointer}
.feedback-controls button:hover:not([aria-disabled=true]){background:#ffffff19}
.feedback-controls button[aria-disabled=true]{color:#e4d9e7;border-style:dashed;cursor:default}
.feedback-status{font-size:14px;line-height:1.5;text-align:center;margin:0;color:#fff}
.feedback-ribbon .conference-ratings{flex-wrap:wrap}
@media(max-width:1100px){.feedback-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.feedback-list{grid-template-columns:1fr}.feedback-list>li{padding:24px}.feedback-heading{align-items:flex-start;flex-direction:column;gap:20px}}
@media print{.feedback-controls{display:none!important}.feedback-list>li[hidden]{display:flex!important}.feedback-list>li{break-inside:avoid}}

/* Keep the conference heading readable against its deep-ink surface. */
#conference-feedback-title{color:#fff}
