/* Revision 11, approved screens 09 and 10. Local rules only.
   The full AVIF canvases are clipped to portrait-only windows; every letter is live HTML. */
#speaker.section {
  padding:14px 0 28px; margin:0; border:0; overflow:hidden;
  background:#f8f8f6; color:#47474b; font-family:'Montserrat Hero',Arial,sans-serif;
}
#speaker .speaker-live-inner {width:100%;max-width:560px;margin-inline:auto;min-width:0}
#speaker .speaker-live-heading {
  width:92%;margin:0 auto 15px;color:#504094;text-align:center;
  font:750 28px/1.08 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.7px;
}
#speaker .speaker-live-grid {display:flex;flex-direction:column;align-items:stretch;min-width:0}
#speaker .speaker-live-grid > * {min-width:0}
#speaker.section.speaker #speaker-title.speaker-live-name {
  width:92%;max-width:none;margin:0 auto 9px;color:#504094;text-align:center;
  font:750 26px/1.2 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.65px;text-wrap:initial;
}
#speaker .speaker-live-intro {
  width:91%;margin:0 auto;color:#474c41;text-align:center;
  font-size:17.7px;line-height:1.24;letter-spacing:-.45px;font-weight:400;
}
#speaker .speaker-portrait-window {
  position:relative;isolation:isolate;width:100%;aspect-ratio:724/440;
  margin:9px 0 0;overflow:hidden;pointer-events:none;
}
#speaker .speaker-portrait-window picture {display:contents}
#speaker .speaker-portrait-window img {
  position:absolute;left:0;top:-99.772727%;width:100%;max-width:none;height:auto;margin:0;
  border:0;border-radius:0;filter:none;object-fit:fill;object-position:initial;
}
#speaker .speaker-live-credentials {
  width:92%;margin:0 auto;padding:11px 16px 12px 42px;list-style:none;
  background:#eee8fc;border:0;border-radius:15px;color:#47474b;
  font-size:17px;line-height:1.25;letter-spacing:-.5px;
  display:grid;gap:9px;
}
#speaker .speaker-live-credentials li {position:relative;margin:0;padding:0;min-width:0}
#speaker .speaker-live-credentials li::before {
  content:'';position:absolute;left:-27px;top:.36em;width:11px;height:11px;
  border:0;border-radius:50%;background:#5c47ad;
}
#speaker .speaker-live-credentials strong {font-weight:700}
#speaker .speaker-live-method,#speaker .speaker-live-story {
  width:88.6%;margin:17px auto 0;padding:0;border:0;
  color:#47474b;font-size:19.5px;line-height:1.24;letter-spacing:-.46px;font-weight:400;
}
#speaker .speaker-live-story {margin-top:17px}
#speaker .speaker-live-story p {margin:0;font:inherit;color:inherit}
#speaker .speaker-live-story .speaker-live-story-emphasis {margin-top:9px;font-weight:750;letter-spacing:-.55px;color:#292540}
#speaker .speaker-live-action {width:89.3%;margin:12px auto 0}
#speaker.section.speaker #speaker-cta.cta {
  display:flex;width:100%;min-width:0;max-width:none;min-height:70px;gap:0;padding:10px 14px;
  border:0;border-radius:22px;text-align:center;color:#fff;text-decoration:none;
  font:700 23px/1.08 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.45px;
  flex-direction:column;background:linear-gradient(110deg,#5744a4,#49358f 52%,#5543a5);
  box-shadow:0 4px 0 #302062,0 12px 24px rgba(70,49,124,.12);
}
#speaker.section.speaker #speaker-cta.cta:hover {background:linear-gradient(110deg,#654dba,#4e3c94 50%,#6d5bbf);box-shadow:0 5px 0 #302062,0 15px 25px rgba(70,49,124,.15);transform:translateY(-2px)}
#speaker.section.speaker #speaker-cta.cta:active,#speaker.section.speaker #speaker-cta.cta.is-pressed {transform:translateY(2px);box-shadow:0 1px 0 #302062,0 5px 15px rgba(70,49,124,.12)}
#speaker.section.speaker #speaker-cta.cta:focus-visible {outline:3px solid #504094;outline-offset:7px}
#faq.section {padding:27px 0 36px;margin:0;border:0;background:#f8f8f6;color:#474c41;font-family:'Montserrat Hero',Arial,sans-serif}
#faq .faq-live-inner {width:100%;max-width:560px;margin-inline:auto;min-width:0}
#faq.section.faq #faq-title.section-title {
  width:90%;max-width:none;margin:0 auto 22px;padding:0;text-align:center;
  color:#504094;font:750 27px/1.14 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.62px;text-wrap:initial;
}
#faq .faq-live-list {width:93.2%;margin:0 auto;display:grid;gap:12px;border:0;padding:0;min-width:0}
#faq .faq-live-item {min-width:0;margin:0;padding:0;background:#eee8fc;border:0;border-radius:15px}
#faq .faq-live-item summary {
  position:relative;list-style:none;cursor:pointer;margin:0;padding:18px 44px 18px 18px;
  color:#474c41;font:650 20.5px/1.24 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.4px;
  border:0;min-height:62px;text-align:left;overflow-wrap:break-word;
}
#faq .faq-live-item summary::-webkit-details-marker {display:none}
#faq .faq-live-item summary::marker {content:''}
#faq .faq-live-item summary::after {
  content:'+';position:absolute;top:17px;right:17px;width:18px;height:25px;
  color:#626261;font:300 36px/1 'Montserrat Hero',Arial,sans-serif;text-align:center;
}
#faq .faq-live-item[open] summary::after {content:'−'}
#faq .faq-live-item summary:focus-visible {outline:3px solid #504094;outline-offset:3px;border-radius:15px}
#faq .faq-live-answer {
  margin:0;padding:0 18px 22px;color:#474c41;max-width:none;
  font:400 19.5px/1.3 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.45px;
}
#faq .faq-live-answer p {margin:0;font:inherit;color:inherit}
#faq .faq-live-answer p+p {margin-top:22px}
@media(max-width:359px) {
  #speaker .speaker-live-heading {font-size:25px}
  #speaker.section.speaker #speaker-title.speaker-live-name {font-size:24px}
  #speaker .speaker-live-intro,#speaker .speaker-live-credentials {font-size:16.5px}
  #speaker .speaker-live-method,#speaker .speaker-live-story {font-size:17.5px}
  #speaker.section.speaker #speaker-cta.cta {font-size:21px}
  #faq.section.faq #faq-title.section-title {font-size:25px}
  #faq .faq-live-item summary {font-size:18.5px;padding-left:16px}
  #faq .faq-live-answer {font-size:18px;padding-inline:16px}
}
@media(min-width:600px) and (max-width:1099px) {
  #speaker.section {padding:34px 0 40px}
  #speaker .speaker-live-heading {font-size:34px}
  #speaker.section.speaker #speaker-title.speaker-live-name {font-size:33px}
  #speaker .speaker-live-intro,#speaker .speaker-live-credentials {font-size:21px}
  #speaker .speaker-live-method,#speaker .speaker-live-story {font-size:22px;line-height:1.3}
  #speaker .speaker-live-credentials {padding:20px 25px 22px 53px;gap:12px}
  #speaker.section.speaker #speaker-cta.cta {font-size:27px;min-height:82px}
  #faq.section {padding:38px 0 46px}
  #faq.section.faq #faq-title.section-title {font-size:34px}
  #faq .faq-live-item summary {font-size:23px}
  #faq .faq-live-answer {font-size:21px;line-height:1.35}
}
@media(min-width:1100px) {
  #speaker.section {padding:clamp(24px,1.75vw,29px) 0 0}
  #speaker .speaker-live-inner {max-width:1600px}
  #speaker .speaker-live-heading {
    width:95%;font-size:clamp(36px,3.17vw,51px);line-height:1.16;letter-spacing:-1.35px;
    margin-bottom:clamp(36px,3.3vw,53px);
  }
  #speaker .speaker-live-grid {
    display:grid;grid-template-columns:minmax(0,.79fr) minmax(0,1fr);
    column-gap:2.64%;align-items:start;padding-right:2.77%;min-width:0;
  }
  #speaker.section.speaker #speaker-title.speaker-live-name {
    grid-column:2;width:100%;margin:0 0 10px;text-align:left;
    font-size:clamp(43px,4.08vw,65px);line-height:1.08;letter-spacing:-1.9px;
  }
  #speaker .speaker-live-intro {
    grid-column:2;width:100%;margin:0;font-size:clamp(20px,1.64vw,26px);line-height:1.33;
    letter-spacing:-.56px;text-align:left;
  }
  #speaker .speaker-portrait-window {
    grid-column:1;grid-row:1/span 7;align-self:start;width:102.85%;aspect-ratio:650/939;
    margin:-30px 0 0;overflow:hidden;
  }
  #speaker .speaker-portrait-window img {width:232.923077%;top:-10.649627%;left:0;height:auto}
  #speaker .speaker-live-credentials {
    grid-column:2;width:100%;margin-top:clamp(19px,1.6vw,26px);
    padding:clamp(20px,1.45vw,24px) 24px clamp(22px,1.6vw,26px) clamp(47px,3.9vw,63px);
    border-radius:20px;font-size:clamp(18px,1.455vw,23.3px);line-height:1.31;letter-spacing:-.53px;gap:6px;
  }
  #speaker .speaker-live-credentials li::before {width:11px;height:11px;left:-28px;top:.43em}
  #speaker .speaker-live-method,#speaker .speaker-live-story {
    grid-column:2;width:100%;margin:clamp(23px,1.95vw,32px) 0 0;
    font-size:clamp(20px,1.72vw,27.5px);line-height:1.32;letter-spacing:-.5px;
  }
  #speaker .speaker-live-story {margin-top:clamp(25px,2.15vw,35px)}
  #speaker .speaker-live-story .speaker-live-story-emphasis {margin-top:3px;color:#504094;font-weight:750}
  #speaker .speaker-live-action {grid-column:2;width:100%;margin:clamp(20px,1.65vw,27px) 0 0}
  #speaker.section.speaker #speaker-cta.cta {
    min-height:clamp(68px,5.25vw,84px);font-size:clamp(26px,2.08vw,33px);line-height:1.15;
    padding:15px 18px;border-radius:27px;letter-spacing:-.5px;display:block;
  }
  #speaker .speaker-cta-break {display:none}
  #faq.section {padding:clamp(36px,2.7vw,45px) 0 clamp(38px,3vw,50px)}
  #faq .faq-live-inner {max-width:1600px}
  #faq.section.faq #faq-title.section-title {
    width:94%;font-size:clamp(41px,3.58vw,57px);line-height:1.12;letter-spacing:-1.35px;
    margin-bottom:clamp(27px,2.2vw,36px);
  }
  #faq .faq-live-list {width:83%;max-width:1330px;gap:12px}
  #faq .faq-live-item {border-radius:20px}
  #faq .faq-live-item summary {
    padding:clamp(19px,1.4vw,23px) 75px clamp(19px,1.4vw,23px) clamp(28px,2.5vw,40px);
    font-size:clamp(23px,1.95vw,31px);line-height:1.23;font-weight:650;color:#504094;letter-spacing:-.65px;
  }
  #faq .faq-live-item summary::after {top:clamp(18px,1.4vw,23px);right:clamp(27px,2.55vw,41px);font-size:36px;color:#504094}
  #faq .faq-live-answer {
    padding:8px clamp(28px,2.5vw,40px) 26px;
    font-size:clamp(19px,1.585vw,25.35px);line-height:1.3;letter-spacing:-.6px;
  }
  #faq .faq-live-answer p+p {margin-top:25px}
}
@media(prefers-reduced-motion:reduce) {
  #speaker.section.speaker #speaker-cta.cta {transition:none}
  #speaker.section.speaker #speaker-cta.cta:hover {transform:none}
}


/* Fade crop boundaries into the continuous page surface without touching the portrait. */
#speaker .speaker-portrait-window {
 mask-image:linear-gradient(to bottom,transparent,#000 7px,#000),linear-gradient(to right,#000 95%,transparent);
 mask-composite:intersect;
 -webkit-mask-composite:source-in;
}
#speaker .speaker-heading-row {display:block}
@media(min-width:1100px) {#speaker .speaker-heading-row {display:inline}}
