.case-notes{background:#102d29;color:#e7f0e8;padding:110px max(4vw,20px) 100px}.case-intro,.case-grid{max-width:1450px;margin:auto}.case-intro{display:grid;grid-template-columns:1fr 1.45fr;column-gap:8vw}.case-intro .eyebrow{grid-column:1/-1;color:#b9ce72}.case-intro h2{font-size:clamp(43px,5vw,73px);letter-spacing:-.065em;line-height:1.08;margin:0 0 52px;font-weight:600}.case-intro h2 em,.people-strip h2 em,.case-close h2 em{font-family:var(--serif);font-weight:400}.case-intro p{font-size:19px;max-width:520px;margin:0;color:#c8dbcd}.case-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #557269}.case-note{padding:30px 7vw 7px 0}.case-note+ .case-note{border-left:1px solid #557269;padding-left:5vw;padding-right:0}.case-index{display:flex;justify-content:space-between;gap:15px;color:#b9ce72;font-weight:700;font-size:11px;letter-spacing:.16em}.case-note h3{font-family:var(--serif);font-size:clamp(24px,2.4vw,36px);line-height:1.26;font-weight:400;margin:42px 0 20px;max-width:560px}.case-note p{color:#c8dbcd;max-width:600px}.case-note .case-lesson{padding-top:20px;border-top:1px solid #557269;margin-top:28px}.case-note .case-lesson strong{color:#fff}.case-note a{display:inline-block;color:#fff;font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid #b9ce72;padding-bottom:5px;margin:18px 0 20px}.people-strip{background:#e7eee4;padding:78px max(4vw,20px);display:grid;grid-template-columns:1fr 1.1fr;gap:8vw}.people-strip>div{max-width:650px}.people-strip h2{font-size:clamp(42px,5vw,71px);line-height:1.08;letter-spacing:-.06em;margin:0;font-weight:600}.people-links{border-top:1px solid #a7bda9}.people-links a{display:grid;grid-template-columns:1fr auto;gap:0 25px;padding:18px 0;border-bottom:1px solid #a7bda9;text-decoration:none}.people-links a span{font-size:24px;font-weight:700;letter-spacing:-.035em}.people-links a small{font-size:12px;color:#55705e;grid-column:1}.people-links a b{font-size:26px;grid-column:2;grid-row:1/3;font-weight:400;align-self:center}.trainer-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-bottom:35px}.trainer-intro h2{font-size:clamp(40px,4.5vw,64px);letter-spacing:-.055em;line-height:1.1;margin:0}.trainer-intro p{font-size:19px;align-self:end;max-width:650px}.bios{padding-top:30px}.bio{display:grid;grid-template-columns:31% 1fr;gap:7vw;border-top:1px solid var(--ink);padding:55px 0 85px}.bio-side{min-height:270px;background:#dbe7dc;padding:23px;display:flex;flex-direction:column;justify-content:space-between}.bio:nth-child(2) .bio-side{background:#dde6df}.bio-count,.bio-caption{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.bio-monogram{font-family:var(--serif);font-size:clamp(80px,10vw,165px);line-height:1;color:#557c60;text-align:center;letter-spacing:-.13em;transform:translateX(-.05em)}.bio-role{color:var(--moss);font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}.bio-copy h2{font-size:clamp(36px,4vw,58px);letter-spacing:-.05em;line-height:1.1;margin:12px 0 30px}.bio-copy p{font-size:17px;max-width:735px}.bio-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:28px}.bio-links a{font-size:13px;text-decoration:none;font-weight:700;border-bottom:1px solid;padding-bottom:3px}.case-close{background:var(--deep);color:#fff;padding:95px max(4vw,20px)}.case-close>*{max-width:1450px;margin-left:auto;margin-right:auto}.case-close h2{font-size:clamp(43px,5vw,70px);letter-spacing:-.06em;line-height:1.08;margin-top:0;margin-bottom:25px}.case-close p{max-width:700px;color:#cadace;font-size:18px;margin-bottom:30px}.case-close .button{margin-left:max(0px,calc((100vw - 1450px)/2))}.topic-section .section-heading{margin-bottom:45px}.topic-list{border-top:1px solid var(--ink)}.topic-list>a{position:relative;display:grid;grid-template-columns:220px 1fr 1.4fr 30px;gap:28px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);text-decoration:none}.topic-list>a:hover{background:#e9eee4}.topic-list span{color:var(--moss);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.topic-list h3{font-size:clamp(21px,2vw,29px);letter-spacing:-.035em;line-height:1.25;margin:0}.topic-list p{color:var(--muted);margin:0}.topic-list b{font-size:24px;font-weight:400}.field-application{background:#e7eee4;padding:70px max(4vw,20px)}.field-application>*{max-width:1450px;margin-left:auto;margin-right:auto}.field-application h2{font-size:clamp(34px,3.8vw,55px);letter-spacing:-.05em;line-height:1.12;margin-top:0;margin-bottom:18px}.field-application p{font-size:18px;max-width:760px}.field-application a{font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid;margin:15px 25px 0 0;display:inline-block;padding-bottom:4px}@media(max-width:900px){.case-intro,.people-strip,.trainer-intro{grid-template-columns:1fr}.case-intro h2{margin-bottom:15px}.case-intro p{margin-bottom:35px}.topic-list>a{grid-template-columns:1fr 26px;gap:6px 15px}.topic-list span,.topic-list h3,.topic-list p{grid-column:1}.topic-list b{grid-column:2;grid-row:1/4;align-self:center}.bio{grid-template-columns:1fr 2fr;gap:35px}.bio-side{min-height:250px}}@media(max-width:650px){.case-notes{padding-top:72px;padding-bottom:65px}.case-intro h2,.people-strip h2,.case-close h2{font-size:42px}.case-grid{display:block}.case-note,.case-note+.case-note{padding:30px 0;border-left:0}.case-note+.case-note{border-top:1px solid #557269}.case-note h3{margin-top:28px}.case-index{font-size:10px}.people-strip{padding-top:70px;padding-bottom:70px;gap:35px}.trainer-intro p{font-size:17px}.bio{display:block;padding:35px 0 60px}.bio-side{min-height:205px;margin-bottom:30px}.bio-monogram{font-size:100px}.bio-copy p{font-size:16px}.case-close{padding-top:70px;padding-bottom:70px}.topic-section .section-heading h2{font-size:39px}.topic-list h3{font-size:23px}.field-application{padding-top:60px;padding-bottom:65px}.field-application p{font-size:16px}}
.page-hero p{margin-left:0}

/* PestTrain's consultancy, smaller groups and two enquiry routes. */
.usp-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#e7eee4;padding:0 max(4vw,20px);border-bottom:1px solid #b7c9b5}.usp-strip>div{padding:39px 35px 41px;border-right:1px solid #b7c9b5}.usp-strip>div:first-child{border-left:1px solid #b7c9b5}.usp-strip span,.enquiry-card-head span,.route-grid span{font-size:11px;letter-spacing:.15em;color:var(--moss);font-weight:700}.usp-strip h2{font-size:clamp(23px,2.2vw,31px);line-height:1.2;letter-spacing:-.04em;margin:20px 0 8px}.usp-strip p{max-width:370px;margin:0;color:var(--muted)}
.enquiry-hub{max-width:1450px}.enquiry-hub .section-heading{margin-bottom:42px}.enquiry-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.enquiry-card{background:white;border-top:5px solid var(--moss);min-width:0}.enquiry-card:nth-child(2){border-color:var(--accent)}.enquiry-card-head{padding:34px 35px 24px;min-height:203px}.enquiry-card-head h3{font-size:clamp(30px,3vw,44px);letter-spacing:-.055em;line-height:1.1;margin:12px 0}.enquiry-card-head p{color:var(--muted);margin:0;max-width:520px}.enquiry-card .enquiry-form{margin:0 15px 15px}.enquiry-card .form-row{grid-template-columns:1fr 1fr}.enquiry-contact{font-size:14px;margin:25px 0 0}.tailored-form select{display:block;width:100%;border:1px solid #b4c3b6;background:white;color:var(--ink);padding:11px 12px;margin-top:7px}.tailored-form select:focus{outline:2px solid var(--moss);outline-offset:2px}.business-enquiry{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;max-width:1450px}.business-enquiry-intro h2,.route-section h2{font-size:clamp(38px,4.4vw,65px);line-height:1.11;letter-spacing:-.055em;margin:0 0 25px;font-weight:600}.business-enquiry-intro p,.route-section>p{color:var(--muted);max-width:550px}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:35px}.route-grid a{display:grid;grid-template-columns:1fr 30px;gap:8px;background:white;border-top:5px solid var(--moss);padding:30px;text-decoration:none}.route-grid a:nth-child(2){border-color:var(--accent)}.route-grid span,.route-grid strong,.route-grid small{grid-column:1}.route-grid strong{font-size:27px;line-height:1.2}.route-grid small{color:var(--muted);font-size:14px}.route-grid b{grid-column:2;grid-row:1/4;align-self:center;font-size:26px;font-weight:400}.route-grid a:hover{background:#e7eee4}
@media(max-width:1000px){.usp-strip{grid-template-columns:1fr 1fr}.usp-strip>div:last-child{grid-column:1/-1}.enquiry-cards,.business-enquiry{grid-template-columns:1fr}.enquiry-card-head{min-height:0}.business-enquiry{gap:24px}}
@media(max-width:650px){.usp-strip{display:block}.usp-strip>div,.usp-strip>div:first-child{border:0;border-bottom:1px solid #b7c9b5;padding:30px 0}.enquiry-hub{padding-top:70px;padding-bottom:70px}.enquiry-card-head{padding:27px 23px 19px}.enquiry-card .enquiry-form{margin:0 8px 8px;padding:22px}.enquiry-card .form-row,.route-grid{grid-template-columns:1fr}.route-grid a{padding:23px}.business-enquiry{padding-top:70px;padding-bottom:70px}}

/* Warmer editorial title and clear routes for team and partner enquiries. */
.hero h1{max-width:1080px}.hero-title-main{display:block;white-space:nowrap}.hero-title-alt{display:block;font-size:.78em;line-height:1.15;margin-top:.16em;font-weight:500}.hero-title-alt em{color:#cfe6a2;white-space:nowrap}.hero .hero-content p{max-width:590px}.hero .hero-content{padding-top:100px}
.enquiry-paths .eyebrow{margin-bottom:20px}.path-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end;margin-bottom:40px}.path-intro h2{font-size:clamp(43px,5vw,74px);letter-spacing:-.065em;line-height:1.08;margin:0}.path-intro p{color:var(--muted);font-size:19px;max-width:480px;margin:0 0 8px}.path-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.path-cards>a{display:block;background:#fff;border-top:5px solid var(--moss);padding:36px;text-decoration:none}.path-cards>a:nth-child(2){border-color:var(--accent)}.path-cards>a:hover{background:#e7eee4}.path-cards span,.partner-teaser span,.partner-grid span{color:var(--moss);font-size:11px;font-weight:700;letter-spacing:.14em}.path-cards h3{font-size:clamp(30px,3vw,44px);letter-spacing:-.05em;line-height:1.1;margin:22px 0 12px}.path-cards p{color:var(--muted);max-width:470px;margin:0 0 32px}.path-cards b{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:5px}.path-cards b span{margin-left:9px;color:var(--ink)}.path-partner{margin-top:25px;color:var(--muted)}.path-partner a{font-weight:700;color:var(--ink);text-decoration:none;border-bottom:1px solid}
.solo-enquiry{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}.solo-enquiry h2,.team-contact-prompt h2,.partner-intro h2,.partner-steps h2,.partner-close h2{font-size:clamp(38px,4.4vw,64px);letter-spacing:-.055em;line-height:1.1;margin:0 0 24px}.solo-enquiry p,.team-contact-prompt p,.partner-intro p,.partner-close p{color:var(--muted)}.route-aside{background:#e7eee4;border-left:4px solid var(--moss);padding:20px 23px;margin-top:35px}.route-aside p{font-size:14px;margin:6px 0 10px}.route-aside a{font-weight:700;font-size:13px;text-decoration:none;border-bottom:1px solid}
.team-contact-prompt{display:grid;grid-template-columns:1fr .8fr;gap:10vw}.team-contact-prompt .button{margin-top:16px}.partner-teaser{background:#e7eee4;padding:38px;align-self:center}.partner-teaser h3{font-size:clamp(26px,3vw,39px);letter-spacing:-.045em;line-height:1.16;margin:19px 0}.partner-teaser a,.partner-links a{font-weight:700;text-decoration:none;border-bottom:1px solid;padding-bottom:5px}.partner-hero .hero-actions{margin-top:30px}.partner-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.partner-intro>div:nth-child(2){font-size:18px}.partner-steps{padding-top:40px}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);margin-top:30px}.partner-grid>div{padding:30px 35px 15px 0;border-right:1px solid var(--line)}.partner-grid>div+div{padding-left:35px}.partner-grid>div:last-child{border-right:0}.partner-grid h3{font-size:27px;letter-spacing:-.04em;line-height:1.2}.partner-grid p{color:var(--muted)}.partner-proof{background:#e7eee4;padding:95px max(4vw,20px)}.partner-proof>*{max-width:1450px;margin-left:auto;margin-right:auto}.partner-proof h2{font-size:clamp(40px,4.5vw,67px);letter-spacing:-.06em;line-height:1.1;margin-top:0}.partner-proof p{font-size:19px;max-width:760px}.partner-links{display:flex;gap:25px;flex-wrap:wrap;margin-top:32px}.partner-close{display:flex;align-items:end;justify-content:space-between;gap:35px}.partner-close>div{max-width:760px}.partner-close .button{flex-shrink:0}
.business-banner .partner-banner-link{display:block;width:max-content;margin-top:25px;color:#fff;text-decoration:none;border-bottom:1px solid #b9ce72;font-size:14px;font-weight:700}
@media(max-width:1100px){.hero-title-main{white-space:normal}.path-intro,.solo-enquiry,.team-contact-prompt,.partner-intro{grid-template-columns:1fr}.partner-close{align-items:start;flex-direction:column}.path-intro{gap:15px}.solo-enquiry{gap:30px}}
@media(max-width:1000px){.header-inner>.main-nav,.header-cta{display:none}.menu-toggle{display:flex;gap:10px;align-items:center;margin-left:auto;background:none;border:0;color:var(--ink);font-weight:700}.mobile-nav:not([hidden]){display:block;padding:10px 20px 23px;border-top:1px solid var(--line)}.mobile-nav .main-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0}.mobile-nav .main-nav a,.mobile-nav>a{display:block;border:0;border-bottom:1px solid var(--line);padding:13px 0;font-size:15px;font-weight:700;text-decoration:none}}
@media(max-width:700px){.hero-title-alt{font-size:.72em}.hero-title-alt em{white-space:normal}.path-cards,.partner-grid{grid-template-columns:1fr}.path-cards>a{padding:27px}.partner-grid>div,.partner-grid>div+div{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.partner-proof{padding-top:70px;padding-bottom:70px}.partner-links{display:block}.partner-links a{display:block;width:max-content;margin-top:19px}}

/* Audience routes for the trade and for workplaces outside pest control. */
.audience-gateway{padding:65px max(4vw,20px) 76px;background:#f0f2ea}.audience-gateway>*{max-width:1450px;margin-left:auto;margin-right:auto}.audience-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.audience-intro h2{font-size:clamp(36px,4vw,58px);line-height:1.08;letter-spacing:-.055em;margin:0}.audience-options{display:grid;grid-template-columns:1fr 1fr;gap:22px}.audience-option{display:block;min-width:0;text-decoration:none;padding:40px;background:#fff;border-top:6px solid #53785c}.audience-option.workplace{border-color:#b9ce72}.audience-option:hover{background:#e4ecdf}.audience-option>span,.professional-grid span{color:#53785c;font-size:11px;font-weight:700;letter-spacing:.15em}.audience-option h3{font-size:clamp(27px,2.8vw,41px);line-height:1.14;letter-spacing:-.05em;max-width:560px;margin:20px 0 12px}.audience-option p{color:var(--muted);max-width:560px;margin-bottom:28px}.audience-option b,.professional-grid b{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:4px}.professional-routes .section-heading{margin-bottom:40px}.professional-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.professional-grid>a{background:#fff;border-top:5px solid var(--moss);padding:30px;text-decoration:none;min-width:0}.professional-grid>a:hover{background:#e7eee4}.professional-grid h3{font-size:clamp(24px,2.2vw,32px);line-height:1.2;letter-spacing:-.04em}.professional-grid p{color:var(--muted);min-height:105px}.professional-contact-links{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.professional-contact-links a{display:flex;flex-direction:column;gap:10px;background:#fff;border-top:5px solid var(--moss);padding:27px;text-decoration:none}.professional-contact-links a:nth-child(2){border-color:var(--accent)}.professional-contact-links strong{font-size:23px}.professional-contact-links span{color:var(--muted)}.professional-enquire>p{font-size:14px}.professional-enquire>p a{font-weight:700}
@media(max-width:900px){.audience-options,.professional-grid{grid-template-columns:1fr}.audience-intro{display:block}.professional-grid p{min-height:0}}
@media(max-width:650px){.audience-gateway{padding:55px 20px 65px}.audience-option{padding:27px}.audience-option h3{font-size:28px}.professional-contact-links{grid-template-columns:1fr}.professional-hero h1{font-size:clamp(38px,9vw,56px)}}

/* Brand-led team page and PestTrain's existing photographic assets. */

.site-photo{max-width:1450px;margin:0 auto;padding:52px max(4vw,20px);display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:5vw;align-items:center}.site-photo-copy{padding:25px 0}.site-photo h2{font-size:clamp(36px,4.3vw,62px);line-height:1.08;letter-spacing:-.06em;margin:22px 0}.site-photo h2 em{font-family:var(--serif);font-weight:400}.site-photo p{font-size:18px;max-width:530px;color:var(--muted)}.site-photo .photo-credit{font-size:12px;margin-top:28px}.photo-credit a{color:var(--ink)}.site-photo img{display:block;width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;background:#e7eee4}.home-site-photo{margin-top:25px;margin-bottom:25px}.species-site-photo img{aspect-ratio:1.5;object-fit:cover;background:#fff}.partner-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.partner-grid>div{padding-right:22px}.partner-grid>div+div{padding-left:22px}.partner-grid h3{font-size:24px}.team-hero h1 em,.trainer-intro h2 em{font-family:var(--serif);font-weight:400}
@media(max-width:1050px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-grid>div:nth-child(2){border-right:0}.partner-grid>div:nth-child(3){padding-left:0}.partner-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:700px){.site-photo{grid-template-columns:1fr;gap:20px;padding-top:35px;padding-bottom:35px}.site-photo-copy{padding:0}.site-photo h2{font-size:39px}.site-photo p{font-size:16px}.site-photo img{aspect-ratio:1.4}.partner-grid{grid-template-columns:1fr}.partner-grid>div,.partner-grid>div+div,.partner-grid>div:nth-child(3){padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}}

/* December course enquiries and the PestTrain trainer page. */

.hero h1 em,
.page-hero h1 em,
.course-hero h1 em,
.hero-title-alt em {
  font-family: var(--sans);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -.06em;
}

.team-hero h1 { max-width: 1100px; }
.team-hero p { max-width: 780px; }
.team-intro { align-items: center; }
.team-intro h2 {
  font-size: clamp(38px, 4.1vw, 59px);
  line-height: 1.1;
  letter-spacing: -.055em;
}
.team-intro p { font-size: 18px; max-width: 530px; }
.team-intro figure { margin: 0; }
.team-intro img {
  display: block;
  width: 100%;
  aspect-ratio: 1.65;
  object-fit: cover;
}
.team-intro figcaption {
  font-size: 12px;
  color: var(--muted);
  padding-top: 9px;
}

.trainer-profiles { padding-top: 5px; }
.trainer-profile {
  display: grid;
  grid-template-columns: minmax(270px, .7fr) minmax(0, 1.3fr);
  gap: 8vw;
  padding: 55px 0 70px;
  border-top: 1px solid var(--ink);
}
.profile-index {
  display: block;
  font-size: 11px;
  letter-spacing: .16em;
  font-weight: 700;
  color: var(--moss);
}
.trainer-profile h2 {
  font-size: clamp(45px, 5vw, 72px);
  letter-spacing: -.065em;
  line-height: 1.03;
  margin: 30px 0 18px;
}
.trainer-profile h2 span { display: block; }
.trainer-profile-side > p {
  font-weight: 700;
  color: var(--moss);
  font-size: 13px;
  line-height: 1.4;
}
.profile-keywords {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 32px;
}
.profile-keywords span {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  border: 1px solid var(--line);
  padding: 6px 9px;
}
.trainer-profile-copy p {
  font-size: 17px;
  max-width: 760px;
  margin-top: 0;
  margin-bottom: 22px;
}
.trainer-profile-copy .bio-links {
  border-top: 1px solid var(--line);
  padding-top: 18px;
}

.scheduled-section { padding-top: 80px; padding-bottom: 90px; }
.scheduled-heading {
  display: grid;
  grid-template-columns: 1fr .7fr;
  gap: 7vw;
  align-items: end;
  margin-bottom: 38px;
}
.scheduled-heading h2 {
  font-size: clamp(42px, 4.8vw, 70px);
  letter-spacing: -.06em;
  line-height: 1.08;
  margin: 0;
}
.scheduled-heading p {
  font-size: 18px;
  color: var(--muted);
  max-width: 450px;
}
.scheduled-list { border-top: 1px solid var(--ink); }
.scheduled-card {
  display: grid;
  grid-template-columns: 215px 1fr;
  gap: 45px;
  padding: 32px 0;
  border-bottom: 1px solid var(--line);
}
.scheduled-date {
  background: #e6eee2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 198px;
  text-align: center;
  color: var(--ink);
}
.scheduled-date span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
}
.scheduled-date strong {
  font-size: clamp(46px, 5vw, 69px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.07em;
}
.scheduled-info { align-self: center; }
.scheduled-type {
  font-size: 11px;
  letter-spacing: .16em;
  font-weight: 700;
  color: var(--moss);
}
.scheduled-info h3 {
  font-size: clamp(29px, 3.1vw, 43px);
  line-height: 1.15;
  letter-spacing: -.05em;
  margin: 12px 0;
}
.scheduled-info p {
  max-width: 670px;
  color: var(--muted);
  margin: 0 0 22px;
}
.scheduled-actions {
  display: flex;
  align-items: center;
  gap: 25px;
  flex-wrap: wrap;
}
.scheduled-actions > a:first-child {
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid;
  padding-bottom: 4px;
}
.scheduled-actions .button { min-height: 44px; padding: 9px 15px; }
.scheduled-note { font-size: 13px; color: var(--muted); margin: 20px 0 0; }
.detail-date-banner {
  background: #e8eee5;
  padding: 23px max(4vw, 20px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
}
.detail-date-banner div { display: flex; align-items: baseline; gap: 17px; flex-wrap: wrap; }
.detail-date-banner span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .15em;
  color: var(--moss);
}
.detail-date-banner strong { font-size: 24px; }
.detail-date-banner small { color: var(--muted); }
.detail-date-banner a {
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid;
  padding-bottom: 3px;
  white-space: nowrap;
}

@media (max-width: 1080px) {
  .header-inner > .main-nav,
  .header-cta { display: none; }
  .menu-toggle {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-left: auto;
    background: none;
    border: 0;
    color: var(--ink);
    font-weight: 700;
  }
  .mobile-nav:not([hidden]) {
    display: block;
    padding: 10px 20px 23px;
    border-top: 1px solid var(--line);
  }
  .mobile-nav .main-nav {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin: 0;
  }
  .mobile-nav .main-nav a,
  .mobile-nav > a {
    display: block;
    border: 0;
    border-bottom: 1px solid var(--line);
    padding: 13px 0;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
  }
}

@media (max-width: 900px) {
  .team-intro,
  .scheduled-heading { grid-template-columns: 1fr; }
  .trainer-profile { grid-template-columns: 1fr; gap: 20px; }
  .trainer-profile h2 span { display: inline; margin-left: .12em; }
  .profile-keywords { margin-top: 22px; }
}

@media (max-width: 700px) {
  .scheduled-section { padding-top: 70px; padding-bottom: 70px; }
  .scheduled-heading h2 { font-size: 40px; }
  .scheduled-heading p { font-size: 16px; }
  .scheduled-card { grid-template-columns: 1fr; gap: 18px; }
  .scheduled-date { min-height: 120px; align-items: flex-start; padding: 18px 22px; }
  .scheduled-date strong { font-size: 45px; }
  .scheduled-actions { align-items: stretch; gap: 14px; }
  .scheduled-actions .button { width: 100%; }
  .detail-date-banner { display: block; }
  .detail-date-banner div { display: block; }
  .detail-date-banner strong,
  .detail-date-banner small { display: block; margin-top: 5px; }
  .detail-date-banner a { display: inline-block; margin-top: 15px; }
  .trainer-profile { padding: 38px 0 55px; }
  .trainer-profile h2 { font-size: 47px; margin: 18px 0; }
  .trainer-profile-copy p { font-size: 16px; }
  .team-intro figure { margin-top: 25px; }
}

/* A clearer heading face, restored trainer cards and a stronger dates section. */
:root { --serif: 'DM Sans', Arial, sans-serif; }
h1 em, h2 em {
  font-family: var(--sans);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -.055em;
}
.trainer-intro h2 em,
.case-intro h2 em,
.people-strip h2 em,
.case-close h2 em,
.site-photo h2 em {
  font-family: var(--sans);
  font-style: normal;
  font-weight: 400;
}
.bio-monogram { font-weight: 400; }

.scheduled-section.section {
  max-width: none;
  background: var(--deep);
  color: #fff;
  padding: 96px max(4vw, 20px) 78px;
}
.scheduled-inner { max-width: 1450px; margin: 0 auto; }
.scheduled-heading {
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, .55fr);
  gap: 8vw;
  align-items: end;
  margin-bottom: 45px;
}
.scheduled-heading .eyebrow { color: var(--accent); }
.scheduled-heading h2 {
  max-width: 750px;
  font-size: clamp(45px, 5.6vw, 79px);
  line-height: 1.03;
  letter-spacing: -.065em;
}
.scheduled-heading p {
  color: #d4e2d6;
  font-size: 18px;
  line-height: 1.55;
  max-width: 410px;
  margin: 0 0 4px;
}
.scheduled-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  border: 0;
}
.scheduled-card {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  gap: 0;
  min-width: 0;
  min-height: 480px;
  padding: 31px 36px 35px;
  background: var(--paper);
  color: var(--ink);
  border: 0;
  border-top: 6px solid var(--accent);
}
.scheduled-date {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  min-height: 0;
  margin: 0 0 28px;
  padding: 0 0 25px;
  border-bottom: 1px solid var(--line);
  background: transparent;
  text-align: left;
}
.scheduled-date span {
  color: var(--moss);
  font-size: 11px;
  letter-spacing: .16em;
}
.scheduled-date strong {
  font-size: clamp(31px, 3vw, 42px);
  line-height: 1.13;
  letter-spacing: -.055em;
  font-weight: 600;
}
.scheduled-info {
  display: flex;
  flex-direction: column;
  align-self: stretch;
}
.scheduled-info h3 {
  font-size: clamp(31px, 3.2vw, 46px);
  line-height: 1.11;
  margin: 12px 0 15px;
  max-width: 550px;
}
.scheduled-info p { max-width: 500px; margin: 0 0 26px; }
.scheduled-actions {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}
.scheduled-actions > a:first-child { order: 2; }
.scheduled-actions .button {
  order: 1;
  min-height: 51px;
  padding: 12px 18px;
}
.scheduled-note { color: #bdd2c3; margin-top: 25px; }

@media (max-width: 900px) {
  .scheduled-heading { grid-template-columns: 1fr; gap: 20px; }
  .scheduled-heading p { max-width: 650px; }
  .scheduled-card { padding: 25px; }
  .scheduled-date strong { font-size: clamp(29px, 3.8vw, 37px); }
}
@media (max-width: 700px) {
  .scheduled-section.section { padding-top: 72px; padding-bottom: 65px; }
  .scheduled-heading { margin-bottom: 28px; }
  .scheduled-heading h2 { font-size: clamp(42px, 10vw, 56px); }
  .scheduled-heading p { font-size: 16px; }
  .scheduled-list { grid-template-columns: 1fr; gap: 15px; }
  .scheduled-card { min-height: 0; padding: 25px 23px 28px; }
  .scheduled-date { padding: 0 0 19px; margin: 0 0 23px; }
  .scheduled-date strong { font-size: clamp(30px, 8vw, 36px); }
  .scheduled-info h3 { font-size: 33px; }
  .scheduled-info p { margin-bottom: 23px; }
  .scheduled-actions { align-items: stretch; }
  .scheduled-actions .button { width: 100%; }
}

/* Independent consultancy positioning, live updates and linked credentials. */
.hero-title-alt { max-width: 1000px; }
.updates-section.section {
  max-width: none;
  padding: 92px max(4vw, 20px);
  background: var(--deep);
  color: white;
}
.updates-inner {
  max-width: 1450px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(380px, 1fr);
  gap: clamp(35px, 7vw, 105px);
  align-items: start;
}
.updates-copy { padding: 20px 0; }
.updates-copy .eyebrow { color: var(--accent); }
.updates-copy h2 {
  font-size: clamp(45px, 5.3vw, 75px);
  line-height: 1.06;
  letter-spacing: -.06em;
  margin: 0 0 25px;
  max-width: 700px;
}
.updates-copy > p {
  color: #d5e4d8;
  font-size: 18px;
  line-height: 1.57;
  max-width: 580px;
  margin: 0 0 26px;
}
.updates-copy .button { max-width: 320px; }
.updates-copy .updates-question {
  font-size: 15px;
  margin-top: 28px;
}
.updates-question a { color: white; text-underline-offset: 4px; }
.updates-feed {
  min-width: 0;
  overflow: hidden;
  background: var(--paper);
  color: var(--ink);
  padding: 24px;
  border-top: 6px solid var(--accent);
}
.updates-feed-label {
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}
.updates-feed > .twitter-timeline {
  display: block;
  padding: 32px;
  background: #e6eddf;
  color: var(--ink);
  font-weight: 700;
  font-size: 22px;
  text-decoration: none;
  border-left: 4px solid var(--accent);
}
.updates-feed > .twitter-timeline:hover { text-decoration: underline; }
.updates-fallback {
  font-size: 14px;
  line-height: 1.5;
  color: var(--muted);
  margin: 20px 0 0;
}
.updates-fallback a { text-underline-offset: 3px; }
.detail-updates-banner strong { font-size: 21px; }
.detail-updates-banner small { max-width: 390px; }

.footer-credentials {
  max-width: 1450px;
  margin: 0 auto 64px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.footer .credential {
  display: flex;
  align-items: center;
  gap: 25px;
  min-width: 0;
  min-height: 130px;
  padding: 21px 26px;
  background: var(--paper);
  color: var(--ink);
  text-decoration: none;
  margin: 0;
  border-top: 4px solid var(--accent);
}
.footer .credential:hover { background: #e8eee5; text-decoration: none; }
.credential img { display: block; width: auto; height: 75px; max-width: 145px; object-fit: contain; }
.credential:nth-child(2) img { height: 85px; }
.credential span { display: block; }
.credential strong { display: block; font-size: 18px; line-height: 1.25; }
.credential small { display: block; color: var(--muted); font-size: 13px; margin-top: 6px; }
.footer .main-site-link {
  display: inline-block;
  width: fit-content;
  border-bottom: 1px solid var(--accent);
  padding-bottom: 3px;
  font-weight: 700;
}

@media (max-width: 900px) {
  .updates-inner { grid-template-columns: 1fr; }
  .updates-feed { max-width: 680px; width: 100%; }
}
@media (max-width: 700px) {
  .updates-section.section { padding-top: 70px; padding-bottom: 70px; }
  .updates-copy { padding: 0; }
  .updates-copy h2 { font-size: clamp(42px, 10vw, 56px); }
  .updates-copy > p { font-size: 16px; }
  .updates-copy .button { max-width: none; }
  .updates-feed { padding: 18px; }
  .updates-feed > .twitter-timeline { padding: 24px; font-size: 19px; }
  .footer-credentials { grid-template-columns: 1fr; gap: 12px; margin-bottom: 52px; }
  .footer .credential { padding: 18px; gap: 18px; min-height: 105px; }
  .credential img { height: 57px; max-width: 100px; }
  .credential:nth-child(2) img { height: 68px; }
  .credential strong { font-size: 16px; }
  .credential small { font-size: 12px; }
}
