@font-face { font-family: Sora; src: url('/assets/fonts/uxier-sora-latin-400.woff2') format('woff2'); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: Inter; src: url('/assets/fonts/contractors-inter-latin-400.woff2') format('woff2'); font-style: normal; font-weight: 400; font-display: swap; }
:root { font-family: Inter, Arial, sans-serif; color: #151613; background: #f4f3ef; font-synthesis: none; --canvas: #f4f3ef; --ink: #121310; --cream: #f5f4f0; --line: rgba(49,48,40,.17); }
* { box-sizing: border-box; }
html { scrollbar-gutter: stable; }
body { margin: 0; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; cursor: pointer; color: inherit; border: 0; }
a { color: inherit; text-decoration: none; }
button:focus-visible, a:focus-visible { outline: 2px solid #8b972c; outline-offset: 5px; }
[hidden] { display: none !important; }
.svg-library { position: absolute; top: 0; left: 0; width: 0; height: 0; overflow: hidden; opacity: 0; pointer-events: none; }
.icon { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 20px; padding: 14px; background: var(--cream); border-radius: 12px; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }

/* Independent rounded panels, in a 3:2 ratio after the 12px canvas gutter. */
.aeren-screen { position: relative; margin: 12px; min-height: calc(100svh - 24px); display: grid; grid-template-columns: minmax(0,3fr) minmax(0,2fr); gap: 12px; }
.hero-panel { position: relative; isolation: isolate; min-width: 0; display: flex; flex-direction: column; overflow: hidden; border-radius: 30px; }
.aviation-panel { position: relative; min-width: 0; border-radius: 30px; background: #141713; }
.hero-background { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(ellipse 75% 78% at 100% 100%, #d48b69 0%, #eab497 31%, #f3d1c1a6 56%, transparent 87%), radial-gradient(ellipse 72% 75% at 96% 8%, #dbb1c6 0%, #e8c7d5 32%, #f0dee080 60%, transparent 90%), radial-gradient(ellipse 70% 70% at 2% 0%, #e4dfea80, transparent 80%), #eeebe8; }
/* Two oversized color fields follow the controls without moving the content. */
.hero-background { overflow: hidden; }
.hero-background::before, .hero-background::after { content: ''; position: absolute; inset: -30%; transition: transform 1.1s cubic-bezier(.2,.7,.2,1), opacity 1.1s cubic-bezier(.2,.7,.2,1); }
.hero-background::before { background: radial-gradient(ellipse 48% 50% at 68% 68%, #e3a383 0%, #f1bfaa 32%, #f3d1c170 60%, transparent 84%); transform: translate(calc(var(--hours-flow, 0) * -18%), calc(var(--hours-flow, 0) * -16% + var(--cabin-flow, 0) * 5%)); opacity: calc(var(--hours-flow, 0) * .78); }
.hero-background::after { background: radial-gradient(ellipse 50% 48% at 65% 38%, #c6b0d4 0%, #ddbed0 35%, #ead3e060 65%, transparent 86%); transform: translate(calc(var(--cabin-flow, 0) * -17% + var(--hours-flow, 0) * 4%), calc(var(--cabin-flow, 0) * 16%)); opacity: calc(var(--cabin-flow, 0) * .72); }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 106px; margin: 0 42px; flex-shrink: 0; }
.brand { display: inline-flex; gap: 11px; align-items: center; font-family: Sora, sans-serif; font-size: 36px; letter-spacing: -2.1px; line-height: 1; flex-shrink: 0; }
.brand-mark { width: 39px; height: 39px; overflow: visible; }
.site-header .brand { min-height: 44px; gap: 9px; font-size: 29px; letter-spacing: -1.7px; }
.site-header .brand-mark { width: 32px; height: 32px; }
.mobile-ai-toggle { display: none; }

.hero { flex: 1; display: flex; flex-direction: column; position: relative; padding: 88px 0 44px; }
.hero-copy { position: relative; width: 100%; padding: 0 44px; }
h1 { font-family: Sora, Arial, sans-serif; font-weight: 400; font-size: clamp(54px,6.1vw,96px); letter-spacing: -.077em; line-height: 1.075; margin: 0 0 27px; }
h1 span { color: #786c70; }
.hero-description { font-size: 15px; line-height: 1.7; letter-spacing: -.1px; margin: 0 0 27px; color: #4e5147; }
.primary-button { display: inline-flex; align-items: center; justify-content: center; min-width: 184px; min-height: 54px; padding: 0 27px; border: 1px solid #74776e; border-radius: 90px; background: transparent; color: #292b25; font-size: 13px; transition: background .2s, border-color .2s; }
.primary-button:hover { background: #ffffff30; border-color: #353830; }
/* Compact native controls, styled as cockpit slider carriages. */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.hero-bottom { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; width: 92%; padding: 55px 44px 0; margin-top: auto; }
.feature-card { min-width: 0; height: 200px; padding: 19px 20px; display: grid; grid-template-rows: 42px 44px minmax(0,1fr); gap: 8px; background: #fff; color: #11120f; border-radius: 30px; }
.control-top { display: flex; align-items: center; gap: 10px; min-width: 0; }
.control-heading { flex: 1; min-width: 0; margin: 0; font-size: 12px; font-weight: 400; line-height: 1.4; letter-spacing: -.2px; }
.control-heading label { cursor: pointer; }
.control-heading span { display: block; color: #818379; }
.card-icon { width: 36px; height: 36px; flex: 0 0 auto; border: 1px solid #d1d2cf; border-radius: 50%; display: grid; place-items: center; }
.card-icon .icon { width: 23px; height: 23px; stroke-width: 1.2; }
.control-reading { flex-shrink: 0; text-align: right; }
.control-reading output { display: block; font-family: Sora,sans-serif; font-size: 31px; line-height: 1.08; letter-spacing: -1.7px; font-variant-numeric: tabular-nums; }
.control-reading > span { display: block; margin-top: 3px; color: #818379; font-size: 8px; white-space: nowrap; }
.cabin-map { width: 42px; flex: 0 0 auto; }
.cabin-map svg { display: block; width: 100%; height: auto; }
.cabin-outline { fill: #f8f8f5; stroke: #d5d6cf; stroke-width: .8; }
.cabin-seat { fill: #e9eae4; stroke: #d0d2c8; stroke-width: .6; transition: fill .16s, stroke .16s; }
.cabin-seat.is-occupied { fill: #30332a; stroke: #30332a; }
.control-track { min-width: 0; }
.flight-range { --range-progress: 26.3158%; -webkit-appearance: none; appearance: none; display: block; width: 100%; height: 34px; margin: 0; padding: 0; background: transparent; cursor: ew-resize; touch-action: pan-y; }
#flight-passengers { --range-progress: 40%; }
.flight-range::-webkit-slider-runnable-track { height: 3px; border-radius: 3px; background: linear-gradient(to right,#34382d 0 var(--range-progress),#e4e5de var(--range-progress) 100%); }
.flight-range::-moz-range-track { height: 3px; border: 0; border-radius: 3px; background: linear-gradient(to right,#34382d 0 var(--range-progress),#e4e5de var(--range-progress) 100%); }
.flight-range::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 27px; height: 30px; margin-top: -13.5px; border: 1px solid #171a13; border-radius: 9px; background: repeating-linear-gradient(90deg,#85887b 0 1px,transparent 1px 4px) center / 13px 12px no-repeat,linear-gradient(#3b3f33,#171a13); box-shadow: inset 0 1px 1px #ffffff25,0 2px 3px #11120f22; cursor: grab; }
.flight-range::-moz-range-thumb { width: 25px; height: 28px; border: 1px solid #171a13; border-radius: 9px; background: repeating-linear-gradient(90deg,#85887b 0 1px,transparent 1px 4px) center / 13px 12px no-repeat,linear-gradient(#3b3f33,#171a13); box-shadow: inset 0 1px 1px #ffffff25,0 2px 3px #11120f22; cursor: grab; }
.flight-range:active::-webkit-slider-thumb { cursor: grabbing; }
.flight-range:active::-moz-range-thumb { cursor: grabbing; }
.flight-range:focus-visible { outline: 2px solid #8b972c; outline-offset: 3px; border-radius: 9px; }
.control-scale { display: flex; justify-content: space-between; position: relative; padding-top: 2px; color: #919487; font-size: 8px; line-height: 1; font-variant-numeric: tabular-nums; }
.control-scale::before { content: ''; position: absolute; inset: -3px 0 auto; height: 3px; background: repeating-linear-gradient(to right,#d8dbd0 0 1px,transparent 1px 10%); }
.control-result { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; min-width: 0; min-height: 44px; padding: 0; background: transparent; text-align: left; border-radius: 8px; }
.result-copy { display: block; min-width: 0; }
.result-kicker { display: block; margin-bottom: 4px; color: #818379; font-size: 9px; }
.result-copy strong { display: block; font-family: Sora,sans-serif; font-weight: 400; font-size: clamp(13px,1.32vw,21px); line-height: 1.2; letter-spacing: -.65px; }
.circle-arrow { display: grid; place-items: center; height: 32px; width: 32px; color: #fff; background: #0b0b0b; border-radius: 50%; flex-shrink: 0; transition: background .18s; }
.circle-arrow .icon { width: 16px; height: 16px; stroke-width: 1.1; }
.control-result:hover .circle-arrow { background: #424839; }
.eyebrow { font-size: 9px; line-height: 1.6; font-weight: 400; letter-spacing: 1.65px; margin: 0 0 22px; }

.detail-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100svh - 40px);padding:0;border:1px solid #fff9;border-radius:32px;color:var(--ink);background:linear-gradient(135deg,#f5f4ef,#e1dfcf);box-shadow:0 30px 120px #171b1c33;overflow:auto}.detail-dialog::backdrop{background:#272b2452;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.dialog-header{padding:28px 32px;display:flex;justify-content:space-between;align-items:center}.dialog-brand{font-size:28px;letter-spacing:-1.7px;gap:8px}.dialog-brand .brand-mark{width:29px;height:29px}.dialog-close{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;height:42px;width:42px;background:transparent}.dialog-close:hover{background:#fff7}.dialog-content{padding:20px 42px 35px}.dialog-content .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:15px}.dialog-content h2{font-family:Sora,sans-serif;font-size:46px;line-height:1.08;letter-spacing:-2.7px;font-weight:400;margin:0 0 22px}.dialog-description{font-size:14px;line-height:1.75;color:#626458;margin:0 0 28px}.collection-options{display:flex;gap:6px;background:#d6d6c956;padding:6px;border-radius:30px}.collection-options button{flex:1;font-size:12px;padding:13px 8px;background:transparent;border-radius:24px;white-space:nowrap}.collection-options button[aria-pressed=true]{background:var(--ink);color:#fff}.category-detail{display:flex;gap:18px;align-items:flex-start;margin:16px 0 28px;padding:25px 22px;background:#ffffff80;border:1px solid #fff9;border-radius:23px}.detail-index{font-size:11px;color:#878a7e;line-height:25px}.category-detail h3{font-weight:400;font-family:Sora,sans-serif;letter-spacing:-.6px;line-height:1.4;font-size:19px;margin:0 0 10px}.category-detail p{font-size:12px;line-height:1.7;color:#73776a;margin:0}.category-detail>.icon{margin-top:2px;width:20px;height:20px}.service-points{display:grid;gap:0;margin-bottom:28px}.service-point{display:flex;gap:18px;padding:18px 0;border-top:1px solid var(--line);font-size:13px;line-height:1.65}.service-point span:first-child{font-size:10px;color:#858879}.preview-note{font-size:10px;line-height:1.65;color:#74766c;border-top:1px solid var(--line);padding-top:18px;margin:0 0 22px}.dialog-return{display:inline-flex;gap:30px;align-items:center;border:1px solid var(--line);padding:13px 19px;background:transparent;border-radius:50px;font-size:12px}.dialog-return .icon{width:16px;height:16px}.dialog-return:hover{background:#fff7}

@media (min-width:1600px) {
  .site-header { margin-inline: 58px; }
  .hero { padding-block: 105px 60px; }
  .hero-copy, .hero-bottom { padding-inline: 60px; }
  .hero-description { font-size: 17px; }
  .feature-card { height: 220px; padding: 23px; border-radius: 32px; }
}
@media (max-width:1150px) {
  .site-header { margin-inline: 28px; gap: 15px; }
  .brand { font-size: 31px; }
  .brand-mark { width: 34px; height: 34px; }
  .site-header .brand { font-size: 25px; }
  .site-header .brand-mark { width: 28px; height: 28px; }
  .hero-copy, .hero-bottom { padding-inline: 30px; }
  .hero-bottom { width: 100%; gap: 12px; }
  .feature-card { padding: 16px; border-radius: 26px; }
  .control-top { gap: 7px; }
  .control-heading { font-size: 11px; }
  .card-icon { width: 29px; height: 29px; }
  .card-icon .icon { width: 20px; height: 20px; }
  .cabin-map { width: 33px; }
}
@media (min-width:761px) and (max-height:850px) {
  .site-header { height: 88px; }
  .hero { padding-top: 56px; padding-bottom: 34px; }
  h1 { font-size: clamp(50px,5.6vw,86px); margin-bottom: 22px; }
  .hero-description { font-size: 14px; margin-bottom: 22px; }
  .hero-bottom { padding-top: 35px; }
  .feature-card { height: 184px; padding: 16px 18px; gap: 6px; border-radius: 26px; }
}
@media (min-width:1600px) and (min-height:851px) and (max-height:960px) {
  .hero { padding-bottom: 30px; }
  .hero-bottom { padding-top: 20px; }
  .feature-card { height: 200px; }
}
@media (max-width:760px) {
  html, body { touch-action: pan-x pan-y; }
  .aeren-screen { margin: calc(7px + env(safe-area-inset-top)) calc(7px + env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) calc(7px + env(safe-area-inset-left)); min-height: 0; display: grid; grid-template-columns: minmax(0,1fr); grid-template-rows: minmax(calc(100svh - 14px - env(safe-area-inset-top) - env(safe-area-inset-bottom)),auto) max(240px,56svh); gap: 10px; }
  .hero-panel { min-height: 0; border-radius: 24px; }
  .aviation-panel { min-height: 0; border-radius: 24px; }
  /* Stack the rose/peach hero above the clear video on phones. */
  .hero-background { inset: 0; background: radial-gradient(ellipse 85% 85% at 100% 100%, #db9979 0%, #edbca6 36%, #f3d4c78c 61%, transparent 88%), radial-gradient(ellipse 85% 85% at 100% 0%, #dcb8cc 0%, #e9cfdb 36%, transparent 84%), #eeebe8; }
  .site-header { height: 72px; margin-inline: 22px; gap: 15px; }
  .brand { font-size: 31px; gap: 8px; letter-spacing: -2px; }
  .brand-mark { width: 33px; height: 33px; }
  .site-header .brand { gap: 7px; letter-spacing: -1.6px; }
  .site-header .brand-mark { width: 27px; height: 27px; }
  .hero { min-height: 0; padding-block: 40px 22px; }
  .hero-copy { width: 100%; padding-inline: 23px; }
  h1 { font-size: clamp(40px,10.4vw,72px); letter-spacing: -.075em; line-height: 1.1; margin-bottom: 23px; }
  .hero-description { font-size: 13px; line-height: 1.75; margin-bottom: 23px; }
  .primary-button { min-width: 168px; min-height: 47px; padding-inline: 24px; font-size: 12px; }
  .hero-bottom { width: 100%; padding: 32px 23px 0; gap: 11px; }
  .feature-card { height: 180px; padding: 14px; gap: 6px; border-radius: 25px; }
  .control-top { gap: 5px; }
  .control-heading { font-size: 10px; }
  .control-reading output { font-size: 27px; letter-spacing: -1.5px; }
  .control-reading > span { font-size: 7px; }
  .card-icon { width: 25px; height: 25px; }
  .card-icon .icon { width: 19px; height: 19px; }
  .cabin-map { width: 28px; }
  .circle-arrow { width: 26px; height: 26px; }
  .circle-arrow .icon { width: 14px; height: 14px; }
  .result-copy strong { font-size: clamp(12px,3.4vw,18px); letter-spacing: -.45px; }
  .result-kicker { font-size: 8px; }
  .dialog-header { padding: 22px; }
  .dialog-content { padding: 15px 24px 28px; }
  .dialog-content h2 { font-size: 36px; letter-spacing: -2px; }
  .dialog-description { font-size: 12px; }
  .category-detail { padding: 20px 17px; gap: 11px; }
  .category-detail h3 { font-size: 17px; }
  .category-detail > .icon { display: none; }
  .collection-options button { font-size: 10px; }
  .detail-dialog { border-radius: 27px; }
}
@media (max-width:380px) {
  .site-header { margin-inline: 16px; }
  .brand { font-size: 28px; }
  .brand-mark { width: 29px; height: 29px; }
  .site-header .brand { font-size: 23px; }
  .site-header .brand-mark { width: 24px; height: 24px; }
  .hero-copy { padding-inline: 18px; }
  .hero-bottom { padding-inline: 18px; gap: 9px; }
  .feature-card { padding: 12px; }
  .control-top > .card-icon, .control-top > .cabin-map { display: none; }
  .control-reading output { font-size: 26px; }
  .control-result { gap: 4px; }
  .circle-arrow { width: 23px; height: 23px; }
  .result-copy strong { font-size: 12px; }
  .result-kicker { font-size: 7px; }
  .dialog-content { padding-inline: 20px; }
  .dialog-content h2 { font-size: 31px; }
}
@media (min-width:500px) and (max-width:760px) {
  .hero { min-height: 0; padding-top: 20px; }
  .hero-bottom { padding-top: 24px; }
  .feature-card { height: 190px; padding: 18px; border-radius: 28px; }
  .control-heading { font-size: 12px; }
  .control-reading output { font-size: 30px; }
  .card-icon { width: 32px; height: 32px; }
  .cabin-map { width: 38px; }
}

/* A true open notch in the top silhouette, with tangent rounded shoulders. */
.nav-cutout { --shoulder: 28px; position: absolute; z-index: 2; left: 50%; top: -1px; transform: translateX(-50%); width: max-content; max-width: calc(100% - 76px); padding: 0 12px 13px; border-radius: 0 0 37px 37px; background: var(--canvas); }
.nav-cutout::before, .nav-cutout::after { content: ''; position: absolute; top: 1px; width: var(--shoulder); height: var(--shoulder); pointer-events: none; }
.nav-cutout::before { right: 100%; background: radial-gradient(circle at bottom left, transparent calc(var(--shoulder) - .5px), var(--canvas) var(--shoulder)); }
.nav-cutout::after { left: 100%; background: radial-gradient(circle at bottom right, transparent calc(var(--shoulder) - .5px), var(--canvas) var(--shoulder)); }
.icon-nav { display: flex; align-items: center; gap: 6px; padding: 7px; background: #22231f; border: 1px solid #383934; border-radius: 100px; }
.icon-nav-button { position: relative; display: grid; place-items: center; flex: 0 0 auto; width: 54px; height: 54px; padding: 0; color: #e9eae3; background: transparent; border: 1px solid #ffffff26; border-radius: 50%; transition: background .2s, color .2s, border-color .2s; }
.icon-nav-button .icon { width: 22px; height: 22px; stroke-width: 1.35; }
.icon-nav-button:hover { background: #ffffff14; border-color: #ffffff65; }
.icon-nav-button.is-active { background: #fff; border-color: #fff; color: #121310; }
.icon-nav-button:focus-visible { outline: 2px solid #ddde92; outline-offset: 3px; }
.nav-label { position: absolute; left: 50%; top: calc(100% + 29px); transform: translateX(-50%); padding: 8px 11px; border: 1px solid #ffffff1f; border-radius: 9px; background: #242520; color: #f4f4ee; font-size: 10px; white-space: nowrap; pointer-events: none; opacity: 0; visibility: hidden; }
.icon-nav-button:hover .nav-label, .icon-nav-button:focus-visible .nav-label { opacity: 1; visibility: visible; }
@media (max-width:1150px) and (min-width:761px) {
  .nav-cutout { --shoulder: 18px; padding: 0 7px 11px; max-width: calc(100% - 48px); border-radius: 0 0 30px 30px; }
  .icon-nav { gap: 4px; padding: 6px; }
  .icon-nav-button { width: 40px; height: 40px; }
  .icon-nav-button .icon { width: 19px; height: 19px; }
}
@media (max-width:760px) {
  .nav-cutout { --shoulder: 22px; padding: 0 9px 12px; max-width: calc(100% - 64px); border-radius: 0 0 32px 32px; }
  .icon-nav { gap: 5px; padding: 6px; }
  .icon-nav-button { width: 46px; height: 46px; }
  .icon-nav-button .icon { width: 21px; height: 21px; }
}
@media (max-width:380px) {
  .nav-cutout { --shoulder: 18px; padding-inline: 7px; max-width: calc(100% - 48px); }
  .icon-nav { gap: 4px; }
  .icon-nav-button { width: 40px; height: 40px; }
  .icon-nav-button .icon { width: 19px; height: 19px; }
}

/* A bare AI star replaces the phone burger; navigation stays in the side dock. */
@media (max-width:760px) {
  .site-header { position: relative; z-index: 5; }
  .mobile-ai-toggle { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 0; color: #30282c; background: transparent; }
  .mobile-ai-toggle .icon { width: 24px; height: 24px; }
  .mobile-ai-toggle:hover { color: #805765; }
}

/* Mobile shortcuts remain in the hero's open side notch. */
.mobile-nav-slot, .mobile-icon-dock { display: none; }
@media (max-width:760px) {
  .hero-copy { padding-right: 82px; }
  .mobile-nav-slot { --notch-radius: 24px; display: block; position: absolute; z-index: 3; top: clamp(58px,calc((100svh - 370px) / 2),180px); right: 0; padding: 9px 0 9px 8px; background: var(--canvas); border-radius: 36px 0 0 36px; }
  .mobile-nav-slot::before, .mobile-nav-slot::after { content: ''; position: absolute; right: 0; width: var(--notch-radius); height: var(--notch-radius); pointer-events: none; }
  .mobile-nav-slot::before { bottom: 100%; background: radial-gradient(circle at top left,transparent calc(var(--notch-radius) - .5px),var(--canvas) var(--notch-radius)); }
  .mobile-nav-slot::after { top: 100%; background: radial-gradient(circle at bottom left,transparent calc(var(--notch-radius) - .5px),var(--canvas) var(--notch-radius)); }
  .mobile-icon-dock { display: block; }
  .mobile-icon-dock .icon-nav { flex-direction: column; padding: 5px; gap: 4px; }
  .mobile-icon-dock .icon-nav-button { width: 44px; height: 44px; }
  .mobile-icon-dock .icon { width: 20px; height: 20px; }
  .mobile-icon-dock .nav-label { display: none; }
  .aeren-assistant-open .mobile-icon-dock { visibility: hidden; pointer-events: none; }
}
@media (prefers-reduced-motion:no-preference) {
  .hero-copy { animation: appear .75s .08s both; }
  .hero-bottom { animation: appear .7s .2s both; }
  .detail-dialog[open] { animation: appear .25s both; }
  @keyframes appear { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
}
/* Keep the mobile header and its AI control immediately available. */
@media (prefers-reduced-motion:no-preference) and (min-width:761px) {
  .site-header { animation: appear .65s both; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-background::before, .hero-background::after { transform: none; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
