/* Bus World Fleet introduction — mirrors the homepage editorial About typography and spacing. */
.bw-fleet-intro{
  --bw-fi-accent:#F30101;
  position:relative;
  width:100%;
  min-height:clamp(var(--bw-fi-min,420px),var(--bw-fi-target,52vh),var(--bw-fi-max,560px));
  padding:var(--bw-fi-pt,60px) 0 var(--bw-fi-pb,60px);
  overflow:hidden;
  background:#fff;
  color:#000;
  border-top:1px solid rgba(0,0,0,.045);
}

.bw-fleet-intro,
.bw-fleet-intro *{box-sizing:border-box}

.bw-fleet-intro__container{
  /* Width is intentionally inherited from the shared .bw-shell theme container. */
  min-height:calc(clamp(var(--bw-fi-min,420px),var(--bw-fi-target,52vh),var(--bw-fi-max,560px)) - var(--bw-fi-pt,60px) - var(--bw-fi-pb,60px));
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.94fr);
  gap:clamp(60px,7vw,112px);
  align-items:center;
}

.bw-fleet-intro__left,
.bw-fleet-intro__right{min-width:0}

.bw-fleet-intro__left{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding-right:clamp(18px,2vw,34px);
}

.bw-fleet-intro__eyebrow-row{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:18px;
  margin:0;
  color:var(--bw-fi-accent);
  font-family:var(--font-interface,"TeX Gyre Adventor","Avenir Next",Avenir,Arial,sans-serif);
  font-size:clamp(10px,.78vw,13px);
  font-weight:700;
  line-height:1.3;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.bw-fleet-intro__number{font-variant-numeric:tabular-nums}
.bw-fleet-intro__number,
.bw-fleet-intro__eyebrow{white-space:nowrap}

.bw-fleet-intro__eyebrow-line{
  width:18px;
  height:1px;
  flex:0 0 18px;
  background:var(--bw-fi-accent);
}

.bw-fleet-intro__title{
  max-width:720px;
  margin:clamp(28px,3vw,46px) 0 0;
  color:#000;
  font-family:var(--font-display,"Cormorant Garamond",Baskerville,"Iowan Old Style",Georgia,serif);
  font-size:clamp(46px,4.25vw,68px);
  font-weight:600;
  line-height:.98;
  letter-spacing:-.035em;
  text-wrap:balance;
}

.bw-fleet-intro__title>span{display:block}
.bw-fleet-intro__accent{color:var(--bw-fi-accent)}

.bw-fleet-intro__title-line{
  display:block;
  width:38px;
  height:2px;
  margin-top:27px;
  background:var(--bw-fi-accent);
}

.bw-fleet-intro__left-paragraph{
  max-width:670px;
  margin:clamp(25px,2.7vw,40px) 0 0;
  padding:0;
  color:rgba(0,0,0,.78);
  font-family:var(--font-interface,"TeX Gyre Adventor","Avenir Next",Avenir,Arial,sans-serif);
  font-size:clamp(14px,1.05vw,17px);
  font-weight:400;
  line-height:1.62;
}

.bw-fleet-intro__right{
  position:relative;
  display:flex;
  min-height:100%;
  flex-direction:column;
  justify-content:center;
}

.bw-fleet-intro__right--divider{
  padding-left:clamp(60px,7vw,112px);
  margin-left:calc(clamp(60px,7vw,112px) * -1);
}

.bw-fleet-intro__right--divider::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:1px;
  background:rgba(0,0,0,.13);
}

.bw-fleet-intro__right-copy{
  display:grid;
  gap:clamp(20px,2vw,30px);
  max-width:670px;
}

.bw-fleet-intro__right-paragraph{
  max-width:670px;
  margin:0;
  color:rgba(0,0,0,.84);
  font-family:var(--font-interface,"TeX Gyre Adventor","Avenir Next",Avenir,Arial,sans-serif);
  font-size:clamp(15px,1.18vw,19px);
  font-weight:400;
  line-height:1.55;
}

.bw-fleet-intro__right-paragraph+.bw-fleet-intro__right-paragraph{margin-top:0}

.bw-fleet-intro__cta{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:18px;
  margin-top:clamp(42px,5vw,76px);
  padding:0 0 12px;
  border-bottom:1px solid var(--bw-fi-accent);
  color:var(--bw-fi-accent);
  font-family:var(--font-interface,"TeX Gyre Adventor","Avenir Next",Avenir,Arial,sans-serif);
  font-size:clamp(12px,.95vw,15px);
  font-weight:700;
  line-height:1.2;
  letter-spacing:.1em;
  text-decoration:none;
  text-transform:uppercase;
}

.bw-fleet-intro__cta-arrow{
  display:inline-block;
  font-size:1.35em;
  line-height:1;
  transition:transform 180ms ease;
}
.bw-fleet-intro__cta:hover .bw-fleet-intro__cta-arrow{transform:translateX(4px)}
.bw-fleet-intro__cta:focus-visible{outline:3px solid var(--bw-fi-accent);outline-offset:5px}

.bw-fleet-intro--align-center .bw-fleet-intro__left,
.bw-fleet-intro--align-center .bw-fleet-intro__right{text-align:center;align-items:center}
.bw-fleet-intro--align-center .bw-fleet-intro__left-paragraph,
.bw-fleet-intro--align-center .bw-fleet-intro__right-copy{margin-left:auto;margin-right:auto}
.bw-fleet-intro--align-center .bw-fleet-intro__cta{align-self:center}

@media (max-width:1199px){
  .bw-fleet-intro__container{gap:48px}
  .bw-fleet-intro__right--divider{padding-left:48px;margin-left:-48px}
  .bw-fleet-intro__title{font-size:clamp(42px,5vw,58px)}
}

@media (max-width:900px){
  .bw-fleet-intro{
    min-height:0;
    padding:var(--bw-fi-tpt,54px) 0 var(--bw-fi-tpb,54px);
  }
  .bw-fleet-intro__container{
    min-height:0;
    grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
    gap:38px;
  }
  .bw-fleet-intro__right--divider{padding-left:38px;margin-left:-38px}
  .bw-fleet-intro__title{font-size:clamp(38px,5.6vw,50px)}
  .bw-fleet-intro__right-paragraph{font-size:15px}
}

@media (max-width:767px){
  .bw-fleet-intro{padding:var(--bw-fi-mpt,46px) 0 var(--bw-fi-mpb,46px)}
  .bw-fleet-intro__container{display:block}
  .bw-fleet-intro__left{padding-right:0}
  .bw-fleet-intro__title{max-width:620px;font-size:clamp(36px,10.8vw,48px);line-height:1}
  .bw-fleet-intro__left-paragraph{font-size:15px}
  .bw-fleet-intro__right,
  .bw-fleet-intro__right--divider{
    margin:40px 0 0;
    padding:36px 0 0;
    border-top:1px solid rgba(0,0,0,.12);
  }
  .bw-fleet-intro__right--divider::before{display:none}
  .bw-fleet-intro__right-copy{gap:20px}
  .bw-fleet-intro__right-paragraph{font-size:15px;line-height:1.62}
  .bw-fleet-intro__cta{margin-top:34px}
}

@media (max-width:430px){
  .bw-fleet-intro__eyebrow-row{gap:8px;font-size:10px;letter-spacing:.1em}
  .bw-fleet-intro__eyebrow{white-space:normal}
  .bw-fleet-intro__title{font-size:clamp(34px,11.5vw,43px)}
  .bw-fleet-intro__cta{font-size:12px;white-space:normal}
}

@media (prefers-reduced-motion:reduce){
  .bw-fleet-intro__cta-arrow{transition:none!important}
  .bw-fleet-intro__cta:hover .bw-fleet-intro__cta-arrow{transform:none}
}
