/* Photography: Gaurav Kumar, Jose P. Ortiz, Alfie, Tiago Ferreira and adam roye / Unsplash. Decorative backgrounds are not inventory photos. */
:root{--ink:#071018;--muted:#c6d4dc;--photo-shade:linear-gradient(90deg,rgba(3,10,17,.94),rgba(3,10,17,.78) 48%,rgba(3,10,17,.3))}
body{background:var(--ink)}
.site-header{position:relative;top:auto;background:#071018}
.site-header nav a{font-size:.875rem;letter-spacing:.025em}
.brand{font-size:1rem}
.eyebrow{font-size:.875rem;line-height:1.6;letter-spacing:.14em}
.button{line-height:1.5;font-size:.875rem;border-radius:6px}
.button:focus-visible,a:focus-visible{outline:3px solid #72d0ff;outline-offset:5px}
.photo-heading{background-color:#0b1720;background-image:var(--photo-shade),var(--page-photo);background-size:cover;background-position:center;isolation:isolate;position:relative;padding:clamp(28px,5vw,72px);min-height:340px;border:1px solid #294051;border-radius:12px;overflow:hidden;gap:28px}
.photo-heading h1{font-family:Georgia,'Times New Roman',serif;text-transform:none;font-size:clamp(2.75rem,6.6vw,6.25rem);line-height:1.04;letter-spacing:-.035em;color:#fff}
.photo-heading p:not(.eyebrow){color:#dae3e9!important;max-width:650px}
.photo-heading .eyebrow{color:#98d7f5}
.photo-heading .button{flex-shrink:0;align-self:flex-end}
.page{padding-top:clamp(24px,4vw,56px)}
.page-bio{--page-photo:url('/assets/car-film-set.jpg')}
.page-production{--page-photo:url('/assets/plane-film-set.jpg')}
.page-cars{--page-photo:url('/assets/car-film-set.jpg')}
.page-contact{--page-photo:url('/assets/boat-film-set.jpg')}
.page-how{--page-photo:url('/assets/car-film-set.jpg')}
.page-bio .bio-stamp{background:#071018d9;align-self:end;font-size:1.6rem;border-color:#7b939e}
.page-bio .bio-stamp small{color:#c6d4dc;font-size:.75rem}
.photo-heading>div{min-width:0}
.visual-hero,.hero-overlay{min-height:580px}
.hero-art img{object-position:center 55%;filter:saturate(.75);opacity:.9}
.hero-shade{background:linear-gradient(90deg,#030a11f5 0%,#030a11c7 43%,#030a114d 78%),linear-gradient(0deg,#071018,transparent 45%)}
.hero-overlay{max-width:1000px}
.hero-overlay h1{font-size:clamp(2.9rem,6.2vw,6rem);line-height:1.04}
.hero-overlay .eyebrow{color:#98d7f5}
.hero-copy{color:#d3e0e7}
.category-section{background-image:linear-gradient(#071018f2,#071018ec),url('/assets/car-film-set.jpg');background-size:cover;background-position:center}
.type-card{background:#091925e8;border-radius:10px}
.category-slogan{font-size:.875rem;line-height:1.7;letter-spacing:.12em}
.owner-card{background-image:linear-gradient(90deg,#071018ef,#071018bb),url('/assets/plane-film-set.jpg');background-position:center;background-size:cover}
.owner-card p{color:#d0dde5}
.contact-bar{background-image:linear-gradient(90deg,#071018f2,#071018c9),url('/assets/boat-film-set.jpg');background-size:cover;background-position:center;color:#fff}
.contact-bar a{color:#fff}.contact-bar span{color:#c6d4dc}
.bio-main p{color:#c6d4dc}.bio-grid{gap:clamp(24px,5vw,70px)}
.credits-note,.inventory-cta{background-image:linear-gradient(90deg,#071018f5,#071018b8),url('/assets/plane-film-set.jpg');background-size:cover;background-position:center;padding:clamp(24px,4vw,56px);border:1px solid #294051;border-radius:12px}
.credits-note h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;text-transform:none;margin-bottom:0}
.credits-note .eyebrow,.inventory-cta p{color:#c6d4dc}
.page-production .service-mini span{color:#b8c8d3}
.page-contact .production-contact{border-radius:12px}
.submit-banner{--page-photo:url('/assets/boat-film-set.jpg');min-height:220px;margin-bottom:20px;padding:32px}
.submit-banner h1{font-size:clamp(2.3rem,6vw,3.6rem);margin:.2em 0}
.submit-banner p{line-height:1.6;margin-bottom:0}
.step input,.step select,.step textarea{width:100%;max-width:100%;box-sizing:border-box}
@media(max-width:800px){.photo-heading{min-height:320px;padding:28px 22px;background-position:62% center}.photo-heading .button{align-self:flex-start}.bio-hero.photo-heading{gap:20px}.page-bio .bio-stamp{display:none}.site-header nav{flex-wrap:wrap;overflow:visible;gap:14px 18px}.site-header nav a{white-space:normal}.visual-hero,.hero-overlay{min-height:520px}.hero-art img{object-position:63% center}.hero-shade{background:linear-gradient(0deg,#071018fa,#071018bf 65%,#07101866)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.type-card{transition:none}}
/* Film-set artwork and centered, content-safe layouts. */
body{--photo-shade:linear-gradient(0deg,#06121be8,#06121b9c)}
h1,h2,h3,p,a,button,strong,span{overflow-wrap:break-word}
main,section,article,aside,nav,.page-head>div,.production-card>div{min-width:0}
h1,h2,h3{text-wrap:balance}
.button,.nav-cta{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere;display:inline-flex;align-items:center;justify-content:center}
.site-header{gap:24px}.site-header nav{justify-content:center}
.visual-hero{min-height:700px}
.hero-art img{object-position:center;filter:none;opacity:1}
.hero-shade{background:linear-gradient(180deg,#041019c9 0%,#04101955 30%,#04101912 55%,#041019dc 100%)}
.hero-overlay{min-height:700px;width:100%;max-width:none;text-align:center;align-items:center;justify-content:flex-start;padding:34px 5vw}
.hero-overlay h1{font-size:clamp(2.6rem,4.5vw,4.7rem);line-height:1.09;max-width:1000px;margin:.1em auto .2em}
.hero-overlay .eyebrow{margin:0 0 10px}
.hero-overlay .hero-copy{margin:0 auto;max-width:680px}
.hero-overlay .actions{margin-top:auto;padding-top:210px;justify-content:center;max-width:100%;width:auto}
.photo-heading{text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:420px;background-position:center}
.photo-heading>div{width:100%;max-width:900px}
.photo-heading h1{font-size:clamp(2.5rem,5.4vw,5.25rem);line-height:1.1;margin:.18em auto}
.photo-heading p:not(.eyebrow){margin-left:auto;margin-right:auto}
.photo-heading .button{align-self:center}
.page-bio .bio-stamp{display:none}
.section-head{text-align:center;justify-content:center;align-items:center;flex-direction:column}
.section-head h2{line-height:1.16;max-width:850px;margin:.2em auto}
.section-head .text-link{margin-top:0}
.category-section{background:#071018}
.type-card{min-height:190px;align-items:center;text-align:center;padding:22px 14px}
.type-card>div:last-child{justify-content:center;width:100%;min-width:0}
.type-card strong{line-height:1.2;overflow-wrap:anywhere}
.type-card span{display:none}
.type-card[href="/cars/?type=Car"],.type-card[href="/cars/?type=Boat"],.type-card[href="/cars/?type=Aircraft"]{background-size:cover;background-position:center;justify-content:flex-end;min-height:230px}
.type-card[href="/cars/?type=Car"]{background-image:linear-gradient(0deg,#041019f2,transparent 85%),url('/assets/car-film-set.jpg')}
.type-card[href="/cars/?type=Boat"]{background-image:linear-gradient(0deg,#041019f2,transparent 85%),url('/assets/boat-film-set.jpg')}
.type-card[href="/cars/?type=Aircraft"]{background-image:linear-gradient(0deg,#041019f2,transparent 85%),url('/assets/plane-film-set.jpg')}
.type-card[href="/cars/?type=Car"] .type-icon,.type-card[href="/cars/?type=Boat"] .type-icon,.type-card[href="/cars/?type=Aircraft"] .type-icon{display:none}
.owner-card{background-image:linear-gradient(#071018b8,#071018e6),url('/assets/boat-film-set.jpg');align-items:center;text-align:center}
.owner-card .button{align-self:center}
.production-card h2,.owner-card h2{line-height:1.13}
.production-card{text-align:center;grid-template-columns:minmax(90px,150px) minmax(0,1fr)}
.production-card .poster-image{max-width:100%;height:auto}
.production-card .text-link{line-height:1.6}
.featured-production{max-width:none}
.service-mini article{text-align:center;min-width:0}
.contact-bar{justify-content:center;text-align:center;gap:50px}
.bio-main h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.15;text-transform:none;text-align:center}
.credits-note,.inventory-cta,.production-contact{text-align:center}
.credits-note h2{margin-left:auto;margin-right:auto}
.actions{justify-content:center}
.process-card h2{line-height:1.15}
.submit-banner{display:block;min-height:260px}
.submit-banner .eyebrow{margin-top:0}
.step h1,.step h2,.step>.eyebrow,.step>.hint{text-align:center}
footer{align-items:center;text-align:center}
@media(max-width:800px){
 .site-header{align-items:center;padding:20px 18px}.brand{text-align:center;line-height:1.5}
 .site-header nav{justify-content:center;gap:12px 16px}
 .visual-hero{min-height:0;display:flex;flex-direction:column}
 .hero-art{position:relative;inset:auto;width:100%;aspect-ratio:16/9}
 .hero-art img{object-fit:cover;object-position:center}
 .hero-shade{display:none}
 .hero-overlay{min-height:0;padding:28px 20px 34px;background:#071018}
 .hero-overlay h1{font-size:clamp(2rem,8vw,3.4rem);line-height:1.12}
 .hero-overlay .actions{padding:0;margin-top:24px;width:100%;display:flex;flex-wrap:wrap}
 .hero-overlay .actions .button{width:100%;max-width:420px}
 .photo-heading{background-image:none;padding:0 22px 26px;min-height:0;gap:16px}
 .photo-heading:before{content:"";display:block;flex-shrink:0;width:calc(100% + 44px);aspect-ratio:16/9;background-image:var(--page-photo);background-size:cover;background-position:center;margin:0 -22px 4px}
 .photo-heading h1{font-size:clamp(2rem,8vw,3rem)}
 .photo-heading .eyebrow{margin-top:0}
 .photo-heading .button{align-self:center}
 .submit-banner{display:flex}.submit-banner h1{margin:0}
 .production-card{grid-template-columns:100px minmax(0,1fr);gap:18px;padding:22px 18px}
 .production-card h2{font-size:clamp(1.8rem,7vw,2.5rem)}
 .type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .type-card,.type-card[href="/cars/?type=Car"],.type-card[href="/cars/?type=Boat"],.type-card[href="/cars/?type=Aircraft"]{min-height:175px}
 .type-card strong{font-size:1.1rem}
 .contact-bar{gap:20px}
 .process-card{padding:28px 22px}
 .production-contact{padding:30px 22px}.production-contact h2{font-size:clamp(2rem,9vw,3.5rem);line-height:1.12}
 .inventory-cta h2{font-size:2rem;line-height:1.15}
}
/* Every main page has a distinct film-set scene. */
.page-bio{--page-photo:url('/assets/truck-film-set.jpg')}
.page-cars{--page-photo:url('/assets/semi-film-set.jpg')}
.page-how{--page-photo:url('/assets/emergency-film-set.jpg')}
.submit-banner{--page-photo:url('/assets/motorcycle-film-set.jpg')}
.type-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.type-grid .type-card.photo-category{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:0;min-height:0;background:#0c1b26;background-image:none;overflow:hidden;border:1px solid #294051;border-radius:12px}
.photo-category img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.type-grid .photo-category>div{display:flex;align-items:center;justify-content:center;min-height:72px;padding:14px 12px}
.type-grid .photo-category strong{font-family:Arial,sans-serif;font-size:1.05rem;line-height:1.4;letter-spacing:.015em}
.type-grid .photo-category:hover{border-color:#75c9ee;box-shadow:0 8px 25px #0005;transform:translateY(-3px)}
.page-production .featured-production{max-width:none}
.step input:not([type=file]),.step select,.step textarea{display:block;background:#0c1720;color:#f4f7fa;border:1px solid #647b8b;padding:13px 14px;font:inherit;min-height:52px}
.step input::placeholder,.step textarea::placeholder{color:#94a8b6}
.step label{line-height:1.55;min-width:0}
.step .details{gap:18px}
.step .details label{display:block}
.required-mark{color:#8ad9fd}
.validation-summary{background:#321d25;border:1px solid #f194a4;border-radius:10px;padding:18px;margin:18px 0;color:#fff;text-align:left;line-height:1.5}
.validation-summary[hidden]{display:none}
.validation-summary strong{font-size:1rem}
.validation-summary ul{padding-left:20px;margin-bottom:0}
.validation-summary a{color:#ffced6;text-decoration:underline;text-underline-offset:3px}
.validation-summary li+li{margin-top:7px}
.step .field-invalid,.step input.field-invalid,.step select.field-invalid{border:2px solid #f194a4!important;background:#281c24!important}
.field-error{display:block;color:#ffb5c3;font-size:.9rem;line-height:1.5;margin:7px 0 12px}
.step input:focus,.step select:focus,.step textarea:focus{outline:2px solid #8ad9fd;outline-offset:3px}
.step button:disabled{opacity:.65;cursor:wait}
@media(max-width:900px){.type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.type-grid{gap:12px}.type-grid .photo-category strong{font-size:.95rem}.type-grid .photo-category>div{min-height:72px;padding:12px 8px}}