:root{
--hero-edge: 6vw; }  .hero-cinematic{
position: relative;
min-height:100vh;
height:100vh;
margin-top: calc(-1 * var(--header-h));
padding-top: var(--header-h);
overflow:hidden;
background:#000;
} .hero-content{
position:absolute;
left:0;
right:0;
bottom:10vh;
max-width: var(--site-max);
margin: 0 auto;
padding: 0 var(--site-pad);
width:100%;
z-index:2;
} .hero-box{
max-width:720px;
} .hero-feature svg{
width:18px;
height:18px;
fill:#ffd27a;
} .hero-buttons{
position:absolute;
left:50%;
bottom:24px;
transform:translateX(-50%);
display:flex;
gap:22px;
} .hero-buttons .btn-primary{
padding:16px 38px;
border-radius:999px;
font-weight:800;
letter-spacing:.03em;
text-transform:uppercase;
color:#1a1205;
background:linear-gradient(135deg,#ffb000,#ff7a18);
box-shadow:
0 18px 55px rgba(255,160,40,.45),
inset 0 0 0 1px rgba(255,255,255,.18);
} .hero-buttons .btn-outline{
padding:16px 38px;
border-radius:999px;
font-weight:800;
letter-spacing:.03em;
text-transform:uppercase;
color:rgba(255,255,255,.92);
background:rgba(255,255,255,.14);
border:1px solid rgba(255,255,255,.22);
box-shadow:0 16px 45px rgba(0,0,0,.28);
} .hero-title{
font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
font-weight: 600 !important; text-transform: uppercase;
letter-spacing: .00em; font-size: clamp(44px, 6vw, 92px);
line-height: .75;
margin: 0 0 14px;
color: rgba(255,255,255,.96);
text-shadow:
0 2px 4px rgba(0,0,0,0.55),
0 6px 14px rgba(0,0,0,0.45),
0 12px 28px rgba(0,0,0,0.35),
0 0 1px rgba(0,0,0,0.9);
} .hero-big{
font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
font-weight: 500;
font-size: clamp(18px, 2.2vw, 30px);
line-height: 1.25;
color: rgba(255,255,255,.92);
text-shadow: 0 2px 10px rgba(0,0,0,.45);
margin: 0 0 8px;
} .hero-address{
font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
font-size: 18px;
color: rgba(255,255,255,.70);
text-shadow: 0 2px 10px rgba(0,0,0,.40);
} .hero-features{
position: relative;
width:100%;
margin:26px 0 0;
padding:5px 0 78px;
border-radius:18px;
overflow:hidden;
} .hero-features-inner{
width:100%;
padding:0 6vw;
display:flex;
align-items:center;
position:relative;
} .hero-features-track{
display:flex;
align-items:center;
width:max-content;
animation:featureScroll 28s linear infinite;
} .hero-feature{
position:relative;
flex:0 0 auto;
padding:2px 28px;
display:flex;
align-items:center;
gap:10px;
font-size:18px;
font-weight:400;
color:rgba(255,255,255,.95);
white-space:nowrap;
} .hero-feature + .hero-feature::before{
content:"";
position:absolute;
left:0;
top:20%;
bottom:20%;
width:1px;
background: linear-gradient(
to bottom,
rgba(255,255,255,.12),
rgba(255,255,255,.04)
);
} @keyframes featureScroll{
from{ transform:translateX(0); }
to{ transform:translateX(-50%); }
} .hero-features::before{
content:"";
position:absolute;
inset:0;
border-radius:18px; background: linear-gradient(
to bottom,
rgba(255,255,255,.18),
rgba(255,255,255,.10),
rgba(255,255,255,.04),
rgba(255,255,255,0)
);
backdrop-filter: blur(16px) saturate(130%);
-webkit-backdrop-filter: blur(16px) saturate(130%); mask-image: linear-gradient(
to bottom,
rgba(0,0,0,1) 0%,
rgba(0,0,0,1) 35%,
rgba(0,0,0,.7) 55%,
rgba(0,0,0,.3) 72%,
rgba(0,0,0,0) 88%,
rgba(0,0,0,0) 100%
);
-webkit-mask-image: linear-gradient(
to bottom,
rgba(0,0,0,1) 0%,
rgba(0,0,0,1) 35%,
rgba(0,0,0,.7) 55%,
rgba(0,0,0,.3) 72%,
rgba(0,0,0,0) 88%,
rgba(0,0,0,0) 100%
); box-shadow:
inset 0 1px 0 rgba(255,255,255,.45),
inset 0 0 0 1px rgba(255,255,255,.22);
pointer-events:none;
z-index:0;
}
.hero-features-inner,
.hero-features-track{
position:relative;
z-index:2;
} .hero-separator{
position:absolute;
left:6vw;
right:6vw;
bottom:64px;
height:1px;
background:linear-gradient(
to right,
transparent,
rgba(255,255,255,.22),
transparent
);
z-index:6;
pointer-events:none;
}
.hero-tickers{
margin-bottom:6px;
}
.hero-separator{
margin:4px 0 14px;
} .hero-buttons a{
height:5px;
line-height:14px;
padding:0 28px;
min-width:210px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
font-size:14px;
font-weight:600;
letter-spacing:.04em;
text-transform:uppercase;
text-decoration:none;
backdrop-filter: blur(10px);
transition:.2s ease;
border:1px solid rgba(255,255,255,.22);
box-shadow:none; } .hero-buttons .btn-primary{
color:#fff;
background:
linear-gradient(
180deg,
rgba(255,145,0,.55),
rgba(210,95,0,.55)
);
text-shadow:
0 1px 1px rgba(0,0,0,.35);
} .hero-buttons .btn-outline{
color: rgba(40,40,40,.85);
background:
rgba(255,255,255,.18);
border:1px solid rgba(255,255,255,.35);
text-shadow: 0 1px 2px rgba(255,255,255,.25);
}
.hero-buttons a:hover{
transform:translateY(-1px);
filter:brightness(1.05);
} .hero-scroll{
position:absolute;
left:50%;
bottom:38px;
transform:translateX(-50%);
z-index:20;
width:46px;
height:46px;
border-radius:999px;
display:flex;
align-items:center;
justify-content:center; background: linear-gradient(
to bottom,
rgba(255,255,255,.18),
rgba(255,255,255,.08)
);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,.26);
box-shadow:
0 14px 40px rgba(0,0,0,.28),
inset 0 1px 0 rgba(255,255,255,.22);
text-decoration:none;
color: rgba(255,255,255,.92);
transition: transform .22s ease, background .22s ease, border-color .22s ease;
} .hero-scroll-ico{
display:block;
filter:
drop-shadow(0 1px 1px rgba(0,0,0,.35));
opacity:.95;
} .hero-scroll:hover{
transform:translateX(-50%) translateY(2px);
border-color: rgba(255,255,255,.34);
background: linear-gradient(
to bottom,
rgba(255,255,255,.22),
rgba(255,255,255,.10)
);
} @media (max-width: 768px){
.hero-scroll{
width:42px;
height:42px;
bottom:14px;
}
}
.hero-scroll{
overflow:hidden; }
.hero-scroll::before{
content:"";
position:absolute;
inset:0;
background: radial-gradient(
ellipse at center,
rgba(255,185,90,.45),
rgba(255,185,90,.15) 45%,
rgba(255,185,90,0) 70%
);
transform: scale(1.4); filter: blur(8px);
pointer-events:none;
} .hero-buttons{
position: relative;
display: flex;
gap: 22px;
justify-content: center;
margin-top: 18px;
} .hero-buttons a{
position: relative;
z-index: 2;
}
.hero-bg-img{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:cover;
opacity:0;
transition: opacity 1s ease;
will-change: opacity, transform;
}
.hero-slide.active .hero-bg-img{
opacity:1;
} .hero-slide{
position:absolute !important;
inset:0 !important;
width:100% !important;
height:100% !important;
background-size:cover !important;
background-position:center !important;
background-repeat:no-repeat !important;
opacity:0;
z-index:0;
backface-visibility: visible !important;
will-change: auto !important;
pointer-events:none;
}
.hero-slide.active{
opacity:1;
z-index:5;
} .hero-slide{
opacity:0;
transition: opacity 1.2s ease;
will-change: transform, opacity;
transform-origin: center;
}
.hero-slide.active{ opacity:1; } .hero-slide.m1_push_left,
.hero-slide.m2_pull_out,
.hero-slide.m3_dolly_right,
.hero-slide.m4_tilt_push,
.hero-slide.m5_diag,
.hero-slide.m6_persp,
.hero-slide.m7_surge{
animation-duration: var(--hero-move-dur, 5000ms);
animation-timing-function: cubic-bezier(.2,.7,.1,1);
animation-iteration-count: infinite; animation-direction: alternate;
animation-fill-mode: both;
} .hero-slide.m1_push_left{ animation-name: hero_m1; }
@keyframes hero_m1{
0%   { transform: scale(1.06) translate(0,0) rotate(0deg); }
100% { transform: scale(1.20) translate(-7%,-2%) rotate(-0.8deg); }
} .hero-slide.m2_pull_out{ animation-name: hero_m2; }
@keyframes hero_m2{
0%   { transform: scale(1.26) translate(-2%, 1%) rotate(0.4deg); }
100% { transform: scale(1.06) translate( 3%,-2%) rotate(-0.2deg); }
} .hero-slide.m3_dolly_right{ animation-name: hero_m3; }
@keyframes hero_m3{
0%   { transform: scale(1.10) translate(-8%,0) rotate(-0.4deg); }
100% { transform: scale(1.18) translate( 8%,1%) rotate( 0.9deg); }
} .hero-slide.m4_tilt_push{ animation-name: hero_m4; }
@keyframes hero_m4{
0%   { transform: scale(1.04) translate(0,2%) rotate(0deg); }
55%  { transform: scale(1.18) translate(-2%,-3%) rotate(-1.2deg); }
100% { transform: scale(1.14) translate( 3%,-1%) rotate( 0.6deg); }
} .hero-slide.m5_diag{ animation-name: hero_m5; }
@keyframes hero_m5{
0%   { transform: scale(1.08) translate( 6%, 4%) rotate(0deg); }
100% { transform: scale(1.22) translate(-6%,-5%) rotate(-0.6deg); }
} .hero-slide.m6_persp{
animation-name: hero_m6;
transform-origin: 30% 50%;
}
@keyframes hero_m6{
0%{
transform: perspective(900px) rotateY(-5deg) scale(1.10) translate(-2%,1%);
}
100%{
transform: perspective(900px) rotateY(6deg) scale(1.18) translate(3%,-1%);
}
} .hero-slide.m7_surge{ animation-name: hero_m7; animation-direction: normal; }
@keyframes hero_m7{
0%   { transform: scale(1.02) translate(0,0) rotate(0deg); }
18%  { transform: scale(1.18) translate(-4%,-2%) rotate(-0.9deg); } 78%  { transform: scale(1.24) translate(-6%,-2%) rotate(-0.4deg); } 100% { transform: scale(1.30) translate(-8%,-3%) rotate(-0.8deg); } } @media (max-width:768px){
.hero-slide{
background-position: center center; } @keyframes hero_m1{
0%{ transform: scale(1.01) translate(0,0) rotate(0deg); }
100%{ transform: scale(1.10) translate(-4%,-1%) rotate(-0.7deg); }
}
@keyframes hero_m2{
0%{ transform: scale(1.16) translate(-2%,1%) rotate(0.3deg); }
100%{ transform: scale(1.02) translate( 2%,-1%) rotate(-0.2deg); }
}
@keyframes hero_m3{
0%{ transform: scale(1.04) translate(-6%,0) rotate(-0.3deg); }
100%{ transform: scale(1.12) translate( 6%,1%) rotate( 0.7deg); }
}
@keyframes hero_m4{
0%{ transform: scale(1.01) translate(0,2%) rotate(0deg); }
55%{ transform: scale(1.12) translate(-2%,-2%) rotate(-1.0deg); }
100%{ transform: scale(1.10) translate( 2%,-1%) rotate( 0.6deg); }
}
@keyframes hero_m5{
0%{ transform: scale(1.03) translate( 5%, 3%) rotate(0deg); }
100%{ transform: scale(1.14) translate(-5%,-4%) rotate(-0.6deg); }
}
@keyframes hero_m6{
0%{ transform: perspective(800px) rotateY(-4deg) scale(1.04) translate(-1%,1%); }
100%{ transform: perspective(800px) rotateY( 5deg) scale(1.12) translate( 2%,-1%); }
}
@keyframes hero_m7{
0%{ transform: scale(1.01) translate(0,0) rotate(0deg); }
18%{ transform: scale(1.12) translate(-3%,-1%) rotate(-0.8deg); }
78%{ transform: scale(1.16) translate(-4%,-1%) rotate(-0.4deg); }
100%{ transform: scale(1.20) translate(-5%,-2%) rotate(-0.7deg); }
}
}  :root{
--ticker-desktop-top: 18px;
--ticker-desktop-bottom: 24px;
--ticker-mobile-top: 10px;
--ticker-mobile-bottom: 0px;
} .hero-features{
margin-top: var(--ticker-desktop-top);
padding-bottom: var(--ticker-desktop-bottom);
} @media (max-width:768px){
.hero-features{
margin-top: var(--ticker-mobile-top) !important;
padding-bottom: var(--ticker-mobile-bottom) !important;
}
} .hero-buttons a{
position: relative !important;
overflow: hidden !important;
isolation: isolate !important;
z-index: 5 !important;
} .hero-buttons a span{
position: relative;
z-index: 10;
} .hero-buttons a::before{
content:"";
position:absolute;
inset:0;
background: linear-gradient(
135deg,
rgba(255,255,255,.22),
rgba(255,255,255,.06)
);
transform: scale(0);
transform-origin: var(--mx,50%) var(--my,50%);
transition: transform 2.95s cubic-bezier(.2,.7,.1,1);
border-radius: inherit;
z-index:2;
} .hero-buttons a:hover::before{
transform: scale(2.4);
} @media (max-width:768px){
.hero-buttons a::after{
content:"";
position:absolute;
inset:-50%;
background: linear-gradient(
120deg,
transparent 25%,
rgba(255,255,255,.18) 45%,
rgba(255,255,255,.28) 50%,
rgba(255,255,255,.18) 55%,
transparent 75%
);
transform: translateX(-140%) rotate(14deg);
opacity:.45;
animation: mobileBtnShineSlow 6.5s linear infinite;
filter: blur(10px);
pointer-events:none;
}
@keyframes mobileBtnShineSlow{
from{
transform: translateX(-160%) rotate(14deg);
}
to{
transform: translateX(160%) rotate(14deg);
}
}
}
s .hero-feature svg{
width:26px;
height:26px;
min-width:26px;
} @media (max-width:768px){
.hero-feature svg{
width:22px;
height:22px;
min-width:22px;
}
}
.hero-feature svg{
fill: none !important; stroke: #ffb000 !important; stroke-width:1.8;
stroke-linecap:round;
stroke-linejoin:round;
width:26px;
height:26px;
min-width:26px;
filter: drop-shadow(0 0 4px rgba(255,176,0,.35)); } .hero-ready-label{
display:inline-flex;
align-items:center;
margin-bottom:16px;
padding:7px 18px;
font-size:14px;
font-weight:800;
letter-spacing:.14em;
text-transform:uppercase;
color:#ffffff; background:
linear-gradient(
135deg,
rgba(0,0,0,.55),
rgba(0,0,0,.35)
);
border-radius:999px; box-shadow:
0 10px 30px rgba(0,0,0,.45),
inset 0 0 0 1px rgba(255,215,140,.45);
backdrop-filter: blur(10px);
position:relative;
overflow:hidden;
white-space:nowrap;
} .hero-ready-label:after{
content:"";
position:absolute;
inset:-1px;
border-radius:inherit;
background:
linear-gradient(
135deg,
transparent 20%,
rgba(255,190,90,.6),
transparent 80%
);
opacity:.6;
pointer-events:none;
} .hero-ready-label:before{
content:"";
position:absolute;
inset:0;
background:
linear-gradient(
120deg,
transparent 25%,
rgba(255,255,255,.35),
transparent 75%
);
transform:translateX(-120%);
animation:readyLabelShine 6s infinite;
}
@keyframes readyLabelShine{
to{ transform:translateX(120%); }
} .hero-ready-label:hover{
transform:translateY(-1px);
box-shadow:
0 14px 40px rgba(0,0,0,.55);
} @media(max-width:900px){
.hero-ready-label{
font-size:11px;
padding:6px 14px;
margin-bottom:12px;
}
} .hero-features{
overflow:hidden;
width:100%;
}
.hero-features-viewport{
width:100%;
overflow:hidden;
position:relative;
}
.hero-features-track{
display:flex;
width:max-content;
flex-wrap:nowrap;
will-change:transform;
animation: featureScroll 28s linear infinite;
}
.hero-feature{
flex:0 0 auto;
}
html, body{
overflow-y: auto !important;
height: auto !important;
position: static !important;
}
body{
overscroll-behavior: auto !important;
} @media (max-width:768px){
.hero-cinematic{ min-height: 100svh;
height: 100svh; min-height: 100vh;
height: 100vh; padding-top: 0;
margin-top: 0;
}
}
.hero-title{ letter-spacing:-0.05em;  max-width:12ch; margin-bottom:24px;
} .hero-cinematic [data-motion]{
opacity:0;
transition:
transform 1s cubic-bezier(.16,1,.3,1),
opacity 1s ease;
will-change:transform,opacity;
} .hero-cinematic.is-loaded [data-motion]{
opacity:1;
transform:none;
} [data-motion="left"]{
transform:translateX(-80px);
}
[data-motion="right"]{
transform:translateX(80px);
}
[data-motion="bottom"]{
transform:translateY(60px);
}
[data-motion="top"]{
transform:translateY(-60px);
}
[data-motion="scale"]{
transform:scale(.9);
} .hero-cinematic [data-motion-delay]{
transition-delay: var(--delay);
} .hero-scroll{
position:absolute;
bottom:40px;
left:50%;
transform:translateX(-50%);
cursor:pointer;
} .hero-scroll-ico{
transition:all .3s ease;
} .hero-scroll{
animation:heroScrollPulse 3s ease infinite;
} @keyframes heroScrollPulse{ 0%,70%,100%{
transform:translateX(-50%) scale(1);
filter:none;
} 75%{
transform:translateX(-50%) scale(1.25);
} 80%{
transform:translateX(-50%) scale(1.3) rotate(8deg);
filter:
drop-shadow(0 0 8px rgba(255,255,255,.8))
drop-shadow(0 0 20px rgba(255,255,255,.4));
} 85%{
transform:translateX(-50%) scale(1.2) rotate(-6deg);
} 90%{
transform:translateX(-50%) scale(1);
filter:none;
}
} .hero-scroll:hover{
animation-duration:1.5s;
} @media (max-width:1024px){ .hero-cinematic{
height:100dvh !important;
min-height:100dvh !important;
display:flex !important;
flex-direction:column !important;
justify-content:flex-end !important;
overflow:hidden !important;
margin-top:0 !important;
padding-top:var(--header-h) !important;
} .hero-content{
position:relative !important;
bottom:auto !important;
padding-bottom:20px !important;
display:flex !important;
flex-direction:column !important;
justify-content:flex-end !important;
height:100%;
} .hero-buttons{
position:relative !important;
left:auto !important;
bottom:auto !important;
transform:none !important;
margin-top:18px !important;
} .hero-features{
padding-bottom:0 !important;
margin-top:12px !important;
} .hero-scroll{
bottom:16px !important;
} .hero-title{
font-size:clamp(34px,8vw,56px) !important;
line-height:.9 !important;
}
.hero-big{
font-size:clamp(16px,4vw,22px) !important;
}
}