:root{
  /* Red Bull-style blue theme */
  --bg:#13285F; --surface:#0E1F4B; --text:#F1F4FF; --muted:#AEBAE3; --line:#2B4180;
  --deep:#0A1638; --deep-2:#060E27; --on-deep:#F5F6FB; --on-deep-muted:#B9C4E8;
  --cta:#46C26B; --cta-text:#062012; --hivis:#FFF200; --road:#2A6AC4; --focus:#FFF200;
  --field-bg:rgba(255,255,255,.08); --field-line:rgba(255,255,255,.4);
  --gutter:clamp(1.25rem,5vw,3.5rem);
  --f-display:"Anybody","Arial Black",system-ui,sans-serif;
  --f-body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color-scheme:dark;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 7rem);scroll-behavior:smooth}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.6 var(--f-body);-webkit-text-size-adjust:100%}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.deep :focus-visible,.site-head :focus-visible{outline-color:var(--hivis)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:74rem;margin-inline:auto}
.display{font-family:var(--f-display);font-variation-settings:"wdth" 118;font-weight:800;line-height:.98;letter-spacing:-.01em;margin:0}
h2.display{font-size:clamp(2.1rem,5.2vw,3.9rem)}
h3{margin:0}

/* header */
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:var(--deep);color:var(--on-deep);border-bottom:1px solid rgba(255,255,255,.12)}
.site-head .in{max-width:74rem;margin-inline:auto;padding:.7rem var(--gutter);display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 2rem}
.brand{display:block;line-height:0;margin-right:auto}
.brand svg{height:3.1rem;width:9rem;display:block}
.nav{display:flex;gap:1.5rem;overflow-x:auto;max-width:100%;scrollbar-width:none}
.nav a{text-decoration:none;font-weight:600;font-size:.95rem;padding:.4rem 0;white-space:nowrap;color:var(--on-deep-muted)}
.nav a:hover{color:var(--on-deep)}
.lang{display:inline-flex;border:1.5px solid rgba(255,255,255,.5);border-radius:.375rem;overflow:hidden}
.lang button{font:inherit;font-size:.85rem;font-weight:700;padding:.3rem .65rem;background:transparent;color:var(--on-deep);border:0;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--on-deep);color:var(--deep)}
@media (max-width:860px){.nav{order:3;width:100%;gap:1.25rem}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 1.5rem;border-radius:.375rem;font:inherit;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer}
.btn-primary{background:var(--cta);color:var(--cta-text)}
.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{border-color:currentColor;background:transparent;color:inherit}
.btn-ghost:hover{background:rgba(255,255,255,.1)}

/* hero */
.deep{background:var(--deep);color:var(--on-deep)}
.hero{padding:clamp(3rem,8vw,6rem) var(--gutter) clamp(3rem,7vw,5.5rem);overflow:hidden}
.hero .wrap{display:grid;gap:2.5rem;align-items:center}
@media (min-width:900px){.hero .wrap{grid-template-columns:7fr 5fr}}
.hero h1{font-size:clamp(3.2rem,10.5vw,8.2rem);max-width:9ch;text-wrap:balance}
.hero p{max-width:34rem;font-size:1.2rem;color:var(--on-deep-muted);margin:1.5rem 0 2rem}
.hero .actions{display:flex;flex-wrap:wrap;gap:.9rem}
.stage{width:100%;max-width:26rem;justify-self:center;height:auto}
.stage .ribbon{fill:none;stroke:var(--road);stroke-width:46;stroke-linecap:round}
.stage .line{fill:none;stroke:var(--hivis);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.stage .note rect{fill:var(--hivis)}
.stage .note text{fill:#181A33;font:800 15px var(--f-display);font-variation-settings:"wdth" 110}
@media (prefers-reduced-motion:no-preference){
  .stage .line{stroke-dashoffset:1;animation:draw 2.8s cubic-bezier(.45,.05,.3,1) .2s forwards}
  .stage .note{opacity:0;animation:pop .35s ease-out forwards;animation-delay:calc(var(--d)*1s)}
  @keyframes draw{to{stroke-dashoffset:0}}
  @keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
}

/* sections */
.block{padding:clamp(4rem,9vw,7.5rem) var(--gutter)}
.block.alt{background:var(--surface)}
.sec-head{max-width:44rem;margin-bottom:clamp(2rem,4vw,3.25rem)}
.sec-head p{color:var(--muted);margin:1.1rem 0 0;max-width:40rem}
.deep .sec-head p{color:var(--on-deep-muted)}

/* photo slots */
.ph{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--road),var(--deep));color:var(--on-deep);display:grid;place-items:center}
.ph .ini{font-family:var(--f-display);font-variation-settings:"wdth" 120;font-weight:800;font-size:clamp(2rem,6vw,3.5rem);color:var(--on-deep);opacity:.9}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph--car{aspect-ratio:3/2;border-radius:.5rem}
.ph--car img{transform:scale(1.35);transform-origin:56% 62%}
.stripes{display:block;width:min(15rem,60%);aspect-ratio:315/13;margin-top:1rem}

/* rental */
.rent{display:grid;gap:2.5rem;margin-bottom:clamp(3rem,6vw,5rem)}
@media (min-width:900px){.rent{grid-template-columns:5fr 6fr;align-items:center}}
.rent p{color:var(--muted);max-width:32rem}
.rent .actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.75rem}
.seg{display:inline-flex;border:2px solid var(--text);border-radius:.375rem;overflow:hidden}
.seg button{font:inherit;font-weight:700;padding:.5rem 1.2rem;background:transparent;color:var(--text);border:0;cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--text);color:var(--bg)}
.about{display:grid;gap:2.5rem;margin-bottom:clamp(3rem,6vw,4.5rem)}
@media (min-width:900px){.about{grid-template-columns:5fr 6fr;gap:3.5rem}}
.about>p{margin:0;max-width:34rem;color:var(--muted)}
.about h3{font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:1.35rem;margin-bottom:.6rem}
.about ul{list-style:none;margin:0;padding:0}
.about li{padding:.6rem 0 .6rem 1.4rem;border-top:1px solid var(--line);position:relative}
.about li::before{content:"";position:absolute;left:0;top:1.15rem;width:.7rem;height:.35rem;background:var(--hivis);border:1px solid var(--text);transform:skewX(-30deg)}
.about .src{display:inline-block;margin-top:.9rem;font-size:.95rem;color:var(--muted)}
.spec-bar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-bottom:2rem}
.spec-bar h3{font-family:var(--f-display);font-variation-settings:"wdth" 115;font-weight:800;font-size:1.6rem}
.spec-bar span.hint{color:var(--muted);font-size:.95rem}
.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:2.5rem 3.5rem}
.spec h4{margin:0 0 .4rem;font-family:var(--f-display);font-variation-settings:"wdth" 110;font-weight:800;font-size:1.05rem}
.spec .row{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:1px solid var(--line);font-size:.98rem}
.spec dt{color:var(--muted)}
.spec dd{margin:0;font-weight:600;text-align:right}
.spec dl{margin:0}
.flash{animation:flash .9s ease-out}
@keyframes flash{from{background:var(--hivis);color:#181A33}to{background:transparent}}
.sale{margin-top:clamp(3rem,6vw,4.5rem);padding:1.5rem 0;border-top:2px solid var(--text);display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between}
.truck-video{display:block;width:min(100%,22rem);aspect-ratio:9/16;background:var(--deep);border-radius:.5rem;margin-top:1.5rem}
.video-feature{padding-top:2.6rem;padding-bottom:2.6rem}
.video-feature h2{margin:0 0 1.2rem}
.video-feature .yt-embed{max-width:64rem;margin-inline:auto}
.yt-embed{position:relative;width:100%;max-width:52rem;aspect-ratio:16/9;background:var(--deep-2);border-radius:.6rem;overflow:hidden;margin-top:1.5rem;box-shadow:0 1.5rem 3rem rgba(0,0,0,.35)}
.yt-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sale strong{font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:1.35rem}

/* team */
.people{display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem;max-width:46rem}
.people.three{grid-template-columns:repeat(3,1fr);max-width:60rem}
@media (max-width:640px){.people.three{grid-template-columns:1fr 1fr}.people.three .person:last-child{grid-column:1/-1}}
.person .ph{aspect-ratio:4/5;border-radius:.5rem}
.person b{display:block;margin-top:.7rem;font-family:var(--f-display);font-variation-settings:"wdth" 110;font-weight:800;font-size:1.2rem;line-height:1.15}
.person span{color:var(--muted)}
.crew{margin-top:clamp(2.5rem,5vw,4rem)}
.crew h3{font-family:var(--f-display);font-variation-settings:"wdth" 115;font-weight:800;font-size:1.5rem;margin-bottom:1rem}
.crew ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.5rem 2rem}
.crew li{display:flex;align-items:center;gap:.8rem;padding:.55rem 0;border-top:1px solid var(--line);font-weight:600}
.crew .ph{width:2.75rem;height:2.75rem;border-radius:50%;flex:none}
.crew .ph .ini{font-size:.9rem}

/* results */
.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1.25rem}
.chip{font:inherit;font-weight:700;font-size:.95rem;padding:.4rem .95rem;border-radius:2rem;border:2px solid var(--text);background:transparent;color:var(--text);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--text);color:var(--bg)}
.chip-current{font-size:1.2rem;padding:.55rem 1.35rem;border-width:3px}
.filters .sp{flex:1 1 1rem}
.count{color:var(--muted);font-size:.95rem;margin:0 0 .75rem}
.tbl-wrap{overflow-x:auto}
table.rt{width:100%;border-collapse:collapse;min-width:0}
.rt th{text-align:left;font-size:.9rem;color:var(--muted);font-weight:600;padding:.6rem .8rem;border-bottom:2px solid var(--text)}
.rt td{padding:.8rem;border-bottom:1px solid var(--line);vertical-align:top}
.rt .ev b{font-weight:700}
.rt .ev small{display:block;color:var(--muted)}
.rt .c-car{white-space:nowrap}
.rt .k{color:var(--muted);font-size:.95rem}
.pos{display:inline-grid;place-items:center;min-width:2.4rem;height:2.4rem;padding:0 .4rem;border-radius:.3rem;font-family:var(--f-display);font-variation-settings:"wdth" 110;font-weight:800;font-size:1.1rem}
.pos.top{background:var(--hivis);color:#181A33}
.pos.dnf{font-family:var(--f-body);font-weight:600;font-size:.9rem;color:var(--muted);min-width:0;padding:0}
@media (max-width:720px){
  .rt thead{position:absolute;left:-9999px}
  .rt tr{display:grid;grid-template-columns:3rem 1fr;grid-template-areas:"pos ev" "pos yr" "pos car" "pos k";column-gap:.9rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
  .rt td{padding:0;border:0}
  .rt td.c-pos{grid-area:pos}.rt td.ev{grid-area:ev}.rt td.c-y{grid-area:yr;color:var(--muted);font-size:.95rem}
  .rt td.c-car{grid-area:car;font-size:.95rem}.rt td.k{grid-area:k}
}
.best{font-weight:600;margin-top:1.1rem;max-width:44rem}

/* tenants */
.tenants{display:grid;gap:2rem}
@media (min-width:860px){.tenants{grid-template-columns:13rem 1fr;gap:4rem}}
.years{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.4rem}
@media (min-width:860px){.years{flex-direction:column;gap:0;overflow:visible}}
.years button{font:inherit;text-align:left;background:transparent;color:var(--muted);border:0;border-top:1px solid var(--line);padding:.55rem .25rem;cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;white-space:nowrap}
.years button b{font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:1.6rem;line-height:1.1}
.years button[aria-pressed="true"]{color:var(--text);border-top:4px solid var(--hivis);padding-top:.35rem}
@media (max-width:859px){.years button{border:2px solid var(--line);border-radius:.375rem;padding:.4rem .8rem}.years button[aria-pressed="true"]{border-color:var(--text);border-top-width:2px;padding-top:.4rem;background:var(--text);color:var(--bg)}.years button b{font-size:1.2rem}}
.crews{list-style:none;margin:0;padding:0}
.crews li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.2rem 1.5rem;padding:.85rem 0;border-top:1px solid var(--line)}
.crews li:last-child{border-bottom:1px solid var(--line)}
.crews b{font-weight:700}
.crews span{color:var(--muted)}
.crews-empty{color:var(--muted);border-top:1px solid var(--line);padding:.85rem 0;border-bottom:1px solid var(--line)}
.cars-note{margin-top:1.5rem;color:var(--muted);max-width:40rem}

/* news */
.news{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:2.5rem 2rem}
.news article{border-top:4px solid var(--text);padding-top:1rem}
.news small{color:var(--muted);font-weight:600}
.news h3{font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:1.6rem;line-height:1.05;margin:.35rem 0 .7rem}
.news p{margin:0;color:var(--muted)}
.more{display:inline-block;margin-top:2rem;font-weight:700}

/* contact */
.contact{display:grid;gap:3rem}
@media (min-width:900px){.contact{grid-template-columns:5fr 6fr}}
.contact .mail{display:inline-block;margin-top:1.5rem;font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:clamp(1.3rem,3vw,1.9rem)}
form{display:grid;gap:1.1rem}
label{display:grid;gap:.35rem;font-weight:600}
label i{font-weight:400;font-style:normal;color:var(--on-deep-muted)}
input[type=text],input[type=email],input[type=tel],textarea{font:inherit;color:var(--on-deep);background:var(--field-bg);border:1.5px solid var(--field-line);border-radius:.375rem;padding:.75rem .9rem;width:100%}
textarea{min-height:8rem;resize:vertical}
.check{display:flex;gap:.7rem;align-items:flex-start;font-weight:400}
.check input{margin-top:.35rem;width:1.1rem;height:1.1rem;accent-color:var(--hivis)}
.fine{font-size:.9rem;color:var(--on-deep-muted);margin:0}
.status{min-height:1.5em;font-weight:600;color:var(--hivis);margin:0}

/* footer */
.site-foot{background:var(--deep-2);color:var(--on-deep-muted);padding:2rem var(--gutter);font-size:.95rem}
.site-foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem}
.site-foot svg{height:2.8rem;width:8.1rem;display:block}
.site-foot a{color:var(--on-deep)}

.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}


/* gallery */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.9rem}
.gal-item{position:relative;padding:0;margin:0;border:0;border-radius:.5rem;overflow:hidden;cursor:pointer;
  aspect-ratio:4/3;background:linear-gradient(135deg,var(--road),var(--deep));}
.gal-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gal-item:hover img,.gal-item:focus-visible img{transform:scale(1.06)}
.gal-item:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(10,11,22,.94);
  display:grid;place-items:center;padding:clamp(1rem,5vw,3rem)}
.lightbox img{max-width:min(92vw,64rem);max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:.4rem}
.lightbox p{position:absolute;left:0;right:0;bottom:clamp(1rem,4vw,2rem);margin:0;text-align:center;
  color:var(--on-deep);font-weight:600;padding:0 4.5rem}
.lb-close{position:absolute;top:1rem;right:1.2rem;width:2.6rem;height:2.6rem;border-radius:50%;
  border:0;background:rgba(255,255,255,.12);color:var(--on-deep);font-size:1.6rem;line-height:1;cursor:pointer}
.lb-close:hover,.lb-close:focus-visible{background:var(--hivis);color:#181A33}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:3rem;height:3rem;border-radius:50%;
  border:0;background:rgba(255,255,255,.12);color:var(--on-deep);font-size:1.1rem;cursor:pointer}
.lb-nav:hover,.lb-nav:focus-visible{background:var(--hivis);color:#181A33}
.lb-prev{left:clamp(.5rem,3vw,2rem)}
.lb-next{right:clamp(.5rem,3vw,2rem)}
@media (max-width:640px){.lb-nav{width:2.4rem;height:2.4rem;font-size:.95rem}.lightbox p{padding:0 3.4rem}}
.lightbox[hidden]{display:none}

/* page navigation */
.nav a[aria-current="page"]{color:var(--on-deep);box-shadow:inset 0 -3px 0 var(--hivis)}
.subnav{background:var(--deep-2);border-bottom:1px solid rgba(255,255,255,.08)}
.subnav .in{max-width:74rem;margin-inline:auto;padding:.55rem var(--gutter);display:flex;flex-wrap:wrap;gap:.25rem 1.6rem}
.subnav a{color:var(--on-deep-muted);font-weight:600;font-size:.9rem;text-decoration:none;padding:.2rem 0}
.subnav a:hover,.subnav a:focus-visible{color:var(--hivis)}

/* customer photos */
.crew-photos{flex-basis:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;max-width:30rem;margin-top:.35rem}
.crew-ph{padding:0;margin:0;border:0;border-radius:.4rem;overflow:hidden;cursor:pointer;aspect-ratio:4/3;background:linear-gradient(135deg,var(--road),var(--deep))}
.crew-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.crew-ph:hover img,.crew-ph:focus-visible img{transform:scale(1.07)}
.crew-ph:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* intro animation: logo + Fabia */
.intro{position:fixed;inset:0;z-index:200;background:#101122;display:grid;place-items:center;overflow:hidden;cursor:pointer;animation:ixOut .6s ease 5.3s forwards}
.no-intro .intro{display:none}
.intro.out{animation:ixOut .4s ease forwards}
.ix-stage{--u:calc(min(100vw,177.78vh)/100);position:relative;width:calc(var(--u)*100);height:calc(var(--u)*56.25);overflow:hidden;background:#101122;font-size:var(--u);font-family:var(--f-display)}
.ix-stage>*{position:absolute}
.ix-car{top:0;bottom:0;left:12%;width:104%;background:url("fabia-rs-rally2.jpg") 50% 55%/cover no-repeat;transform-origin:70% 62%;clip-path:polygon(0 0,-5% 0,-20% 100%,0 100%);
  animation:ixWipe 1.15s cubic-bezier(.7,0,.2,1) .45s forwards,ixPush 9s cubic-bezier(.2,.6,.2,1) .45s forwards}
.ix-shade{inset:0;background:linear-gradient(90deg,#101122 0%,#101122 14%,rgba(16,17,34,.6) 30%,transparent 46%),linear-gradient(0deg,rgba(16,17,34,.75),transparent 40%);opacity:0;animation:ixFade 1s ease .5s forwards}
.ix-bar{top:-10%;height:120%;left:-30%;transform:skewX(-14deg);opacity:0;animation:ixBar 1.15s cubic-bezier(.7,0,.2,1) forwards}
.ix-b1{width:2.2em;background:#FFF200;animation-delay:.42s}.ix-b2{width:5em;background:#43B2E9;animation-delay:.5s}.ix-b3{width:9em;background:#1C58AA;animation-delay:.6s}
.ix-sheen{top:-10%;height:120%;width:14em;left:-25%;transform:skewX(-14deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);opacity:0;mix-blend-mode:soft-light;animation:ixSheen 1.4s ease-in-out 2.9s forwards}
.ix-logo{left:5em;bottom:6.2em;width:27em;height:auto;overflow:visible}
.ix-logo path{opacity:0;transform-box:fill-box;transform-origin:center;animation:ixPin .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(2s + var(--i)*.13s)}
.ix-copy{left:5em;bottom:21em;color:#fff}
.ix-copy .ix-m{font-weight:700;font-size:1.25em;letter-spacing:.32em;text-transform:uppercase;color:#FFF200;overflow:hidden}
.ix-copy h2{margin:.35em 0 0;font-weight:900;font-stretch:112%;font-size:4em;line-height:.98;text-transform:uppercase;letter-spacing:-.01em;color:#fff}
.ix-ln,.ix-m{overflow:hidden}
.ix-copy span{display:block;transform:translateY(110%);animation:ixUp .8s cubic-bezier(.2,.8,.2,1) forwards}
.ix-m span{animation-delay:3.1s;animation-duration:.7s}
.ix-ln span{animation-delay:3.25s}.ix-ln+.ix-ln span{animation-delay:3.4s}
.ix-stripe{right:0;bottom:4.4em;height:.5em;width:0;background:linear-gradient(90deg,transparent,#FFF200 40%);animation:ixGrow 1.2s cubic-bezier(.2,.8,.2,1) 3.6s forwards}
.ix-hint{position:absolute;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));color:rgba(255,255,255,.75);font:600 .85rem var(--f-body);letter-spacing:.04em}
@keyframes ixWipe{to{clip-path:polygon(0 0,125% 0,110% 100%,0 100%)}}
@keyframes ixPush{from{transform:scale(1.22) translateX(3%)}to{transform:scale(1.02) translateX(0)}}
@keyframes ixBar{0%{opacity:1;left:-30%}100%{opacity:1;left:125%}}
@keyframes ixFade{to{opacity:1}}
@keyframes ixSheen{0%{opacity:1;left:-25%}100%{opacity:1;left:120%}}
@keyframes ixPin{from{opacity:0;transform:translateX(-46px) skewX(-14deg)}to{opacity:1;transform:none}}
@keyframes ixUp{to{transform:none}}
@keyframes ixGrow{to{width:38em}}
@keyframes ixOut{to{opacity:0;visibility:hidden}}
/* portrait phones */
@media (max-aspect-ratio:1/1){
  .ix-stage{--u:calc(100vw/32);width:100vw;height:100%}
  .ix-car{left:-25%;width:150%;top:7%;bottom:auto;height:46%}
  .ix-shade{background:linear-gradient(0deg,#101122 0%,#101122 38%,rgba(16,17,34,.6) 50%,transparent 62%),linear-gradient(90deg,#101122,transparent 12%)}
  .ix-logo{left:2em;bottom:4.5em;width:20em}
  .ix-copy{left:2em;bottom:16.5em}
  .ix-copy h2{font-size:3.6em}
  .ix-stripe{bottom:2.6em}
}
@media (prefers-reduced-motion:reduce){.intro{display:none}}

/* calendar tiles */
.cal-item{display:block;text-align:left}
.cal-mon{position:absolute;left:0;right:0;bottom:0;padding:1.6rem .7rem .5rem;font-family:var(--f-display);font-variation-settings:"wdth" 112;font-weight:800;font-size:1rem;color:#fff;background:linear-gradient(0deg,rgba(16,17,34,.85),transparent);z-index:1;text-transform:uppercase;letter-spacing:.02em}
.cal-soon{display:none}
.cal-item.empty{cursor:default;background:transparent;border:2px dashed var(--line);display:grid;place-content:center;text-align:center;gap:.15rem}
.cal-item.empty .cal-mon{position:static;padding:0;background:none;color:var(--text);font-size:1.05rem}
.cal-item.empty .cal-soon{display:block;color:var(--muted);font-size:.85rem;font-weight:600}
