/* Responsive layout safeguards, loaded after the shared typography. */
.wrap{max-width:1320px;width:calc(100% - 64px)}
main,section,figure,article,aside,form,.wrap,header,footer{min-width:0}
:is(.p-hero,.p-intro,.p-meet,.p-career-layout,.split,.footer-grid,.services-layout,.booking-layout,.founder-hero,.resume,.form-grid,.career-cards,.steps,.p-proof>.wrap)>*{min-width:0}
img,svg,iframe{max-width:100%}input,textarea,select{min-width:0;max-width:100%;width:100%}
h1,h2,h3,p,a,strong,span,label,summary{overflow-wrap:break-word}
.services-intro h1,.services-intro .lead,.services-career .career-confidence,.services-career .career-note,.process-title,.p-intro .lead,.p-meet .experience-connects,.p-hero-foot>p,.p-career-layout>div>p,.p-close h2,.contact-intro h1,.contact-intro .lead,.about-intro .lead{white-space:normal}
.contact-layout>div>h2{font-size:clamp(1.5rem,2.35vw,2rem)!important;letter-spacing:-.035em!important}
.carousel-dots{top:auto!important;bottom:16px}
@media(max-width:1150px){
 header .nav{position:relative;height:auto;min-height:88px;padding-block:10px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
 header .menu{display:block;min-width:44px;min-height:44px}
 header nav{position:static;inset:auto;width:100%;padding:20px 0 8px;background:transparent;box-shadow:none;flex-basis:100%}
 header nav:not(.open){display:none}header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}
 header nav a{padding:10px 12px;min-height:44px}header nav .button{text-align:center}
 .p-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
 .p-proof>.wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
 .services-layout{grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:32px}
 .resume{grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:32px}
}
@media(max-width:900px){
 .wrap{width:calc(100% - 40px)}
 .section{padding-block:56px}.page-intro{padding-block:40px;margin-bottom:32px}
 .p-hero,.p-meet,.split,.founder-hero,.booking-layout,.resume,.services-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 .p-hero{padding-top:24px}.p-hero-title{padding-block:0 8px}.p-hero-portrait{height:auto;aspect-ratio:4/5;max-height:650px;width:min(100%,520px);justify-self:center}
 .p-hero-portrait>img{height:100%;width:100%;object-fit:cover}
 .p-hero-foot{grid-template-columns:minmax(0,1fr) 45px;padding-block:24px;gap:16px}
 .p-hero-foot>span{grid-column:1}.p-hero-foot>p{grid-column:1/-1;grid-row:2}.p-hero-foot>a{grid-column:2;grid-row:1}
 .p-intro{display:block}.p-career-layout{grid-template-columns:minmax(0,1fr)}
 .p-focus-grid{grid-template-columns:minmax(0,1fr)}
 .p-focus-grid>a{min-height:0;display:block;padding:28px 24px 58px}
 .services-layout aside,.resume aside{display:block;position:static;width:100%;padding:0 0 24px;border-left:0;border-bottom:1px solid #d9dddF}
 .services-layout aside a,.resume aside a{padding-block:10px;min-height:44px}
 .career-cards{grid-template-columns:minmax(0,1fr)}
 .programme summary{display:grid;grid-template-columns:28px minmax(0,1fr) 20px;gap:12px;align-items:start}
 .programme summary h2,.faq summary h2{font-size:1.2rem!important;line-height:1.35!important}
 .programme-body{padding:8px 0 16px}.programme[open]{margin:0;padding-inline:16px}
 .founder-hero .founder-name{font-size:clamp(1.7rem,6vw,2.9rem)!important;white-space:normal}
 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact-layout>div>h2 br{display:none}.contact-layout>div>h2{font-size:clamp(1.35rem,4.3vw,1.8rem)!important}
 .p-meet .ingrid-slide img{height:auto!important;aspect-ratio:auto!important;width:100%;object-fit:contain}
 .p-meet .experience-connects{font-size:inherit!important}
 .enquiry{padding:24px}.people-principles{padding:30px 24px}
 .cta{margin-block:30px;padding:30px 24px;display:block}.cta>.button{margin-top:18px;display:inline-flex}
}
@media(max-width:600px){
 .wrap{width:calc(100% - 32px)}html{font-size:17px}
 h1,.personality-home h1{font-size:clamp(2rem,9vw,2.7rem)!important}
 h2,.resume h2,.enquiry h2,.people-principles h2{font-size:clamp(1.55rem,7vw,2rem)!important}
 .contact-intro h1,.services-intro h1{font-size:clamp(1.8rem,8vw,2.2rem)!important}
 .p-close h2{font-size:clamp(1.8rem,7.5vw,2.3rem)!important}
 .eyebrow,.p-hero-title>.eyebrow{font-size:1rem!important;letter-spacing:0!important}
 .p-hero-portrait{border-top-left-radius:80px}.p-hero-portrait figcaption{left:20px;bottom:24px;right:16px}.p-hero-portrait figcaption strong{font-size:1.5rem}.p-hero-portrait figcaption .partner-caption{font-size:1rem!important}
 .p-hero .actions,.actions{gap:16px;flex-wrap:wrap}.button{max-width:100%;white-space:normal;text-align:center;justify-content:center;padding:14px 18px;line-height:1.5}
 .p-proof>.wrap{grid-template-columns:minmax(0,1fr);gap:24px;padding-block:30px}
 .p-proof p,.p-proof p:nth-child(2){border:0;border-bottom:1px solid #42536c;padding:0 0 20px;margin:0}
 .p-proof p:last-child{padding-bottom:0;border:0}.p-proof p:first-child{display:flex;gap:20px;align-items:center}
 .p-proof .experience-years{font-size:5.4rem!important;flex-shrink:0}.p-proof p span,.p-proof p:first-child span{font-size:1rem!important}
 .p-intro .lead,.p-career-layout>div>p{font-size:1.15rem!important}
 .footer-grid{grid-template-columns:minmax(0,1fr);gap:30px}.footer-grid>div:first-child{grid-column:auto}.footer-grid .company-logo{max-width:220px}.footer-grid h3{margin-bottom:14px}.footer-grid a:not(.brand){display:block;padding-block:6px}.footer-grid .social-icon{display:inline-flex!important}
 .footer-contact-details{gap:10px;margin-top:16px}.footer-bottom{padding-bottom:30px;overflow-wrap:anywhere}
 .form-grid,.steps,.three-grid,.service-grid,.quote-grid{grid-template-columns:minmax(0,1fr)}
 .enquiry{padding:22px 18px}.calendar-placeholder{padding:22px 18px}.career-card{padding:26px 20px}
 .contact-block a{overflow-wrap:anywhere}.contact-block p{font-size:1rem!important}
}
/* Reserve enough room for the complete professional email address. */
@media(min-width:1151px){.footer-grid{grid-template-columns:minmax(0,.95fr) minmax(0,.6fr) minmax(0,1.15fr) minmax(320px,1.4fr);gap:28px}}
.footer-contact-details{container-type:inline-size}
footer .footer-contact-details a[href^="mailto:"]{font-size:clamp(14px,5.15cqi,18px)!important;white-space:nowrap;overflow-wrap:normal;word-break:normal;letter-spacing:-.015em;max-width:100%}
@media(min-width:601px) and (max-width:760px){.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-grid>div:first-child{grid-column:auto}}
/* Coordinated navigation with a restrained antique-gold interaction. */
header nav a,header nav .button,header .menu,footer .footer-grid a:not(.brand){font-family:Manrope,Arial,sans-serif!important;font-weight:600!important;transition:color .18s ease,border-color .18s ease,background-color .18s ease}
header nav a:not(.button):hover,header nav a:not(.button):focus-visible,footer .footer-grid a:not(.brand):hover,footer .footer-grid a:not(.brand):focus-visible{color:#806639!important}
header nav a[aria-current]:hover,header nav a[aria-current]:focus-visible{border-bottom-color:#a38b60}
header nav .button:hover,header nav .button:focus-visible{background:#806639;color:#fff;border-color:#806639}
footer .footer-grid .social-icon:hover,footer .footer-grid .social-icon:focus-visible{background:#f0e9dc;color:#806639!important;border-color:#a38b60}
/* Rounded rectangular homepage hero portrait. */
.p-hero-portrait{width:100%;height:650px;max-height:none;aspect-ratio:auto;justify-self:stretch;border-radius:24px;overflow:hidden}
.p-hero-portrait>img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 24%}
.p-hero-portrait figcaption{bottom:28px;left:30px;right:24px;text-align:left}
.p-hero-portrait:after{inset:60% 0 0}
@media(max-width:1150px){.p-hero-portrait{height:600px}}
@media(max-width:900px){.p-hero-portrait{width:min(100%,520px);height:auto;aspect-ratio:4/5;justify-self:center;border-radius:24px}.p-hero-portrait>img{aspect-ratio:4/5}}
@media(max-width:600px){.p-hero-portrait{border-radius:18px}.p-hero-portrait figcaption{bottom:24px;left:22px;right:18px}.p-hero-portrait figcaption strong{font-size:1.5rem}.p-hero-portrait figcaption .partner-caption{font-size:1rem!important}}
/* Filled muted-gold CTA hover and keyboard focus treatments. */
main a.text-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid transparent;border-radius:3px;max-width:100%;line-height:1.5;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
main a.text-link:hover,main a.text-link:focus-visible,main a.button:hover,main a.button:focus-visible,main button.button:hover,main button.button:focus-visible{background:#c7ad76!important;color:#0c2345!important;border-color:#c7ad76!important;text-decoration:none}
main .p-career-layout a:hover,main .p-career-layout a:focus-visible{background:#c7ad76;color:#0c2345;padding-inline:14px;border-color:#c7ad76}
main .p-focus-grid>a:hover,main .p-focus-grid>a:focus-visible,main .service-card:hover,main .service-card:focus-visible{background:#c7ad76!important;color:#0c2345!important;border-color:#c7ad76!important}
main .p-focus-grid>a:hover :is(p,span,h3,b),main .p-focus-grid>a:focus-visible :is(p,span,h3,b),main .service-card:hover :is(h3,span),main .service-card:focus-visible :is(h3,span){color:#0c2345!important}

/* Gold CTA buttons as the default, with a deeper gold interaction. */
a.button,button.button,header nav .button{background:#c7ad76!important;border-color:#c7ad76!important;color:#0c2345!important}
a.button:hover,a.button:focus-visible,button.button:hover,button.button:focus-visible,header nav .button:hover,header nav .button:focus-visible{background:#b79a60!important;border-color:#b79a60!important;color:#0c2345!important}
.p-career h2{font-size:clamp(1.7rem,3.6vw,2.75rem)!important;letter-spacing:-.025em!important;word-spacing:.04em!important}
@media(min-width:1000px){.p-career h2{white-space:nowrap}}

/* Remove the duplicate section padding before the first FAQ. */
.faq.section{padding-top:0!important}.faq-intro{margin-bottom:24px}
.faq .programme summary{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:16px;align-items:start}
.faq .programme summary h2{margin:0;min-width:0}.faq .programme summary b{justify-self:end}

/* Slightly smaller FAQ questions; retain their established hierarchy. */
.faq .programme summary h2{font-size:calc(clamp(1.8rem,3.2vw,2.75rem) - .5px)!important}
@media(max-width:900px){.faq .programme summary h2{font-size:calc(1.2rem - .5px)!important}}

/* Keep career support context together and reduce unused space below the cards. */
.services-career .section-heading .career-note{margin:10px auto 0!important;max-width:none;white-space:normal}
.services-career .section-heading{margin-bottom:28px}.services-career.section{padding-bottom:40px!important}
.services-career .career-cards{margin-bottom:0}.services-career .career-card>:last-child{margin-bottom:0}
@media(max-width:600px){.services-career.section{padding-bottom:28px!important}}

/* Continuous statements alongside the founder experience figure. */
.p-proof .proof-message{font-family:'DM Sans',Arial,sans-serif!important;font-size:1.1rem!important;line-height:1.65!important;font-weight:400;align-self:stretch;display:flex;flex-direction:column;justify-content:center;color:#d9e2ee}
.p-proof .proof-message strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:1.65rem;line-height:1.3;color:#fff;font-weight:600;margin-bottom:6px}
.p-proof>.wrap{align-items:stretch}.engagement-terms{display:inline-block;margin-top:6px}
@media(max-width:600px){.p-proof .proof-message{font-size:1.05rem!important}.p-proof .proof-message strong{font-size:1.5rem}}
