/* Palette and flowing shapes taken from the supplied Wisgrill logo. */
:root{--blue:#175e9e;--navy:#124b7e;--teal:#138b80;--yellow:#ffdf00;--ink:#163c58;--muted:#526b7b;--light:#f1f6f7;--line:#d6e4e8;--lime:#99c51a}
.topbar{background:var(--navy)}
.header{border-bottom:3px solid var(--yellow)}
.nav-wrap{min-height:112px}
.brand{width:310px}
.brand img,.footer-brand img{width:100%;height:auto;object-fit:contain}
nav a:hover,.service-link:hover{color:#0c756c}
.nav-cta,.button{border-radius:5px 18px 5px 18px}
.hero{background:linear-gradient(125deg,#124b7e 0%,#175e9e 52%,#138b80 100%)}
body .hero em,body .about em{color:var(--yellow)!important;-webkit-text-fill-color:var(--yellow)!important;font-style:italic}
body .hero .eyebrow,body .hero .eyebrow *,body .about .eyebrow,body .values span,body .hero .tiny-mark{color:#d2ed72!important;-webkit-text-fill-color:#d2ed72!important}
.hero .eyebrow span{background:var(--lime)}
body .hero .yellow,body .hero .yellow *{color:#123c61!important;-webkit-text-fill-color:#123c61!important}
.yellow:hover{background:#ffeb59}
.hero-image{border-radius:32px 8px 32px 8px;border:1px solid #ffffff70;border-bottom:4px solid var(--yellow);box-shadow:0 20px 45px #07395740}
.hero-wave{height:48px}
.tiny-mark{border-color:#ffffff70;border-radius:5px 12px 5px 12px}
.services{position:relative}
.service-card{border-radius:0 24px 0 24px;background:linear-gradient(145deg,#f1f6f7,#e9f1f5);border-top-width:4px}
.service-card.tow{border-top-color:var(--teal)}
.service-card.tow .service-icon{color:var(--teal)}
.service-card li:before{background:var(--teal)}
.step-num,.contact-icon,summary span{color:#0c756c}
.about{background:linear-gradient(115deg,#124b7e,#175e9e 60%,#107b74)}
.values>div{border-top-color:#ffffff40}
.about-copy>.partner-note{background:#103f6aa6;border-left-color:var(--yellow)}
body .about .partner-note strong{color:var(--yellow)!important;-webkit-text-fill-color:var(--yellow)!important}
.request-form{border-top-color:var(--teal);border-radius:0 24px 0 24px;box-shadow:0 12px 35px #163c5808}
.service-options input:checked+span{background:var(--blue)}
footer{border-top:4px solid var(--yellow)}
.footer-brand{width:285px;flex-shrink:0}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#0b786e}
input:focus,textarea:focus{outline-color:#0b786e}
@media(max-width:1050px){.brand{width:260px}nav{gap:18px}.nav-wrap{gap:22px}}
@media(max-width:800px){.nav-wrap{min-height:94px}.brand{width:280px}nav{top:94px}.hero-image{border-radius:24px 6px 24px 6px}.footer-brand{width:250px}}
@media(max-width:540px){.brand{width:min(245px,calc(100vw - 108px))}.nav-wrap{min-height:86px;gap:12px}nav{top:86px}.hero-wave{height:32px}.footer-brand{width:220px}.hero h1{font-size:clamp(48px,13vw,61px)}}

/* Keep the expanded imprint usable on small screens. */
#imprint{max-height:85dvh;overflow-y:auto}#imprint a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

/* Historical trade-press feature, visually distinct from current services. */
.fleet-story{background:#edf4f5;color:var(--ink)}
.fleet-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}
.fleet-intro{max-width:390px;margin-top:26px;font-size:17px;color:var(--muted);line-height:1.7}
.fleet-report{background:#fff;border-top:4px solid var(--yellow);border-radius:0 26px 0 26px;padding:38px;box-shadow:0 14px 40px #163c5808}
.report-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:27px;font-size:10px;letter-spacing:.08em;font-weight:700;color:#0c756c}
.report-meta>span:first-child{color:var(--blue);font-size:15px;letter-spacing:.14em}
.fleet-report h3{font-size:34px;margin-bottom:22px}
.fleet-report>p{font-size:15px;line-height:1.75;color:var(--muted)}
.fleet-report .button{margin-top:28px}
.fleet-report .report-source{font-size:11px;margin-top:20px}
.fleet-report .report-context{font-size:11px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:800px){.fleet-story-grid{grid-template-columns:1fr;gap:32px}.fleet-intro{max-width:580px}.fleet-report{padding:30px}}
@media(max-width:540px){.fleet-report{padding:27px 23px}.fleet-report h3{font-size:29px}.fleet-report .button{width:100%;gap:12px}}

/* Show the complete original vehicle photograph at every screen width. */
.hero-image{height:auto;aspect-ratio:1451 / 1084;align-self:center;margin-top:0}
.hero-image>img{width:100%;height:100%;object-fit:contain;object-position:center}

/* Production layout: resilient content widths, readable controls and legal pages. */
html{scroll-padding-top:132px}
:where(.hero-grid,.service-grid,.about-grid,.faq-grid,.contact-grid,.fleet-story-grid,.form-grid)>*{min-width:0}
:where(h1,h2,h3,p,li,label,legend){overflow-wrap:break-word}
.service-card h3{font-size:clamp(26px,3vw,35px)}
.service-card li:before{flex-shrink:0}
.button{max-width:100%;text-align:left}
.button>span[aria-hidden]{flex-shrink:0}
input:not([type=radio]),textarea{font-size:16px;max-width:100%}
input::placeholder,textarea::placeholder{color:#5b6c79}
.request-form>label,.form-grid>label,legend{font-size:14px}
.required-note{font-size:12px;line-height:1.6}
.footer-bottom{flex-wrap:wrap;font-size:13px}
.footer-bottom>div{flex-wrap:wrap;gap:12px 24px}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;gap:5px;text-decoration:underline;text-underline-offset:4px}
body .hero :focus-visible,body .about :focus-visible{outline-color:#fff}
.button:disabled{cursor:not-allowed;opacity:.65}
.legal-page{padding:54px 0 80px;background:#f7fafb}
.legal-wrap{max-width:900px}
.legal-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:32px;text-decoration:underline;text-underline-offset:4px;font-size:15px}
.legal-page h1{font-size:clamp(30px,5vw,52px);line-height:1.14;margin:0 0 32px;overflow-wrap:anywhere}
.legal-page h2{font-size:clamp(23px,3vw,29px);line-height:1.3;margin:40px 0 16px}
.legal-page p{font-size:16px;line-height:1.8;margin-bottom:20px}
.legal-page a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.legal-page .eyebrow{font-size:11px;margin-bottom:16px}
@media(max-width:1280px){
 .nav-wrap{min-height:100px;gap:20px}.brand{width:260px}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;flex:0 0 44px;background:transparent;border:0;width:44px;height:44px;padding:8px}
 .menu-toggle>span:not(.sr-only){width:26px;height:2px;background:var(--blue)}
 nav{display:none;position:absolute;left:0;right:0;top:100%;padding:12px 28px 24px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;font-size:15px;max-height:calc(100dvh - 110px);overflow-y:auto;box-shadow:0 18px 25px #11374d0c}
 nav.open{display:flex}nav a:not(.nav-cta){min-height:48px;padding:12px 0}nav .nav-cta{margin-top:10px;justify-content:space-between;min-height:48px}
}
@media(max-width:800px){
 .nav-wrap{min-height:94px}.hero-foot{display:flex;margin-top:28px}
 .about-grid{grid-template-columns:1fr;gap:32px}.about h2{font-size:clamp(38px,6vw,48px)}
 html{scroll-padding-top:112px}
}
@media(max-width:540px){
 .nav-wrap{min-height:86px;gap:12px}.brand{width:min(245px,calc(100vw - 108px))}
 nav{padding-left:21px;padding-right:21px;max-height:calc(100dvh - 94px)}
 .service-card h3{font-size:clamp(26px,7.4vw,33px)}
 h2{font-size:clamp(32px,9vw,40px)}
 .about h2{font-size:clamp(35px,10vw,48px)}
 .about h2 br{display:block}
 .service-card{padding:25px 20px 0}.service-link{font-size:13px}
 .fleet-report h3{font-size:clamp(25px,7vw,29px)}
 .hero h1{font-size:clamp(43px,12.5vw,61px)}
 .request-form{padding:24px 16px}
 .service-options span{font-size:13px;padding:12px 3px}
 .footer-bottom>div{gap:8px 18px}
 .legal-page{padding:30px 0 50px}
 .legal-back{margin-bottom:24px}
}
@media print{.header,.topbar,.skip,.legal-back,footer{display:none}.legal-page{padding:0;background:white}.legal-wrap{max-width:none;padding:0}.legal-page h1{font-size:26pt}.legal-page h2{font-size:15pt;break-after:avoid}.legal-page p{font-size:10pt}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.send-status{font-size:14px;line-height:1.65;margin-top:20px;color:var(--ink);overflow-wrap:anywhere}.send-status:empty{display:none}.send-status.send-error{color:#a12626;background:#fff3f2;padding:12px;border-left:3px solid #a12626}.request-form[aria-busy=true]{cursor:progress}

/* Direct contact while server-side mail is intentionally disabled. */
.direct-contact{background:#fff;border-top:3px solid #138e82;border-radius:0 24px 0 24px;padding:38px;box-shadow:0 12px 35px #163c5808;align-self:start}
.direct-contact h3{font-size:clamp(27px,3vw,37px);line-height:1.15;margin-bottom:20px}
.direct-contact>p:not(.eyebrow){font-size:16px;line-height:1.7;color:#405c6d}
.direct-actions{display:flex;flex-direction:column;gap:14px;margin:26px 0 18px}
.direct-actions .button{width:100%;justify-content:space-between;gap:15px;white-space:normal}
.contact-email{background:#fff;border:2px solid #175e9e;color:#175e9e}
.direct-address{display:inline-block;max-width:100%;font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.direct-contact .contact-hint{font-size:13px!important;line-height:1.7;margin-top:17px}
.contact-hint a{text-decoration:underline;text-underline-offset:3px}
.contact-preparation{border-top:1px solid #dce4e9;margin-top:26px;padding-top:23px}
.contact-preparation h4{font-size:16px;margin:0 0 12px}.contact-preparation ul{padding-left:20px;margin:0;font-size:14px;color:#405c6d;line-height:1.7}.contact-preparation li+li{margin-top:7px}
@media(max-width:540px){.direct-contact{padding:26px 20px}.direct-actions .button{font-size:13px;padding:17px 18px}.direct-address{font-size:15px}}

.request-assistant{margin-top:48px}.request-assistant .request-form{max-width:900px;margin:0 auto}.request-assistant h3{font-size:clamp(25px,3.3vw,36px);line-height:1.2;margin-bottom:18px}.assistant-intro{font-size:15px;line-height:1.75;margin-bottom:28px;color:#405c6d}.assistant-intro strong{display:block;margin-top:8px;color:#14364f}.request-assistant fieldset{min-width:0}.prepared-request{margin-top:30px;padding-top:26px;border-top:1px solid #dce4e9}.prepared-request[hidden]{display:none}.prepared-request h4{font-size:19px;line-height:1.4;margin:0 0 20px}.prepared-request>label{display:block;font-size:14px;margin-bottom:8px}.prepared-request textarea{background:#f7fafb;resize:vertical}.prepared-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.prepared-actions .button{font-size:13px;gap:12px}.prepared-request .contact-hint{font-size:13px;line-height:1.7;margin-top:16px}.prepared-request a:not(.button){text-decoration:underline;overflow-wrap:anywhere}#copy-status{font-size:13px;line-height:1.6;margin-top:12px}@media(max-width:540px){.request-assistant{margin-top:30px}.prepared-actions{flex-direction:column}.prepared-actions .button{width:100%;justify-content:space-between;padding:16px 12px;font-size:12px}}

/* Company news: dated posts, a small index and readable article pages. */
.news-home{background:#f5f8fa}.news-section-intro{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:36px}.news-section-intro h2{font-size:clamp(32px,4vw,50px)}.news-section-intro p:not(.eyebrow){font-size:16px;color:#405c6d;max-width:580px;margin-top:20px}.news-all,.news-read{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-weight:700;font-size:14px;color:#175e9e;text-decoration:underline;text-underline-offset:5px}.news-all{flex-shrink:0}.news-list{display:grid;gap:24px}.news-card{display:grid;grid-template-columns:190px minmax(0,1fr);gap:40px;padding:38px 42px;background:#fff;border:1px solid #d6e4e8;border-top:3px solid #138b80;border-radius:0 26px 0 26px}.news-card-meta{display:flex;flex-direction:column;align-items:flex-start;gap:17px}.news-tag{display:inline-flex;padding:6px 11px;background:#e7f3ef;color:#12685f;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:3px}.news-card time,.news-article-meta time{font-size:13px;color:#526b7b}.news-card :is(h2,h3){font-size:clamp(25px,3vw,34px);line-height:1.18;margin-bottom:17px}.news-card :is(h2,h3) a:hover{color:#175e9e;text-decoration:underline;text-underline-offset:5px}.news-card-copy>p{font-size:16px;line-height:1.75;color:#405c6d;max-width:650px;margin-bottom:18px}.news-page{padding:40px 0 90px;background:#f5f8fa;min-height:65vh}.news-page-heading{max-width:820px;margin-bottom:44px}.news-page h1{font-size:clamp(35px,5vw,62px);line-height:1.08;overflow-wrap:break-word;margin-bottom:25px}.news-page-heading>p:last-child{font-size:18px;line-height:1.75;color:#405c6d;max-width:650px}.news-contact-note{display:flex;flex-wrap:wrap;align-items:center;gap:12px 25px;border-top:1px solid #d6e4e8;margin-top:45px;padding-top:30px;font-size:15px}.news-contact-note a{text-decoration:underline;font-weight:700;text-underline-offset:4px;color:#175e9e}.news-article{max-width:1000px}.news-article-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:27px}.news-lead{font-size:clamp(17px,2vw,21px);line-height:1.75;color:#405c6d}.news-article-heading{padding-bottom:36px;border-bottom:1px solid #d6e4e8}.news-article-body{max-width:760px}.news-article-body section{margin-top:38px}.news-article-body h2{font-size:clamp(24px,3vw,32px);line-height:1.25;margin-bottom:18px}.news-article-body p{font-size:17px;line-height:1.85;color:#405c6d}.news-article-contact{margin-top:44px;padding:30px;background:white;border-left:3px solid #138b80;border-radius:0 20px 0 20px}.news-article-contact h2{font-size:25px}.news-article-contact>div{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:23px}.news-article-contact .button{font-size:13px;gap:15px}.news-article-contact .news-read{font-size:13px}
@media(max-width:800px){.news-section-intro{align-items:flex-start;flex-direction:column;gap:18px}.news-card{grid-template-columns:140px minmax(0,1fr);gap:25px;padding:30px}.news-page{padding:30px 0 65px}}
@media(max-width:540px){.news-card{grid-template-columns:1fr;gap:23px;padding:25px 20px}.news-card-meta{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px 18px}.news-card :is(h2,h3){font-size:27px}.news-card-copy>p{font-size:15px}.news-section-intro{margin-bottom:24px}.news-article-contact{padding:24px 20px}.news-article-body p{font-size:16px}.news-article-contact .button{padding:16px 14px}.news-article-meta{gap:12px}.news-page .legal-back{margin-bottom:24px}.news-page h1{font-size:clamp(34px,10vw,48px)}}
@media print{.news-page{background:white;padding:0}.news-article-contact{display:none}.news-article{max-width:none}.news-page h1{font-size:27pt}.news-article-body h2{font-size:17pt;break-after:avoid}.news-article-body p{font-size:11pt}}
