:root{color-scheme:dark;--purple:#302a3d;--deep:#241f2e;--cream:#fff8e4;--muted:#d8cfbb;--rule:rgba(255,248,228,.4)}
*{box-sizing:border-box}
html{background:var(--deep)}
body{margin:0;padding:24px;color:var(--cream);font-family:Arial,Helvetica,sans-serif;line-height:1.5;background:linear-gradient(rgba(36,31,46,.35),rgba(36,31,46,.8)),url('/lance/assets/master-background.png') center/cover fixed;min-height:100vh}
.page{max-width:1560px;margin:auto;border:2px solid var(--cream);border-radius:24px;padding:24px 46px 20px;overflow:hidden}
.masthead{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 0 30px;font-size:15px;letter-spacing:.25em}
.masthead-rule{height:1px;width:78px;background:var(--rule)}
.hero{display:grid;grid-template-columns:minmax(240px,.94fr) minmax(0,2fr);grid-template-areas:'profile proposition' 'profile audiences';column-gap:44px}
.proposition{grid-area:proposition;container-type:inline-size}
h1,h2,h3,p,figure{margin:0}
h1{font-size:clamp(2.3rem,4.3vw,4.3rem);font-weight:750;line-height:1.06;letter-spacing:-.045em;margin:7px 0 16px;overflow-wrap:normal}
.standfirst{font-size:clamp(1rem,3.7cqi,2rem);font-weight:700;line-height:1.16;letter-spacing:-.025em}
.intro{font-size:clamp(1.05rem,1.55vw,1.5rem);line-height:1.43;margin:24px 0 22px;max-width:51em}
.profile{grid-area:profile;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}
.profile img{display:block;width:100%;height:auto;max-height:465px;object-fit:cover;object-position:50% 30%;border-radius:3px;mask-image:linear-gradient(#000 82%,transparent)}
figcaption{position:relative;margin:0 0 18px;text-align:left}
figcaption strong{display:block;font-size:clamp(1.3rem,2.2vw,2.1rem);letter-spacing:.12em;line-height:1.25}
figcaption span{display:block;font-size:1rem;line-height:1.45;letter-spacing:0;margin-top:10px;max-width:30em;color:var(--muted)}
.audiences{grid-area:audiences}
.profile-prompt{font-size:1.0625rem;line-height:1.45;color:var(--muted);margin:0 0 16px}
.profile-prompt strong{display:block;margin-top:10px;font-size:3em;line-height:1.12;color:var(--cream);font-weight:600}
.audience{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;padding:20px 0;border-top:1px solid var(--cream)}
.audience h2{font-size:1.4rem;letter-spacing:.035em;line-height:1.3;padding-top:2px}
.audience>div{border-left:1px solid var(--rule);padding-left:12px;font-size:1.05rem;line-height:1.4}
.audience-summary{font-weight:700;margin-bottom:6px}
.services{margin-top:26px;border-top:1px solid var(--cream);padding-top:15px}
.section-heading{display:flex;align-items:center;gap:24px;margin-bottom:22px}
.section-heading h2{font-size:1.45rem;line-height:1.3;letter-spacing:.13em}
.section-heading>span{flex:1;height:1px;background:var(--rule)}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.service{padding:0 32px;position:relative}
.service:first-child{padding-left:4px}
.service:last-child{padding-right:0}
.service+.service{border-left:1px solid var(--rule)}
.service+.service:before{content:'→';position:absolute;left:-19px;top:61px;font-size:38px;line-height:1;background:var(--purple);font-weight:400}
.service h3{font-weight:700;line-height:1.12;margin-bottom:12px}
.service-name{display:block;font-size:clamp(1.3rem,2.05vw,2rem);letter-spacing:-.035em;font-weight:700;min-height:2.24em;margin-bottom:10px}
.stage{display:block;font-size:.875rem;letter-spacing:.14em;font-weight:500;color:var(--muted)}
.service p{font-size:1.06rem;line-height:1.45;color:var(--cream)}
footer{display:flex;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid var(--cream);margin-top:27px;padding-top:13px;font-size:1rem}
.signature{letter-spacing:.2em;white-space:nowrap;font-size:.9rem}
::selection{background:var(--cream);color:var(--deep)}
@media(min-width:1600px){.page{margin-top:16px}.hero{column-gap:55px}.audience{padding:24px 0}.services{margin-top:32px}.service p{font-size:1.15rem}}
@media(max-width:1100px){body{padding:18px}.page{padding:24px 28px}.hero{column-gap:28px;grid-template-columns:minmax(210px,.85fr) minmax(0,2fr)}.audience{grid-template-columns:1fr;gap:8px}.audience>div{border-left:0;padding-left:0}.audience h2{font-size:1.2rem}.service{padding:0 22px}.service-name{font-size:1.3rem}.service p{font-size:1rem}.signature{font-size:.8rem}}
@media(max-width:800px){.hero{grid-template-columns:1fr 1.5fr;grid-template-areas:'proposition proposition' 'profile audiences';gap:24px}.masthead{margin-bottom:24px}h1{font-size:clamp(2rem,6.2vw,3.2rem);white-space:normal}.standfirst{font-size:clamp(1rem,3.7cqi,2rem)}.intro{font-size:1.125rem}.profile{justify-content:flex-start}.profile img{max-height:350px}figcaption strong{font-size:1.4rem}figcaption span{font-size:1rem;letter-spacing:0}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0}.service:nth-child(3){border-left:0;padding-left:4px}.service:nth-child(3):before{display:none}.service-name{font-size:1.7rem}.service:nth-child(2){padding-right:0}footer{align-items:flex-start;flex-direction:column;gap:12px}.section-heading h2{font-size:1.25rem}}
@media(max-width:520px){body{padding:10px;background-attachment:scroll}.page{padding:22px 20px;border-radius:18px}.masthead{font-size:.8rem;letter-spacing:.16em;gap:12px}.masthead-rule{width:32px}.hero{grid-template-columns:1fr;grid-template-areas:'proposition' 'profile' 'audiences';gap:14px}h1{font-size:2.65rem;max-width:8em}.standfirst{font-size:1.2rem;line-height:1.3}.intro{margin:20px 0 8px}.profile{max-width:310px;margin:8px auto 4px}.profile img{max-height:300px}.profile figcaption{margin-bottom:8px}.audience{padding:20px 0}.services{margin-top:8px}.section-heading>span{display:none}.section-heading h2{font-size:1.2rem}.service-grid{grid-template-columns:1fr;gap:0}.service,.service:first-child,.service:nth-child(3),.service:last-child{padding:20px 0;border:0}.service+.service{border-top:1px solid var(--rule);border-left:0}.service+.service:before{display:none}.service:first-child{padding-top:0}.service-name{font-size:1.8rem;min-height:0}.stage{font-size:.875rem}.service p{font-size:1.0625rem}footer{margin-top:5px;font-size:.95rem}}
@media print{body{padding:0;background:var(--purple);print-color-adjust:exact;-webkit-print-color-adjust:exact}.page{max-width:none;border-radius:0}}

/* Equal-height headings with a fixed label-to-icon gap; arrows align with the verbs. */
.service-grid{--icon-width:92px;--icon-height:104px}
.service,.service:first-child,.service:last-child{padding-left:16px;padding-right:16px}
.service-name{display:flex;justify-content:flex-start;align-items:center;gap:12px;font-size:clamp(1.15rem,1.7vw,1.65rem);min-height:var(--icon-height)}
.service-name>span{flex:0 0 auto;min-width:0;overflow-wrap:normal}
.service-icon{display:block;flex:0 0 var(--icon-width);width:var(--icon-width);height:var(--icon-height);object-fit:contain;object-position:center}
.service+.service:before{top:calc(var(--icon-height) + 6px);left:-12px;font-size:24px;line-height:1;background:none}
@media(max-width:1399px){
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0}
 .service-name{font-size:1.5rem}
 .service:nth-child(3){border-left:0;padding-left:16px}
 .service:nth-child(3):before{display:none}
}
@media(min-width:801px) and (max-width:1100px){.service-grid{--icon-width:68px;--icon-height:84px}}
@media(max-width:800px){.service-grid{--icon-width:96px;--icon-height:108px}}
@media(max-width:760px){
 .service-grid{grid-template-columns:1fr;gap:0}
 .service,.service:first-child,.service:nth-child(3),.service:last-child{padding:20px 0;border-left:0}
 .service+.service{border-top:1px solid var(--rule)}
 .service+.service:before{display:none}
 .service:first-child{padding-top:0}
}
@media(max-width:520px){.service-grid{--icon-width:104px;--icon-height:116px}.service-name{font-size:1.35rem}}

.speaking-topics-link{margin-top:10px}.speaking-topics-link a{color:var(--cream);text-decoration:underline;text-underline-offset:4px}.speaking-topics-link a:focus-visible{outline:2px solid var(--cream);outline-offset:4px}

.biography-link{display:inline-block;margin-top:10px;color:var(--cream);font-size:14px;line-height:1.4;text-decoration:underline;text-underline-offset:4px}.biography-link:focus-visible{outline:2px solid var(--cream);outline-offset:4px}
