:root { --ink:#17120f; --paper:#f4eedf; --cream:#fff8e8; --oxblood:#3b0305; --orange:#ff5a16; --gold:#f6b544; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,textarea { font:inherit; }

.site-header { height:88px; padding:0 clamp(24px,5vw,76px); display:flex; align-items:center; justify-content:space-between; background:var(--oxblood); color:white; border-bottom:1px solid #6f2220; position:relative; z-index:20; }
.brand { display:flex; align-items:center; gap:9px; transform:rotate(-1deg); }
.brand-flame { color:var(--orange); font-size:43px; font-weight:900; line-height:.7; transform:skewX(-20deg); }
.brand>span:last-child { display:flex; flex-direction:column; line-height:.8; }
.brand strong { font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-size:29px; letter-spacing:.5px; }
.brand small { color:var(--orange); font-weight:900; font-size:11px; letter-spacing:5.4px; margin-top:7px; }
nav { display:flex; gap:clamp(22px,3.5vw,50px); font-size:12px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; }
nav a { opacity:.76; transition:opacity .2s,color .2s; }
nav a:hover { opacity:1; color:var(--orange); }
.header-call { border:1px solid #a13b2e; padding:13px 17px; text-transform:uppercase; font-size:11px; font-weight:900; letter-spacing:1.4px; }
.header-call span,.button span { color:var(--gold); padding-left:14px; }

.hero { background:var(--oxblood); color:var(--cream); overflow:hidden; }
.hero-grid { max-width:1400px; min-height:640px; margin:auto; display:grid; grid-template-columns:1.08fr .92fr; }
.hero-copy { padding:92px clamp(32px,6vw,90px) 72px; position:relative; z-index:3; }
.eyebrow { display:flex; align-items:center; gap:10px; text-transform:uppercase; font-size:11px; font-weight:900; letter-spacing:2.5px; color:var(--gold); }
.eyebrow span { width:29px; height:2px; background:var(--orange); display:inline-block; }
.eyebrow.dark { color:#7b251b; }
h1,h2 { font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; text-transform:uppercase; margin:0; font-weight:500; letter-spacing:-.8px; }
h1 { font-size:clamp(62px,7vw,108px); line-height:.89; margin:28px 0; max-width:780px; }
h1 em,h2 em { color:var(--orange); font-style:normal; }
.hero-lede { max-width:630px; color:#d9c9ba; font-family:Georgia,serif; font-size:18px; line-height:1.8; }
.hero-actions { display:flex; align-items:center; gap:34px; margin:35px 0 45px; }
.button { display:inline-flex; align-items:center; justify-content:center; border:0; padding:18px 23px; text-transform:uppercase; font-size:11px; letter-spacing:1.5px; font-weight:900; cursor:pointer; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--orange); color:white; box-shadow:5px 5px 0 #210000; }
.button-primary span { color:white; }
.text-link { text-transform:uppercase; font-weight:900; font-size:11px; letter-spacing:1.5px; border-bottom:1px solid #8f5550; padding:10px 0; }
.text-link span { color:var(--orange); margin-left:10px; }
.availability { display:flex; align-items:center; gap:13px; }
.availability div { display:flex; flex-direction:column; gap:4px; }
.availability strong { font-size:11px; text-transform:uppercase; letter-spacing:1.2px; }
.availability small { color:#a68076; font-size:11px; }
.pulse { display:block; width:10px; height:10px; background:#55ca58; border-radius:50%; box-shadow:0 0 0 5px rgba(85,202,88,.13); }
.hero-visual { min-height:640px; position:relative; display:flex; justify-content:center; align-items:flex-end; background:linear-gradient(140deg,#5a0808,#2c0103 70%); overflow:hidden; }
.hero-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,var(--oxblood) 0,transparent 30%),repeating-linear-gradient(105deg,transparent 0 52px,rgba(255,255,255,.022) 53px 54px); }
.sun-disc { position:absolute; width:430px; height:430px; background:var(--orange); border-radius:50%; top:80px; right:-25px; opacity:.87; }
.speed-lines { position:absolute; width:220px; height:55px; border-top:4px solid var(--gold); border-bottom:2px solid var(--gold); transform:skewX(-30deg); top:150px; left:0; opacity:.6; }
.floyd-photo { height:585px; width:auto; object-fit:cover; object-position:center top; z-index:2; filter:contrast(1.05) saturate(.87); }
.zero-card { z-index:6; position:absolute; left:30px; bottom:145px; display:flex; align-items:center; gap:10px; padding:8px 16px; background:var(--cream); color:var(--oxblood); transform:rotate(-3deg); box-shadow:5px 5px 0 var(--ink); }
.zero-card strong { font-family:Impact,sans-serif; font-size:48px; line-height:1; color:var(--orange); }
.zero-card span { font-size:10px; line-height:1.25; letter-spacing:1px; font-weight:900; }
.hero-caption { z-index:6; position:absolute; right:28px; bottom:28px; text-align:right; display:flex; flex-direction:column; }
.hero-caption span { color:var(--gold); font-size:9px; letter-spacing:2px; font-weight:900; }
.hero-caption strong { font:72px/.95 Impact,sans-serif; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.35); }
.truck-stripe { height:50px; background:var(--orange); color:var(--oxblood); white-space:nowrap; overflow:hidden; display:flex; align-items:center; justify-content:space-around; gap:26px; font:21px Impact,sans-serif; letter-spacing:1px; }
.truck-stripe i { font-style:normal; font-size:11px; }

.trust-bar { max-width:1220px; margin:0 auto; padding:34px 20px; display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid #d9cdb9; }
.trust-bar div { padding:0 28px; border-right:1px solid #d9cdb9; display:flex; flex-direction:column; gap:5px; }
.trust-bar div:last-child { border:0; }
.trust-bar strong { font:30px Impact,sans-serif; text-transform:uppercase; }
.trust-bar span { color:#786d61; font:italic 13px Georgia,serif; }

.section { max-width:1220px; margin:auto; padding:105px 24px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:80px; margin-bottom:50px; }
.section-heading h2,.about-copy h2,.quote-intro h2 { font-size:clamp(48px,5vw,76px); line-height:.94; margin-top:21px; }
.section-heading>p { max-width:380px; color:#70675c; font:16px/1.75 Georgia,serif; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.service-card { position:relative; min-height:335px; padding:32px; background:#ebe1cf; border:1px solid #d6c9b3; transition:transform .25s,background .25s; overflow:hidden; }
.service-card:hover { transform:translateY(-6px); background:var(--cream); }
.service-number { font:12px Impact,sans-serif; color:#a69987; }
.service-icon { position:absolute; top:26px; right:28px; width:44px; height:44px; border-radius:50%; background:var(--oxblood); color:var(--orange); display:grid; place-items:center; font-size:22px; }
.service-card h3 { margin:72px 0 15px; font:30px Impact,sans-serif; text-transform:uppercase; }
.service-card p { font:15px/1.65 Georgia,serif; color:#675f55; }
.service-card small { position:absolute; bottom:28px; left:32px; right:32px; padding-top:13px; border-top:1px solid #cdc0ab; text-transform:uppercase; letter-spacing:1px; color:#8f321e; font-size:9px; font-weight:900; }

.livery { background:#180101; color:white; padding:70px max(24px,calc((100vw - 1180px)/2)); display:grid; grid-template-columns:.7fr 1.3fr; gap:60px; align-items:center; overflow:hidden; }
.livery h2 { font-size:clamp(45px,5vw,70px); line-height:.94; margin:20px 0; }
.livery p:not(.eyebrow) { color:#bfaaa1; font:15px/1.75 Georgia,serif; }
.livery img { display:block; width:100%; height:auto; border:1px solid #6e1f1e; box-shadow:12px 12px 0 #080000; }

.about { min-height:700px; background:var(--oxblood); color:white; display:grid; grid-template-columns:minmax(80px,.2fr) minmax(340px,.8fr) 1.2fr; align-items:stretch; overflow:hidden; }
.about-mark { display:flex; align-items:center; justify-content:center; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.1); font:260px Impact,sans-serif; transform:rotate(-90deg); }
.about-image { position:relative; align-self:end; display:flex; justify-content:center; height:640px; background:radial-gradient(circle at 50% 43%,#b11e10 0 28%,transparent 29%); }
.about-image img { height:100%; width:auto; object-fit:cover; object-position:top; filter:saturate(.78) contrast(1.12); }
.plaid-tag { position:absolute; left:-30px; bottom:55px; background:var(--orange); color:white; padding:13px 17px; font-size:9px; font-weight:900; letter-spacing:1.5px; transform:rotate(-4deg); box-shadow:4px 4px 0 #220000; }
.about-copy { padding:105px clamp(35px,7vw,120px); max-width:720px; }
.about-copy>p:nth-of-type(2) { color:var(--gold); font:italic 18px Georgia,serif; margin:12px 0 34px; }
.about-body { color:#cdbbb1; font:16px/1.8 Georgia,serif; }
.about-copy blockquote { margin:35px 0; padding:18px 0 18px 25px; border-left:3px solid var(--orange); color:var(--cream); font:italic 18px/1.5 Georgia,serif; }
.signature { font:34px "Brush Script MT",cursive; color:var(--gold); transform:rotate(-2deg); display:flex; flex-direction:column; width:max-content; }
.signature span { font:8px Arial,sans-serif; text-transform:uppercase; color:#a98579; letter-spacing:2px; margin-top:5px; }

.reviews { padding-bottom:120px; }
.rating { display:flex; align-items:center; gap:14px; }
.rating>strong { font:52px Impact,sans-serif; }
.rating>span { color:var(--orange); letter-spacing:3px; font-size:14px; display:flex; flex-direction:column; }
.rating small { color:#8a7d6c; letter-spacing:0; margin-top:5px; font-size:9px; }
.review-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d4c7b2; border-bottom:1px solid #d4c7b2; }
.review-grid figure { margin:0; min-height:275px; padding:35px; border-right:1px solid #d4c7b2; display:flex; flex-direction:column; }
.review-grid figure:last-child { border:0; }
.quote-mark { color:var(--orange); font:60px/1 Georgia,serif; height:50px; }
.review-grid blockquote { margin:15px 0; font:italic 19px/1.55 Georgia,serif; flex:1; }
.review-grid figcaption { color:#817565; font-size:10px; text-transform:uppercase; letter-spacing:1px; font-weight:800; }

.quote-section { background:#56100d; color:white; display:grid; grid-template-columns:.9fr 1.1fr; padding:100px max(24px,calc((100vw - 1180px)/2)); gap:90px; }
.quote-intro>p:not(.eyebrow) { color:#d0bbb0; font:16px/1.8 Georgia,serif; max-width:490px; }
.phone-block { margin-top:45px; display:flex; flex-direction:column; }
.phone-block small,.phone-block span { text-transform:uppercase; color:#c48770; font-size:9px; letter-spacing:2px; }
.phone-block strong { font:38px Impact,sans-serif; color:var(--gold); margin:8px 0 4px; }
.quote-section form { background:var(--paper); color:var(--ink); padding:42px; box-shadow:12px 12px 0 #2e0304; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.quote-section label:not(fieldset label) { display:flex; flex-direction:column; gap:9px; margin-bottom:18px; text-transform:uppercase; letter-spacing:1px; font-size:9px; font-weight:900; color:#6b5f54; }
input,textarea { border:1px solid #cfc1aa; background:#fffaf0; padding:15px; outline:none; color:var(--ink); resize:vertical; }
input:focus,textarea:focus { border-color:var(--orange); box-shadow:0 0 0 2px rgba(255,90,22,.12); }
fieldset { border:1px solid #d4c7b2; margin:5px 0 22px; padding:15px; }
legend { padding:0 8px; text-transform:uppercase; letter-spacing:1px; font-size:9px; font-weight:900; color:#6b5f54; }
fieldset label { margin-right:16px; font:13px Georgia,serif; }
fieldset input { accent-color:var(--orange); }
.submit { width:100%; box-shadow:5px 5px 0 #7f2c17; }
.fine-print { display:block; text-align:center; color:#938575; font:italic 10px Georgia,serif; margin-top:15px; }
.success { min-height:400px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.success>span { display:grid; place-items:center; width:64px; height:64px; border-radius:50%; background:var(--orange); color:white; font-size:28px; }
.success h3 { margin:24px 0 8px; font:33px Impact,sans-serif; text-transform:uppercase; }
.success p { max-width:400px; font:15px/1.7 Georgia,serif; color:#6d6257; }
.success button { border:0; border-bottom:1px solid var(--orange); background:none; margin-top:15px; cursor:pointer; font-size:11px; text-transform:uppercase; font-weight:900; }

footer { background:#200102; color:white; padding:55px clamp(24px,6vw,80px) 28px; display:grid; grid-template-columns:1fr 1.5fr; align-items:center; gap:30px; }
footer>p { color:#a78278; font:italic 14px Georgia,serif; text-align:right; }
footer>div { grid-column:1/-1; border-top:1px solid #4d2421; padding-top:22px; display:flex; justify-content:space-between; color:#76514b; text-transform:uppercase; letter-spacing:1px; font-size:8px; }

@media(max-width:900px){nav{display:none}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:560px}.trust-bar{grid-template-columns:1fr 1fr;gap:28px 0}.trust-bar div:nth-child(2){border:0}.service-grid,.review-grid{grid-template-columns:1fr}.service-card{min-height:300px}.section-heading{align-items:flex-start;flex-direction:column;gap:15px}.livery{grid-template-columns:1fr}.review-grid figure{border-right:0;border-bottom:1px solid #d4c7b2;min-height:230px}.about{grid-template-columns:.8fr 1.2fr}.about-mark{display:none}.about-copy{padding:80px 35px}.quote-section{grid-template-columns:1fr;gap:50px}}
@media(max-width:620px){.site-header{height:76px;padding:0 18px}.header-call{padding:11px;font-size:9px}.header-call span{display:none}.brand strong{font-size:24px}.hero-copy{padding:68px 23px 55px}h1{font-size:58px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-visual{min-height:500px}.floyd-photo{height:500px}.sun-disc{width:340px;height:340px}.zero-card{left:16px;bottom:95px}.hero-caption{display:none}.trust-bar{padding-inline:8px}.trust-bar div{padding:0 17px}.section{padding:78px 20px}.section-heading h2,.about-copy h2,.quote-intro h2{font-size:48px}.about{display:flex;flex-direction:column}.about-image{height:510px;order:2}.about-copy{order:1;padding:78px 23px 30px}.plaid-tag{left:15px}.rating{margin-top:15px}.quote-section{padding:78px 20px}.quote-section form{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}fieldset label{display:block;margin:8px 0}footer{grid-template-columns:1fr;text-align:left}footer>p{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
