/* V16.108 — scoped product experience integrity. */

/* ---------- Single product: coherent visual rhythm ---------- */
.als-v1619-product{
  --v108-line:rgba(0,78,41,.12);
  --v108-soft:#faf9f6;
  --v108-shadow:0 18px 48px rgba(24,57,39,.065);
}
.als-v1619-product .als-v1619-shell{width:min(1380px,calc(100% - 48px));}
.als-v1619-product .als-v1619-hero{
  grid-template-columns:minmax(0,1fr) minmax(390px,.95fr)!important;
  gap:40px!important;
  padding:28px!important;
  margin-bottom:30px!important;
  background:#fff;
  border:1px solid var(--v108-line);
  border-radius:28px;
  box-shadow:var(--v108-shadow);
  align-items:start!important;
}
.als-v1619-product .als-v1619-summary{padding:8px 4px 4px!important;min-width:0;}
.als-v1619-product[dir="rtl"] .als-v1619-summary,
.als-v1619-product[dir="rtl"] .als-v1619-details,
.als-v1619-product[dir="rtl"] .als-v1619-tips,
.als-v1619-product[dir="rtl"] .als-v1619-visualizer,
.als-v1619-product[dir="rtl"] .als-v1619-final{text-align:right;}
.als-v1619-product .als-v1619-meta-line{margin-bottom:12px!important;}
.als-v1619-product .als-v1619-summary h1{font-size:clamp(34px,3.5vw,50px)!important;line-height:1.18!important;}
.als-v1619-product .als-v1619-intro{font-size:17px!important;line-height:1.85!important;}
.als-v1619-product .als-v1619-price{border-radius:16px!important;border-color:var(--v108-line)!important;background:#fcfcfa!important;}
.als-v1619-product .als-v1619-primary-actions{gap:10px!important;}
.als-v1619-product .als-v1619-primary-actions>*{min-width:0!important;}
.als-v1619-product .als-v1619-advisor{margin-top:14px!important;}
.als-v1619-product .als-v1619-notices{margin-top:16px!important;}

/* Option/routes block: no empty colour panel for simple products. */
.als-v1619-product .als-v1628-choice-grid{
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
  gap:24px!important;
  margin:0 0 54px!important;
}
.als-v1619-product .als-v1628-choice-grid.is-route-only{grid-template-columns:1fr!important;}
.als-v1619-product .als-v1628-choice-grid.is-route-only .als-v1628-routes{width:100%;}
.als-v1619-product .als-v1628-colours,
.als-v1619-product .als-v1628-routes{
  border:1px solid var(--v108-line)!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(24,57,39,.045)!important;
  border-radius:20px!important;
  padding:24px!important;
}
.als-v1619-product .als-v168-routes.als-sp-paths{gap:12px!important;}
.als-v1619-product .als-v168-routes.als-sp-paths>button{min-height:138px;border-radius:16px!important;}
.als-v1619-product.is-simple-product .als-v1628-choice-grid{max-width:100%;}
.als-v1619-product.is-simple-product .als-v1628-routes h2{margin-bottom:18px!important;}

/* Core sections use one consistent card language instead of disconnected islands. */
.als-v1619-product .als-v1619-quick,
.als-v1619-product .als-v1619-details,
.als-v1619-product .als-v1619-tips,
.als-v1619-product .als-v1619-visualizer,
.als-v1619-product .als-v1619-final{
  border:1px solid var(--v108-line)!important;
  border-radius:24px!important;
  box-shadow:0 14px 40px rgba(24,57,39,.045)!important;
}
.als-v1619-product .als-v1619-quick{padding:28px!important;margin-bottom:58px!important;}
.als-v1619-product .als-v1619-details{background:#fff;padding:30px!important;margin-bottom:58px!important;}
.als-v1619-product .als-v1619-tips{background:#fff;padding:30px!important;margin-bottom:58px!important;}
.als-v1619-product .als-v1619-visualizer{background:#fff;padding:34px!important;margin-bottom:58px!important;gap:42px!important;}
.als-v1619-product .als-v1619-final{background:#fff;padding:30px!important;margin-bottom:64px!important;}
.als-v1619-product .als-v1619-patterns{margin-bottom:58px!important;}
.als-v1619-product .als-v1619-faq{margin-bottom:58px!important;}
.als-v1619-product .als-v1619-details>details{border-radius:14px!important;overflow:hidden;}
.als-v1619-product .als-v1619-quick>div{gap:18px!important;}
.als-v1619-product.is-simple-product .als-v1619-quick>div{grid-template-columns:repeat(4,minmax(0,1fr))!important;}

/* Mosque carpet: usage-space recommendations are intentionally absent. */
.als-v1619-product.is-mosque-carpet .als-v1619-patterns{margin-top:0!important;}

/* ---------- Homepage featured products ---------- */
.als-v1653-product-card.is-simple-product .als-v1653-product-card__media{
  height:clamp(325px,25vw,385px)!important;
  aspect-ratio:auto!important;
}
.als-v1653-product-card.is-simple-product .als-v1653-product-card__body{
  min-height:165px!important;
  padding:20px!important;
}
.als-v1653-product-card.is-simple-product h3{
  min-height:0!important;
  margin-bottom:18px!important;
}
.als-v1653-product-card.is-simple-product .als-v1653-btn{
  margin-top:auto!important;
}
.als-v1653-product-card.is-simple-product .als-v1656-variants-block,
.als-v1653-product-card.is-simple-product .als-v1653-product-card__colors{display:none!important;}

/* Generic catalogue card: simple products never reserve swatch space. */
.als-v16-product-card.is-simple-product .als-v16-product-card__swatches{display:none!important;}
.als-v16-product-card.is-simple-product .als-v16-product-card__actions{margin-top:auto;}

@media(max-width:1100px){
  .als-v1619-product .als-v1619-shell{width:min(100% - 32px,1100px);}
  .als-v1619-product .als-v1619-hero{grid-template-columns:1fr!important;gap:24px!important;padding:22px!important;}
  .als-v1619-product .als-v1628-choice-grid{grid-template-columns:1fr!important;}
  .als-v1619-product.is-simple-product .als-v1619-quick>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:767px){
  .als-v1619-product .als-v1619-shell{width:min(100% - 20px,760px);}
  .als-v1619-product .als-v1619-hero{padding:12px!important;border-radius:20px!important;margin-bottom:20px!important;}
  .als-v1619-product .als-v1619-summary{padding:12px 4px 4px!important;}
  .als-v1619-product .als-v1628-colours,
  .als-v1619-product .als-v1628-routes{padding:18px 14px!important;border-radius:18px!important;}
  .als-v1619-product .als-v1619-quick,
  .als-v1619-product .als-v1619-details,
  .als-v1619-product .als-v1619-tips,
  .als-v1619-product .als-v1619-visualizer,
  .als-v1619-product .als-v1619-final{padding:20px 16px!important;border-radius:20px!important;margin-bottom:44px!important;}
  .als-v1619-product.is-simple-product .als-v1619-quick>div{grid-template-columns:1fr 1fr!important;}
  .als-v1653-products__grid.als-v1690-carousel-track .als-v1653-product-card.is-simple-product .als-v1653-product-card__media,
  .als-v1653-product-card.is-simple-product .als-v1653-product-card__media{height:315px!important;aspect-ratio:auto!important;}
  .als-v1653-product-card.is-simple-product .als-v1653-product-card__body{min-height:150px!important;}
}
@media(max-width:430px){
  .als-v1619-product.is-simple-product .als-v1619-quick>div{grid-template-columns:1fr!important;}
  .als-v1653-products__grid.als-v1690-carousel-track .als-v1653-product-card.is-simple-product .als-v1653-product-card__media,
  .als-v1653-product-card.is-simple-product .als-v1653-product-card__media{height:290px!important;}
}
