:root{--navy:#0b1f3a;--navy2:#13305a;--navy3:#1e4277;--amber:#f5a623;--amber2:#d98b0b;--ink:#1b2636;--muted:#5b6b80;--line:#e2e8f0;--bg:#f5f7fb;--white:#fff;--green:#127a4b;--red:#b42318;--r:10px;--max:1120px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.6;font-size:16px}
a{color:var(--navy3)}a:hover{color:var(--amber2)}
img,svg{max-width:100%}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.skip:focus{width:auto;height:auto;clip:auto;clip-path:none;left:10px;top:10px;background:#fff;padding:8px;z-index:99}
/* header */
.hdr{background:var(--navy);color:#fff;position:sticky;top:0;z-index:50;border-bottom:3px solid var(--amber)}
.hdr .wrap{display:flex;align-items:center;gap:16px;min-height:62px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:700;letter-spacing:.2px;white-space:nowrap}
.brand:hover{color:#fff}.brand svg{flex:none}.brand small{display:block;font-weight:400;font-size:11px;color:#b9c6da;letter-spacing:.6px;text-transform:uppercase}
.nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.nav a{color:#dbe4f0;text-decoration:none;padding:8px 10px;border-radius:6px;font-size:15px}
.nav a:hover,.nav a[aria-current=page]{color:#fff;background:var(--navy2)}
.btn{display:inline-block;background:var(--amber);color:var(--navy)!important;font-weight:700;text-decoration:none;border:0;border-radius:8px;padding:11px 18px;font-size:15px;cursor:pointer;line-height:1.2;font-family:inherit}
.btn:hover{background:#ffb83d}.btn.ghost{background:transparent;color:#fff!important;border:1.5px solid #8ea3c2}.btn.ghost:hover{border-color:var(--amber)}
/* single primary = amber .btn; .btn.dark is the secondary (outline) style */
.btn.dark{background:#fff;color:var(--navy)!important;box-shadow:inset 0 0 0 1.5px var(--navy3)}.btn.dark:hover{background:#eef3fa;color:var(--navy)!important}
.btn.small{padding:7px 12px;font-size:14px}
.nav .btn{margin-left:6px;padding:8px 14px}
.menu-toggle{display:none;margin-left:auto;background:none;border:1.5px solid #5d769b;color:#fff;border-radius:8px;padding:6px 10px;font-size:15px}
@media (max-width:1200px){
 .menu-toggle{display:block}
 .nav{display:none;position:absolute;top:65px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:stretch;padding:8px 16px 16px;border-bottom:3px solid var(--amber)}
 .nav.open{display:flex}.nav a{padding:12px 10px;border-bottom:1px solid var(--navy2)}.nav .btn{margin:10px 0 0;text-align:center}
}
/* hero */
.hero{background:linear-gradient(160deg,var(--navy) 0%,var(--navy2) 65%,var(--navy3) 100%);color:#fff;padding:46px 0 36px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-120px;top:-60px;width:520px;height:520px;background:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 2px,transparent 2px 38px);border-radius:50%;pointer-events:none}
.hero h1{font-size:clamp(30px,5vw,50px);line-height:1.1;margin:0 0 16px;max-width:820px;letter-spacing:-.5px}
.hero p.lead{font-size:clamp(17px,2.2vw,20px);color:#d3deec;max-width:640px;margin:0 0 22px}
.eyebrow{display:inline-block;color:var(--amber);font-weight:700;text-transform:uppercase;letter-spacing:1.2px;font-size:13px;margin-bottom:12px}
.stats{display:flex;flex-wrap:wrap;gap:28px;margin-top:26px}
.stats div{min-width:120px}.stats b{display:block;font-size:30px;color:var(--amber);line-height:1.1}.stats span{color:#b9c6da;font-size:14px}
.page-hd{background:var(--navy);color:#fff;padding:40px 0 34px}
.page-hd h1{margin:0 0 8px;font-size:clamp(26px,4vw,38px);line-height:1.15}.page-hd p{margin:0;color:#c9d5e6;max-width:760px}
.crumbs{font-size:13px;color:#9fb1cb;margin-bottom:10px}.crumbs a{color:#c9d5e6}
/* sections */
section.s{padding:52px 0}section.alt{background:var(--bg)}
h2{font-size:clamp(22px,3vw,30px);line-height:1.2;margin:0 0 14px;color:var(--navy)}h3{color:var(--navy);margin:0 0 6px;line-height:1.3}
.sub{color:var(--muted);margin:-6px 0 24px;max-width:760px}
.grid{display:grid;gap:18px}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px}
.card.feature h3{font-size:18px}.card p{margin:6px 0 0;color:var(--muted)}
.icon{width:38px;height:38px;border-radius:9px;background:#fff4e0;color:var(--amber2);display:flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:10px}
/* tenders */
.tlist{display:grid;gap:14px}
.tender{background:#fff;border:1px solid var(--line);border-left:4px solid var(--navy3);border-radius:var(--r);padding:16px 18px}
.tender.soon{border-left-color:var(--amber)}.tender.closed{opacity:.65;border-left-color:#98a2b3}
.tender h3{font-size:17px;margin:4px 0 6px}.tender h3 a{color:var(--navy);text-decoration:none}.tender h3 a:hover{color:var(--amber2);text-decoration:underline}
.meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--muted)}.meta b{color:var(--ink);font-weight:600}
.badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.badge{display:inline-block;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:#e8eef8;color:var(--navy2);text-decoration:none;white-space:nowrap}
.badge.cat-survey-geophysics,.badge.cat-survey-mapping{background:#fff1d6;color:#8a5300}
.badge.days{background:#eef0f3;color:#475467}.badge.days.soon{background:#fff1d6;color:#8a5300}.badge.days.urgent{background:#fdecea;color:var(--red)}.badge.days.closed{background:#eef0f3;color:#5b6577}
.fit{margin-top:10px;font-size:14px;background:var(--bg);border-radius:8px;padding:9px 12px}.fit b{color:var(--navy)}.stars{color:#c77800;letter-spacing:1px;font-size:17px;cursor:help;white-space:nowrap}.stars .off{color:#d0d5dd}.stars.none{color:#98a2b3}
.tfoot{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:10px;font-size:14px}
.tfoot a.src{font-weight:700}
.lock{font-size:14px;margin-top:10px;padding:10px 12px;border:1px dashed var(--amber2);border-radius:8px;background:#fffaf0}
.filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:16px}
@media (max-width:860px){.filters{grid-template-columns:1fr 1fr}.filters .q{grid-column:1/-1}}
label.f{display:block;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
input[type=text],input[type=email],input[type=number],input[type=url],input[type=tel],input[type=date],select,textarea{width:100%;font:inherit;font-size:16px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)}
textarea{min-height:110px}
.count{font-size:14px;color:var(--muted);margin:0 0 10px}
.empty{padding:28px;text-align:center;color:var(--muted);background:var(--bg);border-radius:var(--r);border:1px dashed var(--line)}
/* forms */
.form{display:grid;gap:14px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width:640px){.row2{grid-template-columns:1fr}}
.checks{display:flex;flex-wrap:wrap;gap:6px 14px}.checks label{display:flex;gap:6px;align-items:center;font-size:15px;cursor:pointer}
.checks input{width:17px;height:17px;accent-color:var(--navy3)}
fieldset{border:1px solid var(--line);border-radius:8px;padding:10px 14px 14px;margin:0}legend{font-weight:700;font-size:14px;color:var(--navy);padding:0 6px}
.hp{position:absolute!important;left:0!important;top:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);opacity:0;pointer-events:none}
.note{font-size:13px;color:var(--muted)}.req{color:var(--red)}
.alert{padding:12px 14px;border-radius:8px;font-size:15px;display:none}.alert.show{display:block}.alert.err{background:#fdecea;color:var(--red)}.alert.ok{background:#e7f6ee;color:var(--green)}
.subbox{background:var(--navy);color:#fff;border-radius:14px;padding:28px;display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center}
.subbox h2{color:#fff}.subbox p{color:#c9d5e6;margin:0}.subbox .note{color:#9fb1cb}
.subbox details summary{color:#c9d5e6;font-size:14px;cursor:pointer;margin-top:8px}.subbox .checks label{color:#e6ecf5;font-size:14px}
.inline{display:flex;gap:8px}.inline input{flex:1}
@media (max-width:760px){.subbox{grid-template-columns:1fr;padding:22px}.inline{flex-direction:column}}
/* pricing */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;align-items:stretch}
.plan{border:1px solid var(--line);border-radius:14px;padding:24px;background:#fff;display:flex;flex-direction:column}
.plan.pro{border:2px solid var(--amber);box-shadow:0 8px 30px rgba(11,31,58,.08)}
.plan h3{font-size:20px}.price{font-size:38px;font-weight:800;color:var(--navy);line-height:1.1;margin:8px 0 2px}.price small{font-size:15px;color:var(--muted);font-weight:500}
.plan ul{padding-left:0;list-style:none;margin:16px 0 20px;flex:1}.plan li{padding:6px 0 6px 26px;position:relative;border-bottom:1px solid #f0f3f7;font-size:15px}
.plan li:before{content:"✓";position:absolute;left:4px;color:var(--green);font-weight:800}
.plan li.no:before{content:"–";color:#98a2b3}.plan li.no{color:#667085}
.tag{display:inline-block;background:var(--amber);color:var(--navy);font-size:12px;font-weight:800;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px}
.founding{background:#fff8e8;border:1px solid #f6d58d;border-radius:10px;padding:12px 14px;font-size:14px;margin:10px 0 0}
table.t{width:100%;border-collapse:collapse;font-size:15px;background:#fff}table.t th,table.t td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
table.t th{background:var(--bg);color:var(--navy);font-size:13px;text-transform:uppercase;letter-spacing:.4px}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r)}
.prose{max-width:780px}.prose h2{margin-top:34px}.prose li{margin:4px 0}
.cta-band{background:var(--amber);padding:34px 0}.cta-band .wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.cta-band h2{margin:0;color:var(--navy)}
/* footer */
.ftr{background:var(--navy);color:#b9c6da;padding:40px 0 26px;font-size:14px;margin-top:0}
.ftr a{color:#dbe4f0;text-decoration:none}.ftr a:hover{color:var(--amber)}
.ftr .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px}@media (max-width:760px){.ftr .cols{grid-template-columns:1fr 1fr}}
.ftr h4,.ftr h2.fh{color:#fff;margin:0 0 8px;font-size:14px;text-transform:uppercase;letter-spacing:.6px}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin:5px 0}
.ftr .legal{border-top:1px solid var(--navy2);margin-top:26px;padding-top:16px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
.crewcard .meta{margin-top:6px}.kv{display:grid;grid-template-columns:140px 1fr;gap:6px 14px;font-size:15px}.kv dt{color:var(--muted)}.kv dd{margin:0}
@media (max-width:560px){.kv{grid-template-columns:1fr}.kv dt{font-weight:700;margin-top:6px}}
.mt0{margin-top:0}.mt2{margin-top:20px}.center{text-align:center}

/* ---- design refresh (Mavari Web review, Oct 2026) ---- */
.brand .mark{width:40px;height:40px}.wordmark{font-size:17px;line-height:1.15}.brand .wordmark small{text-transform:none;letter-spacing:.2px;font-size:12px;margin-top:2px;color:#aebbd0}
@media (max-width:640px){.brand .wordmark small{display:none}.wordmark{font-size:16px}.brand .mark{width:34px;height:34px}}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:640px){.hero-cta{flex-direction:column}.hero-cta .btn{width:100%;text-align:center;padding:14px 18px}}
.hero .updated{margin:10px 0 0;font-size:13px;color:#9fb1cb}
.trust{background:#0e2747;color:#c9d5e6;font-size:14px;border-bottom:1px solid var(--navy2)}
.trust .wrap{display:flex;flex-wrap:wrap;gap:6px 26px;padding-top:12px;padding-bottom:12px}.trust b{color:#fff}
.trust span:before{content:"✓ ";color:var(--amber)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;text-decoration:none;color:var(--navy);font-weight:600;font-size:15px}
.chip span{color:#8a5300}.chip.lead{border-color:#f6d58d;background:#fff8e8}.chip:hover{border-color:var(--amber);color:var(--navy)}
.trow{display:flex;gap:14px;justify-content:space-between;align-items:flex-start}
.trow>div:first-child{min-width:0}
.dl{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;font-size:14px;color:var(--ink)}
.dl b{white-space:nowrap}
@media (max-width:560px){.trow{flex-direction:column;gap:4px}.dl{flex-direction:row;align-items:center;gap:8px}}
.legend{margin:12px 0 14px;font-size:14px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.legend summary{cursor:pointer;font-weight:600;color:var(--navy)}.legend ul{list-style:none;padding:0;margin:8px 0 4px}.legend li{margin:4px 0}.legend .stars{display:inline-block;width:62px}
.viewbar{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}
.viewbar .count{margin:0}
.view-toggle{display:inline-flex;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#fff}
.view-toggle button{font:inherit;font-size:14px;border:0;background:#fff;color:var(--navy);padding:6px 12px;cursor:pointer}
.view-toggle button[aria-pressed=true]{background:var(--navy);color:#fff}
@media (min-width:861px){.filters{position:sticky;top:65px;z-index:20;box-shadow:0 4px 14px rgba(11,31,58,.06)}}
.tlist.compact{gap:8px}.tlist.compact .tender{padding:10px 14px}.tlist.compact .fit,.tlist.compact .tfoot,.tlist.compact .meta{display:none}
.tlist.compact .tender h3{font-size:16px;margin:2px 0 0}
.price .was{color:#667085;font-weight:600;font-size:26px;margin-right:4px}
.plan .note.center{display:block}
.ftr p a{color:#dbe4f0}
.plans{align-items:start}
@media (max-width:640px){.stats{gap:16px}.stats div{min-width:0;flex:1}.stats b{font-size:26px}}
@media (max-width:640px){.plan.pro{order:-1}}
/* aircraft selector + countries note */
.acsel{margin:0 0 14px;padding:14px 16px}.acsel-row{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.acsel-row label.f{margin:0}
.acsel-row select{width:auto;flex:1;min-width:240px;max-width:520px}.acsel .note{margin:8px 0 0}
.ac-custom{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width:640px){.row3{grid-template-columns:1fr 1fr}.acsel-row select{min-width:0;width:100%}}
.fit-note{margin-top:2px}.fit-dd .fit-note{color:var(--ink)}
.cnote{grid-column:1/-1;margin:0}
.filters{align-items:end}.filters .viewbar,.filters .cnote{align-self:start}
@media (max-width:640px){.acsel-row{flex-direction:column;align-items:stretch}}
/* Closed / awarded tenders */
.badge.st-awarded{background:#e3f4ea;color:#166534}.badge.st-closed{background:#eef0f3;color:#475467}
.tender.closed-item{border-left-color:#98a2b3}.tender.closed-item.st-awarded{border-left-color:#2f9e5b}
.award{margin-top:10px;font-size:14px;background:#f1faf4;border:1px solid #cfe9d9;border-radius:8px;padding:8px 12px;line-height:1.5}
.award .aw-lbl{color:#166534;font-weight:700}.award .aw-val{font-weight:700;color:var(--navy);white-space:nowrap}
.result-note{margin-top:8px;font-size:14px;color:var(--ink)}
.tlist.compact .result-note{display:none}.tlist.compact .award{margin-top:6px;padding:5px 10px;font-size:13px}
.status-banner{border-radius:var(--r);padding:12px 16px;font-size:15px;border:1px solid var(--line);background:#f4f5f7}
.status-banner.awarded{background:#f1faf4;border-color:#cfe9d9}.status-banner .badge{margin-right:6px}
.closed-link{margin:0 0 14px;font-size:15px}.closed-link a{font-weight:700}
/* Language switcher (compact header button + popover) */
.lang-wrap{position:relative;flex:none}
.lang-open{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 9px;font:700 14px/1 var(--font);color:#fff;background:transparent;border:1.5px solid #5d769b;border-radius:8px;cursor:pointer}
.lang-open:hover,.lang-open[aria-expanded=true]{border-color:var(--amber);background:var(--navy2)}
.lang-open .chev{opacity:.8}
.flag{display:block;flex:none;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.25);object-fit:cover}
.lang-pop{position:absolute;top:calc(100% + 10px);right:0;z-index:200;width:360px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(11,31,58,.25);padding:10px}
.lang-pop[hidden]{display:none}
.lang-pop-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 2px 8px;font-size:13px;font-weight:700;color:var(--muted)}.lang-pop-hd span{display:inline-flex;align-items:center;gap:6px}.lang-pop-hd .globe{width:16px;height:16px}
.lang-x{width:32px;height:32px;font-size:16px;border:0;border-radius:8px;background:#eef2f7;color:var(--navy);cursor:pointer}
.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.lang-btn{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 8px;font:600 14px/1.2 var(--font);color:var(--navy);background:none;border:1.5px solid transparent;border-radius:8px;cursor:pointer;text-align:start}
.lang-btn:hover{background:#f1f4f9}.lang-btn[aria-pressed=true]{background:#fff1d6;border-color:var(--amber)}
.lang-btn:focus-visible,.lang-open:focus-visible,.lang-x:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.lang-note{background:#fff8e6;color:#5c3d00;border-bottom:1px solid #f3dfae;font-size:14px}.lang-note .wrap{padding-top:7px;padding-bottom:7px}
.linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--navy2);text-decoration:underline;cursor:pointer}
@media (max-width:1200px){.lang-wrap{margin-inline-start:auto}.menu-toggle{margin-left:0;order:3;height:36px}}
@media (max-width:600px){.lang-pop{position:fixed;top:70px;left:12px;right:12px;width:auto;max-height:calc(100vh - 90px);overflow-y:auto}.lang-btn{min-height:46px;font-size:15px}}
@media (max-width:420px){.menu-txt{display:none}.hdr .wrap{gap:8px}.brand .wordmark{font-size:15px}.brand small{font-size:9.5px;letter-spacing:.3px}}
/* Hide Google Translate's own UI; we use our flag buttons */
#gt-el,.skiptranslate iframe,iframe.skiptranslate,.goog-te-banner-frame,#goog-gt-tt,.goog-te-balloon-frame,.goog-tooltip,.VIpgJd-ZVi9od-ORHb-OEVmcd,.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,.VIpgJd-yAWNEb-L7lbkb{display:none!important}
body{top:0!important;position:static!important}
.goog-text-highlight,font font{background:none!important;box-shadow:none!important}
/* Right-to-left (Arabic) */
[dir=rtl] .dl{align-items:flex-start;text-align:left}
[dir=rtl] .tender{border-left:1px solid var(--line);border-right:4px solid var(--navy3)}
[dir=rtl] .tender.closed-item{border-right-color:#98a2b3}[dir=rtl] .tender.closed-item.st-awarded{border-right-color:#2f9e5b}
[dir=rtl] .tender.soon{border-right-color:var(--amber)}
[dir=rtl] .lang-pop{right:auto;left:0}
[dir=rtl] .ftr,[dir=rtl] .prose,[dir=rtl] .kv,[dir=rtl] table{text-align:right}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* Crew: aircraft types rows + card */
.types-rows{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.type-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) 44px;gap:10px;align-items:center}
.types-head{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) 44px;gap:10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:-2px}.types-head[hidden]{display:none}
.type-del{width:44px;height:44px;border:1.5px solid var(--line);background:#fff;border-radius:8px;font-size:18px;color:var(--red);cursor:pointer}
.type-del:hover{background:#fdecea}
.crew-hours{margin:4px 0 6px;font-size:16px;color:var(--navy)}
.crew-types,.crew-notes{font-size:14px;line-height:1.6;margin:8px 0 0}.f-lbl{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
/* Mobile header: logo first, wordmark shrinks/wraps, buttons never shrink */
@media (max-width:1200px){
 .hdr .brand{flex:1 1 auto;min-width:0;white-space:normal}
 .hdr .wordmark{min-width:0;overflow-wrap:break-word}
 .lang-wrap{margin-inline-start:0}.lang-wrap,.menu-toggle,.lang-open{flex-shrink:0}
}
@media (max-width:420px){
 .lang-open .lang-code,.lang-open .chev{display:none}.lang-open{padding:0 8px;gap:0}
 .hdr .wrap{gap:10px}.hdr .wordmark{font-size:15px;line-height:1.15}
 .menu-toggle{padding:6px 10px}
}
@media (max-width:360px){
 .hdr .wrap{gap:8px;padding-left:12px;padding-right:12px}.hdr .brand{gap:8px}
 .hdr .brand .mark{width:30px;height:30px}.hdr .wordmark{font-size:14px}
}
@media (max-width:760px){.ftr .cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ftr .cols>div:first-child{grid-column:1/-1}}.ftr .cols>div{min-width:0;overflow-wrap:anywhere}
.aw-lock{white-space:nowrap}.aw-lock a{font-weight:700;text-decoration:none;color:#8a5300;background:#fff1d6;border-radius:999px;padding:1px 8px}
.aw-lock.open{white-space:normal}.aw-unlock{margin:0 0 14px;background:#fffaf0;border-color:#f3dfae}.aw-unlock .inline input{min-width:0;flex:1}
.year-tabs{display:flex;gap:6px;margin:0 0 14px;flex-wrap:wrap}.year-tabs a{padding:8px 16px;border-radius:999px;background:#eef2f7;color:var(--navy);font-weight:700;text-decoration:none}.year-tabs a[aria-current=page]{background:var(--navy);color:#fff}.year-tabs span{font-weight:400;opacity:.75}
/* Member sign-in */
.nav a{white-space:nowrap}.nav .si-short{display:none}
@media (min-width:1201px) and (max-width:1360px){.nav .si-long{display:none}.nav .si-short{display:inline}}
.signin-card{max-width:560px}.signin-card input[type=email]{width:100%;font-size:17px;padding:12px}
.signin-card #si-flash{margin-bottom:14px}
.signin-card [hidden]{display:none!important}
/* Pro gating of open tenders / closed award details */
.badge.free-sample{background:#e7f6ee;color:#17663a;font-weight:700}
.pro-callout{background:#fffaf0;border-color:#f3dfae;margin:0 0 14px}
.pro-lock p{margin:0}.pro-lock .btn{margin:4px 6px 0 0}
.pro-award{margin:8px 0}
.alert[hidden],[data-pro-callout][hidden]{display:none!important}
/* Locked teaser rows: always compact for non-members, whole row clickable (to /pricing/ via src/app.js) */
.tender.pro-locked{padding:10px 14px;cursor:pointer}.tender.pro-locked h3{font-size:16px;margin:2px 0 0}
.tender.pro-locked:hover{border-color:#f3dfae;background:#fffdf7}
.badge.pro-tag{background:#fff3d6;color:#7a5200;font-weight:700}
/* Sponsors (banners filled by app.js from /api/sponsors) */
.spons-slot{margin:0 0 16px}.spons-slot[hidden]{display:none!important}
.spons{border:1px solid #e3e8ef;border-left:4px solid var(--amber);background:#fffdf7;border-radius:10px;padding:10px 14px;margin-top:10px}
.spons-lbl{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#6b7686;margin-bottom:6px}
.spons{text-align:center;padding:14px 16px}
.spons-row{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center}
.spons-logo{max-width:min(320px,100%);max-height:180px;width:auto;height:auto;display:block;margin:0 auto;object-fit:contain}
.spons-txt{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;font-size:.92rem;line-height:1.35;min-width:0}
.spons-txt a{color:var(--navy,#13305a);text-decoration:none}.spons-txt a:hover{text-decoration:underline}
.spons-txt span{color:#3d4a5c}
.spons-chip{font-size:.78rem;color:#6b7686;margin-top:8px}.spons-chip a{color:inherit;text-decoration:underline}
.tender.pro-locked .spons-chip{margin-top:4px}
@media (max-width:520px){.spons-logo{max-width:min(220px,100%);max-height:130px}}
/* Detail view locked for non-members (pro_gating) */
.view-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.view-pro{font-size:13px;background:#fff8e6;border:1px solid #f5d38a;border-radius:8px;padding:6px 10px;color:var(--ink)}
.view-pro[hidden]{display:none!important}
.view-lock{font-size:12px}

/* Weekly-brief choice of services and aircraft */
.choice{border:0;padding:0;margin:10px 0 0}.choice legend{font-weight:700;font-size:15px;margin-bottom:6px;padding:0}
.checks-col{flex-direction:column;gap:6px}
.choice-help{font-size:16px;line-height:1.5;margin:12px 0 2px}
.subbox .sub-line{color:#fff;font-size:18px;font-weight:600;margin:4px 0 8px}
.subbox .choice legend{color:#fff}.subbox .choice-help{color:#e6ecf5}
.subbox-full{grid-template-columns:1fr 1.2fr;align-items:start}
.subbox details summary u{color:#fff}
#prefs .checks label{font-size:16px}#prefs .choice legend{font-size:17px}
.pro-more{margin:8px 0 0;font-size:14px}.pro-more a{font-weight:600}.subbox .pro-more a{color:#f5c76b}
#acct-brief .choice legend{font-size:16px}

/* Header fit (16 Oct 2026): the brand never shrinks under the nav. Full nav only from 1201px (header row up to 1320px wide);
   below that, or whenever the labels don't fit (longer translations), the Menu button is used. app.js adds .compact when the
   nav would collide with the brand, so any language is safe. */
.hdr .wrap{max-width:1320px}
.hdr .brand{flex-shrink:0}
.hdr .nav{min-width:0}
@media (min-width:1201px) and (max-width:1320px){.nav a{padding:8px 8px}.nav{gap:2px}}
.hdr.compact .menu-toggle{display:block;margin-left:0;order:3;height:36px;flex-shrink:0}
.hdr.compact .lang-wrap{margin-inline-start:auto;flex-shrink:0}
.hdr.compact .brand{flex:1 1 auto;min-width:0;white-space:normal}
.hdr.compact .nav{display:none;position:absolute;top:65px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:stretch;padding:8px 16px 16px;border-bottom:3px solid var(--amber);margin-left:0}
.hdr.compact .nav.open{display:flex}.hdr.compact .nav a{padding:12px 10px;border-bottom:1px solid var(--navy2)}.hdr.compact .nav .btn{margin:10px 0 0;text-align:center}
.hdr.compact .nav .si-long{display:inline}.hdr.compact .nav .si-short{display:none}
.yourtime{display:block;font-size:.92em;margin-top:2px}
.tbl{border-collapse:collapse;width:100%;margin:6px 0}.tbl th,.tbl td{border-bottom:1px solid #ddd;padding:4px 8px;text-align:left}
/* Direct request price cards (preview, 24 Oct 2026) */
.pc-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:12px;align-items:stretch}
.pc{background:var(--white);border:2px solid var(--line);border-radius:var(--r);padding:16px 14px;text-align:center;color:var(--ink);position:relative}
.pc-lbl{font-size:1.05rem;font-weight:600;margin:0}
.pc-price{font-size:2.4rem;font-weight:800;line-height:1.1;margin:8px 0 4px;color:var(--navy)}
.pc-sub{font-size:1rem;margin:0;color:var(--ink)}
.pc-hero{background:#fff7e6;border:3px solid var(--amber);padding-top:0}
.pc-hero .pc-price{font-size:3.4rem}
.pc-hero .pc-lbl{font-size:1.2rem}
.pc-rib{display:block;margin:0 -14px 10px;background:var(--navy);color:#fff;font-weight:700;font-size:.95rem;padding:5px 8px;border-radius:7px 7px 0 0}
.pc-extra{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 4px}
.pc-extra>span{background:var(--navy);color:#fff;font-weight:700;font-size:1.05rem;padding:8px 14px;border-radius:999px}
@media (max-width:760px){.pc-grid{grid-template-columns:1fr}.pc-price{font-size:2.2rem}.pc-hero .pc-price{font-size:3rem}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tender h3 a{display:inline-block;padding:3px 0}

.dl-short{display:none}
@media(max-width:699px){.dl-long{display:none}.dl-short{display:inline}}

/* Menu fixes (29 Oct 2026, Erick): signed-in visitors don't see "Subscribe free" in the header.
   On computers/tablets (761px+) the Menu opens as a small dropdown under the Menu button; phones keep the full-width menu. */
.ast-in .hdr [data-sub-link]{display:none!important}
@media (min-width:761px){
 .hdr .wrap{position:relative}
 .hdr .nav.open,.hdr.compact .nav.open{left:auto;right:20px;top:calc(100% + 3px);width:250px;padding:6px;border:1px solid var(--navy2);border-top:0;border-bottom:3px solid var(--amber);border-radius:0 0 10px 10px;box-shadow:0 10px 24px rgba(0,0,0,.28)}
 .hdr .nav.open a,.hdr.compact .nav.open a{padding:8px 12px;font-size:15px;border-bottom:0;border-radius:6px}
 .hdr .nav.open .btn,.hdr.compact .nav.open .btn{margin:6px 0 2px;padding:8px 12px}
 [dir=rtl] .hdr .nav.open,[dir=rtl] .hdr.compact .nav.open{right:auto;left:20px}
}
