:root{
  color-scheme:dark;
  --bg:#000;
  --text:#f5f5f7;
  --muted:#9b9ba1;
  --orange:#ff5a00;
  --line:rgba(255,255,255,.13);
  --page-pad:clamp(24px,5vw,84px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#000}
body{margin:0;background:#000;color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:84px;padding:0 var(--page-pad);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(0,0,0,.88),rgba(0,0,0,0));transition:background .3s ease,backdrop-filter .3s ease}
.site-header.is-scrolled{background:rgba(0,0,0,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}
.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:25px;letter-spacing:-.04em}
.brand img{width:28px;height:38px;object-fit:contain}
.desktop-nav{display:flex;gap:34px;color:#d2d2d7;font-size:14px}
.desktop-nav a{transition:color .2s}.desktop-nav a:hover{color:#fff}
.menu-button{width:42px;height:42px;border:0;background:transparent;display:none;place-items:center;gap:6px;cursor:pointer}
.menu-button span{display:block;width:22px;height:1px;background:#fff;transition:transform .25s ease}
.mobile-menu{position:fixed;z-index:45;inset:0;background:rgba(0,0,0,.97);padding:130px 28px 40px;display:flex;flex-direction:column;gap:24px;font-size:36px;letter-spacing:-.04em}
.mobile-menu[hidden]{display:none}
.hero{position:relative;min-height:100svh;padding:140px var(--page-pad) 70px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:center;overflow:hidden;background:#000;isolation:isolate}
.hero-media{position:absolute;inset:0;z-index:-4;background:#030303 url('../images/hero-city-desktop.webp?v=1.8.0') center/cover no-repeat;transform:scale(1.015);filter:saturate(.92) contrast(1.04)}
.hero-vignette{position:absolute;inset:0;z-index:-3;background:
  radial-gradient(ellipse at 69% 45%,rgba(0,0,0,.10) 0%,rgba(0,0,0,.42) 42%,rgba(0,0,0,.72) 76%),
  linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.80) 33%,rgba(0,0,0,.28) 64%,rgba(0,0,0,.48) 100%),
  linear-gradient(180deg,rgba(0,0,0,.42) 0%,transparent 24%,rgba(0,0,0,.38) 100%);pointer-events:none}
.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.018),transparent 65%);pointer-events:none}
.hero-copy{position:relative;z-index:2;max-width:760px}
.eyebrow{text-transform:uppercase;letter-spacing:.23em;font-size:12px;color:#b7b7bd;margin:0 0 25px}
h1{font-size:clamp(54px,7vw,116px);line-height:.92;letter-spacing:-.065em;font-weight:430;margin:0;max-width:11ch}
h1 strong{font-weight:560;color:var(--orange)}
.hero-subtitle{max-width:560px;margin:34px 0 0;color:#d0d0d4;font-size:clamp(17px,1.5vw,22px);line-height:1.55;text-shadow:0 2px 22px rgba(0,0,0,.85)}
.primary-action,.platform-action{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:15px 20px;margin-top:34px;font-size:14px;min-width:220px;transition:background .25s,border-color .25s,transform .25s}
.primary-action:hover,.platform-action:hover{background:#fff;color:#000;border-color:#fff;transform:translateY(-2px)}
.hero-mark{position:relative;z-index:2;display:grid;place-items:center;min-height:560px;align-self:center}
.hero-mark:before{content:"";position:absolute;width:min(92%,620px);height:min(92%,620px);border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 38%,rgba(0,0,0,.10) 67%,transparent 76%);filter:blur(10px)}
.hero-mark img{position:relative;z-index:2;width:min(54%,410px);filter:drop-shadow(0 34px 38px rgba(0,0,0,.88));animation:heroFloat 6.4s ease-in-out infinite,heroTilt 10s ease-in-out infinite;transform-origin:50% 58%;will-change:transform}
.hero-glow{position:absolute;z-index:1;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,104,0,.16),transparent 66%);filter:blur(28px)}
.hero-mark:after{content:"";position:absolute;z-index:1;bottom:15%;width:38%;height:8px;background:rgba(255,255,255,.42);border-radius:50%;filter:blur(12px);box-shadow:0 0 52px 13px rgba(255,98,0,.22)}
.scroll-cue{position:absolute;left:var(--page-pad);bottom:35px;display:flex;align-items:center;gap:12px;color:#aaa;font-size:12px}
.scroll-cue span{border:1px solid rgba(255,255,255,.25);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff}
.platform{position:relative;min-height:82svh;display:flex;align-items:center;padding:100px var(--page-pad);overflow:hidden;isolation:isolate}
.platform-media,.platform-shade{position:absolute;inset:0}
.platform-media{z-index:-3;background-size:cover;background-position:center;transform:scale(1.03);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.platform.in-view .platform-media{transform:scale(1)}
.platform-shade{z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.78) 32%,rgba(0,0,0,.28) 62%,rgba(0,0,0,.08) 100%)}
.platform:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.platform-sons .platform-media{background-image:url('../images/sons-desktop.webp?v=1.8.0')}
.platform-acontece .platform-media{background-image:url('../images/acontece-desktop.webp?v=1.8.0')}
.platform-link .platform-media{background-image:url('../images/link-desktop.webp?v=1.8.0')}
.platform-club .platform-media{background-image:url('../images/club-desktop.webp?v=1.8.0')}
.platform-content{width:min(520px,46vw);display:flex;flex-direction:column;align-items:flex-start}
.platform-index{font-size:clamp(46px,6vw,90px);line-height:1;color:rgba(255,255,255,.16);font-weight:300;margin-bottom:20px}
.platform-logo{object-fit:contain;object-position:left center;margin-bottom:26px;filter:drop-shadow(0 8px 25px rgba(0,0,0,.5))}
.logo-sons{width:min(310px,72%)}
.logo-acontece{width:min(360px,82%)}
.logo-link{width:min(350px,82%)}
.logo-club{width:min(380px,88%)}
.platform-content p{font-size:clamp(18px,1.55vw,24px);line-height:1.45;color:#d1d1d6;max-width:410px;margin:0}
.platform-sons{--accent:#ff5a00}.platform-acontece{--accent:#ff4c00}.platform-link{--accent:#4169ff}.platform-club{--accent:#9c43ff}
.platform-action{border-color:color-mix(in srgb,var(--accent) 65%,white 10%);box-shadow:0 0 0 1px rgba(0,0,0,.2) inset}
.purpose{min-height:72svh;padding:120px var(--page-pad);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at center,rgba(255,88,0,.08),transparent 42%),#000}
.purpose-symbol{font-size:76px;line-height:1;color:var(--orange);font-weight:200}.purpose p{margin:20px 0 10px;color:#8e8e93;font-size:15px;text-transform:uppercase;letter-spacing:.18em}.purpose h2{margin:0;max-width:900px;font-size:clamp(34px,5vw,76px);line-height:1.03;letter-spacing:-.045em;font-weight:390}.purpose h2 strong{color:var(--orange);font-weight:540}.back-top{margin-top:42px;color:#b6b6bb;font-size:13px}
.site-footer{padding:34px var(--page-pad) 46px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:24px;color:#727277;font-size:12px}.site-footer div{display:flex;gap:24px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
@keyframes heroFloat{0%,100%{translate:0 0}50%{translate:0 -16px}}
@keyframes heroTilt{0%,100%{rotate:0deg}35%{rotate:-1.4deg}70%{rotate:1.2deg}}
@media (max-width:900px){
  .desktop-nav{display:none}.menu-button{display:grid}.site-header{height:72px;padding:0 22px}.brand{font-size:22px}.brand img{width:24px;height:33px}
  .hero{grid-template-columns:1fr;align-content:center;padding:104px 24px 80px;min-height:100svh}.hero-media{background-image:url('../images/hero-city-mobile.webp?v=1.8.0');background-position:60% center}.hero-vignette{background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.38) 34%,rgba(0,0,0,.88) 72%,#000 100%),linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.18) 80%)}.hero-copy{order:2}.hero-mark{order:1;min-height:300px;margin-bottom:8px}.hero-mark:before{width:88%;height:88%}.hero-mark img{width:min(44vw,220px)}.hero-mark:after{bottom:8%;width:34%}
  h1{font-size:clamp(48px,13vw,74px);max-width:9ch}.hero-subtitle{font-size:16px;margin-top:24px}.eyebrow{display:none}.primary-action{margin-top:26px}.scroll-cue{display:none}
  .platform{min-height:100svh;padding:70px 24px 56px;align-items:flex-end}.platform-media{background-position:center}.platform-shade{background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.18) 42%,rgba(0,0,0,.92) 82%,#000 100%)}
  .platform-sons .platform-media{
  background-image:url('../images/sons-mobile.webp?v=1.8.0');
  background-image:-webkit-image-set(url('../images/sons-mobile.webp?v=1.8.0') 1x,url('../images/sons-mobile@2x.webp?v=1.8.0') 2x);
  background-image:image-set(url('../images/sons-mobile.webp?v=1.8.0') 1x,url('../images/sons-mobile@2x.webp?v=1.8.0') 2x);
}.platform-acontece .platform-media{
  background-image:url('../images/acontece-mobile.webp?v=1.8.0');
  background-image:-webkit-image-set(url('../images/acontece-mobile.webp?v=1.8.0') 1x,url('../images/acontece-mobile@2x.webp?v=1.8.0') 2x);
  background-image:image-set(url('../images/acontece-mobile.webp?v=1.8.0') 1x,url('../images/acontece-mobile@2x.webp?v=1.8.0') 2x);
}.platform-link .platform-media{
  background-image:url('../images/link-mobile.webp?v=1.8.0');
  background-image:-webkit-image-set(url('../images/link-mobile.webp?v=1.8.0') 1x,url('../images/link-mobile@2x.webp?v=1.8.0') 2x);
  background-image:image-set(url('../images/link-mobile.webp?v=1.8.0') 1x,url('../images/link-mobile@2x.webp?v=1.8.0') 2x);
}.platform-club .platform-media{
  background-image:url('../images/club-mobile.webp?v=1.8.0');
  background-image:-webkit-image-set(url('../images/club-mobile.webp?v=1.8.0') 1x,url('../images/club-mobile@2x.webp?v=1.8.0') 2x);
  background-image:image-set(url('../images/club-mobile.webp?v=1.8.0') 1x,url('../images/club-mobile@2x.webp?v=1.8.0') 2x);
}
  .platform-content{width:100%}.platform-index{font-size:44px;margin-bottom:12px}.platform-logo{margin-bottom:18px}.logo-sons{width:220px}.logo-acontece{width:260px}.logo-link{width:255px}.logo-club{width:270px}.platform-content p{font-size:17px;max-width:320px}.platform-action{margin-top:22px;min-width:205px;padding:13px 18px}
  .purpose{min-height:78svh;padding:90px 24px}.purpose-symbol{font-size:62px}.purpose h2{font-size:clamp(36px,11vw,58px)}
  .site-footer{padding:28px 24px 40px;flex-direction:column}.site-footer div{gap:18px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Refinamento responsivo v1.1 — composições e recortes por classe de dispositivo */
.platform-media{
  background-repeat:no-repeat;
  background-color:#050505;
  will-change:transform;
}

/* Notebooks e desktops convencionais */
@media (min-width:901px) and (max-width:1599px){
  .platform{min-height:78svh}
  .platform-sons .platform-media{background-position:64% center}
  .platform-acontece .platform-media{background-position:58% center}
  .platform-link .platform-media{background-position:60% center}
  .platform-club .platform-media{background-position:64% center}
}

/* Monitores amplos: preserva escala e evita conteúdo excessivamente esticado */
@media (min-width:1600px){
  :root{--page-pad:clamp(72px,6vw,132px)}
  .hero{grid-template-columns:minmax(0,1.05fr) minmax(420px,.85fr)}
  .hero-copy{max-width:900px}
  .platform{min-height:840px}
  .platform-content{width:min(610px,40vw)}
  .platform-sons .platform-media{background-position:65% center}
  .platform-acontece .platform-media{background-position:60% center}
  .platform-link .platform-media{background-position:62% center}
  .platform-club .platform-media{background-position:66% center}
}

/* Tablets: mantém a composição panorâmica, com texto mais compacto */
@media (min-width:701px) and (max-width:900px){
  .hero{padding-inline:clamp(42px,7vw,70px)}
  .platform{padding-inline:clamp(42px,7vw,70px);min-height:88svh}
  .platform-content{max-width:520px}
  .platform-media{background-position:center}
  .site-footer{padding-inline:clamp(42px,7vw,70px)}
}

/* Celulares: composição vertical dedicada e enquadramento individual por plataforma */
@media (max-width:700px){
  .hero{min-height:100dvh;padding-bottom:max(72px,calc(48px + env(safe-area-inset-bottom)))}
  .platform{min-height:100dvh;padding-top:max(86px,calc(64px + env(safe-area-inset-top)));padding-bottom:max(52px,calc(32px + env(safe-area-inset-bottom)))}
  .platform-media{transform:scale(1.015)}
  .platform.in-view .platform-media{transform:scale(1)}
  .platform-sons .platform-media{background-position:56% center}
  .platform-acontece .platform-media{background-position:54% center}
  .platform-link .platform-media{background-position:58% center}
  .platform-club .platform-media{background-position:62% center}
  .platform-content{padding-bottom:4px}
  .platform-logo{max-height:92px}
}

/* Celulares baixos ou em paisagem: impede corte do conteúdo e reduz a escala do hero */
@media (max-width:900px) and (max-height:680px), (max-width:900px) and (orientation:landscape){
  .hero{min-height:auto;padding-top:92px;padding-bottom:54px;grid-template-columns:.72fr 1fr;gap:28px}
  .hero-mark{order:2;min-height:260px;margin:0}
  .hero-copy{order:1}
  .hero-mark img{width:min(28vw,190px)}
  h1{font-size:clamp(42px,7.5vw,64px)}
  .platform{min-height:720px;align-items:flex-end}
}

/* Refinamento mobile v1.2 — arte vertical legível e seções full-bleed */
@media (max-width:700px){
  .platform{
    min-height:92dvh;
    padding:76px 28px max(44px,calc(28px + env(safe-area-inset-bottom)));
    align-items:flex-end;
  }
  .platform-media{
    background-size:cover;
    background-position:center center !important;
    transform:none;
  }
  .platform.in-view .platform-media{transform:none}
  .platform-shade{
    background:
      linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.08) 38%,rgba(0,0,0,.56) 67%,rgba(0,0,0,.96) 100%),
      linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.05) 72%);
  }
  .platform-content{
    width:min(100%,430px);
    padding-bottom:8px;
    text-shadow:0 2px 18px rgba(0,0,0,.72);
  }
  .platform-index{font-size:38px;margin-bottom:10px}
  .platform-logo{margin-bottom:14px;max-height:none}
  .logo-sons{width:min(58vw,248px)}
  .logo-acontece{width:min(70vw,292px)}
  .logo-link{width:min(68vw,282px)}
  .logo-club{width:min(70vw,292px)}
  .platform-content p{font-size:18px;line-height:1.42;max-width:330px}
  .platform-action{font-size:15px;min-width:215px;padding:14px 19px;margin-top:20px;background:rgba(0,0,0,.24);backdrop-filter:blur(8px)}
}

/* Checkpoint v1.5.0 — artes aprovadas separadas, sem ampliação artificial */
.hero-media,
.platform-media{
  background:none!important;
  transform:none!important;
  overflow:hidden;
}
.hero-media img,
.platform-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
  transform:none!important;
  filter:none;
}

/* Enquadramento aprovado no desktop/notebook */
@media (min-width:901px){
  .hero-media img{object-position:center center}
  .platform-sons .platform-media img{object-position:center center}
  .platform-acontece .platform-media img{object-position:center center}
  .platform-link .platform-media img{object-position:center center}
  .platform-club .platform-media img{object-position:center center}
}

/* Enquadramento móvel dedicado a partir das artes aprovadas */
@media (max-width:900px){
  .hero-media img{
    width:auto;
    min-width:100%;
    max-width:none;
    object-fit:cover;
    object-position:55% center;
  }
  .platform-media img{
    width:auto;
    min-width:100%;
    max-width:none;
    object-fit:cover;
  }
  .platform-sons .platform-media img{object-position:53% center}
  .platform-acontece .platform-media img{object-position:63% center}
  .platform-link .platform-media img{object-position:58% center}
  .platform-club .platform-media img{object-position:72% center}
}

/* Em telas muito largas, preserva a resolução nativa e completa as laterais com preto. */
@media (min-width:1900px){
  .hero-media,
  .platform-media{background:#000!important;display:flex;justify-content:center}
  .hero-media img,
  .platform-media img{
    width:auto;
    max-width:1717px;
    min-width:0;
    height:100%;
    object-fit:cover;
  }
  .platform-acontece .platform-media img,
  .platform-link .platform-media img,
  .platform-club .platform-media img{max-width:1672px}
}


/* Production media pipeline v1.8.0 */
.hero-media,.platform-media{background-image:none!important;transform:none!important;filter:none!important;display:grid;place-items:center;overflow:hidden}
.hero-media picture,.platform-media picture{display:block;width:100%;height:100%}
.hero-media img,.platform-media img{width:100%;height:100%;object-fit:cover;object-position:center;max-width:none}
.platform.in-view .platform-media{transform:none!important}
@media (min-width:1720px){
  .hero-media,.platform-media{background:#000}
  .hero-media img,.platform-media img{width:min(100%,1717px);height:100%;object-fit:cover}
  .platform-acontece .platform-media img,.platform-link .platform-media img,.platform-club .platform-media img{width:min(100%,1672px)}
}
@media (max-width:700px){
  .hero-media img,.platform-media img{width:100%;height:100%;object-fit:cover}
  .hero-media img{object-position:58% center}
  .platform-sons .platform-media img{object-position:56% center}
  .platform-acontece .platform-media img{object-position:57% center}
  .platform-link .platform-media img{object-position:56% center}
  .platform-club .platform-media img{object-position:70% center}
}

/* Checkpoint v1.8.0 — full-bleed desktop consistente, sem distorção */
@media (min-width:901px){
  .hero-media,
  .platform-media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    background:#000;
    overflow:hidden;
  }

  .hero-media picture,
  .platform-media picture{
    display:block;
    width:100%;
    height:100%;
  }

  .hero-media img,
  .platform-media img,
  .platform-acontece .platform-media img,
  .platform-link .platform-media img,
  .platform-club .platform-media img{
    display:block;
    width:100%;
    max-width:none;
    min-width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    transform:none;
  }
}

/* Checkpoint v1.8.0 — refinamento premium de navegação, marcas e transições */
:root{
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --logo-standard-width:clamp(250px,23vw,340px);
}

/* Ícone de menu mais fino, preciso e animado */
.menu-button{
  position:relative;
  z-index:60;
  width:46px;
  height:46px;
  padding:0;
  border-radius:50%;
  transition:background .35s var(--ease-premium),transform .35s var(--ease-premium);
  -webkit-tap-highlight-color:transparent;
}
.menu-button:hover{background:rgba(255,255,255,.07)}
.menu-button:active{transform:scale(.94)}
.menu-button .menu-line{
  position:absolute;
  left:11px;
  width:24px;
  height:1px;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  transform-origin:center;
  transition:top .42s var(--ease-premium),transform .42s var(--ease-premium),width .42s var(--ease-premium),opacity .25s ease;
}
.menu-line-top{top:18px}
.menu-line-bottom{top:27px}
.menu-button[aria-expanded="true"] .menu-line-top{top:22.5px;transform:rotate(45deg)}
.menu-button[aria-expanded="true"] .menu-line-bottom{top:22.5px;transform:rotate(-45deg)}

/* Menu móvel sem aparecimento brusco */
.mobile-menu{
  visibility:hidden;
  pointer-events:none;
  opacity:0;
  transform:translateY(-14px);
  display:flex;
  background:rgba(4,4,5,.86);
  backdrop-filter:blur(28px) saturate(125%);
  -webkit-backdrop-filter:blur(28px) saturate(125%);
  transition:opacity .46s ease,transform .58s var(--ease-premium),visibility 0s linear .58s;
}
.mobile-menu::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 82% 10%,rgba(255,90,0,.10),transparent 34%);
  pointer-events:none;
}
.mobile-menu.is-open{
  visibility:visible;
  pointer-events:auto;
  opacity:1;
  transform:none;
  transition-delay:0s;
}
.mobile-menu a{
  position:relative;
  display:flex;
  align-items:baseline;
  gap:15px;
  width:max-content;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .42s ease,transform .55s var(--ease-premium),color .25s ease;
}
.mobile-menu a span{
  width:22px;
  font-size:10px;
  letter-spacing:.18em;
  color:rgba(255,255,255,.38);
}
.mobile-menu.is-open a{opacity:1;transform:none}
.mobile-menu.is-open a:nth-child(1){transition-delay:.10s}
.mobile-menu.is-open a:nth-child(2){transition-delay:.16s}
.mobile-menu.is-open a:nth-child(3){transition-delay:.22s}
.mobile-menu a:hover{color:var(--orange)}
body.menu-open{overflow:hidden;touch-action:none}

/* Padronização real da largura das quatro marcas, sem deformação */
.platform-logo,
.logo-sons,
.logo-acontece,
.logo-link,
.logo-club{
  width:var(--logo-standard-width);
  max-width:min(78vw,340px);
  height:auto;
  object-fit:contain;
  object-position:left center;
}

/* Entrada editorial em camadas, mais suave e menos genérica */
.platform-content.reveal{
  opacity:1;
  transform:none;
}
.platform-content.reveal > *{
  opacity:0;
  transform:translateY(24px);
  filter:blur(5px);
  transition:opacity .72s ease,transform .9s var(--ease-premium),filter .72s ease;
}
.platform-content.reveal.is-visible > *{opacity:1;transform:none;filter:none}
.platform-content.reveal.is-visible > *:nth-child(1){transition-delay:.02s}
.platform-content.reveal.is-visible > *:nth-child(2){transition-delay:.10s}
.platform-content.reveal.is-visible > *:nth-child(3){transition-delay:.18s}
.platform-content.reveal.is-visible > *:nth-child(4){transition-delay:.26s}

.hero-copy.reveal,.hero-mark.reveal{
  transition-duration:1s;
  transition-timing-function:var(--ease-premium);
}
.hero-copy.reveal{transform:translateY(30px)}
.hero-mark.reveal{transform:translateY(18px) scale(.985)}
.hero-copy.reveal.is-visible,.hero-mark.reveal.is-visible{transform:none}

/* Fundo com movimento quase imperceptível, sem zoom permanente nem perda de nitidez */
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  .platform-media img{
    transform:scale(1.012);
    transition:transform 1.8s var(--ease-premium);
    will-change:transform;
  }
  .platform.in-view .platform-media img{transform:scale(1)}
}

/* Botões com brilho discreto e resposta tátil refinada */
.primary-action,.platform-action{
  position:relative;
  overflow:hidden;
  transition:background .35s ease,border-color .35s ease,color .35s ease,transform .35s var(--ease-premium),box-shadow .35s ease;
}
.primary-action::before,.platform-action::before{
  content:"";
  position:absolute;
  top:-120%;
  left:-35%;
  width:28%;
  height:340%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  transform:rotate(18deg) translateX(-220%);
  transition:transform .8s var(--ease-premium);
  pointer-events:none;
}
.primary-action:hover::before,.platform-action:hover::before{transform:rotate(18deg) translateX(620%)}
.primary-action:active,.platform-action:active{transform:translateY(0) scale(.98)}

/* Cabeçalho refinado ao rolar */
.site-header{
  transition:background .45s ease,backdrop-filter .45s ease,border-color .45s ease,height .45s var(--ease-premium);
}
.site-header.is-scrolled{box-shadow:0 12px 40px rgba(0,0,0,.20)}

@media (max-width:900px){
  :root{--logo-standard-width:min(66vw,280px)}
  .mobile-menu{padding:124px 30px 42px;font-size:clamp(34px,10vw,48px);gap:25px}
  .platform-logo,
  .logo-sons,
  .logo-acontece,
  .logo-link,
  .logo-club{width:var(--logo-standard-width);max-width:78vw}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Checkpoint v1.10.0 — marca mobile -20% e novo ícone oficial */
.brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  line-height:0;
}
.brand img{
  display:block;
  width:clamp(122px,10.5vw,154px);
  height:auto;
  max-height:48px;
  object-fit:contain;
  object-position:left center;
}
@media (max-width:900px){
  .brand img{
    width:94.4px; /* 20% menor que os 118px homologados no mobile */
    max-height:34.4px;
  }
}
