/* Drive markers use one shared linear scale, so every square is proportional. */
.drive-sticker{--drive-unit:24px;position:absolute;top:8px;right:8px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:4px;max-width:78px;padding:7px 7px 6px;border-top:3px solid var(--orange);border-radius:3px;background:#ffffffed;box-shadow:0 1px 5px #17202515;color:#ad430a;line-height:1.1;font-size:15px;pointer-events:none}
.drive-square{display:block;flex:none;width:calc(var(--drive-unit) * var(--drive-inches));height:calc(var(--drive-unit) * var(--drive-inches));background:var(--orange);box-shadow:inset 0 0 0 1px #bc4b0c40}
.drive-single{display:flex;flex-direction:column;align-items:center;gap:5px}
.drive-sticker strong{display:block;white-space:nowrap;font-size:17px;font-weight:800;letter-spacing:-.3px}
.drive-sticker small{display:block;font-size:8px;line-height:1.2;font-weight:700;letter-spacing:.2px}
.drive-multiple:not(.drive-adaptor) .drive-single{flex-direction:row;align-self:stretch;justify-content:space-between;gap:6px}
.drive-multiple:not(.drive-adaptor) strong{font-size:14px}
.drive-pair{display:flex;flex-direction:row;align-items:center;gap:5px}
.drive-pair>span:not(.drive-pair-arrow){display:flex;flex-direction:column;align-items:center;gap:4px;justify-content:center}
.drive-adaptor{max-width:calc(100% - 16px)}
.drive-pair strong{font-size:14px}
.drive-pair small{flex-basis:100%;text-align:center;font-size:7px}
.drive-pair-arrow{font-size:11px;line-height:1}
.drive-more{color:#586166;margin-top:2px}
.drive-unknown{font-size:11px;line-height:1.35;color:#62686c;border-top-color:#9b9f9f;text-align:center}
.results .product-photo.has-drive-sticker>img,.product-photo.has-drive-sticker>img{padding:5px 78px 5px 4px}
.gallery-main .drive-sticker,.viewer-media .drive-sticker{--drive-unit:40px;top:18px;right:18px;max-width:145px;padding:13px 12px 10px;gap:7px}
.gallery-main .drive-sticker strong,.viewer-media .drive-sticker strong{font-size:24px}
.gallery-main .drive-sticker small,.viewer-media .drive-sticker small{font-size:10px}
.gallery-main .drive-adaptor,.viewer-media .drive-adaptor{max-width:230px}
.gallery-main .drive-pair-arrow,.viewer-media .drive-pair-arrow{font-size:15px}
.gallery-main:has(.drive-sticker)>img{padding:10px 125px 10px 10px}
.viewer-media{position:relative;max-width:100%;margin:auto}
.viewer-media>img{max-height:75vh;max-width:100%;object-fit:contain;margin:auto}
.saved-photo{position:relative;overflow:hidden}
.saved-photo .drive-sticker{--drive-unit:14px;top:4px;right:4px;padding:4px;gap:3px}
.saved-photo .drive-sticker strong{font-size:12px}.saved-photo .drive-sticker small{font-size:6px}


/* On-location category photography sits beside the title with a soft edge. */
.category-action{height:252px;max-width:650px}
.category-scene{object-fit:cover;object-position:center;mix-blend-mode:normal;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 95%,transparent)}

/* A full category directory followed by the brand story and contact details. */
.site-footer{padding-top:45px;padding-bottom:25px;border-top:3px solid var(--orange)}
.footer-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:32px;border-bottom:1px solid #bdc4c2;margin-bottom:30px}
.footer-intro p{font-size:16px;color:#50595e}
.footer-directory{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(190px,1fr) minmax(150px,.75fr);gap:40px}
.footer-directory h2{font-size:19px;letter-spacing:-.3px;margin:0 0 20px;color:#22292d}
.footer-category-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 22px}
.footer-category-links a,.footer-about>a{font-size:14px;line-height:1.45;color:#414a50;display:block;padding:3px 0}
.footer-directory a:hover{color:var(--orange-dark);text-decoration:underline;text-underline-offset:4px}
.footer-about p{font-size:14px;line-height:1.8;color:#535d63;margin:0 0 17px;max-width:310px}
.footer-about>a{font-weight:700;margin-top:9px;display:flex;justify-content:space-between;max-width:230px}
.footer-contact dl{margin:0}.footer-contact dl>div{margin-bottom:20px}.footer-contact dt{font-size:14px;color:#4c565c}.footer-contact dd{margin:7px 0 0;min-height:22px;border-bottom:1px solid #b7bfbe}
.site-footer .footer-bottom{font-size:12px;margin-top:35px;gap:20px}
@media(max-width:1100px){.footer-directory{grid-template-columns:2fr 1fr;gap:32px}.footer-categories{grid-row:span 2}.footer-contact{grid-column:2}.footer-category-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.category-action{height:218px}.footer-directory{gap:26px}.footer-intro p{font-size:14px}}
@media(max-width:600px){
 .category-action{height:190px;max-width:100%;margin-top:15px}
 .drive-sticker{right:5px;top:5px;padding:5px;max-width:72px}.drive-sticker strong{font-size:16px}
 .results .product-photo.has-drive-sticker>img,.product-photo.has-drive-sticker>img{padding-right:70px}
 .gallery-main .drive-sticker,.viewer-media .drive-sticker{--drive-unit:28px;top:10px;right:10px;max-width:108px;padding:8px}
 .gallery-main .drive-sticker strong,.viewer-media .drive-sticker strong{font-size:19px}.gallery-main .drive-sticker small,.viewer-media .drive-sticker small{font-size:8px}
 .gallery-main:has(.drive-sticker)>img{padding-right:100px}
 .saved-photo .drive-sticker{--drive-unit:9px;right:2px;top:2px;padding:2px}.saved-photo .drive-sticker strong{font-size:10px}.saved-photo .drive-caption{display:none}
 .site-footer{padding-top:32px}.footer-intro{display:block;padding-bottom:24px;margin-bottom:26px}.footer-intro p{margin-top:16px}
 .footer-directory{grid-template-columns:1fr;gap:29px}.footer-categories{grid-row:auto}.footer-contact{grid-column:auto}.footer-category-links{gap:8px 18px}.footer-directory h2{font-size:19px;margin-bottom:15px}
 .footer-category-links a{font-size:14px}.footer-about p{max-width:none}.footer-contact dl{display:grid;grid-template-columns:1fr 1fr;gap:22px}.footer-contact dl>div{margin:0}
 .site-footer .footer-bottom{font-size:11px;flex-wrap:wrap;gap:9px}
}

.assortment-photo{position:relative}.assortment-photo:has(.drive-sticker)>img{padding-right:70px}

.viewer-media{width:fit-content}#close-viewer{z-index:5}
