/* V39: Restore approved V37 hero copy and actual three-part mega menu.
   Homepage-only styles. No shared cart/checkout/commerce stylesheet modified. */
body.home-v2 .header {position:relative;z-index:90;overflow:visible}
body.home-v2 #bannerCarousel.banner-carousel {margin-top:26px}
body.home-v2 #bannerCarousel .banner-viewport{
  --campaign-width:calc((100% - 4 * 14px) / 5);
  width:100%;scroll-snap-type:x mandatory;scrollbar-width:none;
}
body.home-v2 #bannerCarousel .banner-track{gap:14px}
body.home-v2 #bannerCarousel .banner-slide.is-fullbleed{
  position:relative!important;display:block;aspect-ratio:4/5;
  flex:0 0 var(--campaign-width);width:var(--campaign-width);
  overflow:hidden;border-radius:16px;
}
body.home-v2 #bannerCarousel .banner-slide.is-fullbleed .banner-photo{
  position:absolute!important;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;z-index:1;filter:none;
}
body.home-v2 #bannerCarousel .banner-slide.is-fullbleed .banner-shade{
  display:block;position:absolute;z-index:2;inset:0;
  background:linear-gradient(180deg,rgba(7,15,26,.21) 0%,rgba(7,15,26,0) 32%,rgba(6,13,24,.28) 55%,rgba(7,14,24,.91) 100%);
}
body.home-v2 #bannerCarousel .banner-slide.is-fullbleed .banner-text{
  position:absolute;z-index:3;left:0;right:0;bottom:0;
  display:flex;flex-direction:column;align-items:flex-start;
  justify-content:flex-end;gap:0;min-height:36%;box-sizing:border-box;
  padding:17px 16px 18px;max-width:none;color:#fff;pointer-events:none;
}
body.home-v2 #bannerCarousel .banner-text .banner-eyebrow{
  display:block;font:600 9px/1.4 Montserrat,Arial,sans-serif;
  letter-spacing:.13em;color:#efc28a;margin:0 0 7px;
}
body.home-v2 #bannerCarousel .banner-text .hv39-banner-title{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;
  overflow:hidden;font:700 clamp(17px,1.65vw,26px)/1.14 Montserrat,Arial,sans-serif;
  letter-spacing:-.035em;margin:0 0 7px;color:#fff;
  text-shadow:0 2px 12px rgba(0,0,0,.22);overflow-wrap:anywhere;
}
body.home-v2 #bannerCarousel .banner-text .hv39-banner-description{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;font:500 10px/1.4 Montserrat,Arial,sans-serif;
  color:rgba(255,255,255,.92);margin:0 0 12px;
}
body.home-v2 #bannerCarousel .banner-text .banner-cta{
  display:inline-flex;align-items:center;justify-content:center;
  gap:7px;min-height:32px;max-width:100%;
  background:#fff;border:0;border-radius:40px;
  padding:9px 13px;font:600 11px/1.15 Montserrat,Arial,sans-serif;
  color:#202633;box-shadow:none;
}
body.home-v2 #bannerCarousel .banner-slide:hover .banner-cta{background:#f27b37;color:#fff}
body.home-v2 #bannerCarousel .banner-controls{position:static}
body.home-v2 #bannerCarousel .banner-arrow{
  position:absolute;top:calc(50% - 15px);z-index:4;
  width:42px;height:42px;border-radius:50%;background:#fff;color:#253343;
  display:grid;place-items:center;border:1px solid #e4e7e9;
  box-shadow:0 4px 18px #13223826;
}
body.home-v2 #bannerCarousel .banner-arrow-prev{left:14px}
body.home-v2 #bannerCarousel .banner-arrow-next{right:14px}
/* Mega menu and search use the existing active storefront data / Elasticsearch endpoint. */
body.home-v2 .hv39-mega-panel{
  position:absolute;top:100%;left:50%;right:auto;transform:translateX(-50%);
  width:min(1320px,calc(100vw - 28px));padding:0;border:1px solid #e4e6e4;
  border-top:2px solid #e8a377;border-radius:0 0 16px 16px;
  background:#fff;box-shadow:0 24px 55px #18233226;
  max-height:min(76vh,740px);overflow:hidden;z-index:250;
  color:#263446;
}
body.home-v2 .hv39-mega-layout{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:465px;max-height:min(74vh,720px)}
body.home-v2 .hv39-mega-rail{
  display:flex;flex-direction:column;gap:1px;overflow-y:auto;
  background:#f4f5f3;border-right:1px solid #e4e7e5;
  padding:15px 0;scrollbar-width:thin;overscroll-behavior:contain;
}
body.home-v2 .hv39-mega-rail-label{font:600 11px/1.4 Montserrat,Arial,sans-serif;letter-spacing:.14em;color:#88908e;padding:0 20px 13px}
body.home-v2 .hv39-mega-choice{
  border:0;background:none;color:#28333e;cursor:pointer;text-align:left;
  display:flex;align-items:center;justify-content:space-between;
  font:600 12px/1.3 Montserrat,Arial,sans-serif;
  min-height:43px;padding:10px 18px;white-space:normal;
}
body.home-v2 .hv39-mega-choice span{font-size:20px;color:#87939a}
body.home-v2 .hv39-mega-choice:hover,body.home-v2 .hv39-mega-choice.active{
  background:#fff;color:#e87527;
}
body.home-v2 .hv39-mega-detail{min-width:0;overflow-y:auto;padding:22px 24px 28px}
body.home-v2 .hv39-mega-detail-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
body.home-v2 .hv39-mega-eyebrow{font:600 10px/1.4 Montserrat,Arial,sans-serif;color:#d17e4a;letter-spacing:.13em}
body.home-v2 .hv39-mega-detail-header h2{font:700 clamp(19px,2vw,27px)/1.18 Montserrat,Arial,sans-serif;letter-spacing:-.035em;color:#243242;margin:5px 0 3px}
body.home-v2 .hv39-mega-detail-header p{font:400 12px/1.6 Montserrat,Arial,sans-serif;color:#75808a;margin:0}
body.home-v2 #hv39MegaAll{white-space:nowrap;font-weight:600;padding:7px 10px;color:#e87527!important}
body.home-v2 .hv39-mega-subcats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}
body.home-v2 .hv39-mega-subcats a{
  text-decoration:none;padding:7px 11px!important;border:1px solid #e4e7e6;
  background:#f8f9f8;border-radius:999px;color:#334053!important;
  font:500 11px/1.4 Montserrat,Arial,sans-serif!important;
}
body.home-v2 .hv39-mega-subcats a:hover{border-color:#df9d70;background:#fff5ed}
body.home-v2 .hv39-mega-products-head{display:flex;align-items:center;justify-content:space-between;margin:8px 0 12px;color:#7b8792}
body.home-v2 .hv39-mega-products-head h3{margin:0;font:700 14px/1.3 Montserrat,Arial,sans-serif;color:#273446}
body.home-v2 .hv39-mega-products-head span{font-size:11px}
body.home-v2 .hv39-mega-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0}
body.home-v2 #megaPanel .hv39-mega-card{
  display:block;min-width:0;padding:8px!important;background:#fff;
  border:1px solid #e8ebee;border-radius:12px;text-decoration:none;
  overflow:hidden;
}
body.home-v2 #megaPanel .hv39-mega-card:hover{border-color:#efb58b;box-shadow:0 5px 18px #142c3e16}
body.home-v2 .hv39-mega-card-image{display:grid;place-items:center;height:102px;background:#fafafa;overflow:hidden;border-radius:6px}
body.home-v2 .hv39-mega-card-image img{width:100%;height:100%;object-fit:contain}
body.home-v2 .hv39-mega-card-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:8px 0 4px;font-size:11px;line-height:1.4;min-height:31px}
body.home-v2 .hv39-mega-card-price{display:block;font:700 13px/1.2 Montserrat,Arial,sans-serif;color:#e87527}
body.home-v2 .search-area{position:relative;z-index:270}
body.home-v2 .hv39-search-panel{
  position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:300;
  background:#fff;border:1px solid #e7e9ed;border-radius:12px;
  box-shadow:0 15px 35px #14243a30;max-height:min(68vh,590px);
  overflow-y:auto;padding:5px;
}
body.home-v2 .hv39-suggestion{
  display:flex;align-items:center;gap:10px;border-radius:8px;
  padding:7px 9px;text-decoration:none;color:#253343;
}
body.home-v2 .hv39-suggestion:hover,body.home-v2 .hv39-suggestion.is-active{background:#f4f6f9}
body.home-v2 .hv39-suggestion img{width:46px;height:46px;object-fit:contain;background:#fff;flex:0 0 46px}
body.home-v2 .hv39-suggestion-info{min-width:0;display:block;flex:1}
body.home-v2 .hv39-suggestion-title{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:500 11px/1.4 Montserrat,Arial,sans-serif}
body.home-v2 .hv39-suggestion-price{display:block;font:700 12px/1.4 Montserrat,Arial,sans-serif;color:#e87527}
body.home-v2 .hv39-search-all{display:block;text-align:center;border-top:1px solid #eceef0;padding:10px;color:#253343;font:600 11px/1.3 Montserrat,Arial,sans-serif}
body.home-v2 .hv39-suggestion-empty{color:#6f7d88;text-align:center;padding:16px;font-size:12px}
@media(max-width:1100px){
 body.home-v2 #bannerCarousel .banner-viewport{--campaign-width:calc((100% - 2 * 14px) / 3)}
 body.home-v2 .hv39-mega-layout{grid-template-columns:205px minmax(0,1fr)}
 body.home-v2 .hv39-mega-products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 body.home-v2 #bannerCarousel.banner-carousel{margin-top:15px}
 body.home-v2 #bannerCarousel .banner-viewport{--campaign-width:calc((100% - 11px)/2)}
 body.home-v2 #bannerCarousel .banner-track{gap:11px}
 body.home-v2 #bannerCarousel .banner-slide.is-fullbleed .banner-text{padding:12px 12px 15px}
 body.home-v2 #bannerCarousel .banner-text .hv39-banner-title{font-size:17px}
 body.home-v2 #bannerCarousel .banner-arrow{width:36px;height:36px}
}
@media(max-width:720px){
 body.home-v2 .hv39-mega-panel{
   position:static;transform:none;width:100%;max-height:67vh;
   border:0;border-radius:0;box-shadow:none;overflow:auto;
 }
 body.home-v2 .hv39-mega-layout{display:block;min-height:0;max-height:none}
 body.home-v2 .hv39-mega-rail{
   max-height:185px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
   gap:4px;padding:9px;overflow-y:auto;border-right:0;border-bottom:1px solid #e6e8e7;
 }
 body.home-v2 .hv39-mega-rail-label{grid-column:1/-1;padding:0 6px 4px}
 body.home-v2 .hv39-mega-choice{font-size:11px;padding:8px 9px;min-height:38px}
 body.home-v2 .hv39-mega-detail{padding:16px 12px 20px;overflow:visible}
 body.home-v2 .hv39-mega-products{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.home-v2 .hv39-mega-card-image{height:90px}
 body.home-v2 .hv39-search-panel{top:calc(100% + 4px);max-height:60vh}
}
@media(max-width:480px){
 body.home-v2 #bannerCarousel .banner-viewport{--campaign-width:74vw}
 body.home-v2 #bannerCarousel .banner-slide.is-fullbleed .banner-text{padding:18px}
 body.home-v2 #bannerCarousel .banner-text .hv39-banner-title{font-size:19px}
}
@media(prefers-reduced-motion:reduce){
 body.home-v2 #bannerCarousel .banner-viewport{scroll-behavior:auto}
}
