@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172b27;--sage:#dce5d9;--cream:#f6f5ef;--paper:#fffefa;--lime:#d7f28c;--muted:#65746b;--line:#cfd8ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.055em}h1{font-size:clamp(3.3rem,7vw,7.5rem);line-height:1.06;font-weight:500}h2{font-size:clamp(2.4rem,4.5vw,5rem);line-height:1.13;font-weight:500}h3{font-size:clamp(1.4rem,2vw,2.2rem);font-weight:600}p{line-height:1.7}a{color:inherit}nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 5vw;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.logo{font-family:Manrope;font-size:1.32rem;font-weight:800;text-decoration:none;letter-spacing:-.06em}.navlinks{display:flex;gap:24px;align-items:center}.navlinks a{text-decoration:none;font-size:.86rem;font-weight:700}.navlinks a:hover{text-decoration:underline}.pill{display:inline-block;border-radius:100px;background:var(--ink);color:white;padding:16px 24px;text-decoration:none;font-weight:700;font-size:.85rem;border:1px solid var(--ink);cursor:pointer}.pill:hover{background:#345044}.pill.light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:800}.wrap{max-width:1440px;margin:auto;padding:0 5vw}.hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:690px}.hero .copy{padding:95px 5vw 95px max(5vw,calc((100vw - 1440px)/2 + 72px));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{margin:30px 0}.hero p{max-width:580px;font-size:1.15rem}.hero .visual{background:#cad8c8;position:relative;overflow:hidden;min-height:460px}.photo-placeholder{height:100%;min-height:420px;background:linear-gradient(145deg,#d4dfd1,#a8bdaf 55%,#597e70);display:flex;align-items:end;padding:38px;color:#fff}.photo-placeholder span{border:1px solid #ffffff9c;padding:14px 18px;max-width:320px;font-size:.85rem;background:#1a382b66;line-height:1.5}.hero .visual img,.image-panel img{width:100%;height:100%;object-fit:cover;display:block}.visual .vertical{position:absolute;top:24px;right:24px;writing-mode:vertical-rl;color:white;font-weight:700;letter-spacing:.18em;font-size:.7rem}.section{padding:115px 0}.section.narrow{max-width:1040px;margin:auto}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:50px}.section-head h2{max-width:800px;margin:0}.section-head p{max-width:350px}.dark{background:var(--ink);color:var(--paper)}.light-green{background:var(--sage)}.quote{font-family:Manrope;font-size:clamp(2.5rem,5.2vw,5.6rem);font-weight:500;letter-spacing:-.06em;line-height:1.16;max-width:1150px}.accent{color:#d5ef9b}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tile{background:var(--paper);padding:34px;min-height:310px;display:flex;flex-direction:column;align-items:flex-start}.tile p{color:var(--muted)}.tile .number{font-size:.78rem;font-weight:700;letter-spacing:.1em;margin-bottom:50px}.tile a{margin-top:auto;text-decoration:underline;text-underline-offset:5px;font-weight:700}.accordion{border-top:1px solid var(--ink)}.acc{border-bottom:1px solid var(--ink)}.acc button{display:flex;justify-content:space-between;gap:30px;align-items:center;width:100%;padding:30px 0;background:transparent;border:0;text-align:left;color:var(--ink);cursor:pointer;font:inherit}.acc button strong{font-family:Manrope;font-size:clamp(1.4rem,3vw,2.8rem);font-weight:500;letter-spacing:-.045em}.acc button .plus{font-size:2rem;flex-shrink:0}.acc-content{display:none;max-width:790px;padding:0 0 36px}.acc.open .acc-content{display:block}.acc-content p{font-size:1.05rem}.acc-content ul{line-height:1.9}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.image-panel{min-height:550px;background:#c8d8c8}.large-number{font-size:5rem;letter-spacing:-.08em;font-family:Manrope}.footer{background:#10231f;color:#fff;padding:75px 5vw 28px}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:start}.footer h2{font-size:clamp(2.5rem,5vw,5rem)}.footer a{color:inherit}.footer-bottom{border-top:1px solid #52645e;margin-top:80px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:.8rem}.tag{display:inline-block;border:1px solid currentColor;padding:9px 14px;border-radius:30px;margin:5px 5px 5px 0;font-size:.8rem}.resources{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.resource{background:var(--paper);padding:35px;min-height:270px}.resource small{font-weight:800;letter-spacing:.12em}.resource p{color:var(--muted)}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.outline{border:1px solid var(--ink);color:var(--ink);background:transparent}.fine{font-size:.78rem;color:var(--muted)}.menu-btn{display:none;background:none;border:0;font-size:1.6rem}input,textarea{font:inherit;width:100%;padding:14px;border:1px solid var(--line);background:white}label{display:block;font-weight:700;margin:16px 0 7px}.contact-form{max-width:650px}.contact-form .pill{margin-top:20px}.note{background:#e6eddf;padding:18px;margin:16px 0;font-size:.9rem}@media(max-width:900px){.hero,.split{grid-template-columns:1fr}.hero .copy{padding:80px 6vw}.hero .visual{min-height:460px}.grid3{grid-template-columns:1fr}.section{padding:75px 0}.section-head{display:block}.resources{grid-template-columns:1fr}.navlinks{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.navlinks.active{display:flex}.menu-btn{display:block}.footer-top,.footer-bottom{display:block}.split{gap:30px}}@media(max-width:520px){h1{font-size:3.25rem}.hero .visual{min-height:350px}.image-panel{min-height:360px}.tile{min-height:260px}.quote{font-size:2.55rem}}
@media(max-width:1000px){.grid3[style*="repeat(4,1fr)"]{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:650px){.grid3[style*="repeat(4,1fr)"]{grid-template-columns:1fr!important}}

.custom-talk{margin-top:48px;padding:44px;background:var(--sage);max-width:900px}.custom-talk h3{margin:14px 0}.custom-talk p{max-width:720px}select{font:inherit;width:100%;padding:14px;border:1px solid var(--line);background:white}

/* V4 editorial palette */
:root{--ink:#292d30!important;--accent:#779ab4!important;--cream:#f7f2eb!important}
body{background:#f7f2eb;color:#292d30}
.hero{background:#f7f2eb!important}.light-green,.soft-section{background:#eee5db!important}.dark{background:#29323a!important}.dark .accent{color:#b9d1e4!important}.pill{background:#29323a!important;color:#fff!important}.pill.outline{background:transparent!important;color:#29323a!important;border:1px solid #29323a!important}.pill.light{background:#f7f2eb!important;color:#29323a!important}.eyebrow,.number{color:#597f9b!important}.tile,.resource{background:#faf7f2!important}.site-photo{display:block;width:100%;height:100%;object-fit:cover}.hero-photo{object-position:50% 22%}.portrait-photo{object-position:center 34%}.visual,.image-panel{overflow:hidden}.pathway{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:15px;margin:42px 0}.pathway>div{background:#fff;padding:34px 22px;min-height:180px;border:1px solid #ddd6cc}.pathway>span{font-size:30px;color:#779ab4}.pathway small{font-size:10px;letter-spacing:.12em;color:#597f9b}.pathway h3{font-size:clamp(1.4rem,2.4vw,2.5rem);line-height:1.15;margin:20px 0 0}.framework-note{max-width:780px;font-size:1.1rem}.custom-talk{background:#e9e1d7!important}@media(max-width:720px){.pathway{grid-template-columns:1fr;gap:8px}.pathway>span{text-align:center;transform:rotate(90deg)}.pathway>div{min-height:auto}.hero-photo{min-height:380px}}

/* V5 — navy blue / ivory editorial refinements */
:root{--ink:#233E59!important;--muted:#536778!important;--line:#D8D4CF!important;--sage:#EFE7DE!important;--lime:#B6C9DA!important}
body{color:#28323A}nav,.footer{border-color:#d6d5d2}.logo span{color:#234F77!important}.eyebrow,.number,.pathway small{color:#275780!important}.pill{background:#234F77!important;border-color:#234F77!important}.pill:hover{background:#173955!important}.pill.outline{color:#234F77!important;border-color:#234F77!important}.dark{background:#1D354C!important}.dark .accent{color:#A7C6E0!important}.quote .accent{color:#A7C6E0!important}.pathway>span{color:#275780!important}.footer{background:#172E43!important}.hero .visual{background:#e4d5c5}.hero-photo{object-position:55% 40%}.portrait-photo{object-position:center 38%}.custom-talk{background:#E8DFD6!important}.contact-photo{position:relative;background:linear-gradient(90deg,rgba(20,43,63,.95),rgba(20,43,63,.83)),url('assets/audience.webp') center 45%/cover no-repeat!important}.contact-photo .wrap{position:relative}.contact-photo label{color:#fff}.contact-photo input,.contact-photo textarea,.contact-photo select{background:rgba(255,255,255,.96)}.center-action{text-align:center;margin-top:34px}.resource-pending{display:inline-block;margin-top:20px;padding:12px 16px;border:1px solid #B7BFC6;color:#536778;font-size:.85rem;border-radius:40px}.tile .number{margin-bottom:28px}.tile{min-height:275px}.resource{min-height:265px}.site-photo{object-fit:cover}

.resource a.resource-pending{text-decoration:none;background:#234F77;color:white;border-color:#234F77;font-weight:700}.resource a.resource-pending:hover{background:#173955}

/* V7: preserve full RBD hero photo rather than cropping it */
.hero .visual:has(.rbd-hero-photo){background:#e8dfd6;display:flex;align-items:center;justify-content:center}
.hero .visual .rbd-hero-photo{width:100%;height:100%;object-fit:contain;object-position:center}
@media(min-width:901px){.hero .visual:has(.rbd-hero-photo){min-height:690px}}
@media(max-width:900px){.hero .visual:has(.rbd-hero-photo){min-height:0}.hero .visual .rbd-hero-photo{height:auto;max-height:720px}}
#speaking .acc button strong{font-size:clamp(1.35rem,2.15vw,2.15rem);letter-spacing:-.035em;line-height:1.28}

/* Join the conversation */
.join-section{background:#f7f2eb;color:#252b30}.join-grid{display:grid;grid-template-columns:minmax(200px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(30px,6vw,100px)}.join-image{height:420px;overflow:hidden;border-radius:3px}.join-image img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.join-content h2{margin:.25em 0;font-size:clamp(2.5rem,5vw,4.8rem)}.newsletter-form{margin-top:26px}.newsletter-form label{display:block;margin-bottom:10px;font-weight:600}.newsletter-row{display:flex;gap:12px;align-items:stretch}.newsletter-row input{flex:1;min-width:0;border:1px solid #b9b9b5;background:white;padding:14px;color:#20252a}.newsletter-row .pill{white-space:nowrap;border:0;cursor:pointer}.newsletter-form .fine,.social-note{font-size:.85rem;line-height:1.5}.social-pending{color:#466b89}@media(max-width:760px){.join-grid{grid-template-columns:1fr}.join-image{height:320px;max-width:430px}.newsletter-row{flex-direction:column}.newsletter-row .pill{width:100%}}

/* V9: allow the longer two-line hero statement to breathe */
.hero .copy h1{font-size:clamp(2.6rem,5.3vw,5.7rem);line-height:1.08;letter-spacing:-.055em}
.join-section .social-note a{color:#234F77;text-decoration:underline;text-underline-offset:4px}

/* V10: stronger personal-brand identity and focused hero message */
nav .logo{font-size:clamp(1.55rem,2vw,1.95rem);letter-spacing:-.065em;white-space:nowrap}
.hero .copy h1{font-size:clamp(3.25rem,6.5vw,7.25rem);line-height:1.04;max-width:780px;letter-spacing:-.065em}
.hero .copy p{max-width:660px}
#about .meet-name{font-size:clamp(3rem,5.5vw,6rem);line-height:1.05;letter-spacing:-.07em;margin-bottom:26px;font-weight:600}
#about .meet-name span{display:block;white-space:normal}
#about .meet-name .meet-period{display:inline;color:#234F77}
#about .about-subheading{font-size:clamp(1.35rem,2.2vw,2.05rem);line-height:1.28;letter-spacing:-.035em;font-weight:500;margin-bottom:26px}
@media(max-width:520px){nav .logo{font-size:1.45rem}.hero .copy h1{font-size:clamp(2.8rem,12vw,4.2rem)}#about .meet-name{font-size:clamp(2.7rem,12vw,4.1rem)}}

/* V11 editorial hierarchy refinements */
#about .meet-name{font-size:clamp(2.8rem,4.75vw,5.15rem);line-height:1.08;margin-bottom:22px}
#about .about-subheading{font-size:clamp(1.65rem,2.8vw,2.65rem);line-height:1.23;letter-spacing:-.045em;margin-bottom:30px}
.beyond-heading{font-size:clamp(2.9rem,5vw,5.4rem);margin-bottom:18px!important;letter-spacing:-.06em}
.beyond-subheading{font-family:Manrope,sans-serif;font-size:clamp(1.35rem,2.3vw,2.2rem);line-height:1.3;letter-spacing:-.035em;color:#4b5b66;margin:0;max-width:700px!important}
@media(max-width:520px){#about .meet-name{font-size:clamp(2.65rem,10vw,3.7rem)}#about .about-subheading{font-size:1.6rem}}

/* V12: personal brand and editorial section hierarchy */
#about .meet-name{font-size:clamp(2.35rem,3.65vw,4.05rem);line-height:1.12;letter-spacing:-.055em;color:#234F77;margin-bottom:17px}
#about .about-subheading{font-size:clamp(2.05rem,3.5vw,3.45rem);line-height:1.14;letter-spacing:-.045em;color:#292D30;font-weight:500;margin-bottom:30px}
.beyond-heading{text-transform:uppercase;letter-spacing:-.055em}
.beyond-subheading{color:#234F77;font-size:clamp(1.35rem,2.3vw,2.2rem)}
@media(max-width:520px){#about .meet-name{font-size:clamp(2.25rem,9vw,3rem)}#about .about-subheading{font-size:clamp(2rem,8.5vw,2.75rem)}}

/* V13: refined personal-brand hierarchy */
#about .meet-name{font-size:clamp(2rem,3vw,3.3rem);letter-spacing:-.04em;white-space:nowrap;line-height:1.15;margin-bottom:18px}
#about .meet-name span{display:inline;letter-spacing:.10em;margin-left:.08em}
#about .about-subheading{font-size:clamp(2.2rem,4vw,3.85rem);line-height:1.12;color:#292D30}
.beyond-heading{font-size:clamp(2rem,3.1vw,3.35rem);line-height:1.15;letter-spacing:-.04em;margin-bottom:15px!important}
.join-section .social-note{font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.55;margin-top:24px}
.join-section .social-note a{font-weight:700;text-decoration-thickness:1.5px;text-underline-offset:5px}
@media(max-width:520px){#about .meet-name{font-size:clamp(1.9rem,7.5vw,2.7rem)}#about .about-subheading{font-size:clamp(2.2rem,9vw,3rem)}.beyond-heading{font-size:clamp(2rem,8vw,2.8rem)}}

/* V14: full name in a single line; keep Meet and the subheading at V13 sizes. */
#about .meet-name span{letter-spacing:.075em;margin-left:.08em;font-size:.84em}
@media(max-width:520px){#about .meet-name span{letter-spacing:.035em;font-size:.70em}}

/* V15: increase only OLA FASUBA, preserving Meet and subtitle sizing. */
#about .meet-name span{font-size:1.18em;letter-spacing:.015em;margin-left:.09em;font-weight:650}
@media(max-width:900px){#about .meet-name span{font-size:1.04em;letter-spacing:0}}
@media(max-width:520px){#about .meet-name span{font-size:.88em;letter-spacing:-.025em;margin-left:.05em}}

/* V16: wider tracking between the letters of OLA FASUBA, not heavier or taller type. */
#about .meet-name span{font-weight:400;letter-spacing:.16em;font-size:1.05em;margin-left:.12em}
@media(max-width:1100px){#about .meet-name span{font-size:.98em;letter-spacing:.105em}}
@media(max-width:700px){#about .meet-name{white-space:normal}#about .meet-name span{font-size:.94em;letter-spacing:.07em;margin-left:.08em}}
@media(max-width:520px){#about .meet-name span{font-size:.88em;letter-spacing:.045em}}

/* V17 — restore original Beyond the Stage editorial hierarchy. */
.beyond-intro{display:block;margin-bottom:52px}
.beyond-kicker{color:#234F77!important;font-size:clamp(.85rem,1.2vw,1.15rem);font-weight:800;letter-spacing:.22em;margin-bottom:22px}
.beyond-statement{font-family:Manrope,sans-serif;color:#28323A;font-size:clamp(3.1rem,7.6vw,8rem);font-weight:500;letter-spacing:-.065em;line-height:1.14;max-width:1200px;margin:0 0 30px!important}
.beyond-description{max-width:600px!important;color:#53606a;margin:0;font-size:1.03rem}
@media(max-width:680px){.beyond-break{display:none}.beyond-statement{font-size:clamp(2.7rem,10vw,4.5rem)}.beyond-kicker{letter-spacing:.18em}}

/* V18: restore the original side-by-side editorial section layout. */
.beyond-intro{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.7fr);align-items:end;column-gap:clamp(32px,5vw,90px);margin-bottom:52px}
.beyond-main{min-width:0}
.beyond-kicker{color:#234F77!important;font-size:.82rem;letter-spacing:.21em;font-weight:800;margin-bottom:18px}
.beyond-intro .beyond-statement{font-size:clamp(2.6rem,4.3vw,4.9rem);font-weight:500;line-height:1.12;letter-spacing:-.055em;max-width:760px;margin:0!important;color:#28323A}
.beyond-intro .beyond-description{max-width:350px!important;font-size:1.05rem;line-height:1.7;color:#53606a;margin:0 0 6px}
@media(max-width:900px){.beyond-intro{grid-template-columns:1fr;row-gap:22px}.beyond-intro .beyond-statement{font-size:clamp(2.5rem,7vw,4.6rem)}.beyond-intro .beyond-description{max-width:620px!important}}
@media(max-width:520px){.beyond-intro .beyond-statement{font-size:clamp(2.2rem,9vw,3.1rem)}}

/* V19: match the Keynotes & Talks section's two-column headline hierarchy. */
.beyond-intro{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:50px}
.beyond-intro .beyond-main{flex:1 1 auto;min-width:0}
.beyond-intro .beyond-kicker{font-size:.72rem;letter-spacing:.18em;font-weight:800;margin-bottom:14px;color:#234F77!important}
.beyond-intro .beyond-statement{font-size:clamp(2.4rem,4.5vw,5rem);line-height:1.13;letter-spacing:-.055em;font-weight:500;max-width:800px;margin:0!important;color:#28323A}
.beyond-intro .beyond-description{flex:0 0 350px;max-width:350px!important;font-size:1rem;line-height:1.7;margin:0;color:#53606a}
@media(max-width:900px){.beyond-intro{display:block}.beyond-intro .beyond-description{max-width:350px!important;margin-top:22px}.beyond-intro .beyond-statement{font-size:clamp(2.4rem,6.5vw,4.5rem)}}
@media(max-width:520px){.beyond-intro .beyond-statement{font-size:clamp(2.2rem,9vw,3.1rem)}}

/* V22: sticky navigation anchor offset */
#about,#speaking,#beyond,#contact{scroll-margin-top:86px}

/* RBD applications: two balanced offerings, stacking on small screens */
.rbd-applications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.rbd-applications .tile{height:100%}
@media(max-width:720px){.rbd-applications{grid-template-columns:1fr}}

/* V30 — restrained signature gold, visual storytelling and purposeful motion */
:root{--signature-gold:#947434}
::selection{background:#947434;color:#fff}
a,button,.pill,.tile,.resource{transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .3s ease,box-shadow .3s ease}
nav .navlinks a:not(.pill):hover,nav .navlinks a:not(.pill):focus-visible,.footer a:hover,.join-section a:hover{color:var(--signature-gold)!important;text-decoration-color:var(--signature-gold)}
.pill:hover,.pill:focus-visible,.resource-pending:hover{background:var(--signature-gold)!important;border-color:var(--signature-gold)!important;color:white!important;transform:translateY(-2px)}
.acc button:hover strong,.acc button:focus-visible strong,.acc.open button strong{color:var(--signature-gold)}
.acc button .plus{transition:transform .3s ease,color .3s ease}.acc.open button .plus{color:var(--signature-gold);transform:rotate(90deg)}
.acc-content{display:block!important;max-height:0;overflow:hidden;opacity:0;padding:0!important;visibility:hidden;transition:max-height .55s ease,opacity .4s ease,visibility .4s ease}
.acc.open .acc-content{max-height:1800px;opacity:1;visibility:visible;padding:8px 0 38px!important}
.talk-photo{margin:8px 0 25px;max-width:790px;height:clamp(200px,27vw,330px);overflow:hidden;border-radius:3px}
.talk-photo img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .8s ease}
.acc.open .talk-photo img{transform:scale(1.025)}
.visual-interlude{background:#eae2d8}.interlude-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:18px 60px;align-items:end;margin-bottom:38px}.interlude-heading .eyebrow{grid-column:1/-1}.interlude-heading h2{margin:0}.interlude-heading h2 em{color:var(--signature-gold);font-weight:500}.interlude-heading p{max-width:390px;margin:0 0 8px}
.editorial-gallery{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.editorial-gallery figure{margin:0;position:relative;height:clamp(280px,39vw,540px);overflow:hidden;background:#d8cabe}.editorial-gallery figure:nth-child(2){height:clamp(250px,32vw,445px);align-self:end}.editorial-gallery img,.rbd-moment img{height:100%;width:100%;object-fit:cover;transition:transform .8s ease}.editorial-gallery figure:hover img,.rbd-moment:hover img{transform:scale(1.035)}.editorial-gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 22px 18px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.5));font-weight:600;font-size:.85rem}
.driver-explorer{margin-top:65px;padding:35px;border:1px solid #d7c8b6;background:#f9f5ef}.driver-intro h3{margin:12px 0}.driver-intro p{max-width:650px}.driver-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}.driver-tab{font:inherit;font-weight:700;border:1px solid #bfc5c8;background:transparent;color:#234F77;padding:12px 22px;border-radius:50px;cursor:pointer}.driver-tab.active,.driver-tab:hover{background:#947434;color:white;border-color:#947434}.driver-panel{margin-top:24px;border-top:1px solid #d7c8b6;padding-top:25px;min-height:180px;animation:driverFade .35s ease}.driver-panel h4{font-family:Manrope,sans-serif;font-size:1.6rem;margin:0 0 10px}.driver-panel p{max-width:760px}.driver-prompt{font-style:italic;color:#785e31}
.rbd-moment{margin:65px 0 0;position:relative;max-height:410px;overflow:hidden}.rbd-moment img{display:block;height:410px;object-position:center 42%}.rbd-moment figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 24px 20px;background:linear-gradient(transparent,rgba(0,0,0,.6));color:white;font-weight:600}
.reveal-on-scroll{opacity:1;transform:none}.js-motion .reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.js-motion .reveal-on-scroll.is-visible{opacity:1;transform:none}.js-motion .editorial-gallery figure:nth-child(2){transition-delay:.12s}
@keyframes driverFade{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
:focus-visible{outline:3px solid #947434;outline-offset:3px}
@media(max-width:760px){.interlude-heading{display:block}.interlude-heading h2{margin:15px 0}.editorial-gallery{grid-template-columns:1fr}.editorial-gallery figure,.editorial-gallery figure:nth-child(2){height:340px}.driver-explorer{padding:22px}.rbd-moment,.rbd-moment img{height:290px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.js-motion .reveal-on-scroll{opacity:1;transform:none}}

/* V31 targeted visual refinements */
#speaking{padding-bottom:clamp(40px,5vw,72px)}
#beyond{padding-top:clamp(40px,5vw,72px)}
.visual-interlude .interlude-heading{display:block;margin-bottom:25px}
.visual-interlude .interlude-heading h2{max-width:950px}
/* Filmstrip: scrollable on touch, gentle automatic travel on desktop; pauses on hover or focus. */
.editorial-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:12px;align-items:stretch}
.editorial-gallery .gallery-frame,.editorial-gallery .gallery-frame:nth-child(2){flex:0 0 clamp(290px,46vw,610px);height:clamp(245px,29vw,390px);align-self:auto;scroll-snap-align:start;position:relative;overflow:hidden}
.editorial-gallery .gallery-frame img{width:100%;height:100%;object-fit:cover}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.editorial-gallery{scroll-snap-type:none}.editorial-gallery .gallery-frame{animation:gallery-drift 24s ease-in-out infinite alternate}.editorial-gallery:hover .gallery-frame,.editorial-gallery:focus-within .gallery-frame{animation-play-state:paused}}
@keyframes gallery-drift{from{transform:translateX(0)}to{transform:translateX(-120px)}}
/* Extend hero photograph to occupy its entire visual column. */
.hero .visual:has(.rbd-hero-photo){overflow:hidden}
.hero .visual .rbd-hero-photo{height:100%;width:100%;object-fit:cover;object-position:center 43%}
@media(max-width:900px){.hero .visual .rbd-hero-photo{height:100%;max-height:none;aspect-ratio:4/3;object-fit:cover}}
@media(prefers-reduced-motion:reduce){.editorial-gallery .gallery-frame{animation:none!important}}

/* V32: left-biased stage crop and unobstructed four-image gallery */
.hero .visual .rbd-hero-photo{object-position:18% 43%}
@media(max-width:900px){.hero .visual .rbd-hero-photo{object-position:18% 43%}}
/* Keep captions stationary and fully readable; movement belongs to photos, not their frames. */
.editorial-gallery .gallery-frame{animation:none!important;transform:none!important}
.editorial-gallery .gallery-frame figcaption{z-index:2;left:0;right:0;bottom:0;white-space:normal;overflow:visible;line-height:1.4;padding:34px 22px 18px}
.editorial-gallery .gallery-frame:hover img{transform:scale(1.06) translateX(-1.2%)}
.editorial-gallery{scroll-padding-inline:8px;padding-left:8px}
@media(prefers-reduced-motion:reduce){.editorial-gallery .gallery-frame img{transition:none!important}}

/* V33 — RBD hero: display the entire original photograph, no cropping.
   Muted gold framing gives the letterboxed space an intentional treatment. */
.hero .visual:has(.rbd-hero-photo){background:linear-gradient(135deg,#e7ddca 0%,#c8b58e 100%)!important;display:flex;align-items:center;justify-content:center;padding:clamp(12px,2vw,28px);min-height:690px;overflow:hidden}
.hero .visual .rbd-hero-photo{display:block;width:100%;height:auto;max-height:calc(690px - 56px);object-fit:contain!important;object-position:center center!important;box-shadow:0 12px 35px rgba(42,43,40,.15);border:1px solid rgba(148,116,52,.35)}
@media(max-width:900px){.hero .visual:has(.rbd-hero-photo){min-height:0;padding:14px}.hero .visual .rbd-hero-photo{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain!important}}

/* V34: original high-resolution 4514, cropped to the stage and audience per reference. */
.hero .visual:has(.rbd-hero-photo){background:#e8dfd6!important;padding:0!important;min-height:690px;display:block!important;overflow:hidden}
.hero .visual .rbd-hero-photo{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:56% center!important;box-shadow:none!important;border:0!important}
@media(max-width:900px){.hero .visual:has(.rbd-hero-photo){min-height:0!important;aspect-ratio:1/1!important}.hero .visual .rbd-hero-photo{height:100%!important;aspect-ratio:auto!important;object-position:56% center!important}}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Booking section introduction */
.contact-photo .booking-intro{font-size:clamp(1rem,1.25vw,1.125rem);line-height:1.65;color:#e3e9ed;max-width:32rem;margin-top:1.25rem}

/* Keep the Retention by Design audience photograph as a shallow landscape crop on phones. */
@media(max-width:760px){
  .rbd-moment{height:clamp(110px,30vw,165px);max-height:none;overflow:hidden}
  .rbd-moment img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 32%}
}
