/* BJPTrailerSales.com / BJP Trailers — WCAG 2.2 AA source remediation, 2026-08-08 */
:root{--a11y-focus:#ffcf33;--a11y-focus-dark:#071a39;--a11y-link:#8f0b27;--a11y-muted:#49586c}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:124px}
body{min-width:0!important;max-width:100%;overflow-wrap:break-word}
main{min-width:0;scroll-margin-top:124px}
main:focus-visible{outline:3px solid var(--a11y-focus)!important;outline-offset:4px!important}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--a11y-focus)!important;outline-offset:3px!important;box-shadow:0 0 0 6px var(--a11y-focus-dark)!important}
:where(input,select,textarea):focus-visible{border-color:#0b2a58!important}
:where(a,button,input,select,textarea,summary){scroll-margin-block:132px}
.skip-link{z-index:10000!important;min-height:44px;display:inline-flex!important;align-items:center;text-decoration:underline;text-underline-offset:3px}
.mobile-navigation[hidden]{display:none!important}
.mega-menu{transition:opacity .22s,transform .22s!important}
.nav-group.is-open>.mega-menu[aria-hidden=false]{transition:none!important;opacity:1!important;pointer-events:auto!important;visibility:visible!important;transform:translateY(0)!important}
.mobile-toggle{min-width:48px!important;min-height:48px!important}
.mobile-menu-close{border:2px solid #0b2a58;background:#fff;color:#0b2a58;border-radius:9px;align-self:flex-end;min-width:44px;min-height:44px;padding:8px 14px;margin:0 0 8px;font:inherit;font-weight:800;cursor:pointer}
body.menu-open{overscroll-behavior:contain}
summary{min-height:44px;align-items:center}
.mobile-navigation summary{display:flex}
:where(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:44px}
:where(input[type=checkbox],input[type=radio]){width:24px!important;height:24px!important;min-width:24px;min-height:24px;accent-color:#a90722}
.consent-check{align-items:flex-start!important;gap:12px!important}
.form-status{min-height:1.5em}
.form-required-note{margin:0;color:#344054;font-size:.9rem;font-weight:700}
.form-status.is-error{color:#8a071f!important;font-weight:750}
.form-status.is-success{color:#075e45!important;font-weight:750}
main :where(p,li,dd,figcaption) a:not(.button):not([class*=button]){color:var(--a11y-link);text-decoration:underline;text-decoration-thickness:.09em;text-underline-offset:.18em}
.consent-check a{color:var(--a11y-link)!important;text-decoration:underline!important;text-decoration-thickness:.09em!important;text-underline-offset:.18em!important}
.seo-depth-panel--navy :where(h2,h3,h4,strong){color:#fff!important}
.seo-depth-panel--navy :where(p,li,span,small){color:#e2eaf6!important}
.market-v4-state-card header>div>span{color:#a90722!important;background:#f9e3e7!important}
.bjp-project-showcase-head p,.bjp-build-studio--classy .bjp-build-process small{color:#536178!important}
.market-v4-callout>span{color:#b50b29!important}
.blog-sidebar>p{color:#536178!important}
.seo-depth-table-wrap,.blog-table-wrap{max-width:100%;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
.seo-depth-table-wrap:focus-visible,.blog-table-wrap:focus-visible,.gst-trust-track:focus-visible,.bjp-project-grid:focus-visible{outline:3px solid var(--a11y-focus)!important;outline-offset:3px!important;box-shadow:0 0 0 6px var(--a11y-focus-dark)!important}
.seo-depth-table-wrap table,.blog-table-wrap table{margin:0}
.footer-column>a,.footer-refined-markets a,.footer-bottom a{min-height:32px;display:flex;align-items:center}
.market-v4-inventory-card footer a,.inventory-card-footer a,.market-v4-all-link,.text-link{min-height:28px;align-items:center}
.nav-trigger,.desktop-nav>a,.phone-pill,.nav-quote{min-height:44px}
.premium-filter,.inventory-filters button,[data-filter],[data-inventory-filter]{min-width:44px;min-height:44px}
.product-gallery__thumb,[data-gallery-thumb]{min-width:44px;min-height:44px}
.mobile-sticky-call{min-height:52px}
.a11y-motion-toggle{appearance:none;border:2px solid #0b2a58;background:#fff;color:#0b2a58;border-radius:8px;min-height:44px;padding:9px 14px;margin:0 0 14px;font:inherit;font-weight:800;cursor:pointer}
.a11y-motion-toggle[aria-pressed=true]{background:#0b2a58;color:#fff}
.customer-review-marquee.is-a11y-paused .customer-review-track{animation-play-state:paused!important}
.visually-hidden,.a11y-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){
  html{scroll-padding-top:96px;scroll-padding-bottom:76px}
  main{scroll-margin-top:96px}
  :where(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-bottom:76px}
  .shell{max-width:100%}
  :where(.market-v4-hero-grid,.market-v4-two-column,.seo-depth-shell,.seo-depth-split,.launch-cta-inner,.footer-refined-main)>*{min-width:0}
  :where(h1,h2,h3,p,li,a,strong,span){max-width:100%}
  .market-v4-state-card-grid{grid-template-columns:minmax(0,1fr)!important}
  .market-v4-state-card{min-width:0!important;width:100%!important}
  .market-v4-state-card header,.market-v4-state-card header>div{min-width:0;flex-direction:column;align-items:flex-start!important}
  .market-v4-state-card h2,.market-v4-state-card header>a{min-width:0;overflow-wrap:anywhere}
  .market-v4-hero-visual>div{max-width:calc(100% - 24px)!important;min-width:0;flex-wrap:wrap}
  .market-v4-hero-visual>div span{min-width:0;overflow-wrap:anywhere}
  .market-v4-proof>.shell{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .market-v4-proof>.shell>div,.market-v4-proof>.shell :where(strong,span){min-width:0;overflow-wrap:anywhere}
  .priority-official-resources{min-width:0;grid-template-columns:minmax(0,1fr)!important}
  .priority-official-resources>*{min-width:0}
  .priority-official-resources a{min-width:0;flex-direction:column;align-items:flex-start!important;overflow-wrap:anywhere}
  .priority-official-resources a>*{min-width:0;max-width:100%}
  .article-shell{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)!important}
  .article-shell>*{min-width:0;max-width:100%}
  .product-detail-grid{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)!important}
  .product-detail-grid>*{width:100%;min-width:0;max-width:100%}
  .product-detail-grid :where(h2,p,li,span,strong){overflow-wrap:anywhere}
  .runtime-nav-row{min-width:0;gap:12px!important}
  .runtime-nav-row>.brand{width:min(55vw,205px)!important;min-width:0;flex:0 1 auto}
  .runtime-nav-row>.button{display:none!important}
  .runtime-nav-row>.mobile-toggle{flex:0 0 48px;margin-left:auto}
  .footer-refined-markets nav{grid-template-columns:minmax(0,1fr)!important}
  .footer-refined-markets a{min-width:0;overflow-wrap:anywhere}
  .seo-depth-table-wrap,.blog-table-wrap{-webkit-overflow-scrolling:touch}
}
@media(max-width:360px){
  .shell{width:min(calc(100% - 28px),var(--shell,1320px))!important}
  .button{white-space:normal}
  .market-v4-hero h1,.page-hero h1,.blog-article-hero h1{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0ms!important}
  .customer-review-track{animation:none!important;transform:none!important}
  .customer-review-sequence--duplicate{display:none!important}
}
@media(forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}
  .button,.mobile-sticky-call,.market-v4-proof{forced-color-adjust:auto}
  .skip-link{border:2px solid CanvasText}
}

/* BJP sitewide cinematic header + native-scroll parallax refresh, 2026-08-10 */
.site-header{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  background:#fff!important;
}
.site-header.is-scrolled{background:#fff!important}
.bjp-parallax-host,.bjp-parallax-layer{--bjp-parallax-shift:0px}
.bjp-parallax-ready .bjp-parallax-layer{
  transform:translate3d(0,var(--bjp-parallax-shift),0);
  transform-origin:center;
}
.bjp-parallax-ready img.bjp-parallax-layer{
  transform:translate3d(0,var(--bjp-parallax-shift),0) scale(1.025);
}
.bjp-parallax-ready .bjp-parallax-layer.bjp-parallax-active{will-change:transform}

/* Match the approved homepage hero's type, color, and image-led balance. */
.market-v4-hero,
.page-hero,
.about-founder-hero{
  color:#fff;
  background:
    radial-gradient(circle at 74% 15%,rgba(38,101,166,.24),transparent 34%),
    linear-gradient(135deg,#06162f 0%,#092143 56%,#0d2d59 100%)!important;
}
.market-v4-hero h1,
.page-hero h1,
.about-founder-copy h1,
.product-summary h1{
  font-family:"BJP Sans",Geist,Arial,Helvetica,sans-serif!important;
  font-weight:680!important;
  letter-spacing:-.052em!important;
  line-height:.98!important;
  text-wrap:balance;
}
.market-v4-hero h1,
.page-hero h1,
.about-founder-copy h1{
  max-width:680px;
  margin:0 0 24px;
  color:#fff!important;
  font-size:clamp(2.55rem,4.15vw,4.2rem)!important;
}
.market-v4-hero-copy>p,
.page-hero .lede,
.page-hero>.shell>p,
.about-founder-lede{
  color:#cbd7e7!important;
  font-size:clamp(1rem,1.2vw,1.12rem)!important;
  line-height:1.68!important;
}
.market-v4-hero .market-v4-kicker,
.page-hero .eyebrow,
.about-founder-kicker{
  color:#ff9d8b!important;
}
.page-hero .button-outline,
.page-hero .button--outline{
  border-color:rgba(255,255,255,.56)!important;
  background:rgba(5,20,44,.22)!important;
  color:#fff!important;
}
.page-hero .button-outline:hover,
.page-hero .button--outline:hover{
  border-color:#fff!important;
  background:#fff!important;
  color:#071a39!important;
}
.page-hero{padding:28px 0 clamp(46px,5vw,66px)!important}
.page-hero .breadcrumbs{margin-bottom:clamp(24px,3vw,38px)}
body.premium-site.generic-page .page-hero::before,
body.premium-site.inventory-page .page-hero::before,
body.premium-site.state-page .page-hero.state-hero::before{
  background-color:transparent!important;
  background-image:
    radial-gradient(circle at 78% 10%,rgba(255,255,255,.12),transparent 32%),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)!important;
  background-position:center,0 0,0 0!important;
  background-size:auto,42px 42px,42px 42px!important;
}

/* City, state, and nationwide location heroes use a real three-photo mosaic. */
.market-v4-hero{padding:clamp(42px,4.4vw,62px) 0 clamp(40px,4vw,58px)!important}
.market-v4-hero-grid{
  grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr)!important;
  align-items:center!important;
  gap:clamp(38px,4.8vw,70px)!important;
}
.market-v4-hero-copy{min-width:0;max-width:650px}
.market-v4-breadcrumb{margin-bottom:24px!important}
.market-v4-hero-visual{
  min-width:0;
  min-height:0!important;
  height:clamp(425px,36vw,485px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:12px;
  overflow:visible;
}
.market-v4-hero-visual>img{
  grid-column:1;
  grid-row:1 / 3;
  width:100%!important;
  height:100%!important;
  min-width:0;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:2px!important;
  box-shadow:0 18px 45px rgba(0,7,22,.22)!important;
}
.market-v4-hero-visual>div{
  grid-column:2;
  grid-row:1;
  width:100%;
  max-width:none!important;
  min-width:0;
  min-height:0;
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start!important;
  gap:3px!important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.2);
  border-radius:2px!important;
  padding:52px 16px 15px!important;
  background:
    linear-gradient(transparent 28%,rgba(2,13,30,.92)),
    url("/inventory/8-5-24ta3-concession-food-trailer-grey-blue-vin-70673-01-640.webp") center/cover no-repeat!important;
  color:#fff!important;
  box-shadow:0 18px 45px rgba(0,7,22,.18)!important;
}
.market-v4-hero-visual>div strong{
  color:#ffab98!important;
  font-size:.78rem!important;
  font-weight:850;
  letter-spacing:.12em;
  line-height:1.2!important;
  text-transform:uppercase;
}
.market-v4-hero-visual>div span{
  color:#fff!important;
  font-size:.75rem!important;
  font-weight:760;
  line-height:1.3;
  text-shadow:0 2px 12px rgba(0,0,0,.55);
}
.market-v4-hero-visual::after{
  grid-column:2;
  grid-row:2;
  min-width:0;
  border:1px solid rgba(255,255,255,.2);
  border-radius:2px;
  background:url("/inventory/8-5-20ta3-concession-food-trailer-with-porch-blue-vin-67093-01-640.webp") center/cover no-repeat;
  box-shadow:0 18px 45px rgba(0,7,22,.18);
  content:"";
}

/* Former narrow/blank-right mastheads now share the same media hierarchy. */
.bjp-inner-hero-shell,
.page-hero>.shell:has(>.narrow-hero){
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);
  grid-template-areas:
    "breadcrumb breadcrumb"
    "copy media";
  align-items:center;
  column-gap:clamp(38px,4.8vw,70px);
  row-gap:24px;
}
.bjp-inner-hero-shell>.breadcrumbs,
.page-hero>.shell:has(>.narrow-hero)>.breadcrumbs{
  grid-area:breadcrumb;
  margin-bottom:0;
}
.bjp-inner-hero-shell>.narrow-hero,
.page-hero>.shell:has(>.narrow-hero)>.narrow-hero{
  grid-area:copy;
  min-width:0;
  max-width:650px!important;
}
.bjp-inner-hero-shell::after,
.page-hero>.shell:has(>.narrow-hero)::after{
  grid-area:media;
  height:clamp(410px,34vw,475px);
  min-width:0;
  border:1px solid rgba(255,255,255,.2);
  border-radius:3px;
  background-color:#12335e;
  background-image:
    url("/assets/bjp-concession-hero-1100.webp"),
    url("/inventory/7-12sa3-concession-food-trailer-wood-grain-01-640.webp"),
    url("/inventory/8-5-14ta-water-blue-concession-trailer-71905-01-640.webp");
  background-position:left center,right top,right bottom;
  background-repeat:no-repeat;
  background-size:
    calc(62% - 6px) 100%,
    calc(38% - 6px) calc(50% - 6px),
    calc(38% - 6px) calc(50% - 6px);
  box-shadow:0 24px 60px rgba(0,7,22,.28);
  content:"";
  transform:translate3d(0,var(--bjp-parallax-shift),0);
}
.bjp-inner-hero-shell.bjp-parallax-active::after{will-change:transform}

/* Existing two-column mastheads keep their proof copy, now over real imagery. */
.page-hero .page-hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(430px,1.18fr)!important;
  align-items:center!important;
  gap:clamp(38px,4.8vw,70px)!important;
}
.page-hero .hero-note,
.page-hero .concept-hero-card{
  min-height:390px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:3px!important;
  padding:clamp(24px,3vw,34px)!important;
  background-color:#0a2348!important;
  background-image:
    linear-gradient(180deg,rgba(3,15,34,.08) 20%,rgba(3,15,34,.94) 88%),
    url("/assets/bjp-concession-hero-1100.webp")!important;
  background-position:center,center calc(50% + var(--bjp-parallax-shift))!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  box-shadow:0 24px 60px rgba(0,7,22,.28)!important;
  color:#fff!important;
}
.page-hero .hero-note :where(strong,p),
.page-hero .concept-hero-card :where(span,strong,p){color:#fff!important}

/* Keep the founder's real photo while bringing the scale in line with home. */
.about-founder-grid{
  grid-template-columns:minmax(0,.8fr) minmax(470px,1.2fr)!important;
  gap:clamp(38px,4.8vw,70px)!important;
}
.about-founder-photo{min-width:0}
.product-summary h1{
  font-size:clamp(2.25rem,3.5vw,3.55rem)!important;
}

/* The sitemap and 404 receive image-led treatments without changing markup. */
.bjp-single-market-hero{
  background-image:
    linear-gradient(90deg,#06162f 0%,#092143 47%,rgba(9,33,67,.9) 58%,rgba(9,33,67,.24) 100%),
    url("/assets/bjp-concession-hero-1100.webp")!important;
  background-position:center,right calc(50% + var(--bjp-parallax-shift))!important;
  background-repeat:no-repeat!important;
  background-size:cover,58% auto!important;
}
.bjp-single-market-hero>.market-v4-hero-copy{max-width:650px;margin-left:max(24px,calc((100vw - var(--shell,1320px))/2))!important}
.page-hero.error-page>.shell{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);
  gap:12px clamp(38px,4.8vw,70px);
  align-items:center;
}
.page-hero.error-page>.shell>*{grid-column:1;min-width:0}
.page-hero.error-page>.shell::after{
  grid-column:2;
  grid-row:1 / 5;
  align-self:stretch;
  min-height:410px;
  border:1px solid rgba(255,255,255,.2);
  background:
    url("/assets/bjp-concession-hero-1100.webp") center/cover no-repeat;
  content:"";
  transform:translate3d(0,var(--bjp-parallax-shift),0);
  box-shadow:0 24px 60px rgba(0,7,22,.28);
}
.page-hero.error-page h1,.page-hero.error-page p{max-width:620px;color:#fff!important}

@media(max-width:1180px){
  .market-v4-hero-grid,
  .bjp-inner-hero-shell,
  .page-hero>.shell:has(>.narrow-hero),
  .page-hero.error-page>.shell{
    grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr)!important;
  }
  .page-hero .page-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr)!important}
  .about-founder-grid{grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr)!important}
}
@media(max-width:1040px){
  .market-v4-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:34px!important;
  }
  .market-v4-hero-copy{max-width:790px}
  .market-v4-hero-visual{width:100%;height:clamp(400px,62vw,520px)!important}
  .bjp-inner-hero-shell,
  .page-hero>.shell:has(>.narrow-hero){
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"breadcrumb" "copy" "media";
    gap:26px!important;
  }
  .bjp-inner-hero-shell::after,
  .page-hero>.shell:has(>.narrow-hero)::after{width:100%;height:clamp(390px,62vw,510px)}
  .page-hero .page-hero-grid,
  .about-founder-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:32px!important;
  }
  .page-hero .hero-note,.page-hero .concept-hero-card{min-height:360px}
  .page-hero.error-page>.shell{grid-template-columns:minmax(0,1fr)!important}
  .page-hero.error-page>.shell>*{grid-column:1}
  .page-hero.error-page>.shell::after{grid-column:1;grid-row:5;min-height:360px;margin-top:22px}
}
@media(max-width:760px){
  .market-v4-hero,.page-hero,.about-founder-hero{padding-top:32px!important;padding-bottom:42px!important}
  .market-v4-hero h1,.page-hero h1,.about-founder-copy h1{
    font-size:clamp(2.25rem,11.5vw,3.35rem)!important;
    line-height:1!important;
    overflow-wrap:anywhere;
  }
  .market-v4-hero-visual{
    height:clamp(330px,112vw,440px)!important;
    grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
    gap:8px;
  }
  .market-v4-hero-visual>div{padding:42px 11px 11px!important}
  .market-v4-hero-visual>div span{font-size:.68rem!important}
  .bjp-inner-hero-shell::after,
  .page-hero>.shell:has(>.narrow-hero)::after{
    height:clamp(300px,94vw,390px);
    background-size:
      calc(62% - 4px) 100%,
      calc(38% - 4px) calc(50% - 4px),
      calc(38% - 4px) calc(50% - 4px);
  }
  .page-hero .hero-note,.page-hero .concept-hero-card{min-height:320px}
  .about-founder-photo{width:100%}
  .bjp-single-market-hero{
    background-image:
      linear-gradient(90deg,rgba(6,22,47,.97),rgba(9,33,67,.87)),
      url("/assets/bjp-concession-hero-1100.webp")!important;
    background-position:center,center calc(50% + var(--bjp-parallax-shift))!important;
    background-size:cover!important;
  }
  .bjp-single-market-hero>.market-v4-hero-copy{max-width:none;margin-inline:auto!important}
  .page-hero.error-page>.shell::after{min-height:300px}
}
@media(prefers-reduced-motion:reduce){
  .bjp-parallax-layer,
  img.bjp-parallax-layer,
  .bjp-inner-hero-shell::after,
  .page-hero>.shell:has(>.narrow-hero)::after,
  .page-hero.error-page>.shell::after{
    transform:none!important;
    will-change:auto!important;
  }
  .bjp-parallax-host,.bjp-parallax-layer{--bjp-parallax-shift:0px!important}
}
