@font-face{font-family:MGText;src:url('fonts/body.otf') format('opentype');font-display:swap}@font-face{font-family:MGDisplay;src:url('fonts/display.otf') format('opentype');font-weight:700;font-display:swap}
:root{color-scheme:dark;--bg:#08090b;--white:#eef0f2;--muted:#b0b5bc;--line:#353a41}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--white);font-family:MGText,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:5px}p{margin:0 0 22px}h1,h2,h3{font-family:MGDisplay,sans-serif;font-weight:700;text-transform:uppercase;line-height:.98;margin:0 0 24px;letter-spacing:.005em}h1{font-size:clamp(64px,7.5vw,112px)}h2{font-size:clamp(46px,5vw,76px)}h3{font-size:36px}h1 em{font:inherit;font-style:italic}h1,h2{background:linear-gradient(175deg,#fff 10%,#dde0e4 35%,#8b929a 70%,#e9ecef 95%);background-clip:text;color:transparent}.header{height:92px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#090a0c}.brand{display:flex;gap:14px;align-items:center}.brand strong{font-family:MGDisplay,sans-serif;font-size:44px;font-style:italic;line-height:1}.brand>span{max-width:80px;border-left:1px solid #737980;padding-left:14px;font-size:12px;letter-spacing:2px;line-height:1.5}.header nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav-cta{padding:12px 18px;border:1px solid #717880}.nav-cta span{margin-left:15px}.hero{position:relative;min-height:750px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 78% 42%,#292e35 0%,#0e1115 40%,#08090b 70%)}.hero-image{position:absolute;inset:0 0 0 22%;background:url('hero.jpg') center/cover no-repeat;opacity:1;mask-image:linear-gradient(90deg,transparent,#000 20%);z-index:2;pointer-events:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#08090b,transparent 65%);pointer-events:none;z-index:2}.hero-content{position:relative;z-index:4;padding:70px 5% 100px;max-width:65%;pointer-events:none}.hero-content a{pointer-events:auto}.intro{font-size:17px;color:#c2c6cd}.eyebrow,.tag{font-size:12px;letter-spacing:2px;color:#bac0c8;margin:0 0 25px}.signature{font-size:12px;letter-spacing:2px;color:#aab0b8;margin-top:26px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:17px 23px;border:1px solid #d6d9de;cursor:pointer;font-size:14px;font-weight:bold;transition:filter .2s,transform .2s}.light{background:linear-gradient(120deg,#fff,#a9afb7);color:#111418}.button:hover{filter:brightness(1.15);transform:translateY(-2px)}.hero-bottom{position:absolute;bottom:24px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;z-index:5;font-size:14px}
.strip{display:flex;justify-content:space-around;flex-wrap:wrap;gap:15px;padding:24px 5%;font-size:12px;letter-spacing:2px;border-block:1px solid #515862;background:linear-gradient(110deg,#12161b,#2b3038,#101318)}.section{padding:95px 7%;position:relative;border-bottom:1px solid #252b32;background:radial-gradient(ellipse at 90% 0%,#20262e 0%,transparent 48%),#080a0d}.section-heading{display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:45px}.section-heading>p{max-width:370px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service{position:relative;display:flex;flex-direction:column;padding:34px 28px;border:1px solid #414951;background:linear-gradient(145deg,#222831 0%,#101419 50%,#080a0d);transition:transform .25s,border-color .25s}.service:before,.care-plan:before{content:'';height:2px;position:absolute;left:0;right:0;top:0;background:linear-gradient(90deg,transparent,#ced3da,transparent)}.service:hover{transform:translateY(-6px);border-color:#99a3af}.service.featured{border-color:#a4aeb9;background:linear-gradient(145deg,#3d4651,#171c23 55%,#0b0e12)}.service .number{font-family:MGDisplay,sans-serif;font-size:30px;color:#939fac;position:absolute;right:22px;top:22px}.service .tag{padding-right:30px;min-height:38px;font-size:12px;letter-spacing:1px}.service h3{font-size:48px}.service p:not(.tag){color:#c5cbd3}.package-note{font-size:14px;color:#9fa9b6;margin:0 0 32px}.service>a{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #444c56;padding-top:22px;margin-top:auto;font-size:14px}.extras{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;margin-top:75px;padding-top:45px;border-top:1px solid #343b44}.extras h3{font-size:44px}.extras p{color:var(--muted)}.extra-list>a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;border-bottom:1px solid #343d48}.extra-list small{display:block;font-size:14px;color:#9fa8b4;margin-top:7px}.process{background:linear-gradient(100deg,#080a0eee,#0d1119e8),url('hero.jpg') center/cover}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.steps article{border-top:1px solid #737d8a;padding:26px 0}.steps article>span{font-family:MGDisplay,sans-serif;font-size:56px;color:#8a97a7;display:block;margin-bottom:15px}.steps h3{font-size:30px}.steps p{color:var(--muted)}.fleet{background:radial-gradient(ellipse at 20% 30%,#262d36,transparent 60%),#07090c}.fleet-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:end;margin-bottom:40px}.fleet-heading>.eyebrow{grid-column:1/-1}.fleet-heading>p:last-child{color:var(--muted);max-width:400px}.care-plans{display:grid;grid-template-columns:1fr 1fr;gap:26px}.care-plan{position:relative;padding:40px;border:1px solid #454e5a;display:flex;flex-direction:column;background:linear-gradient(140deg,#30394480,#0c1015e8)}.care-plan h3{font-size:42px}.care-plan p:not(.tag){color:#b7c0cc}.care-benefits{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 30px}.care-benefits span{font-size:12px;padding:7px 10px;border:1px solid #555f6d;color:#c6ced8}.care-plan>a{margin-top:auto;border-top:1px solid #505a68;padding-top:22px;display:flex;justify-content:space-between;gap:15px;font-size:14px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}.questions details{border-bottom:1px solid #414955;padding:22px 0}.questions summary{cursor:pointer;font-size:17px;padding-right:10px}.questions p{color:var(--muted);margin:20px 0 5px}.quote{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:radial-gradient(ellipse at 15% 65%,#2b333f,transparent 55%),#080a0d}.quote>div>p:not(.eyebrow){color:var(--muted)}.quote-card{padding:34px;border:1px solid #6a7685;background:linear-gradient(135deg,#252d38,#0a0e14);box-shadow:0 20px 70px #0007}label{display:block;font-size:14px;margin-bottom:10px}select,textarea{display:block;width:100%;padding:14px;background:#0d1219;color:#e6eaf0;border:1px solid #586475;margin:0 0 24px;font-size:16px;min-width:0;border-radius:0}textarea{resize:vertical}.quote-card .button{width:100%}#feedback{font-size:14px;color:#b7c0cc;margin:18px 0 0}footer{padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px;background:#07090b}footer p{margin:0;font-family:MGDisplay,sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:20px}footer>span{font-size:12px;color:#9ca6b3}
@media(max-width:950px){.service-grid{gap:12px}.service{padding:26px 20px}.service h3{font-size:42px}.hero-content{max-width:66%}.care-plan{padding:28px}.section{padding:75px 6%}}
@media(max-width:750px){.header{height:80px}.header nav>a:not(.nav-cta){display:none}.header nav{gap:0}.nav-cta{padding:9px 12px;font-size:12px}.brand strong{font-size:36px}.hero{min-height:960px}.hero-content{max-width:none;padding:48px 6% 390px}h1{font-size:clamp(62px,12vw,84px)}.hero-image{inset:280px -30px 20px 0;background-position:65% center}.hero-shade{background:linear-gradient(180deg,#08090b 5%,transparent 65%)}.signature{display:none}.hero-bottom{font-size:12px}.strip{font-size:12px;letter-spacing:1px}.section{padding:64px 6%}.section-heading{display:block}.section-heading>p{max-width:none}.service-grid,.extras,.steps,.fleet-heading,.care-plans,.faq,.quote{grid-template-columns:1fr}.service-grid{gap:22px}.service{padding:30px}.service h3{font-size:48px}.service .tag{min-height:0;margin-bottom:30px}.extras{gap:15px;margin-top:50px}.steps{gap:10px}.fleet-heading{gap:0}.care-plan h3{font-size:38px}.faq,.quote{gap:25px}.quote-card{padding:24px}footer{flex-wrap:wrap}footer>span{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service,.button{transition:none}}

/* Original static hero photo. */
.hero-image{transform:none;opacity:1;display:block}.hero-bottom{justify-content:flex-end}

/* Current truck photograph moves forward, followed by the supplied logo. */
.hero-image{transform-origin:72% 52%;pointer-events:none}
.brand-reveal{position:absolute;z-index:3;right:3%;top:12%;width:48%;opacity:0;pointer-events:none}
.brand-reveal img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;mask-image:radial-gradient(ellipse,#000 49%,transparent 73%)}
.hero.intro-finished .hero-image{opacity:0}
.hero.intro-finished .brand-reveal{opacity:1}
.hero.intro-active .hero-image{animation:truck-forward 2.6s cubic-bezier(.5,0,.8,.4) both}
.hero.intro-active .brand-reveal{animation:brand-arrive 1s 2.5s both}
.hero-bottom{justify-content:space-between}
#replay{padding:8px 0;background:none;border:0;color:#bec4cc;cursor:pointer;font-size:14px}
#replay[hidden]{display:none}
@keyframes truck-forward{0%,22%{transform:scale(1);opacity:1;filter:blur(0)}65%{opacity:1;filter:blur(0)}100%{transform:scale(1.55) translateX(8%);opacity:0;filter:blur(3px)}}
@keyframes brand-arrive{from{opacity:0;transform:scale(.93) translateY(12px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(max-width:750px){.brand-reveal{top:auto;bottom:70px;right:10%;width:80%}.brand-reveal img{max-height:340px}.hero-image{transform-origin:65% 65%}}
@media(prefers-reduced-motion:reduce){.hero.intro-active .hero-image,.hero.intro-active .brand-reveal{animation:none}#replay{display:none}}

.contact-number{margin:18px 0 0;font-size:16px}.contact-number a{text-decoration:underline;text-underline-offset:3px}

/* Customer work and the person behind MG. Original photos retain their color. */
.service-photo{display:block;width:calc(100% + 56px);max-width:none;height:270px;object-fit:cover;margin:-34px -28px 30px;flex-shrink:0;border-bottom:1px solid #414951}
.photo-basic{object-position:50% 48%}.photo-supreme{object-position:50% 59%}.photo-exterior{object-position:50% 50%}
.service .number{position:static;align-self:flex-end;line-height:1;margin-bottom:14px}.service .tag{padding-right:0}
.header nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}.footer-about{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.about-main{background:radial-gradient(ellipse at 75% 20%,#292d32,transparent 60%),#08090b}
.about-section{max-width:1400px;margin:auto;padding:80px 7% 100px;display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}
.about-copy{min-width:0}.about-copy :is(h1,h2){font-size:clamp(56px,6.2vw,88px)}.about-copy :is(h1,h2) em{font-style:normal}
.about-copy>p:not(.eyebrow):not(.owner-name):not(.about-signature){font-size:18px;line-height:1.8;color:#c4c8ce;max-width:560px}
.owner-name{font-size:24px;margin:30px 0 26px}.owner-name span{display:block;font-size:14px;color:#aab0b8;margin-top:4px}
.about-signature{border-top:1px solid #454950;padding-top:22px;font-family:MGDisplay,sans-serif;font-size:23px;text-transform:uppercase}
.owner-portrait{margin:0;border:1px solid #62676e;background:#141619;min-width:0}
.owner-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%}
.owner-portrait figcaption{padding:18px 20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;letter-spacing:1.5px;color:#d2d5da}
.owner-portrait figcaption span{color:#9fa5ae}
@media(max-width:950px){.service-photo{width:calc(100% + 40px);margin:-26px -20px 26px;height:240px}.header nav{gap:18px}}
@media(max-width:750px){.service-photo{width:calc(100% + 60px);margin:-30px -30px 28px;height:320px}.header{height:auto;min-height:110px;padding:18px 6%;flex-wrap:wrap;gap:16px}.header nav{width:100%;flex-wrap:wrap;gap:12px 20px}.header nav>a:not(.nav-cta){display:block;font-size:14px}.header nav .nav-cta{font-size:14px;padding:7px 10px}.about-section{grid-template-columns:1fr;padding:48px 6% 65px;gap:38px}.about-copy :is(h1,h2){font-size:clamp(52px,12vw,78px)}.owner-portrait{max-width:500px}.about-copy .button{gap:15px}.about-copy>p:not(.eyebrow):not(.owner-name):not(.about-signature){font-size:17px}}
