/* Photographic campaign scenes: the product lives in the photograph. */
.home-slider--photographic { position:relative; background:#f2f8fb; overflow-anchor:none; }
.home-slider--photographic::after { content:none; }
.home-slider--photographic .home-slide { position:relative; isolation:isolate; height:clamp(560px,40vw,760px); }
.campaign-scene { position:absolute; inset:0; z-index:-2; overflow:hidden; background:#f2f8fb; }
.campaign-scene picture { display:block; width:100%; height:100%; }
.campaign-scene img { display:block; width:100%; max-width:2200px; height:100%; margin:auto; object-fit:cover; object-position:75% center; }
.campaign-scene-water img { object-position:center 65%; }
.campaign-scene-range,.campaign-scene-anticalc { bottom:68px; }
.home-slider--photographic .home-slide::after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#f5fafde6 0%,#f5fafd9c 34%,#f5fafd00 58%); }
.home-slider--photographic .campaign-grid { display:flex; align-items:center; height:100%; padding-block:32px 95px; }
.campaign-copy { width:47%; max-width:530px; min-width:0; }
.campaign-heading-line { display:block; }
.campaign-heading-space { display:none; }
.campaign-copy h1,.campaign-copy h2 { font-size:clamp(46px,4.35vw,64px); line-height:1.06; letter-spacing:-.05em; font-weight:700; color:var(--ink); margin:0 0 25px; }
.campaign-copy>p { max-width:43ch; font-size:15px; line-height:1.9; color:#435e6d; margin:0 0 29px; }
.campaign-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.campaign-actions .button { min-height:46px; padding:14px 22px; font-size:12px; white-space:nowrap; }
.campaign-actions .button-white { background:#ffffffe6; border:1px solid #d5e4ec; color:var(--navy); }
.campaign-actions .button-white:hover { background:white; border-color:var(--blue); }
.home-slider--photographic .slider-controls { position:absolute; bottom:0; left:50%; transform:translateX(-50%); padding-block:14px 22px; gap:25px; z-index:3; }
.home-slider--photographic .slider-topics { gap:29px; }
.home-slider--photographic .slider-topics button { font-size:12px; padding-block:12px; color:#526d7d; }
.home-slider--photographic .slider-topics button.active { color:var(--blue); }
.home-slider--photographic .slider-arrows { gap:8px; }
.home-slider--photographic .slider-arrows button { width:36px; height:36px; background:#fffffff2; border:1px solid #d5e6ef; }
.home-slider--photographic .slider-arrows [data-slide-pause] { margin-left:3px; width:32px; background:#ffffffc9; border-color:transparent; }
@media(min-width:601px) and (max-width:1100px) {
  .home-slider--photographic .home-slide::after { background:linear-gradient(90deg,#f5fafdf5 0%,#f5fafdd9 37%,#f5fafd00 60%); }
  .campaign-copy { width:46%; }
  .campaign-copy h1,.campaign-copy h2 { font-size:48px; }
  .campaign-copy>p { font-size:14px; }
  .campaign-actions { gap:9px; }
  .campaign-actions .button { padding-inline:17px; font-size:11px; }
  .campaign-scene-dezanol img { object-position:70% center; }
  .campaign-scene-range img,.campaign-scene-anticalc img { position:absolute; right:0; bottom:0; width:100%; height:auto; max-width:none; mask-image:linear-gradient(180deg,transparent,black 12%); }
}
@media(min-width:601px) and (max-width:900px) {
  .home-slider--photographic .home-slide { height:500px; }
  .campaign-copy { width:45%; }
  .campaign-copy h1,.campaign-copy h2 { font-size:40px; line-height:1.16; }
  .campaign-copy>p { font-size:13px; }
  .campaign-actions .button { font-size:10px; padding-inline:14px; }
}
@media(min-width:601px) and (max-width:700px) {
  .campaign-copy h1,.campaign-copy h2 { font-size:32px; }
  .campaign-actions { gap:7px; }
  .campaign-actions .button { padding-inline:12px; }
}
/* Category imagery follows the rounded-square product language. */
.category-tile .category-tile-image { border-radius:20px; }
.category-tile .tile-arrow { width:38px; height:38px; right:16px; bottom:16px; border-radius:12px; outline:none; background:var(--fog); }
.category-tile:hover .tile-arrow { background:var(--blue); color:white; }
/* A portrait photograph is art-directed for the mobile composition. */
@media(max-width:600px) {
  .home-slider--photographic { background:#f5fafd; }
  .home-slider--photographic .home-slide { display:block; height:clamp(600px,calc(150vw + 10px),760px); }
  .home-slider--photographic .home-slide[hidden] { display:none; }
  .home-slider--photographic .home-slide::after { background:linear-gradient(180deg,#f5fafd00 84%,#f5fafd 92%); }
  .home-slider--photographic .campaign-grid { align-items:flex-start; height:100%; padding-block:28px 80px; }
  .campaign-copy { position:static; width:100%; max-width:410px; min-height:0; padding:0; }
  .campaign-copy h1,.campaign-copy h2 { font-size:clamp(28px,7.7vw,34px); line-height:1.14; letter-spacing:-.035em; margin:0 0 14px; padding-top:2px; max-width:100%; overflow:visible; }
  .campaign-heading-line { display:block; }
  .campaign-heading-space { display:none; }
  .campaign-copy h2 .campaign-heading-line,.campaign-copy h2 .campaign-heading-space { display:inline; }
  .slide-anticalc .campaign-copy h2 .campaign-heading-line { display:block; }
  .slide-anticalc .campaign-copy h2 .campaign-heading-space { display:none; }
  .campaign-copy>p { font-size:14px; line-height:1.65; max-width:43ch; margin:0 0 18px; color:#365361; }
  .campaign-actions { flex-direction:column; align-items:flex-start; gap:2px; width:auto; margin:0; }
  .campaign-actions .button { font-size:12px; line-height:1.4; min-height:44px; padding:13px 22px; white-space:normal; text-align:left; }
  .campaign-actions .button-white { display:none; }
  .campaign-scene { inset:0 0 60px; }
  .campaign-scene img { max-width:none; object-position:center bottom; }
  .campaign-scene-range img { object-position:right bottom; }
  .home-slider--photographic .slider-controls { gap:12px; flex-wrap:nowrap; padding-block:8px 14px; }
  .home-slider--photographic .slider-topics { justify-content:space-between; flex:1 1 auto; gap:12px; }
  .home-slider--photographic .slider-topics button { font-size:11px; padding-block:12px; min-height:44px; white-space:nowrap; }
  .home-slider--photographic .slider-arrows { gap:4px; flex:none; }
  .home-slider--photographic .slider-arrows button { width:36px; height:36px; }
  .home-slider--photographic .slider-arrows [data-slide-pause] { width:32px; height:36px; margin:0; }
  .category-tile .category-tile-image { border-radius:16px; }
  .category-tile p { font-size:11px; line-height:1.6; }
  .category-tile .tile-arrow { width:30px; height:30px; right:11px; bottom:11px; border-radius:9px; }
}
@media(max-width:370px) {
  .home-slider--photographic .home-slide { height:560px; }
  .home-slider--photographic .campaign-grid { padding-top:24px; }
  .campaign-copy>p { font-size:13px; }
  .home-slider--photographic .slider-controls { gap:12px; }
  .home-slider--photographic .slider-topics { gap:12px; }
  .home-slider--photographic .slider-topics button { font-size:10px; }
  .home-slider--photographic .slider-arrows [data-slide-prev] { display:none; }
}
