/* Home refinement v2 — intentionally scoped below the approved hero and video sections. */
/* The marquee sits flush with the top of the section and the content starts below its
   midpoint, which reclaims the dead band that used to sit above the heading. The floor
   of the padding clears the fixed announcement bar plus header (104px), so the eyebrow
   is never swallowed by them; scroll-margin-top does the same for the #new-drop anchor,
   which otherwise lands with the section top flush against the header. */
.launch-deck { position: relative; min-height: 100svh; overflow: hidden; padding-top: clamp(104px,8vw,130px); padding-bottom: clamp(80px,8vw,130px); scroll-margin-top: clamp(112px,9vw,140px); color: #171412; }
/* The lone "26" became the full phrase, running as a marquee behind the section —
   same construction as the GLEE / MOTION lettering: two identical spans, each at
   least a viewport wide, shifted by half the pair for a seamless loop. The stroke
   goes to 2px because at 1px it all but disappeared against the ivory. */
.launch-deck__ghost {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  display: flex;
  width: max-content;
  color: transparent;
  -webkit-text-stroke: 2px rgba(169,14,49,.16);
  font: 800 clamp(96px,15vw,260px)/.8 "Barlow Condensed",sans-serif;
  letter-spacing: -.045em;
  white-space: nowrap;
  pointer-events: none;
  will-change: transform;
  animation: glee-launch-lettering 26s linear infinite;
}
.launch-deck__ghost span { flex: 0 0 auto; min-width: 100vw; }
@keyframes glee-launch-lettering { to { transform: translate3d(-50%,0,0); } }
@media (prefers-reduced-motion: reduce) {
  .launch-deck__ghost { animation: none; }
}
.launch-deck__head { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1.3fr) minmax(300px,.7fr); align-items: end; gap: clamp(50px,10vw,180px); margin-bottom: clamp(65px,7vw,110px); }
.launch-deck__head h2 { margin: clamp(30px,3vw,45px) 0 0; font: 700 clamp(82px,8vw,150px)/.76 "Barlow Condensed",sans-serif; letter-spacing: -.055em; text-transform: uppercase; }
.launch-deck__head h2 em { color: #a90e31; font-family: "Bodoni Moda",serif; font-weight: 500; text-transform: none; }
.launch-deck__intro { padding-bottom: 7px; }
.launch-deck__intro > span { color: #a90e31; font-size: 8px; font-weight: 900; letter-spacing: .17em; }
.launch-deck__intro p { max-width: 460px; margin: 24px 0 30px; color: #706963; font-size: 12px; line-height: 1.8; }
.launch-deck__intro a { display: inline-flex; align-items: center; gap: 28px; padding-bottom: 10px; border-bottom: 1px solid currentColor; color: inherit; font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.launch-deck__intro a b { color: #a90e31; font-size: 15px; }
.launch-deck__stage { position: relative; z-index: 2; display: grid; grid-template-columns: clamp(105px,9vw,155px) minmax(0,1fr); border-block: 1px solid rgba(23,20,18,.2); outline: none; cursor: grab; touch-action: pan-y; }
.launch-deck__stage.is-dragging { cursor: grabbing; }
.launch-deck__stage:focus-visible { outline: 2px solid #a90e31; outline-offset: 5px; }
.launch-deck__control { min-height: 680px; padding: 34px clamp(18px,2vw,34px) 34px 0; display: flex; flex-direction: column; border-right: 1px solid rgba(23,20,18,.2); }
.launch-deck__count { display: flex; align-items: flex-start; gap: 7px; color: #a90e31; font-family: "Barlow Condensed",sans-serif; }
.launch-deck__count strong { font-size: clamp(52px,5vw,82px); line-height: .8; letter-spacing: -.06em; }
.launch-deck__count span { margin-top: 3px; color: #827b75; font-size: 16px; }
.launch-deck__count small { margin-top: 4px; color: #827b75; font-size: 13px; }
.launch-deck__progress { width: 2px; height: 150px; margin: 35px 0 24px 10px; overflow: hidden; background: rgba(23,20,18,.13); }
.launch-deck__progress i { display: block; width: 100%; height: 50%; background: #a90e31; transform-origin: top; transition: transform .7s cubic-bezier(.22,1,.36,1); }
.launch-deck__control > p { margin: 0; color: #716a64; font-size: 7px; font-weight: 900; letter-spacing: .15em; writing-mode: vertical-rl; }
.launch-deck__arrows { display: flex; gap: 7px; margin-top: auto; }
.launch-deck__arrows button { width: 42px; height: 42px; padding: 0; border: 1px solid rgba(23,20,18,.35); border-radius: 50%; color: inherit; background: transparent; cursor: pointer; transition: color .3s,background .3s,transform .3s; }
.launch-deck__arrows button:hover { color: #fff; background: #a90e31; border-color: #a90e31; transform: translateY(-3px); }
.launch-deck__viewport { position: relative; min-width: 0; padding: 38px 0 42px clamp(24px,3vw,52px); overflow: hidden; }
.launch-deck__panel { position: relative; display: grid!important; grid-area: 1/1; grid-template-columns: repeat(4,minmax(0,1fr))!important; align-items: start; gap: clamp(13px,1.5vw,26px)!important; margin: 0!important; padding: 0!important; list-style: none; counter-reset: launch-item; }
.launch-deck__panel:not(.is-active) { position: absolute; inset: 38px 0 auto clamp(24px,3vw,52px); width: calc(100% - clamp(24px,3vw,52px)); visibility: hidden; opacity: 0; pointer-events: none; }
.launch-deck .glee-product-card { position: relative; width: auto!important; margin: 0!important; counter-increment: launch-item; }
.launch-deck .glee-product-card:nth-child(even) { margin-top: clamp(52px,5vw,92px)!important; }
.launch-deck .glee-product-card::before { content: "0" counter(launch-item); position: absolute; z-index: 4; left: 13px; top: 13px; color: #a90e31; font-size: 8px; font-weight: 900; letter-spacing: .14em; }
.launch-deck .glee-product-card__media { aspect-ratio: .78; background: rgba(229,222,213,.72); }
.launch-deck .glee-product-card__media::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(23,20,18,.08); pointer-events: none; }
.launch-deck .glee-product-card__media img { padding: clamp(13px,1.5vw,27px); }
.launch-deck .glee-product-card__overlay { inset: auto 10px 10px; padding: 14px 16px; }
.launch-deck .glee-product-card__info { padding-top: 17px; }
.launch-deck .glee-product-card__info > p { color: #a90e31; }
.launch-deck .glee-product-card__info h2 { min-height: 2.35em; font-size: clamp(17px,1.25vw,22px); line-height: 1.12; }
.launch-deck .glee-product-card__info > div { margin-top: 13px; }
.launch-deck .glee-product-card__info strong { font-size: clamp(17px,1.3vw,23px); }
.launch-deck .glee-product-card__actions { display: none!important; }
.launch-deck__foot { position: relative; z-index: 2; display: flex; align-items: center; gap: 22px; padding-top: 25px; color: #77706a; font-size: 7px; font-weight: 900; letter-spacing: .15em; }
.launch-deck__foot i { width: 4px; height: 4px; background: #a90e31; transform: rotate(45deg); }
.launch-deck__foot b { margin-left: auto; color: #171412; font-size: inherit; }

.home-curation {
  position: relative;
  isolation: isolate;
  min-height: 100svh;
  display: grid;
  grid-template-columns: minmax(390px,38vw) minmax(0,1fr);
  overflow: hidden;
  color: #fff;
  background: #11100f;
}
.home-curation::before { content: "GLEE / EDIT"; position: absolute; z-index: -1; left: 36vw; bottom: -2vw; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.06); font: 800 clamp(120px,18vw,340px)/.7 "Barlow Condensed",sans-serif; letter-spacing: -.055em; white-space: nowrap; }
.home-curation__copy { min-height: 100svh; padding-top: clamp(130px,13vh,190px); padding-bottom: clamp(80px,10vh,140px); display: flex; flex-direction: column; justify-content: center; }
.home-curation__copy h2 { max-width: 600px; margin: 0; font: 700 clamp(66px,6.5vw,120px)/.8 "Barlow Condensed",sans-serif; letter-spacing: -.045em; text-transform: uppercase; }
.home-curation__copy h2 em { color: #f0b4c4; font-family: "Bodoni Moda",serif; font-weight: 500; text-transform: none; }
.home-curation__copy > p:not(.eyebrow) { max-width: 410px; margin: 34px 0 0; color: rgba(255,255,255,.55); font-size: 12px; line-height: 1.75; }
.home-curation__link { width: min(310px,100%); margin-top: 36px; color: #fff!important; border-color: rgba(255,255,255,.55)!important; }
.home-curation__link:hover { color: #11100f!important; background: #fff!important; }
.home-curation__progress { width: min(360px,100%); height: 2px; margin-top: 45px; overflow: hidden; background: rgba(255,255,255,.14); }
.home-curation__progress span { display: block; width: 100%; height: 100%; background: #b5122c; transform: scaleX(0); transform-origin: left; }
.home-curation__viewport { min-width: 0; display: flex; align-items: center; overflow: hidden; }
.home-curation__track { width: max-content!important; margin: 0!important; padding: 9vh 9vw 9vh 2vw!important; display: flex!important; align-items: center; gap: clamp(16px,1.6vw,28px); list-style: none; will-change: transform; }
.home-curation .glee-product-card { flex: 0 0 clamp(260px,20vw,350px); width: clamp(260px,20vw,350px)!important; margin: 0!important; color: #fff; }
.home-curation .glee-product-card:nth-child(2n) { transform: translateY(6vh); }
.home-curation .glee-product-card:nth-child(3n) { transform: translateY(-4vh); }
.home-curation .glee-product-card__media { aspect-ratio: .78; background: #e9e2d9; }
.home-curation .glee-product-card__media img { padding: clamp(12px,1.4vw,24px); }
.home-curation .glee-product-card__overlay { inset: auto 10px 10px; padding: 15px 17px; color: #11100f; background: rgba(255,255,255,.88); }
.home-curation .glee-product-card__info { padding-top: 17px; }
.home-curation .glee-product-card__info > p { margin-bottom: 7px; color: #f0b4c4; }
.home-curation .glee-product-card__info h2 { min-height: 2.35em; color: #fff; font-size: clamp(18px,1.45vw,26px); line-height: 1.08; }
.home-curation .glee-product-card__info > div { margin-top: 14px; }
.home-curation .glee-product-card__info strong { color: #fff; font-size: clamp(19px,1.45vw,25px); }
.home-curation .glee-product-card__info small { color: rgba(255,255,255,.5); }
.home-curation .glee-product-card__actions { display: none!important; }

.home-achados {
  display: grid;
  grid-template-columns: minmax(320px,.82fr) minmax(0,1.18fr);
  align-items: center;
  gap: clamp(50px,8vw,140px);
  color: #fff;
  background: #a90e31;
}
.home-achados__copy h2 { margin: 0; font: 700 clamp(66px,6.5vw,120px)/.8 "Barlow Condensed",sans-serif; letter-spacing: -.045em; text-transform: uppercase; }
.home-achados__copy h2 em { color: #f6c3d0; font-family: "Bodoni Moda",serif; font-weight: 500; text-transform: none; }
.home-achados__copy .eyebrow { margin-bottom: clamp(30px,3vw,45px); color: #fff; }
.home-achados__copy > p:not(.eyebrow) { max-width: 450px; margin: 34px 0; color: rgba(255,255,255,.64); font-size: 12px; line-height: 1.75; }
.home-achados__copy .button { color: #11100f!important; background: #fff!important; }
.home-achados__copy .button:hover { color: #fff!important; background: #11100f!important; }
.home-achados__grid { min-width: 0; border-top: 1px solid rgba(255,255,255,.24); }
.home-achado { min-width: 0; border-bottom: 1px solid rgba(255,255,255,.24); }
.home-achado > a { min-width: 0; min-height: 190px; padding: 22px 0; display: grid; grid-template-columns: 34px 145px minmax(0,1fr); align-items: center; gap: clamp(16px,2vw,32px); color: #fff; }
.home-achado__number { align-self: start; padding-top: 5px; color: rgba(255,255,255,.55); font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.home-achado figure { width: 145px; height: 145px; margin: 0; display: grid; place-items: center; overflow: hidden; background: #f1ebe4; }
.home-achado figure img { width: 100%; height: 100%; padding: 10px; object-fit: contain; transition: transform .65s cubic-bezier(.22,1,.36,1); }
.home-achado:hover figure img { transform: scale(1.07) rotate(-2deg); }
.home-achado small { color: #f6c3d0; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.home-achado > a > div { min-width: 0; }
.home-achado h3 { max-width: 520px; margin: 10px 0 18px; overflow-wrap: anywhere; font: 600 clamp(22px,2vw,34px)/1 "Barlow Condensed",sans-serif; letter-spacing: -.02em; text-transform: uppercase; }
.home-achado footer { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.home-achado footer > strong { display: inline-flex; align-items: baseline; color: inherit; font-size: 16px; line-height: 1.2; white-space: nowrap; }
.home-achado footer > strong span { width: auto; height: auto; display: inline; border: 0; border-radius: 0; color: inherit; background: transparent; transform: none; }
.home-achado footer > span { width: 34px; height: 34px; flex: 0 0 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; transition: color .3s,background .3s,transform .3s; }
.home-achado:hover footer > span { color: #a90e31; background: #fff; transform: rotate(45deg); }

/* Brand index — logos intentionally remain rectangular, never circular cards. */
.brand-showcase { position: relative; overflow: hidden; color: #171412; background: #efede7; border-top: 1px solid rgba(17,16,15,.16); }
.brand-showcase::before { content: "BRANDS"; position: absolute; right: -1vw; top: 2vw; color: transparent; -webkit-text-stroke: 1px rgba(17,16,15,.055); font: 800 clamp(130px,22vw,420px)/.7 "Barlow Condensed",sans-serif; letter-spacing: -.065em; pointer-events: none; }
.brand-showcase__head { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1.4fr) minmax(300px,.6fr); align-items: end; gap: clamp(50px,9vw,170px); padding-top: clamp(100px,11vw,190px); padding-bottom: clamp(70px,8vw,130px); }
.brand-showcase__head h2 { margin: clamp(30px,3vw,46px) 0 0; font: 700 clamp(76px,8vw,150px)/.78 "Barlow Condensed",sans-serif; letter-spacing: -.055em; text-transform: uppercase; }
.brand-showcase__head h2 em { color: #a90e31; font-family: "Bodoni Moda",serif; font-weight: 500; text-transform: none; }
.brand-showcase__head>p { max-width: 510px; margin: 0 0 8px; color: #6f6963; font-size: 13px; line-height: 1.8; }
.brand-showcase__meta { display: flex; justify-content: space-between; padding-top: 0; padding-bottom: 22px; color: #77716b; font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.brand-showcase__viewport { position: relative; width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; cursor: grab; touch-action: pan-x pan-y; border-block: 1px solid rgba(17,16,15,.17); background: transparent; }
.brand-showcase__viewport::-webkit-scrollbar { display: none; }
.brand-showcase__viewport:focus-visible { outline: 2px solid #a90e31; outline-offset: -2px; }
.brand-showcase__viewport.is-dragging { cursor: grabbing; user-select: none; }
.brand-showcase__track { width: max-content; display: flex; align-items: stretch; background: transparent; will-change: transform; }
.brand-showcase__item { position: relative; flex: 0 0 clamp(210px,17vw,330px); width: clamp(210px,17vw,330px); aspect-ratio: 1.52; margin: 0; display: grid; place-items: center; overflow: hidden; border-right: 1px solid rgba(17,16,15,.17); background: transparent; }
.brand-showcase__item span { position: absolute; left: 16px; top: 14px; z-index: 2; color: #8a847e; font-size: 7px; font-weight: 800; letter-spacing: .12em; }
.brand-showcase__item img { width: 76%; height: 76%; object-fit: contain; mix-blend-mode: multiply; filter: grayscale(1) contrast(1.55); transform: scale(.86); transition: transform .65s cubic-bezier(.22,1,.36,1),filter .4s,opacity .4s; }
.brand-showcase__item:hover img { filter: grayscale(0) contrast(1.55); transform: scale(.98); }
.brand-showcase__item::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 3px; background: #a90e31; transform: scaleX(0); transform-origin: right; transition: transform .55s cubic-bezier(.22,1,.36,1); }
.brand-showcase__item:hover::after { transform: scaleX(1); transform-origin: left; }
.brand-showcase__foot { display: flex; align-items: center; justify-content: center; gap: clamp(18px,3vw,54px); padding-top: 34px; padding-bottom: 34px; color: #69635d; font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.brand-showcase__foot i { width: 4px; height: 4px; background: #a90e31; transform: rotate(45deg); }

@media (max-width: 1023px) {
  .launch-deck__head { grid-template-columns: 1fr; gap: 40px; }
  .launch-deck__head h2 { font-size: clamp(78px,15vw,125px); }
  .launch-deck__stage { grid-template-columns: 92px minmax(0,1fr); }
  .launch-deck__panel { grid-template-columns: repeat(2,minmax(0,1fr))!important; }
  .launch-deck__control { min-height: 1050px; }
  .home-curation { min-height: auto; display: block; }
  .home-curation__copy { min-height: auto; padding-top: 110px; padding-bottom: 65px; }
  .home-curation__viewport { display: block; padding-bottom: 90px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory; touch-action: pan-x pan-y; }
  .home-curation__viewport::-webkit-scrollbar { display: none; }
  .home-curation__track { padding: 0 7.5vw!important; }
  .home-curation .glee-product-card { flex-basis: min(70vw,330px); width: min(70vw,330px)!important; scroll-snap-align: center; transform: none!important; }
  .home-curation__progress { display: none; }
  .home-achados { grid-template-columns: 1fr; }
  .brand-showcase__head { grid-template-columns: 1fr; }
  .brand-showcase__head>p { max-width: 620px; }
}

@media (max-width: 720px) {
  .launch-deck { padding-inline: 18px; }
  .launch-deck__ghost { top: 0; font-size: 26vw; }
  .launch-deck__head { margin-bottom: 55px; }
  .launch-deck__head h2 { font-size: 20vw; }
  .launch-deck__stage { display: block; }
  .launch-deck__control { min-height: 0; padding: 20px 0; flex-direction: row; align-items: center; border-right: 0; border-bottom: 1px solid rgba(23,20,18,.2); }
  .launch-deck__count strong { font-size: 48px; }
  .launch-deck__progress { width: 90px; height: 2px; margin: 0 18px; }
  .launch-deck__progress i { width: 50%; height: 100%; }
  .launch-deck__control > p { writing-mode: initial; }
  .launch-deck__arrows { margin: 0 0 0 auto; }
  .launch-deck__viewport { padding: 28px 0 34px; }
  .launch-deck__panel { gap: 36px 10px!important; }
  .launch-deck__panel:not(.is-active) { inset: 28px 0 auto 0; width: 100%; }
  .launch-deck .glee-product-card:nth-child(even) { margin-top: 38px!important; }
  .launch-deck .glee-product-card__info h2 { font-size: 17px; }
  .launch-deck__foot span,.launch-deck__foot i { display: none; }
  .launch-deck__foot b { margin-left: 0; }
  .launch-deck__foot b { font-size: 0; }
  .launch-deck__foot b::after { content: "ARRASTE PARA CONTINUAR"; font-size: 7px; }
  .home-curation {
    width: 100%;
    height: 100svh;
    min-height: 100svh;
    display: grid;
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: auto minmax(0,1fr);
    padding: 0;
    overflow: hidden;
  }
  .home-curation__copy {
    min-height: 0;
    padding: clamp(34px,5.5svh,52px) 22px 12px;
  }
  .home-curation__copy .eyebrow { margin-bottom: 18px; }
  .home-curation__copy h2 { max-width: 340px; font-size: clamp(48px,13.5vw,58px); }
  .home-curation__copy > p:not(.eyebrow),
  .home-curation__link,
  .home-curation__progress { display: none; }
  .home-curation__viewport {
    min-height: 0;
    padding: 0;
    display: flex;
    align-items: flex-start;
    overflow: hidden;
    scroll-snap-type: none;
    touch-action: pan-y;
  }
  .home-curation__track {
    height: 100%;
    padding: 10px 22px 24px!important;
    align-items: flex-start;
    gap: 14px;
  }
  .home-curation .glee-product-card {
    flex-basis: min(68vw,285px);
    width: min(68vw,285px)!important;
    scroll-snap-align: none;
  }
  .home-achados { width: 100%; padding-inline: 22px; }
  .home-achados__copy,
  .home-achados__grid,
  .home-achado,
  .home-achado > a { width: 100%; min-width: 0; }
  .home-achados__copy h2 { max-width: 100%; font-size: clamp(52px,15.5vw,64px); overflow-wrap: anywhere; }
  .home-achado > a { grid-template-columns: 26px 105px minmax(0,1fr); gap: 13px; }
  .home-achado figure { width: 105px; height: 125px; }
  .home-achado h3 { font-size: 23px; }
  .home-achado footer > strong { font-size: 14px; }
  .brand-showcase::before { top: 10vw; font-size: 44vw; }
  .brand-showcase__head { padding-top: 100px; padding-bottom: 65px; }
  .brand-showcase__head h2 { font-size: 19vw; }
  .brand-showcase__meta { padding-inline: 22px; }
  .brand-showcase__meta span:first-child { display: none; }
  .brand-showcase__meta span:last-child { margin-left: auto; }
  .brand-showcase__item { flex-basis: min(64vw,270px); width: min(64vw,270px); }
  .brand-showcase__foot { padding-inline: 22px; justify-content: flex-start; overflow: hidden; white-space: nowrap; }
}

@media (max-width: 460px) {
  .launch-deck__intro p { font-size: 11px; }
  .launch-deck__control > p { display: none; }
  .launch-deck__progress { flex: 1; }
  .launch-deck__arrows button { width: 38px; height: 38px; }
  .launch-deck .glee-product-card__info small { display: none; }
  .home-achado > a { grid-template-columns: 22px 90px minmax(0,1fr); }
  .home-achado figure { width: 90px; height: 110px; }
  .home-achado small { font-size: 7px; }
  .home-achado h3 { margin-block: 7px 12px; font-size: 19px; }
  .home-achado footer > span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .home-curation__track { transform: none!important; }
}

/* Scroll palette: a single fixed layer whose background-color is tweened by
   ScrollTrigger as each section boundary crosses the viewport. Flat fill only —
   never a gradient, which would read as a band sweeping across the screen. */
body.home.glee-scroll-palette-ready { background: #faf8f4; }
body.home.glee-scroll-palette-ready .glee-scroll-palette {
  position: fixed;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  background-color: #faf8f4;
  will-change: background-color;
}
body.home.glee-scroll-palette-ready #conteudo > section,
body.home.glee-scroll-palette-ready .footer {
  position: relative;
  z-index: 1;
}
body.home.glee-scroll-palette-ready .trust-rail { z-index: 7; }
body.home.glee-scroll-palette-ready .video-editorial,
body.home.glee-scroll-palette-ready .new-drop,
body.home.glee-scroll-palette-ready .home-curation,
body.home.glee-scroll-palette-ready .home-achados,
body.home.glee-scroll-palette-ready .home-depoimentos,
body.home.glee-scroll-palette-ready .brand-showcase,
body.home.glee-scroll-palette-ready .location,
body.home.glee-scroll-palette-ready .footer {
  background-color: transparent;
}

/* Location film: the section is pinned while ScrollTrigger scrubs the video. */
.location {
  min-height: 100svh;
  padding-top: clamp(110px,12vh,150px);
  padding-right: 0;
  padding-bottom: clamp(72px,9vh,120px);
  grid-template-columns: minmax(320px,.72fr) minmax(0,1.28fr);
  gap: clamp(42px,5vw,96px);
  align-items: center;
  overflow: hidden;
}
.location__stage { display: contents; }
.location__copy { position: relative; z-index: 2; align-self: center; }
.location__copy .eyebrow { margin: 0 0 clamp(34px,4vh,54px); }
.location__copy h2 { margin: 0; }
.location__copy > p:not(.eyebrow) { max-width: 430px; margin: clamp(30px,3.5vh,46px) 0 0; color: rgba(255,255,255,.68); font-size: 13px; line-height: 1.8; }
.location__copy > a { display: inline-block; margin-top: clamp(30px,3.5vh,46px); padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.55); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.location__media { position: relative; width: 100%; height: min(78svh,900px); margin: 0; align-self: center; overflow: hidden; background: #16060a; box-shadow: -24px 32px 90px rgba(28,0,8,.28); }
.location__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg,rgba(22,6,10,.08),transparent 48%,rgba(22,6,10,.28)); }
.location__media video { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.location__video-status { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 20px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; color: rgba(255,255,255,.76); font-size: 7px; font-weight: 800; letter-spacing: .15em; }
.location__video-status i { height: 1px; background: rgba(255,255,255,.34); }
.location__video-status b { font: inherit; }

/* Mega menus must render above the scroll-palette and page sections. */
.site-header { overflow: visible!important; }
.desktop-nav,
.desktop-nav__item { overflow: visible; }
.mega-menu { z-index: 120; }

@media (max-width: 900px) {
  .location {
    position: relative;
    display: block;
    width: 100%;
    height: 220svh;
    min-height: 220svh;
    padding: 0;
    overflow: visible;
    background: #16060a;
  }
  .location__stage {
    position: sticky;
    z-index: 1;
    top: 0;
    display: block;
    width: 100%;
    height: 100vh;
    /* dvh, not svh: svh is the viewport with the browser UI shown, so once the URL
       bar retracts on scroll the viewport grows and a strip of the section's own
       background shows below the film. dvh tracks the viewport as it changes. */
    height: 100dvh;
    overflow: hidden;
    background: #16060a;
    contain: paint;
  }
  .location__copy {
    position: absolute;
    z-index: 3;
    top: clamp(92px,13svh,122px);
    left: 6vw;
    right: 6vw;
    width: auto;
    max-width: 330px;
    pointer-events: none;
  }
  .location__copy .eyebrow { margin-bottom: 18px; }
  .location__copy h2 { font-size: clamp(48px,15vw,68px); line-height: .8; }
  .location__copy > p:not(.eyebrow) { max-width: 285px; margin-top: 18px; font-size: 11px; line-height: 1.55; }
  .location__copy > a { margin-top: 18px; pointer-events: auto; }
  .location__media { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; box-shadow: none; }
  .location__media::after { background: linear-gradient(180deg,rgba(22,6,10,.72) 0%,rgba(22,6,10,.34) 44%,rgba(22,6,10,.08) 68%,rgba(22,6,10,.34) 100%); }
  .location__media video { display: block; object-position: 58% center; transform: translateZ(0); will-change: contents; }
  .location__video-status { left: 6vw; right: 6vw; bottom: 24px; gap: 10px; }
}

@media print {
  .glee-scroll-palette { display: none!important; }
}

/* ---------------------------------------------------------------- Depoimentos
   Mesma estrutura da videoteca (reusa .video-editorial e .editorial-video), mas
   sobre fundo branco: e a unica secao clara depois do vermelho dos achados, e o
   contraste e proposital — a fala de cliente respira melhor no branco.
   O fundo real vem da camada de paleta; aqui so entram os ajustes de contraste. */
.home-depoimentos { background: #fff; }
.home-depoimentos .video-editorial__lettering { -webkit-text-stroke: 2px rgba(17,16,15,.09); }
.home-depoimentos .video-editorial__footer div { background: rgba(17,16,15,.14); }
/* O card e escuro dentro da secao clara: a borda some no branco sem esta linha. */
.home-depoimentos .editorial-video { box-shadow: 0 24px 60px rgba(17,16,15,.10); }
