@font-face{font-family:"Bebas Neue";font-weight:400;font-display:swap;src:url(fonts/bebas-neue-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Serif Display";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/dm-serif-display-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Serif Display";font-weight:400;font-style:italic;font-display:swap;src:url(fonts/dm-serif-display-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:400;font-display:swap;src:url(fonts/dm-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:500;font-display:swap;src:url(fonts/dm-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Special Elite";font-weight:400;font-display:swap;src:url(fonts/special-elite-latin-400-normal.woff2) format("woff2")}
:root{--ink:#18120d;--cream:#efe3cc;--cream2:#e4d3b3;--blue:#1f5a96;--blue2:#123a63;--red:#b3261e;--tan:#d9a86a;--g:clamp(20px,5.5vw,88px);--grain2:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .3  0 0 0 0 .2  0 0 0 0 .1  0 0 0 .16 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>");--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .55 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>")}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font:400 17px/1.65 "DM Sans",system-ui,sans-serif;background:var(--ink);color:var(--cream);-webkit-font-smoothing:antialiased}
a{color:inherit}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--tan);color:#000;padding:8px 12px;z-index:99}
.wrap{max-width:1360px;margin:0 auto;padding:0 var(--g)}
h1,h2,h3,.brand,.btn,.tel,.small,.kicker,.verbs b,.eras button{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400}
.hd{position:fixed;inset:0 0 auto 0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px var(--g);transition:background .4s,padding .4s}
.hd.sc{background:rgba(18,58,99,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:10px var(--g);box-shadow:0 1px 0 rgba(239,227,204,.2)}
.brand{text-decoration:none;font-size:30px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.brand b{color:var(--tan);font-weight:400}
.hd nav{display:flex;gap:clamp(18px,3vw,40px);font-size:15px;font-weight:500}.hd nav a{text-decoration:none;position:relative;padding:4px 0;color:#e6dcc6}.hd nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--tan);transition:right .35s}.hd nav a:hover::after{right:0}
.tel{border:2px solid var(--cream);padding:5px 18px;text-decoration:none;font-size:22px;letter-spacing:.06em;border-radius:4px;transition:.25s;white-space:nowrap}.tel:hover{background:var(--cream);color:var(--blue2)}
/* hero */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:90px var(--g) 0;overflow:hidden;background:var(--blue2);text-align:center}
.rays{position:absolute;left:50%;top:40%;width:260vmax;height:260vmax;margin:-130vmax 0 0 -130vmax;background:repeating-conic-gradient(from 0deg,#245f9c 0 5deg,#184777 5deg 10deg);animation:rot 160s linear infinite;opacity:.9}@keyframes rot{to{transform:rotate(360deg)}}
.vig{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,rgba(18,58,99,0) 0,rgba(10,28,50,.45) 60%,rgba(8,20,36,.92) 100%),var(--grain);background-blend-mode:normal;opacity:1}
.vig::after{content:"";position:absolute;inset:0;background:var(--grain);opacity:.12;mix-blend-mode:overlay}
.hero-in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center}
.badge{width:clamp(80px,7vw,100px);height:auto;margin-bottom:8px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4))}.spin{transform-origin:80px 80px;animation:rot 40s linear infinite}
.kicker{font-size:19px;letter-spacing:.28em;text-transform:uppercase;color:var(--tan);margin-bottom:6px}
h1{font-size:clamp(60px,8.6vw,150px);line-height:.9;letter-spacing:.02em;text-transform:uppercase;text-shadow:0 6px 30px rgba(0,0,0,.45)}
h1 .l{display:inline-block;overflow:hidden;padding:.04em .08em .1em;margin:-.04em -.08em -.1em;vertical-align:top}h1 .l>span{display:block;transform:translateY(110%);animation:up 1.1s cubic-bezier(.2,.8,.2,1) forwards}h1 .l+.l>span{animation-delay:.14s}@keyframes up{to{transform:none}}
.gar{display:flex;align-items:center;gap:20px;font:400 clamp(28px,3.6vw,52px) "Bebas Neue";letter-spacing:.5em;text-transform:uppercase;margin:2px 0 12px;padding-left:.5em}.gar i{display:block;width:clamp(40px,10vw,150px);height:2px;background:var(--cream);opacity:.7}
.lead{font:italic 400 clamp(20px,2.4vw,32px)/1.25 "DM Serif Display",serif;color:var(--cream)}.lead small{display:block;margin-top:6px;font:400 16px/1.5 "DM Sans";font-style:normal;color:#cfc4ac}
.cta{display:flex;gap:26px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:16px}
.btn{display:inline-block;background:var(--tan);color:var(--ink);text-decoration:none;border:0;padding:12px 28px;font-size:23px;letter-spacing:.07em;text-transform:uppercase;border-radius:4px;cursor:pointer;position:relative;overflow:hidden}
.btn::before{content:"";position:absolute;inset:0;background:var(--cream);transform:translateY(101%);transition:.4s cubic-bezier(.2,.8,.2,1)}.btn span{position:relative;z-index:1}.btn:hover::before{transform:none}
.lnk{font-size:16px;font-weight:500;text-underline-offset:7px;text-decoration-color:var(--tan)}
.now{margin-top:18px;display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500}.now i{width:10px;height:10px;border-radius:50%;background:#999;box-shadow:0 0 0 4px rgba(255,255,255,.12)}.now i.open{background:#3ccf7a;box-shadow:0 0 0 4px rgba(60,207,122,.25);animation:pl 2s infinite}@keyframes pl{50%{box-shadow:0 0 0 8px rgba(60,207,122,0)}}.now i.closed{background:#ff5a4a}
.scene{position:relative;z-index:2;width:100%;max-width:min(680px,92vw);margin-top:14px}
#car{width:100%;height:auto;display:block;overflow:visible;cursor:pointer;-webkit-tap-highlight-color:transparent}
#car:hover #beamP,#car.lit #beamP{opacity:1}#beamP{transition:opacity .4s}
.hint{position:absolute;left:0;right:0;top:-16px;font-size:13px;color:#cfc4ac;letter-spacing:.05em}
.road{position:relative;z-index:1;height:44px;width:calc(100% + var(--g) * 2);margin:-12px calc(var(--g) * -1) 0;background:#14100c;overflow:hidden;border-top:3px solid #3a2f24}.road i{position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;background:repeating-linear-gradient(90deg,var(--tan) 0 40px,transparent 40px 90px);animation:rd 1.4s linear infinite}@keyframes rd{to{background-position:90px 0}}
.strip{background:var(--cream);color:var(--ink);overflow:hidden;padding:12px 0;border-block:3px solid var(--ink)}.track{display:flex;width:max-content;animation:mq 34s linear infinite}.track span{font:400 clamp(26px,3vw,40px) "Bebas Neue";letter-spacing:.06em;text-transform:uppercase;padding:0 clamp(20px,2.4vw,36px);position:relative}.track span::after{content:"✦";position:absolute;right:-.2em;font-size:.55em;top:.35em;color:var(--red)}@keyframes mq{to{transform:translateX(-50%)}}
/* sections */
.sec{padding:clamp(80px,11vw,160px) 0}.paper{background:var(--cream) var(--grain2);color:var(--ink)}.dark{background:var(--ink);color:var(--cream)}
.small{font-size:19px;letter-spacing:.28em;text-transform:uppercase;color:var(--red);margin-bottom:10px}.dark .small{color:var(--tan)}
.big{font:400 clamp(48px,7vw,116px)/.9 "Bebas Neue";text-transform:uppercase;letter-spacing:.015em;max-width:11em}.big em{font-style:normal;color:var(--red)}.dark .big em{color:var(--tan)}
.rv{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1)}.rv.in{opacity:1;transform:none}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,100px);align-items:start}.txt{margin-top:22px;max-width:26em;color:#4a3f33}
.quote{margin-top:34px;font:italic 400 clamp(26px,3vw,42px)/1.2 "DM Serif Display",serif;color:var(--blue2);border-left:4px solid var(--red);padding-left:22px}.quote cite{display:block;margin-top:14px;font:500 14px "DM Sans";font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:#6a5a47}
.card{position:relative;background:#f7eedb;border:2px solid var(--ink);padding:clamp(24px,3vw,44px);box-shadow:10px 10px 0 var(--blue2)}
.tag{font:400 14px "Special Elite";letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.story{font:400 16px/1.7 "Special Elite",monospace;color:#2a2018;margin-bottom:12px}
.tl{list-style:none;margin-top:22px;border-left:3px solid var(--ink);padding-left:22px}.tl li{position:relative;padding:8px 0}.tl li::before{content:"";position:absolute;left:-30px;top:16px;width:13px;height:13px;border-radius:50%;background:var(--cream);border:3px solid var(--ink)}.tl li.now2::before{background:var(--red);border-color:var(--red)}
.tl b{font:400 24px "Bebas Neue";letter-spacing:.05em;text-transform:uppercase;display:block;line-height:1.1}.tl span{font-size:14px;color:#6a5a47}
.stamp{position:absolute;right:-14px;top:-26px;width:104px;height:104px;border:3px solid var(--red);border-radius:50%;color:var(--red);display:grid;place-content:center;text-align:center;transform:rotate(-12deg);background:#f7eedb;opacity:.95}.stamp b{font:400 44px/1 "Bebas Neue"}.stamp span{font:400 12px "Special Elite";letter-spacing:.06em}
.verbs{list-style:none;margin-top:clamp(40px,6vw,80px);border-top:1px solid rgba(239,227,204,.3)}
.verbs li{display:grid;grid-template-columns:80px 1fr 1fr;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid rgba(239,227,204,.25);transition:padding .45s cubic-bezier(.2,.8,.2,1)}
.verbs b{font-size:24px;color:var(--tan);letter-spacing:.1em}.verbs h3{font:400 clamp(52px,7.4vw,120px)/.9 "Bebas Neue";text-transform:uppercase;letter-spacing:.01em;transition:color .3s}.verbs p{color:#cfc4ac;max-width:24em}
.verbs li:hover{padding-left:20px}.verbs li:hover h3{color:var(--tan)}
.sub{margin-top:clamp(50px,7vw,90px)}
.eras{display:flex;flex-wrap:wrap;gap:10px}.eras button{font-size:26px;letter-spacing:.07em;text-transform:uppercase;padding:6px 22px;border:2px solid rgba(239,227,204,.5);background:transparent;color:var(--cream);border-radius:4px;cursor:pointer;transition:.25s}.eras button:hover{border-color:var(--tan)}.eras button.on{background:var(--tan);border-color:var(--tan);color:var(--ink)}
.era{margin-top:22px;max-width:40em;border-left:4px solid var(--tan);padding-left:22px;min-height:7em}.era h3{font:italic 400 clamp(30px,3.4vw,48px)/1.1 "DM Serif Display",serif}.era p{margin-top:8px;color:#d6cbb3;font-size:18px}.era.swap{animation:sw .45s}@keyframes sw{from{opacity:0;transform:translateY(10px)}}
.hours{border-collapse:collapse;width:100%;font-size:20px}.hours tr{border-bottom:2px solid rgba(24,18,13,.25)}.hours th,.hours td{text-align:left;padding:14px 8px;font-weight:500;white-space:nowrap}.hours th{font:400 28px "Bebas Neue";letter-spacing:.06em;text-transform:uppercase}.hours tr.today{background:var(--blue2);color:var(--cream)}
.contact{background:var(--ink)}.ct-g{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,6vw,100px)}.note{margin:22px 0 28px;max-width:26em;color:#d6cbb3}address{font-style:normal;color:#d6cbb3}address b{color:#fff;font-weight:500}address a{text-underline-offset:5px}
form{display:flex;flex-direction:column;gap:4px;background:var(--cream);color:var(--ink);padding:clamp(24px,3.4vw,52px);border:2px solid var(--tan);box-shadow:10px 10px 0 var(--blue)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
label{display:block;font:400 18px "Bebas Neue";letter-spacing:.14em;text-transform:uppercase;color:#6a5a47;margin-top:14px}
input:not(.hp),textarea{font:400 17px "DM Sans";padding:10px 0;border:0;border-bottom:2px solid rgba(24,18,13,.4);background:transparent;color:var(--ink);border-radius:0;width:100%}input:focus,textarea:focus{outline:0;border-bottom-color:var(--red)}textarea{resize:vertical}
form .btn{margin-top:24px;align-self:flex-start;background:var(--blue2);color:var(--cream)}form .btn::before{background:var(--red)}.hp{position:absolute;left:-9999px}
a:focus-visible,.btn:focus-visible,button:focus-visible,#car:focus-visible{outline:3px solid var(--tan);outline-offset:3px}
.form-msg{font-size:15px;min-height:1.4em;margin-top:8px}.form-msg.ok{color:#14803a}.form-msg.err{color:#b3261e}.form-msg.info{background:#f3d9a4;padding:6px 10px}
footer{padding:26px var(--g);background:#0d0905;color:#a99d86;font-size:15px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}footer b{color:#fff;font-weight:500}
.legal-page{background:var(--cream);color:var(--ink)}.legal{max-width:760px;margin:0 auto;padding:60px 22px}.legal h1{font-size:clamp(46px,6vw,76px);margin:20px 0;text-shadow:none}.legal h2{font:400 30px "Bebas Neue";margin:26px 0 8px;color:var(--red);letter-spacing:.04em}.legal p{margin:8px 0}.draft{background:#f3d9a4;padding:10px 14px}
@media (max-width:980px){.hd nav{display:none}.two,.ct-g,.row2{grid-template-columns:1fr}.verbs li{grid-template-columns:50px 1fr}.verbs p{grid-column:2}.hero{padding-top:84px}.brand{font-size:24px}.tel{font-size:19px;padding:4px 12px}.stamp{right:-6px;width:88px;height:88px}.stamp b{font-size:36px}.hint{top:-10px;font-size:12px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}h1 .l>span{transform:none}.rv{opacity:1;transform:none}}
