/* Homepage V1 - scoped to the versioned front-page template. */
.ut-home {
  --ut-home-shadow: 0 1.75rem 4rem rgb(24 26 29 / 18%);
  background: var(--ut-bg-light);
  display: flex;
  flex-direction: column;
}

.ut-home-hero { order: 1; }
.ut-home-profile { order: 2; }
.ut-home-swipe { order: 3; }
.ut-home-section--new { order: 4; }
.ut-home-battle { order: 5; }
.ut-home-section--collections { order: 6; }
.ut-home-discover { order: 7; }
.ut-home-guides { order: 8; }
.ut-home-section--reviews { order: 9; }
.ut-home-section--quality { order: 10; }
.ut-home-section--editorial { order: 11; }
.ut-home-final { order: 12; }

.ut-home :where(h1, h2, h3, p) {
  margin-block: 0;
}

.ut-home img {
  display: block;
  max-inline-size: 100%;
}

.ut-home-kicker {
  color: var(--ut-cyan-ink);
  font-size: var(--ut-text-xs);
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

/* A compact bridge between the promise of the hero and the Swipe experience. */
.ut-home-profile {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 87% 26%, rgb(0 229 255 / 16%), transparent 17rem),
    radial-gradient(circle at 7% 92%, rgb(156 86 205 / 12%), transparent 18rem),
    #f3ecdf;
  color: #171719;
}
.ut-home-profile::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(115deg, transparent 0 76%, rgb(255 255 255 / 32%) 76% 77%, transparent 77%); }
.ut-home-profile__grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(19rem, .82fr); align-items: center; gap: clamp(2rem, 6vw, 6.5rem); min-block-size: 19rem; padding-block: clamp(2.6rem, 5vw, 4.4rem); }
.ut-home-profile__copy { max-inline-size: 43rem; }
.ut-home-profile__copy h2 { margin: .35rem 0 .85rem; color: #171719; font-size: clamp(2.15rem, 4.4vw, 4.7rem); line-height: .94; letter-spacing: -.05em; text-transform: uppercase; }
.ut-home-profile__copy h2 em { color: #9255bd; font-style: normal; }
.ut-home-profile__copy > p:not(.ut-home-kicker):not(.ut-home-profile__reassurance) { max-inline-size: 38rem; color: #454148; font-size: clamp(1rem, 1.35vw, 1.15rem); line-height: 1.55; }
.ut-home-profile__copy > p span { color: #e34255; font-weight: 900; }
.ut-home-profile__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.25rem; margin-block-start: 1.45rem; }
.ut-home-profile__actions .ut-button { border: 0; }
.ut-home-profile__link { color: #171719; font-weight: 850; text-decoration: underline; text-decoration-color: var(--ut-cyan); text-decoration-thickness: .16rem; text-underline-offset: .3rem; }
.ut-home-profile__link:hover, .ut-home-profile__link:focus-visible { color: #9255bd; }
.ut-home-profile__reassurance { max-inline-size: 34rem; margin-block-start: 1.15rem; color: #625e63; font-size: .86rem; line-height: 1.4; }
.ut-home-profile__visual { position: relative; display: grid; min-block-size: 14rem; place-items: center; }
.ut-home-profile__cards { position: relative; inline-size: min(100%, 23rem); block-size: 12.5rem; }
.ut-home-profile__card { position: absolute; display: block; overflow: hidden; inline-size: 8rem; aspect-ratio: .76; border: .3rem solid #171719; border-radius: .45rem; background: #fff; box-shadow: 0 .9rem 1.5rem rgb(23 23 25 / 18%); }
.ut-home-profile__card img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.ut-home-profile__card--1 { inset: 1.6rem auto auto 1rem; transform: rotate(-12deg); }
.ut-home-profile__card--2 { inset: .2rem auto auto 7.6rem; z-index: 2; transform: rotate(2deg); }
.ut-home-profile__card--3 { inset: 1.7rem 1rem auto auto; transform: rotate(12deg); }
.ut-home-profile__diagram { position: absolute; inset: auto 50% .15rem auto; display: flex; align-items: center; justify-content: center; gap: .4rem; min-inline-size: max-content; margin: 0; padding: .55rem .75rem; border: .1rem solid rgb(23 23 25 / 16%); border-radius: 99rem; background: rgb(255 255 255 / 88%); box-shadow: 0 .45rem 1rem rgb(23 23 25 / 10%); color: #171719; font-size: .72rem; transform: translateX(50%) rotate(-2deg); }
.ut-home-profile__diagram span { color: #e34255; font-size: 1rem; }.ut-home-profile__diagram i { color: #9255bd; font-style: normal; font-weight: 900; }.ut-home-profile__diagram strong { color: #9255bd; }.ut-home-profile__diagram b { font-weight: 850; }

.ut-home-discover { position: relative; overflow: hidden; background: #111519; color: #faf7f0; }
.ut-home-discover__inner { position: relative; display: grid; min-block-size: 19rem; grid-template-columns: minmax(0, 1.2fr) minmax(14rem, .8fr); align-items: center; gap: 2rem; padding-block: 3rem; }
.ut-home-discover__copy { position: relative; z-index: 2; max-inline-size: 42rem; }
.ut-home-discover__copy h2 { margin-block: .35rem .75rem; color: #faf7f0; font-size: clamp(2.3rem, 5vw, 4.8rem); line-height: .92; letter-spacing: -.045em; text-transform: uppercase; }
.ut-home-discover__copy h2 em { color: var(--ut-cyan); font-style: normal; }
.ut-home-discover__copy > p:not(.ut-home-kicker) { max-inline-size: 35rem; color: rgb(250 247 240 / 72%); }
.ut-home-discover__copy .ut-button { gap: .55rem; margin-block-start: 1.4rem; border: 0; cursor: pointer; }
.ut-home-discover__mark { position: relative; align-self: stretch; }
.ut-home-discover__mark::before { content: ''; position: absolute; inset: 16% 2% -35% 8%; border: .13rem dashed rgb(0 229 255 / 35%); border-radius: 50%; transform: rotate(-8deg); }
.ut-home-discover__mark img { position: absolute; z-index: 1; inset: auto 0 -4.8rem auto; inline-size: min(21rem, 100%); filter: drop-shadow(0 1rem 1.4rem rgb(0 0 0 / 45%)); transform: rotate(4deg); }
.ut-home-discover__mark span { position: absolute; z-index: 2; inset: 5% 8% auto auto; color: #a45ace; font-size: 6rem; font-weight: 900; transform: rotate(13deg); }

@media (max-width: 42rem) {
  .ut-home-discover__inner { min-block-size: 31rem; grid-template-columns: 1fr; align-items: start; gap: 0; padding-block: 2.6rem 0; }
  .ut-home-discover__copy { text-align: center; }
  .ut-home-discover__copy > p:not(.ut-home-kicker) { margin-inline: auto; }
  .ut-home-discover__mark { min-block-size: 14rem; }
  .ut-home-discover__mark img { inset-block-end: -3.5rem; inline-size: 14rem; }
  .ut-home-discover__mark span { inset: 10% 12% auto auto; font-size: 4.5rem; }
}

.ut-home-hero {
  position: relative;
  min-block-size: min(46rem, calc(100vh - 7rem));
  overflow: hidden;
  background: #f3ecdf;
}

.ut-home-hero::before {
  content: "";
  position: absolute;
  inset: 0 58% 0 0;
  background: linear-gradient(90deg, rgb(0 229 255 / 8%), transparent 20%);
  pointer-events: none;
}

.ut-home-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  min-block-size: min(46rem, calc(100vh - 7rem));
  inline-size: 100%;
  max-inline-size: none;
  grid-template-columns: minmax(22rem, 36%) minmax(0, 64%);
  align-items: center;
  gap: 0;
  padding: 0;
}

.ut-home-hero__copy {
  position: relative;
  z-index: 2;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(3rem, 6vw, 6rem) clamp(2rem, 4.8vw, 5.5rem);
  background: #f7f0e4;
}

.ut-home-hero h1 {
  max-inline-size: 9ch;
  margin-block-start: 0;
  color: var(--ut-text-dark);
  font-size: clamp(3.4rem, 5vw, 6.2rem);
  font-weight: 800;
  letter-spacing: -0.065em;
  line-height: 0.86;
  text-transform: uppercase;
  text-wrap: balance;
}

.ut-home-hero__line {
  margin-block-start: 1.5rem;
  font-size: clamp(1.25rem, 2vw, 1.7rem);
  font-weight: 750;
  color: #8b4bc3;
  font-style: italic;
}

.ut-home-hero__intro {
  max-inline-size: 37rem;
  margin-block-start: 0.8rem;
  color: var(--ut-text-muted);
  font-size: 1.05rem;
}

.ut-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-block-start: 2rem;
}

.ut-home-hero__aside {
  margin-block-start: 1.65rem;
  font-size: 0.9rem;
  font-weight: 650;
}

.ut-home-hero__art {
  position: relative;
  align-self: stretch;
  min-block-size: 46rem;
  overflow: hidden;
  isolation: isolate;
}

.ut-home-hero__background-slot {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  pointer-events: none;
}

.ut-home-hero__poster {
  position: absolute;
  display: block;
  overflow: hidden;
  border: 0.42rem solid #171719;
  background: var(--ut-bg-light-alt);
  box-shadow: var(--ut-home-shadow);
  transition: transform var(--ut-transition-slow), box-shadow var(--ut-transition-slow);
}

.ut-home-hero__poster img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}


.ut-home-hero__poster--1 {
  top: 16%;
  left: 13%;
  z-index: 2;
  inline-size: 20.5%;
  aspect-ratio: 0.72;
  transform: rotate(-1deg);
}

.ut-home-hero__poster--2 {
  top: 13%;
  left: 39.5%;
  z-index: 3;
  inline-size: 21.5%;
  aspect-ratio: 0.72;
  transform: rotate(0.8deg);
}

.ut-home-hero__poster--3 {
  top: 16%;
  right: 11%;
  z-index: 2;
  inline-size: 20.5%;
  aspect-ratio: 0.72;
  transform: rotate(1.4deg);
}

.ut-home-hero__poster:hover {
  z-index: 5;
  box-shadow: 0 2.2rem 5rem rgb(24 26 29 / 26%);
  transform: rotate(0) translateY(-0.5rem);
}

.ut-home-hero__ticu {
  position: absolute;
  left: 50%;
  bottom: -3%;
  z-index: 6;
  inline-size: clamp(13rem, 23vw, 24rem);
  max-inline-size: none;
  pointer-events: none;
  transform: translateX(-50%);
}

.ut-home-hero__speech {
  position: absolute;
  right: 4%;
  bottom: 31%;
  z-index: 7;
  display: grid;
  min-inline-size: 10.5rem;
  padding: 1rem 1.2rem;
  border: 0.15rem solid #171719;
  border-radius: 50%;
  background: #fffdf7;
  color: #171719;
  font-size: 1rem;
  line-height: 1.15;
  text-align: center;
  transform: rotate(-3deg);
}

.ut-home-hero__speech::after {
  content: "";
  position: absolute;
  right: 32%;
  bottom: -1rem;
  inline-size: 1.35rem;
  block-size: 1.45rem;
  border-right: 0.15rem solid #171719;
  border-bottom: 0.15rem solid #171719;
  background: #fffdf7;
  transform: rotate(32deg) skew(-10deg);
}

.ut-home-hero__speech strong {
  color: #8b4bc3;
}

/* Compact Swipe laboratory: the full interaction remains available at ?ut-swipe=1. */
.ut-home-swipe {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: radial-gradient(circle at 72% 50%, rgb(0 218 245 / 13%), transparent 23rem), radial-gradient(circle at 15% 95%, rgb(143 74 194 / 17%), transparent 25rem), #101416;
  color: #f8f2e8;
}

.ut-home-swipe__grid {
  display: grid;
  min-block-size: 29rem;
  grid-template-columns: minmax(17rem, .72fr) minmax(31rem, 1.28fr);
  align-items: center;
  gap: clamp(2rem, 7vw, 8rem);
  padding-block: 2.5rem;
}

.ut-home-swipe__copy h2 {
  margin-block: .65rem 1.1rem;
  color: #fff;
  font-size: clamp(2.1rem, 3.45vw, 3.7rem);
  font-weight: 850;
  letter-spacing: -.055em;
  line-height: .93;
  text-transform: uppercase;
}

.ut-home-swipe__copy h2 em { color: var(--ut-cyan); font-style: normal; }
.ut-home-swipe__copy > p:not(.ut-home-kicker) { max-inline-size: 21rem; color: rgb(248 242 232 / 76%); font-size: 1.05rem; }
.ut-home-swipe__copy .ut-button { margin-block-start: 1.5rem; }

.ut-home-swipe__experience { position: relative; display: grid; min-block-size: 25rem; place-items: center; }
.ut-home-swipe__stack { position: relative; z-index: 2; inline-size: min(18rem, 45vw); min-block-size: 0; block-size: 23rem; touch-action: pan-y; }
.ut-home-swipe .ut-swipe__card { border: .2rem solid rgb(255 255 255 / 58%); border-radius: .8rem; box-shadow: -1rem .8rem 0 rgb(135 83 166 / 35%), 1rem 1.1rem 0 rgb(0 229 255 / 22%), 0 1.4rem 2.8rem rgb(0 0 0 / 42%); }
.ut-home-swipe .ut-swipe__card img { block-size: 17.5rem; background: #222; object-fit: cover; }
.ut-home-swipe .ut-swipe__card-footer { padding: .65rem .8rem .75rem; }
.ut-home-swipe .ut-swipe__card-title { font-size: .82rem; }
.ut-home-swipe .ut-swipe__view { font-size: .72rem; }
.ut-home-swipe .ut-swipe__stamp { font-size: 1rem; }
.ut-home-swipe__actions { position: absolute; inset: 50% auto auto 50%; z-index: 4; display: flex; inline-size: min(28rem, 88%); justify-content: space-between; transform: translate(-50%, -50%); pointer-events: none; }
.ut-home-swipe__actions button { display: flex; inline-size: 4.5rem; block-size: 4.5rem; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: #fff; box-shadow: 0 .5rem 1.5rem rgb(0 0 0 / 25%); color: #171719; font-size: 2.25rem; font-weight: 400; line-height: 1; cursor: pointer; pointer-events: auto; }
.ut-home-swipe__actions button:last-child { color: #e34255; font-size: 2.45rem; }
.ut-home-swipe__actions button:disabled { cursor: default; opacity: .45; }
.ut-home-swipe__ticu { position: absolute; z-index: 3; inset: auto auto 1rem calc(50% - 15.5rem); inline-size: clamp(8.5rem, 12vw, 11.5rem); pointer-events: none; }
.ut-home-swipe__ticu img { display: block; inline-size: 100%; filter: drop-shadow(0 .7rem 1rem rgb(0 0 0 / 40%)); transform: scaleX(-1) rotate(2deg); transform-origin: center bottom; }
.ut-home-swipe__scribble { position: absolute; z-index: 1; font-size: 2rem; font-weight: 900; pointer-events: none; }
.ut-home-swipe__scribble--one { inset: 1.9rem auto auto 14%; color: var(--ut-cyan); transform: rotate(18deg); }
.ut-home-swipe__scribble--two { inset: auto 20% 1rem auto; color: #a758d3; transform: rotate(-16deg); }
.ut-home-battle { overflow:hidden; background:radial-gradient(circle at 55% 45%,rgb(135 83 166 / 25%),transparent 24rem),#0d1113; color:#fff; }
.ut-home-battle { order:5; }.ut-battle-page{min-height:calc(100vh - 8rem);display:grid;place-items:center;overflow:visible}.ut-battle-page .ut-home-battle__grid{min-block-size:34rem}.ut-battle-page .ut-home-battle__card{width:clamp(13rem,23vw,22rem)}
.ut-home-battle__grid { display:grid; grid-template-columns:.75fr 1.45fr; align-items:center; gap:2rem; min-block-size:17rem; padding-block:2rem; }
.ut-home-battle h2 { margin:.3rem 0 .7rem; font-size:clamp(2rem,3.2vw,3.5rem); line-height:.92; text-transform:uppercase; }.ut-home-battle h2 em{color:var(--ut-cyan);font-style:normal}.ut-home-battle__copy>p:last-child{color:rgb(255 255 255 / 72%)}
.ut-home-battle__copy .ut-button{margin-top:1rem}
.ut-home-battle__arena{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(1rem,3vw,3rem)}.ut-home-battle__arena>b{color:#a758d3;font-size:clamp(2rem,4vw,4rem);font-style:italic;transform:rotate(-12deg)}
.ut-home-battle__card{position:relative;width:clamp(8rem,13vw,11rem);padding:0;border:.2rem solid rgb(255 255 255 / 35%);border-radius:.55rem;background:#171719;overflow:hidden;cursor:pointer}.ut-home-battle__card img{display:block;width:100%;aspect-ratio:.76;object-fit:cover}.ut-home-battle__card span{position:absolute;z-index:1;top:.45rem;left:.45rem;display:grid;width:1.8rem;height:1.8rem;place-items:center;border:1px solid #fff;border-radius:.25rem;background:#151719;font-weight:900}.ut-home-battle__card:hover{transform:translateY(-.25rem);border-color:var(--ut-cyan)}.ut-home-battle__arena p{position:absolute;inset:auto 0 -1.4rem;text-align:center;color:var(--ut-cyan);font-weight:800}
.ut-home-battle__choice-b{position:relative;flex:0 0 auto}.ut-home-battle__ticu{position:absolute;z-index:3;bottom:-1.7rem;left:calc(100% - 3.35rem);width:clamp(13.5rem,18vw,17.5rem);pointer-events:none;user-select:none}.ut-home-battle__ticu img{display:block;width:100%;height:auto}
.ut-battle-page .ut-home-battle__ticu{bottom:-2.25rem;left:calc(100% - 4rem);width:clamp(17rem,22vw,21rem)}

@media (max-width: 70rem) {
  .ut-home-battle__ticu { display: none; }
}

.ut-home-section {
  padding-block: clamp(3.5rem, 5.5vw, 5.5rem);
}
.ut-home-guides{order:8;padding-block:2.8rem;background:#f8f3ec;color:#171719}.ut-home-guides__head{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:1.2rem}.ut-home-guides h2{margin:.15rem 0;color:#171719;font-size:clamp(1.7rem,2.8vw,2.7rem);text-transform:uppercase}.ut-home-guides__rail{display:flex;gap:1rem;overflow-x:auto}.ut-home-guide{display:flex;flex:1 0 17rem;min-height:8rem;overflow:hidden;border:1px solid #e7dfd4;border-radius:.7rem;background:#fff;color:#171719;text-decoration:none}.ut-home-guide__image{flex:0 0 5.7rem}.ut-home-guide__image img{width:100%;height:100%;object-fit:cover}.ut-home-guide>span:last-child{display:grid;align-content:center;gap:.6rem;padding:1rem}.ut-home-guide strong{font-size:.92rem;line-height:1.15}.ut-home-guide small{font-size:.72rem;color:#635f5b}.ut-home-guide--free{background:#f4ecff}.ut-home-guide--free>span:first-child{display:grid;flex:0 0 5.7rem;place-items:center;color:#9b50d1;font-size:3rem}

.ut-home-section__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-block-end: clamp(1.4rem, 2.5vw, 2.25rem);
}

.ut-home-section__head h2,
.ut-home-quality__lead h2,
.ut-home-section--editorial h2,
.ut-home-final h2,
.ut-home-reviews__score h2 {
  margin-block-start: 0.75rem;
  font-size: clamp(2.5rem, 5vw, 5rem);
  font-weight: 800;
  letter-spacing: -0.055em;
  line-height: 0.98;
  text-wrap: balance;
}

.ut-home-section__note {
  max-inline-size: 27rem;
  color: rgb(250 247 240 / 64%);
}

.ut-home-text-link {
  flex: 0 0 auto;
  color: var(--ut-text-dark);
  font-weight: 750;
  text-decoration: none;
}

.ut-home-text-link span {
  display: inline-block;
  margin-inline-start: 0.35rem;
  color: var(--ut-cyan-ink);
  transition: transform var(--ut-transition-fast);
}

.ut-home-text-link:hover span {
  transform: translateX(0.25rem);
}

.ut-home-section--collections { overflow: hidden; padding-block: 2.6rem 3rem; background: #f8f3ec; }
.ut-home-section--collections .ut-home-section__head { align-items: center; margin-block-end: 1.25rem; }
.ut-home-section--collections .ut-home-section__head h2 { margin-block-start: .1rem; font-size: clamp(2rem, 3.5vw, 3.35rem); }

.ut-home-section--collections .ut-home-section__head h2,
.ut-home-reviews__score h2,
.ut-home-section--editorial h2,
.ut-home-final h2 {
  color: var(--ut-text-dark);
}

.ut-home-collections {
  display: flex;
  gap: clamp(.9rem, 1.6vw, 1.4rem);
  justify-content: center;
  overflow-x: auto;
  padding-block: .25rem .6rem;
  scrollbar-width: none;
}
.ut-home-collections::-webkit-scrollbar { display: none; }

.ut-home-collection {
  position: relative;
  display: block;
  flex: 0 0 clamp(9rem, 12.6vw, 11.5rem);
  min-block-size: 0;
  overflow: hidden;
  border-radius: var(--ut-radius-lg);
  background: var(--ut-bg-dark);
  color: var(--ut-text-light);
  box-shadow: 0 1rem 3rem rgb(24 26 29 / 12%);
  text-decoration: none;
}

.ut-home-collection__media { position: relative; display: block; aspect-ratio: .78; overflow: hidden; }
.ut-home-collection__media::after { position: absolute; inset: 0; }

.ut-home-collection__media::after {
  content: "";
  background: linear-gradient(180deg, transparent 38%, rgb(17 20 23 / 88%) 100%);
}
.ut-home-collection__media b { position:absolute; z-index:2; inset:auto .55rem .55rem; color:#fff; font-size:.84rem; line-height:1.05; text-shadow:0 .1rem .3rem rgb(0 0 0 / 70%); }

.ut-home-collection__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  transition: transform 650ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.ut-home-collection__content {
  display: block;
  padding: .75rem .1rem .1rem;
  color: var(--ut-text-dark);
}

.ut-home-collection__content strong {
  display: block;
  font-size: 1rem;
  letter-spacing: -.025em;
  line-height: 1.15;
}

.ut-home-collection__content small {
  display: block;
  margin-top: .28rem;
  color: #635f5b;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}


.ut-home-collection:hover .ut-home-collection__media img {
  transform: scale(1.035);
}

.ut-home-collections-wrap { position: relative; }
.ut-home-collections__next { position: absolute; top: 43%; right: -1.25rem; z-index: 3; display: flex; width: 3.25rem; height: 3.25rem; align-items: center; justify-content: center; padding: 0; border: 1px solid rgb(23 23 25 / 12%); border-radius: 50%; background: #fff; box-shadow: 0 .35rem 1rem rgb(23 23 25 / 13%); color: #171719; cursor: pointer; transform: translateY(-50%); }
.ut-home-collections__next svg { display: block; width: 1.3rem; height: 1.3rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }


.ut-home-section--new {
  overflow: hidden;
  background: #f8f3ec;
  color: var(--ut-text-dark);
}

.ut-home-section--new .ut-home-kicker { color: #8b4bc3; }
.ut-home-section--quality .ut-home-kicker { color: var(--ut-cyan); }
.ut-home-section--new .ut-home-section__head { align-items: center; margin-block-end: 2rem; }
.ut-home-section--new .ut-home-section__head h2 { margin-block-start: 0; color: #171719; font-size: clamp(1.85rem, 3.1vw, 3.25rem); text-transform: uppercase; }
.ut-home-section--new .ut-home-text-link { color: #6e4297; text-transform: uppercase; font-size: .78rem; letter-spacing: .08em; }
.ut-home-section--new .ut-home-text-link span { color: #6e4297; }

.ut-home-products {
  display: flex;
  gap: clamp(.85rem, 1.45vw, 1.4rem);
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}
.ut-home-products::-webkit-scrollbar { display: none; }
.ut-home-products-wrap { position: relative; }
.ut-home-products__next { position: absolute; top: 39%; right: -1.25rem; z-index: 3; display: flex; width: 3.5rem; height: 3.5rem; align-items: center; justify-content: center; padding: 0; border: 1px solid rgb(23 23 25 / 12%); border-radius: 50%; background: #fff; box-shadow: 0 .35rem 1rem rgb(23 23 25 / 13%); color: #171719; cursor: pointer; transform: translateY(-50%); }
.ut-home-products__prev, .ut-home-collections__prev { position:absolute; top:39%; left:-1.25rem; z-index:3; display:flex; width:3.5rem; height:3.5rem; align-items:center; justify-content:center; padding:0; border:1px solid rgb(23 23 25 / 12%); border-radius:50%; background:#fff; box-shadow:0 .35rem 1rem rgb(23 23 25 / 13%); color:#171719; cursor:pointer; transform:translateY(-50%); font-size:1.35rem; }
.ut-home-products__next svg { display: block; width: 1.4rem; height: 1.4rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.ut-home-product {
  flex: 0 0 calc((100% - 7rem) / 6);
  min-inline-size: 0;
  scroll-snap-align: start;
}

.ut-home-product__image {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 0.72;
  border-radius: .35rem;
  background: #e8e1d8;
}

.ut-home-product__image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  transition: transform var(--ut-transition-slow);
}

.ut-home-product__image > span {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
  display: flex;
  min-block-size: 2.8rem;
  align-items: center;
  justify-content: center;
  border-radius: var(--ut-radius-pill);
  background: rgb(17 20 23 / 86%);
  color: var(--ut-text-light);
  font-size: 0.8rem;
  font-weight: 800;
  opacity: 0;
  transform: translateY(0.5rem);
  transition: opacity var(--ut-transition-fast), transform var(--ut-transition-fast);
}

.ut-home-product__image > b { position: absolute; top: .45rem; left: -.25rem; z-index: 2; padding: .35rem .55rem; border-radius: .2rem; background: #8b4bc3; color: #fff; font-size: .62rem; letter-spacing: .06em; text-transform: uppercase; }

.ut-home-product__image:hover img {
  transform: scale(1.025);
}

.ut-home-product__image:hover > span {
  opacity: 1;
  transform: translateY(0);
}

.ut-home-product__body {
  padding-block: 1rem 0.5rem;
}

.ut-home-product h3 {
  font-size: .88rem;
  line-height: 1.35;
}

.ut-home-product h3 a {
  color: var(--ut-text-dark);
  text-decoration: none;
}

.ut-home-product__price {
  margin-block-start: 0.5rem !important;
  color: var(--ut-text-dark);
  font-size: .78rem;
  font-weight: 750;
}

.ut-home-product__price del {
  color: var(--ut-text-muted);
}

.ut-home-section--reviews {
  background: var(--ut-bg-light);
}

.ut-home-reviews {
  display: grid;
  grid-template-columns: minmax(18rem, 0.75fr) minmax(0, 1.25fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.ut-home-score {
  margin-block-start: 1rem !important;
  color: var(--ut-cyan-ink);
  font-size: clamp(3rem, 6vw, 5.5rem);
  font-weight: 850;
  letter-spacing: -0.06em;
  line-height: 1;
}

.ut-home-score span {
  color: var(--ut-text-muted);
  font-size: 0.35em;
  letter-spacing: 0;
}

.ut-home-reviews__score > p:not(.ut-home-kicker, .ut-home-score) {
  max-inline-size: 33rem;
  margin-block-start: 1.2rem;
  color: var(--ut-text-muted);
}

.ut-home-reviews__score .ut-button {
  margin-block-start: 1.6rem;
}

.ut-home-reviews__proof {
  display: grid;
  gap: 0.85rem;
  padding: clamp(1rem, 2.5vw, 2rem);
  border: 0.0625rem solid var(--ut-border);
  border-radius: var(--ut-radius-lg);
  background: var(--ut-bg-light-alt);
  box-shadow: 0 1rem 3rem rgb(24 26 29 / 9%);
}

.ut-home-reviews__proof img {
  inline-size: 100%;
  block-size: auto;
  border-radius: 0.45rem;
}

.ut-home-section--quality {
  background:
    radial-gradient(circle at 88% 28%, rgb(0 229 255 / 12%), transparent 24rem),
    var(--ut-bg-dark-alt);
  color: var(--ut-text-light);
}

.ut-home-quality__lead {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(18rem, 0.7fr);
  align-items: end;
  gap: 3rem;
}

.ut-home-quality__lead .ut-home-kicker,
.ut-home-quality__lead h2 {
  grid-column: 1;
}

.ut-home-quality__lead > p:last-child {
  grid-row: 1 / 3;
  grid-column: 2;
  color: rgb(250 247 240 / 68%);
}

.ut-home-quality__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-block-start: clamp(2rem, 3.5vw, 3rem);
  border-top: 0.0625rem solid rgb(250 247 240 / 15%);
  border-bottom: 0.0625rem solid rgb(250 247 240 / 15%);
}

.ut-home-quality__grid article {
  min-block-size: 15.5rem;
  padding: clamp(1.3rem, 2.5vw, 2.2rem);
}

.ut-home-quality__grid article + article {
  border-left: 0.0625rem solid rgb(250 247 240 / 15%);
}

.ut-home-quality__grid span {
  color: var(--ut-cyan);
  font-size: 0.75rem;
  font-weight: 800;
}

.ut-home-quality__grid h3 {
  margin-block-start: 2.6rem;
  font-size: clamp(1.4rem, 2vw, 2rem);
  letter-spacing: -0.03em;
  line-height: 1.1;
}

.ut-home-quality__grid p {
  margin-block-start: 1rem;
  color: rgb(250 247 240 / 64%);
}

.ut-home-section--editorial {
  background: var(--ut-bg-light);
}

.ut-home-section--editorial .ut-container {
  max-inline-size: 52rem;
}

.ut-home-section--editorial h2 {
  margin-block-end: 2rem;
}

.ut-home-section--editorial > .ut-container > p:not(.ut-home-kicker) {
  color: var(--ut-text-muted);
  font-size: 1.05rem;
}

.ut-home-section--editorial > .ut-container > p + p {
  margin-block-start: 1rem;
}

.ut-home-editorial__details {
  margin-block-start: 2rem;
  border-top: 0.0625rem solid var(--ut-border);
  border-bottom: 0.0625rem solid var(--ut-border);
}

.ut-home-editorial__details summary {
  display: flex;
  min-block-size: 4.5rem;
  align-items: center;
  justify-content: space-between;
  color: var(--ut-text-dark);
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.ut-home-editorial__details summary::after {
  content: "+";
  color: var(--ut-cyan-ink);
  font-size: 1.7rem;
  font-weight: 500;
}

.ut-home-editorial__details[open] summary::after {
  content: "−";
}

.ut-home-editorial__details > div {
  padding-block: 0 2rem;
}

.ut-home-editorial__details h3 {
  font-size: 1.35rem;
}

.ut-home-editorial__details p {
  margin-block-start: 1rem;
  color: var(--ut-text-muted);
}

.ut-home-final {
  background: var(--ut-cyan);
  color: var(--ut-bg-dark);
  padding-block: clamp(3.3rem, 5vw, 4.8rem);
}

.ut-home-final .ut-home-kicker {
  color: var(--ut-cyan-ink);
}

.ut-home-final__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.ut-home-final h2 {
  max-inline-size: 13ch;
  font-size: clamp(2.5rem, 5vw, 5rem);
}

.ut-home-final .ut-button--primary {
  border: 0.125rem solid var(--ut-bg-dark);
  background: var(--ut-bg-dark);
  color: var(--ut-text-light);
}

@media (max-width: 64rem) {
  .ut-home-hero__grid {
    grid-template-columns: minmax(20rem, 40%) minmax(0, 60%);
  }

  .ut-home-products {
    gap: 1rem;
  }
}

@media (max-width: 52rem) {
  .ut-home-hero__grid,
  .ut-home-reviews,
  .ut-home-quality__lead,
  .ut-home-swipe__grid {
    grid-template-columns: 1fr;
  }

  .ut-home-hero__grid {
    padding-block-start: 0;
  }

  .ut-home-hero h1 {
    max-inline-size: 8ch;
  }

  .ut-home-hero__art {
    min-block-size: 34rem;
  }

  .ut-home-swipe__grid { gap: 1.5rem; padding-block: 3.5rem; }
  .ut-home-swipe__copy { text-align: center; }
  .ut-home-swipe__copy > p:not(.ut-home-kicker) { margin-inline: auto; }
  .ut-home-swipe__experience { min-block-size: 23rem; }
  .ut-home-swipe__ticu { inset: auto auto .65rem calc(50% - 14.5rem); inline-size: 9.5rem; }

  .ut-home-quality__lead > p:last-child {
    grid-row: auto;
    grid-column: 1;
  }

  .ut-home-quality__grid {
    grid-template-columns: 1fr;
  }

  .ut-home-quality__grid article {
    min-block-size: auto;
  }

  .ut-home-quality__grid article + article {
    border-top: 0.0625rem solid rgb(250 247 240 / 15%);
    border-left: 0;
  }

  .ut-home-quality__grid h3 {
    margin-block-start: 2rem;
  }

  /* Give the choices enough room on tablets too. */
  .ut-home-battle__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }

  .ut-home-battle__ticu { display: none; }
}

@media (max-width: 42rem) {
	.ut-home-profile__grid { grid-template-columns: 1fr; gap: 1.5rem; min-block-size: 0; padding-block: 3rem; }
	.ut-home-profile__copy { text-align: center; }
	.ut-home-profile__copy > p:not(.ut-home-kicker):not(.ut-home-profile__reassurance),
	.ut-home-profile__reassurance { margin-inline: auto; }
	.ut-home-profile__actions { justify-content: center; }
	.ut-home-profile__visual { min-block-size: 12rem; }
	.ut-home-profile__cards { inline-size: min(100%, 19rem); block-size: 11rem; }
	.ut-home-profile__card { inline-size: 6.8rem; border-width: .22rem; }
	.ut-home-profile__card--1 { inset: 1.5rem auto auto .6rem; }
	.ut-home-profile__card--2 { inset: .2rem auto auto calc(50% - 3.4rem); }
	.ut-home-profile__card--3 { inset: 1.5rem .6rem auto auto; }
	.ut-home-profile__diagram { bottom: -.2rem; font-size: .64rem; }

  /* Battle: on a phone the two choices must always share the screen. */
  .ut-home-battle__grid,
  .ut-battle-page .ut-home-battle__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
    min-block-size: 0;
    padding-block: 2.5rem 3rem;
  }

  .ut-home-battle__copy { text-align: center; }
  .ut-home-battle__copy > p:last-child { margin-inline: auto; }
  .ut-home-battle__arena { --ut-battle-mobile-card: min(10.5rem, calc((100% - 2.8rem) / 2)); width: 100%; gap: .55rem; }
  .ut-home-battle__arena > b { flex: 0 0 auto; font-size: 1.7rem; }
  .ut-home-battle__arena > .ut-home-battle__card,
  .ut-home-battle__arena > .ut-home-battle__choice-b {
    flex: 0 0 var(--ut-battle-mobile-card);
    width: var(--ut-battle-mobile-card);
  }
  .ut-home-battle__card,
  .ut-battle-page .ut-home-battle__card {
    width: var(--ut-battle-mobile-card);
    border-width: .14rem;
  }
  .ut-home-battle__choice-b .ut-home-battle__card,
  .ut-battle-page .ut-home-battle__choice-b .ut-home-battle__card { width: 100%; }
  .ut-home-battle__card span { top: .3rem; left: .3rem; width: 1.45rem; height: 1.45rem; font-size: .78rem; }
  .ut-home-battle__arena p { bottom: -1.65rem; font-size: .82rem; }
  .ut-home-battle__ticu { display: none; }

  .ut-home-hero {
    min-block-size: auto;
  }

  .ut-home-hero__grid {
    min-block-size: auto;
    gap: 0;
    padding-block: 0;
  }

  .ut-home-hero__copy {
    padding: 3.4rem 1.4rem 3rem;
  }

  .ut-home-hero h1 {
    font-size: clamp(3.7rem, 18vw, 5.5rem);
    line-height: 0.88;
  }

  .ut-home-hero__intro {
    font-size: 0.98rem;
  }

  .ut-home-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .ut-home-actions .ut-button {
    inline-size: 100%;
  }

  .ut-home-hero__art {
    min-block-size: clamp(28rem, 118vw, 33rem);
  }

  .ut-home-hero__poster--1 {
    top: 10%;
    left: 5%;
    inline-size: 26%;
    transform: rotate(-1deg);
  }

  .ut-home-hero__poster--2 {
    top: 7%;
    left: 36.5%;
    inline-size: 27%;
    transform: rotate(0.8deg);
  }

  .ut-home-hero__poster--3 {
    top: 10%;
    right: 4%;
    inline-size: 26%;
    transform: rotate(1.4deg);
  }

  .ut-home-hero__ticu {
    left: 50%;
    bottom: -3%;
    inline-size: min(15rem, 58vw);
    transform: translateX(-50%);
  }

  .ut-home-hero__speech {
    right: 8%;
    bottom: 34%;
    min-inline-size: 8.5rem;
    padding: 0.75rem 0.9rem;
    font-size: 0.82rem;
  }

  .ut-home-swipe__copy h2 { font-size: clamp(2.35rem, 12vw, 3.3rem); }
  .ut-home-swipe__stack { inline-size: 15rem; block-size: 20rem; }
  .ut-home-swipe .ut-swipe__card img { block-size: 15.5rem; }
  .ut-home-swipe__actions { inline-size: min(22rem, 108%); }
  .ut-home-swipe__actions button { inline-size: 3.8rem; block-size: 3.8rem; font-size: 1.9rem; }
  .ut-home-swipe__actions button:last-child { font-size: 2.1rem; }
  .ut-home-swipe__ticu { inset: auto auto .25rem calc(50% - 11rem); inline-size: 7.5rem; }

  .ut-home-section {
    padding-block: 3.75rem;
  }

  .ut-home-section__head,
  .ut-home-final__inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .ut-home-section__head h2,
  .ut-home-quality__lead h2,
  .ut-home-section--editorial h2,
  .ut-home-reviews__score h2 {
    font-size: clamp(2.5rem, 12vw, 3.6rem);
  }

  .ut-home-products { width: 100%; gap: 1rem; padding: 0 1.4rem .75rem 0; }
  .ut-home-section--new .ut-container { padding-inline-end: 0; }
  .ut-home-product { flex: 0 0 min(10.6rem, 44vw); scroll-snap-align: start; }
  .ut-home-products__next { right: .6rem; width: 2.9rem; height: 2.9rem; }
  .ut-home-products__prev { left: .6rem; width: 2.9rem; height: 2.9rem; }
  /* Collections stay a compact horizontal rail instead of giant stacked cards. */
  .ut-home-section--collections { padding-block: 2.8rem; }
  .ut-home-section--collections .ut-container { padding-inline-end: 0; }
  .ut-home-collections { gap: .8rem; justify-content: flex-start; padding: .15rem 1.2rem .8rem 0; scroll-snap-type: x mandatory; }
  .ut-home-collection { flex: 0 0 min(9.4rem, 43vw); min-block-size: 0; scroll-snap-align: start; }
  .ut-home-collection__media { aspect-ratio: .78; }
  .ut-home-collection__media b { inset: auto .45rem .45rem; font-size: .76rem; }
  .ut-home-collection__content { padding-top: .5rem; }
  .ut-home-collection__content strong { font-size: .92rem; }
  .ut-home-collection__content small { font-size: .66rem; }
  .ut-home-collections__next,
  .ut-home-collections__prev { top: 39%; width: 2.7rem; height: 2.7rem; }
  .ut-home-collections__next { right: .45rem; }
  .ut-home-collections__prev { left: .45rem; }

  .ut-home-product__image {
    aspect-ratio: 0.76;
  }

  .ut-home-product__image > span {
    opacity: 1;
    transform: none;
  }

  .ut-home-reviews {
    gap: 2.5rem;
  }

  .ut-home-reviews__proof {
    padding: 0.75rem;
  }

  .ut-home-final__inner {
    display: flex;
  }

  .ut-home-final .ut-button {
    inline-size: 100%;
  }
}

/* Finishing touches for interactive controls. */
.ut-home-products__prev svg,
.ut-home-collections__prev svg,
.ut-home-products__next svg,
.ut-home-collections__next svg { display:block; width:1.35rem; height:1.35rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ut-home-products__prev,
.ut-home-collections__prev { font-size:0; line-height:0; }
.ut-home-products__prev:hover,
.ut-home-collections__prev:hover,
.ut-home-products__next:hover,
.ut-home-collections__next:hover { border-color:var(--ut-cyan); background:var(--ut-cyan); color:#171719; }

.ut-home-swipe__actions button:not(:disabled) { transition:transform var(--ut-transition-fast), box-shadow var(--ut-transition-fast), background-color var(--ut-transition-fast), color var(--ut-transition-fast); }
.ut-home-swipe__actions button:not(:disabled):hover,
.ut-home-swipe__actions button:not(:disabled):focus-visible { transform:scale(1.1); box-shadow:0 .7rem 1.75rem rgb(0 229 255 / 34%); outline:none; }
.ut-home-swipe__actions button:first-child:not(:disabled):hover,
.ut-home-swipe__actions button:first-child:not(:disabled):focus-visible { background:#ffefe9; }
.ut-home-swipe__actions button:last-child:not(:disabled):hover,
.ut-home-swipe__actions button:last-child:not(:disabled):focus-visible { background:#ffe8ec; }

.ut-home-discover__inner { grid-template-columns:minmax(18rem, .82fr) minmax(0, 1.18fr); }
.ut-home-discover__mark::before { content:none; }
.ut-home-discover__mark img { inset:auto auto -3rem -1.5rem; inline-size:min(27rem, 125%); transform:none; }
.ut-home-discover__copy { max-inline-size:46rem; }
@media (max-width:42rem) {
  .ut-home-discover__inner { grid-template-columns:1fr; }
  .ut-home-discover__copy { order:1; }
  .ut-home-discover__mark { order:2; }
  .ut-home-discover__mark img { inset:auto 50% -2rem auto; inline-size:15rem; transform:translateX(50%); }
}

@media (prefers-reduced-motion: reduce) {
  .ut-home *,
  .ut-home *::before,
  .ut-home *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
