/* Shared photo dimensions keep page titles from determining image height. */
:root{--hero-height:280px;--hero-mobile-height:180px}
.page-hero.migration-hero{
  height:var(--hero-height);min-height:0;padding:24px 0;display:flex;align-items:center;
}
.page-hero.migration-hero>img,.page-hero.migration-hero>picture{position:absolute;inset:0;width:100%;height:100%;opacity:1;object-fit:cover}
.page-hero.migration-hero>picture img{height:100%;object-fit:cover}
.page-hero.migration-hero::after{background:var(--photo-hero-overlay)}
.page-hero.migration-hero>.container{padding-block:0}
.page-hero.migration-hero h1{font-size:clamp(26px,2.6vw,38px);line-height:1.18;max-width:27ch;overflow-wrap:normal}
.page-hero.migration-hero .breadcrumb{margin-bottom:16px}
.page-hero.migration-hero .actions{margin-top:18px}
.page-hero.migration-hero .actions .button{margin-top:0}
.page-hero.about-hero>img{object-position:75% center}
.page-hero.about-hero h1{width:min(45vw,600px);max-width:600px}
.page-hero.about-hero::after{background:linear-gradient(90deg,#080e15 0%,#080e15ed 27%,#080e1570 46%,transparent 65%)}
.migration-detail .migration-hero h1{font-size:clamp(26px,2.2vw,32px);max-width:36ch}
/* Green Mobility's long source title flows below its branded photo. */
.page-hero.migration-mobility-hero{display:block;height:auto;padding:var(--hero-height) 0 0}
.page-hero.migration-mobility-hero>img,.page-hero.migration-mobility-hero>picture{height:var(--hero-height)}
.page-hero.migration-mobility-hero>.container{padding-block:24px 32px}
.page-hero.migration-mobility-hero h1{max-width:36ch}

/* The accepted light editorial band, with the dealer's unchanged wording. */
.about-story-band{background:#f2f1ed;color:#111820;color-scheme:light}
.about-story-band .about-story{
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;
  padding-block:46px;border:0;
}
.about-story-band h2{font-size:clamp(26px,2.6vw,38px);line-height:1.2;max-width:18ch;overflow-wrap:normal;text-wrap:initial}
.about-story-band .about-story-copy p{font-size:16px;line-height:1.65;max-width:70ch;color:#303943;letter-spacing:0}
.about-story-band .about-story-copy p+p{margin-top:24px}
.about-team{padding-block:38px 44px}
.about-team .about-team-intro{display:block;margin-bottom:24px}
.about-team .about-team-intro h2{font-size:30px}
.about-team .about-team-intro p{margin-top:12px;font-size:15px}
.about-team .team-directory{gap:0 44px}
.about-team .team-contact{
  display:grid;grid-template-columns:minmax(140px,.7fr) minmax(0,1.3fr);align-items:center;
  gap:20px;min-height:100px;padding:20px 0;border-top:0;border-bottom:1px solid var(--line);
}
.about-team .team-contact h3{font-family:Roboto,'Segoe UI',sans-serif;font-size:20px;letter-spacing:0}
.about-team .team-contact p{font-size:14px;margin-top:6px}
.about-team .team-contact-links{gap:6px}
.about-team .team-contact-links a{width:100%;min-height:44px;gap:12px;text-decoration:none;font-size:13px}
.about-team .team-contact-links a>span{min-width:0;overflow-wrap:anywhere}
.about-team .team-contact-links a>.icon:first-child{width:21px;height:21px}
.about-team .team-contact-links a>.icon:last-child{color:var(--red);margin-left:auto}
.about-team .team-contact-links a:hover span{text-decoration:underline}
body:has(.about-story-band) .site-footer::before{display:none}

@media(max-width:1100px){
  .about-story-band .about-story{gap:36px}
  .about-team .team-contact{grid-template-columns:1fr;gap:8px;align-items:start}
}
@media(max-width:800px){
  /* Photos remain 180px. Longer titles and buttons flow below, never over them. */
  .page-hero.migration-hero{height:auto;min-height:0;padding:var(--hero-mobile-height) 0 0;display:block;background:var(--bg)}
  .page-hero.migration-hero>img,.page-hero.migration-hero>picture{height:var(--hero-mobile-height);bottom:auto}
  .page-hero.migration-hero>picture img{height:100%}
  .page-hero.migration-hero::after{height:var(--hero-mobile-height);bottom:auto;background:linear-gradient(0deg,#080e1530,transparent 40%)}
  .page-hero.migration-hero>.container{padding-block:24px 28px}
  .page-hero.migration-hero h1{font-size:clamp(25px,5vw,32px);max-width:30ch}
  .page-hero.migration-hero .actions{flex-direction:row;flex-wrap:wrap;gap:12px}
  .page-hero.migration-hero .page-image-caption{top:145px;bottom:auto;font-size:10px}
  .page-hero.about-hero>img{object-position:75% center}
  .page-hero.about-hero h1{width:auto;max-width:30ch}
  .about-story-band .about-story{grid-template-columns:1fr;gap:22px;padding-block:32px}
  .about-story-band h2{font-size:28px;max-width:24ch}
  .about-team{padding-block:30px 36px}
  .about-team .about-team-intro h2{font-size:27px}
  .about-team .team-directory{gap:0 28px}
}
@media(max-width:600px){
  .about-team .team-directory{grid-template-columns:1fr}
  .about-team .team-contact{grid-template-columns:1fr;gap:10px;padding-block:18px;min-height:0}
  .about-team .team-contact-links a{width:fit-content;max-width:100%;font-size:14px}
}
