.landing-page { min-height: 100vh; background: #050506; color: #f8f8f9; }
.landing-page::before { display: none; }
.landing-page .page-texture { z-index: 0; opacity: .22; }
.landing-page .site-main { width: 100%; min-height: 100vh; margin: 0; }
.landing-page .flash { position: fixed; z-index: 120; top: 76px; left: 50%; width: min(560px,calc(100% - 30px)); margin: 14px 0; transform: translateX(-50%); border-color: rgba(255,48,56,.5); background: rgba(18,8,10,.96); color: #fff; box-shadow: 0 18px 50px rgba(0,0,0,.38); backdrop-filter: blur(14px); }
.home-page { position: relative; z-index: 1; min-height: 100vh; overflow: clip; background: #060607; color: #f7f7f8; }
.home-header { position: relative; z-index: 30; width: min(1320px, calc(100% - 48px)); min-height: 82px; margin: 0 auto; display: flex; align-items: center; gap: 30px; }
.home-header::after { content: ""; position: absolute; right: 50%; bottom: 0; width: 100vw; height: 1px; transform: translateX(50%); background: rgba(255,255,255,.09); }
.home-brand { display: inline-flex; flex-direction: column; flex: 0 0 auto; line-height: .85; transform: skew(-6deg); }
.home-brand span { color: #fff; font-size: 27px; font-weight: 1000; letter-spacing: -.08em; text-shadow: 0 4px 18px rgba(0,0,0,.45); }
.home-brand small { margin-top: 6px; color: #ff2029; font-size: 9px; font-weight: 1000; letter-spacing: .17em; text-align: center; }
.home-nav { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.home-nav a { position: relative; padding: 29px 13px 25px; color: #c8c8cb; font-size: 13px; font-weight: 800; transition: color .18s ease; }
.home-nav a::after { content: ""; position: absolute; left: 13px; right: 13px; bottom: 16px; height: 2px; transform: scaleX(0); background: #f01922; transition: transform .18s ease; }
.home-nav a:hover, .home-nav a.active { color: #fff; }
.home-nav a:hover::after, .home-nav a.active::after { transform: scaleX(1); }
.home-login-button { min-height: 46px; padding-inline: 20px; }
.twitch-logo { width: 20px; height: 20px; display: block; flex: 0 0 auto; object-fit: contain; }

.home-hero { position: relative; isolation: isolate; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.08); }
.home-hero-background { position: absolute; z-index: -5; inset: 0; background-image: url("../img/home/background-banner-v2.webp"); background-position: center; background-size: cover; transform: scale(1.015); animation: homeBackgroundDrift 18s ease-in-out infinite alternate; }
.home-hero::before { content: ""; position: absolute; z-index: -4; inset: 0; background: linear-gradient(90deg,rgba(2,2,3,.9) 0%,rgba(5,1,2,.76) 38%,rgba(18,0,2,.24) 66%,rgba(3,0,1,.2) 100%),linear-gradient(180deg,rgba(4,4,5,.06),rgba(4,4,5,.22) 68%,#080809 100%); }
.home-hero::after { content: ""; position: absolute; z-index: -3; inset: 0; opacity: .25; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E"); mix-blend-mode: soft-light; pointer-events: none; }
.home-hero-glow { position: absolute; z-index: -2; width: 760px; height: 760px; top: 0; left: 58%; border-radius: 50%; background: radial-gradient(circle,rgba(235,19,28,.24),rgba(150,0,8,.06) 50%,transparent 72%); filter: blur(18px); }
.home-carousel-stage { position: relative; min-height: 700px; overflow: hidden; }
.home-banner { position: absolute; z-index: 1; inset: 0; visibility: hidden; opacity: 0; pointer-events: none; transform: translate3d(42px,0,0) scale(.992); transition: opacity .68s ease,transform .68s cubic-bezier(.22,.8,.25,1),visibility 0s linear .68s; }
.home-banner::before { content: ""; position: absolute; z-index: -1; inset: 0; pointer-events: none; opacity: 0; transition: opacity .68s ease; }
.home-banner-ifood::before { background: radial-gradient(circle at 75% 32%,rgba(255,137,30,.17),transparent 31%); }
.home-banner-battle::before { background: radial-gradient(circle at 73% 42%,rgba(255,15,27,.25),rgba(91,0,7,.08) 40%,transparent 66%); }
.home-banner.is-active { z-index: 2; visibility: visible; opacity: 1; pointer-events: auto; transform: translate3d(0,0,0) scale(1); transition-delay: 0s; }
.home-banner.is-active::before { opacity: 1; }
.home-hero-inner { width: min(1320px,calc(100% - 48px)); min-height: 700px; margin: 0 auto; display: grid; grid-template-columns: minmax(0,.9fr) minmax(500px,1.1fr); align-items: center; gap: 18px; }
.home-hero-copy { position: relative; z-index: 10; padding: 56px 0 124px; }
.home-kicker { display: inline-flex; align-items: center; gap: 9px; color: #ff4249; font-size: 10px; font-weight: 1000; letter-spacing: .19em; }
.home-kicker::before { content: ""; width: 30px; height: 2px; background: currentColor; }
.home-hero-copy h1 { margin: 18px 0 20px; display: flex; flex-direction: column; font-size: clamp(65px,6.2vw,96px); font-weight: 1000; font-style: italic; line-height: .84; letter-spacing: -.075em; text-shadow: 0 12px 42px rgba(0,0,0,.54); }
.home-hero-copy h1 span { color: #fff; }
.home-hero-copy h1 em { margin-top: 12px; color: #ed111a; background: linear-gradient(180deg,#ff353d 0%,#d3070f 68%,#8f0007 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.home-hero-copy > p { max-width: 570px; margin: 0; padding-left: 20px; border-left: 4px solid #e3131b; color: #d1d1d4; font-size: clamp(16px,1.5vw,21px); font-weight: 650; line-height: 1.5; }
.home-hero-copy > p strong { color: #ff3941; font-style: italic; }
.home-banner-action-row { margin-top: 29px; display: flex; align-items: center; gap: 17px; }
.home-banner-action-row .button { min-height: 48px; padding-inline: 21px; box-shadow: 0 14px 34px rgba(188,0,10,.28); }
.home-banner-action-row .button b { margin-left: 5px; font-size: 18px; }
.home-banner-action-row small { max-width: 150px; color: #929298; font-size: 10px; font-weight: 700; line-height: 1.4; }
.home-scene { position: relative; z-index: 6; align-self: stretch; min-height: 700px; }
.home-character-shadow { position: absolute; z-index: 1; width: 78%; height: 82px; right: 1%; bottom: -5px; border-radius: 50%; background: rgba(0,0,0,.72); filter: blur(26px); }
.ifood-visual { position: absolute; z-index: 4; width: 780px; height: 780px; right: -120px; bottom: -45px; }
.home-moto { position: absolute; z-index: 6; inset: 0; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 28px 30px rgba(0,0,0,.42)); }
.home-banner.is-active .home-moto { animation: motoEnter .82s cubic-bezier(.2,.86,.24,1) both; }

.ifood-food-emitter { position: absolute; z-index: 5; left: 69.2%; top: 50.5%; width: 1px; height: 1px; pointer-events: none; }
.ifood-bag-glow { position: absolute; z-index: 1; left: 0; top: 0; width: 150px; height: 96px; transform: translate(-50%,-50%) scale(.4); border-radius: 50%; background: radial-gradient(circle,rgba(255,183,72,.56),rgba(226,17,25,.2) 48%,transparent 72%); filter: blur(13px); opacity: 0; }
.home-banner.is-active .ifood-bag-glow { animation: bagGlowFromBox 2.8s ease-out .2s both; }
.ifood-food-flight { position: absolute; z-index: 5; left: 0; top: 0; display: block; width: var(--food-size); height: var(--food-size); margin: calc(var(--food-size) / -2) 0 0 calc(var(--food-size) / -2); opacity: 0; pointer-events: none; transform-origin: center; will-change: transform,opacity; }
.ifood-food-flight img { width: 100%; height: 100%; display: block; object-fit: contain; filter: drop-shadow(0 15px 18px rgba(0,0,0,.58)); transform-origin: center; }
.ifood-fries { --food-size:73px; --launch-delay:.10s; --start-r:7deg; --final-r:-8deg; --lift-x:0px; --lift-y:-165px; --final-x:88px; --final-y:-247px; --hover-x:6px; --hover-y:-8px; }
.ifood-drink { --food-size:146px; --launch-delay:.34s; --start-r:-7deg; --final-r:10deg; --lift-x:10px; --lift-y:-180px; --final-x:172px; --final-y:-180px; --hover-x:8px; --hover-y:-6px; }
.ifood-burger { --food-size:97px; --launch-delay:.58s; --start-r:8deg; --final-r:-6deg; --lift-x:4px; --lift-y:-155px; --final-x:214px; --final-y:-44px; --hover-x:7px; --hover-y:-7px; }
.home-banner.is-active .ifood-food-flight { animation: ifoodRiseFromBox 2.45s cubic-bezier(.17,.78,.2,1) var(--launch-delay) forwards; }
.home-banner.is-active .ifood-food-flight img { animation: ifoodFoodHover 3.1s ease-in-out calc(var(--launch-delay) + 2.45s) infinite alternate; }
.home-battle-character { position: absolute; z-index: 6; height: 664px; width: auto; max-width: none; right: 58px; top: 24px; bottom: auto; object-fit: contain; filter: drop-shadow(0 28px 30px rgba(0,0,0,.44)); }
.home-banner.is-active .home-battle-character { animation: battleCharacterEnter .82s cubic-bezier(.2,.86,.24,1) both; }
.battle-energy-ring { position: absolute; z-index: 2; width: 545px; height: 545px; right: 20px; top: 72px; border: 1px solid rgba(255,49,58,.22); border-radius: 50%; background: radial-gradient(circle,rgba(221,10,20,.15),transparent 63%); box-shadow: 0 0 80px rgba(227,19,27,.13),inset 0 0 80px rgba(227,19,27,.1); }
.home-banner.is-active .battle-energy-ring { animation: battlePulse 3.4s ease-in-out infinite alternate; }
.battle-crest { position: absolute; z-index: 3; width: 205px; aspect-ratio: 1; right: 24%; top: 34%; display: grid; place-items: center; opacity: .26; clip-path: polygon(50% 0,92% 20%,82% 78%,50% 100%,18% 78%,8% 20%); background: linear-gradient(145deg,#ff3b44,#4e0005 58%,#111116); transform: rotate(-5deg); }
.battle-crest::before { content: ""; position: absolute; inset: 15px; clip-path: inherit; background: #120104; }
.battle-crest span { position: relative; z-index: 1; color: #ff3640; font-size: 76px; text-shadow: 0 0 26px rgba(255,30,40,.65); }
.battle-streaks { position: absolute; z-index: 4; inset: 0; overflow: hidden; pointer-events: none; }
.battle-streaks i { position: absolute; width: 190px; height: 2px; right: 3%; top: 24%; background: linear-gradient(90deg,transparent,#ff333d); transform: rotate(-29deg); opacity: .55; }
.battle-streaks i:nth-child(2) { width: 120px; right: 15%; top: 42%; animation-delay: .4s; }
.battle-streaks i:nth-child(3) { width: 230px; right: -6%; top: 62%; animation-delay: .8s; }
.battle-streaks i:nth-child(4) { width: 100px; right: 35%; top: 16%; animation-delay: 1.1s; }
.home-banner.is-active .battle-streaks i { animation: battleStreak 2.2s ease-in-out infinite; }
.home-carousel-controls { position: relative; z-index: 20; width: min(790px,calc(100% - 48px)); min-height: 72px; margin: -112px auto 66px; padding: 7px; display: flex; align-items: stretch; gap: 7px; border: 1px solid rgba(255,255,255,.15); border-radius: 17px; background: rgba(12,12,15,.9); box-shadow: 0 24px 58px rgba(0,0,0,.4); backdrop-filter: blur(16px); }
.home-carousel-arrow,.home-carousel-toggle { width: 48px; flex: 0 0 auto; border: 1px solid rgba(255,255,255,.1); border-radius: 11px; background: rgba(255,255,255,.035); color: #d9d9dd; cursor: pointer; font-size: 25px; transition: border-color .18s ease,background .18s ease,color .18s ease; }
.home-carousel-toggle { font-size: 14px; font-weight: 900; }
.home-carousel-arrow:hover,.home-carousel-arrow:focus-visible,.home-carousel-toggle:hover,.home-carousel-toggle:focus-visible { border-color: rgba(255,47,56,.6); outline: 0; background: rgba(227,19,27,.12); color: #fff; }
.home-slide-tabs { min-width: 0; flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.home-slide-tab { position: relative; min-width: 0; padding: 10px 14px; overflow: hidden; display: flex; align-items: center; gap: 11px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: #85858b; cursor: pointer; text-align: left; transition: border-color .18s ease,background .18s ease,color .18s ease; }
.home-slide-tab small { color: #ff343d; font-size: 9px; font-weight: 1000; }
.home-slide-tab span { min-width: 0; display: grid; gap: 2px; }
.home-slide-tab b { overflow: hidden; color: inherit; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.home-slide-tab em { color: #73737a; font-size: 9px; font-style: normal; }
.home-slide-tab > i { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; transform: scaleX(0); transform-origin: left; background: #f02029; }
.home-slide-tab:hover,.home-slide-tab:focus-visible { outline: 0; background: rgba(255,255,255,.045); color: #fff; }
.home-slide-tab.is-active { border-color: rgba(255,48,57,.26); background: linear-gradient(110deg,rgba(144,4,11,.32),rgba(255,255,255,.025)); color: #fff; }
.home-slide-tab.is-active > i { animation: homeSlideProgress var(--home-slide-duration,7500ms) linear both; }
.home-carousel-controls.is-paused .home-slide-tab.is-active > i { animation-play-state: paused; }
.home-carousel-status { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.home-noscript-experiences { position: relative; z-index: 20; width: min(560px,calc(100% - 30px)); margin: -90px auto 65px; display: flex; justify-content: center; gap: 10px; }
.home-steps { position: relative; z-index: 15; width: min(1050px,calc(100% - 48px)); min-height: 104px; margin: -28px auto 28px; padding: 18px 22px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid rgba(255,255,255,.15); border-radius: 18px; background: rgba(17,17,20,.9); box-shadow: 0 24px 65px rgba(0,0,0,.42); backdrop-filter: blur(16px); }
.home-steps article { padding: 7px 22px; display: flex; align-items: center; gap: 15px; }
.home-steps article + article { border-left: 1px solid rgba(255,255,255,.13); }
.step-icon { width: 52px; height: 52px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; background: rgba(255,255,255,.055); color: #ff3740; font-size: 22px; font-weight: 1000; box-shadow: inset 0 0 22px rgba(227,19,27,.13); }
.step-icon.twitch { color: #a970ff; box-shadow: inset 0 0 22px rgba(145,70,255,.17); }
.home-steps b { display: block; color: #fff; font-size: 13px; }
.home-steps p { margin: 4px 0 0; color: #9d9da3; font-size: 11px; line-height: 1.45; }

.home-login-section { scroll-margin-top: 20px; padding: 86px max(24px,calc((100vw - 1160px)/2)); display: grid; grid-template-columns: .85fr 1.15fr; gap: 84px; align-items: center; background: #f5f5f6; color: #151518; }
.home-login-copy h2 { margin: 10px 0 14px; color: #09090b; font-size: clamp(38px,5vw,62px); line-height: .96; letter-spacing: -.06em; }
.home-login-copy > p { max-width: 520px; margin: 0; color: #64646b; font-size: 16px; line-height: 1.7; }
.home-login-copy ul { margin: 25px 0 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.home-login-copy li { position: relative; padding-left: 28px; color: #45454b; font-size: 14px; }
.home-login-copy li::before { content: "✓"; position: absolute; left: 0; top: -2px; width: 19px; height: 19px; display: grid; place-items: center; border-radius: 50%; background: #e3131b; color: #fff; font-size: 11px; font-weight: 1000; }
.home-login-form { padding: 28px; border: 1px solid rgba(255,255,255,.12); border-radius: 24px; background: linear-gradient(145deg,#171719,#09090b); box-shadow: 0 30px 80px rgba(25,0,2,.22); color: #f8f8f9; }
.captcha-heading { margin-bottom: 16px; display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.captcha-heading > div { display: grid; gap: 4px; }
.captcha-heading small { color: #ff343c; font-size: 9px; font-weight: 1000; letter-spacing: .16em; }
.captcha-heading strong { color: #fff; font-size: 17px; }
.captcha-refresh { padding: 8px 10px; border: 1px solid rgba(255,255,255,.14); border-radius: 9px; background: transparent; color: #bdbdc2; cursor: pointer; font-size: 11px; font-weight: 800; }
.captcha-refresh:hover { border-color: #ff3038; color: #fff; }
.captcha-image-wrap { min-height: 92px; margin-bottom: 16px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: #08080a; }
.captcha-image-wrap img { width: min(100%,360px); height: 84px; object-fit: contain; }
.captcha-image-wrap > span { padding: 20px; color: #85858c; font-size: 11px; text-align: center; }
.captcha-image-wrap noscript { padding: 0 16px 15px; color: #ff555c; font-size: 11px; text-decoration: underline; }
.captcha-image-wrap.loading img { opacity: .35; }
.captcha-field { display: grid; gap: 8px; color: #c9c9cd; font-size: 12px; font-weight: 800; }
.captcha-field input { width: 100%; height: 52px; padding: 0 17px; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; outline: 0; background: #08080a; color: #fff; font-size: 19px; font-weight: 900; letter-spacing: .24em; text-transform: uppercase; }
.captcha-field input:focus { border-color: #ff3038; box-shadow: 0 0 0 3px rgba(227,19,27,.14); }
.home-login-form .button { margin-top: 18px; }
.login-legal { margin: 14px 0 0; color: #77777e; font-size: 10px; text-align: center; }
.login-legal a { color: #c3c3c8; text-decoration: underline; }
.home-reasons { padding: 70px 24px; background: #fff; color: #111114; text-align: center; }
.home-reasons > span { color: #e3131b; font-size: 10px; font-weight: 1000; letter-spacing: .12em; }
.home-reasons h2 { margin: 10px 0; color: #111114; font-size: clamp(32px,4.5vw,53px); letter-spacing: -.055em; }
.home-reasons p { margin: 0; color: #6f6f76; }
.home-footer { min-height: 120px; padding: 32px max(24px,calc((100vw - 1160px)/2)); display: flex; align-items: center; gap: 30px; background: #09090a; }
.home-footer p { margin: 0 auto 0 0; color: #78787f; font-size: 12px; }
.home-footer nav { display: flex; gap: 20px; color: #aaaab0; font-size: 12px; }
.home-footer nav a:hover { color: #fff; }

@keyframes homeBackgroundDrift { from { transform: scale(1.015) translate3d(0,0,0); } to { transform: scale(1.045) translate3d(-.8%,-.45%,0); } }
@keyframes motoEnter { from { opacity: 0; transform: translate3d(40px,25px,0) scale(.965); } to { opacity: 1; transform: translate3d(0,0,0) scale(1); } }
@keyframes battleCharacterEnter { from { opacity: 0; transform: translate3d(52px,20px,0) scale(.965); } to { opacity: 1; transform: translate3d(0,0,0) scale(1); } }
@keyframes bagGlowFromBox { 0% { opacity: 0; transform: translate(-50%,-50%) scale(.38); } 38% { opacity: .82; transform: translate(-50%,-50%) scale(1); } 100% { opacity: 0; transform: translate(-50%,-50%) scale(1.15); } }
@keyframes ifoodRiseFromBox {
  0%,18% { opacity: 0; transform: translate3d(0,46px,0) scale(.16) rotate(var(--start-r)); }
  34% { opacity: .08; transform: translate3d(0,8px,0) scale(.24) rotate(var(--start-r)); }
  66% { opacity: .88; transform: translate3d(var(--lift-x),var(--lift-y),0) scale(.72) rotate(var(--start-r)); }
  100% { opacity: 1; transform: translate3d(var(--final-x),var(--final-y),0) scale(1) rotate(var(--final-r)); }
}
@keyframes ifoodFoodHover { from { transform: translate3d(0,0,0) rotate(0deg); } to { transform: translate3d(var(--hover-x),var(--hover-y),0) rotate(2deg); } }
@keyframes battlePulse { from { opacity: .52; transform: scale(.96); } to { opacity: 1; transform: scale(1.035); } }
@keyframes battleStreak { 0%,100% { opacity: .08; transform: translate3d(70px,40px,0) rotate(-29deg) scaleX(.3); } 45%,70% { opacity: .62; transform: translate3d(-18px,-12px,0) rotate(-29deg) scaleX(1); } }
@keyframes homeSlideProgress { from { transform: scaleX(0); } to { transform: scaleX(1); } }

@media (max-width:1160px) {
  .home-nav a { padding-inline: 8px; font-size: 12px; }
  .home-hero-inner { grid-template-columns: minmax(0,1fr) minmax(430px,.96fr); }
  .home-hero-copy h1 { font-size: clamp(58px,7vw,82px); }
  .ifood-visual { width: clamp(730px,67vw,780px); height: auto; aspect-ratio: 1; right: clamp(-120px,-10vw,-100px); }
  .home-battle-character { height: 628px; width: auto; right: 24px; top: 34px; bottom: auto; }
  .home-login-section { gap: 50px; }
}
@media (max-width:1080px) {
  .home-header { width: min(100% - 30px,760px); min-height: 72px; }
  .home-nav { display: none; }
  .home-login-button { margin-left: auto; }
  .home-carousel-stage { min-height: 1050px; }
  .home-hero-inner { width: min(760px,calc(100% - 30px)); min-height: 1050px; grid-template-columns: 1fr; align-content: start; }
  .home-hero-copy { padding: 56px 0 0; text-align: center; }
  .home-kicker { justify-content: center; }
  .home-hero-copy h1 { align-items: center; }
  .home-hero-copy > p { margin-inline: auto; text-align: left; }
  .home-banner-action-row { justify-content: center; }
  .home-scene { width: min(700px,100%); min-height: 640px; margin: -5px auto 0; }
  .ifood-visual { width: clamp(410px,70vw,720px); height: auto; aspect-ratio: 1; right: clamp(-100px,-13vw,-45px); bottom: -35px; }
  .home-battle-character { height: 595px; width: auto; right: 22px; top: 28px; bottom: auto; }
  .battle-energy-ring { width: 440px; height: 440px; right: 10%; top: 74px; }
  .home-carousel-controls { margin-top: -108px; }
  .home-steps { margin-top: -22px; }
  .home-login-section { grid-template-columns: 1fr; gap: 34px; }
  .home-login-copy { text-align: center; }
  .home-login-copy > p { margin-inline: auto; }
  .home-login-copy ul { width: fit-content; margin-inline: auto; text-align: left; }
  .home-login-form { width: min(620px,100%); margin-inline: auto; }
}
@media (max-width:680px) {
  .home-header { min-height: 68px; }
  .home-brand span { font-size: 22px; } .home-brand small { font-size: 7px; }
  .home-login-button { min-height: 40px; padding: 0 13px; font-size: 11px; }
  .home-login-button .twitch-logo { width: 18px; height: 18px; }
  .home-carousel-stage { min-height: 840px; }
  .home-hero-inner { min-height: 840px; }
  .home-hero-copy { padding-top: 42px; }
  .home-kicker { font-size: 8px; letter-spacing: .12em; }
  .home-hero-copy h1 { margin: 14px 0 17px; font-size: clamp(50px,16vw,66px); }
  .home-hero-copy > p { padding-left: 14px; font-size: 15px; }
  .home-banner-action-row { margin-top: 22px; flex-direction: column; gap: 9px; }
  .home-banner-action-row small { max-width: none; }
  .home-scene { min-height: 440px; margin-top: 0; }
  .ifood-visual { bottom: -5px; }
  .home-battle-character { height: 410px; width: auto; max-width: none; right: 6px; top: 22px; bottom: auto; }
  .battle-energy-ring { width: 320px; height: 320px; right: 12%; top: 62px; }
  .battle-crest { width: 120px; right: 24%; top: 38%; }
  .battle-crest span { font-size: 48px; }
  .home-carousel-controls { width: calc(100% - 30px); min-height: 64px; margin: -74px auto 42px; gap: 5px; padding: 5px; }
  .home-carousel-arrow,.home-carousel-toggle { width: 38px; border-radius: 9px; }
  .home-slide-tabs { gap: 5px; }
  .home-slide-tab { padding: 8px; gap: 7px; }
  .home-slide-tab b { font-size: 10px; }
  .home-slide-tab em { display: none; }
  .home-steps { width: calc(100% - 30px); margin-top: -8px; padding: 10px 18px; grid-template-columns: 1fr; }
  .home-steps article { padding: 15px 4px; }
  .home-steps article + article { border-top: 1px solid rgba(255,255,255,.12); border-left: 0; }
  .step-icon { width: 45px; height: 45px; }
  .home-login-section { padding: 66px 18px; }
  .home-login-copy h2 { font-size: 42px; }
  .home-login-form { padding: 20px; border-radius: 19px; }
  .captcha-heading { align-items: flex-start; }
  .captcha-heading strong { font-size: 14px; }
  .home-footer { flex-wrap: wrap; justify-content: space-between; }
  .home-footer p { width: 100%; order: 3; }
}
@media (prefers-reduced-motion:reduce) {
  .home-hero-background,.home-banner,.home-moto,.home-battle-character,.ifood-bag-glow,.ifood-food-flight,.ifood-food-flight img,.battle-energy-ring,.battle-streaks i,.home-slide-tab > i { animation: none !important; transition: none !important; }
  .ifood-bag-glow { opacity: .45; }
  .ifood-food-flight { opacity: 1; transform: translate3d(var(--final-x),var(--final-y),0) scale(1) rotate(var(--final-r)); }
  .home-slide-tab.is-active > i { transform: scaleX(1); }
}

.home-carousel-controls,.home-steps{display:none !important;}


@media (max-width:1080px) {
  .ifood-fries { --food-size:clamp(49px,7.2vw,67px); --final-x:clamp(58px,8.2vw,82px); --final-y:clamp(-224px,-20.4vw,-150px); --lift-y:clamp(-150px,-15.3vw,-99px); }
  .ifood-drink { --food-size:clamp(98px,14vw,134px); --final-x:clamp(112px,16vw,158px); --final-y:clamp(-163px,-16.7vw,-108px); --lift-y:clamp(-163px,-16.7vw,-108px); }
  .ifood-burger { --food-size:clamp(66px,9.6vw,90px); --final-x:clamp(138px,20vw,198px); --final-y:clamp(-40px,-4vw,-26px); --lift-y:clamp(-140px,-14.4vw,-93px); }
}
@media (max-width:680px) {
  .ifood-fries { --food-size:47px; --final-x:52px; --final-y:-150px; --lift-y:-99px; }
  .ifood-drink { --food-size:92px; --final-x:98px; --final-y:-108px; --lift-y:-108px; }
  .ifood-burger { --food-size:61px; --final-x:124px; --final-y:-26px; --lift-y:-93px; }
}
