/* ---------------------------------------------------------------------
   This file no longer forces layout.

   The edition stylesheet loads before obc-theme.css, so the theme is meant
   to win every layout question and the two are meant to agree. They did not:
   221 rules here redefined layout on the theme's own class names, and where
   they carried !important they beat it. That is why the footer drew one link
   group per row and 4,179 pixels tall, why a figure band stacked into a
   single column, and why each fix in the theme produced a new conflict here
   rather than a result.

   41 !important flags were removed from layout properties on
   9 September 2026. Colour, type and the genuinely German additions keep
   theirs. The rule from here on: this file may add what Germany needs and
   may not re-lay-out what the theme already lays out.
   --------------------------------------------------------------------- */

/* obc-de.css
   The German site loads the same chrome as onboardcourier.ae. This file is the
   union of the inline stylesheets that every generated English page carries,
   lifted verbatim from a live page on 9 September 2026 so that the two sites
   cannot drift apart. /assets/obc-theme.css is loaded after it and wins, exactly
   as it does on the English tree. Nothing here is a new colour or a new shape.
   The only additions are at the foot of the file: the language switch and the
   two German helpers, both built out of tokens that already exist. */

@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url('/assets/fonts/PlusJakartaSans-var.woff2') format('woff2')}
@font-face{font-family:'Sora';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/Sora-var.woff2') format('woff2')}
@font-face{font-family:'PJS Fallback';src:local('Arial'),local('Liberation Sans');size-adjust:106.05%;ascent-override:97.88%;descent-override:20.93%;line-gap-override:0%}


/* ---- lifted block 00 ---- */
:root{--navy:#14181F;--navy2:#1F2530;--gold:#D71920;--gold3:#E53A41;--white:#fff;--ink:#14181F;--sub:#5B6472;--line:#E6EAF0;--grad:linear-gradient(135deg,#E8343B,#D71920 55%,#B3121A);--glow:0 12px 34px -8px rgba(215,25,32,.55);--ease:cubic-bezier(.22,.8,.32,1)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3{line-height:1.15}
a{}::selection{}
img{display:block;max-width:100%}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;padding:14px 22px;backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}
.nav .mark{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav b{font-size:15px}.nav b span{}
.nav .brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff;transition:opacity .2s}
.nav .brand:hover{opacity:.82}
.nav .links{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:13px;font-weight:600}
.nav .links a{color:rgba(255,255,255,.72);text-decoration:none}
.nav .links a:hover{}
.nav .cta{padding:9px 18px;border:1px solid rgba(74,222,128,.5);font-weight:700;transition:background .2s,border-color .2s,color .2s}
.nav .cta:hover{}
@media(max-width:760px){.nav .links a:not(.cta){display:none}}
.hero{position:relative;padding:70px 0 56px;isolation:isolate;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;z-index:-1}
.tag{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(215,25,32,.42);font-size:11px;font-weight:700;padding:7px 15px;margin-bottom:18px}
.tag .dot{width:7px;height:7px}
h1{font-size:clamp(2rem,4.6vw,3.1rem);font-weight:800;margin-bottom:16px;max-width:20ch}
h1 em{font-style:normal;-webkit-background-clip:text;background-clip:text}
.lede{font-size:17px;max-width:62ch;margin-bottom:24px}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 26px;font-size:15px;font-weight:800;text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn.wa{}
.btn.mail{}
section.alt .btn.mail{}
section.alt .cta-band .btn.mail{}
.btn.ghost{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18)}
.micro{font-size:12.5px}
section{padding:52px 0;border-top:1px solid rgba(255,255,255,.06)}
h2{font-size:clamp(1.5rem,3.2vw,2.1rem);margin-bottom:12px}
.lead{font-size:15.5px;max-width:66ch;margin-bottom:20px}
.answer{background:linear-gradient(160deg,rgba(215,25,32,.09),rgba(255,255,255,.03));border:1px solid rgba(215,25,32,.28);padding:24px 26px;margin:22px 0}
.answer p{font-size:16px}
.answer p+p{margin-top:12px}
.answer strong{}
.grid{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}
.grid>*{flex:1 1 250px;min-width:250px}
.card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);padding:22px;transition:transform .28s var(--ease),border-color .28s}
.card:hover{transform:translateY(-4px)}
.card .ico{font-size:26px;margin-bottom:10px}
.card h3{font-size:16px;margin-bottom:7px}
.card p{font-size:13.5px}
.steps{counter-reset:s;display:grid;gap:13px;margin-top:20px}
.step{display:flex;gap:15px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:18px}
.step .n{width:34px;height:34px;flex-shrink:0;font-weight:800;display:flex;align-items:center;justify-content:center}
.step b{display:block;font-size:15px;margin-bottom:3px}
.step p{font-size:13.5px}
table{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}
th{text-align:left;padding:11px 12px;font-size:11px;border-bottom:1px solid rgba(255,255,255,.12)}
td{padding:13px 12px;border-bottom:1px solid rgba(255,255,255,.07)}
td:first-child{font-weight:700;white-space:nowrap}
tr:hover td{background:rgba(255,255,255,.03)}
details{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);padding:16px 18px;margin-bottom:10px}
summary{font-size:15px;font-weight:700;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
summary::after{content:'+';font-size:19px;transition:transform .25s}
details[open] summary::after{transform:rotate(45deg)}
details .a{font-size:14px;line-height:1.7;margin-top:11px}
.cta-band{border:1px solid rgba(215,25,32,.3);padding:34px 30px;text-align:center;margin:8px 0}
.cta-band h2{margin-bottom:10px}
.cta-band p{color:rgba(255,255,255,.75);max-width:52ch;margin:0 auto 22px}
.cta-band .btns{justify-content:center}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chips a{font-size:12.5px;font-weight:600;padding:8px 14px;text-decoration:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.chips a:hover{}
footer{padding:40px 0 60px;border-top:1px solid rgba(255,255,255,.07);font-size:12.5px;color:rgba(255,255,255,.45)}
footer a{color:rgba(255,255,255,.62);text-decoration:none}
footer a:hover{}
.fgrid h4{font-size:11px;margin-bottom:10px}
.fgrid a{display:block;margin-bottom:7px}
/* ── light sections: alternating rhythm ─────────────────────────── */
section.alt{border-top:1px solid #E6EAF0}
section.alt h2,section.alt h3{}
section.alt h2 em{-webkit-background-clip:text;background-clip:text}
section.alt .lead,section.alt .micro,section.alt p{}
section.alt .answer{background:linear-gradient(160deg,rgba(215,25,32,.12),rgba(255,255,255,.9))}
section.alt .answer p{}
section.alt .answer strong{}
section.alt .card{background:#fff}
section.alt .card h3{}
section.alt .card p{}
section.alt .card:hover{}
section.alt .step{background:#fff}
section.alt .step b{}
section.alt .step p{}
section.alt table th{}
section.alt td{}
section.alt td:first-child{}
section.alt tr:hover td{}
section.alt details{background:#fff}
section.alt summary{}
section.alt details .a{}
section.alt .chips a{background:#fff}
section.alt .chips a:hover{}
section.alt .vs-col{background:#fff}
section.alt .vs-col.ok{background:linear-gradient(160deg,rgba(34,197,94,.10),#fff)}
section.alt .vs-col.no{background:linear-gradient(160deg,rgba(239,68,68,.08),#fff)}
section.alt .vs-col h3{}
section.alt .vs-col li{}
section.alt .vs-col li b{}
section.alt .vs-col .sub,section.alt .vs-note{}
section.alt .cta-band{}
section.alt .cta-band p{}
section.alt .btn.ghost{background:#fff}
section.alt .reg{}
section.alt .city-grid a,section.alt .two-way a{background:#fff}
section.alt .city-grid a span{}
section.alt .two-way p{}
section.alt .logo-card{background:#fff}
section.alt .logo-card .lhub{}
section.alt .logo-card p{}
section.alt .smap a{}
section.alt .smap a:hover{}
section.alt .disclaimer{}
section.alt .alli{}
section.alt .post p,section.alt .post li{}
section.alt .post strong{}
section.alt .pull{background:linear-gradient(160deg,rgba(215,25,32,.12),rgba(255,255,255,.8))}
section.alt .pull p{}
section.alt .dirnav a{}
section.alt .job{background:#fff}
section.alt .job .jmeta span{}
/* buttons never inherit a gradient text fill */
.btn,.qbtn,.qbox a{}
.btn{}
.btn.wa,.btn.ghost{}
section.alt .btn{}
section.alt .btn.wa{}
section.alt .btn.ghost{}
/* the call-to-action band stays navy even on a light section — more contrast, more brand */
section.alt .cta-band{background:linear-gradient(135deg,#14181F 0%,#232A36 100%);color:#fff}
section.alt .cta-band h2{color:#fff}
section.alt .cta-band h2 em{-webkit-background-clip:text;background-clip:text}
section.alt .cta-band p{color:rgba(255,255,255,.78)}
section.alt .cta-band .btn{}
section.alt .cta-band .btn.ghost{background:rgba(255,255,255,.09);color:#fff;-webkit-text-fill-color:#fff;border-color:rgba(255,255,255,.22)}
section.alt .cta-band .btn.wa{color:#fff;-webkit-text-fill-color:#fff}

/* the recruiting band is always dark — override the light-section rules */
section.alt .rec h2{color:#fff;-webkit-text-fill-color:#fff}
section.alt .rec h2 em{-webkit-background-clip:text;background-clip:text}
section.alt .rec p{color:rgba(255,255,255,.8)}
section.alt .rec p strong{color:#fff}
section.alt .rec li{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
section.alt .rec .recbtns a{}
section.alt .rec .recbtns a.ghost{color:#fff;-webkit-text-fill-color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.24)}

/* glossary A–Z rails */
.gl-letter{font-size:26px;line-height:1;font-weight:800;margin:40px 0 16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.13)}
.gl-letter:first-of-type{margin-top:18px}
section.alt .gl-letter{}
.gl-letter + .grid{margin-bottom:6px}


.vs{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}
.vs>*{flex:1 1 320px;min-width:min(320px,100%)}
.vs-col{padding:24px 24px 22px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04)}
.vs-col.ok{background:linear-gradient(160deg,rgba(34,197,94,.12),rgba(255,255,255,.03))}
.vs-col.no{background:linear-gradient(160deg,rgba(239,68,68,.09),rgba(255,255,255,.03))}
.vs-col h3{font-size:17px;margin-bottom:4px;display:flex;align-items:center;gap:10px}
.vs-col .sub{font-size:12px;margin-bottom:14px}
.vs-col ul{list-style:none;margin:0;padding:0}
.vs-col li{position:relative;padding:9px 0 9px 32px;font-size:14.5px;line-height:1.6;border-bottom:1px solid rgba(255,255,255,.07)}
.vs-col li:last-child{border-bottom:none}
.vs-col li::before{position:absolute;left:0;top:8px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.vs-col.ok li::before{content:'\2713';border:1px solid rgba(34,197,94,.5)}
.vs-col.no li::before{content:'\2715';border:1px solid rgba(239,68,68,.45)}
.vs-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;font-size:15px;font-weight:800}
.vs-badge.ok{border:1px solid rgba(34,197,94,.5)}
.vs-badge.no{border:1px solid rgba(239,68,68,.45)}
.vs-note{font-size:13.5px;line-height:1.7;margin-top:18px;max-width:80ch}

.qwrap{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}
.qwrap>*{flex:1 1 360px;min-width:min(360px,100%)}
.qcard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);padding:26px}
.qcard h3{font-size:19px;margin-bottom:6px}
.qcard .qsub{font-size:13.5px;margin-bottom:18px}
.qgrid{display:flex;flex-wrap:wrap;gap:12px}
.qgrid>*{flex:1 1 46%;min-width:min(180px,100%)}
.qf label{display:block;font-size:10.5px;font-weight:800;margin-bottom:6px}
.qf input,.qf select{width:100%;padding:12px 14px;font:inherit;font-size:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);outline:none}
.qf input::placeholder{}
.qf input:focus,.qf select:focus{background:rgba(255,255,255,.1)}
.qf select option{background:#14181F;color:#fff}
.qbtn{width:100%;margin-top:16px;padding:15px 22px;border:0;font:inherit;font-size:15px;font-weight:800;cursor:pointer;color:#14181F}
.qbtn:disabled{opacity:.7;cursor:progress}
.qnote{font-size:12px;text-align:center;margin-top:12px}
.qok{display:none;margin-top:14px;padding:14px 16px;font-size:14px;border:1px solid rgba(34,197,94,.45)}
.qside{display:flex;flex-direction:column;gap:18px}
.qbox{background:rgba(255,255,255,.05);border:1px solid rgba(215,25,32,.35);padding:26px;text-align:center}
.qbox .qic{font-size:26px;margin-bottom:10px}
.qbox h3{font-size:18px;margin-bottom:6px}
.qbox p{font-size:13.5px;margin-bottom:16px}
.qbox a.prim{display:block;padding:14px 20px;font-weight:800;font-size:14.5px;text-decoration:none;color:#14181F;margin-bottom:10px}
.qbox a.sec{display:block;padding:13px 20px;font-weight:700;font-size:14px;text-decoration:none;border:1px solid rgba(255,255,255,.2)}
section.alt .qcard,section.alt .qbox{background:#fff}
section.alt .qcard h3,section.alt .qbox h3{}
section.alt .qcard .qsub,section.alt .qbox p,section.alt .qnote{}
section.alt .qf label{}
section.alt .qf input,section.alt .qf select{color:#14181F}
section.alt .qf input::placeholder{}
section.alt .qf select option{background:#fff;color:#14181F}
section.alt .qbox{}
section.alt .qbox a.sec{}

.rec{background:linear-gradient(135deg,#14181F 0%,#232A36 60%,#14181F 100%);border:1px solid rgba(215,25,32,.35);padding:34px 30px;margin-top:26px;position:relative;overflow:hidden}
.rec::after{content:'';position:absolute;inset:0;pointer-events:none}
.rec h2{color:#fff;margin-bottom:10px}
.rec h2 em{font-style:normal;-webkit-background-clip:text;background-clip:text}
.rec p{color:rgba(255,255,255,.78);max-width:70ch;font-size:15.5px;line-height:1.75}
.rec ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.rec li{font-size:13px;font-weight:700;padding:8px 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff}
.rec .recbtns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;position:relative;z-index:1}
.rec .recbtns a{display:inline-flex;align-items:center;gap:8px;padding:15px 26px;font-size:15px;font-weight:800;text-decoration:none;color:#fff;-webkit-text-fill-color:#fff}
.rec .recbtns a.ghost{background:rgba(255,255,255,.08);color:#fff;-webkit-text-fill-color:#fff;border:1px solid rgba(255,255,255,.22)}
section.alt .rec{}

.logos{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}
.logos>*{flex:1 1 210px;min-width:210px}
.logo-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:20px;display:flex;flex-direction:column;gap:8px}
.logo-card .lname{font-weight:800;font-size:17px}
.logo-card .lhub{font-size:11px}
.logo-card p{font-size:13px}
.logo-card .bar{height:4px;width:52px}
.city-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.city-grid>*{flex:1 1 215px;min-width:215px}
.city-grid a{display:flex;justify-content:space-between;align-items:center;gap:10px;text-decoration:none;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);padding:13px 15px;font-size:14px;font-weight:700;transition:border-color .2s,transform .2s}
.city-grid a:hover{transform:translateY(-2px)}
.city-grid a span{font-size:11.5px;font-weight:600}
.reg{font-size:11px;margin:30px 0 4px;font-weight:800}
.post{max-width:74ch}
.post h2{margin:38px 0 12px}
.post h3{font-size:19px;margin:26px 0 8px}
.post p{font-size:16.5px;margin-bottom:15px;line-height:1.78}
.post ul,.post ol{margin:0 0 16px 20px;font-size:16px;line-height:1.8}
.post li{margin-bottom:7px}
.post strong{}
.post a{font-weight:700}
.meta{font-size:12.5px;margin-bottom:24px}
.pull{background:linear-gradient(160deg,rgba(215,25,32,.1),rgba(255,255,255,.03));border-left:3px solid var(--gold);padding:18px 22px;margin:24px 0}
.pull p{margin:0;font-size:16px}
.job{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);padding:26px;margin-top:20px}
.job h3{font-size:20px;margin-bottom:6px}
.job .jmeta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.job .jmeta span{font-size:12px;font-weight:700;padding:6px 12px;border:1px solid rgba(215,25,32,.32)}
.post-card{display:block;text-decoration:none;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);padding:24px;transition:border-color .25s,transform .25s}
.post-card:hover{transform:translateY(-3px)}
.post-card h3{font-size:19px;margin:8px 0}
.post-card p{font-size:14px}
.disclaimer{font-size:12px;margin-top:16px;max-width:78ch}
.dirwrap{overflow-x:auto;margin-top:12px}
table.dir{font-size:13.5px}
table.dir td:first-child{white-space:normal}
.code{font-weight:800;font-size:12px;color:#14181F;padding:3px 9px}
.alli{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border:1px solid rgba(255,255,255,.18)}
.grid[style*='--min:400px']>*{flex:1 1 400px;min-width:min(400px,100%)}
.smap{columns:3;column-gap:26px;margin-top:14px}
.smap a{display:block;font-size:13.5px;padding:5px 0;text-decoration:none;break-inside:avoid}
.smap a:hover{}
@media(max-width:900px){.smap{columns:2}}
@media(max-width:560px){.smap{columns:1}}
.dirnav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 4px}
.dirnav a{font-size:12.5px;font-weight:700;padding:8px 14px;text-decoration:none;border:1px solid rgba(215,25,32,.3)}
.two-way{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.two-way>*{flex:1 1 260px;min-width:260px}
.two-way a{display:block;text-decoration:none;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:18px 20px;transition:border-color .2s,transform .2s}
.two-way a:hover{transform:translateY(-2px)}
.two-way .dir-label{font-size:11px;font-weight:800}
.two-way .dir-title{font-size:16px;font-weight:800;margin:5px 0 4px}
.two-way p{font-size:13px}

/* Airport autocomplete — same data as the homepage picker, dark-card styling */
.qf .ac-wrap{position:relative}
.qf .ac-dropdown{display:none;position:absolute;top:100%;left:0;right:0;z-index:9999;border:1px solid rgba(215,25,32,.55);border-top:none;max-height:264px;overflow-y:auto}
.qf .ac-dropdown.open{display:block}
.qf .ac-item{padding:10px 13px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.06)}
.qf .ac-item:last-child{border-bottom:none}
.qf .ac-item:hover,.qf .ac-item.selected{}
.qf .ac-item-code{font-weight:800;font-size:13px;margin-right:7px;font-variant-numeric:tabular-nums}
.qf .ac-item-name{font-size:13px}
.qf .ac-item-sub{font-size:11px;margin-top:2px}
.qf .ac-no-results{padding:12px 14px;font-size:13px;text-align:center}

/* ---- lifted block 01 ---- */
.desknav{border-top:1px solid rgba(215,25,32,.22);border-bottom:1px solid rgba(215,25,32,.22);position:sticky;top:64px;z-index:40;backdrop-filter:blur(10px)}
.desknav .wrap{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:11px 24px}
.desknav .dlabel{font-size:11px;font-weight:800;margin-right:10px}
.desknav a{font-size:13.5px;font-weight:700;padding:6px 12px;text-decoration:none;transition:background .2s,color .2s}
.desknav a:hover{}
.desknav a.on{}
section.alt .desknav a{}
.ctable{width:100%;border-collapse:collapse;margin-top:16px;font-size:14.5px}
.ctable th{text-align:left;font-size:11px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.14)}
.ctable td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:top}
.ctable tr:hover td{background:rgba(255,255,255,.03)}
.ctable a{font-weight:700}
section.alt .ctable th{}
section.alt .ctable td{}
section.alt .ctable tr:hover td{}
.tl{margin-top:18px;border-left:2px solid rgba(215,25,32,.4);padding-left:22px}
.tl .ev{margin-bottom:22px;position:relative}
.tl .ev:before{content:'';position:absolute;left:-28px;top:6px;width:11px;height:11px}
.tl .yr{font-size:12px;font-weight:800}
.tl h3{font-size:18px;margin:3px 0 6px}
.tl p{font-size:15.5px;line-height:1.75}
section.alt .tl p{}
section.alt .tl .yr{}

/* ---- lifted block 02 ---- */
/* obc-chrome-v2 */
/* Utility strip above the main bar. Not sticky: it scrolls away and the main
   bar stays, which keeps the sticky height at 64px so the desk navigation
   below it stays aligned. */
.obar{background:#14181F;border-bottom:1px solid rgba(215,25,32,.14)}
.obar-in{padding:0 22px;height:36px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.olive{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;font-weight:700}
.olive i{width:8px;height:8px;flex:none;animation:obc-pulse 2.1s ease-out infinite}
@keyframes obc-pulse{
  0%{}
  70%{}
  100%{}}
@media(prefers-reduced-motion:reduce){.olive i{animation:none}}
.oports{display:flex;align-items:center;gap:6px}
.oports a{font-size:12px;font-weight:700;text-decoration:none;padding:6px 13px;border:1px solid rgba(215,25,32,.30);transition:background .2s,color .2s,border-color .2s}
.oports a:hover{}

/* A heavier main bar, at a height that is now pinned rather than emergent.
   The desk navigation on the country pages sticks at a fixed offset, so the
   bar above it cannot be allowed to grow with its contents -- it was 68.6px
   against a 64px offset, which put a 4px overlap on every desk page. */
.nav{border-bottom:1px solid rgba(215,25,32,.20)!important;height:68px;padding:0 22px;box-sizing:border-box}
.desknav{top:68px}
.nav .mark{width:34px;height:34px}
.nav b{font-size:16px}
.nav .links a{font-size:13.5px}
.nav .links a:hover{color:#fff}
.nav .links a.cta{color:#fff!important;border:0!important;padding:9px 20px!important;font-weight:800!important}
.nav .links a.cta:hover{filter:brightness(1.06)}
.nav .oport-m{display:none}

/* CSS-only menu: a checkbox and a label, so it cannot break the way a script
   can on 1,600 static files. */
.nav .navtoggle{position:absolute;opacity:0;pointer-events:none;width:0;height:0}
.nav .hamb{display:none}

@media(max-width:940px){
  .obar{display:none}
  .nav .hamb{display:flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:10px 6px;cursor:pointer}
  .nav .hamb span{display:block;width:24px;height:2px;background:#fff;transition:transform .22s var(--ease),opacity .22s}
  .nav .navtoggle:checked ~ .hamb span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav .navtoggle:checked ~ .hamb span:nth-child(2){opacity:0}
  .nav .navtoggle:checked ~ .hamb span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  /* The full-panel overlay, as the homepage used to have.
     backdrop-filter on the bar has to go on mobile: a filtered element becomes
     the containing block for its position:fixed descendants, so the panel was
     being sized against the 68px bar instead of the viewport and collapsed to
     a sliver. */
  .nav{backdrop-filter:none!important}
  .nav .links{display:none;position:fixed;inset:68px 0 0 0;z-index:999;padding:26px 22px 44px;flex-direction:column;align-items:stretch;gap:0;overflow-y:auto;margin-left:0}
  .nav .navtoggle:checked ~ .links{display:flex}
  .nav .links a:not(.cta){display:block;font-size:16.5px;font-weight:600;color:rgba(255,255,255,.82);padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav .links a:not(.cta):active{}
  .nav .links .oport-m{display:block;font-size:14.5px!important;font-weight:700!important;border-bottom:0!important;padding:14px 2px 4px!important}
  .nav .links a.cta{margin-top:24px;padding:16px!important;font-size:16px!important;text-align:center;justify-content:center}
}

/* ---- lifted block 03 ---- */
.btn.mail{}
.cta-band .btn.mail{}
h2,h3{}
h2 em{-webkit-background-clip:text;background-clip:text}
.lead,.micro,p{}
.answer{background:linear-gradient(160deg,rgba(215,25,32,.12),rgba(255,255,255,.9))}
.answer p{}
.answer strong{}
.card{background:#fff}
.card h3{}
.card p{}
.card:hover{}
.step{background:#fff}
.step b{}
.step p{}
table th{}
td{}
td:first-child{}
tr:hover td{}
details{background:#fff}
summary{}
details .a{}
.chips a{background:#fff}
.chips a:hover{}
.vs-col{background:#fff}
.vs-col.ok{background:linear-gradient(160deg,rgba(34,197,94,.10),#fff)}
.vs-col.no{background:linear-gradient(160deg,rgba(239,68,68,.08),#fff)}
.vs-col h3{}
.vs-col li{}
.vs-col li b{}
.vs-col .sub,.vs-note{}
.cta-band{}
.cta-band p{}
.btn.ghost{background:#fff}
.reg{}
.city-grid a,.two-way a{background:#fff}
.city-grid a span{}
.two-way p{}
.logo-card{background:#fff}
.logo-card .lhub{}
.logo-card p{}
.smap a{}
.smap a:hover{}
.disclaimer{}
.alli{}
.post p,.post li{}
.post strong{}
.pull{background:linear-gradient(160deg,rgba(215,25,32,.12),rgba(255,255,255,.8))}
.pull p{}
.dirnav a{}
.job{background:#fff}
.job .jmeta span{}
.btn{}
.btn.wa{}
.btn.ghost{}
.cta-band{background:linear-gradient(135deg,#14181F 0%,#232A36 100%);color:#fff}
.cta-band h2{color:#fff}
.cta-band h2 em{-webkit-background-clip:text;background-clip:text}
.cta-band p{color:rgba(255,255,255,.78)}
.cta-band .btn{}
.cta-band .btn.ghost{background:rgba(255,255,255,.09);color:#fff;-webkit-text-fill-color:#fff;border-color:rgba(255,255,255,.22)}
.cta-band .btn.wa{color:#fff;-webkit-text-fill-color:#fff}
.rec h2{color:#fff;-webkit-text-fill-color:#fff}
.rec h2 em{-webkit-background-clip:text;background-clip:text}
.rec p{color:rgba(255,255,255,.8)}
.rec p strong{color:#fff}
.rec li{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.rec .recbtns a{}
.rec .recbtns a.ghost{color:#fff;-webkit-text-fill-color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.24)}
.gl-letter{}
.qcard,.qbox{background:#fff}
.qcard h3,.qbox h3{}
.qcard .qsub,.qbox p,.qnote{}
.qf label{}
.qf input,.qf select{color:#14181F}
.qf input::placeholder{}
.qf select option{background:#fff;color:#14181F}
.qbox{}
.qbox a.sec{}
.rec{}
.desknav a{}
.ctable th{}
.ctable td{}
.ctable tr:hover td{}
.tl p{}
.tl .yr{}

/* ================= OBC light corporate theme ================= */
body{background:#fff;color:var(--ink,#14181F)}
section{border-top:1px solid #EDF1F6}
section.alt{border-top:1px solid #E6EAF0}
h1,h2,h3{color:var(--ink,#14181F)}
.lede,.lead{}
.micro{}
.hero{background:#fff}
.hero::before{}
.hero .tag{border:1px solid rgba(215,25,32,.35)}
.hero .tag .dot{}
.btn.ghost{background:#fff;border:1px solid #D8DFE9;color:var(--ink,#14181F)}
.btn.ghost:hover{}
/* top strip stays navy — brand anchor, like a corporate utility bar */
.obar{background:var(--navy,#14181F)}
/* main nav: white, crisp */
.nav{background:rgba(255,255,255,.92)!important;backdrop-filter:blur(14px);border-bottom:1px solid #E6EAF0!important}
.nav .brand,.nav b{color:var(--ink,#14181F)}
.nav b span{}
.nav .links a{}
.nav .links a:hover{}
.nav .links a.cta{color:var(--navy,#14181F)!important}
.nav .cta{}
.nav .cta:hover{}
.nav .hamb span{background:var(--ink,#14181F)}
.nav .links{background:#fff}
@media(max-width:940px){.nav .links{background:#fff!important}
  .nav .links a:not(.cta){}}
.nav .links .oport-m{}
/* section subnav: white bar, gold active pill */
.desknav{background:#fff;border-top:1px solid #E6EAF0;border-bottom:1px solid #E6EAF0}
.desknav .dlabel{}
.desknav a{}
.desknav a:hover{color:#14181F}
.desknav a.on{color:var(--navy,#14181F)}
/* footer: light */
footer{border-top:1px solid #E6EAF0}
footer a{}
footer a:hover{}
footer h4,footer h5,footer .fgrid h4{color:#14181F}
footer a[style*="E53A41" i]{}
footer .fnote,footer small{}
/* quote form autocomplete */
.qf .ac-dropdown{background:#fff;border:1px solid #E6EAF0}
.ac-item{border-bottom:1px solid #EDF1F6}
.ac-item:hover,.qf .ac-item.selected{}
.ac-item-name{color:#14181F}
.ac-item-sub{}
/* generic dark-glass leftovers promoted to light */
.qf input,.qf select{border:1px solid #DDE3EC;color:#14181F}
.qf input::placeholder{}
.qf select option{background:#fff;color:#14181F}
.qf label{}
::selection{color:#14181F}
/* icon tiles: clean stroke icons on a soft gold chip instead of emoji */
.card .ico,.ico{font-size:0}
.ico,.qic{width:46px;height:46px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.ico svg,.qic svg{width:23px;height:23px}
.qbox .qic{margin:0 auto 10px}

/* ---- lifted block 05 ---- */
.obc-sb{border-top:1px solid #E9EFF6;border-bottom:1px solid #E9EFF6;padding:34px 24px}
.obc-sb .sbgrid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:280px 1fr;gap:30px;align-items:center}
.obc-sb .sbtext span{font-size:11px;font-weight:800}
.obc-sb .sbtext h2{font-size:22px;color:#14181F;margin:8px 0 10px;line-height:1.25}
.obc-sb .sbtext p{font-size:14px;line-height:1.65;margin:0}
.obc-sb .sbart svg{display:block;width:100%;height:auto;border:1px solid #E2E8F2;background:#fff}
@media(max-width:820px){.obc-sb .sbgrid{grid-template-columns:1fr;gap:18px}}

/* ---- lifted block 06 ---- */
body{color:#14181F}
.lede{}
.micro{}
section{border-top:1px solid #E3E8EF}
.lead{}
.answer p{}
.answer strong{}
.card{background:#fff;border:1px solid #E3E8EF}
.card p{}
.step{background:#fff;border:1px solid #E3E8EF}
.step p{}
th{border-bottom:1px solid #E3E8EF}
td{border-bottom:1px solid #E3E8EF}
td:first-child{color:#14181F}
tr:hover td{background:#fff}
details{background:#fff;border:1px solid #E3E8EF}
details .a{}
.chips a{background:#fff;border:1px solid #E3E8EF}
.chips a:hover{}
footer{border-top:1px solid #E3E8EF}
footer a{}
footer a:hover{}
.fgrid h4{}
.vs-col{background:#fff;border:1px solid #E3E8EF}
.vs-col .sub{}
.vs-col li{border-bottom:1px solid #E3E8EF}
.vs-note{}
.qcard{background:#fff;border:1px solid #E3E8EF}
.qcard .qsub{}
.qf label{}
.qf input,.qf select{color:#14181F;background:#fff;border:1px solid #E3E8EF}
.qf input::placeholder{}
.qf input:focus,.qf select:focus{background:#fff}
.qf select option{color:#14181F}
.qnote{}
.qbox{background:#fff}
.qbox p{}
.qbox a.sec{color:#14181F;border:1px solid #E3E8EF}
.logo-card{background:#fff;border:1px solid #E3E8EF}
.logo-card .lhub{}
.logo-card p{}
.city-grid a{background:#fff;border:1px solid #E3E8EF}
.city-grid a span{}
.reg{}
.post p{}
.post ul,.post ol{}
.post strong{color:#14181F}
.post a{}
.meta{}
.pull p{}
.job{background:#fff;border:1px solid #E3E8EF}
.job .jmeta span{}
.post-card{background:#fff;border:1px solid #E3E8EF}
.post-card p{}
.disclaimer{}
.alli{border:1px solid #E3E8EF}
.smap a{}
.smap a:hover{}
.two-way a{background:#fff;border:1px solid #E3E8EF}
.two-way .dir-label{}
.two-way p{}
.qf .ac-item{border-bottom:1px solid #E3E8EF}
.qf .ac-item-code{}
.qf .ac-item-name{}
.qf .ac-item-sub{}
.qf .ac-no-results{}
.ctable th{border-bottom:1px solid #E3E8EF}
.ctable td{border-bottom:1px solid #E3E8EF}
.ctable tr:hover td{background:#fff}
.tl .yr{}
.tl p{}

/* ---- lifted block 07 ---- */
.rec{background:linear-gradient(160deg,rgba(215,25,32,.10),#fff 52%)!important;border:1px solid rgba(215,25,32,.5)!important}
.rec::after{}
.rec h2{color:#14181F!important;-webkit-text-fill-color:#14181F!important}
.rec p{}
.rec p strong{color:#14181F!important}
.rec li{background:#fff!important;border:1px solid #E3E8EF!important}
.rec .recbtns a.ghost{background:#fff!important;color:#14181F!important;border:1px solid #D8DFE9!important;-webkit-text-fill-color:#14181F!important}

/* ---- lifted block 08 ---- */
.qf .ac-item-code{}
a[style*="E53A41" i],a[style*="E8343B" i],a[style*="EF5B61" i]{}
.cta-band a[style*="E53A41" i],#contact a[style*="E53A41" i],#stats a[style*="E53A41" i],#network a[style*="E53A41" i]{}

/* ---- lifted block 09 ---- */
.cta-band p,.cta-band .lead,.cta-band .micro,.cta-band li{color:rgba(255,255,255,.85)!important;-webkit-text-fill-color:rgba(255,255,255,.85)!important}
.cta-band h2,.cta-band h3{color:#fff!important;-webkit-text-fill-color:#fff!important}
.cta-band h2 em{-webkit-background-clip:text!important;background-clip:text!important}
.cta-band .btn.ghost{background:rgba(255,255,255,.09)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid rgba(255,255,255,.25)!important}

/* ---- lifted block 10 ---- */
/* iOS zooms when a focused field has font-size <16px */
@media (max-width:940px){
  input,select,textarea{font-size:16px!important}
  .qf input,.qf select,.qf textarea{font-size:16px!important}
}
/* and pans horizontally when anything overflows the viewport:
   clip (not hidden) kills the sideways scroll without breaking position:sticky */
html,body{overflow-x:clip}
@supports not (overflow-x:clip){html,body{overflow-x:hidden}}
@media (max-width:940px){
  .qcard,.qbox,.qf input,.qf select,.qf textarea{max-width:100%;box-sizing:border-box}
  .qf .ac-dropdown{max-width:calc(100vw - 40px)}
}

/* ---- lifted block 11 ---- */
/* premium polish: softer light, calmer shadows, unhurried motion */
.btn{transition:transform .18s,box-shadow .18s,filter .18s}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.card{transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-3px)}
section{}
section.alt{}
.tag{}
a{transition:color .16s,border-color .16s}
::selection{}

/* ---- lifted block 12 ---- */
/* premium polish, round 2: form focus, tighter type, calmer chips */
.qf input:focus,.qf select:focus,.qf textarea:focus{outline:none!important}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(215,25,32,.5);outline-offset:1px}
h2{}
.btn,.qbtn{}
.chips a{transition:border-color .16s,color .16s,background .16s}
.chips a:hover{}
.desknav a{transition:background .16s,color .16s}

/* ---- lifted block 13 ---- */
.fdesks{grid-column:1/-1;margin:6px 0 4px;border-top:1px solid #E6EAF0}
.fdesks details{border-bottom:1px solid #E6EAF0}
.fdesks summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:15px 2px;font-size:11px;font-weight:800;color:#14181F}
.fdesks summary::-webkit-details-marker{display:none}
.fdesks summary .fcount{font-weight:700;font-size:12px;margin-left:auto;margin-right:14px}
.fdesks summary::after{content:'+';font-size:17px;line-height:1;transition:transform .2s}
.fdesks details[open] summary::after{transform:rotate(45deg)}
.fdesks .flinks{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 18px}
.fdesks .flinks a{display:inline-block;margin:0!important;padding:6px 13px;border:1px solid #E3E8EF;background:#fff;font-size:12.5px;text-decoration:none;transition:border-color .16s,color .16s}
.fdesks .flinks a:hover{}

/* ---- lifted block 14 ---- */
/* The footer grid used to be redefined here with !important, five columns wide, which beat the shared theme and left one link group per row and a 4,179px footer. The chrome is the English chrome: obc-theme.css owns the footer layout and this edition does not argue with it. */
footer .fgrid > div{margin:0;min-width:0}
footer .fgrid a{overflow-wrap:anywhere}
.fdesks{margin-top:12px}

/* ---- lifted block 15 ---- */
.obc-lifeart{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.obc-lifeart svg{position:absolute;right:-40px;top:0;height:100%;min-width:640px;opacity:.85}
@media(max-width:900px){.obc-lifeart svg{opacity:.35}}
.obc-tl{margin-top:26px}
.obc-tl .tl-row{margin-bottom:34px}
.obc-tl .tl-head b{display:block;font-size:17px;color:#14181F}
.obc-tl .tl-head span{display:block;font-size:13.5px;margin:3px 0 14px}
.obc-tl .tl-track{position:relative;height:8px}
.obc-tl .tl-fill{position:absolute;inset:0 auto 0 0;width:0;transition:width 1.1s cubic-bezier(.22,.8,.32,1)}
.obc-tl.on .tl-fill{width:var(--w)}
.obc-tl .tl-fill-obc{}
.obc-tl .tl-fill-frt{transition-duration:1.7s}
.obc-tl .tl-dot{position:absolute;top:50%;width:13px;height:13px;transform:translate(-50%,-50%);background:#fff;border:2.5px solid #C3CEDD;z-index:1}
.obc-tl .tl-dot-end{}
.obc-tl .tl-labels{position:relative;height:2.6em;margin-top:10px}
.obc-tl .tl-labels span{position:absolute;top:0;transform:translateX(-50%);font-size:12.5px;white-space:nowrap;font-weight:600}
.obc-tl .tl-labels span:first-child{transform:none}
.obc-tl .tl-labels .tl-win{font-weight:800;transform:translateX(-24%)}
.obc-tl .tl-labels .tl-end{font-weight:800;transform:translateX(-38%)}
.obc-tl .tl-axis{display:flex;justify-content:space-between;border-top:1px solid #E6EAF0;padding-top:10px;font-size:12px;font-weight:600}
@media(max-width:700px){
  .obc-tl .tl-min{display:none}
  .obc-tl .tl-labels{display:flex;justify-content:space-between;gap:10px;height:auto;min-height:1.5em}
  .obc-tl .tl-labels span{position:static;transform:none!important;font-size:11.5px;white-space:normal}
  .obc-tl .tl-labels .tl-end,.obc-tl .tl-labels .tl-win{text-align:right}
}
@media(max-width:420px){.obc-tl .tl-labels span:not(.tl-win):not(.tl-end):not(:first-child){display:none}}
@media(prefers-reduced-motion:reduce){.obc-tl .tl-fill{transition:none}.obc-tl.on .tl-fill{width:var(--w)}}

/* ---- lifted block 16 ---- */
.qe{--qe-bg:#0d1b30;--qe-line:rgba(255,255,255,.09)}
.qe-win{overflow:hidden;border:1px solid var(--qe-line)}
.qe-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--qe-line)}
.qe-bar span{width:10px;height:10px;background:rgba(255,255,255,.18)}
.qe-bar span:first-child{}.qe-bar span:nth-child(2){}.qe-bar span:nth-child(3){}
.qe-bar b{margin-left:10px;font-size:12.5px;color:rgba(255,255,255,.62);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qe-msg{padding:16px 18px;border-bottom:1px solid var(--qe-line)}.qe-msg:last-child{border-bottom:0}
.qe-meta{font-size:11px;color:rgba(255,255,255,.45);font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.qe-meta b{}
.qe-stamp{font-style:normal;font-weight:700;font-size:11px;border:1px solid rgba(74,222,128,.32);padding:2px 9px}
.qe-in p{color:rgba(255,255,255,.8);font-size:14.5px;margin:0}
.qe-offer{font-size:13.5px}
.qe-line,.qe-rule,.qe-total,.qe-foot,.qe-sub{opacity:0;transform:translateY(7px)}
.qe.on .qe-line,.qe.on .qe-rule,.qe.on .qe-total,.qe.on .qe-foot,.qe.on .qe-sub{animation:qeIn .44s cubic-bezier(.22,.8,.32,1) forwards;animation-delay:calc(var(--i) * .09s)}
@keyframes qeIn{to{opacity:1;transform:none}}
.qe-line{display:flex;gap:14px;padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.07)}
.qe-line span{flex:0 0 118px;font-size:10.5px;color:rgba(255,255,255,.42);font-weight:800;padding-top:3px}
.qe-line b{color:#fff;font-weight:600}
.qe-route b{font-variant-numeric:tabular-nums}
.qe-rule{margin:16px 0 6px;font-size:10.5px;font-weight:800}
.qe-total{margin-top:18px;padding:16px 18px;border:1px solid rgba(215,25,32,.34)}
.qe-total span{display:block;font-size:10.5px;font-weight:800}
.qe-total b{display:block;font-size:25px;color:#fff;margin-top:5px;font-variant-numeric:tabular-nums;line-height:1.25}
.qe-total em{display:block;font-style:normal;font-size:12.5px;color:rgba(255,255,255,.6);margin-top:6px}
.qe-alt{font-size:15px;color:rgba(255,255,255,.55);font-weight:600}
.qe-foot{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.qe-valid,.qe-conf{font-size:11.5px;font-weight:700;padding:6px 12px}
.qe-valid{border:1px solid rgba(248,113,113,.3)}
.qe-conf{border:1px solid rgba(74,222,128,.3)}
.qe-sub{margin-top:10px;font-size:12px;color:rgba(255,255,255,.42)}
.qe-confirm{font-weight:800}
.qe-last{}
@media(max-width:560px){.qe-line{flex-direction:column;gap:2px}.qe-line span{flex:none}.qe-total b{font-size:20px}.qe-alt{display:block;font-size:13px;margin-top:2px}}
@media(prefers-reduced-motion:reduce){.qe-line,.qe-rule,.qe-total,.qe-foot,.qe-sub{opacity:1;transform:none;animation:none}}

/* ---- lifted block 17 ---- */
/* The offer example, restyled as a light e-mail client — high contrast, readable
   on a phone in sunlight, and unmistakably "an email" rather than a chat app. */
.qe-win{background:#fff;border:1px solid #D8DFE9}
.qe-bar{border-bottom:1px solid #E3E8F0;padding:13px 18px}
.qe-bar span{display:none}
.qe-bar:before{content:"\2709";font-size:16px;margin-right:10px}
.qe-bar b{margin-left:0;font-size:14px;font-weight:800}
.qe-msg{border-bottom:1px solid #EDF1F6;background:#fff}
.qe-in{border-left:3px solid #D8DFE9}
.qe-out{border-left:3px solid #D71920}
.qe-meta{}
.qe-meta b{}
.qe-out .qe-meta b{}
.qe-stamp{border:1px solid #BBE5C8}
.qe-in p{font-size:15px;line-height:1.65}
.qe-line{border-bottom:1px dashed #E9EEF5}
.qe-line span{}
.qe-line b{font-weight:700}
.qe-route b{}
.qe-rule{}
.qe-total{border:1px solid #F2D9A6}
.qe-total span{}
.qe-total b{}
.qe-total em{}
.qe-alt{}
.qe-total em .qe-alt{}
.qe-valid{border:1px solid #F5C6C6}
.qe-conf{border:1px solid #BBE5C8}
.qe-sub{}
.qe-confirm{}
.qe-last{}
@media(max-width:560px){
  .qe-msg{padding:15px 15px}
  .qe-in p{font-size:15.5px}
  .qe-offer{font-size:14px}
  .qe-line b{font-size:14.5px}
  .qe-bar b{font-size:13px;white-space:normal}
  .qe-total b{font-size:21px}
}

/* ---- lifted block 18 ---- */
.obc-cases{padding:44px 24px;background:#fff}
.obc-cases .cwrap{max-width:1150px;margin:0 auto}
.obc-cases .chead span{font-size:11px;font-weight:800}
.obc-cases .chead h2{font-size:24px;color:#14181F;margin:8px 0 6px}
.obc-cases .chead p{font-size:13px;margin:0 0 22px}
.obc-cases .cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.obc-cases .ccard{border:1px solid #E2E8F2;padding:20px;display:flex;flex-direction:column}
.obc-cases .ctop{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.obc-cases .cind{font-size:11px;font-weight:800;border:1px solid #F2D9A6;padding:4px 11px}
.obc-cases .clane{font-weight:800;font-size:14px;color:#14181F}
.obc-cases .cstory{font-size:13.5px;line-height:1.6;margin:0 0 14px}
.obc-cases .csteps{border-top:1px dashed #E2E8F2;padding-top:12px;margin-top:auto}
.obc-cases .cstep{display:flex;justify-content:space-between;font-size:12.5px;padding:3.5px 0}
.obc-cases .cstep b{font-variant-numeric:tabular-nums;color:#14181F;font-weight:700}
.obc-cases .cout{margin-top:12px;font-size:12.5px;font-weight:700;border:1px solid #ABEFC6;padding:8px 11px}
.obc-cases .cnote{font-size:11.5px;margin-top:14px}
@media(max-width:860px){.obc-cases .cgrid{grid-template-columns:1fr}}

/* ---- lifted block 19 ---- */
.obc-her{padding:40px 24px}
.obc-her .hwrap{max-width:1150px;margin:0 auto}
.obc-her .hpanel{position:relative;margin:0;overflow:hidden;border:1px solid #E3E6EA}
.obc-her .hart{display:block;width:100%;height:auto;min-height:210px}
.obc-her .hquote{position:absolute;left:4%;right:34%;top:9%;opacity:0;transform:translateY(14px);transition:opacity .9s ease .15s,transform .9s ease .15s}
.obc-her .hquote.hq-right{left:30%;right:4%;text-align:right}
.obc-her.h-in .hquote{opacity:1;transform:none}
.obc-her .hquote blockquote{margin:0;font-size:clamp(14px,1.75vw,21px);line-height:1.45;color:#14181F;font-weight:700}
.obc-her .hquote blockquote:before{content:"\201C";margin-right:2px}
.obc-her .hquote blockquote:after{content:"\201D";margin-left:2px}
.obc-her .hquote cite{display:block;margin-top:9px;font-style:normal;font-size:12.5px;font-weight:800}
.obc-her .hband-sub{max-width:1150px;margin:12px auto 0;font-size:12.5px;text-align:right}
@keyframes hBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes hArc{to{stroke-dashoffset:-68}}
@keyframes hSun{0%,100%{opacity:.55}50%{opacity:.38}}
@keyframes hBirds{0%{transform:translateX(0)}100%{transform:translateX(220px)}}
@keyframes hFire{0%,100%{opacity:1}50%{opacity:.55}}
.obc-her .h-dhow{animation:hBob 5.5s ease-in-out infinite}
.obc-her .h-arc{animation:hArc 4.5s linear infinite}
.obc-her .h-sun{animation:hSun 7s ease-in-out infinite}
.obc-her .h-birds{animation:hBirds 46s linear infinite alternate}
.obc-her .h-fire{animation:hFire 1.6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.obc-her .h-dhow,.obc-her .h-arc,.obc-her .h-sun,
  .obc-her .h-birds,.obc-her .h-fire{animation:none}}
.obc-her-grand .hquote blockquote{font-size:clamp(16px,2.1vw,26px)}
.obc-her-grand .hpanel{}
@media(max-width:700px){.obc-her{padding:26px 14px}
  .obc-her .hquote{position:static;padding:14px 16px 4px;opacity:1;transform:none}
  .obc-her .hquote blockquote{font-size:14.5px}
  .obc-her .hpanel{}}

/* ---- lifted block 20 ---- */
/* ---------- typography: measure & rhythm ---------- */
h2{line-height:1.2}
h3{line-height:1.3}
#obc-seo h2,.heritage h2,.vs-section h2{line-height:1.15}
section .wrap>p,p.lead,.answer p{max-width:75ch}
.routes-seo-text{max-width:75ch;font-size:14px!important}
#routes .routes-seo-text strong{color:#14181F!important}
footer .wrap>p{max-width:90ch;font-size:13px;line-height:1.7}
/* ---------- WCAG AA color corrections ---------- */
.qe-meta,.qe-sub,.qe-th{}
.oc-l{}
.oc-in i,.oc-note{}
#obc-cases p{}
.cnote,.dver{}
#obc-opsfacts .olead,#obc-opsfacts .onote{}
.desk-kicker{}
.section-tag,.service-tag{}
.vs-badge.ok{}
.vs-badge.no{}
details.faq summary span{}
#route-ticker{}
.uae-tag,.vs-tag{}
.uae-sub strong{}
.desk-stat span{}
.oc-panel button i{}
[style*="color:#059669"]{}
[style*="color:#B3121A"],[style*="color:#B3121A"]{}
span[style*="var(--gold2)"],a[style*="var(--gold2)"]{}
.seo-industry-grid p{}
:is(a,button,summary,[tabindex]):focus-visible{outline:2px solid #B3121A;outline-offset:2px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #B3121A;outline-offset:1px}
#obc-nav-toggle:focus-visible~label.hamb{outline:2px solid #B3121A;outline-offset:2px}
/* ---------- surface consolidation ---------- */
section.alt,.obc-explore{}
/* ---------- interaction polish ---------- */
.qbtn{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.qbtn:hover{transform:translateY(-2px);filter:brightness(1.04)}
.ccard{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.ccard:hover{transform:translateY(-4px)}
details.faq summary{transition:color .16s;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px}
details.faq summary:hover{}
details.faq[open]>*:not(summary){animation:obcFadeIn .28s ease}
@keyframes obcFadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.qf button:hover{}
/* ---------- footer: light, hover accent only ---------- */
footer a:hover{}
footer a[style*="E53A41"]{}
footer .fcount{}
/* ---------- mobile ---------- */
@media(max-width:768px){
  .desknav{position:static}
  footer a,#obc-citylinks a{display:inline-block;padding:8px 0;font-size:13.5px}
  .hamb{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
  #obc-hub table{font-size:13.5px}
  .doc table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  #obc-calc button{min-height:44px}
  .qe-line span:first-child,.qe-rule,.qe-total span{font-size:12px}
  .btn,.btn.ghost{min-height:44px}
}
@media(max-width:480px){
  .hero h1,.hero-h1{line-height:1.13!important}
}

/* ---- lifted block 21 ---- */
/* blocks that sit directly in a section instead of inside .wrap keep the column */
section > .answer,
section > .disclaimer,
section > .note,
main > .answer,
main > .disclaimer,
body > .answer,
body > .disclaimer{max-width:1080px;margin-left:auto!important;margin-right:auto!important;padding-left:22px;padding-right:22px;box-sizing:border-box}
/* the amber compliance card reads as a card again rather than a full-bleed band */
section > .answer{}
@media(max-width:620px){
  section > .answer,section > .disclaimer,main > .answer,main > .disclaimer{padding-left:18px;padding-right:18px}
}

/* ---- lifted block 22 ---- */
:root{--surface:#FFFFFF;--surface-alt:#F7FAFD;--line:#E2E8F2;--ink:#14181F;--ink-2:#41506A;--ink-3:#5B6B82;--brand:#B3121A;--brand-soft:rgba(215,25,32,.10);--sec-pad:56px;--sec-pad-band:34px;--radius:14px;--lift:0 14px 30px -20px rgba(20,24,31,.28);--lift-hover:0 20px 40px -22px rgba(20,24,31,.34)}
@media(max-width:640px){:root{--sec-pad:40px;--sec-pad-band:26px}}

/* ---------- one alt surface, not three ---------- */
section.alt,
#obc-calc.alt,
.obc-explore,
#obc-storyband,
.dsec.alt,
#obc-uaenet{}
.obc-her,
#obc-heritage,
#obc-heritage-mid{}
#obc-cases,
#obc-opsfacts,
#obc-districts,
#obc-aplines{}

/* ---------- one padding scale ---------- */
section > .wrap,
.dsec > .wrap,
#obc-opsfacts .owrap,
#obc-cases .cwrap,
#obc-districts .dwrap,
#obc-aplines .alwrap,
#obc-uaenet .uwrap{padding-top:var(--sec-pad);padding-bottom:var(--sec-pad)}
#obc-storyband .wrap,
.obc-her .wrap{padding-top:var(--sec-pad-band);padding-bottom:var(--sec-pad-band)}

/* ---------- seams: no stray first/last margins inside a section ---------- */
section .wrap > :first-child,
.dsec .wrap > :first-child{margin-top:0}
section .wrap > :last-child,
.dsec .wrap > :last-child{margin-bottom:0}

/* ---------- heading scale ---------- */
section > .wrap > h2,
.dsec > .wrap > h2{font-size:clamp(24px,2.5vw,33px);line-height:1.18}
#obc-opsfacts h2,
#obc-cases h2,
#obc-storyband h2,
#obc-aplines h2,
#obc-districts h2,
.ms-tl h2,
.ms-lane h2{font-size:clamp(19px,1.7vw,22px);line-height:1.25}
h2{line-height:1.2}
h3{line-height:1.3}

/* ---------- one elevation, one radius, one hover ---------- */
.card,.ccard,.lm,.rfact,.dnear a,.hub-grid a,.ms-card,.sm-list a,
#obc-districts .dgrid a,#obc-uaenet .ugrid a,.obc-citygrid a,.rrel a{}
.card,.ccard,.dnear a,.hub-grid a,.ms-card,#obc-districts .dgrid a,
#obc-uaenet .ugrid a,.obc-citygrid a,.rrel a{}
.ccard:hover,.dnear a:hover,.hub-grid a:hover,.ms-card:hover,
#obc-districts .dgrid a:hover,#obc-uaenet .ugrid a:hover,
.obc-citygrid a:hover,.rrel a:hover{}

/* ---------- measure: prose never runs past a readable line ---------- */
section .wrap > p,
.dsec .wrap > p,
p.lead,
.answer p{max-width:74ch}

/* ---------- the one place a strong colour band earns its keep ---------- */
.dclose,.rec{}

/* ---- lifted block 23 ---- */
/* body-copy links: brand amber, underlined, unmistakably clickable */
main p > a:not([class]),
main li > a:not([class]),
main dd > a:not([class]),
main blockquote a:not([class]),
main .answer a:not([class]),
main p > a[style*="B3121A"],
main li > a[style*="B3121A"]{font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;text-decoration-color:rgba(179,18,26,.38);transition:color .15s ease,text-decoration-color .15s ease,background-color .15s ease}
main p > a:not([class]):hover,
main li > a:not([class]):hover,
main dd > a:not([class]):hover,
main blockquote a:not([class]):hover,
main .answer a:not([class]):hover,
main p > a[style*="B3121A"]:hover,
main li > a[style*="B3121A"]:hover{text-decoration-color:#B3121A}
/* on dark bands the amber would fail contrast — use the light gold there */
.ms-hero p > a:not([class]),
.rec p > a:not([class]),
.rec li > a:not([class]),
footer p > a:not([class]),
[class*="navy"] p > a:not([class]){text-decoration-color:rgba(243,199,126,.45)!important}
.ms-hero p > a:not([class]):hover,
.rec p > a:not([class]):hover,
.rec li > a:not([class]):hover,
footer p > a:not([class]):hover{}

/* ---- lifted block 24 ---- */
#obc-crumb{border-bottom:1px solid #EDF2F8}
#obc-crumb .cwrap{max-width:1080px;margin:0 auto;padding:11px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:12.5px;line-height:1.5}
#obc-crumb a{text-decoration:none;font-weight:600;padding:3px 5px;transition:color .14s,background-color .14s}
#obc-crumb a:hover{}
#obc-crumb span.sep{font-size:11px;padding:0 1px}
#obc-crumb span.here{color:#14181F;font-weight:800;padding:3px 5px}
#obc-crumb svg{width:13px;height:13px;vertical-align:-2px;margin-right:3px;opacity:.7}
@media(max-width:620px){
  #obc-crumb .cwrap{padding:9px 18px;font-size:12px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
  #obc-crumb .cwrap::-webkit-scrollbar{display:none}
  #obc-crumb a,#obc-crumb span.here{white-space:nowrap}
}

/* ---- lifted block 25 ---- */
#obc-calc .oc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;max-width:1000px}
#obc-calc .oc-panel,#obc-calc .oc-result{background:#fff;border:1px solid #E2E8F2;padding:22px}
#obc-calc .oc-l{display:block;font-size:11px;font-weight:800;margin:18px 0 8px}
#obc-calc .oc-l:first-child{margin-top:0}
#obc-calc .oc-l b{color:#14181F;font-size:12px}
#obc-calc .oc-pills{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
#obc-calc .oc-pills.oc-2{grid-template-columns:1fr 1fr}
#obc-calc .oc-pills.oc-3{grid-template-columns:repeat(3,1fr)}
#obc-calc .oc-pills button{padding:10px 8px;border:1.5px solid #E2E8F2;background:#fff;font-weight:800;font-size:13px;color:#14181F;cursor:pointer;transition:border-color .15s,background .15s}
#obc-calc .oc-pills button i{display:block;font-style:normal;font-size:10px;font-weight:700;margin-top:2px}
#obc-calc .oc-pills button.on{}
#obc-calc .oc-pills button.on i{}
#obc-calc .oc-in{width:100%;padding:11px 12px;border:1.5px solid #E2E8F2;font-size:14.5px;color:#14181F;background:#fff}
#obc-calc .oc-acwrap{position:relative}
#obc-calc .oc-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;background:#fff;border:1px solid #E2E8F2;max-height:264px;overflow-y:auto;display:none}
#obc-calc .oc-drop.open{display:block}
#obc-calc .oc-drop .ac-item{padding:10px 13px;cursor:pointer;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #F1F4F9;font-size:13.5px}
#obc-calc .oc-drop .ac-item:last-child{border-bottom:0}
#obc-calc .oc-drop .ac-item:hover,#obc-calc .oc-drop .ac-item.selected{}
#obc-calc .oc-drop .ac-item-code{font-weight:800;margin-right:8px}
#obc-calc .oc-drop .ac-item-name{color:#14181F}
#obc-calc .oc-drop .ac-item-sub{font-size:12px;white-space:nowrap}
#obc-calc .oc-drop .ac-no-results{padding:12px;font-size:13px}
#obc-calc .oc-meta{display:block;font-size:12px;margin-top:6px;min-height:15px}
#obc-calc input[type=range]{width:100%;margin-top:2px}
#obc-calc .oc-chk{display:flex;gap:8px;align-items:center;font-size:13px;margin-top:8px}
#obc-calc .oc-lines{border-bottom:1px solid #EDF1F6;padding-bottom:14px;min-height:150px}
#obc-calc .oc-line{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:14px;border-bottom:1px dashed #EDF1F6}
#obc-calc .oc-line b{font-variant-numeric:tabular-nums;white-space:nowrap;color:#14181F}
#obc-calc .oc-line.oc-dim span{}
#obc-calc .oc-total{padding:14px 0 4px}
#obc-calc .oc-total span{display:block;font-size:10.5px;font-weight:800}
#obc-calc .oc-total b{display:block;font-size:26px;color:#14181F;margin-top:4px;font-variant-numeric:tabular-nums}
#obc-calc .oc-total em{display:block;font-style:normal;font-size:13px;margin-top:3px}
#obc-calc .oc-sendbox{margin-top:14px;padding:14px;border:1px solid #F2D9A6}
#obc-calc .oc-sendtitle{display:block;font-size:13.5px;color:#14181F;margin-bottom:10px}
#obc-calc .oc-sendrow{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#obc-calc .oc-mt{margin-top:8px}
#obc-calc .oc-mb{margin-bottom:8px}
#obc-calc .oc-who{margin-bottom:10px}
#obc-calc .oc-who button{font-size:12.5px;padding:9px 6px}
#obc-calc .oc-cta{display:block;width:100%;margin-top:10px;padding:14px;border:0;cursor:pointer;font-weight:800;font-size:15px;color:#14181F;transition:transform .15s}
#obc-calc .oc-cta:hover{transform:translateY(-2px)}
#obc-calc .oc-cta:disabled{opacity:.75;cursor:default;transform:none}
#obc-calc .oc-ok{margin-top:10px;padding:11px 13px;border:1px solid #ABEFC6;font-size:13px;font-weight:600;line-height:1.5}
#obc-calc .oc-err{margin-top:10px;padding:11px 13px;border:1px solid #FECDCA;font-size:13px;font-weight:600;line-height:1.5}
#obc-calc .oc-note{font-size:12px;margin:12px 0 0;line-height:1.6}
@media(max-width:860px){#obc-calc .oc-grid{grid-template-columns:1fr}}
@media(max-width:560px){#obc-calc .oc-pills{grid-template-columns:1fr 1fr}
  #obc-calc .oc-pills.oc-3{grid-template-columns:1fr 1fr}
  #obc-calc .oc-sendrow{grid-template-columns:1fr}}

/* ---- lifted block 26 ---- */
footer .flinks a{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:none;line-height:1.5}
footer .fcount{white-space:nowrap}

/* ---- lifted block 27 ---- */
/* contrast: lift every muted #7A8AA3 use to #5B6B82 (5.4:1 on white) */
.rfact span,.dnear span,#obc-calc .oc-l,.oc-meta,.hubtab th,.hubtab td span,
#obc-depth2 th,#obc-depth2 .hubtab td span,#obc-depth2 p[style*="7A8AA3"],
.fcount,.crumbfaint,[style*="color:#7A8AA3"],[style*="color:#7a8aa3"]{}
/* keyboard-scrollable strips get a visible focus ring */
[data-kbscroll]:focus-visible{outline:2px solid #B3121A;outline-offset:2px}

/* ---- lifted block 28 ---- */
.oc-note{}
.tl-axis span{}
.oc-pills button i{}
.oc-pills button.on i{}
.vh-obc{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
footer h3.f4{font-size:12px;font-weight:700;margin:0 0 16px;color:#14181F}

/* ---- lifted body block 00 ---- */
#obc-depth3{}
#obc-depth3 .d3wrap{max-width:1080px;margin:0 auto;padding:var(--sec-pad,52px) 22px}
#obc-depth3 h2{font-size:clamp(22px,2.3vw,29px);color:#14181F;margin:0 0 12px}
#obc-depth3 h3{font-size:17px;color:#14181F;margin:28px 0 10px}
#obc-depth3 p{font-size:16px;line-height:1.75;max-width:74ch;margin:0 0 16px}
#obc-depth3 .aptwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
#obc-depth3 table{width:100%;border-collapse:separate;border-spacing:0;margin:16px 0 6px;font-size:14.5px;min-width:520px}
#obc-depth3 th{text-align:left;font-size:11.5px;padding:0 14px 9px 0;font-weight:800}
#obc-depth3 td{padding:12px 14px 12px 0;border-top:1px solid #E2E8F2;vertical-align:top}
#obc-depth3 td b{color:#14181F;font-size:15px}
#obc-depth3 td.n{white-space:nowrap;font-variant-numeric:tabular-nums;color:#14181F;font-weight:700}
#obc-depth3 .lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:9px;margin:14px 0 4px}
#obc-depth3 .lgrid a{display:block;padding:11px 14px;background:#fff;border:1px solid #E2E8F2;text-decoration:none;color:#14181F;font-weight:700;font-size:14.5px;transition:border-color .14s,box-shadow .14s,color .14s}
#obc-depth3 .lgrid a:hover{}
#obc-depth3 .lgrid a span{display:block;font-weight:500;font-size:12.5px;margin-top:3px}
#obc-depth3 .none{font-size:15px;background:#fff;border:1px dashed #D7E0EC;padding:14px 17px;max-width:74ch}

/* ---- lifted body block 01 ---- */
#obc-journey{background:#14181F}
#obc-journey .jwrap{max-width:1080px;margin:0 auto;padding:44px 22px 48px}
#obc-journey .jkick{font-size:11.5px;font-weight:800;margin:0 0 6px}
#obc-journey h2{font-size:clamp(20px,2vw,26px);margin:0 0 4px}
#obc-journey .jsub{font-size:14.5px;margin:0 0 20px}
#obc-journey .jgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:11px}
#obc-journey .jgrid a{display:block;padding:15px 17px 13px;border:1px solid rgba(243,199,126,.22);background:rgba(255,255,255,.035);text-decoration:none;transition:border-color .16s,background-color .16s,transform .16s}
#obc-journey .jgrid a:hover{transform:translateY(-2px)}
#obc-journey .jgrid i{display:block;font-style:normal;font-size:10.5px;font-weight:800;margin-bottom:5px}
#obc-journey .jgrid b{display:block;font-size:15.5px;line-height:1.3}
#obc-journey .jgrid span{display:block;font-size:12.5px;margin-top:4px;line-height:1.5}
#obc-journey .jgrid svg{float:right;width:15px;height:15px;margin-top:2px;stroke:#FF7075;opacity:.8}

/* ---- lifted body block 02 ---- */
.obcr{opacity:0;transform:translateY(13px);transition:opacity .55s ease,transform .55s ease}
.obcr-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.obcr{opacity:1;transform:none;transition:none}}
/* ---- German additions -------------------------------------------------
   Three small things the English tree has no equivalent for. Every value is a
   token that already exists in the theme: the charcoal #14181F, the brand red
   #D71920, the hairline #E3E6EA, the muted #5B6472. No new colour is defined. */

/* the language switch, in the utility strip and again in the footer */
html body .obar .olang{margin-left:auto;display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:12.5px;font-weight:700;text-decoration:none;white-space:nowrap}
html body .obar .olang:hover{color:#E53A41}
html body .obar .oports+.olang{margin-left:18px}
html body .flang{display:block;margin-top:10px;font-weight:700}

/* "read this in English": the labelled way out of a German page that has no
   German substance behind it. A rule, a line of explanation, one ghost button. */
html body .obc-en{border-top:1px solid #E3E6EA;margin:26px 0 0;padding:22px 0 0;text-align:center}
html body .obc-en p{margin:0 0 14px;font-size:15px;line-height:1.65;color:#5B6472;max-width:66ch;margin-left:auto;margin-right:auto}
html body .obc-en .btn.ghost{display:inline-flex}
html body section.obc-endeep{background:#F5F6F8;border-top:1px solid #E3E6EA;border-bottom:1px solid #E3E6EA}

/* ---- Volle Reihen, immer ------------------------------------------------
   Beanstandet war eine Textspalte, die die linke Haelfte eines 1080er Bandes
   fuellt und rechts 542 Pixel Weiss stehen laesst. Ein mehrspaltiger Fluss
   (columns:2) macht genau das, sobald nur ein Element darin steht.

   Deshalb hier ueberall ein Zwoelferraster statt eines Spaltenflusses. Jedes
   Element belegt drei oder sechs Spuren, und die letzte Reihe wird ueber die
   Restposition aufgeteilt: bleibt eines uebrig, nimmt es die ganze Breite,
   bleiben zwei, teilen sie sich die Breite. Das gilt fuer jede Anzahl, nicht
   nur fuer die, an die jemand gedacht hat. Dasselbe Prinzip wie .rowfill in
   der geteilten Chrome, nur ohne feste Zahlen.
   ---------------------------------------------------------------------- */

/* die Faktenliste auf einer Strecken- oder Flughafenseite: ein Punkt, eine
   Haarlinie, ein Wert. Kein Kastengitter, das wurde abgelehnt. */
html body .de-rail{list-style:none;margin:22px auto 0;padding:0;max-width:1080px;
  display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:48px;text-align:left}
html body .de-rail>li{grid-column:span 6;display:block;padding:15px 0 14px 20px;
  border-top:1px solid #E3E6EA;position:relative;font-size:15px;line-height:1.7;color:#3D4552}
html body .de-rail>li::before{content:'';position:absolute;left:0;top:23px;width:7px;height:7px;border-radius:50%;background:#D71920}
html body .de-rail>li:nth-child(-n+2){border-top:0}
html body .de-rail>li b{display:block;color:#14181F;font-size:15px;margin-bottom:2px}
/* letzte Reihe: ein einzelnes Element nimmt die ganze Breite */
html body .de-rail>li:last-child:nth-child(odd){grid-column:span 12}
html body .de-rail>li:last-child:nth-child(odd) b{display:inline-block;min-width:270px;margin:0 14px 0 0;vertical-align:top}
@media(max-width:760px){
  html body .de-rail{grid-template-columns:minmax(0,1fr);column-gap:0}
  html body .de-rail>li,html body .de-rail>li:last-child:nth-child(odd){grid-column:auto}
  html body .de-rail>li:nth-child(-n+2){border-top:1px solid #E3E6EA}
  html body .de-rail>li:first-child{border-top:0}
  html body .de-rail>li:last-child:nth-child(odd) b{display:block;min-width:0;margin:0 0 2px}
}

/* Vorspann und Fliesstext nebeneinander, wenn es nur einen Fliesstext-Absatz
   gibt. Frueher stand der Absatz allein in Spalte eins und Spalte zwei blieb
   leer. Jetzt steht links der Vorspann und rechts der Absatz. */
html body .de-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:0 48px;max-width:1080px;margin:16px auto 0;text-align:left;align-items:start}
html body .de-duo>div{padding-top:22px;border-top:1px solid #E3E6EA;min-width:0}
html body .de-duo .pr-lead{text-align:left;max-width:none;margin:0;font-size:16.5px;line-height:1.72}
html body .de-duo p{margin:0 0 11px;font-size:15px;line-height:1.72;color:#3D4552;max-width:none}
html body .de-duo p:last-child{margin-bottom:0}
@media(max-width:900px){
  html body .de-duo{grid-template-columns:minmax(0,1fr);gap:0}
  html body .de-duo>div+div{margin-top:2px}
}

/* Fragen und Antworten: dasselbe Raster, damit die letzte Frage nicht allein
   in der linken Spalte steht. */
html body .obc-qa.de-qa{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:48px;max-width:1080px;margin:24px auto 0;text-align:left}
html body .obc-qa.de-qa>.qa{grid-column:span 6;padding:20px 0 18px;border-top:1px solid #E3E6EA}
html body .obc-qa.de-qa>.qa:nth-child(-n+2){border-top:0;padding-top:6px}
html body .obc-qa.de-qa>.qa:last-child:nth-child(odd){grid-column:span 12}
html body .obc-qa.de-qa>.qa .qa-a{max-width:none}
@media(max-width:900px){
  html body .obc-qa.de-qa{grid-template-columns:minmax(0,1fr);column-gap:0}
  html body .obc-qa.de-qa>.qa,html body .obc-qa.de-qa>.qa:last-child:nth-child(odd){grid-column:auto}
  html body .obc-qa.de-qa>.qa:nth-child(-n+2){border-top:1px solid #E3E6EA;padding-top:20px}
  html body .obc-qa.de-qa>.qa:first-child{border-top:0;padding-top:6px}
}

/* Kachelgitter. Vier je Reihe, und die letzte Reihe wird aufgeteilt, statt
   Luecken zu lassen: einer nimmt zwoelf Spuren, zwei nehmen sechs, drei
   nehmen vier. Fuer jede Anzahl, auch fuer 139. */
html body .city-grid.rowfill{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;margin-top:14px}
html body .city-grid.rowfill>a{grid-column:span 3;min-width:0}
html body .city-grid.rowfill>a:last-child:nth-child(4n+1){grid-column:span 12}
html body .city-grid.rowfill>a:nth-last-child(2):nth-child(4n+1),
html body .city-grid.rowfill>a:last-child:nth-child(4n+2){grid-column:span 6}
html body .city-grid.rowfill>a:nth-last-child(3):nth-child(4n+1),
html body .city-grid.rowfill>a:nth-last-child(2):nth-child(4n+2),
html body .city-grid.rowfill>a:last-child:nth-child(4n+3){grid-column:span 4}
@media(max-width:1000px){
  html body .city-grid.rowfill>a{grid-column:span 4}
  html body .city-grid.rowfill>a:last-child:nth-child(4n+1),
  html body .city-grid.rowfill>a:nth-last-child(2):nth-child(4n+1),
  html body .city-grid.rowfill>a:last-child:nth-child(4n+2),
  html body .city-grid.rowfill>a:nth-last-child(3):nth-child(4n+1),
  html body .city-grid.rowfill>a:nth-last-child(2):nth-child(4n+2),
  html body .city-grid.rowfill>a:last-child:nth-child(4n+3){grid-column:span 4}
  html body .city-grid.rowfill>a:last-child:nth-child(3n+1){grid-column:span 12}
  html body .city-grid.rowfill>a:nth-last-child(2):nth-child(3n+1),
  html body .city-grid.rowfill>a:last-child:nth-child(3n+2){grid-column:span 6}
}
@media(max-width:620px){
  html body .city-grid.rowfill{grid-template-columns:minmax(0,1fr)}
  html body .city-grid.rowfill>a{grid-column:auto}
}

/* Der Fussbereich: acht Gruppen, vier Spalten, zwei volle Reihen. Keine
   Anordnung, bei der eine Spalte leer bleibt, weil die Anzahl aufgeht. */
html body footer .fgrid.de-fgrid{display:grid;columns:auto;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 30px}
html body footer .fgrid.de-fgrid>div{min-width:0;margin:0}
html body footer .fgrid.de-fgrid>div>h3.f4{margin:0 0 12px}
@media(max-width:1000px){html body footer .fgrid.de-fgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}}
@media(max-width:560px){html body footer .fgrid.de-fgrid{grid-template-columns:minmax(0,1fr);gap:26px}}

/* ---- Der Streckenrechner, deutsche Ausgabe ------------------------------
   Das Werkzeug selbst liegt in /assets/de/obc-rechner-de.js. Die Chrome dafuer
   (rq-mask, rc-sheet, rc-tl) steht in der geteilten obc-theme.css und wird
   hier nicht wiederholt. Was hier steht, ist nur das, was die deutsche Seite
   zusaetzlich braucht. */
html body .rc-de-wrap{max-width:1080px;margin:0 auto}
html body .rc-de-note{margin:16px auto 0;max-width:78ch;font-size:13.5px;line-height:1.65;color:#5B6472;text-align:center}
html body #rc-out:empty{display:none}
html body .rc-de-legend{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 40px;max-width:1080px;margin:20px auto 0;text-align:left}
html body .rc-de-legend>div{grid-column:span 6;padding:16px 0 14px;border-top:1px solid #E3E6EA;min-width:0}
html body .rc-de-legend>div:nth-child(-n+2){border-top:0}
html body .rc-de-legend>div:last-child:nth-child(odd){grid-column:span 12}
html body .rc-de-legend dt{font-size:15px;font-weight:800;color:#14181F;margin:0 0 4px}
html body .rc-de-legend dt i{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#B3121A;margin-left:8px}
html body .rc-de-legend dd{margin:0;font-size:14.5px;line-height:1.7;color:#3D4552}
@media(max-width:900px){
  html body .rc-de-legend{grid-template-columns:minmax(0,1fr);gap:0}
  html body .rc-de-legend>div,html body .rc-de-legend>div:last-child:nth-child(odd){grid-column:auto}
  html body .rc-de-legend>div:nth-child(-n+2){border-top:1px solid #E3E6EA}
  html body .rc-de-legend>div:first-child{border-top:0}
}

/* ---- Zahlenband fuer die Verguetung ------------------------------------- */
html body .de-money{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;max-width:1080px;margin:20px auto 0;text-align:left}
html body .de-money>div{grid-column:span 3;background:#fff;border:1px solid #E3E8EF;border-top:3px solid #D71920;padding:18px 18px 16px;min-width:0}
html body .de-money>div:last-child:nth-child(4n+1){grid-column:span 12}
html body .de-money>div:nth-last-child(2):nth-child(4n+1),
html body .de-money>div:last-child:nth-child(4n+2){grid-column:span 6}
html body .de-money>div:nth-last-child(3):nth-child(4n+1),
html body .de-money>div:nth-last-child(2):nth-child(4n+2),
html body .de-money>div:last-child:nth-child(4n+3){grid-column:span 4}
html body .de-money b{display:block;font-size:21px;line-height:1.15;color:#14181F;font-variant-numeric:tabular-nums}
html body .de-money i{display:block;font-style:normal;font-size:12.5px;font-weight:700;color:#B3121A;margin:2px 0 8px}
html body .de-money span{display:block;font-size:13.5px;line-height:1.6;color:#3D4552}
@media(max-width:1000px){html body .de-money>div{grid-column:span 6}}
@media(max-width:620px){html body .de-money>div{grid-column:span 12}}

/* =========================================================================
   Bandtypen der Neufassung.

   Der gemeldete Fehler war immer derselbe: eine mittige Ueberschrift, ein
   mittiger Vorspann ueber die volle Breite, und darunter ein linksbuendiger
   Absatz auf etwa 45 Prozent der Bandbreite mit 542 Pixeln Weiss daneben. Er
   entstand, wo ein Gitter mit einer ungeraden Zahl von Kindern endete. Die
   Antwort ist keine Ausnahmeregel je Bandtyp, sondern eine Bauweise: entweder
   laeuft der Text ueber die volle Textbreite, oder das Band ist ein echtes
   Zweispaltenband mit Inhalt in beiden Spalten, oder das Gitter teilt seine
   letzte Reihe auf. Jedes Band unten faellt in genau einen dieser drei Faelle.
   ========================================================================= */

/* Bandvorzeile ueber der Ueberschrift */
html body section .wrap>.bk{display:block;margin:0 0 8px;font-size:11.5px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;color:#B3121A;text-align:center}

/* --- Fliesstext ---------------------------------------------------------- */
/* Ein einzelner Absatz: volle Textbreite, mittig gesetzter Block, kein Rest. */
html body .de-prose{max-width:78ch;margin:16px auto 0;text-align:left}
html body .de-prose>p{margin:0 0 14px;font-size:16px;line-height:1.78;color:#3D4552;max-width:none}
html body .de-prose>p:last-child{margin-bottom:0}

/* Drei und mehr Absaetze: Spaltenfluss. Der Text bricht selbst um, also kann
   keine Spalte leer bleiben, egal wie viele Absaetze es sind. */
html body .de-flow{max-width:1080px;margin:18px auto 0;text-align:left;
  column-count:2;column-gap:52px;column-rule:1px solid #E3E6EA}
html body .de-flow>p{margin:0 0 14px;font-size:15.5px;line-height:1.76;color:#3D4552;max-width:none;
  break-inside:avoid-column}
html body .de-flow>p:last-child{margin-bottom:0}
@media(max-width:900px){html body .de-flow{column-count:1;column-rule:0}}

/* --- Karten -------------------------------------------------------------- */
html body .de-cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;
  max-width:1080px;margin:22px auto 0;text-align:left}
html body .de-cards>.de-card{grid-column:span 3;background:#fff;border:1px solid #E3E8EF;
  border-top:3px solid #D71920;padding:20px 20px 18px;min-width:0}
html body section.alt .de-cards>.de-card{background:#fff}
html body .de-cards>.de-card:last-child:nth-child(4n+1){grid-column:span 12}
html body .de-cards>.de-card:nth-last-child(2):nth-child(4n+1),
html body .de-cards>.de-card:last-child:nth-child(4n+2){grid-column:span 6}
html body .de-cards>.de-card:nth-last-child(3):nth-child(4n+1),
html body .de-cards>.de-card:nth-last-child(2):nth-child(4n+2),
html body .de-cards>.de-card:last-child:nth-child(4n+3){grid-column:span 4}
html body .de-cards .de-n{display:block;font-size:11.5px;font-weight:800;letter-spacing:.1em;
  color:#B3121A;margin:0 0 8px;font-variant-numeric:tabular-nums}
html body .de-cards h3{margin:0 0 7px;font-size:16px;line-height:1.3;color:#14181F;letter-spacing:-.01em}
html body .de-cards p{margin:0;font-size:14.5px;line-height:1.7;color:#3D4552;max-width:none}
@media(max-width:1000px){
  html body .de-cards>.de-card,
  html body .de-cards>.de-card:last-child:nth-child(4n+1),
  html body .de-cards>.de-card:nth-last-child(2):nth-child(4n+1),
  html body .de-cards>.de-card:last-child:nth-child(4n+2),
  html body .de-cards>.de-card:nth-last-child(3):nth-child(4n+1),
  html body .de-cards>.de-card:nth-last-child(2):nth-child(4n+2),
  html body .de-cards>.de-card:last-child:nth-child(4n+3){grid-column:span 6}
  html body .de-cards>.de-card:last-child:nth-child(odd){grid-column:span 12}
}
@media(max-width:620px){html body .de-cards>.de-card{grid-column:span 12}}

/* --- Nummerierter Ablauf ------------------------------------------------- */
html body ol.de-steps{list-style:none;margin:22px auto 0;padding:0;max-width:1080px;text-align:left;
  counter-reset:none}
html body ol.de-steps>li{display:grid;grid-template-columns:74px minmax(0,1fr);gap:0 22px;
  padding:20px 0 18px;border-top:1px solid #E3E6EA}
html body ol.de-steps>li:first-child{border-top:0;padding-top:6px}
html body ol.de-steps .de-sn{font-size:26px;font-weight:800;line-height:1;color:#D71920;
  font-variant-numeric:tabular-nums;letter-spacing:-.03em}
html body ol.de-steps h3{margin:0 0 5px;font-size:16.5px;line-height:1.3;color:#14181F}
html body ol.de-steps p{margin:0;font-size:15px;line-height:1.75;color:#3D4552;max-width:72ch}
@media(max-width:620px){
  html body ol.de-steps>li{grid-template-columns:minmax(0,1fr);gap:6px}
  html body ol.de-steps .de-sn{font-size:20px}
}

/* --- Begriffsleiste: das span ersetzt den nackten Textknoten ------------- */
html body .de-rail>li>span{display:block}
/* zwei Spalten, und ein einzelner Rest nimmt die ganze Reihe */
html body .de-rail.rowfill2>li:last-child:nth-child(odd){grid-column:span 12}

/* --- Fragen: derselbe Ausgleich ------------------------------------------ */
html body .obc-qa.de-qa.rowfill2>.qa:last-child:nth-child(odd){grid-column:span 12}

/* --- Echtes Zweispaltenband: links Text, rechts eine belegte Tafel ------- */
html body .de-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
  gap:0 52px;max-width:1080px;margin:20px auto 0;text-align:left;align-items:start}
html body .de-split-a>p{margin:0 0 14px;font-size:15.5px;line-height:1.76;color:#3D4552;max-width:none}
html body .de-split-a>p:last-child{margin-bottom:0}
html body .de-split-b{background:#fff;border:1px solid #E3E8EF;border-top:3px solid #D71920;padding:20px}
html body .de-split-b h3{margin:0 0 12px;font-size:13px;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;color:#14181F}
html body .de-split-b ul{list-style:none;margin:0;padding:0}
html body .de-split-b li{padding:11px 0;border-top:1px solid #E3E6EA;font-size:14px;line-height:1.65;color:#3D4552}
html body .de-split-b li:first-child{border-top:0;padding-top:0}
html body .de-split-b li b{display:block;color:#14181F}
@media(max-width:900px){html body .de-split{grid-template-columns:minmax(0,1fr);gap:22px}}

/* --- Zahlenband ---------------------------------------------------------- */
html body .de-figs-bare{background:#14181F;padding:26px 0}
html body .de-figs-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;
  max-width:1080px;margin:0 auto;text-align:left}
html body .de-figs-bare .de-figs-grid>div{grid-column:span 3;padding:4px 26px;border-left:1px solid #333A45;min-width:0}
html body .de-figs-bare .de-figs-grid>div:first-child{border-left:0;padding-left:0}
html body .de-figs-bare .de-figs-grid b{display:block;font-size:30px;font-weight:800;letter-spacing:-.03em;
  line-height:1;color:#fff;font-variant-numeric:tabular-nums}
html body .de-figs-bare .de-figs-grid span{display:block;margin-top:8px;font-size:13px;line-height:1.45;color:#A9B3C0}
html body section.de-figs .de-figs-grid{margin-top:20px}
html body section.de-figs .de-figs-grid>div{grid-column:span 3;padding:16px 0 14px;border-top:2px solid #D71920;
  margin-right:26px;min-width:0}
html body section.de-figs .de-figs-grid b{display:block;font-size:28px;font-weight:800;color:#14181F;line-height:1}
html body section.de-figs .de-figs-grid span{display:block;margin-top:7px;font-size:13px;line-height:1.45;color:#5B6472}
@media(max-width:900px){
  html body .de-figs-grid>div{grid-column:span 6;padding:14px 20px!important;
    border-left:0!important;border-top:1px solid #333A45}
  html body section.de-figs .de-figs-grid>div{border-top:2px solid #D71920}
  html body .de-figs-bare{padding:14px 0}
}
@media(max-width:520px){html body .de-figs-grid>div{grid-column:span 12}}

/* --- Schlussband --------------------------------------------------------- */
html body section.de-cta{background:#14181F;padding:44px 0;margin-top:0}
html body .de-cta-in{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:24px 52px;max-width:1080px;margin:0 auto;align-items:center;text-align:left}
html body .de-cta-in h2{margin:0 0 10px;color:#fff;text-align:left;font-size:27px;line-height:1.2;letter-spacing:-.02em}
html body .de-cta-in h2::before,html body .de-cta-in h2::after{display:none}
html body .de-cta-in p{margin:0;color:#C7CDD6;font-size:15.5px;line-height:1.7;max-width:62ch}
html body .de-cta-b{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
html body .de-cta-b .btn{white-space:nowrap}
html body .de-cta-b .btn.ghost{color:#fff;border-color:rgba(255,255,255,.35);background:transparent}
html body .de-cta-b .btn.ghost:hover{border-color:#fff}
@media(max-width:900px){
  html body .de-cta-in{grid-template-columns:minmax(0,1fr)}
  html body .de-cta-b{justify-content:flex-start}
}

/* --- Buchstabenleiste im Glossar ----------------------------------------- */
html body .de-az{display:flex;flex-wrap:wrap;gap:8px;max-width:1080px;margin:20px auto 0;justify-content:center}
html body .de-az a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;
  padding:0 12px;background:#fff;border:1px solid #E3E8EF;font-weight:800;font-size:15px;color:#14181F;
  text-decoration:none;transition:border-color .2s,color .2s}
html body .de-az a:hover{border-color:#D71920;color:#B3121A}

/* --- Fussbereich: die Kontaktzeile ueber die volle Breite ---------------- */
html body footer .fgrid>.fdesks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px 30px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14)}
html body footer .fdesk{min-width:0}
html body footer .fdesk .fnote{display:block;margin:0 0 10px;font-size:13px;line-height:1.6;
  color:rgba(255,255,255,.62)}
@media(max-width:820px){html body footer .fgrid>.fdesks{grid-template-columns:minmax(0,1fr)}}

/* ---- the hero photograph is German ------------------------------------
   The shared theme paints the Dubai skyline behind every hero, and it does
   it on 138 pages of the German edition. A German buyer landing on a German
   language site was looking at the Gulf.

   The edition stylesheet loads before obc-theme.css, so the override needs
   to out-specify it rather than out-order it. html[data-obc-market] does
   that, and the attribute is already on every page of this edition for the
   lead tagging.

   The photograph is Frankfurt am Main, August 2020, from Wikimedia Commons,
   and it is credited on /bildnachweise/ like every other picture on this
   site. The company is still a UAE company and the Impressum still says so:
   what changes here is which market the page is speaking to, not who we are.
   ---------------------------------------------------------------------- */
html[data-obc-market="de"] body .dis-hero::before{
  background:linear-gradient(100deg,#F7F8FA 0%,rgba(247,248,250,.96) 45%,rgba(247,248,250,.55) 70%,rgba(247,248,250,.1) 100%),
             url(/images/loc/germany.webp) center 42%/cover no-repeat;
}
