.carousel{display:block;touch-action:pan-y}.hero-slide{position:absolute;inset:0;isolation:isolate;display:flex;align-items:center;justify-content:center;padding:60px 12% 100px;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s;pointer-events:none}.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.hero-slide .hero-copy{max-width:1000px}.hero-copy .slide-title{font-size:clamp(44px,5.8vw,92px);font-weight:600;line-height:1.08;letter-spacing:-3px;margin:22px 0;text-wrap:balance}.hero-slide .hero-media{z-index:-3}.hero-slide .hero-shade{z-index:-2}.hero-next{position:absolute;right:9%;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:white;color:#23372b;z-index:3;display:grid;place-items:center;transition:scale .25s}.hero-next:hover{scale:1.12}.hero-next svg{width:22px;height:22px;transition:transform .25s}.hero-next:hover svg{transform:translateX(3px)}.carousel-controls{display:flex;align-items:center;gap:26px}.collection-selector{height:36px;border:2px solid #fff;border-radius:30px;display:flex;align-items:center;gap:3px;padding:0 3px;font-size:12px;font-weight:600}.collection-selector button{background:none;color:#fff;width:24px;height:30px;font-size:22px;line-height:1;border-radius:50%}.collection-selector button:hover{background:#ffffff30}.collection-label{min-width:112px;text-align:center}.slide-indicators{display:flex;gap:20px;align-items:center}.slide-dot{position:relative;display:grid;place-items:center;width:44px;height:44px;background:transparent;color:#fff8;font-size:15px;font-weight:600;padding:0;transition:color .2s}.slide-dot.is-active,.slide-dot:hover{color:#fff}.slide-dot svg{position:absolute;inset:0;width:44px;height:44px;fill:none;transform:rotate(-90deg);opacity:0}.slide-dot.is-active svg{opacity:1}.ring-track{stroke:#ffffff80;stroke-width:1.8;stroke-dasharray:1.6 3}.ring-progress{stroke:#fff;stroke-width:2;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--progress,0));stroke-linecap:round}.carousel-play{width:34px;height:34px;display:grid;place-items:center;background:none;border:2px solid #fff;color:#fff;border-radius:50%;padding:6px}.carousel-play svg{width:19px;height:19px;stroke:currentColor;stroke-width:2;fill:none}.carousel-play .play-symbol{display:none}.carousel-play.is-paused .pause-symbol{display:none}.carousel-play.is-paused .play-symbol{display:block;fill:currentColor;stroke:none}.hero-bottom{z-index:4;bottom:32px;left:35px;right:35px}.hero-explore{font-size:12px;display:flex;gap:12px;align-items:center}.hero-explore span{display:grid;place-items:center;border:1px solid white;width:26px;height:26px;border-radius:50%}.carousel .hero-cursor{width:52px;height:52px;background:#fff;box-shadow:0 3px 12px #0001}.hero-cursor svg{width:23px;height:23px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.carousel:focus-visible{outline:2px solid #9caa86;outline-offset:5px}@media(max-width:1000px){.carousel-controls{gap:15px}.slide-indicators{gap:10px}.hero-explore{display:none}.hero-next{right:5%}.hero-slide{padding-left:10%;padding-right:15%}}@media(max-width:700px){.hero-slide{padding:65px 22px 135px}.hero-copy .slide-title{font-size:43px;letter-spacing:-1.6px}.hero-next{top:auto;bottom:98px;right:22px;transform:none;width:44px;height:44px}.hero-bottom{left:16px;right:16px;bottom:23px}.carousel-controls{width:100%;justify-content:space-between;gap:5px;flex-wrap:wrap}.collection-selector{font-size:10px;height:32px;border-width:1px}.collection-label{min-width:94px}.collection-selector button{width:18px}.slide-indicators{gap:3px}.slide-dot,.slide-dot svg{width:37px;height:37px}.carousel-play{width:30px;height:30px;border-width:1px}.hero-cursor{display:none!important}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-next,.hero-next svg{transition:none}}


/* Position belongs to the wrapper; only its child scales, around its center. */
.carousel .hero-cursor{display:none;position:absolute;left:0;top:0;width:0;height:0;background:none;box-shadow:none;opacity:1;scale:1;transition:none;pointer-events:none;z-index:6}
.cursor-disc{position:absolute;left:-26px;top:-26px;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#23372b;transform:scale(0);transform-origin:50% 50%;opacity:0;transition:transform .18s ease-out,opacity .14s ease-out;will-change:transform}
.cursor-disc svg{width:23px;height:23px}
@media(hover:hover) and (pointer:fine){.floral-hero.carousel.cursor-enabled{cursor:none}.carousel.cursor-enabled .hero-cursor{display:block;opacity:1;scale:1}.carousel.cursor-enabled.pointer-inside:not(.over-control) .cursor-disc{transform:scale(1);opacity:1}.carousel.cursor-enabled a,.carousel.cursor-enabled button{cursor:pointer}.carousel.cursor-enabled.over-control .hero-cursor{opacity:1}}
@media(prefers-reduced-motion:reduce){.carousel .hero-cursor{display:none!important}.floral-hero.carousel{cursor:auto!important}}
@media(max-width:700px){.floral-hero.carousel.cursor-enabled{cursor:auto}}

/* Photo credit expands from the camera; credit hover uses a native black dot. */
.photo-credit{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:0;flex-shrink:0;min-height:36px;padding:8px;color:#fff;background:transparent;border-radius:30px;transition:background .2s,color .2s,padding .2s}
.photo-credit svg{width:20px;height:20px;flex-shrink:0}
.photo-credit-name{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;font-size:12px;line-height:20px;transition:max-width .25s ease,opacity .15s,margin .25s;margin-right:0}
.photo-credit.is-open{color:#1b241e;background:#fff;padding:8px 12px}
.photo-credit.is-open .photo-credit-name{max-width:300px;opacity:1;margin-right:10px}
@media(hover:hover) and (pointer:fine){.carousel.cursor-enabled .photo-credit,.carousel.cursor-enabled .photo-credit *{cursor:url("dot-cursor.svg") 8 8,pointer}}
@media(max-width:700px){.carousel .hero-bottom{flex-wrap:wrap;row-gap:12px}.photo-credit{position:absolute;right:0;bottom:59px}.photo-credit-name{font-size:10px}.photo-credit.is-open .photo-credit-name{max-width:225px}}

/* The countdown is an actual SVG stroke, independent of CSS variable calculation. */
.ring-progress{stroke-dasharray:100 100;stroke-dashoffset:100;transform:none}
.hero-copy>.eyebrow,.hero-copy>.slide-title,.hero-copy>p{opacity:0;transform:translateY(28px);transition:opacity 550ms ease,transform 550ms cubic-bezier(.2,.7,.2,1)}
.hero-slide.is-active .hero-copy>.eyebrow{opacity:1;transform:translateY(0);transition-delay:100ms}
.hero-slide.is-active .hero-copy>.slide-title{opacity:1;transform:translateY(0);transition-delay:220ms}
.hero-slide.is-active .hero-copy>p{opacity:1;transform:translateY(0);transition-delay:340ms}
@media(prefers-reduced-motion:reduce){.hero-copy>*{transition:none!important;transform:none!important}}

@keyframes petaluno-copy-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-slide.is-active .hero-copy>.eyebrow{animation:petaluno-copy-in 550ms 100ms both}
.hero-slide.is-active .hero-copy>.slide-title{animation:petaluno-copy-in 550ms 220ms both}
.hero-slide.is-active .hero-copy>p{animation:petaluno-copy-in 550ms 340ms both}
@media(prefers-reduced-motion:reduce){.hero-copy>*{animation:none!important}}
