@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#111111;--panel:#191919;--ink:#f1f0eb;--dim:#a6a6a1;--line:#353535;--accent:#ff6b35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}::selection{background:var(--accent);color:#111}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.08;font-weight:500}h2{font-size:clamp(2.2rem,4.5vw,4.6rem);letter-spacing:-.055em}h3{letter-spacing:-.035em}.muted{color:var(--dim)}em{font-style:normal;color:var(--accent)}.skip{position:fixed;left:1rem;top:-80px;background:var(--accent);padding:1rem;z-index:100}.skip:focus{top:1rem}.nav{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;top:0;width:100%;z-index:5;border-bottom:1px solid #ffffff24;transition:background .3s}.brand{position:relative;font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:800;letter-spacing:.14em;display:flex;align-items:center;gap:9px;padding-bottom:12px}.brand-mark{color:var(--accent);font-size:2.5rem;font-weight:400;line-height:1}.brand-sub{position:absolute;bottom:-2px;left:44px;font-family:'DM Sans',sans-serif;font-size:.625rem;letter-spacing:.23em;font-weight:500}.nav nav{display:flex;gap:34px;font-size:.875rem}.nav nav a{position:relative}.nav nav a:after{content:'';position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--accent);transition:width .3s}.nav nav a:hover:after{width:100%}.button{border:1px solid #ffffff65;background:transparent;min-height:50px;padding:14px 26px;display:inline-flex;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;transition:background .25s,color .25s,transform .25s;border-radius:2px;line-height:1.4}.button:hover{background:var(--ink);color:var(--bg);transform:translateY(-2px)}.button.accent{background:var(--accent);border-color:var(--accent);color:#141414}.button.accent:hover{background:#ff8658;border-color:#ff8658}.menu-toggle{display:none}.hero{isolation:isolate;height: min(940px,100svh);min-height:730px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:128px 5% 32px}.hero-image{position:absolute;inset:0;object-position:center 72%;animation:hero-drift 16s ease-in-out infinite alternate;z-index:-2}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000b,transparent 85%),linear-gradient(0deg,#111f,transparent 45%,#1117);z-index:-1}.hero-top{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.15em;color:#ddd}.hero-content{margin-top:auto;margin-bottom:65px;max-width:1400px}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.18em;margin-bottom:30px;color:var(--accent)}h1{font-size:clamp(3.5rem,6.6vw,7.4rem);letter-spacing:-.063em;line-height:1.13}.title-line{display:block;animation:title-in 1.1s cubic-bezier(.2,.8,.2,1) both}.title-line:nth-child(2){animation-delay:.2s}.outline{-webkit-text-stroke:1px #e9e9e9;color:transparent}.hero-bottom{display:flex;align-items:flex-end;gap:75px;margin-top:35px}.hero-bottom p{font-size:1.1rem;line-height:1.55}.intro-anim{animation:fade-in 1s .5s both}.hero-foot{display:flex;justify-content:space-between;align-items:center;font-size:.6875rem;letter-spacing:.13em;color:#ccc}.scroll-link{display:flex;gap:16px;align-items:center}.scroll-line{width:48px;height:1px;background:#555;position:relative;overflow:hidden}.scroll-line:before{content:'';position:absolute;width:24px;height:1px;background:var(--accent);animation:scroll-line 2s infinite}.vertical-label{color:#aaa}.ticker{border-bottom:1px solid var(--line);overflow:hidden;padding:24px 0}.ticker div{white-space:nowrap;width:max-content;animation:ticker 40s linear infinite;font-family:Manrope,sans-serif;font-size:.875rem;letter-spacing:.18em;color:#ccc}.ticker span{padding:0 40px;color:var(--accent)}.section{padding:110px 7%;max-width:1600px;margin:auto}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:20px 80px;margin-bottom:65px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:5px}.section-copy{max-width:410px;color:var(--dim);justify-self:end}.service{border-top:1px solid var(--line);padding:32px 0}.service:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:35px;cursor:pointer}summary::-webkit-details-marker{display:none}.number{font-size:.75rem;color:var(--dim);width:30px}.service h3{font-size:clamp(1.5rem,2.7vw,2.75rem)}.service-tag{margin-left:auto;font-size:.6875rem;letter-spacing:.12em;color:var(--dim)}.plus{font-size:1.6rem;margin-left:35px;font-weight:400;transition:transform .3s;color:var(--accent)}details[open] .plus{transform:rotate(45deg)}.service-content{padding:22px 0 5px 65px;max-width:680px;color:var(--dim);animation:fade-in .4s both}.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.pills span{border:1px solid var(--line);border-radius:30px;padding:5px 14px;font-size:.75rem}.studio{padding-top:20px;display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center}.studio-image{height:570px;position:relative;overflow:hidden}.studio-image img{object-position:center 72%;transform:scale(1.25);filter:brightness(.8)}.image-caption{position:absolute;bottom:0;display:flex;justify-content:space-between;gap:10px;width:100%;background:linear-gradient(transparent,#000a);padding:50px 24px 24px;font-size:.625rem;letter-spacing:.12em}.image-cross{position:absolute;top:20px;right:25px;color:var(--accent);font-size:2rem}.studio-text>p:not(.eyebrow){margin-top:25px;max-width:500px}.studio-notes{margin-top:35px;border-top:1px solid var(--line);padding-top:25px;display:flex;gap:38px}.studio-notes strong{display:block;font-size:.875rem}.studio-notes span{font-size:.75rem;color:var(--dim)}.packages{background:#171717;max-width:none}.vehicle-select{justify-self:end;min-width:250px}.vehicle-select label{display:block;color:var(--dim);font-size:.75rem;margin-bottom:10px}.vehicle-select select{background:transparent;color:var(--ink);border:0;border-bottom:1px solid #555;padding:12px 30px 12px 0;width:100%;font-size:.9375rem;border-radius:0}.vehicle-select option{background:#191919}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package{padding:36px;border:1px solid var(--line);position:relative}.package.featured{border-color:var(--accent);background:#201c19}.recommended{position:absolute;top:-14px;left:28px;background:var(--accent);color:#111;padding:4px 12px;font-size:.625rem;letter-spacing:.12em;font-weight:700}.package-index{font-size:.625rem;letter-spacing:.12em;color:var(--dim)}.package h3{font-size:2rem;margin-top:25px}.package>p{color:var(--dim);margin-top:15px;font-size:.9375rem}.price{margin-top:30px;color:var(--dim);font-size:.9375rem}.price strong{font-family:Manrope,sans-serif;font-size:3.1rem;letter-spacing:-.06em;color:var(--ink);font-weight:500;display:inline-block;transition:opacity .15s}.price strong.changing{opacity:.2}.package ul{padding:24px 0;margin:24px 0;list-style:none;border-top:1px solid var(--line);min-height:164px;font-size:.875rem}.package li{padding:5px 0}.package li:before{content:'+';color:var(--accent);margin-right:10px}.package .button{width:100%}.price-note{color:var(--dim);font-size:.75rem;margin-top:25px}.process{border-bottom:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:65px}.process-grid article{border-top:1px solid var(--line);padding-top:22px}.process-grid span{font-family:Manrope;font-size:2rem;color:var(--accent)}.process-grid h3{font-size:1.4rem;margin:24px 0 15px}.process-grid p{color:var(--dim);font-size:.9375rem;max-width:330px}.closing{text-align:center;padding-top:130px;padding-bottom:130px}.closing h2{font-size:clamp(2.4rem,5.5vw,5.5rem)}.closing h2 span{color:var(--dim)}.closing .button{margin-top:40px}.closing>p:last-child{margin-top:18px;font-size:.75rem;color:var(--dim)}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:1rem;padding:0}footer p{color:var(--dim);font-size:.75rem}footer>div{display:flex;gap:20px;color:var(--dim);font-size:.75rem}footer button{background:none;border:0;color:var(--dim);padding:0;font-size:.75rem}footer button:hover{color:var(--ink)}.reveal.ready{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:translateY(0)}dialog{width:min(680px,calc(100% - 28px));max-height:90svh;background:#1b1b1b;color:var(--ink);border:1px solid #555;padding:48px;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}dialog h2{font-size:2.3rem}dialog .eyebrow{margin-bottom:18px}.dialog-close{position:absolute;top:12px;right:17px;background:none;border:0;font-size:2rem;color:var(--dim)}.dialog-note{font-size:.875rem;color:var(--dim);margin:20px 0}form label{display:block;font-size:.8125rem;color:var(--dim);margin-bottom:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,textarea,form select{display:block;width:100%;background:#111;border:1px solid var(--line);color:var(--ink);padding:12px;margin-top:6px;border-radius:2px}input:focus,textarea:focus,form select:focus{outline:1px solid var(--accent)}form .button{width:100%}#draft pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.875rem;background:#111;padding:20px}#draft .button{margin-right:8px;margin-bottom:10px}#copy-status{color:var(--accent);font-size:.875rem}#info p{margin-top:24px;color:var(--dim)}@keyframes hero-drift{from{transform:scale(1.02)}to{transform:scale(1.1)}}@keyframes title-in{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes scroll-line{from{left:-24px}to{left:48px}}
@media(min-width:1600px){.hero-content{width:100%;margin-left:auto;margin-right:auto}.packages .section-heading,.package-grid,.price-note{max-width:1376px;margin-left:auto;margin-right:auto}}
@media(max-width:1000px){.nav nav{gap:20px}.nav{padding:0 4%}.section{padding:80px 5%}.studio{gap:40px}.studio-image{height:480px}.package{padding:25px}.hero{padding-left:5%;padding-right:5%}.studio-notes{flex-direction:column;gap:15px}.service-tag{display:none}.package-grid{gap:12px}footer{flex-wrap:wrap}footer>div{width:100%;justify-content:space-between}}
@media(max-width:700px){.nav{height:82px}.brand{font-size:1.1rem}.brand-sub{font-size:.55rem}.nav-cta{display:none}.menu-toggle{display:block;width:42px;height:42px;border:1px solid #555;background:#1118;padding:12px 10px}.menu-toggle span{display:block;height:1px;background:white;margin:5px 0}.nav nav{display:none;position:absolute;top:82px;left:0;width:100%;background:#171717;padding:24px 5%;border-bottom:1px solid var(--line)}.nav.menu-open nav{display:flex;flex-direction:column;gap:20px}.hero{isolation:isolate;height:90svh;min-height:660px;padding-top:110px}.hero-top{font-size:.625rem}.hero-edition{display:none}.hero-image{object-position:62% 50%}.hero-shade{background:linear-gradient(0deg,#111 0%,#1119 45%,#1113 70%,#1119 100%)}h1{font-size:clamp(2.6rem,9vw,4.2rem);letter-spacing:-.06em}.hero-content{margin-bottom:45px}.hero-content .eyebrow{font-size:.625rem;margin-bottom:22px}.hero-bottom{display:block;margin-top:22px}.hero-bottom p{font-size:.9375rem}.hero-bottom .button{margin-top:25px}.vertical-label{display:none}.hero-foot{font-size:.625rem}.section{padding:68px 6%}.section-heading{display:block;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:22px}.section-copy{margin-top:25px}.eyebrow{font-size:.6875rem}.service{padding:25px 0}summary{gap:15px}.service h3{font-size:1.65rem}.plus{margin-left:auto}.service-content{padding-left:0;font-size:.9375rem}.studio{display:flex;flex-direction:column;gap:40px;padding-top:0}.studio-image{height:400px;width:100%}.studio-text{width:100%}.studio-notes{flex-direction:row;gap:25px}.vehicle-select{margin-top:30px;max-width:100%}.package-grid{grid-template-columns:1fr;gap:30px}.package{padding:30px}.package ul{min-height:auto}.process-grid{grid-template-columns:1fr;gap:32px;margin-top:40px}.process-grid article{display:grid;grid-template-columns:40px 1fr;gap:5px 15px}.process-grid span{grid-row:1/3}.process-grid h3{margin:7px 0 10px}.process-grid p{grid-column:2}.closing{padding-top:80px;padding-bottom:80px}.closing h2{font-size:2.5rem}.closing h2 span{display:block;margin-top:7px}footer{padding:28px 6%;display:block}footer p{margin:15px 0}footer>div{gap:12px;flex-wrap:wrap}dialog{padding:40px 24px}dialog h2{font-size:2rem}.form-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.ready{opacity:1;transform:none}}

/* Separate pages share the original studio styling. */
.nav nav a[aria-current="page"]{color:var(--accent)}
.nav nav a[aria-current="page"]:after{width:100%}
.inner-page .nav{position:relative;background:var(--bg)}
.inner-page main{min-height:calc(100svh - 210px);animation:fade-in .45s both}
.inner-page .studio{padding-top:80px}
.inner-page .closing{padding-top:70px;padding-bottom:70px}
@media(max-width:700px){.inner-page .studio{padding-top:40px}.inner-page .nav{z-index:10}}

.drive-intro{position:fixed;inset:0;z-index:50;overflow:hidden;pointer-events:none}
.drive-intro-mask{position:absolute;inset:0;background:#080808;will-change:clip-path}
.drive-intro-car{position:absolute;top:0;left:50%;width:clamp(150px,19vw,220px);height:auto;object-fit:contain;visibility:hidden;transform:translate(-50%,-100%);filter:drop-shadow(0 14px 22px #000b);will-change:transform}
.drive-intro.running .drive-intro-car{visibility:visible}
@media(prefers-reduced-motion:reduce){.drive-intro{display:none}}
