/* obc-es.css
   La edicion espanola carga el mismo cromado que onboardcourier.ae. Este
   archivo es la union de las hojas de estilo en linea que lleva cada pagina
   generada del arbol ingles, tomadas de una pagina viva el 9 de septiembre de
   2026 para que las dos ediciones no se separen. /assets/obc-theme.css se
   carga despues y gana, igual que en el arbol ingles. Aqui no hay ningun
   color nuevo ni ninguna forma nueva.
   Lo unico propio esta al final del archivo, y hay una razon concreta para
   cada regla. La edicion alemana dejo la mitad derecha de una banda en blanco
   porque .pr-grid es un flujo de dos columnas y con un solo hijo el navegador
   pinta la columna uno y deja la dos vacia: 542 pixeles de nada. Aqui eso
   esta corregido en la hoja y ademas en el constructor, que nunca emite una
   rejilla de un solo elemento. Las rejillas de fichas son rejillas de verdad
   y llevan .rowfill, la regla de obc-theme.css que impide una ultima fila
   corta. */
@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{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:24px}
.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!important}
.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{}
footer .fgrid{gap:28px!important}
.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 ---- */
/* Este bloque venia levantado de una pagina inglesa viva y forzaba cinco
   columnas con !important. Medido en el navegador a 1280 px: obc-theme.css
   pone doce pistas y hace que cada columna del pie ocupe cuatro, de modo que
   cinco pistas por cuatro dejaban una sola columna por fila y un pie de seis
   filas. Se retira el forzado y el flujo equilibrado del tema vuelve a
   mandar: dos filas de tres. */
footer .fgrid{gap:34px 30px}
footer .fgrid > div{margin:0;min-width:0}
footer .fgrid a{overflow-wrap:anywhere}
/* Tres reglas levantadas de una pagina inglesa viva que forzaban el numero de
   pistas del pie con !important. Medido a 820 px: con tres pistas y unos hijos
   que obc-theme.css hace ocupar cuatro, el pie salia a una columna por fila.
   Se retiran y manda el flujo equilibrado del tema: tres por fila hasta 1240,
   dos hasta 760 y una sola por debajo de 480. */
.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!important;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!important;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!important;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}}
/* ---- lo propio de la edición española ---------------------------------
   Cada valor es una ficha que ya existe en el tema: el carbón #14181F, el rojo
   de marca #D71920, el filete #E3E6EA, el gris de texto #5B6472. No se define
   ningún color nuevo. */
/* El paso al inglés, en la tira de servicio y otra vez en el pie. No es un
   selector de idioma: es una salida etiquetada allí donde la edición española
   no tiene sustancia propia detrás. */
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}
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}
/* El riel de datos de una página de ruta o de aeropuerto: un punto, un filete,
   un valor. No es una pared de cajas, que es lo que se rechazó. Dos columnas
   cuando hay material para dos; con un solo elemento el flujo de columnas
   dejaría media banda vacía, así que con uno o dos se pasa a una sola columna
   a medida completa. */
html body .es-rail{list-style:none;margin:22px auto 0;padding:0;max-width:1080px;columns:2 330px;column-gap:48px;text-align:left}
html body .es-rail li{break-inside:avoid;-webkit-column-break-inside:avoid;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 .es-rail li::before{content:'';position:absolute;left:0;top:23px;width:7px;height:7px;border-radius:50%;background:#D71920}
html body .es-rail li:first-child{border-top:0}
html body .es-rail li b{display:block;color:#14181F;font-size:15px;margin-bottom:2px}
html body .es-rail:has(>li:nth-child(2):last-child),html body .es-rail:has(>li:only-child){columns:1;max-width:78ch}
@media(max-width:760px){html body .es-rail{columns:1}}
/* El fallo de la edición alemana, corregido en la hoja además de en el
   constructor. .pr-grid es columns:2 330px sobre 1080 píxeles: con un hijo
   pinta 516 y deja 542 en blanco al lado. Con uno o dos párrafos se cierra a
   una columna y se centra a medida de lectura, que llena la banda. */
html body .pr-grid:has(>.pr-item:only-child){columns:1;max-width:74ch}
html body .pr-grid:has(>.pr-item:only-child)>.pr-item p{max-width:none}
html body .es-solo{max-width:74ch;margin:16px auto 0;text-align:left}
html body .es-solo p{margin:0 0 12px;font-size:15.5px;line-height:1.72;color:#3D4552}
html body .es-solo p:last-child{margin-bottom:0}
/* Las rejillas de fichas son rejillas de verdad, no cajas flotantes, para que
   .rowfill de obc-theme.css pueda repartir la última fila. Debajo de 901
   píxeles .rowfill no actúa, así que aquí se cubren los dos tramos que quedan:
   dos columnas con un número impar de fichas, y una sola columna. */
html body .city-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;align-items:stretch}
html body .city-grid>a{display:flex;justify-content:space-between;align-items:center;gap:10px;text-decoration:none;background:#fff;border:1px solid #E3E8EF;padding:14px 16px;font-size:14px;font-weight:700;line-height:1.35;color:#14181F;transition:border-color .2s,transform .2s,box-shadow .2s}
html body .city-grid>a:hover{transform:translateY(-2px);border-color:#D71920}
html body .city-grid>a span{font-size:11.5px;font-weight:600;color:#5B6472;text-align:right;flex:0 1 auto}
html body section.alt .city-grid>a{background:#fff}
html body .city-grid:has(>:nth-child(1):last-child){grid-template-columns:minmax(0,1fr)}
html body .city-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
html body .city-grid:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
/* Medido en el navegador a 390 px: las tres reglas :has() de arriba llevan la
   especificidad del argumento y ganaban a las consultas de medio, de modo que
   una rejilla de dos o de tres fichas se quedaba a dos o tres columnas en un
   móvil y se salía 105 píxeles por la derecha. Dentro de cada consulta se
   repiten con la misma forma para que el desempate lo decida el ancho y no la
   especificidad. */
@media(max-width:900px){
  html body .city-grid,
  html body .city-grid:has(>:nth-child(3):last-child),
  html body .city-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .city-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .city-grid:has(>:nth-child(odd):last-child)>:last-child{grid-column:1/-1}
}
@media(max-width:560px){
  html body .city-grid,
  html body .city-grid:has(>:nth-child(1):last-child),
  html body .city-grid:has(>:nth-child(2):last-child),
  html body .city-grid:has(>:nth-child(3):last-child),
  html body .city-grid:has(>:nth-child(4):last-child){grid-template-columns:minmax(0,1fr)}
  html body .city-grid:has(>:nth-child(odd):last-child)>:last-child{grid-column:auto}
}
/* La tabla de una página de aeropuerto o de aduana desborda en el móvil si se
   la deja. Se desplaza dentro de su propia caja y el cuerpo de la página no se
   mueve nunca de lado. */
html body .dirwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:18px}
html body .dirwrap table{min-width:640px;width:100%;border-collapse:collapse}
/* La calculadora vive dentro de una tarjeta clara. El grueso de su aspecto
   viene de obc-theme.css, que ya trae las 342 reglas .rc-. Aquí solo va el
   formulario, que en el árbol inglés está en la propia página. */
html body .rq-mask{margin:20px 0 0}
html body .rq-row{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end}
html body .rq-row2{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}
html body .rq-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;grid-template-columns:none}
html body .rq-f{position:relative;min-width:0}
html body .rq-f label{display:block;font-size:12.5px;font-weight:700;color:#5B6472;margin:0 0 6px}
html body .rq-f label span{font-weight:600;color:#8A919C}
html body .rq-f input{width:100%;padding:12px 13px;font:inherit;font-size:16px;border:1px solid #D7DCE3;background:#fff;color:#14181F}
html body .rq-f input:focus{outline:none;border-color:#D71920;box-shadow:0 0 0 3px rgba(215,25,32,.12)}
html body .rq-swap{align-self:end;margin-bottom:4px;background:#fff;border:1px solid #D7DCE3;width:42px;height:42px;font-size:19px;cursor:pointer;color:#14181F}
html body .rq-go{background:#D71920;color:#fff;border:0;padding:13px 22px;font:inherit;font-weight:800;cursor:pointer}
html body .rq-clear,html body .rq-advb{background:#fff;color:#14181F;border:1px solid #D7DCE3;padding:13px 18px;font:inherit;font-weight:700;cursor:pointer}
html body .rc-adv{margin-top:16px;padding:18px;background:#F5F6F8;border:1px solid #E3E6EA}
html body .rc-advg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
html body .rc-advg label{display:block;font-size:12.5px;font-weight:700;color:#5B6472;margin:0 0 6px}
html body .rc-advg input{width:100%;padding:10px 12px;font:inherit;font-size:16px;border:1px solid #D7DCE3;background:#fff}
html body .rc-advg span{font-size:12px;color:#8A919C}
html body .rc-advh{margin:16px 0 8px;font-size:12.5px;font-weight:800;color:#14181F}
html body .rc-chk{display:block;margin:0 0 8px;font-size:14px;line-height:1.6;color:#3D4552}
html body .rc-acbox{display:none;position:absolute;z-index:40;left:0;right:0;top:100%;background:#fff;border:1px solid #D7DCE3;box-shadow:0 14px 34px rgba(20,24,31,.14);max-height:320px;overflow:auto}
html body .rc-acbox.open{display:block}
html body .rc-aci{display:flex;align-items:baseline;gap:9px;padding:10px 13px;cursor:pointer;font-size:14px;border-top:1px solid #F0F2F5}
html body .rc-aci:first-child{border-top:0}
html body .rc-aci.sel,html body .rc-aci:hover{background:#F5F6F8}
html body .rc-aci b{font-weight:800;color:#D71920;min-width:34px}
html body .rc-aci i{margin-left:auto;font-style:normal;font-size:11.5px;color:#8A919C;white-space:nowrap}
html body .rc-acity b{background:#14181F;color:#fff;padding:1px 5px;font-size:11px;border-radius:3px}
@media(max-width:900px){
  html body .rq-row{grid-template-columns:1fr}
  html body .rq-row2{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .rq-swap{justify-self:start}
  html body .rc-advg{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  html body .rq-row2,html body .rc-advg{grid-template-columns:minmax(0,1fr)}
}
/* La banda de aviso: la página de Colombia y la de estafas la usan para poner
   lo importante arriba y no en una nota al pie. */
html body .es-aviso{border-left:4px solid #D71920;background:#FBF3F3;padding:20px 22px;margin:20px auto 0;max-width:1080px}
html body .es-aviso p{margin:0 0 11px;font-size:15px;line-height:1.7;color:#3D4552}
html body .es-aviso p:last-child{margin-bottom:0}
html body .es-aviso b{color:#14181F}
html body .obcr{opacity:0;transform:translateY(13px);transition:opacity .55s ease,transform .55s ease}
html body .obcr-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html body .obcr{opacity:1;transform:none;transition:none}}
/* La banda de dos párrafos. Medida en el navegador: sin esta regla los dos
   bloques se apilaban, que no es el defecto alemán de dejar media banda en
   blanco pero tampoco es la banda de dos columnas que se pretendía. Con una
   sola columna por debajo de 860 píxeles, que es donde dos medidas de lectura
   dejan de caber. */
html body .es-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 48px;
  margin-top:18px;align-items:start;text-align:left}
html body .es-duo>div{min-width:0}
html body .es-duo p{margin:0 0 12px;font-size:15.5px;line-height:1.72;color:#3D4552}
html body .es-duo p:last-child{margin-bottom:0}
html body .es-duo .pr-lead{font-size:17px;line-height:1.65;color:#14181F;font-weight:600}
@media(max-width:860px){
  html body .es-duo{grid-template-columns:minmax(0,1fr);gap:14px}
}
/* Las preguntas. El grueso viene de .obc-qa en obc-theme.css; aquí solo el
   ajuste de medida para que una respuesta larga no quede en una columna de
   cuarenta caracteres. */
html body .es-qa{margin-top:18px}
html body .es-qa .qa{max-width:none}