.towing-page { --towing-border: var(--stp-line, #d5dde6); --towing-surface: var(--stp-surface, #fff); --towing-soft: var(--stp-surface-soft, #f3f6f8); --towing-muted: var(--stp-text-muted, #52606e); }
.towing-hero { padding: 8px 0 28px; }
.towing-hero-grid { display: grid; grid-template-areas: "media summary" "media commerce"; grid-template-columns: minmax(0, 1.02fr) minmax(460px, .98fr); grid-template-rows: auto 1fr; gap: 18px 28px; align-items: stretch; }
.towing-summary { grid-area: summary; min-width: 0; padding-top: 10px; text-align: left; }
.towing-summary h1 { max-width: 790px; margin: 18px 0 14px; color: var(--stp-text, #15191d); font-size: 50px; font-weight: 900; line-height: 1.02; letter-spacing: 0; }
.towing-summary > p { max-width: 760px; margin: 0; color: var(--towing-muted); font-size: 19px; line-height: 1.48; }
.towing-chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 20px; }
.towing-chips span { min-height: 62px; padding: 10px 13px; border: 1px solid var(--towing-border); border-left: 3px solid var(--stp-accent, #ef2b11); border-radius: 6px; background: var(--towing-surface); color: var(--stp-text, #15191d); font-weight: 750; }
.towing-chips b { display: block; margin-bottom: 3px; color: var(--towing-muted); font-size: 12px; font-weight: 850; text-transform: uppercase; }
.towing-media { grid-area: media; min-width: 0; min-height: 640px; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--towing-border); border-radius: 8px; background: var(--towing-surface); }
.towing-media img { width: 100%; height: 100%; max-height: 680px; padding: 44px; object-fit: contain; }
.towing-commerce { grid-area: commerce; align-self: stretch; }
.towing-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.towing-safety-band { background: color-mix(in srgb, var(--towing-soft) 92%, var(--stp-accent, #ef2b11) 8%); }
.towing-check-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.towing-check-grid article { min-height: 188px; padding: 22px; border: 1px solid var(--towing-border); border-radius: 7px; background: var(--towing-surface); }
.towing-check-grid i { display: block; margin-bottom: 18px; color: var(--stp-accent, #ef2b11); font-size: 31px; }
.towing-check-grid h3 { margin: 0 0 9px; color: var(--stp-text, #15191d); font-size: 20px; }
.towing-check-grid p { margin: 0; color: var(--towing-muted); line-height: 1.5; }
.towing-models { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.towing-models article { min-height: 132px; display: flex; flex-direction: column; justify-content: center; padding: 20px; border: 1px solid var(--towing-border); border-radius: 7px; background: var(--towing-surface); }
.towing-models b { color: var(--stp-text, #15191d); font-size: 20px; }
.towing-models span { margin-top: 8px; color: var(--towing-muted); font-size: 14px; line-height: 1.45; }
.towing-related-band { background: var(--towing-soft); }
.towing-related { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.towing-related a { min-height: 190px; display: grid; grid-template-columns: 200px 1fr; align-items: center; overflow: hidden; border: 1px solid var(--towing-border); border-radius: 7px; background: var(--towing-surface); color: var(--stp-text, #15191d); text-decoration: none; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.towing-related a:hover { border-color: var(--stp-accent, #ef2b11); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(14, 22, 30, .1); }
.towing-related img { width: 200px; height: 190px; padding: 18px; border-right: 1px solid var(--towing-border); background: var(--towing-soft); object-fit: contain; }
.towing-related span { display: flex; flex-direction: column; padding: 24px; }
.towing-related b { font-size: 21px; }
.towing-related small { margin-top: 8px; color: var(--towing-muted); font-size: 15px; line-height: 1.45; }
.towing-category-hero { padding: 12px 0 30px; }
.towing-category-hero-grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(390px, .98fr); gap: 30px; align-items: center; }
.towing-category-hero-grid > div:first-child { min-width: 0; text-align: left; }
.towing-category-hero h1 { margin: 18px 0 14px; color: var(--stp-text, #15191d); font-size: 48px; font-weight: 900; line-height: 1.02; letter-spacing: 0; }
.towing-category-hero p { max-width: 760px; margin: 0; color: var(--towing-muted); font-size: 20px; line-height: 1.5; }
.towing-category-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.towing-category-visual { min-height: 430px; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--towing-border); border-radius: 8px; background: var(--towing-surface); }
.towing-category-visual img { width: 100%; height: 100%; min-height: 430px; padding: 30px; object-fit: contain; }
.towing-category-page .product-category-media-links { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.towing-category-page .product-category-media-links a { grid-column: span 2; }
.towing-category-page .product-category-media-links a:nth-child(n + 4) { grid-column: span 3; }
.towing-catalog-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.towing-catalog-card { min-height: 370px; grid-column: span 2; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--towing-border); border-radius: 7px; background: var(--towing-surface); color: var(--stp-text, #15191d); text-decoration: none; text-align: left; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.towing-catalog-card:nth-child(n + 4) { grid-column: span 3; }
.towing-catalog-card:hover { border-color: var(--stp-accent, #ef2b11); transform: translateY(-2px); box-shadow: 0 10px 26px rgba(14, 22, 30, .1); }
.towing-catalog-card:focus-visible { outline: 2px solid var(--stp-accent, #ef2b11); outline-offset: 3px; }
.towing-catalog-media { min-height: 205px; display: grid; place-items: center; border-bottom: 1px solid var(--towing-border); background: var(--towing-soft); overflow: hidden; }
.towing-catalog-media img { width: 100%; height: 205px; padding: 22px; object-fit: contain; }
.towing-catalog-symbol { align-content: center; color: var(--stp-text, #15191d); text-align: center; }
.towing-catalog-symbol i { color: var(--stp-accent, #ef2b11); font-size: 48px; line-height: 1; }
.towing-catalog-symbol span { margin-top: 12px; font-size: 24px; font-weight: 950; line-height: 1; letter-spacing: .05em; }
.towing-catalog-symbol small { margin-top: 7px; color: var(--towing-muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.towing-catalog-copy { flex: 1; display: flex; flex-direction: column; padding: 24px; }
.towing-catalog-copy b { font-size: 24px; line-height: 1.15; }
.towing-catalog-copy em { margin-top: 10px; color: var(--towing-muted); font-style: normal; line-height: 1.48; }
.towing-catalog-copy small { margin-top: auto; padding-top: 18px; color: var(--stp-accent, #ef2b11); font-size: 13px; font-weight: 850; text-transform: uppercase; }
.towing-process-band { background: var(--towing-soft); }
.towing-process { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 0; border: 1px solid var(--towing-border); border-radius: 7px; background: var(--towing-border); list-style: none; overflow: hidden; }
.towing-process li { min-height: 180px; display: flex; gap: 16px; padding: 24px 20px; background: var(--towing-surface); }
.towing-process li > b { color: var(--stp-accent, #ef2b11); font-size: 15px; }
.towing-process span { display: flex; flex-direction: column; }
.towing-process strong { color: var(--stp-text, #15191d); font-size: 19px; }
.towing-process small { margin-top: 9px; color: var(--towing-muted); font-size: 15px; line-height: 1.45; }
.stp-theme-dark.towing-page { --stp-text: #f1f4f6; --stp-text-muted: #b8c5d2; --towing-border: #30404f; --towing-surface: #151d26; --towing-soft: #111922; --towing-muted: #b8c5d2; }
@media (max-width: 1180px) { .towing-hero-grid { grid-template-columns: minmax(0, .96fr) minmax(420px, 1.04fr); gap: 18px; } .towing-summary h1 { font-size: 45px; } .towing-media { min-height: 600px; } .towing-check-grid, .towing-models, .towing-process { grid-template-columns: repeat(2, minmax(0, 1fr)); } .towing-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .towing-catalog-card, .towing-catalog-card:nth-child(n + 4) { grid-column: auto; } }
@media (max-width: 900px) { .towing-hero-grid { grid-template-areas: "summary" "media" "commerce"; grid-template-columns: minmax(0, 1fr); } .towing-summary { padding-top: 0; } .towing-summary h1 { font-size: 42px; } .towing-media { min-height: 460px; } .towing-info-grid { grid-template-columns: minmax(0, 1fr); } .towing-category-hero-grid { grid-template-columns: minmax(0, 1fr); } .towing-related { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .towing-summary h1, .towing-category-hero h1 { margin-top: 14px; font-size: 30px; line-height: 1.05; } .towing-summary > p, .towing-category-hero p { font-size: 17px; } .towing-chips { grid-template-columns: repeat(2, minmax(0, 1fr)); } .towing-chips span { min-height: 72px; overflow-wrap: anywhere; } .towing-media { min-height: 320px; } .towing-media img { max-height: 380px; padding: 20px; } .towing-check-grid, .towing-models, .towing-process { grid-template-columns: minmax(0, 1fr); } .towing-check-grid article, .towing-process li { min-height: 0; } .towing-category-actions { display: grid; grid-template-columns: minmax(0, 1fr); } .towing-category-visual, .towing-category-visual img { min-height: 300px; } .towing-category-page .product-category-media-links { grid-template-columns: minmax(0, 1fr); } .towing-category-page .product-category-media-links a, .towing-category-page .product-category-media-links a:nth-child(n + 4) { grid-column: auto; } .towing-catalog-grid { grid-template-columns: minmax(0, 1fr); } .towing-catalog-card { min-height: 0; } .towing-catalog-media, .towing-catalog-media img { min-height: 190px; height: 190px; } .towing-related a { grid-template-columns: 124px 1fr; min-height: 150px; } .towing-related img { width: 124px; height: 150px; padding: 12px; } .towing-related span { padding: 18px; } }
@media (prefers-reduced-motion: reduce) { .towing-related a, .towing-catalog-card { transition: none; } }
