/* Transport Refrigeration parts page. Uses clear blue, cyan and red accents. */
.parts-page {
  --max:1480px;
  --parts-blue-strong:#006b91;
  --parts-ink:#0d455a;
  --parts-blue:#008fbe;
  --parts-cyan:#00aeef;
  --parts-red:#ed1c24;
  --parts-soft:#f3f7fa;
  --parts-sky:#e8f7fc;
  --parts-line:#c9d8e2;
  --parts-copy:#31708a;
}
.parts-page .business-masthead { background:#fff; border-bottom:1px solid var(--parts-line); }
.parts-page .business-masthead h1 { color:var(--parts-blue-strong); }
.parts-page .business-masthead .eyebrow,.parts-shop-heading .eyebrow { color:var(--parts-red); }
.parts-page .masthead-foot { border-color:var(--parts-line); }
.parts-page .masthead-foot p { color:var(--parts-copy); }
.parts-page .masthead-foot .line-link { color:var(--parts-blue); }

.parts-store-section { background:var(--parts-sky); }
.parts-shop-heading { max-width:850px; }
.parts-shop-heading h2,.parts-directory h2,.parts-close h2 { color:var(--parts-blue-strong); font-size:clamp(3.15rem,4.7vw,5.55rem); line-height:.92; }
.parts-shop-heading>p:not(.eyebrow) { max-width:42rem; margin-top:22px; color:var(--parts-copy); font-size:1.08rem; line-height:1.65; }
.parts-store-list { display:grid; gap:28px; margin-top:clamp(42px,6vw,76px); }
.parts-store-card { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr); min-height:455px; overflow:hidden; border:1px solid var(--parts-line); border-left:7px solid var(--parts-red); border-radius:20px; background:#fff; box-shadow:0 18px 36px rgba(0,125,163,.16); }
.parts-store-card--red-dot .parts-store-art { order:2; }
.parts-store-card--red-dot .parts-store-content { order:1; background:#f7fcfe; }
.parts-store-art { display:grid; min-width:0; margin:0; place-items:center; overflow:hidden; background:#dff3fb; }
.parts-store-art img { width:100%; height:100%; object-fit:contain; }
.parts-store-card--thermo .parts-store-art { background:var(--parts-blue-strong); }
.parts-store-card--thermo .parts-store-art img { object-fit:cover; }
.parts-store-card--espar .parts-store-art { background:#f5fcff; }
.parts-store-content { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-width:0; padding:clamp(38px,5vw,82px); }
.parts-store-content .eyebrow { margin-bottom:19px; color:var(--parts-red); }
.parts-brand-logo { display:block; width:auto; height:auto; object-fit:contain; object-position:left center; }
.parts-brand-logo--thermo { max-width:132px; max-height:112px; margin-bottom:25px; }
.parts-brand-logo--red-dot { max-width:142px; max-height:128px; margin-bottom:25px; }
.parts-brand-logo--espar { max-width:300px; max-height:86px; margin-bottom:30px; }
.parts-store-card h3 { max-width:14ch; color:var(--parts-blue-strong); font-size:clamp(3.1rem,4.15vw,5rem); line-height:.87; }
.parts-store-content>p:not(.eyebrow) { max-width:34rem; margin-top:22px; color:var(--parts-copy); font-size:1.08rem; line-height:1.62; }
.parts-store-content .button { margin-top:31px; }
.parts-page .parts-store-content .button { border-color:var(--parts-red); background:var(--parts-red); color:#fff; }
.parts-page .parts-store-content .button:hover { border-color:#bd1117; background:#bd1117; }
.parts-page .button--dark { border-color:var(--parts-blue-strong); background:var(--parts-blue-strong); }
.parts-page .button--dark:hover { border-color:#005572; background:#005572; }

.parts-products { padding-block:clamp(65px,7vw,105px); background:var(--parts-soft); }
.parts-products-heading { max-width:850px; }
.parts-products-heading .eyebrow { color:var(--parts-red); }
.parts-products h2 { color:var(--parts-blue-strong); font-size:clamp(3.15rem,4.7vw,5.55rem); line-height:.95; }
.parts-products-heading>p:not(.eyebrow) { max-width:48rem; margin-top:20px; color:#24546a; font-size:1.08rem; line-height:1.6; }
.parts-products-overview,.parts-product-links a { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--parts-blue-strong); font-size:.96rem; font-weight:700; line-height:1.4; text-decoration:underline; text-underline-offset:4px; }
.parts-products-overview { margin-top:14px; }
.parts-products-overview:hover,.parts-product-links a:hover { color:#b51820; }
.parts-products-overview:focus-visible,.parts-product-links a:focus-visible { outline:3px solid var(--parts-blue-strong); outline-offset:3px; }
.parts-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:clamp(28px,4vw,58px); margin-top:36px; }
.parts-product { display:flex; min-width:0; flex-direction:column; padding:26px 0 30px; border-top:2px solid var(--parts-line); }
.parts-product-category { color:#b51820; font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.parts-product h3 { margin-top:10px; color:var(--parts-blue-strong); font-size:clamp(2rem,2.5vw,2.8rem); line-height:1; }
.parts-product>p:not(.parts-product-category) { max-width:34rem; margin-top:14px; color:#24546a; font-size:1rem; line-height:1.6; }
.parts-product-links { display:flex; flex-direction:column; align-items:flex-start; margin-top:auto; padding-top:17px; }
.parts-product-links a { max-width:100%; }
.parts-products-contact { gap:8px; margin-top:30px; }

.parts-directory { padding-block:clamp(65px,8vw,120px); color:#fff; border-top:6px solid var(--parts-red); background:linear-gradient(125deg,#00658a,#007da3); }
.parts-directory .eyebrow { color:#8eddf5; }
.parts-directory-heading { max-width:900px; padding-bottom:clamp(38px,5vw,65px); border-bottom:1px solid rgba(255,255,255,.26); }
.parts-directory h2 { color:#fff; }
.parts-directory-heading>p:not(.eyebrow) { max-width:42rem; margin-top:23px; color:#d0d9dc; font-size:1.05rem; line-height:1.65; }
.parts-contact-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); column-gap:clamp(25px,3vw,55px); }
.parts-contact-card { display:flex; min-width:0; min-height:250px; flex-direction:column; padding:28px 0 31px; border-bottom:1px solid rgba(255,255,255,.26); }
.parts-contact-state { color:#8eddf5; font-size:.72rem; font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.parts-contact-card h3 { margin-top:11px; color:#fff; font-size:clamp(2.15rem,2.55vw,3rem); }
.parts-contact-card dl { display:grid; gap:12px; margin:26px 0 0; }
.parts-contact-card dt { color:#b6d8e5; font-size:.71rem; font-weight:600; letter-spacing:.11em; text-transform:uppercase; }
.parts-contact-card dd { margin:2px 0 0; font-size:.95rem; }
.parts-contact-card a { color:#fff; overflow-wrap:anywhere; text-decoration-thickness:1px; text-underline-offset:4px; }
.parts-contact-card a:hover { color:#8eddf5; }

.parts-close { padding-block:clamp(50px,6vw,86px); color:var(--parts-ink); background:linear-gradient(120deg,#aeeeff,#00aeef); }
.parts-close-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.7fr) auto; gap:clamp(30px,5vw,80px); align-items:center; }
.parts-close .eyebrow { color:#00658a; }
.parts-close h2 { color:var(--parts-ink); }
.parts-close-grid>p { max-width:31rem; color:#07546d; font-size:1rem; line-height:1.6; }
.parts-close .actions { margin:0; flex-direction:column; align-items:flex-start; gap:10px; }
.parts-close .line-link { color:var(--parts-ink); }

@media (max-width:1109px) {
  .parts-store-card { grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr); min-height:370px; }
  .parts-store-content { padding:46px; }
  .parts-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .parts-contact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:45px; }
  .parts-contact-card { min-height:225px; }
  .parts-close-grid { grid-template-columns:1fr 1fr; }
  .parts-close .actions { grid-column:1 / -1; flex-direction:row; align-items:center; }
}
@media (max-width:699px) {
  .parts-shop-heading h2,.parts-products h2,.parts-directory h2,.parts-close h2 { font-size:clamp(3rem,12.9vw,4.75rem); }
  .parts-store-list { margin-top:36px; }
  .parts-store-card { display:flex; min-height:0; flex-direction:column; }
  .parts-store-card--red-dot .parts-store-art,.parts-store-card--red-dot .parts-store-content { order:initial; }
  .parts-store-art { min-height:265px; }
  .parts-store-content { padding:34px 25px 38px; }
  .parts-store-card h3 { font-size:clamp(2.95rem,12.4vw,4.25rem); }
  .parts-brand-logo--thermo { max-width:110px; max-height:94px; }
  .parts-brand-logo--red-dot { max-width:120px; max-height:110px; }
  .parts-brand-logo--espar { max-width:248px; max-height:71px; }
  .parts-products { padding-block:60px; }
  .parts-product-grid { grid-template-columns:1fr; margin-top:25px; }
  .parts-product { padding:24px 0; }
  .parts-directory { padding-block:60px; }
  .parts-directory-heading { padding-bottom:34px; }
  .parts-contact-grid { grid-template-columns:1fr; }
  .parts-contact-card { min-height:0; padding-block:25px; }
  .parts-close-grid { grid-template-columns:1fr; gap:26px; }
  .parts-close .actions { grid-column:auto; flex-direction:column; align-items:flex-start; margin-top:4px; }
}
@media (max-width:380px) {
  .parts-store-art { min-height:225px; }
  .parts-store-content .button { width:100%; }
}
@media (max-height:540px) and (orientation:landscape) {
  .parts-store-art { min-height:280px; }
}
