:root{
  --shop-bg:#f7f9fc;
  --shop-surface:#ffffff;
  --shop-text:#172033;
  --shop-muted:#64748b;
  --shop-line:#e2e8f0;
  --shop-blue:#1d6ef2;
  --shop-blue-dark:#164fb8;
  --shop-red:#d70000;
  --shop-max:1440px;
}

*{
  box-sizing:border-box;
}

html,
body{
  margin:0;
  min-height:100%;
}

body{
  font-family:Arial,Helvetica,sans-serif;
  background:var(--shop-bg);
  color:var(--shop-text);
}

button,
input{
  font:inherit;
}

a{
  color:inherit;
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.shop-header{
  background:var(--shop-surface);
  border-bottom:1px solid var(--shop-line);
}

.shop-header__main{
  width:min(var(--shop-max),calc(100% - 40px));
  margin:0 auto;
  min-height:86px;
  display:grid;
  grid-template-columns:auto minmax(320px,1fr) auto;
  align-items:center;
  gap:36px;
}

.shop-brand{
  display:flex;
  align-items:center;
  line-height:1;
  text-decoration:none;
  flex:0 0 auto;
}

.brand-logo{
  color:#d70000;
  font-size:32px;
  font-weight:500;
  letter-spacing:0.5px;
  white-space:nowrap;
}

.brand-logo sup{
  font-size:16px;
  margin-left:3px;
}

.shop-search{
  display:flex;
  min-width:0;
  height:48px;
  background:#fff;
  border:1px solid #cbd5e1;
  border-radius:10px;
  overflow:hidden;
  transition:border-color .15s ease,box-shadow .15s ease;
}

.shop-search:focus-within{
  border-color:var(--shop-blue);
  box-shadow:0 0 0 3px rgba(29,110,242,.12);
}

.shop-search input{
  min-width:0;
  flex:1 1 auto;
  border:0;
  outline:0;
  padding:0 16px;
  color:var(--shop-text);
  background:transparent;
}

.shop-search input::placeholder{
  color:#94a3b8;
}

.shop-search button{
  flex:0 0 auto;
  border:0;
  padding:0 24px;
  background:var(--shop-blue);
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.shop-search button:hover{
  background:var(--shop-blue-dark);
}

.shop-actions{
  display:flex;
  align-items:center;
  gap:8px;
}

.shop-action{
  min-height:44px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:#334155;
  cursor:pointer;
}

.shop-action:hover{
  background:#f8fafc;
  border-color:var(--shop-line);
}

.shop-action__icon{
  font-size:20px;
  line-height:1;
}

.shop-cart__count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  background:var(--shop-red);
  color:#fff;
  font-size:12px;
  font-weight:700;
}

.shop-nav{
  border-top:1px solid #f1f5f9;
}

.shop-nav__inner{
  width:min(var(--shop-max),calc(100% - 40px));
  min-height:54px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:38px;
}

.shop-nav a{
  display:flex;
  align-items:center;
  min-height:54px;
  text-decoration:none;
  color:#1e293b;
  font-weight:700;
  border-bottom:3px solid transparent;
}

.shop-nav a:hover{
  color:var(--shop-blue);
  border-bottom-color:var(--shop-blue);
}

.shop-main{
  width:min(var(--shop-max),calc(100% - 40px));
  margin:0 auto;
  padding:42px 0 80px;
}

.shop-stage{
  min-height:280px;
  padding:46px;
  border:1px solid var(--shop-line);
  border-radius:18px;
  background:var(--shop-surface);
}

.shop-stage__eyebrow{
  margin:0 0 12px;
  color:var(--shop-blue);
  font-weight:700;
}

.shop-stage h1{
  max-width:850px;
  margin:0;
  font-size:42px;
  line-height:1.08;
  letter-spacing:-.7px;
}

.shop-stage p:last-child{
  max-width:760px;
  margin:20px 0 0;
  color:var(--shop-muted);
  font-size:17px;
  line-height:1.55;
}

@media (max-width:900px){
  .shop-header__main{
    width:min(100% - 24px,var(--shop-max));
    grid-template-columns:1fr auto;
    gap:14px;
    padding:14px 0;
  }

  .shop-search{
    grid-column:1 / -1;
    grid-row:2;
  }

  .shop-nav__inner{
    width:100%;
    padding:0 12px;
    gap:10px;
    overflow-x:auto;
  }

  .shop-nav a{
    flex:0 0 auto;
    white-space:nowrap;
    padding:0 10px;
  }

  .shop-main{
    width:min(100% - 24px,var(--shop-max));
    padding-top:24px;
  }

  .shop-stage{
    padding:28px 22px;
  }

  .shop-stage h1{
    font-size:32px;
  }
}

@media (max-width:560px){
  .brand-logo{
    font-size:27px;
  }

  .brand-logo sup{
    font-size:13px;
  }

  .shop-action{
    padding:0 7px;
  }

  .shop-action > span:not(.shop-action__icon):not(.shop-cart__count){
    display:none;
  }

  .shop-search{
    height:46px;
  }

  .shop-search button{
    padding:0 16px;
  }

  .shop-stage h1{
    font-size:28px;
  }
}

/* ALUCON_SHOP_HOME_APPROVED_V1 */

.shop-main--home{
  padding-top:24px;
}

.home-hero{
  position:relative;
  min-height:470px;
  overflow:hidden;
  border-radius:18px 18px 0 0;
  background:#12304c;
}

.home-hero__image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.home-hero__shade{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(5,24,45,.82) 0%,
    rgba(5,24,45,.54) 37%,
    rgba(5,24,45,.08) 72%
  );
}

.home-hero__content{
  position:relative;
  z-index:1;
  max-width:620px;
  padding:70px 46px 150px;
  color:#fff;
}

.home-hero__content h1{
  margin:0;
  font-size:48px;
  line-height:1.04;
  letter-spacing:-1px;
}

.home-hero__content p{
  margin:20px 0 0;
  font-size:18px;
  line-height:1.55;
  color:rgba(255,255,255,.94);
}

.home-categories{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:-106px 36px 0;
}

.home-category-card{
  display:block;
  overflow:hidden;
  border:1px solid #dce3ec;
  border-radius:14px;
  background:#fff;
  color:var(--shop-text);
  text-decoration:none;
  box-shadow:0 12px 32px rgba(15,23,42,.11);
  transition:transform .15s ease,box-shadow .15s ease;
}

.home-category-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(15,23,42,.15);
}

.home-category-card__visual{
  height:190px;
  background-image:url("/assets/windows-video/windows-pl-desktop.webp");
  background-size:cover;
  background-repeat:no-repeat;
}

.home-category-card__visual--windows{
  background-position:22% 58%;
}

.home-category-card__visual--balcony{
  background-position:60% 55%;
}

.home-category-card__visual--doors{
  background-position:88% 55%;
}

.home-category-card__body{
  min-height:100px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
}

.home-category-card h2{
  margin:0;
  color:#172033;
  font-size:20px;
  line-height:1.2;
}

.home-category-card:first-child h2{
  color:var(--shop-red);
}

.home-category-card p{
  margin:6px 0 0;
  color:var(--shop-muted);
  font-size:14px;
}

.home-category-card__arrow{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#e9f2ff;
  color:#174ea6;
  font-size:20px;
}

.home-search-band{
  display:grid;
  grid-template-columns:minmax(290px,.8fr) minmax(420px,1.5fr);
  align-items:center;
  gap:34px;
  margin-top:24px;
  padding:30px 36px;
  border-radius:16px;
  background:#eef7ff;
}

.home-search-band__intro{
  display:flex;
  align-items:center;
  gap:16px;
}

.home-search-band__icon{
  font-size:42px;
  line-height:1;
  color:#0b3975;
}

.home-search-band h2{
  margin:0;
  font-size:19px;
}

.home-search-band p{
  margin:6px 0 0;
  color:var(--shop-muted);
  font-size:13px;
}

.home-search-form{
  display:flex;
  height:46px;
  overflow:hidden;
  border:1px solid #cbd5e1;
  border-radius:999px;
  background:#fff;
}

.home-search-form input{
  flex:1 1 auto;
  min-width:0;
  padding:0 18px;
  border:0;
  outline:0;
  background:transparent;
}

.home-search-form button{
  min-width:110px;
  border:0;
  border-radius:999px;
  background:#0b4b9f;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.home-benefits{
  display:grid;
  grid-template-columns:repeat(8,minmax(0,1fr));
  margin-top:18px;
  padding:28px 20px;
  border:1px solid var(--shop-line);
  border-radius:16px;
  background:#fff;
}

.home-benefit{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  padding:0 13px;
  border-right:1px solid #e7edf4;
  color:#172033;
  text-align:center;
  text-decoration:none;
}

.home-benefit:last-child{
  border-right:0;
}

.home-benefit__icon{
  color:#164a92;
  font-size:29px;
  line-height:1;
}

.home-benefit strong{
  font-size:13px;
}

.home-benefit small{
  color:var(--shop-muted);
  font-size:11px;
  line-height:1.35;
}

.home-brand-banner{
  position:relative;
  min-height:240px;
  display:grid;
  grid-template-columns:1.35fr 1fr;
  align-items:stretch;
  overflow:hidden;
  margin-top:18px;
  border-radius:16px;
  background-image:url("/assets/windows-video/windows-pl-desktop.webp");
  background-size:cover;
  background-position:center;
  color:#fff;
}

.home-brand-banner__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(4,25,37,.9) 0%,
    rgba(4,25,37,.68) 48%,
    rgba(4,25,37,.44) 100%
  );
}

.home-brand-banner__content{
  position:relative;
  z-index:1;
  padding:45px 40px;
}

.home-brand-banner__content h2{
  margin:0;
  font-size:28px;
}

.home-brand-banner__content h2 span{
  color:#ff1b16;
}

.home-brand-banner__content p{
  max-width:620px;
  margin:15px 0 0;
  line-height:1.5;
}

.home-brand-points{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:rgba(8,25,43,.46);
}

.home-brand-points > div{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  padding:28px 20px;
  border-left:1px solid rgba(255,255,255,.18);
}

.home-brand-points strong{
  font-size:14px;
}

.home-brand-points span{
  font-size:11px;
  line-height:1.4;
  color:rgba(255,255,255,.83);
}

.home-popular{
  margin-top:18px;
  padding:26px 30px;
  border:1px solid var(--shop-line);
  border-radius:16px;
  background:#fff;
}

.home-popular h2{
  margin:0 0 18px;
  font-size:23px;
}

.size-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.size-grid a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#fff;
  color:#334155;
  font-weight:700;
  text-decoration:none;
}

.size-grid a:hover{
  border-color:var(--shop-blue);
  color:var(--shop-blue);
}

.shop-footer{
  min-height:90px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:18px;
  padding:22px 28px;
  border-top:1px solid var(--shop-line);
  background:#fff;
}

.brand-logo--footer{
  font-size:24px;
}

.brand-logo--footer sup{
  font-size:11px;
}

.shop-footer__links{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
}

.shop-footer__links a{
  color:#64748b;
  font-size:13px;
  text-decoration:none;
}

.category-heading{
  max-width:900px;
  padding:24px 0 28px;
}

.category-heading__back{
  display:inline-block;
  margin-bottom:24px;
  color:var(--shop-blue);
  font-size:14px;
  text-decoration:none;
}

.category-heading h1{
  margin:0;
  font-size:38px;
  line-height:1.08;
}

.category-heading > p:last-child{
  max-width:720px;
  margin:16px 0 0;
  color:var(--shop-muted);
  font-size:16px;
  line-height:1.55;
}

.application-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.application-grid--category{
  padding:0;
}

.application-card{
  min-height:285px;
  display:flex;
  flex-direction:column;
  padding:26px;
  border:1px solid #dbe3ee;
  border-radius:16px;
  background:#fff;
  color:var(--shop-text);
  text-decoration:none;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.application-card:hover{
  transform:translateY(-2px);
  border-color:#93c5fd;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
}

.application-card--production{
  background:#f8fbff;
  border-color:#bfdbfe;
}

.application-card__number{
  color:#94a3b8;
  font-size:13px;
  font-weight:700;
}

.application-card h2{
  margin:30px 0 10px;
  font-size:21px;
  line-height:1.25;
}

.application-card p{
  margin:0;
  color:var(--shop-muted);
  line-height:1.5;
}

.application-card__meta{
  display:inline-flex;
  align-self:flex-start;
  margin-top:auto;
  padding-top:24px;
  color:#475569;
  font-size:13px;
  font-weight:700;
}

.application-card__action{
  margin-top:10px;
  color:var(--shop-blue);
  font-weight:700;
}

.category-popular{
  margin-top:26px;
}

@media (max-width:1100px){
  .home-benefits{
    grid-template-columns:repeat(4,minmax(0,1fr));
    row-gap:26px;
  }

  .home-benefit:nth-child(4){
    border-right:0;
  }

  .home-brand-banner{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .home-categories{
    grid-template-columns:1fr;
    margin:-70px 16px 0;
  }

  .home-category-card__visual{
    height:180px;
  }

  .home-search-band{
    grid-template-columns:1fr;
  }

  .application-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:650px){
  .shop-main--home{
    width:100%;
    padding-top:0;
  }

  .home-hero{
    min-height:390px;
    border-radius:0;
  }

  .home-hero__content{
    padding:62px 22px 130px;
  }

  .home-hero__content h1{
    font-size:36px;
  }

  .home-hero__content p{
    font-size:15px;
  }

  .home-categories{
    margin:-90px 12px 0;
  }

  .home-category-card__visual{
    height:145px;
  }

  .home-search-band{
    margin:16px 12px 0;
    padding:22px 18px;
  }

  .home-search-form{
    height:auto;
    flex-direction:column;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    gap:8px;
  }

  .home-search-form input{
    height:44px;
    border:1px solid #cbd5e1;
    border-radius:9px;
    background:#fff;
  }

  .home-search-form button{
    height:44px;
    border-radius:9px;
  }

  .home-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:16px 12px 0;
  }

  .home-benefit{
    min-height:115px;
    justify-content:flex-start;
    border-right:0;
  }

  .home-brand-banner{
    margin:16px 12px 0;
  }

  .home-brand-banner__content{
    padding:30px 22px;
  }

  .home-brand-points{
    grid-template-columns:1fr;
  }

  .home-brand-points > div{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.18);
  }

  .home-popular{
    margin:16px 12px 0;
  }

  .shop-footer{
    flex-direction:column;
    align-items:flex-start;
    margin-top:16px;
  }

  .category-heading{
    padding-top:10px;
  }

  .category-heading h1{
    font-size:31px;
  }
}


/* ALUCON_SHOP_HOME_VISUAL_FIX_20260914 */

:root{
  --shop-navy:#0b2f5b;
  --shop-navy-soft:#234f7d;
}

.shop-nav a,
.home-search-band h2,
.home-benefit,
.home-benefit strong,
.home-popular h2,
.category-heading h1{
  color:var(--shop-navy);
}

.home-category-card h2{
  color:var(--shop-navy);
}

.home-category-card:first-child h2{
  color:var(--shop-red);
}

.home-search-band p,
.home-benefit small,
.home-category-card p,
.home-popular p{
  color:#5f7187;
}

.home-benefit__icon{
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#0b4b9f;
  flex:0 0 auto;
}

.home-benefit__icon svg{
  width:31px;
  height:31px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.home-benefit strong{
  font-weight:700;
}

.home-benefit:hover .home-benefit__icon{
  color:#1667c7;
}


/* ALUCON_WINDOWS_USE_APPROVED_V1 */

.windows-use-page{
  --windows-navy:#0b3468;
  --windows-blue:#0667e8;
  --windows-muted:#60758e;
  --windows-line:#d7e3ef;

  position:relative;
  padding-top:0;
  color:var(--windows-navy);
}


/* HERO */

.windows-use-hero{
  position:relative;
  min-height:205px;
  margin-top:0;
  overflow:hidden;
  border-radius:0;
}

.windows-use-hero__background{
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      90deg,
      rgba(247,251,255,.99) 0%,
      rgba(247,251,255,.96) 42%,
      rgba(247,251,255,.72) 67%,
      rgba(247,251,255,.86) 100%
    ),
    url("/assets/windows-video/windows-pl-desktop.webp");

  background-size:cover;
  background-position:center 48%;
}

.windows-use-hero__content{
  position:relative;
  z-index:2;
  max-width:850px;
  padding:34px 0 32px;
}

.windows-breadcrumb{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:22px;
  color:#55799e;
  font-size:14px;
}

.windows-breadcrumb a{
  color:#3b82f6;
  text-decoration:none;
}

.windows-breadcrumb a:hover{
  text-decoration:underline;
}

.windows-use-hero h1{
  margin:0;
  color:var(--windows-navy);
  font-size:42px;
  line-height:1.08;
  letter-spacing:-.8px;
}

.windows-use-hero__lead{
  max-width:820px;
  margin:13px 0 0;
  color:var(--windows-muted);
  font-size:17px;
  line-height:1.5;
}

.windows-use-hero__note{
  position:absolute;
  z-index:2;
  top:56px;
  right:54px;

  transform:rotate(-5deg);

  color:#0a3b78;
  font-family:"Segoe Print","Comic Sans MS",cursive;
  font-size:20px;
  font-weight:600;
  line-height:1.25;
  text-align:center;
}


/* KARTY */

.windows-use-grid{
  position:relative;
  z-index:3;

  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;

  margin-top:-6px;
}

.windows-use-card{
  display:flex;
  flex-direction:column;

  overflow:hidden;

  min-width:0;
  min-height:420px;

  border:1px solid var(--windows-line);
  border-radius:15px;

  background:#fff;

  color:var(--windows-navy);
  text-decoration:none;

  box-shadow:0 8px 24px rgba(15,47,79,.045);

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

.windows-use-card:hover{
  transform:translateY(-3px);

  border-color:#94bff0;

  box-shadow:0 14px 32px rgba(15,47,79,.10);
}


/* ZDJECIA */

.windows-use-card__photo{
  position:relative;

  height:190px;

  overflow:hidden;

  background-color:#e9f1f7;

  background-image:
    linear-gradient(rgba(255,255,255,.02),rgba(255,255,255,.02)),
    url("/assets/windows-video/windows-pl-desktop.webp");

  background-size:cover;
  background-repeat:no-repeat;
}

.windows-use-card__photo--renovation{
  background-image:
    linear-gradient(rgba(255,255,255,.02),rgba(255,255,255,.02)),
    url("/assets/windows-video/windows-pl-desktop.webp");
  background-position:35% 53%;
}

.windows-use-card__photo--energy{
  background-image:
    linear-gradient(rgba(255,255,255,.02),rgba(255,255,255,.02)),
    url("/assets/windows-video/windows-pl-desktop.webp");
  background-position:76% 50%;
}


/*
  Pierwszy kafel jest przygotowany pod dwa osobne zdjęcia:

  /sklep/assets/window-use-gazebo.webp
  /sklep/assets/window-use-workshop.webp

  Dopóki tych plików nie dodamy, używany jest istniejący
  lokalny materiał ALUCON jako bezpieczny fallback.
*/

.windows-use-card__photo--split{
  display:flex;

  background:none;
}

.windows-use-photo-half{
  position:absolute;
  inset:0;

  background-color:#e9f1f7;
  background-image:url("/assets/windows-video/windows-pl-desktop.webp");
  background-size:cover;
  background-repeat:no-repeat;
}

.windows-use-photo-half--gazebo{
  right:42%;

  clip-path:polygon(
    0 0,
    100% 0,
    78% 100%,
    0 100%
  );

  background-image:url("/assets/windows-video/windows-pl-desktop.webp");
  background-position:15% 54%;
}

.windows-use-photo-half--workshop{
  left:43%;

  clip-path:polygon(
    22% 0,
    100% 0,
    100% 100%,
    0 100%
  );

  background-image:url("/assets/windows-video/windows-pl-desktop.webp");
  background-position:85% 54%;
}

.windows-use-photo-diagonal{
  position:absolute;

  top:-15px;
  left:51%;

  width:3px;
  height:225px;

  transform:rotate(13deg);

  background:#fff;

  box-shadow:0 0 0 1px rgba(255,255,255,.6);
}

.windows-use-photo-label{
  display:none;
}


/* TRESC KART */

.windows-use-card__body{
  flex:1 1 auto;

  display:flex;
  flex-direction:column;

  padding:18px 21px 19px;
}

.windows-use-card h2{
  margin:0;

  color:var(--windows-navy);

  font-size:20px;
  line-height:1.16;
}

.windows-use-card__body > p{
  min-height:50px;

  margin:11px 0 0;

  color:var(--windows-muted);

  font-size:14px;
  line-height:1.45;
}

.windows-use-card__footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;

  margin-top:auto;
  padding-top:17px;

  border-top:1px solid #e3ebf3;
}

.windows-use-card__footer > div{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.windows-use-card__meta{
  color:#274d76;

  font-size:12px;
  font-weight:600;
}

.windows-use-card__footer strong{
  color:var(--windows-blue);

  font-size:16px;
}

.windows-use-card__arrow{
  width:44px;
  height:44px;

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

  flex:0 0 auto;

  border-radius:50%;

  background:#edf5ff;
  color:#075abf;

  font-size:25px;

  transition:
    transform .15s ease,
    background .15s ease;
}

.windows-use-card:hover .windows-use-card__arrow{
  transform:translateX(3px);

  background:#dcecff;
}


/* POPULARNE WYMIARY */

.windows-popular{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:35px;

  margin-top:22px;
  padding:24px 26px;

  border:1px solid var(--windows-line);
  border-radius:15px;

  background:#fff;
}

.windows-popular__heading{
  flex:0 0 auto;
}

.windows-popular__heading span{
  display:block;

  margin-bottom:5px;

  color:#68819c;

  font-size:13px;
}

.windows-popular__heading h2{
  margin:0;

  color:var(--windows-navy);

  font-size:22px;
}

.windows-popular__sizes{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}

.windows-popular__sizes a{
  min-height:40px;

  display:inline-flex;
  align-items:center;

  padding:0 17px;

  border:1px solid #b7cde4;
  border-radius:9px;

  background:#fff;

  color:#123f72;

  font-size:14px;
  font-weight:700;

  text-decoration:none;

  transition:
    border-color .15s ease,
    background .15s ease;
}

.windows-popular__sizes a:hover{
  border-color:#3b82f6;

  background:#f2f7ff;
}


/* MOBILE */

@media (max-width:950px){

  .windows-use-hero__note{
    display:none;
  }

  .windows-use-grid{
    grid-template-columns:1fr;
  }

  .windows-use-card{
    min-height:auto;
  }

  .windows-use-card__photo{
    height:230px;
  }

  .windows-popular{
    align-items:flex-start;
    flex-direction:column;
  }

  .windows-popular__sizes{
    justify-content:flex-start;
  }

}


@media (max-width:600px){

  .windows-use-page{
    padding-top:0;
  }

  .windows-use-hero{
    min-height:auto;
  }

  .windows-use-hero__content{
    padding:24px 0 26px;
  }

  .windows-breadcrumb{
    margin-bottom:17px;
  }

  .windows-use-hero h1{
    font-size:31px;
    letter-spacing:-.4px;
  }

  .windows-use-hero__lead{
    font-size:15px;
  }

  .windows-use-grid{
    gap:14px;
  }

  .windows-use-card__photo{
    height:180px;
  }

  .windows-use-card__body{
    padding:17px;
  }

  .windows-use-card h2{
    font-size:18px;
  }

  .windows-use-card__body > p{
    min-height:auto;
  }

  .windows-popular{
    padding:20px 18px;
  }

  .windows-popular__sizes{
    width:100%;
  }

  .windows-popular__sizes a{
    flex:1 1 calc(50% - 5px);
    justify-content:center;
  }

}

/* ALUCON_WINDOWS_CARD_TITLE_COLOR_20260914 */
.windows-use-card h2{
  color:#0b3f78;
}

/* ALUCON_WINDOWS_CARD_TITLE_COLOR_LIGHTER_20260914 */
.windows-use-card h2{
  color:#174f8f;
}

/* ALUCON_HOME_CARD_TITLE_COLOR_20260914 */
.home-category-card h2,
.home-category-card:first-child h2{
  color:#174f8f;
}

/* ALUCON_SHOP_HEADING_COLOR_RULE_V1
   Zasada globalna:
   nagłówki treści sklepu i tytuły kafli = #174f8f.
   Wyjątek: nagłówki na ciemnym tle / zdjęciu mogą pozostać białe.
*/
:root{
  --shop-heading-color:#174f8f;
}

.windows-use-hero h1,
.windows-use-card h2,
.home-category-card h2,
.home-category-card:first-child h2{
  color:var(--shop-heading-color);
}


/* ALUCON_WINDOW_SELECTOR_V1 */

.window-selector-page{
  --selector-navy:var(--shop-heading-color,#174f8f);
  --selector-blue:#1267d6;
  --selector-muted:#60758e;
  --selector-line:#d9e4ef;

  padding-top:22px;
}

.selector-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;

  margin-bottom:14px;

  color:#6b8198;
  font-size:13px;
}

.selector-breadcrumb a{
  color:#397acc;
  text-decoration:none;
}

.selector-summary{
  display:grid;
  grid-template-columns:205px minmax(0,1fr);

  overflow:hidden;

  border:1px solid var(--selector-line);
  border-radius:15px;

  background:#fff;
}

.selector-current{
  padding:20px;

  border-right:1px solid var(--selector-line);

  background:#f7fbff;
}

.selector-current h2{
  margin:0 0 18px;

  color:var(--selector-navy);

  font-size:16px;
}

.selector-current__item{
  display:flex;
  align-items:flex-start;
  gap:10px;

  margin-bottom:16px;
}

.selector-current__icon{
  width:25px;
  flex:0 0 25px;

  color:#1267d6;

  font-size:20px;
  text-align:center;
}

.selector-current__item div{
  min-width:0;
}

.selector-current__item small{
  display:block;

  margin-bottom:3px;

  color:#6b8198;
}

.selector-current__item strong{
  display:block;

  color:#174f8f;

  font-size:13px;
  line-height:1.35;
}

.selector-clear{
  display:inline-block;

  margin-top:3px;

  color:#d50000;

  font-size:12px;
  font-weight:700;
}

.selector-summary__main{
  position:relative;

  min-height:185px;

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

  overflow:hidden;

  background:
    linear-gradient(
      90deg,
      #fff 0%,
      #fff 54%,
      rgba(255,255,255,.72) 70%,
      rgba(255,255,255,.9) 100%
    ),
    url("/assets/windows-video/windows-pl-desktop.webp");

  background-size:cover;
  background-position:right center;
}

.selector-summary__copy{
  position:relative;
  z-index:2;

  max-width:760px;

  padding:28px 30px;
}

.selector-summary__eyebrow{
  display:block;

  margin-bottom:6px;

  color:#397acc;

  font-size:13px;
  font-weight:700;
}

.selector-summary h1{
  margin:0;

  color:var(--selector-navy);

  font-size:34px;
  line-height:1.08;
}

.selector-summary__copy p{
  max-width:700px;

  margin:11px 0 0;

  color:#526d88;

  font-size:14px;
  line-height:1.5;
}

.selector-summary__actions{
  display:flex;
  align-items:center;
  gap:28px;

  margin-top:18px;
}

.selector-summary__actions a,
.selector-link-button{
  padding:0;

  border:0;

  background:none;

  color:#397acc;

  font-size:12px;
  text-decoration:underline;

  cursor:pointer;
}

.selector-summary__visual{
  position:relative;
  z-index:2;

  width:270px;
  min-height:185px;

  flex:0 0 270px;
}

.selector-summary__visual span{
  position:absolute;

  top:56px;
  right:26px;

  transform:rotate(-6deg);

  color:#174f8f;

  font-family:"Segoe Print","Comic Sans MS",cursive;
  font-size:19px;
  font-weight:600;
  line-height:1.25;
  text-align:center;
}


/* WYMIAR */

.selector-size-step{
  margin-top:18px;
  padding:28px;

  border:1px solid var(--selector-line);
  border-radius:15px;

  background:#fff;
}

.selector-size-step__heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:40px;
}

.selector-size-step__heading span{
  color:#397acc;

  font-size:12px;
  font-weight:700;
}

.selector-size-step__heading h2{
  margin:4px 0 0;

  color:var(--selector-navy);

  font-size:25px;
}

.selector-size-step__heading p{
  max-width:430px;

  margin:0;

  color:#6b8198;

  line-height:1.5;
}

.selector-size-form{
  display:flex;
  align-items:flex-end;
  gap:14px;

  margin-top:26px;
}

.selector-size-form label{
  flex:0 1 260px;
}

.selector-size-form label > span{
  display:block;

  margin-bottom:7px;

  color:#294d72;

  font-size:13px;
  font-weight:700;
}

.selector-measure{
  display:flex;
  align-items:center;

  height:48px;

  overflow:hidden;

  border:1px solid #bfd0e2;
  border-radius:9px;

  background:#fff;
}

.selector-measure input{
  min-width:0;
  flex:1;

  height:100%;

  padding:0 14px;

  border:0;
  outline:0;

  color:#174f8f;

  font-size:18px;
  font-weight:700;
}

.selector-measure > span{
  padding:0 13px;

  color:#6b8198;

  font-size:13px;
}

.selector-size-x{
  padding-bottom:13px;

  color:#6b8198;

  font-size:24px;
}

.selector-size-form button{
  height:48px;

  padding:0 25px;

  border:0;
  border-radius:9px;

  background:#0755ad;

  color:#fff;

  font-weight:700;

  cursor:pointer;
}

.selector-popular{
  margin-top:24px;
  padding-top:20px;

  border-top:1px solid #e5edf5;
}

.selector-popular > strong{
  display:block;

  margin-bottom:10px;

  color:#174f8f;

  font-size:14px;
}

.selector-popular__list{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.selector-popular button,
.selector-other-sizes button{
  min-height:38px;

  padding:0 14px;

  border:1px solid #bfd0e2;
  border-radius:8px;

  background:#fff;

  color:#174f8f;

  font-weight:700;

  cursor:pointer;
}

.selector-popular button:hover,
.selector-other-sizes button:hover{
  border-color:#2c78cf;

  background:#f2f7fd;
}


/* WYNIKI */

.selector-results-layout{
  display:grid;
  grid-template-columns:205px minmax(0,1fr);

  margin-top:18px;

  border:1px solid var(--selector-line);
  border-radius:15px;

  background:#fff;
}

.selector-filters{
  padding:20px;

  border-right:1px solid var(--selector-line);

  background:#fbfdff;
}

.selector-filter-group{
  padding:0 0 18px;
  margin:0 0 18px;

  border-bottom:1px solid #e3ebf3;
}

.selector-filter-group:last-child{
  margin-bottom:0;
  padding-bottom:0;

  border-bottom:0;
}

.selector-filter-group h3{
  margin:0 0 11px;

  color:#174f8f;

  font-size:14px;
}

.selector-filter-group label{
  display:flex;
  align-items:center;
  gap:8px;

  margin-top:8px;

  color:#3d5f80;

  font-size:13px;
}

.selector-filter-group input{
  width:17px;
  height:17px;

  accent-color:#e60012;
}

.selector-products{
  min-width:0;

  padding:20px;
}

.selector-products__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;

  margin-bottom:18px;
}

.selector-products__toolbar > div{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.selector-products__toolbar strong{
  color:#174f8f;

  font-size:17px;
}

.selector-products__toolbar span{
  color:#6b8198;

  font-size:12px;
}

.selector-sort{
  display:flex;
  align-items:center;
  gap:8px;

  color:#6b8198;

  font-size:12px;
}

.selector-sort select{
  height:38px;

  padding:0 30px 0 11px;

  border:1px solid #c5d5e5;
  border-radius:8px;

  background:#fff;

  color:#174f8f;
}


/* DO CZASU PODLACZENIA CP */

.selector-products-placeholder{
  min-height:310px;

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

  padding:40px;

  border:1px dashed #b9cce0;
  border-radius:12px;

  background:#f8fbfe;

  text-align:center;
}

.selector-products-placeholder__icon{
  margin-bottom:12px;

  color:#397acc;

  font-size:38px;
}

.selector-products-placeholder h2{
  margin:0;

  color:#174f8f;

  font-size:21px;
}

.selector-products-placeholder p{
  max-width:580px;

  margin:9px 0 0;

  color:#637b93;

  line-height:1.5;
}

.selector-products-placeholder__notice{
  font-size:12px;
}


/* PRODUKCJA */

.selector-production-help{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;

  margin-top:14px;
  padding:18px 20px;

  border:1px solid #cfe0ef;
  border-radius:10px;

  background:#f2f8fd;
}

.selector-production-help div{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.selector-production-help strong{
  color:#174f8f;
}

.selector-production-help span{
  color:#647b92;

  font-size:12px;
}

.selector-production-help button{
  min-height:40px;

  padding:0 18px;

  border:1px solid #3479c8;
  border-radius:8px;

  background:#fff;

  color:#174f8f;

  font-weight:700;

  cursor:pointer;
}


/* INNE WYMIARY */

.selector-other-sizes{
  margin-top:16px;
}

.selector-other-sizes__heading h2{
  margin:0 0 10px;

  color:#174f8f;

  font-size:15px;
}

.selector-other-sizes__list{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}

.selector-other-sizes button{
  width:100%;
}


/* ZALETY */

.selector-trust{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));

  margin-top:16px;

  border:1px solid #dce6f0;
  border-radius:10px;

  background:#fff;
}

.selector-trust > div{
  min-height:86px;

  display:grid;
  grid-template-columns:38px 1fr;
  align-content:center;

  padding:14px;

  border-right:1px solid #e5edf5;
}

.selector-trust > div:last-child{
  border-right:0;
}

.selector-trust > div > span{
  grid-row:1 / span 2;

  color:#155cae;

  font-size:27px;
}

.selector-trust strong{
  color:#174f8f;

  font-size:13px;
}

.selector-trust small{
  color:#6b8198;

  font-size:11px;
  line-height:1.35;
}


/* MOBILE */

@media (max-width:900px){

  .selector-summary,
  .selector-results-layout{
    grid-template-columns:1fr;
  }

  .selector-current{
    border-right:0;
    border-bottom:1px solid var(--selector-line);
  }

  .selector-summary__visual{
    display:none;
  }

  .selector-size-step__heading{
    flex-direction:column;
    gap:10px;
  }

  .selector-size-form{
    flex-wrap:wrap;
  }

  .selector-size-form label{
    flex:1 1 220px;
  }

  .selector-filters{
    border-right:0;
    border-bottom:1px solid var(--selector-line);

    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
  }

  .selector-filter-group{
    margin:0;
  }

  .selector-other-sizes__list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .selector-trust{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media (max-width:600px){

  .window-selector-page{
    padding-top:12px;
  }

  .selector-summary__copy{
    padding:22px 18px;
  }

  .selector-summary h1{
    font-size:27px;
  }

  .selector-size-step{
    padding:20px 16px;
  }

  .selector-size-form{
    display:grid;
    grid-template-columns:1fr 24px 1fr;
  }

  .selector-size-form label{
    min-width:0;
  }

  .selector-size-form button{
    grid-column:1 / -1;
  }

  .selector-popular__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .selector-popular button{
    width:100%;
  }

  .selector-filters{
    grid-template-columns:1fr;
  }

  .selector-products{
    padding:15px;
  }

  .selector-products__toolbar{
    align-items:flex-start;
    flex-direction:column;
  }

  .selector-products-placeholder{
    min-height:260px;
    padding:25px 18px;
  }

  .selector-production-help{
    align-items:flex-start;
    flex-direction:column;
  }

  .selector-other-sizes__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .selector-trust{
    grid-template-columns:1fr;
  }

  .selector-trust > div{
    border-right:0;
    border-bottom:1px solid #e5edf5;
  }

}

/* ALUCON_WINDOW_SELECTOR_HIDDEN_FIX_20260914 */
.window-selector-page [hidden]{
  display:none !important;
}


/* ALUCON_FILTER_UNAVAILABLE_V1 */

.selector-filter-group label.selector-filter-unavailable{
  opacity:.42;
  cursor:not-allowed;
  user-select:none;
}

.selector-filter-group label.selector-filter-unavailable input{
  cursor:not-allowed;
}

.selector-filter-group label.selector-filter-unavailable span{
  text-decoration:none;
  color:#7f8fa0;
}

.selector-other-sizes__list > span{
  grid-column:1 / -1;
  padding:10px 2px;
  color:#71859a;
  font-size:12px;
}


/* ALUCON_SHARED_BENEFIT_ICONS_V1 */

/*
  Ikony na podstronach korzystaja z tych samych SVG,
  ktore sa uzywane w sekcji korzysci strony glownej.
*/
.selector-trust__icon{
  width:30px !important;
  height:30px !important;

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

  color:#0755ad;

  font-size:0 !important;
}

.selector-trust__icon svg{
  width:25px !important;
  height:25px !important;

  display:block;

  max-width:100%;
  max-height:100%;
}

/*
  SVG strony glownej powinny zachowac wlasne stroke/fill.
  Dla ikon opartych o currentColor zapewniamy ten sam granat.
*/
.selector-trust__icon svg *{
  vector-effect:non-scaling-stroke;
}


/* ALUCON_SELECTOR_BENEFITS_USE_HOME_COMPONENT_V1 */

/*
  Podstrony sklepu korzystaja z tego samego komponentu home-benefit
  co strona glowna. Jedyna roznica: tutaj sa 4 kafle zamiast 8.
*/
.home-benefits.selector-benefits{
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:16px;
}

@media (max-width:650px){
  .home-benefits.selector-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:16px 0 0;
  }
}


/* ALUCON_REAL_PRODUCT_RESULTS_V1 */

.selector-product-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.selector-products-loading,
.selector-products-empty,
.selector-products-error{
  min-height:180px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:28px;
  border:1px solid #d7e2ed;
  border-radius:12px;
  background:#f8fbfe;
  color:#637b93;
  text-align:center;
}

.selector-products-empty strong,
.selector-products-error strong{
  color:#174f8f;
  font-size:16px;
}

.selector-product-card{
  display:grid;
  grid-template-columns:160px minmax(0,1fr) 170px;
  gap:20px;
  align-items:center;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:12px;

  background:#fff;

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

.selector-product-card:hover{
  border-color:#b6cce0;
  box-shadow:0 5px 18px rgba(17,63,105,.07);
}

.selector-product-card.is-unavailable{
  background:#fafbfc;
}

.selector-product-card.is-unavailable
.selector-product-card__visual,
.selector-product-card.is-unavailable
.selector-product-card__content{
  opacity:.62;
}

.selector-product-card__visual{
  position:relative;

  width:160px;
  height:150px;

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

  border:1px solid #edf1f5;
  border-radius:10px;

  background:#fff;

  overflow:hidden;
}

.selector-product-card__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  padding:7px;
}

.selector-product-card__image-fallback{
  width:100%;
  height:100%;

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

  padding:15px;

  color:#8295a8;
  background:#f5f8fb;

  font-size:12px;
  text-align:center;
}

.selector-product-card__image-fallback[hidden]{
  display:none !important;
}

.selector-product-card__content{
  min-width:0;
}

.selector-product-card__title{
  margin:0;

  color:#174f8f;

  font-size:19px;
  line-height:1.25;
}

.selector-product-card__variant{
  margin-top:5px;

  color:#263b50;

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

.selector-product-card__specs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;

  margin-top:11px;
}

.selector-product-card__spec{
  display:inline-flex;
  align-items:center;

  min-height:27px;

  padding:0 9px;

  border:1px solid #d7e2ed;
  border-radius:999px;

  background:#f8fbfe;

  color:#536b82;

  font-size:12px;
}

.selector-product-card__availability{
  display:flex;
  align-items:center;
  gap:7px;

  margin-top:13px;

  font-size:13px;
}

.selector-product-card__availability.is-available{
  color:#237740;
}

.selector-product-card__availability.is-unavailable{
  color:#788a9b;
}

.selector-product-card__dot{
  width:8px;
  height:8px;

  flex:0 0 auto;

  border-radius:50%;

  background:currentColor;
}

.selector-product-card__stock{
  margin-top:4px;

  color:#70859a;

  font-size:12px;
}

.selector-product-card__pricebox{
  align-self:center;

  padding-left:18px;

  border-left:1px solid #e1e8ef;

  text-align:right;
}

.selector-product-card__price{
  color:#174f8f;

  font-size:23px;
  font-weight:800;
  line-height:1.15;

  white-space:nowrap;
}

.selector-product-card__vat{
  margin-top:4px;

  color:#7a8c9e;

  font-size:11px;
}


@media (max-width:760px){

  .selector-product-card{
    grid-template-columns:120px minmax(0,1fr);
    gap:14px;
  }

  .selector-product-card__visual{
    width:120px;
    height:120px;
  }

  .selector-product-card__pricebox{
    grid-column:1 / -1;

    padding-top:13px;
    padding-left:0;

    border-top:1px solid #e1e8ef;
    border-left:0;

    text-align:left;
  }

}


@media (max-width:480px){

  .selector-product-card{
    grid-template-columns:1fr;
  }

  .selector-product-card__visual{
    width:100%;
    height:210px;
  }

  .selector-product-card__title{
    font-size:18px;
  }

  .selector-product-card__price{
    font-size:22px;
  }

}



/* ALUCON_PRODUCT_GRID_V2 */

.selector-products__toolbar{
  align-items:center;
}

.selector-products__toolbar{
  flex-wrap:wrap;
}

.selector-view-toggle{
  display:flex;
  align-items:center;
  gap:4px;
  margin-left:8px;
}

.selector-view-toggle button{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 11px;
  border:1px solid transparent;
  border-radius:7px;
  background:#fff;
  color:#174f8f;
  font-weight:700;
  cursor:pointer;
}

.selector-view-toggle button.is-active{
  background:#e60012;
  border-color:#e60012;
  color:#fff;
}

.selector-product-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.selector-product-list.is-list{
  grid-template-columns:1fr;
}

.selector-product-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:12px;
  gap:0;
  border:1px solid #d5e1ec;
  border-radius:9px;
  background:#fff;
}

.selector-product-card:hover{
  border-color:#aebfd0;
  box-shadow:0 5px 18px rgba(17,63,105,.08);
}

.selector-product-card.is-unavailable{
  background:#fafbfc;
}

.selector-product-card.is-unavailable
.selector-product-card__visual,
.selector-product-card.is-unavailable
.selector-product-card__content{
  opacity:.58;
}

.selector-product-card__badge{
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;
  min-height:25px;
  display:flex;
  align-items:center;
  padding:0 9px;
  border-radius:5px;
  color:#fff;
  font-size:12px;
  font-weight:700;
}

.selector-product-card__badge.is-stock{
  background:#0aa946;
}

.selector-product-card__badge.is-out{
  background:#8799aa;
}

.selector-product-card__heart{
  position:absolute;
  top:10px;
  right:11px;
  z-index:2;
  color:#0052a4;
  font-size:28px;
  line-height:1;
}

.selector-product-card__visual{
  width:100%;
  height:190px;
  margin:9px 0 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:0;
  background:#fff;
  overflow:hidden;
  text-decoration:none;
}

.selector-product-card__image{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  padding:12px;
}

.selector-product-card__content{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
}

.selector-product-card__title-link{
  color:inherit;
  text-decoration:none;
}

.selector-product-card__title{
  margin:0;
  color:#0b4591;
  font-size:17px;
  line-height:1.23;
}

.selector-product-card__title-link:hover
.selector-product-card__title{
  text-decoration:underline;
}

.selector-product-card__variant{
  min-height:36px;
  margin-top:3px;
  color:#174f8f;
  font-size:13px;
  font-weight:500;
  line-height:1.35;
}

.selector-product-card__details{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:9px 0 0;
  padding:0;
  list-style:none;
  color:#466b98;
  font-size:12px;
  line-height:1.3;
}

.selector-product-card__details li::before{
  content:"◈";
  margin-right:7px;
  color:#4678b5;
  font-size:9px;
}

.selector-product-card__availability{
  margin-top:10px;
}

.selector-product-card__availability strong{
  font-size:12px;
}

.selector-product-card__price{
  margin-top:8px;
  color:#e60012;
  font-size:22px;
  font-weight:800;
  line-height:1;
}

.selector-product-card__vat{
  margin-top:2px;
  color:#7890a8;
  font-size:10px;
}

.selector-product-card__actions{
  display:flex;
  flex-direction:column;
  gap:5px;
  margin-top:10px;
}

.selector-product-card__details-btn,
.selector-product-card__cart-btn{
  min-height:37px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 10px;
  border-radius:5px;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}

.selector-product-card__details-btn{
  border:1px solid #1260bd;
  background:#fff;
  color:#0a4897;
}

.selector-product-card__details-btn:hover{
  background:#f3f8fd;
}

.selector-product-card__cart-btn{
  border:1px solid #e60012;
  background:#e60012;
  color:#fff;
  cursor:pointer;
}

.selector-product-card__cart-btn:disabled{
  border-color:#bcc7d0;
  background:#bcc7d0;
  cursor:not-allowed;
}

.selector-product-list.is-list
.selector-product-card{
  display:grid;
  grid-template-columns:160px minmax(0,1fr) 180px;
  gap:16px;
  align-items:center;
}

.selector-product-list.is-list
.selector-product-card__visual{
  height:145px;
  margin:0;
}

.selector-product-list.is-list
.selector-product-card__actions{
  align-self:center;
  margin-top:0;
}

.selector-product-list.is-list
.selector-product-card__badge{
  position:static;
  grid-column:1;
  grid-row:1;
  width:max-content;
  margin-bottom:-32px;
  z-index:3;
}

.selector-product-list.is-list
.selector-product-card__heart{
  display:none;
}


@media (max-width:1200px){
  .selector-product-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .selector-product-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .selector-product-list.is-list
  .selector-product-card{
    grid-template-columns:130px minmax(0,1fr);
  }

  .selector-product-list.is-list
  .selector-product-card__actions{
    grid-column:1 / -1;
  }
}

@media (max-width:600px){
  .selector-product-list{
    grid-template-columns:1fr;
  }

  .selector-product-card__visual{
    height:240px;
  }

  .selector-view-toggle{
    margin-left:0;
  }

  .selector-product-list.is-list
  .selector-product-card{
    display:flex;
  }
}



/* ALUCON_PRODUCT_DETAIL_V1 */

.shop-product-page{
  background:#f7f9fc;
  color:#172033;
}

.shop-product-page__inner{
  max-width:1240px;
  margin:0 auto;
  padding:18px 20px 40px;
}

.product-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-bottom:16px;
  color:#55728f;
  font-size:12px;
}

.product-breadcrumbs a{
  color:#3971ad;
  text-decoration:none;
}

.product-detail-main{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(330px,.9fr) 220px;
  gap:22px;
  align-items:start;
}

.product-detail-gallery,
.product-detail-info,
.product-detail-benefits,
.product-detail-tabs{
  border:1px solid #d8e3ed;
  border-radius:12px;
  background:#fff;
}

.product-detail-gallery{
  padding:18px;
}

.product-detail-main-image{
  min-height:470px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.product-detail-main-image img{
  width:100%;
  max-height:500px;
  object-fit:contain;
}

#productDetailImageFallback{
  color:#8295a8;
}

.product-detail-info{
  padding:22px;
}

.product-detail-badge{
  display:inline-flex;
  min-height:28px;
  align-items:center;
  padding:0 10px;
  border-radius:5px;
  color:#fff;
  font-size:12px;
  font-weight:700;
}

.product-detail-badge.is-available{
  background:#0aa946;
}

.product-detail-badge.is-unavailable{
  background:#8799aa;
}

.product-detail-info h1{
  margin:12px 0 2px;
  color:#174f8f;
  font-size:30px;
  line-height:1.12;
}

.product-detail-variant{
  color:#174f8f;
  font-size:18px;
}

.product-detail-specs{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
  color:#3d6491;
  font-size:14px;
}

.product-detail-specs li::before{
  content:"◈";
  margin-right:9px;
}

.product-detail-availability{
  margin-top:22px;
  font-weight:700;
}

.product-detail-availability.is-available{
  color:#0aa946;
}

.product-detail-availability.is-unavailable{
  color:#8799aa;
}

.product-detail-price-row{
  display:flex;
  align-items:flex-end;
  gap:10px;
  margin-top:16px;
}

.product-detail-price-row strong{
  color:#e60012;
  font-size:36px;
  line-height:1;
}

.product-detail-price-row span{
  color:#7890a8;
  font-size:12px;
}

.product-detail-actions{
  margin-top:20px;
}

.product-detail-actions button{
  min-height:48px;
  width:100%;
  border:0;
  border-radius:6px;
  background:#e60012;
  color:#fff;
  font-size:15px;
  font-weight:700;
}

.product-detail-actions button:disabled{
  opacity:.7;
}

.product-detail-secondary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:9px;
}

.product-detail-secondary-actions button{
  min-height:42px;
  border:1px solid #1763b7;
  border-radius:6px;
  background:#fff;
  color:#174f8f;
  font-weight:700;
}

.product-detail-benefits{
  overflow:hidden;
}

.product-detail-benefits > div{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:18px;
  border-bottom:1px solid #e5edf5;
}

.product-detail-benefits > div:last-child{
  border-bottom:0;
}

.product-detail-benefits strong{
  color:#174f8f;
}

.product-detail-benefits span{
  color:#637b93;
  font-size:12px;
}

.product-detail-tabs{
  margin-top:18px;
  overflow:hidden;
}

.product-detail-tabs__nav{
  display:flex;
  overflow-x:auto;
  border-bottom:1px solid #d8e3ed;
}

.product-detail-tabs__nav button{
  min-height:48px;
  padding:0 18px;
  border:0;
  border-right:1px solid #e0e8f0;
  background:#f8fbfe;
  color:#174f8f;
  white-space:nowrap;
}

.product-detail-tabs__nav button.is-active{
  border-bottom:3px solid #174f8f;
  background:#fff;
  font-weight:700;
}

.product-detail-description{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  padding:24px;
}

.product-detail-description h2{
  margin:0 0 12px;
  color:#174f8f;
  font-size:18px;
}

.product-detail-description p{
  color:#58728c;
  line-height:1.55;
}

.product-detail-table{
  width:100%;
  border-collapse:collapse;
  font-size:12px;
}

.product-detail-table th,
.product-detail-table td{
  padding:8px 10px;
  border:1px solid #d8e3ed;
  text-align:left;
}

.product-detail-table th{
  width:42%;
  background:#f7fafd;
  color:#3e6286;
}

.product-detail-table td{
  color:#174f8f;
}


@media (max-width:1000px){
  .product-detail-main{
    grid-template-columns:1fr 1fr;
  }

  .product-detail-benefits{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(4,1fr);
  }

  .product-detail-benefits > div{
    border-right:1px solid #e5edf5;
    border-bottom:0;
  }
}

@media (max-width:700px){
  .product-detail-main{
    grid-template-columns:1fr;
  }

  .product-detail-main-image{
    min-height:320px;
  }

  .product-detail-benefits{
    grid-column:auto;
    grid-template-columns:1fr 1fr;
  }

  .product-detail-description{
    grid-template-columns:1fr;
  }
}

@media (max-width:480px){
  .shop-product-page__inner{
    padding-left:12px;
    padding-right:12px;
  }

  .product-detail-benefits{
    grid-template-columns:1fr;
  }

  .product-detail-secondary-actions{
    grid-template-columns:1fr;
  }

  .product-detail-info h1{
    font-size:25px;
  }
}



/* ALUCON_RESULT_PAGINATION_V1 */

.selector-product-card.is-unavailable
.selector-product-card__visual,
.selector-product-card.is-unavailable
.selector-product-card__content{
  opacity:.72;
}

.selector-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;

  margin-top:18px;
  padding:4px 0;
}

.selector-pagination button{
  min-width:38px;
  min-height:38px;

  padding:0 12px;

  border:1px solid #cbd9e7;
  border-radius:6px;

  background:#fff;
  color:#174f8f;

  font-weight:700;

  cursor:pointer;
}

.selector-pagination button.is-active{
  border-color:#174f8f;
  background:#174f8f;
  color:#fff;
}

.selector-pagination button:disabled{
  opacity:.45;
  cursor:not-allowed;
}

.selector-pagination__pages{
  display:flex;
  gap:5px;
}

.selector-pagination__size{
  margin-left:auto;

  color:#637b93;

  font-size:12px;
}

.selector-pagination__size strong{
  color:#174f8f;
}

@media (max-width:600px){
  .selector-pagination__size{
    width:100%;
    margin-left:0;
    text-align:center;
  }
}



/* ALUCON_STOCK_QUOTE_DISABLED_V1 */

.product-detail-secondary-actions
button.is-stock-disabled{
  border-color:#c8d0d8;
  background:#f1f3f5;
  color:#99a5b0;
  opacity:1;
  cursor:not-allowed;
}



/* ALUCON_VISUAL_REFINEMENT_V3 */


/* =======================================================
   LISTA PRODUKTOW
   ======================================================= */

.selector-product-list.is-grid
.selector-product-card__visual{
  height:220px;
  margin-top:12px;
  margin-bottom:10px;
}

.selector-product-list.is-grid
.selector-product-card__image{
  padding:6px;
}

.selector-product-card.is-unavailable
.selector-product-card__visual,
.selector-product-card.is-unavailable
.selector-product-card__content{
  opacity:.82;
}

.selector-product-card.is-unavailable
.selector-product-card__price{
  opacity:.85;
}

.selector-product-card__actions{
  gap:6px;
}

.selector-product-card__details-btn{
  min-height:39px;
}

.selector-product-card__cart-btn{
  min-height:42px;
  font-size:13px;
}


/* =======================================================
   PAGINACJA - NA SRODKU
   ======================================================= */

.selector-pagination{
  position:relative;

  width:100%;
  min-height:42px;

  justify-content:center;
}

.selector-pagination__size{
  position:absolute;
  right:0;
  top:50%;

  margin-left:0;

  transform:translateY(-50%);
}


/* =======================================================
   SZCZEGOLY - GALERIA
   ======================================================= */

.product-detail-gallery{
  padding:16px;
}

.product-detail-gallery-layout{
  display:grid;

  grid-template-columns:78px minmax(0,1fr);

  gap:14px;

  align-items:start;
}

.product-detail-thumbs{
  display:flex;
  flex-direction:column;

  gap:10px;
}

.product-detail-thumb{
  width:76px;
  height:76px;

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

  padding:4px;

  border:1px solid #cbd9e7;
  border-radius:7px;

  background:#fff;

  cursor:pointer;
}

.product-detail-thumb.is-active{
  border:2px solid #1260bd;
}

.product-detail-thumb img{
  width:100%;
  height:100%;

  display:block;

  object-fit:contain;
}

.product-detail-main-image{
  min-height:520px;

  border:1px solid #e4eaf0;
  border-radius:8px;

  background:#fff;
}

.product-detail-main-image img{
  width:100%;
  max-height:520px;

  padding:8px;

  object-fit:contain;
}


/* =======================================================
   SZCZEGOLY - PANEL PRODUKTU
   ======================================================= */

.product-detail-main{
  grid-template-columns:
    minmax(0,1.2fr)
    minmax(340px,.9fr)
    220px;
}

.product-detail-info{
  padding:24px;
}

.product-detail-info h1{
  font-size:31px;
}

.product-detail-price-row strong{
  font-size:38px;
}


/* =======================================================
   KORZYSCI - DOKLADNIE TEN SAM KOMPONENT CO W SKLEPIE
   ======================================================= */

.product-detail-benefits{
  padding:0;

  background:#fff;

  overflow:hidden;
}

.product-detail-benefits__grid{
  display:flex;
  flex-direction:column;
}

.product-detail-benefits__grid
.home-benefit{
  width:100%;

  flex-direction:row;

  align-items:center;

  gap:11px;

  padding:17px 14px;

  border-right:0;
  border-bottom:1px solid #e7edf4;

  text-align:left;
}

.product-detail-benefits__grid
.home-benefit:last-child{
  border-bottom:0;
}

.product-detail-benefits__grid
.home-benefit__icon{
  width:38px;
  height:38px;

  flex:0 0 38px;
}

.product-detail-benefits__grid
.home-benefit > div:not(.home-benefit__icon){
  min-width:0;
}


/* =======================================================
   OPIS + SCHEMAT + PARAMETRY
   ======================================================= */

.product-detail-description{
  grid-template-columns:
    minmax(0,1fr)
    minmax(220px,.72fr)
    minmax(310px,1fr);

  gap:22px;
}

.product-detail-feature-list{
  display:flex;
  flex-direction:column;

  gap:13px;

  margin-top:22px;
}

.product-detail-feature{
  display:flex;

  gap:10px;

  align-items:flex-start;
}

.product-detail-feature__icon{
  width:28px;
  height:28px;

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

  flex:0 0 28px;

  border:1px solid #c9daea;
  border-radius:50%;

  color:#174f8f;

  font-weight:800;
}

.product-detail-feature > div{
  display:flex;
  flex-direction:column;

  gap:2px;
}

.product-detail-feature strong{
  color:#174f8f;

  font-size:13px;
}

.product-detail-feature span{
  color:#637b93;

  font-size:12px;
}


.product-opening-scheme__box{
  min-height:275px;

  display:flex;
  flex-direction:column;

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

  gap:10px;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:8px;

  background:#fbfdff;

  text-align:center;
}

.product-opening-scheme__window{
  width:120px;
  height:150px;

  position:relative;

  border:5px double #7896b4;

  background:#fff;
}

.product-opening-scheme__window::before{
  content:"";

  position:absolute;

  inset:10px;

  border:1px solid #b5c8da;
}

.product-opening-scheme__window span{
  position:absolute;

  left:50%;
  top:50%;

  width:5px;
  height:5px;

  border-radius:50%;

  background:#174f8f;

  transform:translate(-50%,-50%);
}

.product-opening-scheme__box strong{
  color:#174f8f;

  font-size:15px;
}

.product-opening-scheme__box > span{
  max-width:200px;

  color:#637b93;

  font-size:12px;
  line-height:1.4;
}


/* =======================================================
   TABELA
   ======================================================= */

.product-detail-table th,
.product-detail-table td{
  padding:7px 9px;
}

.product-detail-table th{
  width:46%;
}


/* =======================================================
   PODOBNE PRODUKTY
   ======================================================= */

.product-similar{
  margin-top:18px;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:12px;

  background:#fff;
}

.product-similar__heading{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:20px;

  margin-bottom:14px;
}

.product-similar__heading h2{
  margin:0;

  color:#174f8f;

  font-size:19px;
}

.product-similar__heading a{
  color:#1763b7;

  font-size:12px;
  font-weight:700;

  text-decoration:none;
}

.product-similar__list{
  display:grid;

  grid-template-columns:repeat(4,minmax(0,1fr));

  gap:12px;
}

.product-similar-card{
  min-width:0;

  overflow:hidden;

  border:1px solid #d8e3ed;
  border-radius:8px;

  background:#fff;
}

.product-similar-card__image{
  height:180px;

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

  padding:8px;

  background:#fff;

  text-decoration:none;
}

.product-similar-card__image img{
  width:100%;
  height:100%;

  object-fit:contain;
}

.product-similar-card__image span{
  color:#8295a8;

  font-size:12px;
}

.product-similar-card__body{
  display:flex;
  flex-direction:column;

  gap:4px;

  padding:12px;
}

.product-similar-card__title{
  color:#174f8f;

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

  text-decoration:none;
}

.product-similar-card__variant{
  color:#55728f;

  font-size:12px;
}

.product-similar-card__stock{
  margin-top:4px;

  font-size:12px;
  font-weight:700;
}

.product-similar-card__stock.is-available{
  color:#0aa946;
}

.product-similar-card__stock.is-unavailable{
  color:#8799aa;
}

.product-similar-card__price{
  margin-top:3px;

  color:#e60012;

  font-size:21px;
}

.product-similar-card__details{
  min-height:35px;

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

  margin-top:4px;

  border:1px solid #1763b7;
  border-radius:5px;

  color:#174f8f;

  font-size:12px;
  font-weight:700;

  text-decoration:none;
}


/* =======================================================
   RESPONSIVE
   ======================================================= */

@media (max-width:1100px){

  .product-detail-main{
    grid-template-columns:1fr 1fr;
  }

  .product-detail-benefits{
    grid-column:1 / -1;
  }

  .product-detail-benefits__grid{
    display:grid;

    grid-template-columns:
      repeat(4,minmax(0,1fr));
  }

  .product-detail-description{
    grid-template-columns:1fr 1fr;
  }

  .product-detail-parameters{
    grid-column:1 / -1;
  }

  .product-similar__list{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}


@media (max-width:760px){

  .selector-pagination{
    padding-bottom:34px;
  }

  .selector-pagination__size{
    top:auto;
    right:auto;
    bottom:0;
    left:50%;

    width:max-content;

    transform:translateX(-50%);
  }

  .product-detail-main{
    grid-template-columns:1fr;
  }

  .product-detail-gallery-layout{
    grid-template-columns:1fr;
  }

  .product-detail-thumbs{
    flex-direction:row;

    order:2;

    overflow-x:auto;
  }

  .product-detail-main-image{
    min-height:380px;
  }

  .product-detail-benefits{
    grid-column:auto;
  }

  .product-detail-benefits__grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .product-detail-description{
    grid-template-columns:1fr;
  }

  .product-detail-parameters{
    grid-column:auto;
  }

  .product-similar__list{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media (max-width:520px){

  .product-detail-benefits__grid,
  .product-similar__list{
    grid-template-columns:1fr;
  }

  .product-similar__heading{
    align-items:flex-start;
    flex-direction:column;
  }

}


/* ALUCON_PRODUCT_CARD_PROPORTIONS_V4 */

/* Cena: blizej zaakceptowanej makiety */
.selector-product-list.is-grid
.selector-product-card__price{
  font-size:21px;
  font-weight:700;
  line-height:1.08;
  letter-spacing:-0.2px;
}

/* Przyciski maja wykorzystywac cala szerokosc karty */
.selector-product-list.is-grid
.selector-product-card__actions{
  width:100%;
  align-self:stretch;
  gap:5px;
  margin-top:8px;
}

.selector-product-list.is-grid
.selector-product-card__details-btn,
.selector-product-list.is-grid
.selector-product-card__cart-btn{
  width:100%;
  max-width:none;
  box-sizing:border-box;

  padding:0 8px;

  border-radius:4px;

  font-size:11.5px;
  font-weight:700;
  line-height:1;
}

/* Zobacz szczegoly - smukly */
.selector-product-list.is-grid
.selector-product-card__details-btn{
  min-height:31px;
  height:31px;
}

/* Dodaj do koszyka - minimalnie mocniejszy, ale nadal smukly */
.selector-product-list.is-grid
.selector-product-card__cart-btn{
  min-height:34px;
  height:34px;
}

/* Nieco mniej pustego miejsca przy dole karty */
.selector-product-list.is-grid
.selector-product-card{
  padding-bottom:10px;
}


/* ALUCON_PAGINATION_SLIM_V1 */

.selector-pagination{
  gap:5px;
  min-height:34px;
  margin-top:14px;
}

.selector-pagination button{
  min-width:31px;
  min-height:30px;
  height:30px;

  padding:0 8px;

  border-radius:5px;

  font-size:11px;
  line-height:1;
  font-weight:600;
}

.selector-pagination__pages{
  gap:4px;
}

.selector-pagination__pages button{
  width:31px;
  padding:0;
}

.selector-pagination button.is-active{
  font-weight:700;
}

.selector-pagination__size{
  font-size:11px;
}


/* ALUCON_PRODUCT_DETAIL_PROPORTIONS_V4 */

/* =======================================================
   SZEROKOSC CALEJ STRONY PRODUKTU
   ======================================================= */

.shop-product-page__inner{
  max-width:1460px;
  padding-left:22px;
  padding-right:22px;
}


/* =======================================================
   GORNA CZESC: GALERIA / PRODUKT / KORZYSCI
   ======================================================= */

.product-detail-main{
  grid-template-columns:
    minmax(520px,1.25fr)
    minmax(390px,.88fr)
    270px;

  gap:20px;
}

.product-detail-gallery{
  padding:18px;
}

.product-detail-gallery-layout{
  grid-template-columns:86px minmax(0,1fr);
  gap:16px;
}

.product-detail-thumbs{
  gap:11px;
}

.product-detail-thumb{
  width:84px;
  height:84px;
}

.product-detail-main-image{
  min-height:570px;
}

.product-detail-main-image img{
  max-height:570px;
  padding:10px;
}


/* =======================================================
   PANEL PRODUKTU
   ======================================================= */

.product-detail-info{
  padding:25px 24px;
}

.product-detail-info h1{
  margin-top:13px;
  font-size:32px;
  line-height:1.12;
}

.product-detail-variant{
  margin-top:3px;
  font-size:18px;
}

.product-detail-specs{
  gap:9px;
  margin-top:22px;
  font-size:14px;
}

.product-detail-availability{
  margin-top:23px;
  font-size:14px;
}

.product-detail-price-row{
  margin-top:17px;
}

.product-detail-price-row strong{
  font-size:37px;
  font-weight:700;
  letter-spacing:-.4px;
}

.product-detail-actions{
  margin-top:19px;
}

.product-detail-actions button{
  min-height:48px;
}

.product-detail-secondary-actions{
  gap:8px;
}

.product-detail-secondary-actions button{
  min-height:41px;
}


/* =======================================================
   KORZYSCI PO PRAWEJ
   ======================================================= */

.product-detail-benefits{
  min-width:0;
}

.product-detail-benefits__grid
.home-benefit{
  min-height:104px;

  gap:13px;

  padding:17px 16px;

  align-items:center;
}

.product-detail-benefits__grid
.home-benefit__icon{
  width:42px;
  height:42px;
  flex-basis:42px;
}

.product-detail-benefits__grid
.home-benefit__icon svg{
  width:34px;
  height:34px;
}

.product-detail-benefits__grid
.home-benefit strong{
  font-size:13px;
  line-height:1.25;
}

.product-detail-benefits__grid
.home-benefit span{
  font-size:11px;
  line-height:1.35;
}


/* =======================================================
   ZAKLADKI
   ======================================================= */

.product-detail-tabs{
  margin-top:20px;
}

.product-detail-tabs__nav button{
  min-height:48px;
  padding-left:20px;
  padding-right:20px;
  font-size:12px;
}


/* =======================================================
   OPIS / SCHEMAT / PARAMETRY
   ======================================================= */

.product-detail-description{
  grid-template-columns:
    minmax(300px,.95fr)
    minmax(260px,.75fr)
    minmax(400px,1.15fr);

  gap:28px;

  padding:28px;
}

.product-detail-description h2{
  margin-bottom:14px;
  font-size:19px;
}

.product-detail-description p{
  font-size:13px;
  line-height:1.6;
}

.product-detail-feature-list{
  gap:14px;
  margin-top:24px;
}

.product-detail-feature__icon{
  width:30px;
  height:30px;
  flex-basis:30px;
}

.product-detail-feature strong{
  font-size:13px;
}

.product-detail-feature span{
  font-size:12px;
}


/* =======================================================
   SCHEMAT OTWIERANIA
   ======================================================= */

.product-opening-scheme__box{
  min-height:325px;
  padding:22px;
}

.product-opening-scheme__window{
  width:150px;
  height:190px;
}

.product-opening-scheme__box strong{
  margin-top:4px;
  font-size:15px;
}

.product-opening-scheme__box > span{
  font-size:12px;
}


/* =======================================================
   TABELA PARAMETROW
   ======================================================= */

.product-detail-table{
  font-size:12px;
}

.product-detail-table th,
.product-detail-table td{
  padding:8px 10px;
}

.product-detail-table th{
  width:45%;
}


/* =======================================================
   PODOBNE PRODUKTY
   ======================================================= */

.product-similar{
  margin-top:20px;
  padding:20px;
}

.product-similar__heading{
  margin-bottom:16px;
}

.product-similar__heading h2{
  font-size:20px;
}

.product-similar__list{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.product-similar-card__image{
  height:220px;
  padding:10px;
}

.product-similar-card__body{
  padding:13px;
}

.product-similar-card__title{
  font-size:15px;
}

.product-similar-card__price{
  font-size:21px;
  font-weight:700;
}

.product-similar-card__details{
  min-height:33px;
}


/* =======================================================
   RESPONSIVE
   ======================================================= */

@media (max-width:1280px){

  .product-detail-main{
    grid-template-columns:
      minmax(440px,1.15fr)
      minmax(350px,.9fr)
      240px;
  }

  .product-detail-main-image{
    min-height:500px;
  }

  .product-detail-main-image img{
    max-height:500px;
  }

  .product-detail-description{
    grid-template-columns:
      minmax(270px,.9fr)
      minmax(230px,.7fr)
      minmax(350px,1.1fr);
  }

}


@media (max-width:1100px){

  .product-detail-main{
    grid-template-columns:1fr 1fr;
  }

  .product-detail-benefits{
    grid-column:1 / -1;
  }

  .product-detail-benefits__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .product-detail-benefits__grid
  .home-benefit{
    min-height:90px;
  }

  .product-detail-description{
    grid-template-columns:1fr 1fr;
  }

  .product-detail-parameters{
    grid-column:1 / -1;
  }

}


@media (max-width:760px){

  .shop-product-page__inner{
    padding-left:12px;
    padding-right:12px;
  }

  .product-detail-main{
    grid-template-columns:1fr;
  }

  .product-detail-main-image{
    min-height:380px;
  }

  .product-detail-main-image img{
    max-height:380px;
  }

  .product-detail-benefits{
    grid-column:auto;
  }

  .product-detail-benefits__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .product-detail-description{
    grid-template-columns:1fr;
  }

  .product-detail-parameters{
    grid-column:auto;
  }

  .product-similar__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}



/* ALUCON_REAL_OPENING_SCHEME_V1 */

.product-opening-scheme__visual{
  width:100%;
  min-height:205px;

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

.product-opening-scheme__image{
  display:block;

  width:auto;
  height:auto;

  max-width:185px;
  max-height:205px;

  object-fit:contain;

  transform-origin:center center;
}

.product-opening-scheme__image.is-mirrored{
  transform:scaleX(-1);
}

.product-opening-scheme__placeholder{
  min-width:150px;
  min-height:180px;

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

  padding:16px;

  border:1px dashed #b9c9d8;
  border-radius:7px;

  background:#f8fbfe;

  color:#71879b;

  font-size:12px;
  line-height:1.4;

  text-align:center;
}

.product-opening-scheme__placeholder[hidden]{
  display:none !important;
}

.product-opening-scheme__image[hidden]{
  display:none !important;
}



/* ALUCON_PRODUCT_TABS_UI_V1 */

.product-detail-tabs__nav button{
  cursor:pointer;
}

.product-detail-tabs__nav button.is-active{
  color:#174f8f;
  background:#fff;
  border-bottom:3px solid #174f8f;
  font-weight:700;
}

.product-detail-tab-panel[hidden]{
  display:none !important;
}

.product-detail-tab-panel{
  background:#fff;
}

.product-tab-content{
  padding:28px;
}

.product-tab-heading{
  margin-bottom:22px;
}

.product-tab-heading h2{
  margin:0 0 6px;

  color:#174f8f;

  font-size:20px;
}

.product-tab-heading p{
  margin:0;

  color:#637b93;

  font-size:13px;
}


/* SPECYFIKACJA */

.product-technical-table{
  max-width:760px;
}


/* ZDJECIA */

.product-tab-gallery{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:14px;
}

.product-tab-gallery__item{
  height:320px;

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

  margin:0;
  padding:14px;

  border:1px solid #d8e3ed;
  border-radius:9px;

  background:#fff;
}

.product-tab-gallery__item img{
  width:100%;
  height:100%;

  object-fit:contain;
}

.product-tab-empty{
  padding:30px;

  border:1px dashed #c6d4e0;
  border-radius:8px;

  color:#70859a;

  text-align:center;
}


/* WYMIARY I OTWIERANIE */

.product-tab-dimensions{
  display:grid;

  grid-template-columns:
    minmax(280px,.8fr)
    minmax(320px,1fr);

  gap:28px;

  max-width:900px;
}

.product-tab-dimensions__data{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:12px;

  align-content:start;
}

.product-dimension-card{
  display:flex;
  flex-direction:column;

  gap:5px;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:9px;

  background:#f8fbfe;
}

.product-dimension-card span{
  color:#637b93;

  font-size:12px;
}

.product-dimension-card strong{
  color:#174f8f;

  font-size:23px;
}

.product-dimension-card small{
  color:#8295a8;
}

.product-tab-opening{
  min-height:330px;

  display:flex;
  flex-direction:column;

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

  gap:9px;

  padding:20px;

  border:1px solid #d8e3ed;
  border-radius:9px;

  background:#fbfdff;

  text-align:center;
}

.product-tab-opening__visual{
  min-height:230px;

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

.product-tab-opening__visual img{
  display:block;

  max-width:210px;
  max-height:230px;

  object-fit:contain;
}

.product-tab-opening__visual
img.is-mirrored{
  transform:scaleX(-1);
}

.product-tab-opening__placeholder{
  width:180px;
  min-height:210px;

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

  padding:15px;

  border:1px dashed #b9c9d8;
  border-radius:7px;

  color:#71879b;

  font-size:12px;
}

.product-tab-opening__placeholder[hidden],
.product-tab-opening__visual img[hidden]{
  display:none !important;
}

.product-tab-opening strong{
  color:#174f8f;

  font-size:16px;
}

.product-tab-opening > span{
  color:#637b93;

  font-size:12px;
}


/* KOLOR */

.product-color-panel{
  max-width:620px;
}

.product-color-current{
  display:flex;

  align-items:center;

  gap:14px;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:9px;

  background:#fbfdff;
}

.product-color-swatch{
  width:52px;
  height:52px;

  flex:0 0 52px;

  border:1px solid #bfcbd6;
  border-radius:7px;
}

.product-color-swatch.is-white{
  background:#fff;
}

.product-color-swatch.is-anthracite{
  background:#42484d;
}

.product-color-swatch.is-other{
  background:
    linear-gradient(
      135deg,
      #d6dce1 0%,
      #8a969f 100%
    );
}

.product-color-current > div{
  display:flex;
  flex-direction:column;

  gap:3px;
}

.product-color-current strong{
  color:#174f8f;

  font-size:16px;
}

.product-color-current span{
  color:#637b93;

  font-size:12px;
}


/* DOSTAWA */

.product-delivery-panel{
  max-width:700px;
}

.product-delivery-status{
  display:flex;
  flex-direction:column;

  gap:5px;

  padding:18px;

  border:1px solid #d8e3ed;
  border-radius:9px;

  background:#fbfdff;
}

.product-delivery-status.is-available{
  border-left:4px solid #0aa946;
}

.product-delivery-status.is-unavailable{
  border-left:4px solid #8799aa;
}

.product-delivery-status strong{
  color:#174f8f;

  font-size:17px;
}

.product-delivery-status span{
  color:#637b93;

  font-size:13px;
}

.product-tab-note{
  margin:14px 0 0;

  color:#637b93;

  font-size:13px;
  line-height:1.5;
}


/* MOBILE */

@media (max-width:760px){

  .product-tab-content{
    padding:20px 16px;
  }

  .product-tab-gallery{
    grid-template-columns:1fr;
  }

  .product-tab-gallery__item{
    height:300px;
  }

  .product-tab-dimensions{
    grid-template-columns:1fr;
  }

}


/* ALUCON_SHOP_CART_PAGE_V1 */

.shop-cart{
  text-decoration:none;
}

.cart-page{
  padding-top:24px;
  padding-bottom:48px;
}

.cart-page__inner{
  width:min(
    var(--shop-max),
    calc(100% - 40px)
  );
  margin:0 auto;
}

.cart-heading{
  margin:22px 0 28px;
}

.cart-heading h1{
  margin:4px 0 8px;
  color:#174f8f;
  font-size:34px;
  line-height:1.15;
}

.cart-heading p:last-child{
  margin:0;
  color:#64748b;
}

.cart-state{
  padding:34px;
  border:1px solid var(--shop-line);
  border-radius:12px;
  background:#fff;
  color:#64748b;
  text-align:center;
}

.cart-empty{
  padding:56px 24px;
  border:1px solid var(--shop-line);
  border-radius:14px;
  background:#fff;
  text-align:center;
}

.cart-empty__icon{
  margin-bottom:12px;
  font-size:42px;
}

.cart-empty h2{
  margin:0 0 8px;
  color:#174f8f;
}

.cart-empty p{
  margin:0 0 22px;
  color:#64748b;
}

.cart-primary-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 22px;
  border-radius:8px;
  background:var(--shop-red);
  color:#fff;
  font-weight:700;
  text-decoration:none;
}

.cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:28px;
  align-items:start;
}

.cart-items{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.cart-item{
  position:relative;
  display:grid;
  grid-template-columns:
    120px
    minmax(180px,1fr)
    125px
    120px
    130px;
  gap:18px;
  align-items:center;
  padding:18px;
  border:1px solid #dbe5ee;
  border-radius:12px;
  background:#fff;
}

.cart-item.is-unavailable{
  grid-template-columns:1fr auto;
}

.cart-item__image{
  width:120px;
  height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px;
  border:1px solid #edf2f6;
  border-radius:8px;
  background:#fff;
  color:#94a3b8;
  font-size:11px;
}

.cart-item__image img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.cart-item__info{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:5px;
}

.cart-item__info > a,
.cart-item__info > strong{
  color:#174f8f;
  font-size:15px;
  font-weight:700;
  line-height:1.35;
  text-decoration:none;
}

.cart-item__info > a:hover{
  text-decoration:underline;
}

.cart-item__variant,
.cart-item__meta{
  color:#64748b;
  font-size:12px;
}

.cart-item__stock{
  margin-top:3px;
  font-size:12px;
  font-weight:700;
}

.cart-item__stock.is-available{
  color:#168448;
}

.cart-item__stock.is-unavailable{
  color:#7b8794;
}

.cart-item__price,
.cart-item__total{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.cart-item__price span,
.cart-item__total span{
  color:#778899;
  font-size:11px;
}

.cart-item__price strong,
.cart-item__total strong{
  color:#174f8f;
  font-size:15px;
}

.cart-qty{
  display:grid;
  grid-template-columns:34px 42px 34px;
  align-items:center;
  justify-content:center;
}

.cart-qty button{
  height:34px;
  border:1px solid #cad6e1;
  background:#fff;
  color:#174f8f;
  font-size:19px;
  cursor:pointer;
}

.cart-qty button:first-child{
  border-radius:7px 0 0 7px;
}

.cart-qty button:last-child{
  border-radius:0 7px 7px 0;
}

.cart-qty button:disabled{
  opacity:.4;
  cursor:not-allowed;
}

.cart-qty span{
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-top:1px solid #cad6e1;
  border-bottom:1px solid #cad6e1;
  color:#1f2937;
  font-weight:700;
}

.cart-remove{
  margin-top:7px;
  padding:0;
  border:0;
  background:transparent;
  color:#b42318;
  font-size:12px;
  cursor:pointer;
  text-align:left;
}

.cart-remove:hover{
  text-decoration:underline;
}

.cart-item__warning{
  grid-column:2 / -1;
  padding:8px 10px;
  border-radius:7px;
  background:#fff7ed;
  color:#9a3412;
  font-size:12px;
}

.cart-item__missing{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.cart-item__missing strong{
  color:#174f8f;
}

.cart-item__missing span{
  color:#64748b;
  font-size:12px;
}

.cart-continue{
  display:inline-flex;
  margin-top:20px;
  color:#174f8f;
  font-weight:700;
  text-decoration:none;
}

.cart-summary{
  position:sticky;
  top:20px;
  padding:22px;
  border:1px solid #dbe5ee;
  border-radius:12px;
  background:#fff;
}

.cart-summary h2{
  margin:0 0 20px;
  color:#174f8f;
  font-size:21px;
}

.cart-summary__row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:11px 0;
  border-bottom:1px solid #edf2f6;
  color:#64748b;
  font-size:13px;
}

.cart-summary__row strong{
  max-width:170px;
  color:#334155;
  text-align:right;
  font-size:13px;
}

.cart-summary__total{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding:20px 0;
}

.cart-summary__total span{
  color:#334155;
  font-weight:700;
}

.cart-summary__total strong{
  color:#174f8f;
  font-size:24px;
}

.cart-checkout{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:8px;
  background:var(--shop-red);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.cart-checkout:disabled{
  opacity:.55;
  cursor:not-allowed;
}

.cart-summary__note{
  margin:13px 0 0;
  color:#7a8b9a;
  font-size:11px;
  line-height:1.45;
}

@media (max-width:1050px){

  .cart-layout{
    grid-template-columns:1fr;
  }

  .cart-summary{
    position:static;
  }
}

@media (max-width:820px){

  .cart-item{
    grid-template-columns:
      95px
      minmax(0,1fr);
  }

  .cart-item__image{
    width:95px;
    height:95px;
  }

  .cart-item__price,
  .cart-qty,
  .cart-item__total{
    grid-column:2;
  }

  .cart-qty{
    justify-content:start;
  }

  .cart-item__warning{
    grid-column:1 / -1;
  }
}

@media (max-width:560px){

  .cart-page__inner{
    width:min(
      var(--shop-max),
      calc(100% - 24px)
    );
  }

  .cart-heading h1{
    font-size:28px;
  }

  .cart-item{
    grid-template-columns:
      78px
      minmax(0,1fr);
    gap:12px;
    padding:14px;
  }

  .cart-item__image{
    width:78px;
    height:78px;
  }

  .cart-summary{
    padding:18px;
  }
}


/* ALUCON_CART_HIDDEN_FIX_V1 */

.cart-page [hidden]{
  display:none !important;
}


/* ALUCON_CART_LINK_STYLE_V1 */

.shop-action.shop-cart,
.shop-action.shop-cart:hover,
.shop-action.shop-cart:focus,
.shop-action.shop-cart:visited{
  text-decoration:none;
  color:#334155;
}



/* ALUCON_PRODUCT_CART_UI_V1 */

.product-detail-actions{
  display:flex;
  align-items:stretch;
  gap:10px;
}

.product-detail-actions #productDetailCart{
  flex:1;
  min-width:0;
}

.product-detail-qty{
  display:grid;
  grid-template-columns:38px 46px 38px;
  align-items:stretch;
  flex:0 0 auto;
}

.product-detail-qty button{
  min-height:46px;
  padding:0;
  border:1px solid #cad6e1;
  background:#fff;
  color:#174f8f;
  font-size:20px;
  font-weight:700;
  cursor:pointer;
}

.product-detail-qty button:first-child{
  border-radius:8px 0 0 8px;
}

.product-detail-qty button:last-child{
  border-radius:0 8px 8px 0;
}

.product-detail-qty button:disabled{
  opacity:.4;
  cursor:not-allowed;
}

.product-detail-qty span{
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-top:1px solid #cad6e1;
  border-bottom:1px solid #cad6e1;
  background:#fff;
  color:#1f2937;
  font-weight:700;
}

.product-detail-cart-notice{
  min-height:18px;
  margin-top:7px;
  color:#168448;
  font-size:12px;
  font-weight:700;
  opacity:0;
  transition:opacity .15s ease;
}

.product-detail-cart-notice.is-visible{
  opacity:1;
}

@media (max-width:560px){

  .product-detail-actions{
    flex-wrap:wrap;
  }

  .product-detail-actions #productDetailCart{
    flex-basis:100%;
  }
}



/* ALUCON_LISTING_QTY_V1 */

.selector-product-card__buy-row{
  width:100%;
  display:flex;
  align-items:stretch;
  gap:5px;
}

.selector-product-card__qty{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:28px 30px 28px;
  height:34px;
}

.selector-product-card__qty button{
  min-width:0;
  width:28px;
  height:34px;
  padding:0;
  border:1px solid #c8d5e2;
  background:#fff;
  color:#174f8f;
  font-size:16px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
}

.selector-product-card__qty button:first-child{
  border-radius:4px 0 0 4px;
}

.selector-product-card__qty button:last-child{
  border-radius:0 4px 4px 0;
}

.selector-product-card__qty button:disabled{
  opacity:.4;
  cursor:not-allowed;
}

.selector-product-card__qty span{
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-top:1px solid #c8d5e2;
  border-bottom:1px solid #c8d5e2;
  background:#fff;
  color:#1e293b;
  font-size:12px;
  font-weight:700;
}

.selector-product-list.is-grid
.selector-product-card__buy-row
.selector-product-card__cart-btn{
  flex:1 1 auto;
  width:auto;
  min-width:0;
  height:34px;
  min-height:34px;
}

.selector-product-card.is-unavailable
.selector-product-card__qty{
  opacity:.55;
}

@media (max-width:600px){

  .selector-product-card__qty{
    grid-template-columns:34px 38px 34px;
  }

  .selector-product-card__qty button{
    width:34px;
  }
}


/* ALUCON_SHOP_CHECKOUT_V1 */

.checkout-page{
  padding-top:24px;
  padding-bottom:48px;
}

.checkout-page__inner{
  width:min(
    var(--shop-max),
    calc(100% - 40px)
  );
  margin:0 auto;
}

.checkout-heading{
  margin:22px 0 28px;
}

.checkout-heading h1{
  margin:4px 0 8px;
  color:#174f8f;
  font-size:34px;
  line-height:1.15;
}

.checkout-heading p:last-child{
  margin:0;
  color:#64748b;
}

.checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
  align-items:start;
}

.checkout-form-column{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.checkout-section{
  padding:22px;
  border:1px solid #dbe5ee;
  border-radius:12px;
  background:#fff;
}

.checkout-section__heading{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:20px;
}

.checkout-section__heading > span{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#174f8f;
  color:#fff;
  font-weight:700;
}

.checkout-section__heading h2{
  margin:0 0 3px;
  color:#174f8f;
  font-size:19px;
}

.checkout-section__heading p{
  margin:0;
  color:#64748b;
  font-size:12px;
}

.checkout-customer-type{
  display:flex;
  gap:10px;
  margin-bottom:18px;
}

.checkout-customer-type label,
.checkout-option{
  cursor:pointer;
}

.checkout-customer-type label{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #dbe5ee;
  border-radius:8px;
}

.checkout-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.checkout-field{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.checkout-field--wide{
  grid-column:1 / -1;
}

.checkout-field > span{
  color:#334155;
  font-size:12px;
  font-weight:700;
}

.checkout-field input,
.checkout-field select{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
  padding:0 12px;
  border:1px solid #cbd5e1;
  border-radius:7px;
  background:#fff;
  color:#172033;
  font:inherit;
}

.checkout-field input:focus,
.checkout-field select:focus{
  outline:2px solid rgba(23,79,143,.14);
  border-color:#174f8f;
}

.checkout-checkbox{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:17px;
  color:#475569;
  font-size:12px;
  line-height:1.45;
}

.checkout-checkbox input{
  margin-top:2px;
}

.checkout-placeholder{
  padding:18px;
  border:1px dashed #cbd5e1;
  border-radius:8px;
  background:#f8fafc;
  color:#64748b;
  font-size:13px;
}

.checkout-payment-options{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.checkout-option{
  display:flex;
  gap:10px;
  padding:14px;
  border:1px solid #dbe5ee;
  border-radius:9px;
}

.checkout-option input{
  margin-top:3px;
}

.checkout-option div{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.checkout-option strong{
  color:#174f8f;
}

.checkout-option span{
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

.checkout-section--agreements{
  padding-top:10px;
  padding-bottom:20px;
}

.checkout-summary{
  position:sticky;
  top:20px;
  padding:22px;
  border:1px solid #dbe5ee;
  border-radius:12px;
  background:#fff;
}

.checkout-summary h2{
  margin:0 0 18px;
  color:#174f8f;
  font-size:21px;
}

.checkout-summary__products{
  margin-bottom:14px;
  padding-bottom:14px;
  border-bottom:1px solid #edf2f6;
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

.checkout-summary__row{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
  border-bottom:1px solid #edf2f6;
  color:#64748b;
  font-size:13px;
}

.checkout-summary__row strong{
  color:#334155;
}

.checkout-summary__total{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  padding:20px 0;
  font-weight:700;
}

.checkout-summary__total strong{
  color:#174f8f;
  font-size:24px;
}

.checkout-submit{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:8px;
  background:var(--shop-red);
  color:#fff;
  font-weight:800;
}

.checkout-submit:disabled{
  opacity:.55;
  cursor:not-allowed;
}

.checkout-summary__note{
  margin:13px 0 0;
  color:#7a8b9a;
  font-size:11px;
  line-height:1.45;
}

@media (max-width:1000px){

  .checkout-layout{
    grid-template-columns:1fr;
  }

  .checkout-summary{
    position:static;
  }
}

@media (max-width:600px){

  .checkout-page__inner{
    width:calc(100% - 24px);
  }

  .checkout-heading h1{
    font-size:28px;
  }

  .checkout-fields{
    grid-template-columns:1fr;
  }

  .checkout-field--wide{
    grid-column:auto;
  }

  .checkout-customer-type{
    flex-direction:column;
  }

  .checkout-section{
    padding:16px;
  }
}


/* ALUCON_CHECKOUT_CUSTOMER_TYPE_V1 */

.checkout-field--company.is-disabled{
  opacity:.48;
}

.checkout-field--company.is-disabled input{
  background:#f1f5f9;
  color:#94a3b8;
  cursor:not-allowed;
}



/* ALUCON_CHECKOUT_REQUIRED_CONSENTS_UI_V1 */

.checkout-required-mark{
  color:var(--shop-red);
}

.checkout-required-note{
  margin:12px 0 0;
  color:#64748b;
  font-size:11px;
}



/* ALUCON_CHECKOUT_CART_SUMMARY_UI_V1 */

.checkout-summary__products{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.checkout-summary-product{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding-bottom:10px;
  border-bottom:1px solid #edf2f6;
}

.checkout-summary-product:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.checkout-summary-product__image{
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #edf2f6;
  border-radius:6px;
  background:#fff;
  overflow:hidden;
}

.checkout-summary-product__image img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.checkout-summary-product__no-image{
  padding:4px;
  color:#94a3b8;
  font-size:9px;
  text-align:center;
}

.checkout-summary-product__info{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

.checkout-summary-product__info > a,
.checkout-summary-product__info > strong{
  color:#174f8f;
  font-size:12px;
  font-weight:700;
  line-height:1.3;
  text-decoration:none;
}

.checkout-summary-product__info > span{
  color:#64748b;
  font-size:10px;
}

.checkout-summary-product__info > small{
  color:#475569;
  font-size:10px;
  font-weight:600;
}

.checkout-summary-product__total{
  color:#174f8f;
  font-size:12px;
  white-space:nowrap;
}

.checkout-summary-product.is-invalid{
  padding:8px;
  border:1px solid #fed7aa;
  border-radius:7px;
  background:#fff7ed;
}

.checkout-summary-product__warning{
  color:#b45309;
  font-size:10px;
  font-style:normal;
  font-weight:700;
}

.checkout-summary-loading{
  color:#64748b;
  font-size:12px;
}

.checkout-summary-error{
  padding:10px;
  border-radius:7px;
  background:#fef2f2;
  color:#b42318;
  font-size:11px;
  font-weight:700;
}

.checkout-summary-empty{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.checkout-summary-empty strong{
  color:#334155;
}

.checkout-summary-empty a{
  color:#174f8f;
  font-weight:700;
  text-decoration:none;
}



/* ALUCON_CHECKOUT_VALIDATION_UI_V1 */

.checkout-field input:required,
.checkout-field select:required{
  border-left-width:3px;
}

.checkout-field input:required:focus,
.checkout-field select:required:focus{
  border-left-color:#174f8f;
}



/* ALUCON_CHECKOUT_SHIPPING_UI_V1 */

.checkout-shipping-methods{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.checkout-shipping-option{
  width:100%;
}

.checkout-shipping-option__body{
  min-width:0;
  flex:1;
}

.checkout-shipping-option__heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.checkout-shipping-option__price{
  color:#174f8f;
  white-space:nowrap;
}

.checkout-shipping-message{
  padding:14px 16px;
  border:1px solid #e2e8f0;
  border-radius:8px;
  background:#f8fafc;
  color:#64748b;
  font-size:13px;
}

.checkout-shipping-message.is-error{
  border-color:#fecaca;
  background:#fef2f2;
  color:#b42318;
}

@media (max-width:640px){
  .checkout-shipping-option__heading{
    align-items:flex-start;
    gap:10px;
  }
}


/* ALUCON_SHOP_ORDER_SUMMARY_V1 */

.shop-order-summary-page {
  min-height: calc(100vh - 80px);
  background: #f5f7fa;
  padding: 42px 20px 70px;
}

.shop-order-summary-shell {
  width: min(1240px, 100%);
  margin: 0 auto;
}

.shop-order-summary-hero {
  background: #ffffff;
  border: 1px solid #e5e9ef;
  border-radius: 18px;
  padding: 28px 30px;
  margin-bottom: 24px;
  box-shadow: 0 8px 28px rgba(30, 52, 74, 0.06);
}

.shop-order-summary-success {
  display: flex;
  gap: 18px;
  align-items: flex-start;
}

.shop-order-summary-success__icon {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #edf8f1;
  color: #27894b;
  font-size: 24px;
  font-weight: 800;
}

.shop-order-summary-eyebrow {
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #27894b;
}

.shop-order-summary-hero h1 {
  margin: 0;
  color: #174f8f;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.15;
}

.shop-order-summary-hero p {
  margin-top: 8px;
  margin-bottom: 0;
  color: #637083;
}

.shop-order-summary-identifiers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid #edf0f4;
}

.shop-order-summary-identifiers > div {
  padding: 14px 16px;
  background: #f8fafc;
  border-radius: 12px;
}

.shop-order-summary-identifiers span,
.shop-order-summary-customer-grid span,
.shop-bank-row span,
.shop-order-summary-total-row span,
.shop-order-summary-product__qty span,
.shop-order-summary-product__price span {
  display: block;
  color: #748095;
  font-size: 13px;
  margin-bottom: 5px;
}

.shop-order-summary-identifiers strong {
  display: block;
  color: #17283d;
  font-size: 18px;
  overflow-wrap: anywhere;
}

.shop-order-summary-message {
  border-radius: 12px;
  padding: 16px 18px;
  margin-bottom: 20px;
}

.shop-order-summary-message.is-error {
  background: #fff1f1;
  color: #a52929;
  border: 1px solid #f0cccc;
}

.shop-order-summary-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 350px;
  gap: 24px;
  align-items: start;
}

.shop-order-summary-main {
  display: grid;
  gap: 20px;
}

.shop-order-summary-card,
.shop-order-summary-total-card {
  background: #ffffff;
  border: 1px solid #e5e9ef;
  border-radius: 16px;
  box-shadow: 0 8px 28px rgba(30, 52, 74, 0.05);
}

.shop-order-summary-card {
  padding: 24px;
}

.shop-order-summary-card__heading {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 20px;
}

.shop-order-summary-card__heading h2 {
  margin: 0;
  color: #174f8f;
  font-size: 21px;
}

.shop-order-summary-card__heading p {
  margin: 5px 0 0;
  color: #6d7889;
  line-height: 1.5;
}

.shop-order-summary-card__number {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #edf3f9;
  color: #174f8f;
  font-weight: 800;
}

.shop-order-summary-primary-button,
.shop-order-summary-secondary-button,
.shop-copy-button,
.shop-order-summary-link-button {
  font: inherit;
  cursor: pointer;
  transition:
    transform 0.15s ease,
    background-color 0.15s ease,
    border-color 0.15s ease;
}

.shop-order-summary-primary-button {
  width: 100%;
  min-height: 50px;
  border: 0;
  border-radius: 10px;
  background: #174f8f;
  color: #ffffff;
  font-weight: 800;
  font-size: 16px;
}

.shop-order-summary-primary-button:hover:not(:disabled) {
  background: #123f73;
}

.shop-order-summary-primary-button:disabled {
  opacity: 0.65;
  cursor: default;
}

.shop-order-summary-note {
  margin: 10px 0 0;
  color: #6d7889;
  font-size: 13px;
  text-align: center;
}

.shop-bank-details {
  border: 1px solid #e5e9ef;
  border-radius: 12px;
  overflow: hidden;
}

.shop-bank-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  min-height: 74px;
  padding: 14px 16px;
  border-bottom: 1px solid #edf0f4;
}

.shop-bank-row:last-child {
  border-bottom: 0;
}

.shop-bank-row > div {
  min-width: 0;
}

.shop-bank-row strong {
  display: block;
  color: #17283d;
  font-size: 15px;
  overflow-wrap: anywhere;
}

.shop-bank-account {
  font-size: 17px !important;
  letter-spacing: 0.015em;
}

.shop-copy-button {
  flex: 0 0 auto;
  min-width: 82px;
  height: 38px;
  padding: 0 14px;
  border: 1px solid #cbd7e5;
  border-radius: 8px;
  background: #ffffff;
  color: #174f8f;
  font-weight: 700;
}

.shop-copy-button:hover {
  background: #f2f6fa;
  border-color: #174f8f;
}

.shop-order-summary-secondary-button {
  width: 100%;
  min-height: 48px;
  margin-top: 14px;
  border: 1px solid #174f8f;
  border-radius: 10px;
  background: #ffffff;
  color: #174f8f;
  font-weight: 800;
}

.shop-order-summary-secondary-button:hover {
  background: #f2f6fa;
}

.shop-order-summary-mail {
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 10px;
  background: #f7f9fc;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}

.shop-order-summary-mail p {
  margin: 0;
  color: #596579;
  font-size: 14px;
  overflow-wrap: anywhere;
}

.shop-order-summary-link-button {
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  color: #174f8f;
  font-weight: 800;
  padding: 8px 0;
}

.shop-order-summary-link-button:hover {
  text-decoration: underline;
}

.shop-order-summary-link-button:disabled {
  opacity: 0.55;
  cursor: default;
}

.shop-order-summary-customer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.shop-order-summary-customer-grid > div {
  padding: 14px 16px;
  background: #f8fafc;
  border-radius: 10px;
  min-width: 0;
}

.shop-order-summary-customer-grid strong {
  color: #17283d;
  overflow-wrap: anywhere;
}

.shop-order-summary-products {
  display: grid;
  gap: 12px;
}

.shop-order-summary-product {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr) 70px 135px;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #e5e9ef;
  border-radius: 12px;
}

.shop-order-summary-product__thumb {
  width: 62px;
  height: 62px;
  border-radius: 9px;
  background: #f2f5f8;
  color: #8b97a7;
  display: grid;
  place-items: center;
  font-size: 27px;
}

.shop-order-summary-product__info {
  min-width: 0;
}

.shop-order-summary-product__info strong {
  display: block;
  color: #17283d;
  line-height: 1.35;
}

.shop-order-summary-product__info small {
  display: block;
  margin-top: 5px;
  color: #7a8595;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.shop-order-summary-product__qty,
.shop-order-summary-product__price {
  text-align: right;
}

.shop-order-summary-product__qty strong,
.shop-order-summary-product__price strong {
  color: #17283d;
}

.shop-order-summary-product__price > span {
  white-space: nowrap;
}

.shop-order-summary-sidebar {
  position: sticky;
  top: 20px;
}

.shop-order-summary-total-card {
  padding: 24px;
}

.shop-order-summary-total-card h2 {
  margin: 0 0 20px;
  color: #174f8f;
  font-size: 21px;
}

.shop-order-summary-total-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: baseline;
  padding: 11px 0;
  border-bottom: 1px solid #edf0f4;
}

.shop-order-summary-total-row strong {
  color: #17283d;
  text-align: right;
}

.shop-order-summary-total-row--grand {
  margin-top: 8px;
  padding-top: 18px;
  border-bottom: 0;
  font-size: 19px;
}

.shop-order-summary-total-row--grand span,
.shop-order-summary-total-row--grand strong {
  color: #174f8f;
  font-weight: 800;
}

.shop-order-summary-back {
  display: flex;
  min-height: 46px;
  margin-top: 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid #cbd7e5;
  border-radius: 9px;
  background: #ffffff;
  color: #174f8f;
  font-weight: 700;
  text-decoration: none;
}

.shop-order-summary-back:hover {
  background: #f2f6fa;
}

.shop-order-summary-empty {
  padding: 18px;
  border-radius: 10px;
  background: #f8fafc;
  color: #6d7889;
  text-align: center;
}

@media (max-width: 900px) {
  .shop-order-summary-content {
    grid-template-columns: 1fr;
  }

  .shop-order-summary-sidebar {
    position: static;
  }
}

@media (max-width: 680px) {
  .shop-order-summary-page {
    padding: 20px 12px 42px;
  }

  .shop-order-summary-hero,
  .shop-order-summary-card,
  .shop-order-summary-total-card {
    border-radius: 12px;
  }

  .shop-order-summary-hero {
    padding: 20px 16px;
  }

  .shop-order-summary-success {
    gap: 12px;
  }

  .shop-order-summary-success__icon {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
    font-size: 20px;
  }

  .shop-order-summary-identifiers {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .shop-order-summary-card {
    padding: 18px 14px;
  }

  .shop-order-summary-card__heading {
    gap: 10px;
  }

  .shop-bank-row {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  .shop-copy-button {
    width: 100%;
    height: 42px;
  }

  .shop-order-summary-mail {
    align-items: stretch;
    flex-direction: column;
  }

  .shop-order-summary-link-button {
    width: 100%;
    min-height: 42px;
    border: 1px solid #cbd7e5;
    border-radius: 8px;
    background: #ffffff;
  }

  .shop-order-summary-customer-grid {
    grid-template-columns: 1fr;
  }

  .shop-order-summary-product {
    grid-template-columns: 52px minmax(0, 1fr);
  }

  .shop-order-summary-product__thumb {
    width: 52px;
    height: 52px;
  }

  .shop-order-summary-product__qty,
  .shop-order-summary-product__price {
    grid-column: 2;
    text-align: left;
  }

  .shop-order-summary-product__price > span {
    white-space: normal;
  }

  .shop-order-summary-primary-button,
  .shop-order-summary-secondary-button {
    min-height: 52px;
  }
}


/* ALUCON_SHOP_SUMMARY_HIDDEN_FIX */
.shop-order-summary-page [hidden] {
  display: none !important;
}

/* ALUCON_SHOP_SUMMARY_PRODUCT_IMAGE_FIX */
.shop-order-summary-product__thumb {
  overflow: hidden;
}

.shop-order-summary-product__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}


/* ALUCON_MAIN_CATEGORY_VISIBILITY_20261001 */
[data-shop-main-category][hidden]{
  display:none !important;
}


/* ALUCON_MAIN_NAV_BUTTONS_20261001 */

.shop-nav{
  background:#fff;
}

.shop-nav__inner{
  gap:10px;
  padding-top:8px;
  padding-bottom:8px;
}

.shop-nav a{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid #d7e2ee;
  border-radius:9px;
  background:#fff;
  color:#174f8f;
  font-weight:700;
  text-decoration:none;
  cursor:pointer;
  user-select:none;
  pointer-events:auto;
  position:relative;
  z-index:3;
  transition:
    background .15s ease,
    border-color .15s ease,
    color .15s ease,
    box-shadow .15s ease;
}

.shop-nav a:hover{
  background:#eef6ff;
  border-color:#8db8e8;
  color:#0b4f9c;
  box-shadow:0 2px 7px rgba(23,79,143,.10);
}

.shop-nav a:active{
  background:#dfeeff;
  transform:translateY(1px);
}

@media (max-width:900px){
  .shop-nav__inner{
    gap:8px;
    padding:7px 12px;
  }

  .shop-nav a{
    min-height:38px;
    padding:0 14px;
  }
}

@media (max-width:560px){
  .shop-nav a{
    min-height:36px;
    padding:0 12px;
    font-size:14px;
  }
}


/* ALUCON_PRODUCT_QUESTION_V1 */

.product-question-panel{
  margin-top:18px;
  padding:22px;
  border:1px solid #dbe3ee;
  border-radius:14px;
  background:#f8fafc;
}

.product-question-panel[hidden]{
  display:none;
}

.product-question-panel h3{
  margin:0 0 6px;
  font-size:20px;
}

.product-question-intro{
  margin:0 0 18px;
  color:#64748b;
  font-size:14px;
  line-height:1.5;
}

.product-question-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.product-question-panel label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#334155;
  font-size:13px;
  font-weight:700;
}

.product-question-panel input,
.product-question-panel textarea{
  width:100%;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#fff;
  padding:11px 12px;
  outline:0;
  font:inherit;
  color:#172033;
}

.product-question-panel input:focus,
.product-question-panel textarea:focus{
  border-color:#1d6ef2;
  box-shadow:0 0 0 3px rgba(29,110,242,.10);
}

.product-question-message{
  margin-top:14px;
}

.product-question-consent{
  margin-top:14px;
  flex-direction:row !important;
  align-items:flex-start;
  gap:9px !important;
  font-weight:400 !important;
  line-height:1.45;
}

.product-question-consent input{
  width:auto;
  margin-top:2px;
}

.product-question-actions{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:16px;
}

.product-question-actions button{
  min-height:44px;
  border:0;
  border-radius:9px;
  padding:0 22px;
  background:#0b4b9f;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.product-question-actions button:disabled{
  opacity:.6;
  cursor:default;
}

.product-question-status{
  color:#334155;
  font-size:13px;
  font-weight:700;
}

.product-question-hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media (max-width:760px){
  .product-question-grid{
    grid-template-columns:1fr;
  }

  .product-question-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .product-question-actions button{
    width:100%;
  }
}


/* ALUCON_58_QUESTION_LINK_V1 */

.selector-product-card__availability-link{
  color:inherit;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
  cursor:pointer;
}

.selector-product-card__availability-link:hover{
  text-decoration-thickness:2px;
}

/* Tylko specjalny stan unavailable dla 58 mm */
#productDetailCart.is-stock-unavailable,
#productDetailCart.is-stock-unavailable:disabled{
  background:#b7c0cc !important;
  border-color:#b7c0cc !important;
  color:#fff !important;
  box-shadow:none !important;
  cursor:not-allowed !important;
  opacity:1 !important;
}


/* ALUCON_PRODUCT_MOBILE_GALLERY_V1 */
@media (max-width:700px){

  .product-detail-gallery{
    padding:10px;
  }

  .product-detail-gallery-layout{
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .product-detail-main-image{
    order:1;
    width:100%;
    min-height:0;
    height:auto;

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

    border-radius:8px;
  }

  .product-detail-main-image img{
    width:100%;
    height:auto;
    max-height:320px;
    padding:6px;
    object-fit:contain;
  }

  .product-detail-thumbs{
    order:2;

    width:100%;
    display:flex;
    flex-direction:row;
    gap:8px;

    overflow-x:auto;
    overflow-y:hidden;

    padding:2px 1px 6px;

    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }

  .product-detail-thumb{
    flex:0 0 64px;
    width:64px;
    height:64px;

    scroll-snap-align:start;
  }

  .product-detail-thumb img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
}

@media (max-width:420px){

  .product-detail-thumb{
    flex-basis:60px;
    width:60px;
    height:60px;
  }

}


/* ALUCON_PRODUCT_MOBILE_FINAL_V1 */
@media (max-width:700px){

  .shop-product-page__inner{
    width:100%;
    max-width:none;
    padding:10px 12px 30px;
  }

  .product-detail-main{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    width:100%;
    min-width:0;
  }

  .product-detail-gallery,
  .product-detail-info,
  .product-detail-benefits{
    width:100%;
    min-width:0;
  }

  /* GALERIA */
  .product-detail-gallery{
    padding:10px;
  }

  .product-detail-gallery-layout{
    display:flex;
    flex-direction:column;
    width:100%;
    gap:8px;
  }

  .product-detail-main-image{
    order:1;
    width:100%;
    min-height:260px;
    height:300px;
    padding:0;
  }

  .product-detail-main-image img{
    width:100%;
    height:100%;
    max-height:300px;
    padding:6px;
    object-fit:contain;
  }

  .product-detail-thumbs{
    order:2;
    width:100%;
    max-width:100%;

    display:flex;
    flex-direction:row;
    gap:7px;

    overflow-x:auto;
    overflow-y:hidden;

    padding:3px 1px 5px;

    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }

  .product-detail-thumb{
    flex:0 0 58px;
    width:58px;
    height:58px;
    padding:3px;
    scroll-snap-align:start;
  }

  /* PANEL PRODUKTU */
  .product-detail-info{
    padding:17px 16px;
  }

  .product-detail-info h1{
    margin-top:10px;
    font-size:25px;
    line-height:1.14;
  }

  .product-detail-variant{
    font-size:16px;
  }

  .product-detail-specs{
    margin-top:16px;
    gap:7px;
    font-size:13px;
  }

  .product-detail-availability{
    margin-top:16px;
    font-size:13px;
  }

  .product-detail-price-row{
    margin-top:14px;
  }

  .product-detail-price-row strong{
    font-size:31px;
  }

  .product-detail-actions{
    display:grid;
    grid-template-columns:105px minmax(0,1fr);
    gap:8px;
    width:100%;
    margin-top:15px;
  }

  .product-detail-actions button{
    min-width:0;
  }

  .product-detail-secondary-actions{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  /* KORZYSCI */
  .product-detail-benefits{
    grid-column:auto;
  }

  .product-detail-benefits__grid{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .product-detail-benefits__grid .home-benefit{
    min-height:82px;
    padding:12px 10px;
  }

  /* ZAKLADKI */
  .product-detail-tabs{
    width:100%;
    min-width:0;
    margin-top:14px;
  }

  .product-detail-tabs__nav{
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    -webkit-overflow-scrolling:touch;
  }

  .product-detail-tabs__nav button{
    flex:0 0 auto;
    min-height:42px;
    padding-left:14px;
    padding-right:14px;
  }

  .product-detail-description{
    grid-template-columns:1fr;
    gap:18px;
    padding:18px 14px;
  }

}

@media (max-width:420px){

  .product-detail-main-image{
    min-height:240px;
    height:270px;
  }

  .product-detail-main-image img{
    max-height:270px;
  }

  .product-detail-thumb{
    flex-basis:56px;
    width:56px;
    height:56px;
  }

  .product-detail-secondary-actions{
    grid-template-columns:1fr;
  }

  .product-detail-benefits__grid{
    grid-template-columns:1fr;
  }

}


/* ALUCON_ACCESSORIES_PRODUCTS_V1 */
.accessories-products-section{
  width:min(1180px,calc(100% - 32px));
  margin:32px auto 64px;
}

.accessories-products-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
}

.accessories-products-heading h2{
  margin:0 0 6px;
  font-size:28px;
  line-height:1.15;
}

.accessories-products-heading p{
  margin:0;
  color:#64748b;
}

.accessories-products-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}

.accessories-products-grid .selector-product-card{
  min-width:0;
}

@media (max-width:1050px){
  .accessories-products-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .accessories-products-section{
    width:min(100% - 24px,1180px);
    margin-top:24px;
  }

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

@media (max-width:480px){
  .accessories-products-grid{
    grid-template-columns:1fr;
  }
}


/* ALUCON_ACCESSORIES_DESKTOP_GRID_V1 */

/*
  Akcesoria:
  mobile = 1 kolumna
  tablet = 2 kolumny
  desktop = 3 kolumny
  szeroki desktop = 4 kolumny
*/

.accessories-products-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-items:stretch;
}

.shop-accessories-card{
  width:100%;
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
}

.shop-accessories-card .selector-product-card__content{
  flex:1 1 auto;
}

.shop-accessories-card__actions{
  margin-top:auto;
}

/* tablet */
@media (min-width:760px){
  .accessories-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
  }
}

/* desktop */
@media (min-width:1100px){
  .accessories-products-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
  }
}

/* szeroki desktop */
@media (min-width:1500px){
  .accessories-products-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
  }
}

/* zachowaj jedna kolumne na telefonie */
@media (max-width:759px){
  .accessories-products-grid{
    grid-template-columns:1fr;
  }
}
