:root{
  --ink:#0c0c0d;
  --ink-2:#141416;
  --ink-3:#1c1c1f;
  --paper:#f4f1ea;
  --paper-2:#e8e3d6;
  --bone:#dcd5c2;
  --rule:rgba(244,241,234,.12);
  --rule-strong:rgba(244,241,234,.28);
  --gold:#b89968;
  --gold-soft:#d4b683;
  --muted:rgba(244,241,234,.55);
  --muted-2:rgba(244,241,234,.38);
  --display:'Fraunces', 'Times New Roman', serif;
  --mono:'JetBrains Mono', ui-monospace, monospace;
  --body:'Inter', -apple-system, sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:var(--ink);color:var(--paper);font-family:var(--body);font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--gold);color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}

/* film grain */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1000;mix-blend-mode:overlay;opacity:.18;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.5'/></svg>");
}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:22px 48px;display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(14px);background:rgba(12,12,13,.55);border-bottom:1px solid var(--rule)}
.brand{display:flex;align-items:baseline;gap:14px}
.brand-mark{font-family:var(--display);font-size:22px;font-weight:400;letter-spacing:.02em}
.brand-mark em{font-style:italic;color:var(--gold-soft);font-weight:300}
.brand-sub{font-family:var(--mono);font-size:9px;letter-spacing:.32em;color:var(--muted-2);text-transform:uppercase;border-left:1px solid var(--rule-strong);padding-left:14px}
.nav-links{display:flex;gap:38px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.nav-links a{transition:color .3s}
.nav-links a:hover, .nav-links a.active{color:var(--gold-soft)}
.nav-actions{display:flex;gap:12px;align-items:center}
.nav-cta{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:11px 22px;border:1px solid var(--gold);color:var(--gold-soft);transition:all .35s}
.nav-cta:hover{background:var(--gold);color:var(--ink)}
.nav-link-text{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);transition:color .3s}
.nav-link-text:hover{color:var(--paper)}

/* buttons */
.btn-gold{font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;padding:16px 32px;background:var(--gold);color:var(--ink);transition:all .35s;border:1px solid var(--gold);display:inline-block;cursor:pointer}
.btn-gold:hover{background:transparent;color:var(--gold-soft)}
.btn-ghost{font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;padding:16px 24px;border:1px solid var(--rule-strong);color:var(--paper);transition:all .35s;display:inline-block;cursor:pointer}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-soft)}

/* section */
.section{padding:120px 48px;border-bottom:1px solid var(--rule);position:relative}
.sec-head{display:grid;grid-template-columns:1fr 2fr;gap:80px;margin-bottom:80px;align-items:end}
.sec-num{font-family:var(--mono);font-size:11px;letter-spacing:.3em;color:var(--gold-soft);text-transform:uppercase;margin-bottom:18px}
.sec-title{font-family:var(--display);font-size:clamp(36px,5vw,68px);font-weight:300;line-height:1;letter-spacing:-.015em}
.sec-title em{font-style:italic;color:var(--gold-soft)}
.sec-blurb{font-family:var(--display);font-size:17px;line-height:1.6;font-weight:300;color:rgba(244,241,234,.72);max-width:54ch;font-style:italic}

/* footer */
footer{padding:80px 48px 40px;background:var(--ink-2);border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:40px}
.foot-brand{font-family:var(--display);font-size:42px;font-weight:300;line-height:1;margin-bottom:18px}
.foot-brand em{font-style:italic;color:var(--gold-soft)}
.foot-tag{font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--muted);text-transform:uppercase;margin-bottom:24px}
.foot-addr{font-size:13px;color:var(--muted);line-height:1.7}
.foot-col h4{font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:18px}
.foot-col a{display:block;font-size:13px;color:var(--muted);margin-bottom:10px;transition:color .3s}
.foot-col a:hover{color:var(--paper)}

/* powered by NTX Limo strip */
.powered{display:flex;align-items:center;justify-content:space-between;padding:26px 48px;background:var(--ink-3);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);gap:24px;flex-wrap:wrap}
.powered b{color:var(--gold-soft);font-weight:400}
.powered a{color:var(--paper);border-bottom:1px solid var(--gold);padding-bottom:2px;transition:color .3s}
.powered a:hover{color:var(--gold-soft)}
.powered-mark{display:flex;align-items:center;gap:14px;font-family:var(--display);font-size:18px;font-weight:300;color:var(--paper);text-transform:none;letter-spacing:0}
.powered-mark em{color:var(--gold-soft);font-style:italic}

.foot-bot{display:flex;justify-content:space-between;padding-top:30px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--muted-2);text-transform:uppercase}

/* form */
.form-group{margin-bottom:22px}

/* image swap-in support (for when SVG illustrations are replaced with real photos) */
.v-art{aspect-ratio: 16/9; height: auto !important; min-height:0 !important; padding:0; overflow:hidden; border:1px solid var(--rule); margin-bottom:4px}
.v-art img, .v-art picture{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.vehicle:hover .v-art img{transform:scale(1.03)}
.vehicle.featured .v-art{aspect-ratio: 16/10}
.form-group label{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px}
.form-input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--rule-strong);padding:12px 0;color:var(--paper);font-family:var(--body);font-size:14px;font-weight:300;outline:none;transition:border-color .3s}
.form-input:focus{border-color:var(--gold)}
select.form-input{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%23b89968' fill='none' stroke-width='1.2'/></svg>");background-repeat:no-repeat;background-position:right 4px center}
select.form-input option{background:var(--ink-2)}
textarea.form-input{resize:none;min-height:80px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}

@media(max-width:1100px){
  .sec-head{grid-template-columns:1fr;gap:24px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:40px}
}
@media(max-width:720px){
  .nav{padding:18px 22px}
  .nav-links{display:none}
  .section{padding-left:22px;padding-right:22px;padding-top:80px;padding-bottom:80px}
  .powered{padding:22px;flex-direction:column;align-items:flex-start;gap:12px}
  .form-row{grid-template-columns:1fr}
  footer{padding:60px 22px 30px}
  .foot-grid{grid-template-columns:1fr}
  .foot-bot{flex-direction:column;gap:12px}
}
