:root{--ink:#102c39;--text:#294653;--muted:#687f89;--blue:#0789b8;--cyan:#2ab8c6;--pale:#edf8fa;--soft:#f6fafb;--line:#dce9ed;--white:#fff;--shadow:0 24px 70px rgba(14,72,91,.12);--radius:18px}
*{box-sizing:border-box}
html{scroll-behavior:auto;scroll-padding-top:88px}
body{margin:0;overflow-x:hidden;background:var(--white);color:var(--text);font-family:"DM Sans",system-ui,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.skip-link{position:fixed;left:16px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;height:82px;padding:0 clamp(20px,5vw,76px);background:#fff;border-bottom:1px solid rgba(13,78,99,.08)}
.logo{width:154px;height:64px;overflow:hidden;display:flex;align-items:center}.logo img{width:154px;mix-blend-mode:multiply}
.main-nav{display:flex;align-items:center;gap:clamp(22px,3vw,42px);font-size:14px;font-weight:600}.main-nav a{position:relative;padding:28px 0}.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:right .25s}.main-nav a:hover::after,.main-nav a:focus-visible::after{right:0}
.header-tools{display:flex;align-items:center;gap:15px}.language-buttons{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.language-buttons :is(button,a){width:34px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:10px;font-weight:800;transition:.2s}.language-buttons :is(button,a):hover,.language-buttons :is(button,a).active{background:#fff;color:var(--blue);box-shadow:0 4px 12px rgba(14,72,91,.12)}
.header-cta{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:11px;background:var(--ink);color:#fff;transition:.25s}.header-cta:hover{background:var(--blue);transform:translateY(-1px)}.header-cta svg{width:27px}.header-cta span{display:flex;flex-direction:column;line-height:1.2}.header-cta small{font-size:8px;letter-spacing:.14em;color:#a8dfe7}.header-cta strong{font-size:12px}
.menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;margin:5px auto;background:var(--ink);transition:.25s}.menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hero{min-height:660px;display:grid;grid-template-columns:52% 48%;background:linear-gradient(135deg,#f4fbfc,#e6f6f8);overflow:hidden}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:84px clamp(32px,6.5vw,104px)}.eyebrow{margin:0;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.16em}.hero h1,.section h2,.detail-section h2,.report-strip h2,.contact-section h2{margin:18px 0 22px;color:var(--ink);font:800 clamp(42px,5vw,72px)/1.06 "Manrope",sans-serif;letter-spacing:-.045em}.hero h1 em{font-style:normal;color:var(--blue)}.hero-intro{max-width:590px;margin:0;color:#536d78;font-size:18px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:12px;margin:32px 0 45px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;padding:0 20px;border-radius:10px;font-size:14px;font-weight:700;transition:transform .22s,box-shadow .22s,background .22s}.button:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(8,97,128,.18)}.button-primary{background:linear-gradient(135deg,var(--blue),#079fc0);color:#fff}.button-quiet{border:1px solid #bfdbe2;background:rgba(255,255,255,.5);color:var(--ink)}
.hero-facts{display:flex;gap:clamp(24px,4vw,56px);margin:0}.hero-facts div{display:flex;flex-direction:column}.hero-facts dt{color:var(--ink);font:800 22px "Manrope"}.hero-facts dd{margin:2px 0 0;color:var(--muted);font-size:12px}
.hero-media{position:relative;min-height:660px}.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eaf7f8 0,transparent 16%),linear-gradient(0deg,rgba(8,43,56,.28),transparent 50%)}.hero-media>img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;left:38px;bottom:52px;z-index:2;display:flex;align-items:center;gap:12px;padding:15px 20px;background:rgba(255,255,255,.92);border-radius:12px;box-shadow:var(--shadow);backdrop-filter:blur(8px)}.hero-overlay div{display:flex;flex-direction:column}.hero-overlay small{font-size:8px;letter-spacing:.13em;color:var(--muted)}.hero-overlay strong{font-size:13px;color:var(--ink)}.status-dot{width:10px;height:10px;border-radius:50%;background:#4593bc;box-shadow:0 0 0 7px rgba(49,189,130,.15)}.image-caption{position:absolute;z-index:2;right:26px;bottom:16px;display:flex;gap:18px;margin:0;color:#fff;font-size:10px;letter-spacing:.12em}
.trust-bar{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px clamp(28px,6.5vw,104px);border-bottom:1px solid var(--line)}.trust-bar p{margin:0;color:var(--muted);font-size:12px}.trust-bar div{display:flex;align-items:center;gap:clamp(20px,4vw,58px);color:#66808b;font:700 12px "Manrope";letter-spacing:.05em}
.section{padding:110px clamp(24px,6.5vw,104px)}.section-header{display:grid;grid-template-columns:1.1fr .75fr;gap:8vw;align-items:end}.section-header h2{font-size:clamp(36px,4vw,58px);margin-bottom:0}.section-header>p{max-width:520px;margin:0;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:58px}.service-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.28s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#a9d5df}.card-image{height:190px;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover .card-image img{transform:scale(1.035)}.card-body{position:relative;display:flex;min-height:300px;flex-direction:column;padding:30px}.card-number{position:absolute;right:28px;top:24px;color:#9bb0b8;font-size:11px}.card-icon{width:36px;height:36px;color:var(--blue);margin-bottom:24px}.service-card h3{margin:0;color:var(--ink);font:700 22px "Manrope"}.service-card p{margin:14px 0 25px;color:var(--muted);font-size:14px}.service-card a{display:flex;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);color:var(--blue);font-size:13px;font-weight:700}
.detail-section{display:grid;grid-template-columns:1fr 1fr;min-height:600px;background:var(--soft)}.detail-reverse{direction:rtl;background:#fff}.detail-reverse>*{direction:ltr}.detail-media img{width:100%;height:100%;min-height:600px;object-fit:cover}.detail-copy{display:flex;flex-direction:column;justify-content:center;padding:80px clamp(34px,7vw,110px)}.detail-section h2{font-size:clamp(34px,3.7vw,54px)}.detail-copy>p:not(.eyebrow){max-width:580px;color:var(--muted)}.check-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px;margin:28px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:25px;color:var(--ink);font-size:14px}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--cyan);font-weight:800}
.report-strip{display:grid;grid-template-columns:1fr .8fr;gap:6vw;padding:92px clamp(24px,6.5vw,104px);background:linear-gradient(135deg,var(--ink),#16495b);color:#fff}.report-strip h2{margin-bottom:0;color:#fff;font-size:clamp(34px,3.7vw,54px)}.report-strip>p{align-self:end;margin:0;color:#c0d7df}.report-steps{grid-column:1/-1;display:flex;align-items:center;gap:18px;margin-top:20px}.report-steps span{display:flex;align-items:center;gap:10px}.report-steps b{display:grid;place-items:center;width:36px;height:36px;border:1px solid #6ca1b3;border-radius:50%;color:#7ee1e4}.report-steps small{font-size:12px}.report-steps i{height:1px;flex:1;background:#ffffff2e}
.ferry-section{background:linear-gradient(#f7fbfc,#edf8fa)}.ferry-header h2{font-size:clamp(38px,4.2vw,60px)}.map-shell{margin-top:50px;overflow:hidden;border:1px solid #c9e1e7;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.map-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.map-topbar span{display:flex;align-items:center;gap:10px;color:var(--ink)}.map-topbar i{width:8px;height:8px;border-radius:50%;background:#4593bc;box-shadow:0 0 0 6px rgba(49,189,130,.13)}.map-topbar b{font-size:13px}.map-topbar small{color:var(--muted);font-size:11px}.map-shell iframe{display:block;width:100%;height:580px;border:0}.map-note{margin:12px 4px 0;color:var(--muted);font-size:11px}
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center}.about h2{font-size:clamp(36px,4vw,56px)}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:17px}.about-points{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.about-points div{display:flex;flex-direction:column;padding-top:18px;border-top:1px solid var(--line)}.about-points strong{color:var(--ink)}.about-points span{margin-top:5px;color:var(--muted);font-size:13px}.about-media{position:relative}.about-media>img{width:100%;height:480px;object-fit:cover;border-radius:var(--radius)}.about-media>div{position:absolute;left:-38px;bottom:34px;display:flex;align-items:center;gap:14px;max-width:245px;padding:18px 22px;border-radius:12px;background:var(--blue);color:#fff;box-shadow:var(--shadow)}.about-media strong{font:800 36px "Manrope"}.about-media span{font-size:12px;line-height:1.35}
.contact-section{display:grid;grid-template-columns:.78fr 1.22fr;align-items:start;gap:7vw;padding:100px clamp(24px,6.5vw,104px);background:linear-gradient(145deg,#087da9,#20b8c4);color:#fff}.contact-section .eyebrow{color:#cef7f8}.contact-section h2{margin-bottom:12px;color:#fff;font-size:clamp(36px,4vw,56px)}.contact-intro>p:not(.eyebrow){margin:0;color:#d9f6f7}.contact-details{display:grid;gap:3px;margin-top:42px}.contact-details a{display:flex;flex-direction:column;padding:16px 0;border-bottom:1px solid #ffffff30}.contact-details small{color:#bcebf0;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.contact-details strong{font-size:15px}
.contact-form{padding:38px;border-radius:20px;background:#fff;color:var(--text);box-shadow:0 30px 80px rgba(2,67,88,.25)}.form-heading span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.15em}.form-heading h3{margin:6px 0 28px;color:var(--ink);font:700 28px "Manrope"}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#f9fcfc;padding:13px 14px;color:var(--ink);font:400 14px "DM Sans";outline:none;transition:.2s}.contact-form textarea{resize:vertical;min-height:130px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(42,184,198,.12);background:#fff}.form-wide{grid-column:1/-1}.privacy-check{display:flex!important;grid-template-columns:18px 1fr!important;align-items:start;gap:10px!important;color:var(--muted)!important;font-weight:400!important}.privacy-check input{width:17px;height:17px;margin-top:2px;accent-color:var(--blue)}.website-field{position:absolute!important;left:-9999px}.form-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:24px;padding:16px 20px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;cursor:pointer;font-weight:700;transition:.22s}.form-submit:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(7,137,184,.22)}.form-note{margin:11px 0 0!important;color:var(--muted)!important;font-size:10px}.form-status{display:none;margin-top:14px;padding:11px 14px;border-radius:8px;font-size:13px}.form-status.show{display:block}.form-status.success{background:#e7f8ef;color:#245f83}.form-status.error{background:#fff0ed;color:#9a352b}
.imprint{background:var(--soft)}.imprint header{display:flex;align-items:end;justify-content:space-between}.imprint h2{margin:10px 0 0;font-size:clamp(36px,4vw,54px)}.imprint-grid{display:grid;grid-template-columns:.8fr .8fr 1.4fr;gap:25px;margin-top:45px}.imprint-grid>div{padding:28px;border:1px solid var(--line);border-radius:14px;background:#fff}.imprint-grid small{display:block;margin-bottom:12px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.imprint-grid strong{color:var(--ink);font:700 18px "Manrope"}.imprint-grid p{margin:9px 0 0;color:var(--muted);font-size:13px}
.scroll-controls{position:fixed;right:22px;bottom:22px;z-index:25;display:flex;visibility:hidden;opacity:0;transform:translateY(12px);flex-direction:column;gap:6px;transition:.2s}.scroll-controls.visible{visibility:visible;opacity:1;transform:none}.scroll-controls button{width:42px;height:42px;border:1px solid #ffffff30;border-radius:10px;background:#111719;color:#fff;cursor:pointer;box-shadow:0 8px 24px rgba(16,44,57,.16);transition:.15s}.scroll-controls button:hover{background:var(--blue);transform:translateY(-1px)}
.site-footer{padding:70px clamp(24px,6.5vw,104px) 25px;background:#0c2833;color:#bad0d8}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr .7fr;gap:45px}.footer-logo{display:block;width:190px;height:95px;overflow:hidden;background:#fff;border-radius:8px}.footer-logo img{width:190px}.footer-top p{margin:0;color:#fff;font:700 17px/1.5 "Manrope"}.footer-top address{font-style:normal;font-size:13px}.footer-top nav{display:grid;align-content:start;gap:9px;font-size:13px}.footer-top nav a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid #ffffff17;color:#718f9a;font-size:11px}
@media(max-width:1050px){.main-nav{gap:20px}.header-cta{display:none}.hero{grid-template-columns:55% 45%}.hero-copy{padding-inline:45px}.service-grid{gap:14px}.card-body{padding:24px}.about{gap:6vw}.contact-section{gap:4vw}.contact-form{padding:30px}}
@media(max-width:820px){html{scroll-padding-top:72px}.site-header{height:72px;padding-inline:18px}.logo{width:138px;height:62px}.logo img{width:138px}.menu-toggle{display:block;order:3}.header-tools{margin-left:auto}.main-nav{position:fixed;left:0;right:0;top:72px;display:flex;visibility:hidden;opacity:0;transform:translateY(-10px);flex-direction:column;align-items:stretch;gap:0;padding:20px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);transition:.22s}.main-nav.open{visibility:visible;opacity:1;transform:none}.main-nav a{padding:15px;border-bottom:1px solid var(--line)}.main-nav a::after{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 24px 60px}.hero-media{min-height:470px}.trust-bar{align-items:flex-start;flex-direction:column}.trust-bar div{width:100%;justify-content:space-between;flex-wrap:wrap}.section{padding:82px 24px}.section-header{grid-template-columns:1fr;gap:18px}.service-grid{grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:40% 60%}.card-image{height:100%;min-height:330px}.detail-section{grid-template-columns:1fr}.detail-media img{min-height:400px;height:400px}.detail-copy{padding:70px 24px}.detail-reverse{direction:ltr}.report-strip{grid-template-columns:1fr;padding:75px 24px}.report-strip>p{align-self:auto}.map-shell iframe{height:500px}.about{grid-template-columns:1fr}.about-media{margin-left:35px}.contact-section{grid-template-columns:1fr;padding-block:78px}.imprint-grid{grid-template-columns:1fr 1fr}.imprint-grid>div:last-child{grid-column:1/-1}.footer-top{grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1}}
@media(max-width:560px){.language-buttons :is(button,a){width:29px;height:28px}.hero h1{font-size:42px}.hero-intro{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column}.hero-facts{justify-content:space-between;gap:10px}.hero-media{min-height:390px}.trust-bar div{display:grid;grid-template-columns:1fr 1fr}.service-card{display:block}.card-image{height:210px;min-height:0}.card-body{min-height:285px}.check-list{grid-template-columns:1fr}.report-steps{gap:8px}.report-steps i{min-width:8px}.report-steps small{font-size:10px}.ferry-section{padding-inline:14px}.ferry-header{padding-inline:10px}.map-topbar small{display:none}.map-shell iframe{height:440px}.about-points{grid-template-columns:1fr}.about-media{margin-left:0}.about-media>img{height:360px}.about-media>div{left:15px;bottom:15px}.contact-form{padding:24px 18px}.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}.imprint-grid{grid-template-columns:1fr}.imprint-grid>div:last-child{grid-column:auto}.site-footer{padding-inline:24px}.footer-top{grid-template-columns:1fr}.footer-logo{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column;gap:7px}.scroll-controls{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Full-bleed animated hero */
.hero{position:relative;isolation:isolate;display:block;min-height:720px;overflow:hidden;background:#101820}
.hero-background{position:absolute;inset:0;z-index:-3}.hero-background::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,15,19,.96) 0%,rgba(7,15,19,.88) 38%,rgba(7,15,19,.35) 68%,rgba(7,15,19,.12) 100%),linear-gradient(0deg,rgba(5,15,19,.7),transparent 48%)}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center;animation:hero-drift 18s ease-in-out infinite alternate}
.hero-grid{position:absolute;inset:0 45% 0 0;z-index:-1;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:80px 80px}
.hero::after{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:#099ac3;transform-origin:top;animation:hero-line 1.2s cubic-bezier(.2,.8,.2,1) both}
.hero-copy{min-height:630px;justify-content:center;width:min(760px,62%);padding:90px clamp(34px,7vw,112px) 135px;color:#fff}.hero .eyebrow{color:#54c9e6}.hero h1{max-width:720px;margin:22px 0 24px;color:#fff;font-size:clamp(52px,6vw,88px);line-height:.98;letter-spacing:-.055em}.hero h1 em{color:#fff}.hero-intro{max-width:630px;color:#d3dee2;font-size:18px}.hero-service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.hero-service-tags span{padding:7px 11px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.08);color:#e9f1f3;font-size:11px;font-weight:600}.hero-actions{margin:30px 0 0}.hero .button{min-width:205px}.hero .button-primary{background:#099ac3}.hero .button-quiet{border-color:rgba(255,255,255,.28);background:rgba(10,20,24,.72);color:#fff}
.hero-facts-wrap{position:absolute;left:clamp(34px,7vw,112px);right:clamp(34px,5vw,80px);bottom:0;display:flex;align-items:stretch;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);color:#fff}.hero-facts{gap:0}.hero-facts div{min-width:155px;padding:22px 34px 24px 0}.hero-facts dt{color:#fff}.hero-facts dd{color:#aabdc4}.hero-ferry-link{display:flex;align-items:center;gap:44px;padding:0 4px 0 35px;border-left:1px solid rgba(255,255,255,.18);color:#fff;font-size:13px;font-weight:700}.hero-ferry-link b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#099ac3;animation:ferry-bob 2s ease-in-out infinite}
@keyframes hero-drift{from{transform:scale(1.02) translateX(0)}to{transform:scale(1.075) translateX(-1.2%)}}@keyframes hero-line{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes ferry-bob{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
@media(max-width:820px){.hero{min-height:760px}.hero-background::after{background:linear-gradient(90deg,rgba(7,15,19,.93),rgba(7,15,19,.55)),linear-gradient(0deg,rgba(5,15,19,.92) 0%,transparent 58%)}.hero-background img{object-position:62% center}.hero-grid{background-size:56px 56px}.hero-copy{width:100%;min-height:640px;padding:72px 24px 150px}.hero h1{font-size:clamp(46px,12vw,68px)}.hero-intro{font-size:16px}.hero-facts-wrap{left:24px;right:24px}.hero-facts{flex:1;justify-content:space-between}.hero-facts div{min-width:0;padding:20px 10px 22px 0}.hero-ferry-link{gap:14px;padding-left:16px}.hero-ferry-link span{display:none}}
@media(max-width:560px){.hero{min-height:790px}.hero-copy{min-height:665px;padding-top:62px}.hero h1{font-size:48px}.hero-service-tags{gap:6px}.hero-service-tags span{font-size:10px}.hero-actions{display:grid;grid-template-columns:1fr}.hero .button{width:100%}.hero-facts-wrap{left:20px;right:20px}.hero-facts dt{font-size:19px}.hero-facts dd{font-size:10px}.hero-ferry-link{display:none}}

/* Unified blue identity, premium header and new company sections */
:root{--ink:#111719;--text:#303b3f;--muted:#707b7f;--blue:#079bc3;--cyan:#079bc3;--pale:#f1f3f4;--soft:#f7f8f8;--line:#e2e6e7}
.site-header{height:90px;padding-inline:clamp(22px,4vw,68px);background:rgba(255,255,255,.97);border-bottom:1px solid #e6e9ea;box-shadow:0 10px 35px rgba(15,24,28,.05)}
.logo{width:auto;height:72px;gap:18px;overflow:visible}.logo img{width:142px;height:67px;object-fit:contain;mix-blend-mode:normal}.logo>span{display:flex;align-items:center;max-width:115px;min-height:34px;padding-left:17px;border-left:1px solid var(--line)}.logo small{color:#687478;font-size:9px;font-weight:700;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}
.main-nav{gap:clamp(16px,1.7vw,28px);font-size:13px}.main-nav a{padding-block:31px}.main-nav a::after{bottom:25px;background:var(--blue)}.mobile-nav-footer{display:none}
.language-buttons{padding:4px;border-color:#dfe5e7;border-radius:12px;background:#f5f7f7}.language-buttons :is(button,a){display:flex;width:auto;height:34px;align-items:center;gap:6px;padding:0 8px;border-radius:8px}.language-buttons :is(button,a) span{font-size:15px;line-height:1}.language-buttons :is(button,a) b{font-size:9px}.language-buttons :is(button,a).active{color:#111;background:#fff;box-shadow:0 5px 14px rgba(15,24,28,.1)}
.header-cta{border-radius:11px;background:#111719}.header-cta:hover{background:var(--blue)}
.hero::after,.hero-ferry-link b{background:var(--blue)}.hero .eyebrow{color:#66d3eb}.hero .button-primary{background:var(--blue)}
.about-points{grid-template-columns:1fr 1fr}.about-points div{min-height:90px}
.why-rivado{background:#f4f5f5}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:56px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--line)}.why-grid article{position:relative;min-height:280px;padding:34px 28px;background:#fff;transition:.25s}.why-grid article:hover{z-index:1;transform:translateY(-4px);box-shadow:0 20px 45px rgba(13,29,35,.1)}.why-grid span{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.12em}.why-grid h3{margin:52px 0 12px;color:var(--ink);font:700 20px/1.3 "Manrope"}.why-grid p{margin:0;color:var(--muted);font-size:13px}
.vacancy-section{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;padding:105px clamp(24px,6.5vw,104px);background:#111719;color:#fff}.vacancy-copy h2{max-width:650px;margin:18px 0 20px;color:#fff;font:800 clamp(38px,4.7vw,66px)/1.05 "Manrope";letter-spacing:-.045em}.vacancy-copy>p:not(.eyebrow){max-width:670px;color:#bdc6c9}.job-meta{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.job-meta span{padding:8px 12px;border:1px solid #ffffff24;border-radius:999px;color:#e3e8ea;font-size:11px}.vacancy-copy .button{width:max-content;margin-top:6px}.vacancy-panel{align-self:center;padding:36px;border:1px solid #ffffff1c;border-radius:18px;background:#1a2225}.vacancy-panel h3{margin:0 0 24px;font:700 22px "Manrope"}.vacancy-panel ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}.vacancy-panel li{position:relative;padding-left:25px;color:#c7d0d3;font-size:13px}.vacancy-panel li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:800}.vacancy-panel>p{display:flex;justify-content:space-between;gap:18px;margin:30px 0 0;padding-top:22px;border-top:1px solid #ffffff1c;font-size:12px}.vacancy-panel>p span{color:#91a1a6}.vacancy-panel>p a{color:#fff;font-weight:700}
.footer-logo{background:transparent}.footer-logo img{object-fit:contain}
@media(max-width:1600px){.site-header{height:78px}.logo{height:64px}.logo img{width:128px;height:58px}.logo>span{display:none}.menu-toggle{display:block;order:3;margin-left:6px}.header-tools{margin-left:auto}.header-cta{display:none}.main-nav{position:fixed;inset:78px 0 0;display:flex;visibility:hidden;opacity:0;transform:translateY(-12px);flex-direction:column;align-items:stretch;gap:0;padding:30px clamp(24px,8vw,70px);background:rgba(17,23,25,.98);color:#fff;transition:.25s;overflow:auto}.main-nav.open{visibility:visible;opacity:1;transform:none}.main-nav>a{padding:16px 0;border-bottom:1px solid #ffffff17;font:700 clamp(24px,5vw,42px)/1.2 "Manrope"}.main-nav>a::after{display:none}.mobile-nav-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding-top:30px;color:#8fa0a5;font-size:12px}.mobile-nav-footer a{color:#fff}.why-grid{grid-template-columns:1fr 1fr}.vacancy-section{gap:4vw}}
@media(max-width:820px){.site-header{height:72px}.main-nav{top:72px}.language-buttons :is(button,a){padding-inline:7px}.language-buttons :is(button,a) b{display:none}.why-grid{grid-template-columns:1fr 1fr}.vacancy-section{grid-template-columns:1fr}.vacancy-panel{width:100%}}
@media(max-width:560px){.site-header{padding-inline:14px}.logo img{width:116px}.language-buttons{gap:1px;padding:3px}.language-buttons :is(button,a){height:30px;padding-inline:5px}.language-buttons :is(button,a) span{font-size:14px}.menu-toggle{width:38px}.mobile-nav-footer{align-items:flex-start;flex-direction:column}.why-grid{grid-template-columns:1fr}.why-grid article{min-height:220px}.why-grid h3{margin-top:34px}.vacancy-section{padding:78px 22px}.vacancy-panel{padding:26px 22px}.vacancy-panel>p{flex-direction:column}}

/* Logo visibility and deterministic country flags */
.logo{width:160px;height:68px;overflow:visible;flex-shrink:0}.logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:normal}.logo>span{display:none}
.footer-logo{display:flex;width:200px;height:104px;align-items:center;justify-content:center;overflow:visible;background:transparent;border-radius:0}.footer-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:invert(1);mix-blend-mode:screen}
.language-buttons :is(button,a) span.flag{display:block;width:17px;height:12px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.flag-nl{background:linear-gradient(#ae1c28 0 33.33%,#fff 33.33% 66.66%,#21468b 66.66%)}
.flag-de{background:linear-gradient(#171717 0 33.33%,#dd0000 33.33% 66.66%,#ffce00 66.66%)}
.flag-gb{position:relative;overflow:hidden;background-color:#21468b;background-image:linear-gradient(32deg,transparent 42%,#fff 43% 57%,transparent 58%),linear-gradient(-32deg,transparent 42%,#fff 43% 57%,transparent 58%)}
.flag-gb::before,.flag-gb::after{content:"";position:absolute;inset:0;margin:auto;background:#cf142b}.flag-gb::before{width:100%;height:3px}.flag-gb::after{width:3px;height:100%}
@media(min-width:1601px){.site-header{height:84px;padding-inline:clamp(20px,3vw,48px)}.main-nav{gap:clamp(14px,1.5vw,24px);font-size:12px}.main-nav>a{white-space:nowrap}.logo{width:148px;height:66px}.language-buttons :is(button,a){padding-inline:7px}}
@media(max-width:560px){.logo{width:118px;height:58px}.footer-logo{width:180px;height:96px}}

/* One blue tone, black and neutral greys */
:root{--ink:#111719;--text:#30383b;--muted:#71797c;--blue:#079bc3;--cyan:#079bc3;--pale:#f1f3f4;--soft:#f7f8f8;--line:#e2e6e7;--shadow:0 24px 70px rgba(17,23,25,.12)}
.hero{background:#111719}.eyebrow,.kicker{color:var(--blue)}.hero .eyebrow{color:#fff}.hero::after,.hero-ferry-link b,.hero .button-primary,.experience-badge,.form-submit{background:var(--blue)}
.status-dot,.map-topbar i{background:var(--blue);box-shadow:0 0 0 7px rgba(7,155,195,.15)}
.track-strip,.report-strip,.cta,.site-footer{background:#111719}.track-strip>a{color:#fff}
.why,.why-rivado,.ferry-section{background:#f4f5f5}.map-shell{border-color:var(--line)}.contact-section{background:var(--blue)}.contact-section .eyebrow,.contact-section p:not(.eyebrow){color:#fff}.kicker.light{color:#fff}
.service-icon,.service-card a,.card-icon,.check-list li::before,.vacancy-panel li::before{color:var(--blue)}
.about-copy>p:not(.eyebrow){margin-block:14px;color:var(--muted);font-size:15px;line-height:1.75}.about-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:30px 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.about-facts span{display:flex;min-height:94px;flex-direction:column;justify-content:center;padding:16px;background:#fff}.about-facts b{color:var(--ink);font:800 25px "Manrope"}.about-facts small{color:var(--muted);font-size:10px}
.form-status.success{background:#eef5f7;color:#075f78}
@media(max-width:560px){.about-facts{grid-template-columns:1fr 1fr}.about-facts span:last-child{grid-column:auto}}

/* Reliable full-height mobile navigation */
@media(max-width:1600px){
  .site-header{backdrop-filter:none}
  .main-nav{position:fixed;z-index:1000;top:78px;right:0;bottom:0;left:0;width:100%;height:calc(100dvh - 78px);max-height:none;overscroll-behavior:contain}
  body.menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.menu-open .menu-toggle span:nth-child(2){opacity:0}
  body.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media(max-width:820px){
  .main-nav{top:72px;height:calc(100dvh - 72px)}
}

/* Scroll performance */
.services,.detail-section,.report-strip,.ferry-section,.about,.why-rivado,.vacancy-section,.contact-section,.imprint,.site-footer{content-visibility:auto;contain-intrinsic-size:auto 800px}
.hero-background img{will-change:transform;backface-visibility:hidden}
@media(max-width:820px){
  .hero-background img{animation:none;will-change:auto}
  .hero-grid{display:none}
}

/* Premium abstract refinement */
body{
  background:
    radial-gradient(circle at 8% 12%, rgba(7,155,195,.08), transparent 28rem),
    linear-gradient(180deg,#fff 0%,#f7f8f8 46%,#fff 100%);
}

.site-header{
  background:
    linear-gradient(90deg,rgba(255,255,255,.98),rgba(247,248,248,.96));
  box-shadow:0 18px 46px rgba(17,23,25,.07);
}

.site-header::after{
  content:"";
  position:absolute;
  left:clamp(18px,4vw,68px);
  right:clamp(18px,4vw,68px);
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--blue),transparent);
  opacity:.55;
}

.main-nav>a{
  color:#20282b;
  letter-spacing:.01em;
}

.main-nav>a:hover{
  color:#000;
}

.language-buttons{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 24px rgba(17,23,25,.06);
}

.hero{
  min-height:735px;
  background:#111719;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(7,155,195,.38) 0 1px,transparent 1px 92px),
    linear-gradient(45deg,transparent 0 64%,rgba(255,255,255,.08) 64% 64.2%,transparent 64.2%),
    radial-gradient(circle at 18% 30%,rgba(7,155,195,.2),transparent 18rem);
  opacity:.8;
}

.hero-background::after{
  background:
    linear-gradient(90deg,rgba(17,23,25,.97) 0%,rgba(17,23,25,.9) 34%,rgba(17,23,25,.56) 62%,rgba(17,23,25,.18) 100%),
    linear-gradient(0deg,rgba(17,23,25,.86),transparent 56%);
}

.hero-background img,
.card-image img,
.detail-media img,
.about-media>img{
  filter:contrast(1.08) saturate(1.04);
}

.hero-copy{
  position:relative;
}

.hero-copy::before{
  content:"";
  position:absolute;
  left:clamp(24px,5vw,72px);
  top:110px;
  width:74px;
  height:74px;
  border:1px solid rgba(7,155,195,.7);
  border-right-color:transparent;
  border-bottom-color:transparent;
  transform:rotate(45deg);
  opacity:.5;
}

.hero h1{
  text-wrap:balance;
  text-shadow:0 16px 40px rgba(0,0,0,.26);
}

.hero-intro{
  color:#e0e7e9;
}

.hero-service-tags span{
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.07);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.button{
  border-radius:14px;
}

.button-primary,
.form-submit{
  background:var(--blue);
  box-shadow:0 18px 38px rgba(7,155,195,.22);
}

.button-quiet{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.hero-facts-wrap{
  background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
}

.hero-facts dt{
  letter-spacing:-.03em;
}

.section{
  position:relative;
}

.services::before,
.ferry-section::before,
.why-rivado::before{
  content:"";
  position:absolute;
  inset:42px clamp(20px,6vw,92px) auto auto;
  width:160px;
  height:160px;
  border-top:1px solid rgba(7,155,195,.32);
  border-right:1px solid rgba(7,155,195,.32);
  transform:skew(-12deg);
  pointer-events:none;
}

.section-header{
  align-items:end;
}

.section-header h2,
.detail-section h2,
.about h2,
.vacancy-copy h2,
.contact-section h2,
.imprint h2{
  text-wrap:balance;
}

.service-grid{
  gap:24px;
}

.service-card{
  position:relative;
  border-color:#e5e8e9;
  border-radius:22px;
  box-shadow:0 12px 38px rgba(17,23,25,.06);
}

.service-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(135deg,rgba(7,155,195,.13),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.32),transparent 42%);
}

.service-card:hover{
  transform:translateY(-6px);
  border-color:rgba(7,155,195,.42);
}

.card-image{
  position:relative;
}

.card-image::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:55%;
  background:linear-gradient(0deg,rgba(17,23,25,.25),transparent);
}

.card-body{
  z-index:2;
}

.card-number{
  color:rgba(7,155,195,.42);
  font-size:12px;
  letter-spacing:.18em;
}

.card-icon{
  padding:8px;
  border-radius:12px;
  background:#f2f7f8;
}

.detail-section{
  position:relative;
  overflow:hidden;
}

.detail-section::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(7,155,195,.38),transparent);
  z-index:2;
}

.detail-copy{
  background:
    linear-gradient(135deg,rgba(7,155,195,.06),transparent 34%),
    linear-gradient(180deg,#fff,#f8f9f9);
}

.detail-reverse .detail-copy{
  background:
    linear-gradient(225deg,rgba(7,155,195,.06),transparent 34%),
    #fff;
}

.check-list li{
  padding:13px 14px 13px 38px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 10px 24px rgba(17,23,25,.04);
}

.check-list li::before{
  left:15px;
  top:13px;
}

.report-strip{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,#111719,#1d272b),
    #111719;
}

.report-strip::after,
.vacancy-section::after,
.site-footer::before{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 0 58%,rgba(7,155,195,.14) 58% 58.6%,transparent 58.6%),
    linear-gradient(25deg,transparent 0 72%,rgba(255,255,255,.08) 72% 72.3%,transparent 72.3%);
}

.map-shell,
.contact-form,
.imprint-grid>div,
.vacancy-panel{
  border-radius:24px;
  box-shadow:0 22px 60px rgba(17,23,25,.1);
}

.map-topbar{
  background:linear-gradient(90deg,#fff,#f5f7f7);
}

.about{
  overflow:hidden;
}

.about::before{
  content:"";
  position:absolute;
  right:-8vw;
  top:12%;
  width:36vw;
  max-width:520px;
  aspect-ratio:1;
  border:1px solid rgba(7,155,195,.18);
  border-radius:50%;
  pointer-events:none;
}

.about-media>img{
  border-radius:28px;
  box-shadow:0 24px 70px rgba(17,23,25,.14);
}

.about-media>div{
  border-radius:18px;
}

.why-grid{
  border-radius:24px;
  box-shadow:0 18px 50px rgba(17,23,25,.07);
}

.why-grid article{
  overflow:hidden;
}

.why-grid article::after{
  content:"";
  position:absolute;
  right:-36px;
  bottom:-36px;
  width:110px;
  height:110px;
  border:1px solid rgba(7,155,195,.2);
  transform:rotate(18deg);
}

.vacancy-section{
  position:relative;
  overflow:hidden;
  background:#111719;
}

.vacancy-section>*{
  position:relative;
  z-index:1;
}

.job-meta span{
  background:rgba(255,255,255,.06);
}

.contact-section{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,#079bc3,#079bc3),
    var(--blue);
}

.contact-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg,transparent 0 58%,rgba(17,23,25,.13) 58% 58.7%,transparent 58.7%),
    radial-gradient(circle at 88% 20%,rgba(255,255,255,.18),transparent 18rem);
  pointer-events:none;
}

.contact-section>*{
  position:relative;
  z-index:1;
}

.contact-details a{
  border-color:rgba(255,255,255,.24);
}

.contact-form{
  border:1px solid rgba(255,255,255,.65);
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  border-radius:13px;
}

.imprint{
  background:
    linear-gradient(180deg,#f7f8f8,#fff);
}

.site-footer{
  position:relative;
  overflow:hidden;
}

.site-footer>*{
  position:relative;
  z-index:1;
}

@media(max-width:1600px){
  .main-nav{
    background:
      linear-gradient(135deg,rgba(17,23,25,.99),rgba(28,37,41,.99));
  }

  .main-nav::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      linear-gradient(135deg,rgba(7,155,195,.22) 0 1px,transparent 1px 72px),
      radial-gradient(circle at 86% 12%,rgba(7,155,195,.18),transparent 16rem);
    pointer-events:none;
  }

  .main-nav>*{
    position:relative;
    z-index:1;
  }
}

@media(max-width:820px){
  .hero{
    min-height:760px;
  }

  .hero::before{
    background:
      linear-gradient(135deg,rgba(7,155,195,.28) 0 1px,transparent 1px 62px),
      radial-gradient(circle at 18% 28%,rgba(7,155,195,.16),transparent 14rem);
  }

  .hero-copy::before,
  .services::before,
  .ferry-section::before,
  .why-rivado::before,
  .detail-section::before{
    display:none;
  }

  .service-card{
    border-radius:18px;
  }

  .check-list li{
    padding-block:12px;
  }
}

/* Smooth performance pass: elegant, but lightweight */
html{
  scroll-behavior:auto;
}

body{
  background:#f7f8f8;
}

.site-header{
  background:#fff;
  box-shadow:0 8px 26px rgba(17,23,25,.06);
}

.site-header::after{
  opacity:.35;
}

.main-nav{
  font-size:16px;
  font-weight:700;
}

.main-nav>a{
  font-size:16px;
}

@media(min-width:1601px){
  .main-nav{
    gap:clamp(16px,1.7vw,28px);
    font-size:16px;
  }

  .main-nav>a{
    font-size:16px;
  }
}

.hero{
  min-height:700px;
}

.hero::before,
.hero-copy::before,
.services::before,
.ferry-section::before,
.why-rivado::before,
.detail-section::before,
.report-strip::after,
.vacancy-section::after,
.site-footer::before,
.about::before,
.why-grid article::after,
.main-nav::before{
  content:none!important;
  display:none!important;
}

.hero-grid{
  display:none;
}

.hero-background img,
.card-image img,
.detail-media img,
.about-media>img{
  animation:none!important;
  transform:none!important;
  filter:none!important;
  will-change:auto!important;
  backface-visibility:visible;
}

.hero-background::after{
  background:
    linear-gradient(90deg,rgba(17,23,25,.94) 0%,rgba(17,23,25,.86) 42%,rgba(17,23,25,.42) 72%,rgba(17,23,25,.16) 100%),
    linear-gradient(0deg,rgba(17,23,25,.72),transparent 52%);
}

.hero h1{
  text-shadow:none;
}

.hero-service-tags span{
  background:rgba(255,255,255,.08);
}

.button,
.service-card,
.why-grid article,
.scroll-controls button,
.form-submit{
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.button:hover,
.service-card:hover,
.why-grid article:hover,
.form-submit:hover{
  transform:none;
}

.card-image img,
.service-card:hover .card-image img{
  transform:none!important;
}

.service-card{
  border-radius:18px;
  box-shadow:0 10px 26px rgba(17,23,25,.055);
}

.service-card::before,
.card-image::after{
  display:none;
  content:none;
}

.card-icon{
  background:#f2f5f6;
}

.detail-copy{
  background:#fff;
}

.detail-reverse .detail-copy{
  background:#f8f9f9;
}

.check-list li{
  box-shadow:none;
}

.map-shell,
.contact-form,
.imprint-grid>div,
.vacancy-panel,
.about-media>img{
  box-shadow:0 14px 34px rgba(17,23,25,.08);
}

.map-shell iframe{
  min-height:430px;
  background:#eef2f3;
}

.map-shell iframe:not([src]){
  display:none;
}

.map-load{
  border:0;
  border-radius:10px;
  background:var(--blue);
  color:#fff;
  cursor:pointer;
  padding:10px 13px;
  font-size:13px;
  font-weight:800;
}

.map-load.is-loaded{
  background:#111719;
}

.map-fallback{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border-top:1px solid var(--line);
  background:#fff;
  color:var(--text);
  font-size:13px;
}

.map-fallback strong{
  color:var(--ink);
  font:800 14px "Manrope",system-ui,sans-serif;
  white-space:nowrap;
}

.map-fallback span{
  color:var(--muted);
  flex:1;
}

.map-fallback a{
  flex-shrink:0;
  padding:9px 12px;
  border-radius:10px;
  background:#111719;
  color:#fff;
  font-weight:800;
}

.services,
.detail-section,
.report-strip,
.ferry-section,
.about,
.why-rivado,
.vacancy-section,
.contact-section,
.imprint,
.site-footer{
  content-visibility:visible;
  contain-intrinsic-size:none;
}

@media(max-width:1600px){
  .main-nav{
    background:#111719;
  }

  .main-nav>a{
    font-size:clamp(30px,6vw,48px);
    line-height:1.14;
    padding:18px 0;
  }

  .mobile-nav-footer{
    font-size:14px;
  }
}

@media(max-width:820px){
  .hero{
    min-height:720px;
  }

  .hero-copy{
    min-height:610px;
  }

  .map-shell iframe{
    height:430px;
  }

  .map-fallback{
    align-items:flex-start;
    flex-direction:column;
  }

  .map-fallback strong{
    white-space:normal;
  }
}

@media(max-width:560px){
  .main-nav>a{
    font-size:33px;
  }

  .hero{
    min-height:735px;
  }

  .hero h1{
    font-size:45px;
  }

  .hero-copy{
    min-height:625px;
  }

  .map-shell iframe{
    height:390px;
  }
}

/* Keep larger menu readable without desktop overflow */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

.site-header,
.main-nav,
.header-tools{
  min-width:0;
}

.main-nav{
  flex-shrink:1;
}

.header-tools{
  flex-shrink:0;
}

@media(min-width:1601px){
  .site-header{
    padding-inline:clamp(18px,2.2vw,34px);
  }

  .main-nav{
    gap:clamp(10px,1.15vw,18px);
  }

  .language-buttons :is(button,a){
    padding-inline:6px;
  }
}

/* Final mobile menu color fix */
@media(max-width:1600px){
  .main-nav{
    background:#fff!important;
    color:#111719!important;
    box-shadow:0 18px 48px rgba(17,23,25,.12);
  }

  .main-nav>a{
    color:#111719!important;
    border-bottom:1px solid #e2e6e7!important;
  }

  .main-nav>a:hover,
  .main-nav>a:focus-visible{
    color:var(--blue)!important;
  }

  .mobile-nav-footer{
    color:#71797c!important;
    border-top:1px solid #e2e6e7;
  }

  .mobile-nav-footer a{
    color:#111719!important;
  }
}

/* Final visual polish: sharper image system and calmer premium layout */
:root{
  --blue:#079bc3;
  --ink:#111719;
  --text:#2f383b;
  --muted:#6f797d;
  --soft:#f5f7f8;
  --line:#e2e6e7;
  --shadow:0 18px 44px rgba(17,23,25,.09);
}

.hero{
  min-height:690px;
}

.hero-background::after{
  background:
    linear-gradient(90deg,rgba(17,23,25,.95) 0%,rgba(17,23,25,.86) 40%,rgba(17,23,25,.42) 72%,rgba(17,23,25,.12) 100%),
    linear-gradient(0deg,rgba(17,23,25,.68),transparent 58%);
}

.hero-copy{
  width:min(750px,58%);
}

.hero h1{
  font-size:clamp(50px,5.7vw,82px);
}

.hero-intro{
  max-width:590px;
  color:#e6eef0;
}

.hero-service-tags span{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
}

.section{
  padding-block:96px;
}

.section-header{
  grid-template-columns:minmax(0,1fr) minmax(280px,520px);
  gap:clamp(34px,6vw,90px);
}

.section-header>p{
  font-size:16px;
  line-height:1.75;
}

.service-grid{
  gap:26px;
}

.service-card{
  border-radius:24px;
  background:#fff;
  border:1px solid #e6eaeb;
  box-shadow:0 12px 34px rgba(17,23,25,.06);
}

.service-card:hover{
  border-color:rgba(7,155,195,.38);
  box-shadow:0 18px 46px rgba(17,23,25,.10);
}

.card-image{
  height:220px;
  background:#eef2f3;
}

.card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.card-body{
  min-height:270px;
  padding:28px;
}

.card-icon{
  width:42px;
  height:42px;
  margin-bottom:22px;
  background:#eef8fa;
  color:var(--blue);
}

.service-card h3{
  font-size:24px;
  letter-spacing:-.025em;
}

.service-card p{
  color:#667276;
  line-height:1.65;
}

.detail-section{
  min-height:560px;
  background:#fff;
}

.detail-media{
  position:relative;
  overflow:hidden;
  background:#eef2f3;
}

.detail-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(17,23,25,.08),transparent 45%);
  pointer-events:none;
}

.detail-media img{
  min-height:560px;
  height:100%;
  object-fit:cover;
}

.detail-media-contain{
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 42%,rgba(7,155,195,.12),transparent 22rem),
    #111719;
}

.detail-media-contain img{
  width:min(72%,520px);
  height:auto;
  min-height:0;
  max-height:76%;
  object-fit:contain;
  border-radius:22px;
  box-shadow:0 22px 54px rgba(0,0,0,.28);
}

.detail-copy{
  padding-block:72px;
}

.detail-copy>p:not(.eyebrow){
  font-size:16px;
  line-height:1.78;
}

.check-list{
  gap:12px;
}

.check-list li{
  background:#f9fafb;
}

.about{
  grid-template-columns:1fr .95fr;
  gap:clamp(46px,7vw,105px);
  background:#fff;
}

.about-copy>p:not(.eyebrow){
  font-size:16px;
  line-height:1.78;
}

.about-media{
  isolation:isolate;
}

.about-media::before{
  content:"";
  position:absolute;
  inset:22px -18px -18px 22px;
  z-index:-1;
  border-radius:28px;
  background:#e8eef0;
}

.about-media>img{
  height:520px;
  border-radius:28px;
  object-fit:cover;
  object-position:center;
}

.about-media>div{
  left:-26px;
  bottom:30px;
  border-radius:18px;
  box-shadow:0 18px 42px rgba(7,155,195,.24);
}

.why-rivado{
  background:#f5f7f8;
}

.why-grid{
  border-radius:24px;
  gap:12px;
  border:0;
  background:transparent;
  box-shadow:none;
}

.why-grid article{
  border:1px solid var(--line);
  border-radius:20px;
  min-height:245px;
  box-shadow:0 10px 28px rgba(17,23,25,.05);
}

.why-grid h3{
  margin-top:42px;
}

.report-strip,
.vacancy-section,
.site-footer{
  background:#111719;
}

.contact-form,
.map-shell,
.imprint-grid>div{
  border-radius:24px;
}

@media(max-width:1600px){
  .hero-copy{
    width:70%;
  }
}

@media(max-width:820px){
  .hero{
    min-height:700px;
  }

  .hero-copy{
    width:100%;
    min-height:590px;
  }

  .section{
    padding-block:76px;
  }

  .section-header{
    grid-template-columns:1fr;
  }

  .card-image{
    height:260px;
    min-height:0;
  }

  .card-body{
    min-height:auto;
  }

  .detail-media img{
    min-height:390px;
    height:390px;
  }

  .detail-media-contain img{
    width:min(78%,460px);
    height:auto;
    max-height:320px;
  }

  .about{
    gap:42px;
  }

  .about-media{
    margin-left:0;
  }

  .about-media::before{
    inset:16px -10px -10px 16px;
  }

  .about-media>img{
    height:430px;
  }
}

@media(max-width:560px){
  .hero h1{
    font-size:44px;
  }

  .hero-copy{
    min-height:600px;
  }

  .card-image{
    height:230px;
  }

  .about-media>img{
    height:360px;
  }
}

/* Service cards without repeated photography */
.service-card{
  overflow:visible;
}

.service-card .card-body{
  position:relative;
  min-height:315px;
  overflow:hidden;
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(7,155,195,.10),transparent 42%),
    #fff;
}

.service-card .card-body::after{
  content:"";
  position:absolute;
  right:-54px;
  bottom:-54px;
  width:150px;
  height:150px;
  border:1px solid rgba(7,155,195,.20);
  border-radius:36px;
  transform:rotate(16deg);
  pointer-events:none;
}

.service-card .card-number,
.service-card .card-icon,
.service-card h3,
.service-card p,
.service-card a{
  position:relative;
  z-index:1;
}

.service-card .card-icon{
  width:50px;
  height:50px;
}

.service-card a{
  font-size:14px;
}

.photo-credit{
  color:inherit;
  opacity:.72;
}

.photo-credit:hover{
  opacity:1;
  color:#fff;
}

@media(max-width:820px){
  .service-card{
    display:block;
  }

  .service-card .card-body{
    min-height:auto;
  }
}

/* Readability pass: larger, clearer typography across the site */
body{
  color:#253034;
  font-size:17px;
  line-height:1.72;
}

p,
li,
address,
.contact-details strong,
.imprint-grid p,
.map-note{
  font-size:17px;
  line-height:1.72;
}

.eyebrow,
.imprint-grid small,
.form-heading span,
.contact-details small,
.card-number,
.why-grid span{
  font-size:12px;
  letter-spacing:.16em;
}

.main-nav>a{
  font-size:17px;
}

.hero-intro{
  font-size:20px;
  line-height:1.72;
}

.hero-service-tags span{
  font-size:13px;
  padding:9px 13px;
}

.button,
.form-submit{
  font-size:16px;
}

.section-header>p{
  font-size:18px;
  line-height:1.75;
  color:#4f5d62;
}

.service-card .card-body{
  min-height:350px;
  padding:36px;
}

.service-card h3{
  font-size:28px;
  line-height:1.22;
}

.service-card p{
  font-size:17px;
  line-height:1.72;
  color:#445258;
}

.service-card a{
  font-size:16px;
}

.detail-copy>p:not(.eyebrow),
.about-copy>p:not(.eyebrow),
.vacancy-copy>p:not(.eyebrow),
.report-strip>p,
.contact-intro>p:not(.eyebrow){
  font-size:18px;
  line-height:1.78;
}

.check-list li{
  font-size:16px;
  line-height:1.55;
}

.why-grid h3{
  font-size:23px;
}

.why-grid p{
  font-size:16px;
  line-height:1.68;
}

.about-points strong{
  font-size:18px;
}

.about-points span,
.about-facts small{
  font-size:14px;
  line-height:1.55;
}

.about-facts b{
  font-size:31px;
}

.job-meta span,
.vacancy-panel li,
.vacancy-panel>p,
.footer-top address,
.footer-top nav,
.footer-bottom{
  font-size:15px;
  line-height:1.65;
}

.vacancy-panel h3{
  font-size:27px;
}

.contact-form label{
  font-size:15px;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  font-size:16px;
  padding:15px 16px;
}

.form-heading h3{
  font-size:32px;
}

.imprint-grid>div{
  padding:34px;
}

.imprint-grid strong{
  font-size:21px;
}

.imprint-grid p{
  color:#4a575c;
}

.map-fallback{
  font-size:15px;
  line-height:1.6;
}

.map-fallback strong{
  font-size:16px;
}

@media(max-width:820px){
  body{
    font-size:16px;
  }

  p,
  li,
  address,
  .imprint-grid p{
    font-size:16px;
  }

  .hero-intro{
    font-size:18px;
  }

  .main-nav>a{
    font-size:clamp(30px,7vw,44px)!important;
  }

  .service-card .card-body{
    padding:30px;
    min-height:auto;
  }

  .service-card h3{
    font-size:27px;
  }

  .service-card p{
    font-size:16px;
  }

  .section-header>p,
  .detail-copy>p:not(.eyebrow),
  .about-copy>p:not(.eyebrow),
  .contact-intro>p:not(.eyebrow){
    font-size:17px;
  }
}

@media(max-width:560px){
  .service-card .card-body{
    padding:28px 24px;
  }

  .service-card h3{
    font-size:25px;
  }

  .imprint-grid>div,
  .contact-form{
    padding:28px 24px;
  }
}

/* Expanded About Rivado content */
.about-scope{
  margin:34px 0 0;
  padding:30px;
  border:1px solid var(--line);
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(7,155,195,.08),transparent 44%),
    #fff;
  box-shadow:0 14px 34px rgba(17,23,25,.06);
}

.about-scope h3{
  margin:0 0 18px;
  color:var(--ink);
  font:800 25px/1.25 "Manrope",system-ui,sans-serif;
  letter-spacing:-.025em;
}

.about-scope ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}

.about-scope li{
  position:relative;
  padding:14px 16px 14px 42px;
  border:1px solid #e4e9ea;
  border-radius:14px;
  background:#f9fbfb;
  color:#303b3f;
  font-size:16px;
  line-height:1.55;
}

.about-scope li::before{
  content:"✓";
  position:absolute;
  left:16px;
  top:14px;
  color:var(--blue);
  font-weight:900;
}

.about-copy>p:not(.eyebrow){
  max-width:760px;
}

@media(max-width:820px){
  .about-scope{
    padding:24px;
  }

  .about-scope ul{
    grid-template-columns:1fr;
  }
}

/* Mobile service-card polish: make numbers and CTAs readable */
@media(max-width:560px){
  .service-grid{
    gap:28px;
  }

  .service-card{
    border-radius:26px;
  }

  .service-card .card-body{
    padding:34px 26px 30px;
    min-height:420px;
  }

  .service-card .card-number{
    position:static;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:46px;
    height:32px;
    margin:0 0 18px;
    border:1px solid rgba(0,155,195,.32);
    border-radius:999px;
    background:#e9f8fb;
    color:var(--blue);
    font-size:14px;
    font-weight:900;
    letter-spacing:.08em;
  }

  .service-card .card-icon{
    width:56px;
    height:56px;
    margin-bottom:28px;
  }

  .service-card h3{
    font-size:29px;
    line-height:1.16;
  }

  .service-card p{
    margin-bottom:30px;
    font-size:18px;
    line-height:1.72;
  }

  .service-card a{
    align-items:center;
    gap:14px;
    min-width:0;
    padding-top:22px;
    font-size:18px;
    line-height:1.25;
    white-space:normal;
    word-break:normal;
  }

  .service-card a span:first-child,
  .service-card a [data-i18n]{
    min-width:0;
  }

  .service-card a span:last-child{
    flex:0 0 auto;
    font-size:24px;
  }

  .service-card .card-body::after{
    right:-86px;
    bottom:-68px;
    opacity:.7;
  }
}
/* Current fleet photography and terminal identity — September 2026 */
.hero{display:grid;grid-template-columns:48% 52%;min-height:0;background:#10252d;padding:0;}
.hero::before,.hero::after,.hero-grid,.hero-copy::before{display:none;}
.hero-copy{grid-column:1;grid-row:1;width:100%;min-height:600px;padding:64px clamp(28px,4.5vw,76px);}
.hero h1{font-size:clamp(42px,4.6vw,72px);line-height:1.06;}
.hero .eyebrow{color:#78d6e8;font-size:11px;letter-spacing:.13em;}
.hero-intro{font-size:17px;line-height:1.75;}
.hero-background{position:relative;inset:auto;grid-column:2;grid-row:1;z-index:0;min-width:0;background:#1b3038;overflow:hidden;}
.hero-background img{height:100%;width:100%;object-fit:contain;object-position:center;animation:none;filter:none;transform:none;}
.hero-background::after{background:linear-gradient(0deg,rgba(8,24,32,.72),transparent 26%);}
.hero-photo-caption{position:absolute;z-index:1;bottom:26px;left:28px;right:24px;display:flex;gap:14px;align-items:center;color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;}
.hero-photo-caption i{width:22px;height:1px;background:#80d1e3;}
.hero-actions{flex-wrap:wrap;gap:12px;}
.hero .button{min-width:0;padding:16px 20px;}
.hero-facts-wrap{grid-column:1/-1;position:static;margin:0 4.5vw;min-height:92px;}
.hero-facts div{min-width:160px;}
.terminal-strip{display:flex;align-items:center;gap:clamp(28px,5vw,80px);padding:30px 6.5vw;background:#f1f5f6;border-bottom:1px solid #dce5e8;}
.terminal-strip p{max-width:180px;margin:0;font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.8;color:#536b75;}
.terminal-strip>div{display:flex;flex-direction:column;gap:4px;}
.terminal-strip strong{font:800 27px/1.15 "Manrope",sans-serif;letter-spacing:-.03em;color:#163947;}
.terminal-strip span{font-size:12px;color:#536b75;}
.terminal-strip>a{margin-left:auto;font-weight:700;white-space:nowrap;}
.terminal-strip>a span{color:#087a9a;}
#trailer-checks .detail-media img{object-position:center 44%;max-height:740px;}
.thermo-media{margin:0;min-height:580px;background:#cdd1d2;}
.thermo-media img{display:block;width:100%;height:100%;min-height:580px;object-fit:cover;object-position:77% center;filter:none;}
.thermo-media::after{background:linear-gradient(0deg,rgba(9,24,31,.9),transparent 38%);}
.thermo-media figcaption{position:absolute;z-index:1;left:36px;bottom:32px;right:28px;display:flex;flex-direction:column;gap:8px;color:#fff;}
.thermo-media figcaption>span{font-size:10px;font-weight:800;letter-spacing:.18em;color:#b8eaf4;}
.thermo-media strong{font:700 clamp(20px,2vw,29px)/1.3 "Manrope",sans-serif;}
.thermo-media a{font-size:12px;color:#e2edf0;text-decoration:underline;text-underline-offset:4px;}
.about-media>img{height:680px;object-position:center 33%;filter:none;}
@media(max-width:1100px){
 .hero-copy{padding:48px 30px;}
 .hero h1{font-size:48px;}
 .hero-actions{align-items:stretch;flex-direction:column;}
 .terminal-strip{gap:30px;padding-inline:30px;}
}
@media(max-width:900px){
 .hero{grid-template-columns:1fr;}
 .hero-copy{grid-column:1;grid-row:1;min-height:0;padding:54px 28px 42px;}
 .hero h1{font-size:clamp(42px,7.4vw,66px);max-width:680px;}
 .hero-intro{max-width:650px;}
 .hero-background{grid-column:1;grid-row:2;height:auto;aspect-ratio:4/3;}
 .hero-background img{object-position:center;}
 .hero-actions{flex-direction:row;display:flex;}
 .hero .button{width:auto;}
 .hero-facts-wrap{grid-row:3;margin:0 28px;}
 .hero-facts div{min-width:0;}
 .terminal-strip{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
 .terminal-strip p{grid-column:1/-1;max-width:none;}
 .terminal-strip>a{grid-column:1/-1;margin:0;}
 .thermo-media,.thermo-media img{min-height:480px;}
 .about-media>img{height:620px;}
}
@media(max-width:560px){
 .hero-copy{padding:42px 24px 34px;}
 .hero h1{font-size:43px;}
 .hero-intro{font-size:16px;}
 .hero-actions{display:grid;grid-template-columns:1fr;}
 .hero .button{width:100%;}
 .hero-service-tags span{font-size:10px;}
 .hero-photo-caption{font-size:8px;left:18px;bottom:18px;gap:10px;}
 .terminal-strip{padding:26px 24px;}
 .terminal-strip strong{font-size:24px;}
 #trailer-checks .detail-media img{height:470px;min-height:0;}
 .thermo-media,.thermo-media img{height:460px;min-height:0;}
 .thermo-media figcaption{left:24px;bottom:26px;}
 .about-media>img{height:500px;}
}
@media(prefers-reduced-motion:reduce){.hero-ferry-link b{animation:none;}}
/* Sustainable fleetcare: navy, blue and grey from the supplied direction. */
:root{--ink:#092747;--blue:#216b9e;--cyan:#3588b6;--muted:#52677b;}
.hero{grid-template-columns:54% 46%;background:#092747;}
.hero-background{grid-column:1;background:#102c42;}
.hero-copy{grid-column:2;padding:60px clamp(28px,4vw,64px);}
.hero h1{font-size:clamp(48px,5.2vw,80px);letter-spacing:-.045em;}
.hero .eyebrow{color:#9dccE7;}
.hero-promise{font:700 clamp(17px,1.6vw,23px)/1.5 "Manrope",sans-serif;color:#fff;margin:0 0 20px;}
.hero-intro{font-size:16px;}
.hero-photo-caption{color:#fff;}
.hero .button-primary,.button-primary,.form-submit{background:#216b9e;}
.hero .button-primary:hover,.button-primary:hover{background:#144e75;}
.hero-facts-wrap{margin:0;padding:0 6vw;background:#fff;border-top:0;color:var(--ink);}
.hero-facts{gap:52px;}
.hero-facts dt{color:var(--ink);}
.hero-facts dd{color:#52677b;}
.hero-ferry-link{color:var(--ink);border-color:#dce5e8;}
.hero-ferry-link b{color:#fff;background:#216b9e;}
.hero-service-tags span{background:transparent;border-color:#527283;color:#e2efea;}
.terminal-strip{background:#f3f5f7;}
.terminal-strip>a span{color:#1c608f;}
.thermo-media::after{background:none;}
.sustainability{display:grid;grid-template-columns:44% 56%;background:#092747;color:#fff;}
.sustainability-copy{padding:64px clamp(26px,4.5vw,72px);align-self:center;}
.eco-mark{display:block;width:48px;height:48px;color:#9dcce7;margin-bottom:26px;}
.eco-mark svg{width:100%;height:100%;stroke-width:2;}
.sustainability .eyebrow{color:#9dcce7;}
.sustainability h2{font:800 clamp(32px,3.2vw,49px)/1.12 "Manrope",sans-serif;letter-spacing:-.04em;margin:18px 0 24px;color:#fff;}
.sustainability-copy>p:not(.eyebrow){font-size:17px;line-height:1.8;color:#d7e3e9;}
.sustainability-points{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0;}
.sustainability-points>div{border-top:1px solid #496577;padding-top:18px;}
.sustainability-points strong{display:block;font-size:18px;margin-bottom:8px;color:#fff;}
.sustainability-points span{font-size:13px;color:#c8dae3;}
.sustainability-media{min-width:0;display:flex;align-items:center;background:#0b2137;}
.sustainability-media img{display:block;width:100%;height:auto;}
.sustainability .button{padding:15px 23px;border-radius:999px;}
.button-primary{border-radius:999px;}
@media(max-width:1100px){.hero-copy{padding:40px 28px;}.hero h1{font-size:52px;}.hero-facts{gap:22px;}}
@media(max-width:900px){
 .hero{grid-template-columns:1fr;}
 .hero-copy{grid-column:1;grid-row:1;padding:44px 28px;}
 .hero-background{grid-column:1;grid-row:2;}
 .hero h1{font-size:clamp(48px,8vw,72px);}
 .hero-facts-wrap{padding:0 28px;}
 .sustainability{grid-template-columns:1fr;}
 .sustainability-copy{padding:52px 28px;}
 .sustainability-media{order:2;}
}
@media(max-width:560px){
 .hero-copy{padding:38px 24px;}
 .hero h1{font-size:49px;}
 .hero-promise{font-size:17px;}
 .hero-facts{gap:8px;}
 .hero-facts-wrap{padding:0 24px;}
 .sustainability-copy{padding:44px 24px;}
 .sustainability-points{gap:20px;}
}
/* Final campaign image presentation: full-width hero, readable copy, mobile framing. */
.hero{display:block;position:relative;background:#092747;}
.hero-background{position:absolute;inset:0;z-index:-2;height:100%;aspect-ratio:auto;background:#092747;}
.hero-background img{width:100%;height:100%;object-fit:cover;object-position:38% center;}
.hero-background::after{background:linear-gradient(90deg,rgba(6,28,49,0) 25%,rgba(6,28,49,.12) 48%,rgba(6,28,49,.85) 75%,rgba(6,28,49,.94)),linear-gradient(0deg,rgba(6,28,49,.3),transparent 30%);}
.hero-copy{position:relative;width:43%;margin-left:57%;min-height:650px;padding:64px clamp(24px,3.3vw,60px) 64px 20px;}
.hero h1{font-size:clamp(50px,5vw,78px);}
.hero-intro{max-width:500px;}
.hero-facts-wrap{position:relative;z-index:1;}
#trailer-checks .detail-media{display:flex;align-items:center;background:#e8eef1;}
#trailer-checks .detail-media img{height:auto;min-height:0;max-height:none;width:100%;object-fit:contain;}
.about-media>img{height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:18px;}
.sustainability-media img{height:auto;object-fit:contain;}
@media(max-width:1100px) and (min-width:901px){.hero-copy{width:45%;margin-left:55%;padding-top:42px;padding-bottom:42px;}.hero h1{font-size:50px;}.hero-promise{font-size:17px;}.hero-service-tags{gap:6px;}.hero-service-tags span{font-size:10px;}}
@media(max-width:900px){
 .hero{display:flex;flex-direction:column;}
 .hero-copy{order:2;width:100%;margin:0;min-height:0;padding:38px 28px 44px;}
 .hero-background{order:1;position:relative;inset:auto;z-index:0;height:auto;aspect-ratio:1672/941;width:100%;}
 .hero-background img{height:100%;object-fit:cover;object-position:center;}
 .hero-background::after{background:linear-gradient(0deg,rgba(9,39,71,.35),transparent 35%);}
 .hero-facts-wrap{order:3;width:100%;}
 .hero h1{font-size:clamp(46px,8vw,66px);margin-top:14px;}
 .hero-promise{font-size:20px;}
 #trailer-checks .detail-media img{height:auto;min-height:0;}
 .about-media>img{height:auto;}
}
@media(max-width:560px){.hero-copy{padding:32px 24px 38px;}.hero h1{font-size:49px;}.hero-promise{font-size:17px;}.hero-facts{gap:6px;}.about-media>div{position:relative;left:auto;bottom:auto;margin-top:16px;max-width:none;}}
/* Keep the full vehicle visible and the ferry discernible behind the copy. */
.hero-background{bottom:98px;height:auto;}
.hero-background img{object-position:left center;}
.hero-background::after{background:linear-gradient(90deg,transparent 30%,rgba(6,28,49,.08) 46%,rgba(6,28,49,.68) 68%,rgba(6,28,49,.84)),linear-gradient(0deg,rgba(6,28,49,.24),transparent 25%);}
@media(min-width:901px) and (max-width:1100px){.hero-service-tags{display:none;}.hero-copy{min-height:610px;}.hero h1{font-size:48px;}}
@media(max-width:900px){.hero-background{bottom:auto;height:auto;}.hero-background img{object-position:center;}.hero-background::after{background:none;}}
.hero-facts-wrap{left:auto;right:auto;bottom:auto;width:100%;}

/* Service cards: keep long translated headings inside their column. */
.service-grid{align-items:stretch;}
.service-card{display:flex;min-width:0;}
.service-card .card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  min-height:0;
  padding:32px;
  background:linear-gradient(135deg,rgba(17,132,62,.055),transparent 48%),#fff;
}
.service-card .card-number{
  position:absolute;
  top:30px;
  right:28px;
  width:auto;
  height:auto;
  margin:0;
  padding:0;
  border:0;
  background:none;
  color:#567568;
  font-size:12px;
  letter-spacing:.12em;
}
.service-card .card-icon{flex-shrink:0;margin:0 0 28px;}
.service-card h3{
  min-width:0;
  min-height:2.5em;
  font-size:clamp(22px,1.9vw,28px);
  line-height:1.25;
  overflow-wrap:anywhere;
  hyphens:auto;
}
.service-card p{margin:18px 0 28px;overflow-wrap:anywhere;}
.service-card a{margin-top:auto;align-items:center;gap:16px;padding-top:22px;}
.service-card a span:last-child{flex-shrink:0;}
.service-card .card-body::after{border-color:rgba(17,132,62,.12);}
@media(max-width:820px){
  .service-card .card-body{padding:30px;}
  .service-card h3{min-height:0;font-size:27px;}
}
@media(max-width:560px){
  .service-card .card-body{padding:28px 24px;}
  .service-card h3{font-size:26px;}
  .service-card p{font-size:17px;}
  .service-card a{font-size:16px;}
}

/* Practical temperature-inspection scene, centred on inspector and controller. */
.thermo-media img{object-position:62% center;}
@media(max-width:820px){.thermo-media{min-height:0;height:auto;aspect-ratio:3/2;}.thermo-media img{height:100%;min-height:0;object-position:center;}}

/* Modern close-up keeps both the inspector and controller in view. */
.thermo-media img{object-position:48% center;}

/* Compact, image-free company overview. */
.about{
  grid-template-columns:1.1fr 1fr;
  align-items:start;
  gap:28px clamp(28px,4vw,64px);
  padding-block:64px;
}
.about-copy,.about-summary{min-width:0;}
.about h2{font-size:clamp(32px,3.2vw,48px);margin:14px 0 20px;}
.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.7;margin:12px 0;max-width:none;}
.about-summary .about-facts{margin:0 0 20px;}
.about-summary .about-scope{margin:0;padding:26px;box-shadow:none;}
.about-summary .about-scope h3{font-size:23px;}
.about-summary .about-scope ul{grid-template-columns:1fr;gap:10px;}
.about-summary .about-scope li{font-size:15px;padding-block:12px;}
.about>.about-points{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:24px;}
@media(max-width:820px){
  .about{grid-template-columns:1fr;gap:24px;padding-block:44px;}
  .about>.about-points{grid-template-columns:1fr 1fr;}
}
@media(max-width:480px){
  .about-summary .about-scope{padding:22px;}
  .about>.about-points{grid-template-columns:1fr;gap:16px;}
}
/* Keep spacing controlled as the browser window grows. */
.section,.contact-section,.vacancy-section,.report-strip{padding-block:clamp(40px,4vw,64px);}
.section{padding-inline:max(24px,calc((100% - 1560px)/2));}
.section-header{gap:28px;}
.service-grid{margin-top:32px;}
.detail-section{min-height:0;}
.detail-copy{padding:clamp(36px,4vw,60px) clamp(28px,3.5vw,64px);}
.sustainability-copy{padding:44px clamp(28px,3.5vw,64px);}
.about{gap:24px clamp(28px,3vw,48px);}
@media(min-width:901px){
 .hero-copy{min-height:580px;padding-top:44px;padding-bottom:44px;}
 .hero h1{font-size:clamp(48px,4.4vw,72px);}
 .hero-facts-wrap{min-height:84px;}
 .hero-facts div{padding-block:18px;}
 .hero-background{bottom:84px;}
 .terminal-strip{padding-block:22px;}
}
@media(min-width:1800px){
 .hero-copy{width:40%;margin-left:60%;padding-right:max(40px,calc((100vw - 1800px)/2));}
 .detail-copy>p:not(.eyebrow){max-width:680px;}
 .about{grid-template-columns:1fr 1fr;}
}
@media(max-width:820px){
 .section,.contact-section,.vacancy-section,.report-strip{padding-block:40px;}
 .detail-copy{padding:36px 24px;}
 .sustainability-copy{padding:36px 24px;}
}

.language-buttons a{display:inline-flex;align-items:center;justify-content:center;gap:4px;}

.terminal-strip{flex-wrap:wrap;}.terminal-strip strong{font-size:clamp(20px,2vw,27px);overflow-wrap:anywhere;}

.site-header{gap:20px;}.main-nav{min-width:0;}.header-tools{flex-shrink:0;}

/* Scale the complete brand name to the available copy width on every screen. */
.hero-copy{container-type:inline-size;}
.hero #hero-title{
  font-size:clamp(20px,3vw,52px);
  font-size:clamp(16px,8cqi,52px);
  line-height:1.15;
  letter-spacing:-.035em;
  white-space:nowrap;
  margin-bottom:20px;
}
.hero-promise{max-width:34ch;text-wrap:balance;}

/* Clear company heading and evenly aligned terminal locations. */
.imprint>header{display:block;margin-bottom:28px;}
.imprint>header h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.2;overflow-wrap:break-word;}
.terminal-strip{display:grid;grid-template-columns:minmax(140px,.8fr) repeat(2,minmax(0,1fr));gap:24px 40px;align-items:start;}
.terminal-strip>div{min-width:0;gap:8px;}
.terminal-strip strong{font-size:clamp(20px,2vw,27px);line-height:1.3;overflow-wrap:normal;}
.terminal-strip>a{grid-column:2/-1;margin:0;justify-self:start;white-space:normal;}
@media(max-width:900px){
  .terminal-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .terminal-strip>p,.terminal-strip>a{grid-column:1/-1;}
}
@media(max-width:600px){
  .terminal-strip{grid-template-columns:minmax(0,1fr);gap:0;padding:28px 24px;}
  .terminal-strip>p{margin-bottom:8px;}
  .terminal-strip>div{padding:20px 0;border-bottom:1px solid #dce5e0;}
  .terminal-strip strong{font-size:22px;}
  .terminal-strip>div span{font-size:14px;}
  .terminal-strip>a{margin-top:22px;}
}

/* Prevent intrinsic image widths from expanding the detail grid. */
.detail-section{grid-template-columns:repeat(2,minmax(0,1fr));}
.detail-section>*{min-width:0;}
.detail-media{margin:0;}
.thermo-media{min-height:420px;}
.thermo-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:48% center;
}

/* The campaign photo belongs in the hero only. */
#trailer-checks{grid-template-columns:minmax(0,1fr);}
#trailer-checks .detail-copy{width:100%;max-width:1440px;margin-inline:auto;}
@media(min-width:821px){
  #trailer-checks .detail-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;align-content:center;}
  #trailer-checks .eyebrow{grid-column:1;grid-row:1;}
  #trailer-checks h2{grid-column:1;grid-row:2/4;margin-bottom:0;}
  #trailer-checks .detail-copy>p:not(.eyebrow){grid-column:2;grid-row:2;}
  #trailer-checks .check-list{grid-column:2;grid-row:3;margin-top:16px;}
}
@media(max-width:820px){
  .detail-section{grid-template-columns:minmax(0,1fr);}
  .thermo-media{min-height:0;height:auto;aspect-ratio:3/2;}
}

/* Clear trust, service scope and operational proof */
.proof-block{padding-top:42px;padding-bottom:42px;background:#0b2938;color:#fff}.proof-block .eyebrow{color:#64d1e9}.proof-terminals{font:700 clamp(20px,2.6vw,32px)/1.4 Manrope;margin:12px 0 30px}.proof-terminals span{color:#60838e;margin:0 14px}.proof-grid,.performance-grid,.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.proof-grid strong{font:800 19px Manrope;color:#fff}.proof-grid p{font-size:13px;color:#bbced6;margin:8px 0 0}.fleetcare-product{background:#f3f6f7}.fleetcare-scope{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:36px 0 54px}.fleetcare-scope li{padding:20px;border:1px solid #dbe5e9;border-radius:12px;background:#fff;font-weight:700;font-size:14px}.fleetcare-scope li::before{content:'✓';display:block;color:var(--blue);margin-bottom:12px;font-size:20px}.process-heading{font:800 26px Manrope;margin-bottom:28px}.process-grid{list-style:none;padding:0;margin:0;counter-reset:none}.process-grid li{position:relative;border-top:2px solid var(--blue);padding:24px 12px 0 0}.process-grid li:not(:last-child)::after{content:'→';position:absolute;right:0;top:22px;color:var(--blue)}.process-grid span{font:800 28px Manrope;color:var(--blue)}.process-grid h3{font:800 18px Manrope;margin:16px 0 10px}.process-grid p{color:var(--muted);font-size:14px;margin:0}.customers h2,.performance h2,.field-photos h2,.faq-section h2{font:800 clamp(28px,3.5vw,46px)/1.15 Manrope;letter-spacing:-.035em;margin:14px 0 30px}.customers{padding-top:52px;padding-bottom:52px}.customer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.customer-logo{min-height:110px;display:flex;align-items:center;justify-content:center;padding:22px;border:1px solid var(--line);border-radius:12px;text-align:center}.customer-logo img{width:100%;max-width:180px;height:64px;object-fit:contain}.performance{background:#eef4f6;padding-top:44px;padding-bottom:44px}.performance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.performance-grid strong{display:block;font:800 46px Manrope;color:var(--blue)}.performance-grid span{display:block;font-weight:700;margin:8px 0}.performance-grid small{color:var(--muted);font-size:11px}.faq-section{background:#f5f7f8}.faq-list{max-width:960px}.faq-list details{border-bottom:1px solid #d8e2e6;padding:20px 0}.faq-list summary{cursor:pointer;font:700 17px/1.5 Manrope;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';color:var(--blue);font-size:24px}.faq-list details[open] summary::after{content:'−'}.faq-list p{max-width:800px;color:var(--muted);font-size:15px;margin:14px 0 0}.faq-list summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}.field-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.field-photo-grid figure{margin:0}.field-photo-grid img,.photo-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eaf0f3;border:1px dashed #9bb5c0;padding:24px;text-align:center;color:#58727d}.photo-placeholder span{font-size:36px;color:var(--blue)}.photo-placeholder p{font-size:13px;max-width:200px}.field-photo-grid figcaption{margin-top:14px;font-weight:700}
@media(max-width:900px){.proof-grid,.fleetcare-scope,.process-grid,.customer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.proof-block{padding-block:32px}.proof-grid{gap:24px 16px}.proof-grid strong{font-size:15px}.proof-terminals span{display:none}.proof-terminals{max-width:290px;font-size:21px}.fleetcare-scope,.process-grid,.performance-grid,.field-photo-grid{grid-template-columns:1fr}.customer-logo{min-height:88px;padding:15px}.customer-logo img{height:48px}.process-grid{gap:30px}.process-grid li:not(:last-child)::after{content:'↓'}.fleetcare-product .section-header h2{font-size:34px}.faq-list summary{font-size:15px}}

/* Consent choices remain equally accessible. */
.consent-panel{position:fixed;inset:auto 20px 20px;z-index:1000;display:flex;align-items:center;gap:32px;max-width:1200px;margin:auto;padding:26px 30px;border:1px solid #cbd8de;border-radius:16px;background:#fff;color:#163244;box-shadow:0 12px 70px #09273735;max-height:calc(100dvh - 40px);overflow:auto}.consent-panel[hidden]{display:none}.consent-copy{flex:1;min-width:0}.consent-copy h2{font:800 21px/1.3 Manrope;margin:0 0 10px}.consent-copy p{font-size:13px;line-height:1.65;margin:0 0 10px;color:#516570}.consent-actions{display:flex;gap:10px;flex-shrink:0}.consent-panel button{border:1px solid #163c50;border-radius:8px;padding:12px 18px;background:#163c50;color:#fff;cursor:pointer;font:700 13px/1.4 'DM Sans',sans-serif}.consent-actions button{min-width:145px}.consent-panel :is(button,a,summary,input):focus-visible,.consent-settings:focus-visible{outline:3px solid #079bc3;outline-offset:3px}.consent-details summary{cursor:pointer;font-size:13px;font-weight:700;color:#163c50}.consent-details>div{padding:16px 0 0}.consent-details strong,.consent-details label{font-size:13px;display:block;margin:0 0 8px}.consent-details label{display:flex;align-items:center;gap:8px}.consent-details input{width:18px;height:18px;accent-color:#163c50}.consent-details a{font-size:12px;text-decoration:underline;display:block;margin-bottom:14px}.consent-notice{font-weight:700;color:#163c50!important}.consent-settings{border:0;background:transparent;color:inherit;padding:0;cursor:pointer;font:inherit;text-decoration:underline}.consent-settings:hover{color:#fff}
@media(max-width:820px){.consent-panel{align-items:stretch;flex-direction:column;gap:16px;inset:auto 12px 12px;padding:22px}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{min-width:0;padding:12px 8px}.consent-copy h2{font-size:19px}}

.design-credit{margin:14px 0 0;color:#9bb0b9;font-size:10px;line-height:1.6}.design-credit a{text-decoration:none}.design-credit a:hover{text-decoration:underline;color:#fff}.design-credit a:focus-visible{outline:2px solid #64d1e9;outline-offset:3px}

/* A single terminal and trust block directly below the hero. */
.proof-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:14px 0 32px}.proof-heading .proof-terminals{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;max-width:none;margin:0}.proof-heading .proof-terminals span{display:block;color:#fff;margin:0}.proof-heading .proof-terminals span+span{padding-left:28px;border-left:2px solid #60838e}.proof-contact{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;color:#d2edf3;font-size:13px;font-weight:700;padding:11px 15px;border:1px solid #ffffff40;border-radius:8px}.proof-contact:hover{color:#fff;border-color:#64d1e9;background:#ffffff08}.proof-contact:focus-visible{outline:2px solid #64d1e9;outline-offset:4px}
@media(max-width:1050px){.proof-heading{align-items:flex-start;flex-direction:column;gap:20px}.proof-heading .proof-terminals{font-size:26px}}
@media(max-width:560px){.proof-heading .proof-terminals{display:grid;gap:10px;font-size:21px}.proof-heading .proof-terminals span+span{padding:0;border:0}.proof-heading{margin-bottom:28px}.proof-grid{gap:26px 18px}}

/* Official company names with separate terminal locations. */
.proof-heading .proof-terminals{gap:18px 36px}.proof-terminals>div{display:flex;flex-direction:column;gap:8px}.proof-terminals>div+div{padding-left:36px;border-left:1px solid #60838e}.proof-terminals strong{font:700 clamp(22px,2.5vw,32px)/1.3 Manrope;color:#fff}.proof-terminals small{font:500 14px/1.5 'DM Sans',sans-serif;color:#bbced6}
@media(max-width:560px){.proof-heading .proof-terminals{gap:22px}.proof-terminals>div+div{padding-left:0;border-left:0}.proof-terminals strong{font-size:23px}}

/* Focused navigation with a grouped company menu. */
.site-header{gap:24px}.main-nav{display:flex;align-items:center;gap:30px;overflow:visible}.main-nav::before{display:none}.main-nav>a,.nav-company>summary{font-size:14px;font-weight:700;white-space:nowrap}.nav-company{position:relative}.nav-company>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:28px 0}.nav-company>summary::-webkit-details-marker{display:none}.nav-company>summary::after{content:'⌄';font-size:16px;color:#547080}.nav-company[open]>summary::after{transform:rotate(180deg)}.nav-company-links{position:absolute;top:100%;left:-20px;width:240px;padding:10px;background:#fff;border:1px solid #e0e7e9;border-radius:12px;box-shadow:0 16px 40px #16324420}.nav-company-links a{display:block;padding:13px 12px;border-radius:7px;font-size:13px;line-height:1.4}.nav-company-links a:hover{background:#edf1f5;color:#1c608f}.main-nav>a[href="#contact"]{padding:11px 18px;border:1px solid #dce2e8;border-radius:9px}.main-nav>a[href="#contact"]::after{display:none}.nav-company summary:focus-visible{outline:2px solid #1c608f;outline-offset:5px}
@media(min-width:1101px){.main-nav{position:static;visibility:visible;opacity:1;transform:none;flex-direction:row;padding:0;background:transparent;border:0;box-shadow:none}.menu-toggle{display:none}.mobile-nav-footer{display:none}}
@media(max-width:1100px){html{scroll-padding-top:76px}.site-header{height:76px;padding:0 22px;gap:16px}.site-header .logo{height:60px}.site-header .logo img{width:116px;height:56px}.logo>span{display:none}.header-tools{margin-left:auto}.header-cta{display:none}.menu-toggle{display:block;order:3;width:44px;height:44px;border:1px solid #dce2e8;border-radius:10px;background:#f4f6f8;padding:11px}.menu-toggle b{display:none}.menu-toggle span{background:#163244}.main-nav{position:fixed;inset:76px 0 auto;display:flex;visibility:hidden;opacity:0;transform:translateY(-8px);flex-direction:column;align-items:stretch;gap:6px;padding:22px;max-height:calc(100dvh - 76px);overflow-y:auto;background:#fff;border-bottom:1px solid #dce2e8;box-shadow:0 20px 35px #16324415}.main-nav.open{visibility:visible;opacity:1;transform:none}.main-nav>a{margin:0;padding:16px 18px;font-size:17px;border:0;border-radius:10px;background:#f2f4f6;line-height:1.5}.main-nav>a::after{display:none}.main-nav>a[href="#contact"]{margin-top:6px;background:#1c608f;border:0;color:#fff;padding:16px 18px}.nav-company>summary{padding:16px 18px;font-size:17px;background:#f2f4f6;border-radius:10px;justify-content:space-between}.nav-company-links{position:static;width:auto;padding:6px 8px;border:0;box-shadow:none;background:#f7f8fa;margin-top:4px}.nav-company-links a{padding:13px 14px;border:0;font-size:14px}.mobile-nav-footer{display:flex;flex-direction:column;gap:10px;padding:22px 4px 8px;margin-top:12px;border-top:1px solid #e1e5ea}.mobile-nav-footer>span{font-size:12px;color:#64777c}.mobile-nav-footer a{padding:0;border:0;color:#163244;font-size:18px;font-weight:700}.language-buttons :is(button,a){height:32px;padding:0 7px}.language-buttons :is(button,a) b{display:none}}
@media(max-width:380px){.site-header{padding-inline:16px;gap:10px}.site-header .logo img{width:104px}.language-buttons :is(button,a){padding-inline:5px}}

@media(max-width:1100px){.main-nav{overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#9aada3 transparent}.main-nav.open{pointer-events:auto}}

@media(min-width:1101px){.site-header .main-nav{height:auto!important;min-height:0!important;max-height:none!important;width:auto!important;flex:1;align-self:center;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important}.site-header .main-nav>a{font-size:14px!important;border-bottom:0!important;line-height:1.5!important}.site-header .header-cta{display:none}}
@media(max-width:1100px){.site-header .main-nav{height:auto!important;min-height:0!important;max-height:calc(100dvh - 76px)!important;padding:22px!important}.site-header .main-nav>a{font-size:17px!important;line-height:1.5!important;border-bottom:0!important}.site-header .main-nav>a[href="#contact"]{color:#fff!important}.site-header .main-nav .nav-company-links a{font-size:14px!important;line-height:1.5!important}.site-header .main-nav .mobile-nav-footer a{font-size:18px!important;line-height:1.5!important}}

/* Let the hero adapt before its text column becomes too narrow. */
.hero-actions{flex-wrap:wrap}.hero .hero-actions .button{min-width:0;max-width:100%}
@media(max-width:1100px){.hero{display:flex;flex-direction:column;min-height:0;overflow:hidden}.hero-background{order:1;position:relative;inset:auto;z-index:0;width:100%;height:auto;aspect-ratio:1672/941}.hero-background img{width:100%;height:100%;object-fit:contain;object-position:center;animation:none}.hero-background::after{background:none}.hero-copy{order:2;width:100%;margin:0;min-height:0;padding:36px clamp(24px,5vw,52px) 40px;container-type:normal}.hero h1{font-size:clamp(32px,5.8vw,58px);line-height:1.08;overflow-wrap:normal}.hero-intro{max-width:680px}.hero-promise{font-size:clamp(17px,2.4vw,22px)}.hero-service-tags{display:flex;flex-wrap:wrap}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero .hero-actions .button{flex:1 1 220px;width:auto}.hero-facts-wrap{order:3;position:relative;inset:auto;width:100%;margin:0;padding-inline:clamp(24px,5vw,52px);min-height:0}.hero-grid{display:none}}
@media(max-width:560px){.hero-actions{display:grid;grid-template-columns:minmax(0,1fr)}.hero .hero-actions .button{width:100%}.hero h1{font-size:clamp(30px,7.6vw,42px)}}

/* Readable service labels over the restored hero photograph. */
.hero .hero-service-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hero .hero-service-tags span{padding:11px 16px;background:#08263f;color:#fff;border:1px solid #8eabbc;border-radius:10px;font-size:13px;font-weight:700;line-height:1.5;box-shadow:0 3px 12px #00172524;text-shadow:none}
@media(max-width:560px){.hero .hero-service-tags{gap:8px}.hero .hero-service-tags span{padding:10px 13px;font-size:12px}}

/* One compact proof section, without repeating hero statistics. */
.hero-background{bottom:0}.proof-block{padding:36px clamp(24px,6.5vw,104px) 40px}.proof-heading{justify-content:flex-start;gap:36px;margin-bottom:26px;flex-wrap:wrap}.proof-heading .proof-terminals{gap:24px 36px}.proof-terminals strong{font-size:clamp(22px,2vw,30px)}.proof-contact{margin-left:auto}.proof-grid{gap:0;border-top:1px solid #ffffff25;padding-top:24px}.proof-grid>div{padding:0 24px;border-left:1px solid #ffffff25}.proof-grid>div:first-child{padding-left:0;border:0}.proof-grid strong{font-size:17px}.proof-grid p{max-width:260px;line-height:1.6}.hero-ferry-link{display:none}
@media(max-width:1050px){.proof-heading{flex-direction:row;align-items:center}.proof-contact{margin-left:0}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.proof-grid>div{padding:0;border:0}}
@media(max-width:560px){.proof-block{padding:30px 24px}.proof-heading{align-items:flex-start;gap:22px}.proof-grid{gap:24px 16px}.proof-grid strong{font-size:15px}.proof-grid p{font-size:12px}.proof-contact{font-size:12px}}

.proof-heading .proof-contact{margin-left:0}

/* Rivado identity: blue accents, light grey surfaces. */
.proof-block{background:#edf1f4;color:#173b58}.proof-block .eyebrow{color:#216b9e}.proof-terminals strong{color:#173b58}.proof-terminals small,.proof-grid p{color:#526779}.proof-terminals>div+div,.proof-grid,.proof-grid>div{border-color:#ccd7df}.proof-grid strong{color:#173b58}.proof-contact{color:#216b9e;border-color:#b9cbd8;background:#fff}.proof-contact:hover{color:#174d72;background:#e3ebf1;border-color:#216b9e}
.sustainability,.vacancy-section,.report-strip{background:#edf1f4;color:#173b58}.sustainability h2,.vacancy-copy h2,.report-strip h2,.vacancy-panel h3{color:#173b58}.sustainability-copy>p:not(.eyebrow),.vacancy-copy>p:not(.eyebrow),.report-strip>p{color:#526779}.sustainability .eyebrow,.eco-mark{color:#216b9e}.sustainability-points strong{color:#173b58}.sustainability-points span{color:#526779}.vacancy-panel{background:#fff;border-color:#d4dde5}.vacancy-panel li,.vacancy-panel>p span{color:#526779}.vacancy-panel>p{border-color:#d4dde5}.vacancy-panel>p a{color:#216b9e}.job-meta span{color:#173b58;border-color:#c5d2dc}.report-steps b{color:#216b9e;border-color:#b5c9d7}.report-steps small{color:#173b58}.report-steps i{background:#c5d2dc}
.hero .hero-service-tags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hero .hero-service-tags span{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 10px;min-width:0;min-height:64px;border-radius:10px;background:#eef3f7;color:#173b58;border:1px solid #c1d1dd;font-size:12px;line-height:1.45;box-shadow:none;overflow-wrap:anywhere}
@media(max-width:1100px){.hero,.hero-copy{background:#edf1f4;color:#173b58}.hero h1,.hero-promise{color:#173b58}.hero .eyebrow{color:#216b9e}.hero-intro{color:#526779}.hero .button-quiet{background:#fff;color:#216b9e;border-color:#adc3d2}.hero .hero-service-tags{gap:8px}.hero .hero-service-tags span{background:#fff;color:#173b58}}
@media(max-width:560px){.hero .hero-service-tags{gap:6px}.hero .hero-service-tags span{padding:10px 6px;font-size:11px;min-height:76px}}

/* Compact process cards: numbers identify steps, without dropdown-like arrows. */
.process-grid{gap:16px}.process-grid li{padding:22px;border:1px solid #d7e0e7;border-radius:12px;background:#fff}.process-grid li:not(:last-child)::after{display:none}.process-grid span{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#e9f1f7;font:800 20px Manrope;color:#216b9e}.process-grid h3{margin:18px 0 8px;font-size:17px}.process-grid p{line-height:1.6}.process-heading{margin-bottom:22px}
@media(max-width:560px){.process-grid{display:grid;grid-template-columns:1fr;gap:12px}.process-grid li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px;row-gap:5px;padding:18px}.process-grid span{grid-column:1;grid-row:1/3;width:40px;height:40px;font-size:18px}.process-grid h3{grid-column:2;grid-row:1;margin:0;font-size:16px;line-height:1.5}.process-grid p{grid-column:2;grid-row:2;margin:0;font-size:13px;line-height:1.6}.process-heading{font-size:23px;line-height:1.35}}

/* Broader light-grey palette, blue reserved for accents. */
:root{--soft:#f6f7f8;--pale:#f0f2f4;--line:#dde2e6;--muted:#566775}
body,.services,.customers,.field-photos{background:#fafbfc}.fleetcare-product,.faq-section,.why-rivado,.imprint{background:#f4f5f6}.proof-block,.performance,.sustainability,.vacancy-section,.report-strip{background:#eef0f2}.detail-copy,.contact-section{background:#f7f8f9}.service-card,.customer-logo,.process-grid li,.fleetcare-scope li{background:#fff;border-color:#dce2e7}.about-summary,.vacancy-panel{background:#f8f9fa}.site-footer{background:#e9edf0;color:#526775}.footer-top p,.footer-top address,.footer-top nav a{color:#284b65}.footer-top nav a:hover{color:#216b9e}.footer-bottom{border-color:#cbd5dd;color:#536d80}.design-credit{color:#536d80}.design-credit a:hover,.consent-settings:hover{color:#216b9e}.hero .button-quiet{background:#f8fafb;color:#216b9e;border-color:#bdceda}
@media(min-width:1101px){.hero{background:#eef0f2}.hero-background::after{background:linear-gradient(90deg,transparent 32%,rgba(240,243,246,.12) 45%,rgba(240,243,246,.87) 64%,#f0f3f6 100%)}.hero-copy{color:#173b58}.hero h1,.hero-promise{color:#173b58}.hero-intro{color:#3c566b}.hero .eyebrow{color:#216b9e}}
@media(max-width:1100px){.hero,.hero-copy{background:#f0f2f4}}

/* Clearly visible light-grey surfaces and proportionate hero actions. */
:root{--soft:#e5e8eb;--pale:#dce1e5}.fleetcare-product,.faq-section,.why-rivado,.imprint{background:#e5e8eb}.proof-block,.performance,.sustainability,.vacancy-section,.report-strip{background:#dce1e5}.detail-copy,.contact-section{background:#e9ecef}.site-footer{background:#d5dce2}.hero-actions{align-items:center}.hero .hero-actions .button{height:auto;min-height:54px;max-height:none;flex-grow:0;flex-basis:auto;padding:16px 22px;border-radius:12px;box-shadow:none}
@media(max-width:1100px){.hero,.hero-copy{background:#dfe3e7}.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.hero .hero-actions .button{width:100%;min-height:56px;flex:none;align-self:stretch}.hero .hero-service-tags span{border-color:#b9c8d3}}
@media(max-width:560px){.hero-actions{grid-template-columns:minmax(0,1fr)}.hero .hero-actions .button{min-height:54px}}
@media(min-width:1101px){.hero-background::after{background:linear-gradient(90deg,transparent 32%,rgba(223,227,231,.12) 45%,rgba(223,227,231,.87) 64%,#dfe3e7 100%)}}

/* Soft light-grey gradients instead of solid grey blocks. */
:root{--soft:#f3f5f7;--pale:#e9edf1}
.fleetcare-product,.faq-section,.why-rivado,.imprint{background:linear-gradient(145deg,#f8f9fb 0%,#edf1f5 100%)}
.proof-block,.performance,.sustainability,.vacancy-section,.report-strip{background:linear-gradient(120deg,#f8fafb 0%,#e8edf2 100%)}
.detail-copy,.contact-section{background:linear-gradient(160deg,#ffffff 0%,#f0f3f6 100%)}
.site-footer{background:linear-gradient(135deg,#f1f4f7 0%,#e3e9ef 100%)}
@media(max-width:1100px){.hero{background:#f6f8fa}.hero-copy{background:linear-gradient(155deg,#fafbfc 0%,#e9eef3 100%)}}
@media(min-width:1101px){.hero-background::after{background:linear-gradient(90deg,transparent 32%,rgba(245,248,250,.1) 45%,rgba(239,243,247,.85) 66%,#f5f7fa 100%)}}

/* Dedicated grey gradient for the part-time careers section. */
.vacancy-section{background:linear-gradient(130deg,#f5f6f7 0%,#e5e8ec 55%,#dce1e6 100%)}

/* Mobile text must wrap at word boundaries, never in the middle of a word. */
.hero .hero-service-tags span{overflow-wrap:normal;word-break:normal;hyphens:none;font-size:clamp(10px,2.5vw,12px);padding-inline:4px}.hero h1{overflow-wrap:normal;word-break:normal;white-space:normal}.section h2,.detail-copy h2,.vacancy-copy h2{overflow-wrap:break-word;hyphens:auto} .hero-copy,.section-header>div,.detail-copy,.about-copy{min-width:0}
@media(max-width:560px){.hero h1{font-size:clamp(26px,7vw,39px);line-height:1.16}.hero .hero-service-tags span{min-height:64px;font-size:11px}}

/* Unframed sustainability photograph, preserving the full image. */
.sustainability-media{background:transparent;align-self:center;min-height:0;height:auto;padding:0;border:0;box-shadow:none}.sustainability-media img{display:block;width:100%;height:auto;min-height:0;border:0;border-radius:0;box-shadow:none}

/* Dark original logo on the light footer. */
.site-footer .footer-logo img{filter:none;mix-blend-mode:normal;opacity:1}

/* Compact footer navigation and balanced spacing. */
.site-footer{padding:36px clamp(24px,6.5vw,104px) 20px}.footer-top{grid-template-columns:180px minmax(180px,1fr) minmax(150px,.8fr) minmax(260px,1.1fr);gap:24px;align-items:start}.footer-logo{width:150px;height:74px}.footer-top p{font-size:14px;line-height:1.65}.footer-top address{font-size:12px;line-height:1.8}.footer-top nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;font-size:12px;line-height:1.6}.footer-top nav a{padding:2px 0}.footer-bottom{margin-top:28px;padding-top:16px;flex-wrap:wrap;gap:12px 24px;font-size:11px}.design-credit{margin-top:10px}
@media(max-width:1050px){.footer-top{grid-template-columns:160px minmax(180px,1fr) minmax(260px,1.2fr)}.footer-top p{grid-column:2}.footer-top address{grid-column:2}.footer-top nav{grid-column:3;grid-row:1/3}.footer-logo{grid-column:1;grid-row:1/3}}
@media(max-width:620px){.site-footer{padding:28px 24px 18px}.footer-top{grid-template-columns:1fr 1fr;gap:18px 20px}.footer-logo{grid-column:1;grid-row:1;width:138px;height:68px}.footer-top p{grid-column:1/-1;grid-row:2;font-size:13px}.footer-top address{grid-column:2;grid-row:1;font-size:11px}.footer-top nav{grid-column:1/-1;grid-row:3;gap:8px 18px;padding-top:16px;border-top:1px solid #cbd5dd;font-size:12px}.footer-bottom{margin-top:20px;flex-direction:row;align-items:center;justify-content:space-between}}

/* Compact benefits cards without artificial vertical space. */
.why-grid{margin-top:28px;gap:14px;background:transparent;border:0;overflow:visible}.why-grid article{min-height:0;padding:24px;border:1px solid #dce2e7;border-radius:14px}.why-grid h3{margin:14px 0 8px;font-size:19px;line-height:1.35}.why-grid p{font-size:14px;line-height:1.65}
@media(max-width:560px){.why-grid{gap:12px;margin-top:24px}.why-grid article{padding:20px}.why-grid h3{margin:10px 0 7px;font-size:18px}.why-grid p{margin:0;font-size:14px}.why-grid article:hover{transform:none}}

/* Restore readable contact text on the light background. */
.contact-section{color:#173b58}.contact-section .contact-intro h2{color:#173b58}.contact-section .contact-intro>p:not(.eyebrow){color:#526779}.contact-section .eyebrow,.contact-section .contact-details small{color:#216b9e}.contact-section .contact-details a,.contact-section .contact-details strong{color:#173b58}.contact-section .contact-details a{border-bottom-color:#ccd7df}.contact-section .contact-details a:hover{color:#216b9e}.contact-section::before{display:none}

/* Dropdown items use a background highlight without crossing text. */
.site-header .main-nav .nav-company-links a::after,.site-header .main-nav .nav-company-links a::before{display:none;content:none}.nav-company-links a:hover,.nav-company-links a:focus-visible{background:#edf1f5;color:#1c608f;text-decoration:none}

/* Crisp dropdown chevron, independent of the font glyph. */
.site-header .nav-company>summary::after{content:"";display:block;width:7px;height:7px;flex:0 0 7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);position:relative;top:-2px;color:#526779;transition:transform .18s}.site-header .nav-company[open]>summary::after{transform:rotate(225deg);top:2px}

/* Stronger contrast for hero copy while preserving the background photo. */
.hero-intro{font-size:17px;line-height:1.8;font-weight:500;color:#243f54}.hero .hero-service-tags span{font-size:13px}
@media(min-width:1101px){.hero-background::after{background:linear-gradient(90deg,transparent 30%,rgba(245,248,250,.18) 43%,rgba(245,248,250,.96) 57%,#f5f8fa 80%)}.hero-intro{color:#243f54}.hero h1,.hero-promise{color:#123653}}
@media(max-width:560px){.hero-intro{font-size:16px;line-height:1.75}.hero .hero-service-tags span{font-size:11px}}

/* Restore the photographic desktop hero; keep the light mobile layout. */
@media(min-width:1101px){.hero{background:#092747}.hero-background::after{background:linear-gradient(90deg,transparent 30%,rgba(6,28,49,.08) 46%,rgba(6,28,49,.68) 68%,rgba(6,28,49,.84)),linear-gradient(0deg,rgba(6,28,49,.24),transparent 25%)}.hero-copy{color:#fff}.hero h1,.hero-promise{color:#fff}.hero-intro{color:#edf3f7;font-weight:400;font-size:17px;line-height:1.75}.hero .eyebrow{color:#a6d8f2}.hero .button-quiet{background:rgba(8,28,44,.78);color:#fff;border-color:#a1b6c4}.hero .hero-service-tags span{background:#12354d;color:#fff;border-color:#8fa9b9}}

/* Clear, compact shortcuts to the three services. */
.hero .hero-service-tags{gap:10px}.hero .hero-service-tags a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;padding:12px 8px;background:#f5f8fa;color:#173e5b;border:1px solid #c4d4df;border-radius:9px;font-size:13px;line-height:1.4;font-weight:700;text-align:center;text-decoration:none;box-shadow:0 3px 10px #06233b12;transition:background .15s,border-color .15s,transform .15s}.hero .hero-service-tags a:hover{background:#e5eff6;border-color:#6c9fbe;transform:translateY(-2px)}.hero .hero-service-tags a:focus-visible{outline:3px solid #75bbe6;outline-offset:3px}.hero .hero-service-tags a:active{transform:none}
@media(max-width:560px){.hero .hero-service-tags{gap:6px}.hero .hero-service-tags a{font-size:11px;padding:12px 4px;min-height:50px}}
@media(prefers-reduced-motion:reduce){.hero .hero-service-tags a{transition:none}.hero .hero-service-tags a:hover{transform:none}}
