html.rainbow-download-gate-open,
body.rainbow-download-gate-open { overflow: hidden !important; overscroll-behavior: none; }
body.rainbow-download-gate-open .rainbow-floating-actions { opacity: 0; visibility: hidden; pointer-events: none; }
.rainbow-download-gate-modal { position: fixed; inset: 0; z-index: 100050; display: grid; place-items: center; padding: 28px; background: var(--rb-modal-backdrop-color, rgba(23, 25, 29, .66)); -webkit-backdrop-filter: var(--rb-modal-backdrop-filter, blur(8px)); backdrop-filter: var(--rb-modal-backdrop-filter, blur(8px)); opacity: 0; transition: opacity .22s ease; }
.rainbow-download-gate-modal[hidden] { display: none; }
.rainbow-download-gate-modal.is-open { opacity: 1; }
.rainbow-download-gate-dialog { position: relative; display: grid; grid-template-columns: minmax(300px, .85fr) minmax(460px, 1.15fr); grid-template-rows: minmax(0, 1fr); width: min(1060px, 100%); height: min(820px, calc(100vh - 56px)); height: min(820px, calc(100dvh - 56px)); min-height: 0; max-height: min(820px, calc(100vh - 56px)); overflow: hidden; border-radius: 26px; background: #fff; box-shadow: 0 30px 90px rgba(0, 0, 0, .3); transform: translateY(16px) scale(.985); transition: transform .22s ease; }
.rainbow-download-gate-modal.is-open .rainbow-download-gate-dialog { transform: none; }
.rainbow-download-gate-hero { display: flex; flex-direction: column; justify-content: flex-end; min-height: 650px; padding: clamp(34px, 5vw, 66px); color: #fff; background: #df4f38; }
.rainbow-download-gate-kicker { margin: 0 0 auto !important; font-size: 12px !important; font-weight: 800; letter-spacing: .18em; }
.rainbow-download-gate-hero h2 { margin: 0 0 22px; color: #fff; font-size: clamp(34px, 3.3vw, 54px); line-height: 1.08; letter-spacing: -.045em; }
.rainbow-download-gate-hero > p:last-child { max-width: 390px; margin: 0; color: rgba(255, 255, 255, .82); font-size: 15px; line-height: 1.7; }
.rainbow-download-gate-panel { min-width: 0; min-height: 0; overflow-x: hidden; overflow-y: auto !important; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y; scrollbar-gutter: stable; scrollbar-width: thin; padding: clamp(38px, 4vw, 58px); background: #fff; }
.rainbow-download-gate-panel::-webkit-scrollbar { width: 8px; }
.rainbow-download-gate-panel::-webkit-scrollbar-thumb { border: 2px solid #fff; border-radius: 999px; background: #c8c3bc; }
.rainbow-download-gate-field[hidden] { display: none !important; }
.rainbow-download-gate-heading { margin-bottom: 22px; }
.rainbow-download-gate-heading h3 { margin: 0; color: #24231f; font-size: clamp(25px, 2vw, 32px); letter-spacing: -.035em; }
.rainbow-download-gate-heading h3 span { margin-left: 8px; color: #df4f38; font-size: 12px; font-weight: 600; letter-spacing: 0; }
.rainbow-download-gate-close { position: absolute; top: 20px; right: 20px; z-index: 3; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; color: #24231f; background: #f2f1ef; font-size: 27px; line-height: 1; cursor: pointer; transition: transform .2s, background .2s; }
.rainbow-download-gate-close:hover, .rainbow-download-gate-close:focus-visible { background: #e8e5e1; transform: rotate(8deg); outline: 2px solid #24231f; outline-offset: 2px; }
.rainbow-download-gate-type { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 5px; margin-bottom: 18px; border-radius: 999px; background: #f2f1ef; }
.rainbow-download-gate-type input { position: absolute; opacity: 0; pointer-events: none; }
.rainbow-download-gate-type span { display: block; padding: 11px 16px; border-radius: 999px; color: #77736d; text-align: center; font-size: 14px; font-weight: 700; cursor: pointer; }
.rainbow-download-gate-type input:checked + span { color: #fff; background: #24231f; box-shadow: 0 5px 14px rgba(36, 35, 31, .16); }
.rainbow-download-gate-type input:focus-visible + span { outline: 2px solid #df4f38; outline-offset: 2px; }
.rainbow-download-gate-field { display: block; margin: 0 0 14px; color: #24231f; font-size: 13px; font-weight: 700; }
.rainbow-download-gate-field > span { display: inline-block; margin-bottom: 7px; }
.rainbow-download-gate-field b { color: #df4f38; }
.rainbow-download-gate-field input, .rainbow-download-gate-field select { box-sizing: border-box; width: 100%; min-height: 50px; padding: 0 18px; border: 1px solid #ddd9d4; border-radius: 14px; color: #24231f; background: #faf9f8; font-size: 15px; box-shadow: none; transition: border-color .2s, background .2s, box-shadow .2s; }
.rainbow-download-gate-field select { padding-right: 42px; }
.rainbow-download-gate-field input:hover, .rainbow-download-gate-field select:hover { border-color: #aaa49c; }
.rainbow-download-gate-field input:focus, .rainbow-download-gate-field select:focus { border-color: #df4f38; outline: 0; background: #fff; box-shadow: 0 0 0 3px rgba(223, 79, 56, .12); }
.rainbow-download-gate-privacy { padding: 17px 18px; margin: 20px 0; border-radius: 16px; background: #f5f4f2; }
.rainbow-download-gate-privacy h4 { margin: 0 0 12px; color: #24231f; font-size: 14px; }
.rainbow-download-gate-privacy dl, .rainbow-download-gate-privacy p { margin: 0; color: #716d66; font-size: 11px; line-height: 1.55; }
.rainbow-download-gate-privacy dl div { display: grid; grid-template-columns: 65px 1fr; gap: 8px; margin: 0 0 5px; }
.rainbow-download-gate-privacy dt { font-weight: 700; color: #4e4b46; }
.rainbow-download-gate-privacy dd { margin: 0; }
.rainbow-download-gate-privacy p { padding-top: 8px; border-top: 1px solid #e3e0dc; }
.rainbow-download-gate-privacy a { color: #df4f38; text-decoration: underline; }
.rainbow-download-gate-consent { display: grid; grid-template-columns: 22px 1fr; gap: 9px; align-items: start; margin-top: 13px; cursor: pointer; }
.rainbow-download-gate-consent input { position: absolute; opacity: 0; }
.rainbow-download-gate-consent > span { display: block; width: 20px; height: 20px; border: 1px solid #bbb6af; border-radius: 6px; background: #fff; }
.rainbow-download-gate-consent input:checked + span { border-color: #df4f38; background: #df4f38 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-width='2.2' d='m5 10 3 3 7-7'/%3E%3C/svg%3E") center/16px no-repeat; }
.rainbow-download-gate-consent input:focus-visible + span { outline: 2px solid #24231f; outline-offset: 2px; }
.rainbow-download-gate-consent em { color: #24231f; font-size: 12px; font-style: normal; font-weight: 700; line-height: 1.55; }
body.material button.rainbow-download-gate-submit,
.rainbow-download-gate-form button.rainbow-download-gate-submit { position: relative; box-sizing: border-box; display: flex !important; align-items: center; justify-content: center !important; width: 100% !important; min-width: 0 !important; max-width: none !important; min-height: 64px; margin: 0 !important; padding: 0 clamp(72px, 7vw, 96px) !important; border: 0 !important; border-radius: clamp(16px, 1.4vw, 20px) !important; color: #fff !important; background: #24231f !important; font-size: clamp(16px, 1.2vw, 19px) !important; font-weight: 800 !important; line-height: 1.2 !important; text-align: center; cursor: pointer; }
.rainbow-download-gate-submit > span { display: block; width: 100%; text-align: center; white-space: nowrap; }
.rainbow-download-gate-submit i { position: absolute; top: 50%; right: 8px; display: grid; place-items: center; width: var(--rb-circle-cta-size, clamp(42px, 2.7vw, 48px)); height: var(--rb-circle-cta-size, clamp(42px, 2.7vw, 48px)); border-radius: 50%; color: #fff; background: var(--rb-circle-cta-color, #e54034); font-size: 0 !important; font-style: normal; transform: translateY(-50%); transition: transform var(--rb-circle-cta-transition, 220ms ease); }
.rainbow-download-gate-submit i::after { width: 46%; height: 46%; content: ""; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 12h16M13 5l7 7-7 7' stroke='%23fff' stroke-width='3' stroke-linecap='square' stroke-linejoin='miter'/%3E%3C/svg%3E"); }
.rainbow-download-gate-submit:hover i, .rainbow-download-gate-submit:focus-visible i { transform: translate(var(--rb-circle-cta-hover-x, 4px), -50%); }
.rainbow-download-gate-submit:focus-visible { outline: 3px solid rgba(223, 79, 56, .5); outline-offset: 3px; }
.rainbow-download-gate-submit:disabled { opacity: .55; cursor: wait; }
.rainbow-download-gate-error { margin: -8px 0 12px; color: #b52d1f; font-size: 12px; }
.rainbow-download-gate-honeypot { position: absolute; left: -9999px; }
.rainbow-download-gate-toast { position: fixed; right: auto; bottom: max(28px, env(safe-area-inset-bottom)); left: max(28px, env(safe-area-inset-left)); z-index: 100060; max-width: min(340px, calc(100vw - 40px)); padding: 15px 20px; border-radius: 999px; color: #fff; background: #24231f; box-shadow: 0 12px 40px rgba(0, 0, 0, .2); font-size: 13px; font-weight: 700; }
@media (max-width: 1024px) {
	.rainbow-download-gate-modal { align-items: end; padding: 20px; }
	.rainbow-download-gate-dialog { grid-template-columns: 1fr; grid-template-rows: 220px minmax(0, 1fr); width: min(680px, 100%); height: calc(100vh - 40px); height: calc(100dvh - 40px); max-height: calc(100vh - 40px); border-radius: 26px 26px 18px 18px; }
	.rainbow-download-gate-hero { min-height: 0; padding: 34px 42px; }
	.rainbow-download-gate-kicker { margin: 0 0 34px !important; }
	.rainbow-download-gate-hero h2 { margin-bottom: 10px; font-size: 36px; }
	.rainbow-download-gate-panel { padding: 36px 42px 42px; }
}
@media (max-width: 600px) {
	.rainbow-download-gate-modal { padding: 0; }
	.rainbow-download-gate-dialog { grid-template-rows: 190px minmax(0, 1fr); width: 100%; height: 88vh; height: 88dvh; max-height: 88dvh; border-radius: 24px 24px 0 0; }
	.rainbow-download-gate-hero { min-height: 0; padding: 26px 24px; }
	.rainbow-download-gate-kicker { margin-bottom: 22px !important; font-size: 10px !important; }
	.rainbow-download-gate-hero h2 { font-size: 30px; }
	.rainbow-download-gate-hero > p:last-child { font-size: 13px; line-height: 1.55; }
	.rainbow-download-gate-panel { padding: 28px 22px calc(28px + env(safe-area-inset-bottom)); }
	.rainbow-download-gate-close { top: 14px; right: 14px; width: 38px; height: 38px; }
	.rainbow-download-gate-heading h3 { padding-right: 28px; font-size: 25px; }
	.rainbow-download-gate-heading h3 span { display: block; margin: 5px 0 0; }
	.rainbow-download-gate-privacy { padding: 15px; }
	.rainbow-download-gate-privacy dl div { grid-template-columns: 1fr; gap: 1px; }
	body.material button.rainbow-download-gate-submit,
	.rainbow-download-gate-form button.rainbow-download-gate-submit { min-height: 60px; padding-right: 66px !important; padding-left: 66px !important; }
	.rainbow-download-gate-submit i { width: 44px; height: 44px; }
	.rainbow-download-gate-toast { right: auto; bottom: max(20px, env(safe-area-inset-bottom)); left: max(20px, env(safe-area-inset-left)); }
}
@media (prefers-reduced-motion: reduce) {
	.rainbow-download-gate-modal, .rainbow-download-gate-dialog, .rainbow-download-gate-close, .rainbow-download-gate-submit i { transition: none; }
}
