/* Integrated Aura campaign. Shared stage, independent type and product layers. */
:root{--a-stage:#eee6eb;--a-orbit:#dfc1ce;--a-hero-ink:#4c253c;--a-hero-muted:#654e5d}
html[data-mode=dark]{--a-stage:#2b202a;--a-orbit:#513444;--a-hero-ink:#f7e8f0;--a-hero-muted:#d6becd}
.a-campaign-header{position:relative;z-index:10;background:var(--a-stage);color:var(--a-hero-ink)}
.a-campaign-nav{min-height:88px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:32px}
.a-campaign-nav>.a-logo{grid-column:2;grid-row:1;text-align:center;padding:10px 7px;min-width:104px}
.a-nav-left,.a-nav-right,.a-nav-right nav{display:flex;align-items:center;gap:28px;min-width:0}
.a-nav-left{grid-column:1;grid-row:1}.a-nav-right{grid-column:3;grid-row:1;justify-content:flex-end;gap:10px}
.a-nav-right nav{gap:28px;margin-right:12px}
.a-nav-left a,.a-nav-right nav a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;white-space:nowrap}
.a-nav-left a:hover,.a-nav-right nav a:hover{text-decoration:underline;text-underline-offset:5px}
.a-campaign-header .a-icon-button{width:44px;min-width:44px;height:44px;color:inherit}
.a-menu{display:none}
.a-integrated-hero{background:var(--a-stage);color:var(--a-hero-ink);position:relative;isolation:isolate}
.a-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr) minmax(0,1fr);column-gap:24px;align-items:center;min-height:650px;padding-block:30px 66px}
.a-hero-heading{min-width:0;position:relative;z-index:1;align-self:start;padding-top:65px}
.a-hero-heading .a-kicker{color:var(--a-hero-muted);font-size:10px;letter-spacing:1.6px}
.a-hero-heading .a-hero-title{font-size:clamp(76px,8.3vw,126px);line-height:.94;font-weight:350;letter-spacing:-.065em;margin-top:30px}
.a-hero-heading .a-hero-title span{font-weight:300;color:var(--accent)}
.a-hero-stage{position:relative;isolation:isolate;min-width:0;display:grid;place-items:center;align-self:center}
.a-hero-stage:before{content:'';position:absolute;z-index:-1;width:118%;aspect-ratio:1;border-radius:50%;background:var(--a-orbit);top:50%;left:50%;transform:translate(-50%,-50%)}
.a-hero-object{display:block;width:min(100%,440px);aspect-ratio:3/4;position:relative}
.a-hero-object img{width:100%;height:100%;object-fit:contain}
.a-hero-object-photo{width:100%;aspect-ratio:1}
.a-hero-details{position:relative;z-index:1;min-width:0;align-self:end;padding:0 0 36px 16px}
.a-hero-tagline{font-size:clamp(25px,2.1vw,34px);line-height:1.2;letter-spacing:-.035em;margin-bottom:22px}
.a-hero-description{font-size:14px;color:var(--a-hero-muted);line-height:1.75;max-width:28ch}
.a-integrated-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:28px}
.a-integrated-actions .a-buy{min-height:48px;white-space:normal;text-align:center;font-size:12px;max-width:100%}
.a-integrated-actions .a-buy:disabled{background:transparent;border-color:var(--a-hero-muted);color:var(--a-hero-muted)}
.a-integrated-actions .a-more{min-height:44px;font-size:13px;gap:35px}
.a-integrated-actions>div{max-width:100%}.a-integrated-actions small{display:block;font-size:11px;line-height:1.6;margin-top:10px;max-width:28ch;color:var(--a-hero-muted)}
.a-hero-standard .a-hero-title{font-size:clamp(48px,5.4vw,84px);overflow-wrap:anywhere;letter-spacing:-.045em}
@media(min-width:1800px){.a-hero-grid{min-height:740px}.a-hero-object{width:480px}}
@media(max-width:1199px){
  .a-campaign-nav{column-gap:24px}.a-nav-left,.a-nav-right nav{gap:20px}.a-nav-right{gap:0}.a-nav-right nav{margin-right:8px}
  .a-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr) minmax(0,1fr);gap:20px;min-height:580px;padding-block:28px 50px}
  .a-hero-heading{padding-top:44px}.a-hero-heading .a-hero-title{font-size:clamp(68px,7.8vw,94px)}.a-hero-details{padding:0 0 22px 6px}.a-hero-tagline{font-size:25px}.a-hero-description{font-size:13px}.a-integrated-actions .a-buy{padding-inline:12px}
}
@media(max-width:999px){
  .a-campaign-nav{min-height:76px;column-gap:16px}.a-nav-left,.a-nav-right nav,.a-header-search{display:none}
  .a-menu{display:block;grid-column:1;grid-row:1;justify-self:start}
  .a-menu summary{display:flex;align-items:center;gap:10px;list-style:none;min-width:60px;min-height:44px;cursor:pointer;font-size:12px}
  .a-menu summary::-webkit-details-marker{display:none}.a-menu summary span{width:14px;height:8px;border-block:1px solid currentColor}
  .a-menu nav{position:absolute;z-index:20;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);padding:18px 32px 25px;border-block:1px solid var(--line);box-shadow:0 15px 25px #20152018;max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column}
  .a-menu nav a{display:flex;align-items:center;min-height:48px;font-size:15px;border-bottom:1px solid var(--line)}
  .a-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:40px;row-gap:25px;min-height:570px;padding-block:35px 55px}
  .a-hero-heading{grid-column:1;grid-row:1;padding-top:16px;align-self:end}.a-hero-heading .a-hero-title{font-size:90px;margin-top:22px}
  .a-hero-stage{grid-column:2;grid-row:1/3}.a-hero-stage:before{width:106%}.a-hero-object{width:100%}
  .a-hero-details{grid-column:1;grid-row:2;align-self:start;padding:0}.a-hero-tagline{display:none}.a-hero-description{max-width:29ch}
  .a-integrated-actions{margin-top:20px;gap:5px}.a-hero-standard .a-hero-title{font-size:56px}
}
@media(max-width:767px){
  .a-campaign-nav{min-height:72px;column-gap:12px}.a-campaign-nav>.a-logo{min-width:96px}.a-menu nav{padding-inline:22px;max-height:calc(100dvh - 72px)}
  .a-hero-grid{grid-template-columns:minmax(0,1fr);row-gap:20px;min-height:0;padding-block:20px 32px}
  .a-hero-heading{grid-column:1;grid-row:1;padding:0;text-align:center;justify-self:center;width:100%}
  .a-hero-heading .a-hero-title{font-size:clamp(60px,15vw,90px);letter-spacing:-.06em;line-height:1.05;margin-top:10px}.a-hero-heading .a-hero-title br{display:none}.a-hero-heading .a-hero-title span:before{content:' '}
  .a-hero-heading .a-kicker{font-size:9px;letter-spacing:1.5px}
  .a-hero-stage{grid-column:1;grid-row:2;width:min(100%,310px);justify-self:center;padding-block:4px}
  .a-hero-stage:before{width:104%}.a-hero-object{width:min(73%,220px)}
  .a-hero-details{grid-column:1;grid-row:3;width:100%;text-align:center;justify-self:center}
  .a-hero-description{font-size:13px;max-width:34ch;margin-inline:auto;line-height:1.65}
  .a-integrated-actions{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 24px;margin-top:18px}
  .a-integrated-actions .a-buy{font-size:11px;padding-inline:14px}.a-integrated-actions .a-more{font-size:12px;gap:12px}.a-integrated-actions small{max-width:34ch}
  .a-hero-standard .a-hero-title{font-size:clamp(38px,10vw,60px)}.a-hero-object-photo{width:min(100%,300px)}
}
@media(prefers-reduced-motion:no-preference){.a-hero-object{animation:aura-object-in .65s ease-out both}@keyframes aura-object-in{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}}
@media(prefers-reduced-motion:reduce){.a-hero-object{animation:none}}

/* Navigation belongs to the campaign canvas. Its transparent layer cannot crop the orbit. */
body.a-home-campaign{--a-nav-height:88px;position:relative}
.a-home-campaign>.a-campaign-header{position:absolute;inset:0 0 auto;background:transparent}
.a-home-campaign .a-integrated-hero{padding-top:var(--a-nav-height)}
.a-hero-stage:before{width:min(112%,600px)}
.a-hero-carousel .a-hero-grid{padding-bottom:32px;min-height:650px}
.a-hero-slides{display:grid}
.a-hero-slide{grid-area:1/1;min-width:0}
.a-hero-heading .a-hero-title{min-height:1.88em}
.a-hero-serum .a-hero-title{font-size:clamp(54px,5.4vw,80px);letter-spacing:-.055em}
.a-hero-serum .a-hero-heading{padding-top:65px}
.a-hero-description{min-height:5.25em}
.a-hero-carousel .a-hero-object{animation:none}
.a-hero-carousel.is-enhanced .a-hero-slide{visibility:hidden;pointer-events:none}
.a-hero-carousel.is-enhanced .a-hero-slide.is-active{visibility:visible;pointer-events:auto}
.a-hero-carousel.is-enhanced .a-hero-slide.is-leaving{visibility:visible;pointer-events:none}
.a-hero-carousel{--a-enter-x:24px;--a-leave-x:-18px;touch-action:pan-y pinch-zoom}
.a-hero-carousel[data-direction=prev]{--a-enter-x:-24px;--a-leave-x:18px}
.a-hero-carousel.is-enhanced .a-hero-object,
.a-hero-carousel.is-enhanced .a-hero-heading,
.a-hero-carousel.is-enhanced .a-hero-details{opacity:0;transform:translateX(var(--a-enter-x));transition:opacity 550ms ease,transform 650ms cubic-bezier(.22,.68,.18,1)}
.a-hero-carousel.is-enhanced .a-hero-stage:before{opacity:0;transition:opacity 650ms ease}
.a-hero-carousel.is-enhanced .is-active .a-hero-object,
.a-hero-carousel.is-enhanced .is-active .a-hero-heading,
.a-hero-carousel.is-enhanced .is-active .a-hero-details{opacity:1;transform:translateX(0)}
.a-hero-carousel.is-enhanced .is-active .a-hero-heading,
.a-hero-carousel.is-enhanced .is-active .a-hero-details{transition-delay:70ms}
.a-hero-carousel.is-enhanced .is-active .a-hero-stage:before{opacity:1}
.a-hero-carousel.is-enhanced .is-leaving .a-hero-object,
.a-hero-carousel.is-enhanced .is-leaving .a-hero-heading,
.a-hero-carousel.is-enhanced .is-leaving .a-hero-details{opacity:0;transform:translateX(var(--a-leave-x));transition-delay:0ms}
.a-carousel-controls{position:relative;z-index:2;display:grid;grid-template-columns:44px 1fr 44px auto;align-items:center;gap:18px;padding-block:12px 24px}
.a-carousel-controls button{background:transparent;color:var(--a-hero-ink);min-height:44px;min-width:44px}
.a-carousel-arrow{border:1px solid var(--a-hero-muted);border-radius:50%;font-size:22px;line-height:1}
.a-carousel-arrow:hover{background:var(--a-hero-ink);color:var(--a-stage)}
.a-carousel-dots{display:flex;justify-content:center;align-items:center;gap:4px}
.a-carousel-dots button{display:grid;place-items:center;padding:0 5px}
.a-carousel-dots span{width:7px;height:7px;border:1px solid currentColor;border-radius:100px;transition:width .25s,background .25s}
.a-carousel-dots [aria-current=true] span{width:30px;background:currentColor}
.a-carousel-pause{font-size:12px;min-width:90px!important;text-decoration:underline;text-underline-offset:5px;padding-inline:14px}
.a-hero-carousel .a-more:hover{color:var(--accent)}
.a-campaign-header .a-icon-button:hover{background:color-mix(in srgb,var(--a-hero-ink) 8%,transparent);border-radius:50%}
@media(max-width:1199px){.a-hero-carousel .a-hero-grid{min-height:580px}.a-hero-serum .a-hero-heading{padding-top:44px}}
@media(max-width:999px){
  body.a-home-campaign{--a-nav-height:76px}
  .a-hero-carousel .a-hero-grid{min-height:570px;grid-template-rows:1fr 1fr}
  .a-hero-heading .a-hero-title{min-height:0}.a-hero-serum .a-hero-heading{padding-top:16px}
  .a-hero-serum .a-hero-title{font-size:clamp(52px,7.5vw,72px)}
  .a-hero-stage:before{width:106%}.a-hero-description{min-height:5.25em}
}
@media(max-width:767px){
  body.a-home-campaign{--a-nav-height:72px}
  .a-hero-carousel .a-hero-grid{min-height:0;grid-template-rows:auto auto 1fr;row-gap:20px;padding-block:20px 14px}
  .a-hero-heading .a-hero-title{min-height:0;line-height:1.05}
  .a-hero-carousel .a-hero-heading{min-height:calc(clamp(60px,15vw,90px)*1.05 + 25px)}
  .a-hero-serum .a-hero-heading{padding-top:0}.a-hero-serum .a-hero-title{font-size:clamp(38px,10.5vw,62px);line-height:1.5}
  .a-hero-stage:before{width:104%;max-width:310px}
  .a-hero-details{display:flex;flex-direction:column;height:100%}.a-hero-description{min-height:3.3em}
  .a-integrated-actions{margin-top:auto;padding-top:18px}
  .a-carousel-controls{grid-template-columns:44px 1fr 44px;gap:8px;padding-block:4px 20px}
  .a-carousel-pause{grid-column:1/-1;justify-self:center;min-width:120px!important}
}
@media(prefers-reduced-motion:reduce){
  .a-hero-carousel.is-enhanced .a-hero-object,.a-hero-carousel.is-enhanced .a-hero-heading,.a-hero-carousel.is-enhanced .a-hero-details{transform:none;transition:none}
  .a-hero-carousel.is-enhanced .a-hero-stage:before,.a-carousel-dots span{transition:none}
}
