@charset "utf-8";

.flagship-container { display: flex; flex-direction: column; width: 100%; }

.theme-flagship .flagship-wrapper { display: flex; width: 100%; height: 300px; border-radius: 8px; box-shadow: rgba(38, 38, 38, 0.1) 0px 2px 8px 2px; }

.theme-flagship .flagship-branding { width: 576px; flex: 0 0 auto; cursor: pointer; }

.theme-flagship .flagship-branding img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }

.theme-flagship .flagship-content { display: flex; flex-direction: column; flex-grow: 1; overflow: hidden; }

.theme-flagship .flagship-products { position: relative; height: 100%; overflow: hidden; }

.theme-flagship .flagship-carousel { scroll-behavior: smooth; height: 100%; display: flex; transition: transform 0.5s ease-in-out; }

.theme-flagship .flagship-carousel::-webkit-scrollbar { display: none; }

.theme-flagship .carousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; background-color: rgba(255, 255, 255, 0.9); border: 1px solid rgb(221, 221, 221); border-radius: 50%; font-size: 14px; cursor: pointer; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 5px; transition: 0.3s; z-index: 10; }

.theme-flagship .carousel-arrow:hover { background-color: rgb(212, 212, 212); box-shadow: rgba(0, 0, 0, 0.15) 0px 3px 8px; }

.theme-flagship .carousel-arrow:active { box-shadow: rgba(0, 0, 0, 0.15) 0px 3px 8px; }

.theme-flagship .carousel-arrow:focus, .theme-flagship .carousel-arrow:focus-visible { outline-offset: 2px; outline: rgb(0, 127, 252) solid 2px; border-radius: 50%; background-color: rgb(229, 229, 229); }

.theme-flagship .prev-arrow { left: 5px; }

.theme-flagship .next-arrow { right: 5px; }

.theme-flagship .product-card { cursor: pointer; height: 100%; flex: 0 0 100%; display: flex; justify-content: center; align-items: center; padding: 8px 24px; }

.theme-flagship .product-card-inner { display: flex; justify-content: center; height: 100%; gap: 20px; }

.theme-flagship .product-image-container { display: flex; align-items: center; justify-content: center; }

.theme-flagship .product-image { width: 244px; height: 244px; object-fit: contain; }

.theme-flagship .product-details { display: flex; flex-direction: column; gap: 10px; margin: auto 0px; }

.theme-flagship .product-name { font-size: 20px; font-weight: 400; line-height: 30px; font-family: Lato, sans-serif; color: rgb(38, 38, 38); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-height: calc(60px); overflow: hidden; }

.theme-flagship .product-rating { display: flex; align-items: center; gap: 10px; }

.theme-flagship .star-rating { display: flex; align-items: center; gap: 1px; }

.theme-flagship .star { color: rgb(213, 126, 7); font-size: 15px; margin-right: 1px; }

.theme-flagship .star-empty { color: rgb(224, 224, 224); }

.theme-flagship .star-half::after { content: "★"; position: absolute; left: 0px; top: 0px; width: 50%; overflow: hidden; color: rgb(255, 193, 7); }

.theme-flagship .rating-count { font-size: 14px; font-weight: 400; line-height: 20px; font-family: Lato, sans-serif; color: rgb(38, 38, 38); }

.theme-flagship .current-price { font-size: 20px; font-weight: 700; line-height: 30px; font-family: Lato, sans-serif; color: rgb(38, 38, 38); }

.theme-flagship .carousel-indicators { display: flex; justify-content: center; margin-top: auto; margin-bottom: 8px; }

.theme-flagship .carousel-indicator { display: inline-block; width: 8px; height: 8px; border: 1px solid rgb(115, 115, 115); border-radius: 5px; opacity: 1; transition: background-color 0.3s; cursor: pointer; margin: 8px; }

.theme-flagship .carousel-indicator.active { background-color: rgb(38, 38, 38); }

.theme-flagship .sponsored-label { font-size: 14px; line-height: 21px; font-weight: 400; font-family: Lato, sans-serif; color: rgb(80, 80, 80); text-align: right; }

@media (max-width: 1151px) {
  .theme-flagship .flagship-branding { width: 50%; }
  .theme-flagship .product-image { width: 142px; height: 142px; }
}

@media (max-width: 767px) {
  .flagship-container { background: rgb(248, 248, 248); }
  .theme-flagship .flagship-wrapper { height: 100%; flex-direction: column; box-shadow: none; }
  .theme-flagship .flagship-branding { width: 100%; line-height: 0; }
  .theme-flagship .flagship-carousel { display: flex; align-items: stretch; gap: 7px; overflow-x: scroll; padding: 16px; }
  .theme-flagship .flagship-content { width: 100%; }
  .theme-flagship .flagship-branding img { height: 100%; width: 100%; }
  .theme-flagship .product-card-inner { flex-direction: column; padding: 8px; }
  .theme-flagship .product-card { min-width: 40%; background: rgb(255, 255, 255); border-radius: 2px; box-shadow: rgba(38, 38, 38, 0.1) 0px 2px 8px 2px; flex: 1 1 0%; display: block; padding: 0px 0px 20px; }
  .theme-flagship .product-name { font-size: 14px; line-height: 20px; -webkit-line-clamp: 3; -webkit-box-orient: vertical; min-height: calc(60px); }
  .theme-flagship .rating-count { font-size: 12px; line-height: 16px; }
  .theme-flagship .carousel-indicators { display: none; }
  .theme-flagship .sponsored-label { font-size: 12px; line-height: 18px; padding-right: 16px; padding-bottom: 16px; }
}

@media (max-width: 390px) {
  .theme-flagship .product-image { width: 100px; height: 100px; }
}