/* Hallmark · macrostructure: Photographic Showroom · tone: Gulf-coast editorial · anchor hue: ember · nav: N9 · footer: Ft3 · contrast: pass (40–41) · slop: pass (42–45) · honest: pass (46) · chrome: pass (47) · tokens: pass (48) · responsive: pass (49) · mobile: pass (34, 49, 50–57) */
/* Hallmark · pre-emit critique: P5 H5 E4 S5 R4 V5 */
@import url("tokens.css");
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Manrope:wght@400;500;600;700&display=swap");
html,body{overflow-x:clip;overscroll-behavior-y:none}html{scroll-behavior:smooth;background:var(--color-paper-2)}body{min-height:100%;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body)}a,button,input,select{transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.skip-link{position:fixed;left:var(--space-md);top:var(--space-md);z-index:30;padding:var(--space-sm) var(--space-md);background:var(--color-paper);color:var(--color-ink);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.site-head{min-height:82px;height:auto;padding:var(--space-sm) var(--pad-page);border-color:var(--color-rule);background:color-mix(in oklch,var(--color-paper) 94%,transparent);position:sticky;top:0;backdrop-filter:blur(18px)}.brand{gap:var(--space-sm);font-family:var(--font-display);font-size:1.35rem;letter-spacing:.01em}.brand svg{width:42px;height:42px}.brand rect{fill:var(--color-ink)}.brand path{stroke:var(--color-accent)}.site-head nav{gap:clamp(12px,2.2vw,28px);font-family:var(--font-body);font-size:.72rem;letter-spacing:.045em;text-transform:none}.site-head nav a{text-decoration:none}.site-head nav a:not(.call){display:none}.site-head nav a:not(.call):hover{color:var(--color-accent-deep)}.call{background:var(--color-accent);color:var(--color-accent-ink);border-radius:999px;padding:12px 16px}.call:hover{background:var(--color-accent-deep);transform:translateY(-1px)}
.hero{min-height:calc(100svh - 82px);display:grid;gap:0;padding:0;background:var(--color-ink);color:var(--color-paper)}.hero-copy{padding:clamp(48px,8vw,112px) var(--pad-page) var(--space-2xl);align-self:center;position:relative;z-index:2}.eyebrow{color:var(--color-accent);font-family:var(--font-body);font-size:.72rem;letter-spacing:.16em}.hero h1{max-width:760px;margin:var(--space-lg) 0;font-family:var(--font-display);font-size:var(--text-display);font-weight:700;line-height:.78;letter-spacing:-.035em;text-transform:uppercase}.hero h1 em{display:block;color:var(--color-paper);font-family:var(--font-display);font-style:normal;font-weight:500;letter-spacing:-.01em}.intro{max-width:560px;color:color-mix(in oklch,var(--color-paper) 78%,var(--color-muted));font-size:var(--text-lg);line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-xl)}.primary,.secondary{min-width:0;margin:0;padding:16px 20px;border:var(--rule-thin) solid var(--color-accent);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-lg);font-weight:700;text-decoration:none}.primary{background:var(--color-accent);color:var(--color-accent-ink)}.secondary{background:transparent;color:var(--color-paper)}.primary:hover,.secondary:hover{transform:translateY(-2px)}.secondary:hover{background:var(--color-paper);border-color:var(--color-paper);color:var(--color-ink)}
.hero-stage{min-height:560px;position:relative;overflow:hidden}.hero-film{position:absolute;inset:0;min-height:0;background:var(--color-accent-deep) url("assets/video/coastal-hero-poster.jpg") center/cover no-repeat}.hero-film video{width:100%;height:100%;object-fit:cover;opacity:.65;filter:saturate(.72) contrast(1.12)}.film-wash{position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in oklch,var(--color-ink) 8%,transparent),color-mix(in oklch,var(--color-ink) 44%,transparent))}.hero-car{position:absolute;inset:clamp(28px,5vw,68px) var(--pad-page) clamp(46px,7vw,92px);margin:0;box-shadow:0 28px 70px color-mix(in oklch,var(--color-ink) 48%,transparent);overflow:hidden;border-radius:var(--radius-sm)}.hero-car img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;filter:saturate(.9) contrast(1.04)}.hero-car figcaption{position:absolute;inset:auto var(--space-md) var(--space-md);display:flex;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:color-mix(in oklch,var(--color-ink) 88%,transparent);color:var(--color-paper);font-size:.72rem}.hero-car figcaption strong{color:var(--color-accent)}
.inventory{padding:var(--space-4xl) var(--pad-page);border-color:var(--color-rule)}.section-head{display:block;max-width:850px;margin-bottom:var(--space-2xl)}.section-head p,.section-head span{color:var(--color-accent-deep);font-family:var(--font-body)}.section-head h2{margin:var(--space-sm) 0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;line-height:.9;letter-spacing:-.025em;text-transform:uppercase}.section-head span{display:block;text-align:left}.vehicle{border-color:var(--color-rule)}.slides{background:var(--color-paper-2)}.slides img{object-position:center 58%}.slider-controls{border-color:var(--color-rule)}.dots i{background:var(--color-rule)}.dots i.active{background:var(--color-accent)}.vehicle-copy h3{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5.2rem);letter-spacing:-.025em;text-transform:uppercase}.vehicle-copy>p:not(.availability){color:var(--color-muted)}.availability{color:var(--color-accent-deep)}.number{display:none}.price-row{border-color:var(--color-rule)}.vehicle-copy>a{border-color:var(--color-accent)}
.visit{background:var(--color-ink);color:var(--color-paper);padding:var(--space-4xl) var(--pad-page)}.visit h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;letter-spacing:-.025em;text-transform:uppercase}.visit>div>p:not(.eyebrow),.form-status{color:color-mix(in oklch,var(--color-paper) 65%,var(--color-muted))}.contact-row a{color:var(--color-paper)}input,select{border-color:var(--color-rule-dark);color:var(--color-paper)}form button{background:var(--color-accent);color:var(--color-accent-ink);border-radius:999px;cursor:pointer}form button:hover{background:var(--color-accent-deep)}
.site-footer{padding:var(--space-3xl) var(--pad-page) var(--space-xl);background:var(--color-paper-2);border-color:var(--color-rule);display:grid;gap:var(--space-xl);font-family:var(--font-body);text-transform:none;letter-spacing:normal}.footer-brand{font-family:var(--font-display);font-size:clamp(2.8rem,8vw,6rem);line-height:.82;text-transform:uppercase}.footer-grid{display:grid;gap:var(--space-xl)}.footer-col{display:grid;align-content:start;gap:var(--space-xs)}.footer-col strong{margin-bottom:var(--space-xs);font-size:.75rem;color:var(--color-accent-deep);text-transform:uppercase;letter-spacing:.12em}.footer-col a{width:fit-content;color:var(--color-ink);text-decoration-thickness:1px;text-underline-offset:4px}.footer-bottom{padding-top:var(--space-lg);border-top:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:.74rem}
.page-main{min-height:70svh;padding:clamp(56px,9vw,120px) var(--pad-page)}.page-intro{max-width:850px}.page-intro h1{margin:var(--space-md) 0 var(--space-lg);font-family:var(--font-display);font-size:var(--text-display);line-height:.8;letter-spacing:-.03em;text-transform:uppercase}.page-intro p{max-width:680px;color:var(--color-ink-2);font-size:var(--text-lg);line-height:1.7}.info-grid{margin-top:var(--space-3xl);display:grid;gap:var(--space-lg)}.info-card{padding:var(--space-xl);border:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-2)}.info-card h2{margin-top:0;font-family:var(--font-display);font-size:2rem;text-transform:uppercase}.info-card p{color:var(--color-ink-2);line-height:1.65}.legal-copy{max-width:760px}.legal-copy h2{margin-top:var(--space-2xl);font-family:var(--font-display);font-size:2rem;text-transform:uppercase}.legal-copy p{line-height:1.7;color:var(--color-ink-2)}
@media(min-width:768px){.site-head nav a:not(.call){display:inline}.hero{grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr)}.hero-stage{min-height:calc(100svh - 82px)}.hero-car{left:clamp(20px,3vw,52px);right:clamp(20px,3vw,52px)}.section-head{display:grid;grid-template-columns:1fr 2fr;align-items:end;column-gap:var(--space-xl)}.section-head p{grid-row:1/3;align-self:start}.section-head span{grid-column:2}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.info-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:420px){.brand span{font-size:1.15rem}.call{padding-inline:13px;font-size:.68rem}.hero h1{font-size:clamp(4rem,21vw,6rem)}.hero-stage{min-height:460px}.hero-car{inset:var(--space-lg) var(--space-md) var(--space-2xl)}.hero-car figcaption{flex-direction:column;gap:var(--space-2xs)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-film video{display:none}}

/* Final accessibility and responsive guards. */
a:active,button:active{transform:translateY(1px)}button:disabled,input:disabled,select:disabled{opacity:.55;cursor:not-allowed;background:var(--color-paper-2)}
.site-head nav a,.primary,.secondary,.footer-col a{white-space:nowrap}
.hero h1,.section-head h2,.vehicle-copy h3,.visit h2,.page-intro h1{line-height:1;overflow-wrap:anywhere;min-width:0}
@media(min-width:768px){.section-head{display:block}.section-head p{grid-row:auto}.section-head span{grid-column:auto}}
@media(min-width:768px){.hero h1{font-size:clamp(5rem,7.4vw,6.8rem)}}
.hero-film video{object-position:center bottom}.film-wash{background:linear-gradient(180deg,color-mix(in oklch,var(--color-ink) 4%,transparent),color-mix(in oklch,var(--color-ink) 20%,transparent))}.film-meta{position:absolute;left:var(--space-lg);right:var(--space-lg);bottom:var(--space-lg);display:flex;align-items:center;justify-content:space-between;color:var(--color-paper);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 12px var(--color-ink)}

@media(max-width:767px){
  .hero{height:calc(100svh - 82px);min-height:560px;display:block;position:relative;isolation:isolate;overflow:hidden}
  .hero-stage{position:absolute;inset:0;min-height:0;z-index:-1}
  .hero-copy{height:100%;padding:clamp(28px,6svh,52px) var(--pad-page) 116px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;background:linear-gradient(180deg,color-mix(in oklch,var(--color-ink) 96%,transparent) 0%,color-mix(in oklch,var(--color-ink) 82%,transparent) 52%,color-mix(in oklch,var(--color-ink) 18%,transparent) 82%,transparent 100%)}
  .hero h1{font-size:clamp(3.35rem,16vw,5.2rem);margin:var(--space-md) 0 var(--space-sm)}
  .intro{font-size:.96rem;line-height:1.48;max-width:34ch;margin:0}
  .hero-actions{margin-top:var(--space-lg)}
  .hero-actions .secondary{display:none}
  .primary{padding:14px 18px;font-size:.88rem}
  .hero-film video{opacity:.9}
  .hero-film video{display:none}
  .hero-motion-mobile{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom;filter:saturate(.82) contrast(1.08)}
  .film-wash{background:linear-gradient(180deg,color-mix(in oklch,var(--color-ink) 58%,transparent) 0%,transparent 68%,color-mix(in oklch,var(--color-ink) 16%,transparent) 100%)}
  .film-meta{bottom:var(--space-md);font-size:.56rem}
  .hero::after{content:"";position:absolute;z-index:4;left:0;right:0;bottom:0;height:44px;pointer-events:none;background:linear-gradient(180deg,transparent,var(--color-paper))}
  .inventory{border-top:0;padding-top:var(--space-3xl)}
}

@media(max-width:360px) and (max-height:700px){
  .hero{min-height:486px}
  .hero-copy{padding-top:var(--space-lg);padding-bottom:92px}
  .hero h1{font-size:3.15rem}
  .eyebrow{font-size:.62rem}
  .intro{font-size:.86rem;max-width:31ch}
  .hero-actions{margin-top:var(--space-md)}
}
.hero-motion-mobile{display:none}
@media(max-width:767px){.hero-motion-mobile{display:block}}
@media(prefers-reduced-motion:reduce){.hero-motion-mobile{display:none}}

.owner-login{display:inline-flex!important;align-items:center;padding:10px 13px;border:1px solid var(--color-rule);border-radius:999px;background:var(--color-paper-2);font-weight:800}.owner-login:hover{border-color:var(--color-accent-deep);background:var(--color-accent);color:var(--color-accent-ink)!important}.vehicle-deal{display:inline-flex;margin:12px 0 0!important;padding:8px 11px;border-radius:999px;background:var(--color-accent);color:var(--color-accent-ink)!important;font-weight:800}.inventory-status{padding:20px;border:1px solid var(--color-rule);background:var(--color-paper-2);font-weight:700}
@media(max-width:767px){.site-head nav{gap:8px}.site-head nav .owner-login{display:inline-flex!important;padding:9px 11px;font-size:.63rem}.site-head nav .call{display:none}.site-head{padding-inline:14px}.brand{font-size:1rem}.brand svg{width:34px;height:34px}}

@media(max-width:767px){
  .site-footer{margin:0;padding:var(--space-2xl) var(--pad-page) max(var(--space-lg),env(safe-area-inset-bottom));gap:var(--space-lg);border-top:0}
  .footer-brand{font-size:2.65rem;line-height:1}
  .footer-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-lg) var(--space-md)}
  .footer-col{gap:var(--space-2xs);font-size:.76rem;line-height:1.45}
  .footer-col:first-child{grid-column:1/-1;padding-bottom:var(--space-md);border-bottom:var(--rule-thin) solid var(--color-rule)}
  .footer-col strong{margin-bottom:var(--space-2xs);font-size:.64rem}
  .footer-col a{white-space:normal}
  .footer-bottom{padding-top:var(--space-md);font-size:.66rem}
}
