:root { --black:#050505; --black-2:#0d0e10; --panel:#151619; --red:#ed1515; --red-dark:#b60808; --silver:#c9cdd2; --white:#f7f7f7; --muted:#a7a9ad; --line:#303136; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--black); color:var(--white); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; }
.wrap { width:min(1240px,calc(100% - 44px)); margin-inline:auto; }
.top-strip { background:var(--red); font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.top-strip .wrap { min-height:36px; display:flex; align-items:center; gap:18px; }
.top-strip span { padding:5px 9px; background:#fff; color:#111; }
.top-strip p { margin:0; flex:1; }
.top-strip a { font-size:13px; }
.header { position:relative; z-index:10; background:#050505; border-bottom:1px solid #242529; }
.header-main { min-height:118px; display:grid; grid-template-columns:1.25fr .95fr .82fr auto; gap:30px; align-items:center; }
.logo { display:flex; align-items:center; }
.logo img { width:255px; height:94px; object-fit:contain; object-position:left center; }
.contact-detail { display:flex; gap:14px; align-items:center; }
.contact-detail b { width:30px; height:30px; display:grid; place-items:center; border:1px solid var(--red); color:var(--red); font-size:11px; transform:rotate(45deg); }
.contact-detail b::first-line { transform:rotate(-45deg); }
.contact-detail small,.contact-detail strong { display:block; }
.contact-detail small { margin-bottom:7px; color:#777b81; font-size:9px; font-weight:900; letter-spacing:.14em; }
.contact-detail strong { font-size:14px; }
.call-button,.red-button,.white-button { display:inline-flex; align-items:center; justify-content:center; gap:22px; padding:19px 26px; font-weight:900; font-size:12px; letter-spacing:.09em; text-transform:uppercase; transition:.2s ease; }
.call-button,.red-button { background:linear-gradient(135deg,#ff2929,var(--red-dark)); color:#fff; box-shadow:0 12px 28px rgba(237,21,21,.18); }
.call-button:hover,.red-button:hover { transform:translateY(-2px); box-shadow:0 16px 35px rgba(237,21,21,.28); }
.nav { height:70px; display:flex; align-items:center; gap:52px; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.nav a { padding-block:27px; color:#c6c7ca; }
.nav a.active,.nav a:hover { color:var(--red); }

.hero { position:relative; overflow:hidden; background:radial-gradient(circle at 22% 26%,#202126 0,transparent 30%),linear-gradient(135deg,#050505 0,#0d0e10 65%,#151619 100%); }
.hero::before { content:""; position:absolute; inset:0; opacity:.15; background:repeating-linear-gradient(135deg,transparent 0 34px,#fff 35px 36px,transparent 37px 70px); mask-image:linear-gradient(90deg,#000,transparent 40%); }
.hero-grid { position:relative; display:grid; grid-template-columns:1fr 1.03fr; gap:65px; align-items:center; min-height:730px; padding-block:72px 88px; }
.hero-copy { position:relative; z-index:2; }
.eyebrow,.kicker { display:block; color:var(--red); font-size:11px; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.eyebrow i { width:28px; height:3px; display:block; background:var(--red); }
.hero-logo { margin:0 0 18px -10px; }
.hero-logo img { display:block; width:min(100%,510px); }
.hero h1 { margin:0; max-width:660px; font-size:clamp(45px,5vw,72px); line-height:.98; letter-spacing:-.05em; text-transform:uppercase; }
.hero h1 em { display:block; color:var(--red); font-style:normal; }
.hero-copy>p { max-width:620px; margin:26px 0 28px; color:#b8babf; font-size:18px; line-height:1.72; }
.hero-actions { display:flex; flex-wrap:wrap; gap:13px; }
.outline-button { display:inline-flex; align-items:center; justify-content:center; padding:18px 25px; border:1px solid #51535a; font-size:12px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; transition:.2s; }
.outline-button:hover { border-color:#fff; background:#fff; color:#111; }
.hero-points { display:flex; flex-wrap:wrap; gap:25px; margin-top:30px; color:#d2d3d5; font-size:12px; font-weight:800; }
.hero-points b { margin-right:5px; color:var(--red); }
.hero-visual { position:relative; min-height:545px; border:1px solid #34363b; box-shadow:18px 18px 0 #1b1c1f,18px 18px 0 1px var(--red); }
.hero-visual>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.68) contrast(1.12) brightness(.78); }
.hero-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.82)); }
.mechanic-card { position:absolute; z-index:2; right:-20px; bottom:26px; width:295px; padding:23px 25px; background:rgba(5,5,5,.94); border-left:4px solid var(--red); }
.mechanic-card small,.mechanic-card strong,.mechanic-card span { display:block; }
.mechanic-card small { color:var(--red); font-size:9px; font-weight:900; letter-spacing:.14em; }
.mechanic-card strong { margin:9px 0; font-size:21px; line-height:1.2; text-transform:uppercase; }
.mechanic-card span { color:#9fa1a6; font-size:12px; line-height:1.45; }

.quick-contact { background:var(--red); }
.quick-grid { min-height:118px; display:grid; grid-template-columns:1.15fr .72fr .85fr; align-items:center; }
.quick-grid>div,.quick-grid>a { min-height:118px; display:flex; flex-direction:column; justify-content:center; padding:24px 34px; border-left:1px solid rgba(255,255,255,.25); }
.quick-grid>*:last-child { border-right:1px solid rgba(255,255,255,.25); }
.quick-grid small,.quick-grid span { margin-bottom:8px; font-size:9px; font-weight:900; letter-spacing:.14em; opacity:.75; }
.quick-grid strong,.quick-grid b { font-size:18px; }
.quick-grid a:hover { background:rgba(0,0,0,.12); }

.about-section { padding:115px 0; background:#f2f2f2; color:#151619; }
.two-column { display:grid; grid-template-columns:.92fr 1.08fr; gap:9%; align-items:center; }
.section-photo { min-height:610px; position:relative; overflow:hidden; background:#111; box-shadow:-18px 18px 0 #d9d9d9; }
.section-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(1.05); }
.section-photo span { position:absolute; left:0; bottom:0; padding:15px 20px; background:var(--red); color:#fff; font-size:10px; font-weight:900; letter-spacing:.12em; }
.kicker { margin-bottom:19px; }
.section-copy h2,.section-heading h2,.standards-lead h2,.promise-section h2,.contact-section h2,.detail-content h2,.faq-section h2,.related-services h2,.detail-cta h2 { margin:0; font-size:clamp(42px,4.8vw,68px); line-height:.98; letter-spacing:-.05em; text-transform:uppercase; }
.section-copy .intro { margin:30px 0 17px; font-size:21px; font-weight:700; line-height:1.48; }
.section-copy>p:not(.intro) { color:#5d6065; line-height:1.8; }
.owner-row { display:flex; gap:52px; margin:34px 0; padding:26px 0; border-block:1px solid #ced0d4; }
.owner-row small,.owner-row strong { display:block; }
.owner-row small { color:#7c7f84; font-size:9px; font-weight:900; letter-spacing:.12em; }
.owner-row strong { margin-top:8px; font-size:18px; text-transform:uppercase; }
.text-link { color:var(--red-dark); font-size:12px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }

.services-section { padding:115px 0 125px; background:#0c0d0f; }
.section-heading { display:grid; grid-template-columns:1.1fr .8fr; gap:10%; align-items:end; margin-bottom:55px; }
.section-heading>p { margin:0 0 5px; color:#aeb0b5; font-size:17px; line-height:1.72; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:#33353a; }
.service-grid article { background:#141518; overflow:hidden; transition:.25s; }
.service-grid article:hover { transform:translateY(-5px); background:#191a1e; }
.service-image { position:relative; display:block; height:205px; overflow:hidden; }
.service-image::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.7)); }
.service-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.5) contrast(1.12); transition:.35s; }
.service-grid article:hover img { transform:scale(1.04); filter:saturate(.85); }
.service-image span { position:absolute; z-index:2; right:18px; bottom:14px; color:#fff; font-size:34px; font-weight:900; font-style:italic; }
.service-body { padding:28px 30px 32px; }
.service-body h3 { margin:0 0 13px; font-size:23px; text-transform:uppercase; }
.service-body p { min-height:70px; margin:0 0 22px; color:#a7a9ad; line-height:1.62; }
.service-body>a { color:var(--red); font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.service-body>a span { margin-left:8px; }

.standards-section { padding:115px 0; background:#f2f2f2; color:#151619; }
.standards-lead { display:grid; grid-template-columns:.6fr 1fr 1fr; gap:6%; align-items:end; margin-bottom:55px; }
.standards-lead .kicker { align-self:start; }
.standards-lead p { margin:0; color:#5d6065; font-size:17px; line-height:1.72; }
.standards-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cbccd0; border-left:1px solid #cbccd0; }
.standards-grid article { min-height:285px; padding:30px; border-right:1px solid #cbccd0; border-bottom:1px solid #cbccd0; }
.standards-grid b { color:var(--red); font-size:12px; }
.standards-grid h3 { margin:72px 0 14px; font-size:20px; text-transform:uppercase; }
.standards-grid p { margin:0; color:#62656a; line-height:1.65; }

.promise-section { padding:78px 0; background:linear-gradient(135deg,#ee1a1a,#a90000); }
.promise-inner { display:grid; grid-template-columns:1.15fr .9fr auto; align-items:center; gap:6%; }
.promise-section .kicker { color:#fff; opacity:.68; }
.promise-section p { font-size:17px; line-height:1.65; }
.white-button { background:#fff; color:#111; white-space:nowrap; }
.white-button:hover { transform:translateY(-2px); }
.contact-section { padding:115px 0; background:#f2f2f2; color:#151619; }
.contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:10%; align-items:start; }
.contact-grid>div:first-child p { max-width:470px; color:#63666b; font-size:17px; line-height:1.72; }
.contact-cards { border-top:1px solid #cacbd0; }
.contact-cards a { display:grid; grid-template-columns:145px 1fr auto; gap:28px; align-items:center; padding:29px 0; border-bottom:1px solid #cacbd0; }
.contact-cards a:hover { color:var(--red-dark); }
.contact-cards small { color:#7a7d82; font-size:9px; font-weight:900; letter-spacing:.13em; }
.contact-cards strong { font-size:18px; }
.contact-cards span { color:var(--red-dark); font-size:11px; font-weight:900; text-transform:uppercase; }

footer { padding:65px 0 24px; background:#050505; border-top:1px solid #27282c; }
.footer-grid { display:grid; grid-template-columns:1.4fr .8fr .8fr; gap:8%; padding-bottom:52px; }
.footer-logo img { width:310px; }
.footer-grid h3 { margin:15px 0 20px; color:#fff; font-size:13px; letter-spacing:.1em; text-transform:uppercase; }
.footer-grid p { margin:0; color:#94969b; line-height:1.95; }
.footer-grid p a:hover { color:var(--red); }
.copyright { display:flex; justify-content:space-between; padding-top:22px; border-top:1px solid #242529; color:#6f7176; font-size:11px; }
.mobile-call { display:none; }

/* Service detail pages */
.service-hero { padding:58px 0 98px; background:radial-gradient(circle at 10% 20%,#202126,transparent 32%),#070708; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:48px; color:#85878d; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.breadcrumbs a:hover { color:var(--red); }
.breadcrumbs b { color:#fff; }
.service-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:center; }
.service-hero h1 { margin:0; font-size:clamp(48px,5.7vw,80px); line-height:.96; letter-spacing:-.055em; text-transform:uppercase; }
.service-hero p { max-width:650px; margin:27px 0; color:#b4b6bb; font-size:18px; line-height:1.72; }
.service-actions { display:flex; flex-wrap:wrap; gap:13px; }
.detail-photo { min-height:480px; position:relative; overflow:hidden; border:1px solid #3a3b40; box-shadow:16px 16px 0 #1a1b1e,16px 16px 0 1px var(--red); }
.detail-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.7) contrast(1.08); }
.detail-content { padding:105px 0; background:#f2f2f2; color:#151619; }
.detail-grid { display:grid; grid-template-columns:1fr .9fr; gap:10%; align-items:start; }
.check-list { padding:0; list-style:none; border-top:1px solid #d0d1d4; }
.check-list li { position:relative; padding:18px 10px 18px 38px; border-bottom:1px solid #d0d1d4; font-weight:700; }
.check-list li:before { content:'✓'; position:absolute; left:6px; color:var(--red); }
.included-card { padding:45px; background:#111214; color:#fff; border-top:5px solid var(--red); box-shadow:12px 12px 0 #d6d7da; }
.included-card h2 { font-size:clamp(34px,3.3vw,50px); }
.included-card ul { padding:0; list-style:none; }
.included-card li { padding:13px 0; border-top:1px solid #35363b; color:#c0c2c6; }
.included-card a { display:inline-block; margin-top:22px; color:var(--red); font-weight:900; text-transform:uppercase; font-size:10px; letter-spacing:.09em; }
.faq-section { padding:100px 0; background:#fff; color:#151619; }
.faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.faq-grid article { padding:31px; border:1px solid #d5d6d9; border-top:4px solid var(--red); }
.faq-grid h3 { margin:0 0 14px; font-size:20px; text-transform:uppercase; }
.faq-grid p { margin:0; color:#62656a; line-height:1.7; }
.related-services { padding:100px 0; background:#0d0e10; }
.related-services .section-title { margin-bottom:40px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #35363b; border-left:1px solid #35363b; }
.related-grid a { min-height:220px; padding:31px; border-right:1px solid #35363b; border-bottom:1px solid #35363b; transition:.2s; }
.related-grid a:hover { background:#17181b; transform:translateY(-3px); }
.related-grid span,.related-grid b { color:var(--red); font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:.1em; }
.related-grid h3 { margin:55px 0 20px; font-size:23px; text-transform:uppercase; }
.detail-cta { padding:78px 0; background:linear-gradient(135deg,#ee1a1a,#a90000); }
.detail-cta .wrap { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.detail-cta h2 { margin-bottom:12px; }
.detail-cta p { margin:0; font-size:17px; }

@media(max-width:1000px){
  .header-main{grid-template-columns:1fr auto}.contact-detail{display:none}.hero-grid{grid-template-columns:1fr;gap:50px}.hero-visual{min-height:520px}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid>div:first-child{grid-column:1/-1;min-height:88px}.quick-grid>*:last-child{border-right:0}.section-heading,.standards-lead{grid-template-columns:1fr;gap:25px}.service-grid{grid-template-columns:repeat(2,1fr)}.standards-grid{grid-template-columns:repeat(2,1fr)}.promise-inner{grid-template-columns:1fr;gap:25px}.promise-inner .white-button{justify-self:start}.two-column,.contact-grid,.service-hero-grid,.detail-grid{grid-template-columns:1fr}.section-photo{min-height:520px}.contact-grid,.detail-grid{gap:58px}.footer-grid{grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1}.related-grid{grid-template-columns:1fr}.detail-cta .wrap{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .wrap{width:min(100% - 28px,1240px)}.top-strip p{display:none}.top-strip .wrap{justify-content:space-between}.header-main{min-height:88px;gap:12px}.logo img{width:177px;height:72px}.call-button{padding:14px 12px;font-size:9px}.nav{height:58px;gap:25px;overflow:auto;font-size:9px}.nav a{padding-block:22px;white-space:nowrap}.hero-grid{min-height:auto;padding-block:48px 72px}.hero-logo{margin-left:-6px}.hero h1{font-size:42px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column}.hero-actions a{width:100%}.hero-points{gap:12px 20px}.hero-visual{min-height:355px;box-shadow:10px 10px 0 #1b1c1f}.mechanic-card{right:-5px;bottom:15px;width:245px;padding:18px}.mechanic-card strong{font-size:17px}.quick-grid{grid-template-columns:1fr}.quick-grid>div:first-child{grid-column:auto}.quick-grid>div,.quick-grid>a{min-height:90px;padding:20px 18px;border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}.about-section,.services-section,.standards-section,.contact-section{padding:76px 0}.section-photo{min-height:360px;box-shadow:-9px 9px 0 #d9d9d9}.owner-row{flex-direction:column;gap:21px}.service-grid,.standards-grid{grid-template-columns:1fr}.service-body p{min-height:auto}.standards-grid article{min-height:235px}.standards-grid h3{margin-top:45px}.promise-section{padding:62px 0}.contact-cards a{grid-template-columns:1fr;gap:8px}.footer-grid{grid-template-columns:1fr}.footer-logo{grid-column:auto}.footer-logo img{width:260px}.copyright{flex-direction:column;gap:12px;padding-bottom:72px}.mobile-call{position:fixed;z-index:50;left:10px;right:10px;bottom:10px;display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:var(--red);color:#fff;box-shadow:0 8px 30px rgba(0,0,0,.5);font-size:10px;font-weight:900;text-transform:uppercase}.mobile-call b{font-size:14px}.service-hero{padding-top:38px}.breadcrumbs{margin-bottom:34px}.detail-photo{min-height:320px}.detail-content,.faq-section,.related-services{padding:72px 0}.included-card{padding:32px 24px}.service-actions{flex-direction:column}.service-actions a{width:100%}.faq-grid{grid-template-columns:1fr}.detail-cta{padding:62px 0}
}
