/* Shared two-level and three-level vehicle navigation */
.vehicles-nav{display:block}
.vehicles-nav-head{display:flex;align-items:center;gap:3px}
.vehicles-nav-link{display:inline-flex;align-items:center;padding:12px 0;color:var(--ink);font-weight:700}
.vehicles-nav-link:hover,.vehicles-nav-link:focus-visible{color:#a95e2d}
.vehicles-nav-trigger{display:inline-flex;align-items:center;justify-content:center;width:25px;min-height:42px;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;padding:0}
.vehicles-nav-trigger span{font-size:17px;line-height:1;transition:transform .2s}
.vehicles-nav-trigger[aria-expanded="true"]{color:#a95e2d}
.vehicles-nav-trigger[aria-expanded="true"] span{transform:rotate(180deg)}
.vehicles-mega[hidden],.vehicle-hierarchy-panel[hidden],.vehicle-hierarchy-mobile-panel[hidden],.product-gallery-thumb[hidden]{display:none!important}
.vehicles-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(910px,calc(100vw - 44px));background:#fff;border:1px solid #d8e1e4;border-top:3px solid #17394c;box-shadow:0 24px 48px rgba(10,29,40,.22);z-index:50}
.vehicles-mega-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 25px;border-bottom:1px solid #e3e8e9;background:#f8faf9}
.vehicles-mega-top strong{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#183a4c}
.vehicles-mega-top a{font-size:12px;color:#a75d2b;font-weight:700}
.vehicle-hierarchy{display:grid;grid-template-columns:minmax(220px,38%) minmax(0,1fr);background:#fff;border:1px solid #dbe3e5;box-shadow:0 15px 34px rgba(9,40,57,.07)}
.vehicles-mega .vehicle-hierarchy{border:0;box-shadow:none}
.vehicle-hierarchy-tabs{border-right:1px solid #dce4e6;background:#f9fbfa}
.vehicle-hierarchy-tab{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;min-height:45px;padding:0;text-align:left;border:0;border-bottom:1px solid #e0e6e8;border-right:3px solid transparent;background:transparent;color:#244456;font-size:13px;font-weight:700;line-height:1.35;cursor:pointer}
.vehicle-hierarchy-tab:hover:not(.is-active){background:#edf3f4;color:#102e40}
.vehicle-hierarchy-tab.is-active{background:#17394c;color:#fff;border-right-color:#d77b46;box-shadow:inset 4px 0 #d77b46}
.vehicle-hierarchy-tab.is-active .vehicle-hierarchy-arrow{color:#fff}
.vehicle-hierarchy-category-link{display:flex;align-items:center;flex:1;min-width:0;align-self:stretch;padding:10px 0 10px 20px;color:inherit}
.vehicle-hierarchy-category-link:hover,.vehicle-hierarchy-category-link:focus-visible{color:inherit;text-decoration:underline;text-underline-offset:3px}
.vehicle-hierarchy-switch{display:grid;place-items:center;flex:none;align-self:stretch;width:48px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.vehicle-hierarchy-switch:hover,.vehicle-hierarchy-switch:focus-visible{background:rgba(23,57,76,.1);outline:2px solid #ca794a;outline-offset:-2px}
.vehicle-hierarchy-tab.is-active .vehicle-hierarchy-switch:hover,.vehicle-hierarchy-tab.is-active .vehicle-hierarchy-switch:focus-visible{background:rgba(255,255,255,.14)}
.vehicle-hierarchy-arrow{font-size:21px;font-weight:400;color:#ae6737;line-height:1}
.vehicle-hierarchy-panels{min-width:0}
.vehicle-hierarchy-mobile-panel{display:none}
.vehicle-hierarchy-panel{padding:25px 30px 31px}
.vehicle-hierarchy-panel-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.vehicle-hierarchy-panel-top .eyebrow{margin:0}
.vehicle-hierarchy-panel-top a{font-size:12px;font-weight:700;color:#ad6331;white-space:nowrap}
.vehicle-hierarchy-panel h3{font-size:clamp(24px,2.6vw,33px);line-height:1.08;margin:22px 0 16px;color:#17384a}
.vehicle-hierarchy-description{font-size:13px;line-height:1.7;color:#5b6c74;margin-bottom:18px}
.vehicle-hierarchy-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.vehicle-hierarchy-links li{min-width:0;margin:0}
.vehicle-third-link{display:flex;align-items:center;gap:10px;min-height:50px;width:100%;padding:11px 14px;background:#f7faf9;border:1px solid #dce5e7;color:#244456;font-size:13px;font-weight:700;line-height:1.4;transition:background .18s,border-color .18s,color .18s}
.vehicle-third-link:hover,.vehicle-third-link:focus-visible{background:#e8f0f2;border-color:#89acbc;color:#102e40}
.vehicle-third-link.is-current{background:#fff0e7;border-color:#ca794a;color:#8a431f;box-shadow:inset 3px 0 #ca794a}
.vehicle-third-dot{flex:none;font-size:16px;color:#b86431}
.vehicle-third-label{min-width:0}
.vehicle-hierarchy-link-arrow{margin-left:auto;flex:none;color:#ae6737}
.vehicle-third-link.is-current .vehicle-hierarchy-link-arrow{color:#8a431f}
.vehicle-hierarchy-direct{margin-top:22px}
.catalog-section>.wrap>.vehicle-hierarchy{margin-top:26px}
.vehicle-subcategory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:26px 0 0}
.vehicle-subcategory-card{display:flex;flex-direction:column;min-height:205px;padding:24px;background:#fff;border:1px solid #dce4e6;box-shadow:0 12px 30px rgba(9,40,57,.05);transition:transform .2s,border-color .2s}
.vehicle-subcategory-card:hover{transform:translateY(-3px);border-color:#b96c35}
.vehicle-subcategory-card .eyebrow{margin-bottom:16px}
.vehicle-subcategory-card strong{font-family:'Barlow Condensed',Impact,sans-serif;color:#16384a;font-size:29px;line-height:1.1}
.vehicle-subcategory-description{font-size:13px;line-height:1.6;color:#65747a;margin:13px 0}
.vehicle-subcategory-link{margin-top:auto;padding-top:18px;color:#a75d2b;font-size:12px;font-weight:700}

/* Product detail page */
.product-hero{background:radial-gradient(circle at 75% 15%,#21516a 0%,#102d40 49%,#0d2535 100%);color:#fff;padding:32px 0 70px}
.product-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:#b8cad2;font-size:12px;line-height:1.5;margin:0 0 45px}
.product-breadcrumb a:hover{color:#fff;text-decoration:underline}
.product-breadcrumb span{color:#e49461}
.product-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:52px}
.product-hero-copy h1{font-size:clamp(2.7rem,4.6vw,5rem);line-height:1.03;letter-spacing:-.035em;margin:0 0 22px;max-width:850px}
.product-lead{font-size:clamp(15px,1.4vw,18px);line-height:1.75;color:#dfebef;max-width:680px;margin-bottom:30px}
.product-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px}
.product-hero-secondary{font-size:13px;font-weight:700;color:#fff;border-bottom:1px solid #90aab9;padding:10px 0}
.product-hero-secondary span{margin-left:14px}
.product-gallery{min-width:0}
.product-gallery-main{margin:0;background:#fff;padding:12px;box-shadow:0 25px 45px rgba(0,0,0,.2)}
.product-gallery-main img{display:block;width:100%;height:375px;object-fit:contain}
.product-gallery-main figcaption{display:flex;justify-content:space-between;gap:12px;min-height:20px;padding:8px 2px 0;color:#60727c;font-size:11px;line-height:1.3}
.product-gallery-main [data-gallery-counter]{margin-left:auto;white-space:nowrap}
.product-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 9px;color:#d8e6ed;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.product-gallery-controls>div{display:flex;gap:6px}
.product-gallery-controls button{width:30px;height:30px;border:1px solid #78909c;background:transparent;color:#fff;font-size:23px;line-height:1;cursor:pointer}
.product-gallery-controls button:hover,.product-gallery-controls button:focus-visible{background:#c9703a;border-color:#c9703a}
.product-gallery-controls button:disabled{opacity:.35;cursor:default}
.product-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.product-gallery-thumb{padding:3px;border:2px solid transparent;background:#fff;cursor:pointer;min-width:0}
.product-gallery-thumb.is-active{border-color:#d9814b}
.product-gallery-thumb img{width:100%;height:66px;object-fit:contain}
.product-gallery-active .product-body-copy .photo-grid,.product-gallery-active .product-body-copy h2:has(+ .photo-grid){display:none}
.product-content{background:#f0f3f3;padding:70px 0 90px}
.product-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:32px}
.product-body-copy{max-width:none;min-width:0;background:#fff;padding:44px 48px;box-shadow:0 16px 40px rgba(15,47,63,.06)}
.product-body-copy h2:first-child{margin-top:0}
.product-body-copy h2{font-size:clamp(26px,2.5vw,36px);border-bottom:1px solid #dce5e7;padding-bottom:12px;margin:40px 0 18px}
.product-body-copy h3{font-size:25px}
.product-body-copy p,.product-body-copy li{font-size:15px;line-height:1.8}
.product-body-copy .photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:23px 0 40px}
.product-body-copy .photo-grid figure{margin:0;border:1px solid #e0e7e9;background:#f8faf9;overflow:hidden}
.product-body-copy .photo-grid figure:first-child{grid-column:span 2}
.product-body-copy .photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
.product-body-copy .photo-grid figure:first-child img{aspect-ratio:8/3}
.product-body-copy .photo-grid figcaption{padding:9px 12px;color:#5e727c;font-size:12px;line-height:1.4}
.product-body-copy table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:20px 0 18px;background:#fff}
.product-body-copy th,.product-body-copy td{padding:13px 15px;border:1px solid #dbe4e7;vertical-align:top;text-align:left;font-size:14px;line-height:1.55}
.product-body-copy thead th{background:#12394e;color:#fff;font-weight:700}
.product-body-copy tbody tr:nth-child(even){background:#f7faf9}
.product-body-copy details{background:#f8faf9;border:1px solid #dfe7e8;margin:0 0 10px;padding:17px 20px}
.product-body-copy summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;color:#16384a;font-weight:700;list-style:none}
.product-body-copy summary::-webkit-details-marker{display:none}
.product-body-copy summary:after{content:'+';font-size:21px;line-height:1;color:#b96c35}
.product-body-copy details[open] summary:after{content:'−'}
.product-body-copy details p{margin:13px 0 0}
.product-aside{position:sticky;top:24px}
.product-fact-card{background:#fff;border-top:4px solid #c9703a;padding:29px 27px;box-shadow:0 16px 40px rgba(15,47,63,.08)}
.product-fact-card h2{font-size:32px;line-height:1.05;text-transform:uppercase;color:#17384a;margin:0 0 22px}
.product-fact-card dl{margin:0;border-top:1px solid #e0e7e9}
.product-fact-card dl>div{padding:12px 0;border-bottom:1px solid #e0e7e9}
.product-fact-card dt{color:#62747d;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px}
.product-fact-card dd{margin:0;color:#17384a;font-size:14px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.product-fact-note{color:#687a82;font-size:12px;line-height:1.65;margin:20px 0}
.product-fact-link{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;background:#17394c;color:#fff;font-size:12px;font-weight:700}
.product-fact-link:hover{background:#b86431}

@media(max-width:1000px){
  .product-hero-grid{gap:32px}
  .product-content-grid{grid-template-columns:minmax(0,1fr) 260px;gap:20px}
  .product-body-copy{padding:34px}
}
@media(max-width:760px){
  .vehicle-subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-nav.open{max-height:calc(100vh - 70px);overflow-y:auto}
  .vehicles-nav{display:block;width:100%}
  .vehicles-nav-head{justify-content:space-between}
  .vehicles-nav-link{flex:1;padding:13px 10px}
  .vehicles-nav-trigger{width:44px;min-height:44px;padding:10px}
  .vehicles-mega{position:static;transform:none;width:100%;box-shadow:none;border:1px solid #dce4e6;border-top:3px solid #17394c;margin:2px 0 12px}
  .vehicles-mega-top{padding:14px 16px}
  .vehicle-hierarchy{grid-template-columns:1fr}
  .vehicle-hierarchy-tabs{border-right:0}
  .vehicle-hierarchy-item{border-bottom:1px solid #dce4e6}
  .vehicle-hierarchy-tab{min-height:48px;padding:0;border-bottom:0}
  .vehicle-hierarchy-category-link{padding:11px 17px}
  .vehicle-hierarchy-switch{width:52px}
  .vehicle-hierarchy-tab.is-active{border-right-color:transparent;border-left:3px solid #d77b46;box-shadow:none}
  .vehicle-hierarchy-tab.is-active .vehicle-hierarchy-arrow{transform:rotate(90deg)}
  .vehicle-hierarchy-panels{display:none}
  .vehicle-hierarchy-mobile-panel:not([hidden]){display:block;padding:0 18px 14px 20px;background:#fff}
  .vehicle-hierarchy-mobile-panel a{display:flex;justify-content:space-between;gap:12px;padding:10px 0;color:#244456;font-size:12px;line-height:1.4}
  .vehicle-hierarchy-mobile-panel a:hover{color:#b86431}
  .vehicle-hierarchy-mobile-parent{font-weight:700;color:#a75d2b!important}
  .vehicle-hierarchy-mobile-parent.is-current{background:#fff0e7;padding-left:10px;border-left:3px solid #ca794a}
  .vehicle-hierarchy-mobile-panel ul{list-style:none;display:grid;gap:7px;padding:0;margin:4px 0 0}
  .vehicle-hierarchy-mobile-panel li{margin:0}
  .vehicle-hierarchy-mobile-panel .vehicle-third-link{justify-content:flex-start;gap:10px;min-height:48px;padding:10px 12px;color:#244456;font-size:12px}
  .vehicle-hierarchy-mobile-panel .vehicle-third-link.is-current{color:#8a431f}
  .product-hero{padding:25px 0 44px}
  .product-breadcrumb{margin-bottom:27px}
  .product-hero-grid,.product-content-grid{grid-template-columns:1fr}
  .product-hero-copy h1{font-size:clamp(2.35rem,7.4vw,3.6rem)}
  .product-gallery{max-width:620px}
  .product-gallery-main img{height:330px}
  .product-content{padding:42px 0 62px}
  .product-aside{position:static;grid-row:1}
  .product-fact-card{padding:23px}
  .product-fact-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
  .product-body-copy{padding:28px}
  .product-body-copy .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .vehicle-subcategory-grid{grid-template-columns:1fr}
  .vehicles-mega-top{align-items:start;flex-direction:column;gap:8px}
  .product-hero-copy h1{font-size:clamp(2.15rem,9vw,2.8rem)}
  .product-lead{font-size:15px}
  .product-gallery-main img{height:260px}
  .product-gallery-thumbs{gap:4px}
  .product-gallery-thumb img{height:47px}
  .product-hero-actions{gap:14px}
  .product-content{padding-top:25px}
  .product-body-copy{padding:22px 18px}
  .product-body-copy .photo-grid{grid-template-columns:1fr}
  .product-body-copy .photo-grid figure:first-child{grid-column:auto}
  .product-body-copy .photo-grid figure:first-child img{aspect-ratio:4/3}
  .product-fact-card dl{grid-template-columns:1fr}
}

/* Desktop menu: second-level categories across the top, third-level links below. */
@media(min-width:761px){
  .vehicles-mega{width:min(1090px,calc(100vw - 36px))}
  .vehicles-mega .vehicle-hierarchy{display:block}
  .vehicles-mega .vehicle-hierarchy-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-right:0;border-bottom:1px solid #dce4e6;background:#f8faf9}
  .vehicles-mega .vehicle-hierarchy-item{min-width:0}
  .vehicles-mega .vehicle-hierarchy-tab{min-height:51px;height:100%;padding:0;border-right:0;border-left:3px solid transparent;font-size:12px}
  .vehicles-mega .vehicle-hierarchy-tab:hover:not(.is-active){background:#e8eff1;border-left-color:#c9703a}
  .vehicles-mega .vehicle-hierarchy-tab.is-active{background:#17394c;color:#fff;border-left-color:transparent;border-right-color:transparent;box-shadow:inset 0 4px #d77b46}
  .vehicles-mega .vehicle-hierarchy-panels{min-height:195px}
  .vehicles-mega .vehicle-hierarchy-panel{padding:20px 28px 27px}
  .vehicles-mega .vehicle-hierarchy-panel h3{margin:12px 0 15px;font-size:29px}
  .vehicles-mega .vehicle-hierarchy-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
}
@media(min-width:761px) and (max-width:950px){
  .vehicles-mega .vehicle-hierarchy-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vehicles-mega .vehicle-hierarchy-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* The global Vehicles menu links directly to second-level categories. */
.vehicles-mega .vehicle-hierarchy-category-link{justify-content:space-between;min-height:51px;padding-right:18px}
.vehicles-mega .vehicle-hierarchy-category-link:focus-visible{outline:2px solid #ca794a;outline-offset:-2px}

/* Product detail: show the CMS specification fields as a readable hierarchy. */
.product-spec-content{min-width:0;display:grid;gap:26px}
.product-spec-intro,.product-spec-section,.product-spec-note{background:#fff;padding:34px 38px;box-shadow:0 16px 40px rgba(15,47,63,.06)}
.product-spec-intro h2,.product-spec-heading h2,.product-spec-note h2{color:#12394e;font-size:clamp(24px,2.3vw,32px);line-height:1.2;margin:8px 0 14px}
.product-spec-intro p,.product-spec-heading p,.product-spec-note p{color:#536b76;line-height:1.7;margin:0}
.product-spec-groups{display:grid;gap:22px;margin-top:28px}
.product-spec-group{border:1px solid #dce5e7;min-width:0}
.product-spec-group h3{background:#eaf0f1;color:#12394e;font-size:17px;line-height:1.4;margin:0;padding:14px 18px}
.product-spec-group dl,.product-spec-note dl{margin:0}
.product-spec-group dl>div,.product-spec-note dl>div{display:grid;grid-template-columns:minmax(140px,35%) minmax(0,1fr);gap:22px;padding:13px 18px;border-top:1px solid #e6ecee;line-height:1.5}
.product-spec-group dt,.product-spec-note dt{color:#526975;font-weight:700}
.product-spec-group dd,.product-spec-note dd{color:#173748;margin:0;overflow-wrap:anywhere}
.product-spec-note dl>div:first-child{border-top:0}
.product-spec-note h2{margin-top:0}
@media(max-width:760px){.product-spec-intro,.product-spec-section,.product-spec-note{padding:25px 20px}.product-spec-group dl>div,.product-spec-note dl>div{grid-template-columns:1fr;gap:3px}}

.product-spec-note h3{color:#12394e;font-size:16px;margin:18px 0 7px}
.product-spec-note ul{color:#173748;margin:0;padding-left:20px;line-height:1.65}
.product-spec-faq details{border-top:1px solid #e6ecee;padding:13px 0}
.product-spec-faq details:first-of-type{margin-top:15px}
.product-spec-faq summary{color:#12394e;cursor:pointer;font-weight:700;line-height:1.5}
.product-spec-faq summary:focus-visible{outline:2px solid #b76532;outline-offset:3px}
.product-spec-faq details p{padding:9px 0 0}

/* Structured product introduction and capability cards. */
.product-spec-intro .product-positioning{color:#173748;font-size:16px;line-height:1.75;margin:0 0 15px}
.product-spec-intro .product-applications{border-top:1px solid #e6ecee;padding-top:14px}
.product-spec-intro .product-applications strong{color:#12394e}
.product-feature-section{background:#fff;padding:34px 38px;box-shadow:0 16px 40px rgba(15,47,63,.06)}
.product-feature-section h2{color:#12394e;font-size:clamp(24px,2.3vw,32px);line-height:1.2;margin:8px 0 20px}
.product-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.product-feature-card{background:#f3f7f7;border:1px solid #dce5e7;padding:20px;min-width:0}
.product-feature-card h3{color:#12394e;font-size:17px;line-height:1.35;margin:0 0 9px}
.product-feature-card p{color:#536b76;line-height:1.65;margin:0}
@media(max-width:760px){.product-feature-section{padding:25px 20px}.product-feature-grid{grid-template-columns:1fr}}

.product-related-section{background:#fff;padding:34px 38px;box-shadow:0 16px 40px rgba(15,47,63,.06)}
.product-related-section h2{color:#12394e;font-size:clamp(24px,2.3vw,32px);line-height:1.2;margin:8px 0 20px}
.product-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.product-related-grid a{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #dce5e7;background:#f3f7f7;color:#12394e;font-weight:700;line-height:1.4;padding:17px 19px;text-decoration:none}
.product-related-grid a:hover,.product-related-grid a:focus-visible{border-color:#b76532;color:#a94d18;outline-offset:3px}
.product-related-grid span{color:#b76532;flex:none}
@media(max-width:760px){.product-related-section{padding:25px 20px}.product-related-grid{grid-template-columns:1fr}}

.product-related-wrap{margin-top:32px}
