/* =========================================================
   IPHONEK 2.0 — HOMEPAGE MOCKUP REBUILD v3.1 CLEAN
========================================================= */


/* =========================================================
   HOMEPAGE ONLY GUARD
========================================================= */

body:not(.type-index) #ipkHome2{
  display:none !important;
}


/* =========================================================
   ROOT
========================================================= */

.type-index{
  background:var(--ipk-page-gradient);
}

.type-index #content-wrapper{
  overflow:hidden;
}

#ipkHome2{
  position:relative;
  z-index:2;
}

#ipkHome2 .ipk-container{
  max-width:1360px !important;
}


/* =========================================================
   HERO — MOCKUP ALIGN v3.2
========================================================= */

#ipkHome2 .ipkHero{
  position:relative;
  padding:42px 0 20px;
}

#ipkHome2 .ipkHeroStage{
  position:relative;

  display:grid;
  grid-template-columns:50% 50%;
  align-items:center;

  min-height:700px;
  padding:70px 72px;

  border-radius:34px;
  overflow:hidden;
  isolation:isolate;

  background:
    radial-gradient(
      circle at 72% 50%,
      rgba(109,204,223,.20) 0%,
      rgba(109,204,223,.08) 38%,
      transparent 72%
    ),
    linear-gradient(
      135deg,
      #ffffff 0%,
      #f5f9ff 55%,
      #edf8fc 100%
    );

  border:1px solid rgba(255,255,255,.86);
  box-shadow:0 34px 90px rgba(29,35,47,.08);
}

#ipkHome2 .ipkHeroContent{
  position:relative;
  z-index:3;

  max-width:640px;

  justify-self:start;
  text-align:left;

  transform:translateY(-40px);
}

#ipkHome2 .ipkHeroContent__title{
  margin:0 0 0 -10px;

  max-width:620px;

  font-size:72px !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;

  text-align:left !important;

  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkHeroContent__title span{
  display:block;
  line-height:inherit !important;
  text-align:left !important;
}

#ipkHome2 .ipkHeroContent__title em{
  font-style:normal;
  color:var(--ipk-brand-cyan);
}

#ipkHome2 .ipkHeroContent__subtitle{
  margin-top:24px !important;

  max-width:470px;

  font-size:28px !important;
  line-height:1.10 !important;
  letter-spacing:-.04em !important;
  font-weight:500 !important;

  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkHeroContent__text{
  margin-top:22px !important;

  max-width:450px;

  font-size:18px !important;
  line-height:1.65 !important;

  color:var(--ipk-text-soft);
}

#ipkHome2 .ipkHeroContent__actions{
  display:flex;
  flex-direction:column;
  align-items:flex-start;

  gap:14px !important;

  margin-top:32px !important;
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn{
  min-width:300px !important;
  min-height:60px !important;

  padding:0 34px !important;

  border-radius:12px !important;

  font-size:17px !important;
  font-weight:700 !important;

  justify-content:center !important;
  text-align:center !important;
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn--primary{
  background:
    linear-gradient(
      180deg,
      var(--ipk-brand-cyan) 0%,
      #3FAFC6 100%
    ) !important;

  color:var(--ipk-brand-dark) !important;

  box-shadow:
    0 10px 24px rgba(109,204,223,.30);
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn--primary:hover{
  background:
    linear-gradient(
      180deg,
      #78D7E7 0%,
      var(--ipk-brand-cyan-hover) 100%
    ) !important;

  color:var(--ipk-brand-dark) !important;
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn--ghost{
  background:#fff !important;
  border:1px solid rgba(29,35,47,.12) !important;
  color:var(--ipk-brand-dark) !important;
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn--ghost:hover{
  border-color:var(--ipk-brand-cyan) !important;
  background:#F7FCFD !important;
  color:var(--ipk-brand-dark) !important;
}

#ipkHome2 .ipkHeroVisual{
  position:relative;
  z-index:2;

  display:flex;
  align-items:center;
  justify-content:flex-start;

  min-height:560px;
}

#ipkHome2 .ipkHeroVisual__image{
  width:min(1050px,145%) !important;
  max-width:none !important;
  height:auto !important;

  transform:
    translateX(-205px)
    scale(1.22) !important;

  filter:
    drop-shadow(0 40px 60px rgba(29,35,47,.12));
}


/* =========================================================
   PANEL SYSTEM
========================================================= */

#ipkHome2 .ipkPickerSection,
#ipkHome2 .ipkModelSection,
#ipkHome2 .ipkQuickSection{
  position:relative;
  padding:0;
}

#ipkHome2 .ipkPanel{
  position:relative;

  margin-top:18px;
  padding:34px;

  border-radius:28px;

  background:rgba(255,255,255,.90);
  border:1px solid rgba(255,255,255,.86);

  box-shadow:
    0 20px 56px rgba(29,35,47,.045);

  overflow:hidden;
}

#ipkHome2 .ipkPanel__head{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:20px;

  margin-bottom:18px;
}

#ipkHome2 .ipkPanel__title{
  margin:0 0 18px;

  font-size:24px;
  line-height:1.15;
  letter-spacing:-.035em;
  font-weight:800;

  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkPanel__head .ipkPanel__title{
  margin-bottom:0;
}

#ipkHome2 .ipkPanel__link{
  font-size:14px;
  font-weight:700;
  color:var(--ipk-brand-cyan-active);
}

#ipkHome2 .ipkPanel__link:hover{
  color:var(--ipk-brand-cyan-hover);
}


/* =========================================================
   DEVICE PICKER
========================================================= */

#ipkHome2 .ipkDeviceGrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}

#ipkHome2 .ipkDeviceCard{
  position:relative;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  min-height:240px !important;
  padding:28px 18px !important;

  border-radius:20px;

  background:rgba(255,255,255,.86);
  border:1px solid rgba(29,35,47,.08);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9);

  text-align:center;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

#ipkHome2 .ipkDeviceCard:hover{
  transform:translateY(-4px);

  border-color:rgba(109,204,223,.42);

  box-shadow:
    0 22px 46px rgba(29,35,47,.08);
}

#ipkHome2 .ipkDeviceCard.is-active{
  background:#f7fcff;

  border-color:var(--ipk-brand-cyan);

  box-shadow:
    0 18px 40px rgba(109,204,223,.14),
    inset 0 0 0 1px rgba(109,204,223,.30);
}

#ipkHome2 .ipkDeviceCard.is-active::after{
  content:"✓";

  position:absolute;
  top:14px;
  right:14px;

  display:flex;
  align-items:center;
  justify-content:center;

  width:30px;
  height:30px;

  border-radius:999px;

  background:var(--ipk-brand-cyan);
  color:#fff;

  font-size:15px;
  font-weight:800;
}

#ipkHome2 .ipkDeviceCard img{
  width:185px !important;
  height:125px !important;

  object-fit:contain;

  margin-bottom:20px !important;
}

#ipkHome2 .ipkDeviceCard strong{
  display:block;

  font-size:22px;
  line-height:1.05;
  font-weight:800;

  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkDeviceCard span{
  display:block;

  margin-top:8px;

  font-size:15px;
  line-height:1.3;

  color:var(--ipk-text-soft);
}


/* =========================================================
   MODEL PICKER
========================================================= */

#ipkHome2 .ipkModelGrid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:16px;
}

#ipkHome2 .ipkModelCard{
  appearance:none;
  -webkit-appearance:none;

  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;

  gap:4px;

  min-height:92px;
  padding:16px 18px;

  border-radius:18px;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(29,35,47,.08);

  font-family:inherit;
  text-align:center;
  cursor:pointer;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9);

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

#ipkHome2 .ipkModelCard:hover{
  transform:translateY(-2px);

  border-color:rgba(109,204,223,.42);

  box-shadow:
    0 16px 34px rgba(29,35,47,.07),
    inset 0 1px 0 rgba(255,255,255,.92);
}

#ipkHome2 .ipkModelCard.is-active{
  background:#f7fcff;

  border-color:var(--ipk-brand-cyan);

  box-shadow:
    0 16px 34px rgba(109,204,223,.13),
    inset 0 0 0 1px rgba(109,204,223,.34);
}

#ipkHome2 .ipkModelCard.is-active::after{
  content:"✓";

  position:absolute;
  top:12px;
  right:12px;

  display:flex;
  align-items:center;
  justify-content:center;

  width:28px;
  height:28px;

  border-radius:999px;

  background:var(--ipk-brand-cyan);
  color:#fff;

  font-size:14px;
  font-weight:800;
}

#ipkHome2 .ipkModelCard img{
  flex:0 0 auto;

  width:84px !important;
  height:84px !important;

  object-fit:contain;

  margin:0 !important;
}

#ipkHome2 .ipkModelCard strong{
  display:block;

  margin:0 !important;
  padding:0 !important;

  font-size:20px;
  line-height:1.05;
  font-weight:800;

  text-align:center;

  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkModelCard--more{
  justify-content:center;
  text-align:center;
}

#ipkHome2 .ipkModelCard--more strong{
  text-align:center;
}


/* =========================================================
   QUICK CATEGORIES
========================================================= */

#ipkHome2 .ipkQuickSection .ipkPanel{
  padding-top:26px;
  padding-bottom:26px;
}

#ipkHome2 .ipkQuickGrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}

#ipkHome2 .ipkQuickCard{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  min-height:112px !important;
  padding:18px !important;

  border-radius:20px;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(29,35,47,.08);

  text-align:center;
  text-decoration:none !important;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

#ipkHome2 .ipkQuickCard:hover{
  transform:translateY(-3px);
  border-color:rgba(109,204,223,.42);

  box-shadow:
    0 18px 38px rgba(29,35,47,.07),
    inset 0 1px 0 rgba(255,255,255,.92);
}

#ipkHome2 .ipkQuickCard img{
  width:86px !important;
  height:86px !important;

  object-fit:contain;

  margin:0 0 14px !important;
}

#ipkHome2 .ipkQuickCard strong{
  display:block;

  font-size:18px !important;
  line-height:1.08;
  font-weight:800;

  color:var(--ipk-brand-dark);
}


/* =========================================================
   SHOPTET BENEFIT BANNERS — PREMIUM FINAL
========================================================= */

.type-index .benefitBanner.position--benefitHomepage{
  width:100%;
  max-width:1180px;
  height:auto !important;
  min-height:0 !important;

  margin:36px auto 62px !important;
  padding:0 !important;

  display:flex !important;
  align-items:stretch !important;

  border-radius:34px;

  background:rgba(255,255,255,.94);
  border:1px solid rgba(29,35,47,.045);

  box-shadow:
    0 22px 54px rgba(29,35,47,.045);

  overflow:hidden !important;
}

.type-index .benefitBanner.position--benefitHomepage > *{
  flex:1 1 0 !important;

  min-height:92px !important;
  max-height:102px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:20px 30px !important;

  border-right:1px solid rgba(109,204,223,.18);

  position:relative;
}

.type-index .benefitBanner.position--benefitHomepage > *:last-child{
  border-right:0;
}

.type-index .benefitBanner.position--benefitHomepage a,
.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;

  gap:22px !important;

  width:100%;
  height:auto !important;
  min-height:0 !important;

  color:var(--ipk-brand-dark) !important;
  text-decoration:none !important;
}

.type-index .benefitBanner.position--benefitHomepage img{
  width:34px !important;
  height:34px !important;
  max-width:34px !important;
  max-height:34px !important;

  object-fit:contain !important;

  opacity:.92;

  filter:
    brightness(0)
    saturate(100%)
    invert(73%)
    sepia(26%)
    saturate(873%)
    hue-rotate(145deg)
    brightness(93%)
    contrast(89%);

  position:relative;
  z-index:2;
}

.type-index .benefitBanner.position--benefitHomepage strong,
.type-index .benefitBanner.position--benefitHomepage b{
  display:block !important;

  margin:0 0 3px !important;

  font-size:18px !important;
  line-height:1.08 !important;

  font-weight:800 !important;
  letter-spacing:-0.035em;

  color:var(--ipk-brand-dark) !important;
}

.type-index .benefitBanner.position--benefitHomepage p,
.type-index .benefitBanner.position--benefitHomepage span{
  display:block !important;

  margin:0 !important;

  font-size:15px !important;
  line-height:1.35 !important;

  font-weight:400 !important;

  color:#667085 !important;
}

.type-index .benefitBanner.position--benefitHomepage > *::before,
.type-index .benefitBanner.position--benefitHomepage > *::after,
.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item::before,
.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item::after{
  display:none !important;
  content:none !important;
  border:0 !important;
}

.type-index .homepage-group-title{
  font-size:40px !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  letter-spacing:-0.04em !important;

  color:var(--ipk-brand-dark) !important;

  margin-top:50px !important;
  margin-bottom:36px !important;

  text-align:center !important;
}



/* =========================================================
   RESPONSIVE — TABLET
========================================================= */

@media (max-width:1180px){

  #ipkHome2 .ipkHeroStage{
    grid-template-columns:minmax(0,46%) minmax(0,54%);
    min-height:600px;
    padding:54px 42px;
  }

  #ipkHome2 .ipkHeroContent__title{
    font-size:clamp(52px,5vw,68px) !important;
  }

  #ipkHome2 .ipkHeroVisual__image{
    width:min(900px,150%) !important;
    transform:
      translateX(-80px)
      scale(1.22) !important;
  }

  #ipkHome2 .ipkDeviceGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  #ipkHome2 .ipkModelGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  #ipkHome2 .ipkQuickGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

}


/* =========================================================
   RESPONSIVE — SMALL TABLET
========================================================= */

@media (max-width:980px){

  #ipkHome2 .ipkHeroStage{
    grid-template-columns:1fr;
    gap:28px;

    min-height:auto;
    padding:42px 30px;
  }

  #ipkHome2 .ipkHeroVisual{
    min-height:auto;
    justify-content:center;
  }

  #ipkHome2 .ipkHeroVisual__image{
    width:min(620px,100%) !important;
    transform:none !important;
  }

  #ipkHome2 .ipkHeroContent__actions{
    flex-direction:row;
    flex-wrap:wrap;
  }

  #ipkHome2 .ipkHeroContent__actions .ipk-btn{
    min-width:220px !important;
  }

  .type-index .benefitBanner.position--benefitHomepage{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .type-index .benefitBanner.position--benefitHomepage > *:nth-child(2){
    border-right:0;
  }

}


/* =========================================================
   RESPONSIVE — MOBILE
========================================================= */

@media (max-width:640px){

  #ipkHome2 .ipkHero{
    padding-top:24px;
  }

  #ipkHome2 .ipkHeroStage{
    padding:34px 22px;
    border-radius:28px;
  }

  #ipkHome2 .ipkHeroContent__title{
    font-size:clamp(42px,12vw,58px) !important;
  }

  #ipkHome2 .ipkHeroContent__subtitle{
    font-size:22px !important;
  }

  #ipkHome2 .ipkHeroContent__actions{
    width:100%;
  }

  #ipkHome2 .ipkHeroContent__actions .ipk-btn{
    width:100%;
  }

  #ipkHome2 .ipkPanel{
    padding:20px;
    border-radius:22px;
  }

  #ipkHome2 .ipkDeviceGrid,
  #ipkHome2 .ipkModelGrid,
  #ipkHome2 .ipkQuickGrid{
    grid-template-columns:1fr;
  }

  #ipkHome2 .ipkDeviceCard{
    min-height:150px !important;
  }

  .type-index .benefitBanner.position--benefitHomepage{
    grid-template-columns:1fr;
    border-radius:24px;
  }

  .type-index .benefitBanner.position--benefitHomepage > *{
    border-right:0;
    border-bottom:1px solid rgba(109,204,223,.18);
  }

  .type-index .benefitBanner.position--benefitHomepage > *:last-child{
    border-bottom:0;
  }

}


/* =========================================================
   FILTER BUTTON RESET
========================================================= */

#ipkHome2 button.ipkDeviceCard{
  appearance:none;
  -webkit-appearance:none;
  font-family:inherit;
  cursor:pointer;
}

/* =========================================================
   IPHONEK 2.0 — PRODUCT CARD SYSTEM v1
   Scope: homepage Shoptet product carousels
========================================================= */

.type-index .products-block.carousel .product{
  padding:0 14px !important;
}

.type-index .products-block.carousel .product .p{
  display:flex !important;
  flex-direction:column !important;

  min-height:430px !important;
  padding:22px 22px 20px !important;

  border-radius:28px !important;

  background:#fff !important;
  border:1px solid rgba(29,35,47,.07) !important;

  box-shadow:
    0 18px 42px rgba(29,35,47,.045),
    inset 0 1px 0 rgba(255,255,255,.9);

  overflow:hidden;

  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease;
}

.type-index .products-block.carousel .product:hover .p{
  transform:translateY(-4px);

  border-color:rgba(109,204,223,.36) !important;

  box-shadow:
    0 24px 56px rgba(29,35,47,.075),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.type-index .products-block.carousel .product .image{
  min-height:280px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  margin:0 0 18px !important;
}

.type-index .products-block.carousel .product .image img{
  max-height:240px !important;
  width:auto !important;
  object-fit:contain !important;

  transition:transform .18s ease;
}

.type-index .products-block.carousel .product:hover .image img{
  transform:scale(1.035);
}

.type-index .products-block.carousel .product .p-in{
  flex:1 1 auto !important;

  display:flex !important;
  flex-direction:column !important;
}

.type-index .products-block.carousel .product .p-in-in{
  flex:1 1 auto !important;
}

.type-index .products-block.carousel .product .name{
  min-height:46px !important;

  font-size:16px !important;
  line-height:1.28 !important;
  font-weight:700 !important;

  color:var(--ipk-brand-dark) !important;
}

.type-index .products-block.carousel .product .name span{
  color:inherit !important;
}

.type-index .products-block.carousel .product .availability{
  margin-top:8px !important;
  margin-bottom:10px !important;

  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

.type-index .products-block.carousel .product .availability span{
  color:#5B9A16 !important;
}

.type-index .products-block.carousel .product .p-bottom{
  margin-top:auto !important;
padding-top:14px;
}

.type-index .products-block.carousel .product .p-bottom > div{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:end !important;
  gap:14px !important;
}

.type-index .products-block.carousel .product .price,
.type-index .products-block.carousel .product .price strong{
  font-size:32px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.04em !important;

  color:var(--ipk-brand-dark) !important;
}

.type-index .products-block.carousel .product .p-tools{
  margin:0 !important;
}

.type-index .products-block.carousel .product .btn.btn-primary{
  min-width:122px !important;
  min-height:44px !important;
  padding:0 20px !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:10px !important;

  background:var(--ipk-brand-cyan) !important;
  border:0 !important;

  color:#fff !important;

  font-size:13px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;

  box-shadow:0 10px 22px rgba(109,204,223,.24);
}

.type-index .products-block.carousel .product .btn.btn-primary:hover{
  background:var(--ipk-brand-cyan-hover) !important;
}

.type-index .products-block.carousel .product .p-code{
  display:none !important;
}


/* =========================================================
   IPHONEK 2.0 — MOBILE COMPACT PATCH
========================================================= */

@media (max-width:640px){

  #ipkHome2 .ipkHeroStage{
    min-height:auto;
    padding:28px 18px 30px;
  }

  #ipkHome2 .ipkHeroContent{
    transform:none;
  }

  #ipkHome2 .ipkHeroContent__title{
    font-size:42px !important;
  }

  #ipkHome2 .ipkHeroContent__subtitle{
    font-size:20px !important;
  }

  #ipkHome2 .ipkHeroContent__text{
    font-size:15px !important;
  }

  #ipkHome2 .ipkDeviceGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  #ipkHome2 .ipkDeviceCard{
    min-height:148px !important;
    padding:18px 10px !important;
  }

  #ipkHome2 .ipkDeviceCard img{
    width:110px !important;
    height:78px !important;
    margin-bottom:12px !important;
  }

  #ipkHome2 .ipkDeviceCard strong{
    font-size:16px;
  }

  #ipkHome2 .ipkModelGrid,
  #ipkHome2 .ipkQuickGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  #ipkHome2 .ipkModelCard{
    min-height:82px;
    padding:12px 10px;
  }

  #ipkHome2 .ipkModelCard img{
    width:58px !important;
    height:58px !important;
  }

  #ipkHome2 .ipkModelCard strong{
    font-size:15px;
  }

  #ipkHome2 .ipkQuickCard{
    min-height:116px !important;
    padding:14px 10px !important;
  }

  #ipkHome2 .ipkQuickCard img{
    width:64px !important;
    height:64px !important;
  }

  #ipkHome2 .ipkQuickCard strong{
    font-size:15px !important;
  }
}

/* =========================================================
   IPHONEK 2.0 — MOBILE FIX PATCH
========================================================= */

@media (max-width:640px){

  .type-index .benefitBanner.position--benefitHomepage{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:0 !important;
    margin:26px auto 38px !important;
    border-radius:24px !important;
  }

  .type-index .benefitBanner.position--benefitHomepage > *{
    min-height:92px !important;
    max-height:none !important;
    padding:16px 22px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(109,204,223,.18) !important;
  }

.type-index .benefitBanner.position--benefitHomepage > *:nth-child(2){
  border-right:0 !important;
}

.type-index .benefitBanner.position--benefitHomepage > *:nth-child(-n+2){
  border-bottom:1px solid rgba(109,204,223,.18) !important;
}

  .type-index .benefitBanner.position--benefitHomepage > *:last-child{
    border-bottom:0 !important;
  }

  .type-index .benefitBanner.position--benefitHomepage a,
  .type-index .benefitBanner.position--benefitHomepage .benefitBanner__item{
    gap:16px !important;
  }

  .type-index .benefitBanner.position--benefitHomepage strong,
  .type-index .benefitBanner.position--benefitHomepage b{
    font-size:15px !important;
  }

  .type-index .benefitBanner.position--benefitHomepage p,
  .type-index .benefitBanner.position--benefitHomepage span{
    font-size:13px !important;
  }

  body.type-category .products-block,
  body.type-category .products{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }

  body.type-category .product{
    width:auto !important;
    float:none !important;
    padding:0 !important;
  }

  body.type-category .product .p{
    min-height:auto !important;
  }

  body.type-category .product .image{
    min-height:150px !important;
  }

  body.type-category .product .image img{
    max-height:140px !important;
    width:auto !important;
    object-fit:contain !important;
  }

  body.type-category .product .name{
    font-size:13px !important;
    line-height:1.25 !important;
  }

  body.type-category .product .price,
  body.type-category .product .price strong{
    font-size:22px !important;
  }

  body.type-category .product .btn{
    min-height:38px !important;
    padding:0 10px !important;
    font-size:11px !important;
  }
}

/* =========================================================
   IPHONEK 2.0 — HOMEPAGE CAROUSEL MOBILE/PREMIUM PATCH
========================================================= */

/* Nadpisy sekcí */
.type-index .homepage-group-title{
  position:relative !important;
  max-width:1180px !important;
  margin:46px auto 24px !important;
  padding:0 56px !important;

  font-size:36px !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  letter-spacing:-.045em !important;

  text-align:center !important;
  color:var(--ipk-brand-dark) !important;
}

/* Šipky */
.type-index .products-block.carousel .slick-arrow{
  position:absolute !important;
  top:-64px !important;
  z-index:5 !important;

  width:38px !important;
  height:38px !important;

  border-radius:999px !important;
  border:1px solid rgba(29,35,47,.08) !important;

  background:#fff !important;
  box-shadow:0 12px 28px rgba(29,35,47,.10) !important;

  color:transparent !important;
  font-size:0 !important;
}

.type-index .products-block.carousel .slick-prev{
  left:18px !important;
}

.type-index .products-block.carousel .slick-next{
  right:18px !important;
}

.type-index .products-block.carousel .slick-arrow::before{
  color:var(--ipk-brand-dark) !important;
  font-size:18px !important;
  opacity:1 !important;
}

.type-index .products-block.carousel .slick-arrow:hover{
  background:var(--ipk-brand-cyan) !important;
}

.type-index .products-block.carousel .slick-arrow:hover::before{
  color:#fff !important;
}

/* Slider spacing */
.type-index .products-block.carousel{
  max-width:1180px !important;
  margin:0 auto 32px !important;
  padding:0 4px !important;
}

.type-index .products-block.carousel .slick-list{
  overflow:hidden !important;
  padding:0 0 8px !important;
}

.type-index .products-block.carousel .slick-track{
  display:flex !important;
  align-items:stretch !important;
}

.type-index .products-block.carousel .slick-slide{
  height:auto !important;
}

.type-index .products-block.carousel .slick-slide > div,
.type-index .products-block.carousel .product{
  height:100% !important;
}

/* Produktová karta */
.type-index .products-block.carousel .product .p{
  height:100% !important;
  min-height:420px !important;
}

.type-index .products-block.carousel .product .name{
  display:-webkit-box !important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;

  min-height:42px !important;
  max-height:42px !important;

  overflow:hidden !important;
}

/* Mobile */
@media (max-width:640px){

  .type-index .homepage-group-title{
    margin:34px auto 18px !important;
    padding:0 46px !important;

    font-size:28px !important;
    line-height:1.05 !important;
  }

  .type-index .products-block.carousel{
    margin-bottom:24px !important;
    padding:0 10px !important;
  }

  .type-index .products-block.carousel .slick-arrow{
    top:-52px !important;
    width:34px !important;
    height:34px !important;
  }

  .type-index .products-block.carousel .slick-prev{
    left:10px !important;
  }

  .type-index .products-block.carousel .slick-next{
    right:10px !important;
  }

  .type-index .products-block.carousel .product{
    padding:0 7px !important;
  }

  .type-index .products-block.carousel .product .p{
    min-height:360px !important;
    padding:16px 16px 14px !important;
    border-radius:22px !important;
  }

  .type-index .products-block.carousel .product .image{
    min-height:170px !important;
    margin-bottom:12px !important;
  }

  .type-index .products-block.carousel .product .image img{
    max-height:155px !important;
  }

  .type-index .products-block.carousel .product .name{
    min-height:40px !important;
    max-height:40px !important;

    font-size:14px !important;
    line-height:1.28 !important;
  }

  .type-index .products-block.carousel .product .availability{
    margin:6px 0 8px !important;
    font-size:12px !important;
  }

  .type-index .products-block.carousel .product .price,
  .type-index .products-block.carousel .product .price strong{
    font-size:26px !important;
  }

  .type-index .products-block.carousel .product .p-bottom > div{
    display:flex !important;
    flex-direction:column-reverse !important;
    gap:10px !important;
    align-items:stretch !important;
  }

  .type-index .products-block.carousel .product .btn.btn-primary{
    width:100% !important;
    min-height:40px !important;
    font-size:12px !important;
  }
}


/* =========================================================
   IPHONEK 2.0 — CAROUSEL ARROWS VISIBILITY FIX
========================================================= */

.type-index .products-block.carousel{
  position:relative !important;
}

.type-index .products-block.carousel .slick-arrow{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  opacity:1 !important;
  visibility:visible !important;

  color:var(--ipk-brand-dark) !important;
}

.type-index .products-block.carousel .slick-arrow::before{
  display:none !important;
  content:none !important;
}

.type-index .products-block.carousel .slick-prev::after,
.type-index .products-block.carousel .slick-next::after{
  display:block !important;

  color:var(--ipk-brand-dark) !important;
  font-size:22px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

.type-index .products-block.carousel .slick-prev::after{
  content:"‹";
}

.type-index .products-block.carousel .slick-next::after{
  content:"›";
}

.type-index .products-block.carousel .slick-arrow:hover::after{
  color:#fff !important;
}

/* HOMEPAGE — Apple Watch 5 model cards */
#ipkHome2 .ipkModelGrid.ipkModelGrid--watch{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}

#ipkHome2 .ipkModelGrid.ipkModelGrid--watch .ipkModelCard{
  width:100%;
}


/* =========================================================
   HP — AIRPODS MODEL GRID FIX
========================================================= */

#ipkHome2 .ipkModelGrid.ipkModelGrid--airpods{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

#ipkHome2 .ipkModelGrid.ipkModelGrid--airpods .ipkModelCard{
  width:100% !important;
  min-height:112px;
}

@media (max-width:980px){
  #ipkHome2 .ipkModelGrid.ipkModelGrid--airpods{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* HP — WATCH MOBILE MODEL FIX */
@media (max-width:640px){
  #ipkHome2 .ipkModelGrid.ipkModelGrid--watch{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  #ipkHome2 .ipkModelGrid.ipkModelGrid--watch .ipkModelCard{
    min-height:82px !important;
    padding:10px 12px !important;
  }

  #ipkHome2 .ipkModelGrid.ipkModelGrid--watch .ipkModelCard img{
    width:54px !important;
    height:54px !important;
  }

  #ipkHome2 .ipkModelGrid.ipkModelGrid--watch .ipkModelCard strong{
    font-size:15px !important;
    line-height:1.05 !important;
  }
}


/* =========================================================
   HOMEPAGE — iPAD MODEL GRID
========================================================= */

#ipkHome2 .ipkModelGrid.ipkModelGrid--ipad{
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
}

@media (max-width:1180px){
  #ipkHome2 .ipkModelGrid.ipkModelGrid--ipad{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media (max-width:640px){
  #ipkHome2 .ipkModelGrid.ipkModelGrid--ipad{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* =========================================================
   HOMEPAGE HERO COMPACT v1
========================================================= */

#ipkHome2 .ipkHero{
  padding:24px 0 12px !important;
}

#ipkHome2 .ipkHeroStage{
  min-height:560px !important;
  padding:48px 60px !important;
}

#ipkHome2 .ipkHeroContent{
  transform:translateY(-10px) !important;
}

#ipkHome2 .ipkHeroContent__title{
  font-size:60px !important;
}

#ipkHome2 .ipkHeroContent__subtitle{
  font-size:24px !important;
  margin-top:18px !important;
}

#ipkHome2 .ipkHeroContent__text{
  font-size:16px !important;
  margin-top:16px !important;
}

#ipkHome2 .ipkHeroContent__actions{
  margin-top:24px !important;
}

#ipkHome2 .ipkHeroContent__actions .ipk-btn{
  min-height:54px !important;
}

#ipkHome2 .ipkHeroVisual{
  min-height:420px !important;
}

#ipkHome2 .ipkHeroVisual__image{
  transform:
    translateX(-180px)
    scale(1.08) !important;
}

/* =========================================================
   HOMEPAGE DEVICE PICKER COMPACT
========================================================= */

#ipkHome2 .ipkPanel{
  padding:24px !important;
}

#ipkHome2 .ipkDeviceGrid{
  gap:14px !important;
}

#ipkHome2 .ipkDeviceCard{
  min-height:190px !important;
  padding:20px 14px !important;
}

#ipkHome2 .ipkDeviceCard img{
  width:145px !important;
  height:100px !important;
  margin-bottom:12px !important;
}

#ipkHome2 .ipkDeviceCard strong{
  font-size:18px !important;
}


/* =========================================================
   IPHONEK 2.0 — HOMEPAGE iPHONE HIERARCHY v2.1
========================================================= */

#ipkHome2 .ipkModelVariantArea{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(29,35,47,.08);
}

#ipkHome2 .ipkModelVariantHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:0 0 14px;
}

#ipkHome2 .ipkModelVariantHead span{
  display:block;
  font-size:18px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.025em;
  color:var(--ipk-brand-dark);
}

#ipkHome2 .ipkModelVariantGrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}

#ipkHome2 .ipkModelCard--variant{
  min-height:94px !important;
  padding:14px 16px !important;
  background:#fff !important;
}

#ipkHome2 .ipkModelCard--variant img{
  width:72px !important;
  height:72px !important;
}

#ipkHome2 .ipkModelCard--variant strong{
  font-size:17px !important;
  line-height:1.08 !important;
}

@media (max-width:1180px){
  #ipkHome2 .ipkModelVariantGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:640px){
  #ipkHome2 .ipkModelVariantGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  #ipkHome2 .ipkModelVariantHead span{
    font-size:16px;
  }

  #ipkHome2 .ipkModelCard--variant{
    min-height:82px !important;
    padding:12px 10px !important;
  }

  #ipkHome2 .ipkModelCard--variant img{
    width:58px !important;
    height:58px !important;
  }

  #ipkHome2 .ipkModelCard--variant strong{
    font-size:15px !important;
  }
}

/* =========================================================
   HOMEPAGE — mobile center last odd card
========================================================= */

@media (max-width:640px){

  #ipkHome2 .ipkDeviceGrid > *:last-child:nth-child(odd),
  #ipkHome2 .ipkModelGrid > *:last-child:nth-child(odd),
  #ipkHome2 .ipkModelVariantGrid > *:last-child:nth-child(odd),
  #ipkHome2 .ipkQuickGrid > *:last-child:nth-child(odd){
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:calc(50% - 6px) !important;
  }

}
/* =========================================================
   HOMEPAGE HERO — MOBILE FIX FINAL
========================================================= */

@media (max-width:640px){

  #ipkHome2 .ipkHero{
    padding:18px 0 10px !important;
  }

  #ipkHome2 .ipkHeroStage{
    display:block !important;
    min-height:auto !important;
    padding:34px 22px 28px !important;
    border-radius:28px !important;
  }

  #ipkHome2 .ipkHeroContent{
    max-width:none !important;
    transform:none !important;
    text-align:left !important;
  }

  #ipkHome2 .ipkHeroContent__title{
    margin:0 !important;
    font-size:46px !important;
    line-height:.98 !important;
    letter-spacing:-.055em !important;
  }

  #ipkHome2 .ipkHeroContent__subtitle{
    margin-top:22px !important;
    font-size:24px !important;
    line-height:1.12 !important;
  }

  #ipkHome2 .ipkHeroContent__text{
    margin-top:18px !important;
    font-size:16px !important;
    line-height:1.55 !important;
  }

  #ipkHome2 .ipkHeroContent__actions{
    margin-top:24px !important;
    width:100% !important;
  }

  #ipkHome2 .ipkHeroContent__actions .ipk-btn{
    width:100% !important;
    min-width:0 !important;
    min-height:52px !important;
  }

  #ipkHome2 .ipkHeroVisual{
    min-height:0 !important;
    margin-top:28px !important;
    justify-content:center !important;
  }

  #ipkHome2 .ipkHeroVisual__image{
    width:100% !important;
    max-width:360px !important;
    transform:none !important;
    margin:0 auto !important;
    display:block !important;
  }
}





/* =========================================================
   HP WATCH SIZE PICKER — same style as iPhone 2a
========================================================= */

#ipkHome2 .ipkWatchSizeArea{
  margin-top:22px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(29,35,47,.08) !important;
}

#ipkHome2 .ipkWatchSizeArea .ipkModelVariantHead{
  margin:0 0 16px !important;
}

#ipkHome2 .ipkWatchSizeArea .ipkModelVariantHead span{
  display:block !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:var(--ipk-brand-dark, #1D232F) !important;
}

#ipkHome2 .ipkWatchSizeGrid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}

#ipkHome2 .ipkWatchSizeCard{
  appearance:none !important;
  -webkit-appearance:none !important;
  position:relative !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  min-height:92px !important;
  padding:18px 16px !important;

  border-radius:20px !important;
  border:1px solid rgba(29,35,47,.08) !important;
  background:rgba(255,255,255,.9) !important;

  font-family:inherit !important;
  text-align:center !important;
  cursor:pointer !important;

  box-shadow:
    0 10px 26px rgba(29,35,47,.04),
    inset 0 1px 0 rgba(255,255,255,.9) !important;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease !important;
}

#ipkHome2 .ipkWatchSizeCard:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(109,204,223,.42) !important;
  box-shadow:
    0 18px 36px rgba(29,35,47,.08),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

#ipkHome2 .ipkWatchSizeCard.is-active{
  background:#f7fcff !important;
  border-color:var(--ipk-brand-cyan, #6DCCDF) !important;
  box-shadow:
    0 18px 36px rgba(109,204,223,.13),
    inset 0 0 0 1px rgba(109,204,223,.34) !important;
}

#ipkHome2 .ipkWatchSizeCard.is-active::after{
  content:"✓" !important;
  position:absolute !important;
  top:10px !important;
  right:10px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:24px !important;
  height:24px !important;

  border-radius:999px !important;
  background:var(--ipk-brand-cyan, #6DCCDF) !important;
  color:#fff !important;

  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

#ipkHome2 .ipkWatchSizeCard strong{
  display:block !important;
  margin:0 !important;
  padding:0 !important;

  font-size:20px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  color:var(--ipk-brand-dark, #1D232F) !important;
}


/* MOBILE */
@media(max-width:767px){

  #ipkHome2 .ipkWatchSizeArea{
    margin-top:16px !important;
    padding-top:14px !important;
  }

  #ipkHome2 .ipkWatchSizeArea .ipkModelVariantHead{
    margin-bottom:12px !important;
  }

  #ipkHome2 .ipkWatchSizeArea .ipkModelVariantHead span{
    font-size:16px !important;
  }

  #ipkHome2 .ipkWatchSizeGrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  #ipkHome2 .ipkWatchSizeCard{
    min-height:72px !important;
    padding:14px 12px !important;
    border-radius:18px !important;
  }

  #ipkHome2 .ipkWatchSizeCard strong{
  font-size:16px !important;
}
}

/* =========================================================
   IPHONEK 2.0 — BENEFIT BANNER ICON FIX
   Fix first homepage benefit icon with bad PNG background
========================================================= */

.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item:first-child .benefitBanner__picture{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
}

.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item:first-child .benefitBanner__picture img{
  display:none !important;
}

.type-index .benefitBanner.position--benefitHomepage .benefitBanner__item:first-child .benefitBanner__picture::before{
  content:"";
  display:block;
  width:34px;
  height:34px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:34px 34px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 34' fill='none'%3E%3Crect x='8' y='10' width='18' height='16' rx='3' stroke='%236DCCDF' stroke-width='2.2'/%3E%3Cpath d='M8 15h18M14 10v5M20 10v5' stroke='%236DCCDF' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
/* =========================================================
   IPHONEK 2.0 — HIDE ORIGINAL SHOPTET HOMEPAGE H1
========================================================= */

body.type-index #content-wrapper > h1{
  display:none !important;
}

body.type-index #content > h1{
  display:none !important;
}

body.type-index main > h1{
  display:none !important;
}

/* =========================================================
   IPHONEK 2.0 — MOBILE ACTIVE CHECK POSITION FIX
========================================================= */

@media (max-width: 760px){

  #ipkHome2 .ipk-card,
  #ipkHome2 .ipk-model,
  #ipkHome2 .ipk-series-card,
  #ipkHome2 .ipk-device-card,
  #ipkHome2 a[class*="card"],
  #ipkHome2 button[class*="card"]{
    overflow:visible !important;
  }

  #ipkHome2 .is-active::after,
  #ipkHome2 .is-selected::after,
  #ipkHome2 .active::after{
    top:-12px !important;
    right:-12px !important;
    transform:none !important;
    z-index:5 !important;
  }

  #ipkHome2 .is-active .ipk-check,
  #ipkHome2 .is-selected .ipk-check,
  #ipkHome2 .active .ipk-check,
  #ipkHome2 .is-active .check,
  #ipkHome2 .is-selected .check,
  #ipkHome2 .active .check{
    top:-12px !important;
    right:-12px !important;
    transform:none !important;
    z-index:5 !important;
  }
}

/* =========================================================
   IPHONEK 2.0 — CLS STRUCTURAL RESERVATION
   Reserve homepage space before JS injects #ipkHome2
========================================================= */

@media (min-width:768px){

  body.type-index #ipkHome2{
    min-height:1320px;
  }

  body.type-index:not(.ipk-home-ready) #content-wrapper::before{
    content:"";
    display:block;

    width:min(1360px, calc(100% - 40px));
    height:1320px;

    margin:24px auto 0;
    border-radius:34px;

    background:
      linear-gradient(
        135deg,
        rgba(255,255,255,.70) 0%,
        rgba(245,249,255,.70) 55%,
        rgba(237,248,252,.70) 100%
      );
  }

  body.type-index:not(.ipk-home-ready) .benefitBanner.position--benefitHomepage,
  body.type-index:not(.ipk-home-ready) .homepage-group-title,
  body.type-index:not(.ipk-home-ready) .products-block.carousel{
    visibility:hidden !important;
  }

}

@media (max-width:767px){

  body.type-index:not(.ipk-home-ready) #content-wrapper::before{
    content:"";
    display:block;

    width:calc(100% - 24px);
    height:2250px;

    margin:18px auto 0;
    border-radius:28px;

    background:
      linear-gradient(
        135deg,
        rgba(255,255,255,.72) 0%,
        rgba(245,249,255,.72) 55%,
        rgba(237,248,252,.72) 100%
      );
  }

  body.type-index:not(.ipk-home-ready) .benefitBanner.position--benefitHomepage,
  body.type-index:not(.ipk-home-ready) .homepage-group-title,
  body.type-index:not(.ipk-home-ready) .products-block.carousel{
    visibility:hidden !important;
  }

}