/* V22 — final hero overlap polish. Keep the V21 visual direction; remove layer collisions. */
body.v22-site.v17-home .v17-hero{isolation:isolate;overflow:hidden}
body.v22-site.v17-home .v17-hero-inner{position:relative;z-index:10}
body.v22-site.v17-home .v17-hero-copy{position:relative;z-index:12;min-width:0}
body.v22-site.v17-home .v17-hero-products{z-index:3;pointer-events:none}
body.v22-site.v17-home .v17-hero-product{pointer-events:none}
body.v22-site.v17-home .v17-hero-data,
body.v22-site.v17-home .v17-hero-counter{position:relative;z-index:13}

/* Desktop: reserve a visual column for the product instead of letting it float over the headline. */
@media (min-width:1101px){
  body.v22-site.v17-home .v17-hero-inner{grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);grid-template-rows:auto minmax(0,1fr) auto;column-gap:34px;padding-top:34px;padding-bottom:34px}
  body.v22-site.v17-home .v17-hero-kicker{grid-column:1/-1}
  body.v22-site.v17-home .v17-hero-copy{grid-column:1;align-self:center;max-width:650px;padding-right:20px}
  body.v22-site.v17-home .v17-hero-copy h1{max-width:650px;font-size:clamp(64px,6.7vw,112px);line-height:.84}
  body.v22-site.v17-home .v17-hero-products{position:absolute;right:0;top:0;width:50%;height:100%;z-index:3}
  body.v22-site.v17-home .v17-hero-product{right:3%;top:10%;width:94%;height:78%}
  body.v22-site.v17-home .v17-hero-product img{max-width:82%;max-height:82%}
  body.v22-site.v17-home .v17-hero-data{grid-column:1;grid-row:3;align-self:end;min-width:0}
  body.v22-site.v17-home .v17-hero-counter{grid-column:2;grid-row:3;justify-self:end;align-self:end}
  body.v22-site.v17-home .v17-actions{position:relative;z-index:14}
}

/* Tablet: still use two visual regions, but reduce headline size before the mobile breakpoint. */
@media (min-width:761px) and (max-width:1100px){
  body.v22-site.v17-home .v17-hero-inner{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);grid-template-rows:auto 1fr auto;column-gap:18px;padding-top:30px;padding-bottom:28px}
  body.v22-site.v17-home .v17-hero-copy{grid-column:1;grid-row:2;align-self:center;max-width:620px}
  body.v22-site.v17-home .v17-hero-copy h1{font-size:clamp(58px,7.8vw,84px);max-width:620px}
  body.v22-site.v17-home .v17-hero-products{position:absolute;right:0;top:0;width:48%;height:100%;z-index:3}
  body.v22-site.v17-home .v17-hero-product{right:0;top:18%;width:100%;height:66%}
  body.v22-site.v17-home .v17-hero-product img{max-width:82%;max-height:82%}
  body.v22-site.v17-home .v17-hero-data{grid-column:1;grid-row:3}
  body.v22-site.v17-home .v17-hero-counter{grid-column:2;grid-row:3}
}

/* Mobile: the product becomes a bounded background visual; content owns the flow. */
@media (max-width:760px){
  body.v22-site.v17-home .v17-hero{min-height:calc(100svh - 68px);height:auto}
  body.v22-site.v17-home .v17-hero-inner{position:relative;z-index:10;min-height:calc(100svh - 68px);padding:26px 0 30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
  body.v22-site.v17-home .v17-hero-kicker{width:100%;position:relative;z-index:14}
  body.v22-site.v17-home .v17-hero-copy{position:relative;z-index:14;width:100%;max-width:none;padding-top:22px}
  body.v22-site.v17-home .v17-hero-copy h1{font-size:clamp(43px,13.8vw,61px);line-height:.88;max-width:8.6em;margin-bottom:17px;text-wrap:balance}
  body.v22-site.v17-home .v17-hero-copy p{max-width:310px}
  body.v22-site.v17-home .v17-actions{position:relative;z-index:15}
  body.v22-site.v17-home .v17-hero-products{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:hidden}
  body.v22-site.v17-home .v17-hero-product{right:-12%;top:auto;bottom:10%;width:82%;height:38%;max-height:300px}
  body.v22-site.v17-home .v17-hero-product img{max-width:82%;max-height:82%}
  body.v22-site.v17-home .v17-hero-counter{position:absolute;right:0;bottom:12px;width:112px;z-index:16}
}

@media (max-width:430px){
  body.v22-site.v17-home .v17-hero-inner{padding-top:22px;padding-bottom:28px}
  body.v22-site.v17-home .v17-hero-copy{padding-top:18px}
  body.v22-site.v17-home .v17-hero-copy h1{font-size:clamp(40px,13.2vw,57px);max-width:8.3em;letter-spacing:-.07em}
  body.v22-site.v17-home .v17-hero-copy p{max-width:290px;font-size:11.5px}
  body.v22-site.v17-home .v17-actions .btn{min-height:42px;padding:0 16px}
  body.v22-site.v17-home .v17-hero-product{right:-17%;bottom:8%;width:84%;height:34%}
  body.v22-site.v17-home .v17-hero-counter{bottom:9px}
}

@media(prefers-reduced-motion:reduce){body.v22-site *{transition:none!important;animation:none!important}}

/* ===== FINAL DESKTOP HERO LAYOUT ===== */
@media (min-width:1101px){
  body.v22-site.v17-home .v17-hero{
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(520px,0.95fr) !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    column-gap:40px !important;
    align-items:center !important;
    min-height:calc(100svh - 76px) !important;
    padding-top:34px !important;
    padding-bottom:44px !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    grid-column:1 / -1 !important;
    grid-row:1 !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    grid-column:1 !important;
    grid-row:2 !important;
    width:auto !important;
    max-width:680px !important;
    position:relative !important;
    z-index:12 !important;
    align-self:center !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    max-width:680px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    position:absolute !important;
    left:auto !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:52% !important;
    height:100% !important;
    z-index:3 !important;
    display:block !important;
    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:8% !important;
    bottom:auto !important;
    width:auto !important;
    height:82% !important;
    display:grid !important;
    place-items:center !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    position:relative !important;
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:82% !important;
    max-height:82% !important;
    object-fit:contain !important;
    padding:0 !important;
  }

  body.v22-site.v17-home .v17-hero-data{
    grid-column:1 !important;
    grid-row:3 !important;
    position:relative !important;
    left:auto !important;
    bottom:auto !important;
    align-self:end !important;
    z-index:14 !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    grid-column:2 !important;
    grid-row:3 !important;
    position:relative !important;
    right:auto !important;
    bottom:auto !important;
    justify-self:end !important;
    align-self:end !important;
    z-index:14 !important;
  }

  body.v22-site.v17-home .v17-scroll-cue{
    right:18px !important;
    z-index:14 !important;
  }
}

/* ===== END FINAL DESKTOP HERO LAYOUT ===== */

/* ===== DESKTOP HERO FINAL SPACING ===== */
@media (min-width:1101px){
  body.v22-site.v17-home .v17-hero-product{
    top:2% !important;
    height:82% !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:78% !important;
    max-height:76% !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    bottom:22px !important;
  }
}

/* ===== END DESKTOP HERO FINAL SPACING ===== */

/* ===== CATALOGUE LIGHT SECTION TYPOGRAPHY ===== */
@media (min-width:801px){
  body.v22-site.v17-home .v17-catalogue-copy .eyebrow{
    color:#54716a !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker{
    color:#55736c !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker span{
    color:#55736c !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker i{
    background:#6d9187 !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy h2{
    color:#18342f !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy p{
    color:#566a65 !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-text-link.light{
    color:#18342f !important;
    border-bottom-color:rgba(24,52,47,.35) !important;
  }
}

/* ===== END CATALOGUE LIGHT SECTION TYPOGRAPHY ===== */

/* ===== PRODUCT SYSTEM CATEGORY TYPOGRAPHY ===== */
@media (min-width:801px){
  body.v22-site.v17-home .v17-category .v17-category-copy{
    color:#18342f !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy > span{
    color:#55736c !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy h3{
    color:#18342f !important;
    text-shadow:none !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy small{
    color:#647872 !important;
  }

  body.v22-site.v17-home .v17-category:hover .v17-category-copy h3,
  body.v22-site.v17-home .v17-category:hover .v17-category-copy > span,
  body.v22-site.v17-home .v17-category:hover .v17-category-copy small{
    color:#18342f !important;
  }
}

/* ===== END PRODUCT SYSTEM CATEGORY TYPOGRAPHY ===== */

/* ===== PRODUCT SYSTEM CATEGORY TYPOGRAPHY ===== */
@media (min-width:801px){
  body.v22-site.v17-home .v17-category .v17-category-copy{
    color:#18342f !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy > span{
    color:#55736c !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy h3{
    color:#18342f !important;
    text-shadow:none !important;
  }

  body.v22-site.v17-home .v17-category .v17-category-copy small{
    color:#647872 !important;
  }

  body.v22-site.v17-home .v17-category:hover .v17-category-copy h3,
  body.v22-site.v17-home .v17-category:hover .v17-category-copy > span,
  body.v22-site.v17-home .v17-category:hover .v17-category-copy small{
    color:#18342f !important;
  }
}

/* ===== END PRODUCT SYSTEM CATEGORY TYPOGRAPHY ===== */

/* ===== SELECTED PRODUCTS — LIGHT CARD TYPOGRAPHY ===== */
@media (min-width:801px){

  body.v22-site.v17-home .v17-product{
    color:#18342f !important;
  }

  body.v22-site.v17-home .v17-product-meta{
    color:#18342f !important;
    background:#eef0e9 !important;
    padding:16px 14px 14px !important;
    min-height:106px !important;
    box-sizing:border-box !important;
    border-bottom:1px solid rgba(24,52,47,.16) !important;
  }

  body.v22-site.v17-home .v17-product-meta small{
    display:block !important;
    color:#5d756f !important;
    font-size:8px !important;
    line-height:1.3 !important;
    letter-spacing:.1em !important;
    text-transform:uppercase !important;
    margin:0 0 6px !important;
  }

  body.v22-site.v17-home .v17-product-meta h3{
    color:#18342f !important;
    font-size:18px !important;
    line-height:1.2 !important;
    font-weight:500 !important;
    letter-spacing:-.025em !important;
    margin:0 0 8px !important;
    min-height:43px !important;
    max-width:100% !important;
    overflow:visible !important;
  }

  body.v22-site.v17-home .v17-product-meta b{
    display:block !important;
    color:#668b3e !important;
    font-size:8px !important;
    line-height:1.2 !important;
    letter-spacing:.1em !important;
    margin:0 !important;
  }

  body.v22-site.v17-home .v17-product-visual span{
    color:#fff !important;
    background:#0a1715 !important;
  }
}

/* ===== END SELECTED PRODUCTS — LIGHT CARD TYPOGRAPHY ===== */

/* ===== PRODUCT CAROUSEL SCROLLBAR ===== */
.v17-product-rail{
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}

.v17-product-rail::-webkit-scrollbar{
  display:none !important;
  width:0 !important;
  height:0 !important;
}
/* ===== END PRODUCT CAROUSEL SCROLLBAR ===== */


/* ===== LIGHT SECTIONS — ALL DEVICES TYPOGRAPHY ===== */

/* Catalogue */
body.v22-site.v17-home .v17-catalogue-copy .eyebrow{
  color:#54716a !important;
}

body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker,
body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker span{
  color:#55736c !important;
}

body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker i{
  background:#6d9187 !important;
}

body.v22-site.v17-home .v17-catalogue-copy h2{
  color:#18342f !important;
  text-shadow:none !important;
}

body.v22-site.v17-home .v17-catalogue-copy p{
  color:#566a65 !important;
}

body.v22-site.v17-home .v17-catalogue-copy .v17-text-link.light{
  color:#18342f !important;
  border-bottom-color:rgba(24,52,47,.35) !important;
}


/* Product System */
body.v22-site.v17-home .v17-category .v17-category-copy{
  color:#18342f !important;
}

body.v22-site.v17-home .v17-category .v17-category-copy > span{
  color:#55736c !important;
}

body.v22-site.v17-home .v17-category .v17-category-copy h3{
  color:#18342f !important;
  text-shadow:none !important;
}

body.v22-site.v17-home .v17-category .v17-category-copy small{
  color:#647872 !important;
}


/* Selected Models */
body.v22-site.v17-home .v17-product{
  color:#18342f !important;
}

body.v22-site.v17-home .v17-product-meta{
  color:#18342f !important;
}

body.v22-site.v17-home .v17-product-meta small{
  color:#5d756f !important;
}

body.v22-site.v17-home .v17-product-meta h3{
  color:#18342f !important;
}

body.v22-site.v17-home .v17-product-meta b{
  color:#668b3e !important;
}

/* ===== END LIGHT SECTIONS — ALL DEVICES TYPOGRAPHY ===== */


/* ===== SELECTED MODELS — AUTO SCROLL FIX ===== */
body.v22-site.v17-home .v17-product-rail{
  scroll-snap-type:none !important;
}
/* ===== END SELECTED MODELS — AUTO SCROLL FIX ===== */


/* ===== SELECTED MODELS — MOBILE AUTO SCROLL ===== */
@media (max-width: 800px){
  body.v22-site.v17-home .v17-product-rail{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:none !important;
    scroll-behavior:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }

  body.v22-site.v17-home .v17-product{
    scroll-snap-align:none !important;
    scroll-snap-stop:normal !important;
  }
}
/* ===== END SELECTED MODELS — MOBILE AUTO SCROLL ===== */


/* ===== MOBILE HOME HERO PRODUCT IMAGE — FINAL ===== */
@media (max-width:800px){

  body.v22-site.v17-home .v17-hero-products{
    opacity:1 !important;
    visibility:visible !important;
    right:0 !important;
    top:auto !important;
    bottom:4% !important;
    width:100% !important;
    height:38% !important;
    z-index:4 !important;
    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    opacity:1 !important;
    visibility:visible !important;
    right:0 !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:100% !important;
    display:grid !important;
    place-items:center !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    opacity:1 !important;
    visibility:visible !important;
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:68% !important;
    max-height:82% !important;
    object-fit:contain !important;
    padding:0 !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    position:relative !important;
    z-index:12 !important;
  }

  body.v22-site.v17-home .v17-hero-data{
    position:relative !important;
    z-index:14 !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    z-index:14 !important;
  }
}
/* ===== END MOBILE HOME HERO PRODUCT IMAGE — FINAL ===== */


/* =========================================================
   MOBILE HOME HERO — FINAL SLIDER / NO OVERLAP
   ========================================================= */

@media (max-width:800px){

  /* Product visual occupies only the lower part of the hero. */
  body.v22-site.v17-home .v17-hero-products{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:auto !important;
    bottom:0 !important;
    width:100% !important;
    height:36% !important;
    z-index:3 !important;
    opacity:1 !important;
    visibility:visible !important;
    overflow:hidden !important;
    pointer-events:none !important;
  }

  /* Every slide uses the exact same area. */
  body.v22-site.v17-home .v17-hero-product{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;

    display:grid !important;
    place-items:center !important;

    visibility:hidden !important;
    opacity:0 !important;

    transform:translate3d(28px,18px,0) scale(.96) !important;

    transition:
      opacity .8s cubic-bezier(.16,1,.3,1),
      transform 1s cubic-bezier(.16,1,.3,1) !important;
  }

  /* ONLY the active slide is visible. */
  body.v22-site.v17-home .v17-hero-product.is-active{
    visibility:visible !important;
    opacity:.95 !important;
    transform:none !important;
    z-index:2 !important;
  }

  /* Product image stays fully visible — never crop. */
  body.v22-site.v17-home .v17-hero-product img{
    position:relative !important;
    display:block !important;

    width:auto !important;
    height:auto !important;

    max-width:88% !important;
    max-height:88% !important;

    object-fit:contain !important;
    padding:0 !important;
  }

  /* Keep CTA above the product visual. */
  body.v22-site.v17-home .v17-hero-copy{
    position:relative !important;
    z-index:12 !important;
  }

  body.v22-site.v17-home .v17-actions{
    position:relative !important;
    z-index:13 !important;
  }

  /* Counter stays above the visual. */
  body.v22-site.v17-home .v17-hero-counter{
    position:absolute !important;
    right:14px !important;
    bottom:12px !important;
    z-index:15 !important;
  }
}

/* Smaller phones: slightly reduce the visual area. */
@media (max-width:430px){

  body.v22-site.v17-home .v17-hero-products{
    height:34% !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:90% !important;
    max-height:90% !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    right:12px !important;
    bottom:9px !important;
  }
}

/* =========================================================
   END MOBILE HOME HERO — FINAL SLIDER / NO OVERLAP
   ========================================================= */


/* =========================================================
   MOBILE HOME HERO — FULL HEIGHT / FULL PRODUCT
   ========================================================= */

@media (max-width:800px){

  body.v22-site.v17-home .v17-hero{
    min-height:920px !important;
    height:auto !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    min-height:920px !important;
    height:920px !important;
    padding-top:42px !important;
    padding-bottom:36px !important;
    box-sizing:border-box !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  /* Kicker stays clearly below the header. */
  body.v22-site.v17-home .v17-hero-kicker{
    position:relative !important;
    z-index:20 !important;
    flex:0 0 auto !important;
    margin-bottom:24px !important;
  }

  /* Copy gets its own space. */
  body.v22-site.v17-home .v17-hero-copy{
    position:relative !important;
    z-index:12 !important;
    flex:0 0 auto !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    margin-bottom:24px !important;
  }

  body.v22-site.v17-home .v17-actions{
    position:relative !important;
    z-index:20 !important;
    flex:0 0 auto !important;
  }

  /* Product gets a dedicated area BELOW the CTA. */
  body.v22-site.v17-home .v17-hero-products{
    top:auto !important;
    bottom:34px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:330px !important;
    z-index:3 !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    top:0 !important;
    bottom:0 !important;
    height:100% !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:82% !important;
    max-height:92% !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
  }

  /* Counter belongs to the bottom of the hero, not the CTA. */
  body.v22-site.v17-home .v17-hero-counter{
    right:14px !important;
    bottom:12px !important;
    z-index:25 !important;
  }

  body.v22-site.v17-home .v17-scroll-cue{
    display:none !important;
  }
}

/* iPhone-sized screens */
@media (max-width:430px){

  body.v22-site.v17-home .v17-hero{
    min-height:900px !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    min-height:900px !important;
    height:900px !important;
    padding-top:38px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    height:320px !important;
    bottom:32px !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:84% !important;
    max-height:92% !important;
  }
}

/* Very narrow phones */
@media (max-width:380px){

  body.v22-site.v17-home .v17-hero,
  body.v22-site.v17-home .v17-hero-inner{
    min-height:860px !important;
    height:860px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    height:300px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(42px,11vw,58px) !important;
  }
}

/* =========================================================
   END MOBILE HOME HERO — FULL HEIGHT / FULL PRODUCT
   ========================================================= */


/* =========================================================
   MOBILE TYPOGRAPHY — MORE VERTICAL BREATHING ROOM
   ========================================================= */

@media (max-width:800px){

  /* ---------- HOME HERO ---------- */

  body.v22-site.v17-home .v17-hero-kicker{
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    line-height:0.94 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    line-height:1.65 !important;
    margin-top:0 !important;
    margin-bottom:32px !important;
    max-width:95% !important;
  }

  body.v22-site.v17-home .v17-actions{
    margin-top:0 !important;
  }


  /* ---------- CATALOGUE ---------- */

  body.v22-site.v17-home .v17-catalogue-copy .eyebrow{
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-catalogue-kicker{
    margin-bottom:28px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy h2{
    line-height:0.96 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy p{
    line-height:1.65 !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .v17-text-link{
    margin-top:4px !important;
  }


  /* ---------- PRODUCT SYSTEM ---------- */

  body.v22-site.v17-home .v17-section-top{
    gap:30px !important;
  }

  body.v22-site.v17-home .v17-section-top .eyebrow{
    margin-bottom:28px !important;
  }

  body.v22-site.v17-home .v17-section-top h2{
    line-height:0.96 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-section-top p{
    line-height:1.65 !important;
  }


  /* ---------- SELECTED MODELS ---------- */

  body.v22-site.v17-home .v17-products-head{
    margin-bottom:36px !important;
  }

  body.v22-site.v17-home .v17-products-head .eyebrow{
    margin-bottom:28px !important;
  }

  body.v22-site.v17-home .v17-products-head h2{
    line-height:0.96 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-products-head .v17-text-link{
    margin-top:4px !important;
  }


  /* ---------- FACTORY ---------- */

  body.v22-site.v17-home .v17-factory-copy .eyebrow{
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-factory-copy h2{
    line-height:0.98 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-factory-copy p{
    line-height:1.65 !important;
    margin-top:0 !important;
    margin-bottom:32px !important;
  }


  /* ---------- PROOF / DOCUMENTED ---------- */

  body.v22-site.v17-home .v17-proof-copy .eyebrow{
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-proof-copy h2{
    line-height:0.96 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:32px !important;
  }

  body.v22-site.v17-home .v17-proof-copy p{
    line-height:1.65 !important;
    margin-top:0 !important;
    margin-bottom:30px !important;
  }


  /* ---------- FINAL CTA ---------- */

  body.v22-site.v17-home .v17-final-inner .eyebrow{
    margin-bottom:30px !important;
  }

  body.v22-site.v17-home .v17-final-inner h2{
    line-height:0.98 !important;
    letter-spacing:-0.045em !important;
    margin-top:0 !important;
    margin-bottom:32px !important;
  }

  body.v22-site.v17-home .v17-final-inner p{
    line-height:1.65 !important;
    margin-top:0 !important;
    margin-bottom:34px !important;
  }

}

/* Slightly more generous spacing on larger phones */
@media (min-width:431px) and (max-width:800px){

  body.v22-site.v17-home .v17-hero-copy h1,
  body.v22-site.v17-home .v17-products-head h2,
  body.v22-site.v17-home .v17-proof-copy h2,
  body.v22-site.v17-home .v17-final-inner h2{
    line-height:0.96 !important;
  }

}

/* =========================================================
   END MOBILE TYPOGRAPHY — MORE VERTICAL BREATHING ROOM
   ========================================================= */


/* =========================================================
   MOBILE HOME — HERO + SELECTED MODELS REBALANCE
   ========================================================= */

@media (max-width:800px){

  /* =======================================================
     HERO
     ======================================================= */

  body.v22-site.v17-home .v17-hero{
    min-height:860px !important;
    height:860px !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    height:860px !important;
    min-height:860px !important;
    padding:34px 0 0 !important;
    box-sizing:border-box !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    margin:0 0 24px !important;
    line-height:1 !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    padding-top:0 !important;
    width:100% !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(42px,12.6vw,56px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
    max-width:100% !important;
    margin:0 0 25px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    max-width:92% !important;
    font-size:12px !important;
    line-height:1.58 !important;
    margin:0 0 27px !important;
  }

  body.v22-site.v17-home .v17-actions{
    margin:0 !important;
  }

  /* Product visual starts lower, but remains inside Hero. */
  body.v22-site.v17-home .v17-hero-products{
    left:0 !important;
    right:0 !important;
    top:auto !important;
    bottom:0 !important;
    width:100% !important;
    height:285px !important;
    z-index:3 !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    inset:0 !important;
    width:100% !important;
    height:100% !important;

    display:grid !important;
    place-items:center !important;

    visibility:hidden !important;
    opacity:0 !important;
    transform:translate3d(20px,12px,0) scale(.97) !important;
  }

  body.v22-site.v17-home .v17-hero-product.is-active{
    visibility:visible !important;
    opacity:.95 !important;
    transform:none !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    width:auto !important;
    height:auto !important;
    max-width:82% !important;
    max-height:90% !important;
    padding:0 !important;
    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    right:14px !important;
    bottom:10px !important;
    z-index:20 !important;
  }


  /* =======================================================
     SELECTED MODELS
     ======================================================= */

  body.v22-site.v17-home .v17-products{
    padding-top:76px !important;
    padding-bottom:90px !important;
  }

  body.v22-site.v17-home .v17-products-head{
    display:block !important;
    margin:0 0 34px !important;
  }

  body.v22-site.v17-home .v17-products-head .eyebrow{
    margin:0 0 25px !important;
  }

  /* Keep the headline compact and intentional. */
  body.v22-site.v17-home .v17-products-head h2{
    font-size:clamp(45px,13vw,60px) !important;
    line-height:.91 !important;
    letter-spacing:-.06em !important;
    max-width:100% !important;
    margin:0 0 29px !important;
  }

  /* Do not allow "quote." to become an isolated third line. */
  body.v22-site.v17-home .v17-products-head h2 em{
    white-space:nowrap !important;
  }

  body.v22-site.v17-home .v17-products-head .v17-text-link{
    display:inline-block !important;
    margin:0 !important;
  }

  /* Product rail begins immediately after the heading. */
  body.v22-site.v17-home .v17-product-rail{
    gap:18px !important;
    padding-right:30px !important;
  }

  body.v22-site.v17-home .v17-product{
    flex:0 0 78vw !important;
    width:78vw !important;
    max-width:none !important;
  }

  body.v22-site.v17-home .v17-product-visual{
    height:290px !important;
  }

  body.v22-site.v17-home .v17-product-visual img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-product-meta{
    padding:18px 15px 17px !important;
    min-height:105px !important;
  }

  body.v22-site.v17-home .v17-product-meta h3{
    font-size:18px !important;
    line-height:1.16 !important;
    margin:0 !important;
  }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media (max-width:430px){

  body.v22-site.v17-home .v17-hero{
    height:840px !important;
    min-height:840px !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    height:840px !important;
    min-height:840px !important;
    padding-top:30px !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(40px,12.2vw,53px) !important;
    line-height:.94 !important;
    margin-bottom:24px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    font-size:11.5px !important;
    line-height:1.56 !important;
    max-width:94% !important;
    margin-bottom:25px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    height:270px !important;
  }

  body.v22-site.v17-home .v17-product{
    flex-basis:82vw !important;
    width:82vw !important;
  }

  body.v22-site.v17-home .v17-product-visual{
    height:270px !important;
  }

  body.v22-site.v17-home .v17-products{
    padding-top:64px !important;
  }

  body.v22-site.v17-home .v17-products-head h2{
    font-size:clamp(43px,12.7vw,56px) !important;
    line-height:.92 !important;
  }

}


/* =========================================================
   END MOBILE HOME — HERO + SELECTED MODELS REBALANCE
   ========================================================= */


/* =========================================================
   MOBILE HERO — MOVE PRODUCT UP / REMOVE EMPTY SPACE
   ========================================================= */

@media (max-width:800px){

  body.v22-site.v17-home .v17-hero{
    height:760px !important;
    min-height:760px !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    height:760px !important;
    min-height:760px !important;
    padding-top:30px !important;
    padding-bottom:0 !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(41px,12.1vw,54px) !important;
    line-height:.95 !important;
    margin-bottom:23px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    line-height:1.55 !important;
    margin-bottom:24px !important;
  }

  body.v22-site.v17-home .v17-actions{
    position:relative !important;
    z-index:20 !important;
  }

  /* Product is positioned directly below the CTA area. */
  body.v22-site.v17-home .v17-hero-products{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:505px !important;
    bottom:auto !important;
    width:100% !important;
    height:255px !important;
    z-index:3 !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    inset:0 !important;
    width:100% !important;
    height:100% !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:84% !important;
    max-height:94% !important;
    padding:0 !important;
    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    right:14px !important;
    bottom:9px !important;
    z-index:20 !important;
  }

}


/* =========================================================
   IPHONE / SMALL PHONE
   ========================================================= */

@media (max-width:430px){

  body.v22-site.v17-home .v17-hero{
    height:750px !important;
    min-height:750px !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    height:750px !important;
    min-height:750px !important;
    padding-top:28px !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    margin-bottom:21px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(40px,11.9vw,52px) !important;
    line-height:.95 !important;
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    font-size:11.5px !important;
    line-height:1.55 !important;
    margin-bottom:23px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    top:500px !important;
    height:250px !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:86% !important;
    max-height:94% !important;
  }

}


/* =========================================================
   END MOBILE HERO — MOVE PRODUCT UP
   ========================================================= */


/* =========================================================
   MOBILE HOME — STRUCTURAL CLEANUP
   Remove artificial empty space and protect image content.
   ========================================================= */

@media (max-width:800px){

  /* =======================================================
     HERO — CONTENT FIRST, PRODUCT SECOND
     ======================================================= */

  body.v22-site.v17-home .v17-hero{
    height:auto !important;
    min-height:0 !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    height:auto !important;
    min-height:0 !important;
    padding-top:30px !important;
    padding-bottom:0 !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    flex:none !important;
    margin:0 0 24px !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    flex:none !important;
    padding:0 !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    margin:0 0 24px !important;
    font-size:clamp(40px,11.8vw,54px) !important;
    line-height:.95 !important;
    letter-spacing:-.055em !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    margin:0 0 25px !important;
    max-width:94% !important;
    line-height:1.55 !important;
  }

  body.v22-site.v17-home .v17-actions{
    margin:0 !important;
    flex:none !important;
  }


  /* =======================================================
     PRODUCT VISUAL
     ======================================================= */

  body.v22-site.v17-home .v17-hero-products{
    position:relative !important;

    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;

    width:100% !important;
    height:310px !important;

    margin-top:22px !important;
    margin-bottom:0 !important;

    z-index:3 !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    position:absolute !important;

    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;

    width:100% !important;
    height:100% !important;

    inset:auto !important;

    display:grid !important;
    place-items:center !important;

    visibility:hidden !important;
    opacity:0 !important;

    transform:translate3d(18px,10px,0) scale(.97) !important;
  }

  body.v22-site.v17-home .v17-hero-product.is-active{
    visibility:visible !important;
    opacity:.95 !important;
    transform:none !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    display:block !important;

    width:auto !important;
    height:auto !important;

    max-width:88% !important;
    max-height:96% !important;

    padding:0 !important;

    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    right:14px !important;
    bottom:10px !important;
    z-index:20 !important;
  }


  /* =======================================================
     CATALOGUE SECTION
     ======================================================= */

  body.v22-site.v17-home .v17-catalogue{
    padding-top:0 !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy{
    padding-top:64px !important;
    padding-bottom:44px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .eyebrow{
    margin-bottom:28px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy h2{
    margin-top:0 !important;
    margin-bottom:28px !important;
    line-height:.96 !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy p{
    margin-top:0 !important;
    margin-bottom:30px !important;
    line-height:1.62 !important;
  }

  /* Catalogue image / document card */
  body.v22-site.v17-home .v17-catalogue-visual{
    padding-bottom:36px !important;
    box-sizing:border-box !important;
  }

  /* Bottom metadata / overlay gets real breathing room. */
  body.v22-site.v17-home .v17-catalogue-visual .v17-catalogue-meta,
  body.v22-site.v17-home .v17-catalogue-visual .v17-catalogue-index{
    padding-bottom:30px !important;
  }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media (max-width:430px){

  body.v22-site.v17-home .v17-hero-inner{
    padding-top:28px !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(39px,11.7vw,51px) !important;
    margin-bottom:23px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    font-size:11.5px !important;
    margin-bottom:24px !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    height:300px !important;
    margin-top:20px !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    max-width:90% !important;
    max-height:96% !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy{
    padding-top:58px !important;
    padding-bottom:40px !important;
  }

}


/* =========================================================
   END MOBILE HOME — STRUCTURAL CLEANUP
   ========================================================= */


/* =========================================================
   MOBILE HERO — RESTORE ABSOLUTE PRODUCT LAYER
   ========================================================= */

@media (max-width:800px){

  body.v22-site.v17-home .v17-hero{
    position:relative !important;
    height:780px !important;
    min-height:780px !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    position:relative !important;
    z-index:10 !important;

    height:780px !important;
    min-height:780px !important;

    padding-top:30px !important;
    padding-bottom:0 !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    position:relative !important;
    z-index:15 !important;
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    position:relative !important;
    z-index:15 !important;
    padding:0 !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(40px,11.8vw,53px) !important;
    line-height:.95 !important;
    letter-spacing:-.055em !important;
    margin:0 0 23px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    max-width:94% !important;
    font-size:11.5px !important;
    line-height:1.55 !important;
    margin:0 0 24px !important;
  }

  body.v22-site.v17-home .v17-actions{
    position:relative !important;
    z-index:20 !important;
    margin:0 !important;
  }


  /* -------------------------------------------------------
     PRODUCT LAYER
     ------------------------------------------------------- */

  body.v22-site.v17-home .v17-hero-products{
    position:absolute !important;

    left:0 !important;
    right:0 !important;

    /*
     * Keep it BELOW the CTA.
     * It must NOT participate in document flow.
     */
    top:500px !important;
    bottom:auto !important;

    width:100% !important;
    height:280px !important;

    z-index:4 !important;
    overflow:hidden !important;

    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    position:absolute !important;

    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;

    width:100% !important;
    height:100% !important;

    display:grid !important;
    place-items:center !important;

    visibility:hidden !important;
    opacity:0 !important;

    transform:translate3d(18px,10px,0) scale(.97) !important;

    transition:
      opacity .8s cubic-bezier(.16,1,.3,1),
      transform 1s cubic-bezier(.16,1,.3,1) !important;
  }

  body.v22-site.v17-home .v17-hero-product.is-active{
    visibility:visible !important;
    opacity:.95 !important;
    transform:none !important;
    z-index:2 !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    display:block !important;

    width:auto !important;
    height:auto !important;

    max-width:88% !important;
    max-height:94% !important;

    padding:0 !important;

    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    position:absolute !important;
    right:14px !important;
    bottom:8px !important;
    z-index:25 !important;
  }

}


/* =========================================================
   MOBILE HERO — FINAL
   ========================================================= */

@media (max-width:800px){

  body.v22-site.v17-home .v17-hero{
    position:relative !important;
    height:770px !important;
    min-height:770px !important;
    overflow:hidden !important;
  }

  body.v22-site.v17-home .v17-hero-inner{
    position:relative !important;
    z-index:10 !important;
    height:770px !important;
    min-height:770px !important;
    padding-top:28px !important;
    padding-bottom:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  body.v22-site.v17-home .v17-hero-kicker{
    position:relative !important;
    z-index:15 !important;
    margin-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-hero-copy{
    position:relative !important;
    z-index:15 !important;
    padding:0 !important;
  }

  body.v22-site.v17-home .v17-hero-copy h1{
    font-size:clamp(40px,11.8vw,53px) !important;
    line-height:.95 !important;
    letter-spacing:-.055em !important;
    margin:0 0 23px !important;
  }

  body.v22-site.v17-home .v17-hero-copy p{
    max-width:94% !important;
    font-size:11.5px !important;
    line-height:1.55 !important;
    margin:0 0 24px !important;
  }

  body.v22-site.v17-home .v17-actions{
    position:relative !important;
    z-index:20 !important;
    margin:0 !important;
  }

  body.v22-site.v17-home .v17-hero-products{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:395px !important;
    bottom:auto !important;
    width:100% !important;
    height:300px !important;
    z-index:4 !important;
    overflow:hidden !important;
    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-hero-product{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:100% !important;
    display:grid !important;
    place-items:center !important;
    visibility:hidden !important;
    opacity:0 !important;
    transform:translate3d(18px,10px,0) scale(.97) !important;
    transition:
      opacity .8s cubic-bezier(.16,1,.3,1),
      transform 1s cubic-bezier(.16,1,.3,1) !important;
  }

  body.v22-site.v17-home .v17-hero-product.is-active{
    visibility:visible !important;
    opacity:.95 !important;
    transform:none !important;
    z-index:2 !important;
  }

  body.v22-site.v17-home .v17-hero-product img{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:82% !important;
    max-height:280px !important;
    padding:0 !important;
    object-fit:contain !important;
  }

  body.v22-site.v17-home .v17-hero-counter{
    position:absolute !important;
    right:14px !important;
    bottom:8px !important;
    z-index:25 !important;
  }
}


/* =========================================================
   ARABIC MOBILE HERO — FINAL
   ========================================================= */

@media (max-width:760px){

  body.v22-site.v17-home.arabic-page .v17-hero{
    height:900px !important;
    min-height:900px !important;
  }

  body.v22-site.v17-home.arabic-page .v17-hero-inner{
    height:900px !important;
    min-height:900px !important;
  }

  body.v22-site.v17-home.arabic-page .v17-hero-products{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:515px !important;
    width:100% !important;
    max-width:100% !important;
    height:300px !important;
    min-width:0 !important;
    transform:none !important;
    overflow:visible !important;
  }

  body.v22-site.v17-home.arabic-page .v17-hero-product{
    right:0 !important;
    left:0 !important;
    top:0 !important;
    bottom:auto !important;
    width:100% !important;
    max-width:100% !important;
    height:300px !important;
    transform:translateX(-20px) !important;
    overflow:visible !important;
  }

  body.v22-site.v17-home.arabic-page .v17-hero-product img{
    width:auto !important;
    height:auto !important;
    max-width:82% !important;
    max-height:280px !important;
    object-fit:contain !important;
  }
}


/* =========================================================
   MOBILE CATALOGUE — FINAL CLEAN FLOW
   ========================================================= */


@media (max-width:800px){

  /* -----------------------------------------
     Section becomes normal document flow.
     No sticky / no scroll-driven height.
     ----------------------------------------- */

  body.v22-site.v17-home .v17-catalogue-sequence{
    height:auto !important;
    min-height:0 !important;
    position:relative !important;
    overflow:visible !important;
    background:#10221f !important;
  }

  body.v22-site.v17-home .v17-catalogue-sticky{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }

  body.v22-site.v17-home .v17-catalogue-inner{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;

    padding:42px 0 22px !important;
    box-sizing:border-box !important;
  }

  /* Keep the decorative frame but do not let it affect layout. */
  body.v22-site.v17-home .v17-catalogue-frame{
    inset:14px !important;
    pointer-events:none !important;
  }

  /* -----------------------------------------
     Copy
     ----------------------------------------- */

  body.v22-site.v17-home .v17-catalogue-copy{
    width:100% !important;
    max-width:none !important;

    padding:0 24px 28px !important;
    margin:0 !important;

    box-sizing:border-box !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy .eyebrow{
    color:#91aaa4 !important;
  }

  body.v22-site.v17-home .v17-catalogue-kicker{
    margin-top:22px !important;
    margin-bottom:14px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy h2{
    font-size:clamp(42px,11.8vw,62px) !important;
    line-height:.88 !important;
    letter-spacing:-.07em !important;

    margin:0 0 16px !important;
    max-width:8em !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy p{
    max-width:330px !important;

    font-size:11.5px !important;
    line-height:1.7 !important;

    margin:0 0 18px !important;
  }

  /* -----------------------------------------
     Catalogue cards
     ----------------------------------------- */

  body.v22-site.v17-home .v17-catalogue-visual{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;

    display:block !important;

    margin:0 !important;
    padding:0 24px !important;

    box-sizing:border-box !important;
  }

  body.v22-site.v17-home .v17-page-stack{
    width:100% !important;
    max-width:520px !important;

    height:auto !important;
    min-height:0 !important;

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

    gap:16px !important;

    margin:0 auto !important;

    position:relative !important;
    perspective:none !important;
  }

  body.v22-site.v17-home .v17-page{
    position:relative !important;
    inset:auto !important;

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

    flex:0 0 auto !important;

    margin:0 !important;

    overflow:hidden !important;

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

    transform:none !important;

    background:#f4f4ee !important;

    box-shadow:0 18px 38px rgba(0,0,0,.24) !important;
  }

  /*
   * Preserve the complete catalogue artwork.
   * The image itself determines the card height.
   */
  body.v22-site.v17-home .v17-page img{
    position:relative !important;
    inset:auto !important;

    display:block !important;

    width:100% !important;
    height:auto !important;

    max-width:100% !important;
    max-height:none !important;

    object-fit:contain !important;
    object-position:center !important;

    padding:0 !important;
  }

  /* -----------------------------------------
     Bottom gradient
     ----------------------------------------- */

  body.v22-site.v17-home .v17-page::before,
  body.v22-site.v17-home .v17-page::after{
    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-page::after{
    content:"" !important;
    position:absolute !important;

    left:0 !important;
    right:0 !important;
    bottom:0 !important;

    height:30% !important;

    background:linear-gradient(
      to bottom,
      rgba(7,20,18,0),
      rgba(7,20,18,.72)
    ) !important;

    z-index:2 !important;
  }

  /* -----------------------------------------
     Compact black information frame
     ----------------------------------------- */

  body.v22-site.v17-home .v17-page figcaption{
    position:absolute !important;

    left:7% !important;
    right:7% !important;
    bottom:7% !important;

    width:auto !important;
    min-height:48px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;

    box-sizing:border-box !important;

    padding:10px 13px !important;

    background:#071412 !important;
    background-image:none !important;

    color:#fff !important;

    z-index:5 !important;

    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-page figcaption span{
    flex:0 0 auto !important;

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

    color:#fff !important;
  }

  body.v22-site.v17-home .v17-page figcaption b{
    display:block !important;

    font-size:7px !important;
    line-height:1.2 !important;

    letter-spacing:.13em !important;
    font-weight:500 !important;

    color:#fff !important;

    text-align:right !important;
  }

  /* -----------------------------------------
     Progress
     ----------------------------------------- */

  body.v22-site.v17-home .v17-catalogue-progress{
    position:relative !important;

    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;

    width:100% !important;

    margin:18px 0 0 !important;
    padding:0 24px !important;

    box-sizing:border-box !important;

    justify-content:flex-end !important;
  }

  body.v22-site.v17-home .v17-catalogue-progress>i{
    width:70px !important;
  }

}


/* =========================================================
   SMALL PHONE
   ========================================================= */

@media (max-width:430px){

  body.v22-site.v17-home .v17-catalogue-inner{
    padding-top:32px !important;
    padding-bottom:16px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy{
    padding-left:20px !important;
    padding-right:20px !important;
    padding-bottom:22px !important;
  }

  body.v22-site.v17-home .v17-catalogue-visual{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  body.v22-site.v17-home .v17-page-stack{
    gap:13px !important;
  }

  body.v22-site.v17-home .v17-page figcaption{
    left:7% !important;
    right:7% !important;
    bottom:7% !important;

    min-height:44px !important;

    padding:9px 11px !important;
  }

  body.v22-site.v17-home .v17-page figcaption span{
    font-size:17px !important;
  }

  body.v22-site.v17-home .v17-page figcaption b{
    font-size:6.5px !important;
  }

  body.v22-site.v17-home .v17-catalogue-progress{
    margin-top:14px !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }

  body.v22-site.v17-home .v17-catalogue-progress>i{
    width:60px !important;
  }

}

/* =========================================================
   END MOBILE CATALOGUE — FINAL CLEAN FLOW
   ========================================================= */


/* =========================================================
   MOBILE CATALOGUE — VISUAL POLISH
   ========================================================= */

@media (max-width:800px){

  body.v22-site.v17-home .v17-catalogue-inner{
    padding-top:28px !important;
    padding-bottom:10px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy{
    padding-bottom:20px !important;
  }

  body.v22-site.v17-home .v17-page-stack{
    gap:11px !important;
  }

  /* Smaller, cleaner black information frame */
  body.v22-site.v17-home .v17-page figcaption{
    left:9% !important;
    right:9% !important;
    bottom:6.5% !important;
    min-height:42px !important;
    padding:8px 12px !important;
    gap:10px !important;
  }

  body.v22-site.v17-home .v17-page figcaption span{
    font-size:17px !important;
  }

  body.v22-site.v17-home .v17-page figcaption b{
    font-size:6.5px !important;
    letter-spacing:.12em !important;
  }

  body.v22-site.v17-home .v17-page::after{
    height:27% !important;
    background:linear-gradient(
      to bottom,
      rgba(7,20,18,0),
      rgba(7,20,18,.68)
    ) !important;
  }

  body.v22-site.v17-home .v17-catalogue-progress{
    margin-top:10px !important;
  }

}

@media (max-width:430px){

  body.v22-site.v17-home .v17-catalogue-inner{
    padding-top:24px !important;
    padding-bottom:8px !important;
  }

  body.v22-site.v17-home .v17-catalogue-copy{
    padding-bottom:18px !important;
  }

  body.v22-site.v17-home .v17-page-stack{
    gap:9px !important;
  }

  body.v22-site.v17-home .v17-page figcaption{
    left:9% !important;
    right:9% !important;
    bottom:6.5% !important;
    min-height:39px !important;
    padding:8px 10px !important;
  }

  body.v22-site.v17-home .v17-page figcaption span{
    font-size:16px !important;
  }

  body.v22-site.v17-home .v17-page figcaption b{
    font-size:6px !important;
  }

  body.v22-site.v17-home .v17-catalogue-progress{
    margin-top:8px !important;
  }

}

/* =========================================================
   END MOBILE CATALOGUE — VISUAL POLISH
   ========================================================= */



/* =========================================================
   MOBILE CATALOGUE — IMAGE CARD / LIGHTBOX
   ========================================================= */

@media (max-width:800px){

  /* Catalogue page behaves like a clickable image card */
  body.v22-site.v17-home .v17-page{
    cursor:zoom-in !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  /* Remove the black information frame completely */
  body.v22-site.v17-home .v17-page figcaption{
    display:none !important;
  }

  /* Keep a subtle image-bottom gradient only */
  body.v22-site.v17-home .v17-page::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    height:24% !important;
    background:linear-gradient(
      to bottom,
      rgba(7,20,18,0),
      rgba(7,20,18,.48)
    ) !important;
    z-index:2 !important;
    pointer-events:none !important;
  }

  body.v22-site.v17-home .v17-page img{
    cursor:zoom-in !important;
  }

}

/* =========================================================
   CATALOGUE LIGHTBOX
   ========================================================= */

.catalogue-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  box-sizing:border-box;
  background:rgba(4,12,11,.94);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:
    opacity .25s ease,
    visibility .25s ease;
}

.catalogue-lightbox.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.catalogue-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,12,11,.94);
}

.catalogue-lightbox-content{
  position:relative;
  z-index:2;
  width:min(94vw,1100px);
  height:min(92vh,900px);
  display:flex;
  align-items:center;
  justify-content:center;
  transform:scale(.96);
  transition:transform .35s cubic-bezier(.16,1,.3,1);
}

.catalogue-lightbox.is-open .catalogue-lightbox-content{
  transform:scale(1);
}

.catalogue-lightbox-image{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  user-select:none;
  -webkit-user-drag:none;
}

.catalogue-lightbox-close{
  position:absolute;
  top:-8px;
  right:-8px;
  z-index:5;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:rgba(5,18,16,.9);
  color:#fff;
  font-size:26px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:
    background .2s ease,
    transform .2s ease;
}

.catalogue-lightbox-close:hover{
  background:#18342f;
  transform:scale(1.06);
}

@media (max-width:600px){

  .catalogue-lightbox{
    padding:14px;
  }

  .catalogue-lightbox-content{
    width:100%;
    height:88vh;
  }

  .catalogue-lightbox-close{
    top:-2px;
    right:-2px;
    width:40px;
    height:40px;
    font-size:24px;
  }

}

/* =========================================================
   END CATALOGUE IMAGE CARD / LIGHTBOX
   ========================================================= */


/* Prevent background page scrolling while catalogue image is open */
html.catalogue-lightbox-open,
body.catalogue-lightbox-open{
  overflow:hidden !important;
}


/* ARABIC DESKTOP HERO — PRODUCT POSITION */
@media (min-width:801px){
  body.v22-site.v17-home.arabic-page .v17-hero-product{
    transform:translateX(-750px) !important;
  }
}
