/* Centred campaign carousel. These rules deliberately do not style product rails. */
.et-hero-carousel{--promo-width:min(1240px,84vw);--promo-gap:20px;position:relative;margin:24px 0 0;overflow:hidden}
.et-hero-carousel [hidden]{display:none!important}
.et-promo-viewport{position:relative;display:flex;gap:var(--promo-gap);width:100%;padding-inline:calc((100% - var(--promo-width))/2);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--promo-width))/2);scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:auto;-webkit-overflow-scrolling:touch}
.et-promo-viewport::-webkit-scrollbar{display:none}
.et-promo-viewport:focus-visible{outline:0}
.et-promo-viewport:focus-visible .et-promo-slide.is-active{box-shadow:inset 0 0 0 3px #11131880}
.et-hero-carousel .et-promo-slide{position:relative;isolation:isolate;flex:0 0 var(--promo-width);width:var(--promo-width);height:510px;min-height:0;margin:0;padding:0;border:0;border-radius:22px;display:flex;align-items:center;overflow:hidden;scroll-snap-align:center;scroll-snap-stop:always}
.et-hero-carousel.is-ready .et-promo-slide{opacity:.62;transition:opacity .25s ease}
.et-hero-carousel.is-ready .et-promo-slide.is-active{opacity:1}
.et-hero-carousel .et-promo-slide--iphone{background:linear-gradient(90deg,#fe7d12,#fd8714 50%,#fe7910);color:#111318}
.et-hero-carousel .et-promo-slide--watch{background:radial-gradient(ellipse at 95% 110%,#a77bff,#6d42f2 75%);color:#fff}
.et-hero-carousel .et-promo-slide--ecosystem{background:linear-gradient(90deg,#2661fc,#2b61fe 50%,#2861fd);color:#fff}
.et-hero-carousel .et-banner-art{inset:0;display:flex;align-items:flex-end;justify-content:flex-end;z-index:-2}
.et-hero-carousel .et-banner-art img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:right bottom;mask-image:linear-gradient(180deg,transparent,#000 5%),linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}
.et-hero-carousel .et-promo-slide--watch .et-banner-art{left:46%}
.et-hero-carousel .et-promo-slide--watch .et-banner-art img{height:100%;width:auto;max-width:100%;object-fit:contain;mask-image:linear-gradient(180deg,transparent,#000 30%),linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.et-hero-carousel .et-promo-copy{position:relative;z-index:1;width:49%;padding:42px 0 42px 42px}
.et-hero-carousel .et-promo-copy .et-eyebrow{color:inherit;font-size:10px;letter-spacing:.11em;margin-bottom:16px}
.et-hero-carousel .et-stock-dot{background:currentColor}
.et-hero-carousel .et-promo-title{margin:0 0 20px;max-width:540px;color:inherit;font-size:clamp(36px,3.8vw,52px);font-weight:800;line-height:1.06;letter-spacing:-.045em;text-wrap:balance}
.et-hero-carousel .et-promo-title>span{color:inherit}
.et-hero-carousel .et-promo-copy p{max-width:405px;margin:0 0 25px;color:inherit;font-size:14px;line-height:1.7;opacity:1}
.et-hero-carousel .et-promo-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.et-hero-carousel .et-promo-primary{min-height:48px;padding:13px 20px;gap:18px;border-color:#fff;border-radius:12px;background:#fff;color:#111318;font-weight:650;font-size:13px}
.et-hero-carousel .et-promo-primary:hover{background:#edf0f7;border-color:#edf0f7;color:#111318}
.et-hero-carousel .et-promo-slide--iphone .et-promo-primary{background:#111318;border-color:#111318;color:#fff}
.et-hero-carousel .et-promo-slide--iphone .et-promo-primary:hover{background:#292d35;border-color:#292d35;color:#fff}
.et-hero-carousel .et-promo-secondary,.et-hero-carousel .et-promo-secondary:hover{color:inherit;font-size:12px}
.et-hero-carousel .et-promo-secondary:hover{text-decoration:underline;text-underline-offset:4px}
.et-hero-carousel .et-promo-primary .et-icon{color:currentColor;width:18px;height:18px}
.et-hero-carousel .et-promo-slide:before{background:none}
.et-hero-carousel .et-promo-slide :focus-visible{outline-color:currentColor}
.et-carousel-control{position:absolute;z-index:5;top:234px;display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid #ffffff8c;border-radius:50%;background:#ffffffe6;backdrop-filter:blur(10px);color:#111318;opacity:.65;transition:opacity .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.et-carousel-prev{left:max(14px,calc((100% - var(--promo-width))/2 - 24px))}
.et-carousel-next{right:max(14px,calc((100% - var(--promo-width))/2 - 24px))}
.et-carousel-control:hover,.et-carousel-control:focus-visible{opacity:1;background:#fff;color:var(--accent-text);transform:scale(1.04)}
.et-carousel-control .et-icon{width:21px;height:21px}
.et-promo-dots{display:flex;align-items:center;justify-content:center;gap:3px;padding:12px 0 0}
.et-promo-dot{position:relative;display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent}
.et-promo-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#11131838;transition:background .18s ease,transform .18s ease}
.et-promo-dot[aria-pressed="true"]:before{background:#111318;transform:scale(1.2)}
.et-promo-dot:hover:before{background:var(--accent-text)}
@media(min-width:721px) and (max-width:1100px){
  .et-hero-carousel{--promo-gap:16px;margin-top:20px}
  .et-hero-carousel .et-promo-slide{height:440px}
  .et-hero-carousel .et-promo-copy{width:50%;padding:30px 0 30px 28px}
  .et-hero-carousel .et-promo-title{font-size:clamp(31px,3.8vw,40px)}
  .et-hero-carousel .et-promo-copy p{font-size:12px;line-height:1.65;max-width:310px}
  .et-hero-carousel .et-promo-primary{font-size:12px;padding:12px 16px;gap:12px;min-height:44px}
  .et-hero-carousel .et-promo-secondary{font-size:11px}
  .et-hero-carousel .et-promo-actions{gap:15px}
  .et-carousel-control{top:197px;width:44px;height:44px}
}
@media(max-width:720px){
  .et-hero-carousel{--promo-width:84vw;--promo-gap:12px;margin-top:16px}
  .et-hero-carousel .et-promo-slide{height:580px;align-items:flex-start;border-radius:19px}
  .et-hero-carousel .et-promo-copy{width:100%;padding:27px 24px 0}
  .et-hero-carousel .et-promo-copy .et-eyebrow{font-size:8px;line-height:1.5;margin-bottom:13px}
  .et-hero-carousel .et-promo-title{max-width:100%;margin-bottom:14px;font-size:31px;line-height:1.06;letter-spacing:-.04em}
  .et-hero-carousel .et-promo-title br{display:none}
  .et-hero-carousel .et-promo-copy p{max-width:100%;font-size:12px;line-height:1.6;margin-bottom:18px}
  .et-hero-carousel .et-promo-actions{gap:12px;flex-wrap:wrap}
  .et-hero-carousel .et-promo-primary{font-size:12px;min-height:44px;padding:12px 15px;gap:12px}
  .et-hero-carousel .et-promo-secondary{font-size:11px}
  .et-hero-carousel .et-promo-slide--iphone{background:#fd8419}
  .et-hero-carousel .et-promo-slide--iphone .et-banner-art img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center bottom;mask:none}
  .et-hero-carousel .et-promo-slide--watch{background:#6d46f3}
  .et-hero-carousel .et-promo-slide--watch .et-banner-art{left:0;justify-content:flex-end}
  .et-hero-carousel .et-promo-slide--watch .et-banner-art img{width:130%;height:auto;max-width:none;max-height:100%;object-fit:contain;mask-image:linear-gradient(180deg,transparent,#000 5%)}
  .et-hero-carousel .et-promo-slide--ecosystem{background:linear-gradient(90deg,#2155fc,#255dfc 50%,#1e55fb)}
  .et-hero-carousel .et-promo-slide--ecosystem .et-banner-art{justify-content:center}
  .et-hero-carousel .et-promo-slide--ecosystem .et-banner-art img{width:130%;height:auto;max-width:none;max-height:100%;object-fit:contain;mask-image:linear-gradient(180deg,transparent,#000 5%)}
  .et-carousel-control{display:none}
  .et-promo-dots{padding-top:8px}
}
@media(max-width:360px){
  .et-hero-carousel .et-promo-slide{height:600px}
  .et-hero-carousel .et-promo-copy{padding:25px 21px 0}
  .et-hero-carousel .et-promo-title{font-size:28px}
  .et-hero-carousel .et-promo-primary{font-size:11px;padding-inline:14px;gap:10px}
  .et-hero-carousel .et-promo-secondary{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .et-promo-viewport{scroll-behavior:auto}
  .et-hero-carousel.is-ready .et-promo-slide,.et-carousel-control,.et-promo-dot:before{transition:none}
}

/* Additional sunset campaign: preserve the three existing slide compositions. */
.et-hero-carousel .et-promo-slide--iphone18{background:#0b192d;color:#fff}
.et-hero-carousel .et-promo-slide--iphone18 .et-banner-art img{width:min(100%,1020px);height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:right bottom;mask-image:linear-gradient(90deg,transparent,#000 16%),linear-gradient(180deg,transparent,#000 12%);mask-composite:intersect}
.et-hero-carousel .et-promo-slide--iphone18:before{background:linear-gradient(90deg,#071220b3, #07122038 44%,transparent 62%)}
.et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy{position:absolute;z-index:3;left:5%;top:12%;width:40%;padding:0;pointer-events:none}
.et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy .et-eyebrow{font-size:10px;line-height:1.5;margin-bottom:12px}
.et-hero-carousel .et-promo-slide--iphone18 .et-promo-title{max-width:none;font-size:clamp(30px,3vw,44px);line-height:1.1;margin-bottom:14px}
.et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy p{max-width:none;font-size:13px;line-height:1.5;margin-bottom:18px}
.et-hero-carousel .et-promo-slide--iphone18 .et-promo-primary{min-height:44px;pointer-events:auto}
.et-hero-carousel .et-promo-copy-mobile{display:none}
.et-promo-cover-link{position:absolute;inset:0;z-index:2;display:block;border-radius:inherit}
.et-promo-cover-link:focus-visible{outline:3px solid #fff;outline-offset:-6px}
@media(min-width:721px) and (max-width:1100px){
  .et-hero-carousel .et-promo-slide--iphone18 .et-banner-art img{width:min(100%,880px)}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy{top:9%;width:42%}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-title{font-size:clamp(26px,3.4vw,34px)}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy p{font-size:12px}
}
@media(max-width:720px){
  .et-hero-carousel--sunset{--iphone18-height:max(620px,calc(134.4vw + 65px));--promo-visible-height:580px}
  .et-hero-carousel--sunset.is-ready{height:calc(var(--promo-visible-height) + 36px);transition:height .24s ease}
  .et-hero-carousel--sunset.is-ready[data-active-promo="3"]{--promo-visible-height:var(--iphone18-height)}
  /* A stable rail height prevents ResizeObserver from interrupting the swipe.
     Only the outer frame grows for the portrait campaign and its extra sky. */
  .et-hero-carousel--sunset.is-ready .et-promo-viewport{height:var(--iphone18-height)}
  .et-hero-carousel--sunset.is-ready .et-promo-dots{position:absolute;z-index:4;bottom:0;left:0;right:0;height:36px;padding:8px 0 0;background:#fff}
  .et-hero-carousel .et-promo-slide--iphone18{height:var(--iphone18-height)}
  .et-hero-carousel .et-promo-slide--iphone18 .et-banner-art{justify-content:center}
  .et-hero-carousel .et-promo-slide--iphone18 .et-banner-art img{width:100%;height:auto;max-height:100%;object-position:center bottom;mask-image:linear-gradient(180deg,transparent,#000 12%)}
  .et-hero-carousel .et-promo-slide--iphone18:before{background:linear-gradient(180deg,#0b192d80,transparent 32%)}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy{top:24px;left:0;width:100%;padding:0 22px}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy .et-eyebrow{font-size:8px;line-height:1.5;margin-bottom:10px}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-title{font-size:28px;line-height:1.08;margin-bottom:10px}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-copy p{font-size:12px;line-height:1.5;margin-bottom:14px}
  .et-hero-carousel .et-promo-slide--iphone18 .et-promo-primary{font-size:12px;min-height:44px;padding:12px 15px;gap:12px}
  .et-hero-carousel .et-promo-copy-desktop{display:none}
  .et-hero-carousel .et-promo-copy-mobile{display:inline}
}
@media(max-width:360px){
  .et-hero-carousel--sunset{--promo-visible-height:600px}
}
@media(prefers-reduced-motion:reduce){
  .et-hero-carousel--sunset.is-ready{transition:none}
}
