:root{
  --ink:#172536;
  --muted:#66768a;
  --line:#dfe6ec;
  --surface:#f5f7f9;
  --surface-2:#eef3f6;
  --navy:#103f68;
  --navy-2:#0b3153;
  --blue:#17618f;
  --sea:#17869a;
  --gold:#cda34a;
  --gold-dark:#a87c27;
  --white:#fff;
  --danger:#b42318;
  --radius:14px;
  --shadow:0 12px 34px rgba(14,47,77,.11);
  --shadow-soft:0 7px 24px rgba(14,47,77,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{margin:0;background:#fff;color:var(--ink);font-family:"Tajawal",Arial,"Segoe UI",sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}
body.high-contrast{--ink:#000;--muted:#191919;--line:#777;--surface:#fff;--surface-2:#f4f4f4;--navy:#000;--navy-2:#000;--blue:#003d8f;--gold:#ffd400;--gold-dark:#000}
body.high-contrast a{text-decoration:none}
a{color:var(--blue);text-decoration:none;transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease}
a:hover{text-decoration:none;color:var(--navy)}
button,input,select,textarea{font:inherit;font-family:inherit}
button{color:inherit}
img{max-width:100%;height:auto}
svg{display:block}
.container{width:min(1240px,calc(100% - 36px));margin-inline:auto}
.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}
.skip-link{position:fixed;top:-70px;inset-inline-start:18px;background:#fff;color:#000;padding:11px 15px;z-index:9999;box-shadow:var(--shadow);border-radius:0 0 8px 8px}
.skip-link:focus{top:0}

/* Government utility strip */
.gov-topbar{background:var(--navy-2);color:#edf5fa;border-bottom:1px solid rgba(255,255,255,.12);font-size:.78rem}
.gov-topbar-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.gov-identity{display:flex;align-items:center;gap:8px;white-space:nowrap}
.jordan-mark{color:var(--gold);font-size:.9rem}
.gov-top-actions{display:flex;align-items:center;gap:15px}
.gov-top-actions>a{color:#fff;white-space:nowrap}
.gov-top-actions>a:hover{color:#fff;text-decoration:underline}
.top-language{font-weight:800;border-inline-start:1px solid rgba(255,255,255,.23);padding-inline-start:14px}
.accessibility-tools{display:flex;align-items:center;border-inline:1px solid rgba(255,255,255,.18);padding-inline:9px;gap:2px}
.accessibility-tools button{border:0;background:transparent;color:#fff;min-width:30px;height:30px;border-radius:5px;cursor:pointer;font-weight:700;font-size:.74rem}
.accessibility-tools button:hover,.accessibility-tools button:focus-visible{background:rgba(255,255,255,.12);outline:none}

/* Header */
.site-header{background:#fff;position:relative;z-index:40;box-shadow:0 2px 10px rgba(12,43,69,.05)}
.brand-row{min-height:124px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:17px;min-width:0;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brand img{width:96px;height:96px;object-fit:contain;flex:0 0 auto}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand strong{font-size:1.48rem;line-height:1.35;color:var(--navy-2)}
.brand small{font-size:.83rem;color:var(--muted);margin-top:5px}
.header-shortcuts{display:flex;align-items:center;gap:10px}
.header-service-btn{display:flex;align-items:center;gap:10px;border:1px solid #d7e0e7;background:#f8fafb;border-radius:10px;padding:9px 13px;color:var(--navy);min-width:172px}
.header-service-btn:hover{background:#fff;border-color:#b5c8d6;box-shadow:var(--shadow-soft);transform:translateY(-1px)}
.header-service-btn>span:last-child{display:flex;flex-direction:column;line-height:1.35}
.header-service-btn small{font-size:.67rem;color:var(--muted)}
.header-service-btn strong{font-size:.87rem}
.header-service-icon{display:grid;place-items:center;width:34px;height:34px;background:var(--navy);color:#fff;border-radius:50%;font-size:1rem;flex:0 0 auto}
.header-search-toggle,.menu-toggle{height:46px;border:1px solid #d7e0e7;background:#fff;border-radius:9px;cursor:pointer;color:var(--navy);display:inline-flex;align-items:center;justify-content:center}
.header-search-toggle{width:46px;font-size:1.5rem}
.menu-toggle{display:none;padding:0 13px;gap:7px;font-weight:800}
.header-search-toggle:hover,.menu-toggle:hover{background:var(--surface)}

.site-search-panel{background:#f2f6f8;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.site-search-form{max-width:760px;margin-inline:auto}
.site-search-form>label{display:block;font-size:.78rem;font-weight:800;color:var(--navy);margin-bottom:5px}
.site-search-form>div{display:flex;background:#fff;border:1px solid #cbd8e1;border-radius:8px;overflow:hidden}
.site-search-form input{flex:1;min-width:0;border:0;padding:12px 14px;outline:none;background:#fff}
.site-search-form button{border:0;background:var(--navy);color:#fff;padding:0 25px;cursor:pointer;font-weight:800}

.main-nav{background:var(--navy);color:#fff;border-bottom:3px solid var(--gold)}
.nav-inner{min-height:54px;display:flex;align-items:stretch}
.nav-home{width:48px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;border-inline-end:1px solid rgba(255,255,255,.14);flex:0 0 auto}
.nav-home:hover{background:rgba(255,255,255,.1);color:#fff}
.nav-inner>ul{display:flex;align-items:stretch;list-style:none;margin:0;padding:0;flex:1}
.main-nav li{position:relative}
.main-nav li>a{display:flex;align-items:center;min-height:54px;padding:0 11px;color:#fff;font-size:.82rem;font-weight:700;white-space:nowrap}
.main-nav li>a:hover,.main-nav li:focus-within>a{background:rgba(255,255,255,.09);color:#fff}
.main-nav .has-children>a::after{content:"⌄";margin-inline-start:5px;font-size:.72rem;opacity:.75}
.main-nav li ul{display:none;position:absolute;top:100%;inset-inline-start:0;min-width:285px;max-width:360px;background:#fff;list-style:none;margin:0;padding:8px;border:1px solid #dce4ea;border-top:0;box-shadow:0 17px 34px rgba(12,43,69,.16);z-index:80}
.main-nav li:hover>ul,.main-nav li:focus-within>ul{display:block}
.main-nav li ul li>a{color:var(--ink);min-height:40px;padding:8px 11px;white-space:normal;border-radius:5px;font-weight:600;font-size:.8rem;line-height:1.55}
.main-nav li ul li>a:hover,.main-nav li ul li:focus{background:var(--surface-2);color:var(--navy)}
.main-nav li ul li ul{top:0;inset-inline-start:100%;border-top:1px solid #dce4ea}
[dir="rtl"] .main-nav li ul li ul{inset-inline-start:auto;inset-inline-end:100%}

/* Hero slider */
.hero-slider{position:relative;background:#0c375d;overflow:hidden;min-height:590px}
.hero-slider-track{position:relative;min-height:590px}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s ease;background-image:linear-gradient(90deg,rgba(5,29,51,.88) 0%,rgba(8,48,78,.73) 42%,rgba(8,48,78,.32) 72%,rgba(8,48,78,.48) 100%),var(--slide-bg),url('../img/hero-fallback.svg'),linear-gradient(135deg,#0a3b66,#13798b);background-size:cover;background-position:center;isolation:isolate}
[dir="rtl"] .hero-slide{background-image:linear-gradient(270deg,rgba(5,29,51,.88) 0%,rgba(8,48,78,.73) 42%,rgba(8,48,78,.32) 72%,rgba(8,48,78,.48) 100%),var(--slide-bg),url('../img/hero-fallback.svg'),linear-gradient(135deg,#0a3b66,#13798b)}
.hero-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(4,25,43,.48));z-index:-1}
.hero-slide.is-active{opacity:1;visibility:visible;z-index:2}
.hero-slide-shade{position:absolute;inset:0;background-image:radial-gradient(circle at 80% 20%,rgba(255,255,255,.12),transparent 34%),linear-gradient(135deg,transparent 0 70%,rgba(205,163,74,.12) 70%);pointer-events:none}
.hero-slide-inner{min-height:590px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);align-items:center;gap:55px;padding-top:42px;padding-bottom:105px;position:relative;z-index:2}
.hero-copy{max-width:820px;color:#fff;transform:translateY(18px);opacity:0;transition:transform .72s .18s ease,opacity .72s .18s ease}
.hero-slide.is-active .hero-copy{transform:none;opacity:1}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:.82rem;font-weight:800;margin-bottom:10px}
.hero-eyebrow::before{content:"";width:38px;height:3px;background:var(--gold);display:block}
.hero-copy h1{font-size:clamp(2.2rem,4.3vw,4.25rem);line-height:1.23;margin:0 0 18px;font-weight:800;text-shadow:0 4px 20px rgba(0,0,0,.22);max-width:900px}
.hero-copy p{font-size:1.04rem;line-height:1.9;color:#edf5f8;max-width:720px;margin:0 0 27px}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:9px 19px;border-radius:7px;font-weight:800;border:1px solid transparent;cursor:pointer}
.button:hover{transform:translateY(-1px)}
.button-gold{background:var(--gold);color:#102e49;border-color:var(--gold)}
.button-gold:hover{background:#dfbb67;color:#102e49;border-color:#dfbb67}
.button-glass{background:rgba(255,255,255,.07);color:#fff;border-color:rgba(255,255,255,.5);backdrop-filter:blur(7px)}
.button-glass:hover{background:#fff;color:var(--navy)}
.hero-emblem{display:flex;justify-content:center;align-items:center;opacity:.84;filter:drop-shadow(0 15px 35px rgba(0,0,0,.24));transform:translateY(10px);transition:transform .8s .25s ease}
.hero-slide.is-active .hero-emblem{transform:none}
.hero-emblem img{width:min(100%,330px);max-height:330px;object-fit:contain}
.hero-controls{position:absolute;inset-inline:0;bottom:72px;z-index:8;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.hero-dots,.hero-arrows{pointer-events:auto;display:flex;align-items:center;gap:8px}
.hero-dot{width:32px;height:4px;border:0;padding:0;background:rgba(255,255,255,.45);cursor:pointer;transition:.2s}
.hero-dot.is-active{width:56px;background:var(--gold)}
.hero-arrows button{width:42px;height:42px;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(5,35,59,.28);color:#fff;display:grid;place-items:center;font-size:1.55rem;cursor:pointer;backdrop-filter:blur(5px)}
.hero-arrows button:hover{background:#fff;color:var(--navy)}

/* Quick service launcher */
.service-launchpad{position:relative;z-index:12;margin-top:-48px;padding-bottom:12px}
.launchpad-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border-radius:12px;box-shadow:0 16px 38px rgba(7,36,61,.17);overflow:hidden;border:1px solid rgba(215,226,234,.75)}
.launch-card{min-height:102px;display:grid;grid-template-columns:54px 1fr 24px;align-items:center;gap:12px;padding:17px 18px;color:var(--ink);border-bottom:1px solid var(--line);border-inline-end:1px solid var(--line);position:relative;background:#fff}
.launch-card:nth-child(3n){border-inline-end:0}
.launch-card:nth-last-child(-n+3){border-bottom:0}
.launch-card::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(0);transition:.2s;transform-origin:center}
.launch-card:hover{background:#fbfcfd;color:var(--ink)}
.launch-card:hover::before{transform:scaleY(1)}
.launch-icon{width:50px;height:50px;border-radius:50%;background:#edf4f7;color:var(--navy);display:grid;place-items:center}
.launch-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.launch-copy{min-width:0;display:flex;flex-direction:column}
.launch-copy strong{font-size:.96rem;color:var(--navy-2)}
.launch-copy small{font-size:.72rem;color:var(--muted);margin-top:3px;line-height:1.5}
.launch-arrow{color:var(--gold-dark);font-size:1.05rem;transition:transform .18s}
.launch-card:hover .launch-arrow{transform:translateX(-3px)}
[dir="ltr"] .launch-arrow,[dir="ltr"] .notice-go,[dir="ltr"] .section-link span,[dir="ltr"] .text-link span{transform:rotate(180deg)}
[dir="ltr"] .launch-card:hover .launch-arrow{transform:rotate(180deg) translateX(-3px)}

/* Shared sections */
.section{padding:72px 0}
.section:nth-of-type(even){background:var(--surface)}
.kicker,.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:800;font-size:.76rem;letter-spacing:.02em}
.kicker::before{content:"";width:24px;height:2px;background:var(--gold)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}
.section-heading h2{margin:5px 0 0;color:var(--navy-2);font-size:clamp(1.65rem,2.8vw,2.45rem);line-height:1.4}
.government-heading{border-bottom:1px solid var(--line);padding-bottom:17px}
.compact-heading{margin-bottom:13px}
.section-link,.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-weight:800;font-size:.82rem;white-space:nowrap}
.section-link:hover,.text-link:hover{color:var(--gold-dark)}
.section-link span,.text-link span{color:var(--gold-dark);font-size:1.05rem}

/* News cards */
.gov-news-section{background:#fff!important}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.content-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;min-width:0;transition:transform .2s ease,box-shadow .2s ease}
.content-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(14,47,77,.12)}
.card-media{display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#dce9f0,#f0f4f6);overflow:hidden;position:relative}
.card-media::after{content:"";position:absolute;inset-inline:0;bottom:0;height:42%;background:linear-gradient(transparent,rgba(5,33,56,.25));pointer-events:none}
.card-media img{width:100%;height:100%;object-fit:cover;transition:.35s transform}
.card-media:hover img{transform:scale(1.035)}
.card-body{padding:18px 19px 20px;display:flex;flex-direction:column;flex:1;min-width:0}
.card-body time{font-size:.7rem;color:var(--muted);display:flex;align-items:center;gap:6px}
.card-body time::before{content:"";width:15px;height:2px;background:var(--gold)}
.card-body h3{font-size:1rem;line-height:1.65;margin:8px 0 8px;min-width:0}
.card-body h3 a{color:var(--navy-2)}
.card-body h3 a:hover{color:var(--blue)}
.card-body p{color:var(--muted);font-size:.78rem;margin:0 0 13px;line-height:1.8}
.read-more{margin-top:auto;font-weight:800;font-size:.76rem;color:var(--blue)}

/* Notices */
.gov-notices-section{background:var(--surface)!important}
.notices-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:38px}
.notice-list{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.notice-row{display:grid;grid-template-columns:72px 1fr 28px;align-items:center;gap:16px;padding:14px 17px;color:var(--ink);border-bottom:1px solid var(--line)}
.notice-row:last-child{border-bottom:0}
.notice-row:hover{background:#fbfcfd;color:var(--ink)}
.notice-date{width:62px;min-height:62px;border:1px solid #d9e2e8;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f7fafb;line-height:1.15}
.notice-date b{font-size:1.25rem;color:var(--navy)}
.notice-date small{font-size:.62rem;color:var(--muted);margin-top:4px}
.notice-copy{min-width:0;display:flex;flex-direction:column}
.notice-copy strong{font-size:.86rem;line-height:1.6;color:var(--navy-2)}
.notice-copy small{font-size:.7rem;color:var(--muted);margin-top:4px;line-height:1.6}
.notice-go{color:var(--gold-dark);font-size:1.05rem}
.public-actions{background:var(--navy);color:#fff;border-radius:10px;padding:28px;align-self:start;box-shadow:var(--shadow)}
.public-actions .kicker{color:#dfeef7}
.public-actions h2{font-size:1.35rem;line-height:1.5;margin:7px 0 20px;color:#fff}
.public-actions>a{display:flex;align-items:center;gap:11px;color:#fff;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.13);font-size:.82rem;font-weight:700}
.public-actions>a:last-child{border-bottom:0}
.public-actions>a:hover{color:#f5d994;padding-inline-start:4px}
.public-actions svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}

/* Director */
.director-section{background:#fff!important}
.director-card{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:50px;align-items:center}
.director-photo-wrap{position:relative;min-height:390px;display:flex;justify-content:center;align-items:flex-end}
.director-photo-bg{position:absolute;inset:30px 14% 0;background:linear-gradient(145deg,#eaf1f5,#f8fafb);border-radius:170px 170px 12px 12px}
.director-photo-wrap::before{content:"";position:absolute;width:82px;height:82px;border:10px solid rgba(205,163,74,.25);border-radius:50%;top:10px;inset-inline-start:8%}
.director-photo{position:relative;z-index:2;max-height:390px;width:auto;object-fit:contain;filter:drop-shadow(0 15px 18px rgba(13,44,70,.13));border-radius:0 0 10px 10px}
.director-copy h2{font-size:clamp(1.8rem,3vw,2.55rem);color:var(--navy-2);margin:6px 0 15px}
.director-copy p{font-size:.91rem;color:#4e6072;line-height:2;margin:0 0 17px;max-width:760px}

/* Mandate */
.institutional-section{background:linear-gradient(180deg,#f6f8fa,#fff)!important}
.mandate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mandate-grid article{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);padding:23px 20px;min-height:228px;box-shadow:var(--shadow-soft);border-radius:5px}
.mandate-grid article>span{width:52px;height:52px;border-radius:50%;background:#eef5f7;color:var(--navy);display:grid;place-items:center;margin-bottom:16px}
.mandate-grid svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mandate-grid h3{font-size:1rem;color:var(--navy-2);margin:0 0 8px}
.mandate-grid p{font-size:.76rem;color:var(--muted);line-height:1.85;margin:0}

.maritime-cta{background:linear-gradient(115deg,var(--navy-2),#145c79)!important;color:#fff;padding:50px 0;position:relative;overflow:hidden}
.maritime-cta::after{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(255,255,255,.1);border-radius:50%;inset-inline-end:-150px;top:-160px;box-shadow:0 0 0 45px rgba(255,255,255,.03),0 0 0 90px rgba(255,255,255,.025)}
.maritime-cta-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:35px}
.light-kicker{color:#fff}
.maritime-cta h2{font-size:clamp(1.65rem,2.8vw,2.3rem);margin:5px 0 8px;color:#fff}
.maritime-cta p{color:#e3eef3;margin:0;max-width:760px;font-size:.87rem}

/* Interior pages */
.page-hero{background:linear-gradient(120deg,var(--navy-2),var(--navy));color:#fff;padding:48px 0;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;width:250px;height:250px;border:1px solid rgba(255,255,255,.1);border-radius:50%;inset-inline-end:-80px;top:-100px;box-shadow:0 0 0 35px rgba(255,255,255,.025)}
.page-hero .container{position:relative;z-index:2}
.page-hero .eyebrow{color:#cfe7f4}
.page-hero h1{margin:6px 0 0;max-width:980px;font-size:clamp(1.8rem,3.7vw,3rem);line-height:1.4}
.page-hero time{display:block;margin-top:10px;color:#d6e7f0;font-size:.78rem}
.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;padding-block:52px}
.prose{font-size:.9rem;min-width:0;line-height:2}
.prose p{margin:0 0 1em}
.prose h2,.prose h3,.prose h4{color:var(--navy);line-height:1.55}
.prose h2{border-bottom:1px solid var(--line);padding-bottom:8px}
.prose table{width:100%;border-collapse:collapse;display:block;overflow:auto;margin:24px 0;background:#fff}
.prose td,.prose th{border:1px solid var(--line);padding:9px 10px;min-width:100px}
.prose th{background:#edf3f6;color:var(--navy)}
.prose a{overflow-wrap:anywhere}
.prose img{border-radius:8px}
.prose ul,.prose ol{padding-inline-start:28px}
.featured-image{width:100%;max-height:520px;object-fit:cover;margin-bottom:28px;border-radius:9px}
.legacy-section-title{background:var(--navy);color:#fff!important;padding:10px 14px;border-radius:6px;font-size:1.35rem}
.legacy-divider{border:0;border-top:1px solid var(--line);margin:28px 0}
.legacy-space{height:18px}
.legacy-figure{text-align:center;margin:24px 0}
.legacy-figure img{max-height:650px;object-fit:contain}
.legacy-banner{position:relative;margin:18px 0;overflow:hidden;border-radius:9px;background:#eef3f7}
.legacy-banner-image{width:100%;max-height:420px;object-fit:cover}
.legacy-banner figcaption{position:absolute;bottom:0;inset-inline:0;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;padding:45px 18px 16px;font-weight:800}
.legacy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}
.legacy-gallery img{width:100%;height:240px;object-fit:cover}
.legacy-icon-box{border:1px solid var(--line);border-radius:8px;padding:17px;margin:12px 0;background:#fff}
.video-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:8px;margin:24px 0}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.page-aside{display:flex;flex-direction:column;gap:18px}
.aside-card{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:20px;position:sticky;top:20px}
.aside-card+.aside-card{position:static}
.aside-card h2{font-size:1rem;color:var(--navy);margin:0 0 12px;border-bottom:2px solid var(--gold);padding-bottom:7px}
.aside-card p{margin:5px 0}
.aside-list{list-style:none;padding:0;margin:0}
.aside-list li{padding:9px 0;border-bottom:1px solid var(--line)}
.aside-list a{color:var(--ink);font-size:.78rem}
.page-search{display:flex;gap:10px;margin-top:20px;max-width:720px}
.page-search input{flex:1;min-width:0;padding:11px 13px;border:1px solid #adc3d6;border-radius:7px;font:inherit}
.page-search button{background:var(--navy);color:#fff;border:0;border-radius:7px;padding:0 18px}
.results-count{margin-bottom:24px}
.empty-state{padding:30px;background:var(--surface);border-radius:8px;text-align:center;color:var(--muted)}
.not-found{text-align:center;padding:100px 0}
.not-found span{font-size:5rem;font-weight:900;color:#d7e3ee}
.not-found h1{font-size:2rem;color:var(--navy)}
.home-legacy-content{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px;overflow:hidden}

/* Footer */
.site-footer{background:#0b2d4a;color:#d8e6ef;margin-top:0;font-size:.78rem}
.footer-accent{height:4px;background:linear-gradient(90deg,var(--gold) 0 18%,#fff 18% 22%,var(--gold) 22% 40%,transparent 40%)}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr .8fr .8fr;gap:44px;padding:52px 0 38px}
.footer-brand{display:flex;align-items:center;gap:13px;margin-bottom:15px}
.footer-logo{width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 7px 12px rgba(0,0,0,.16))}
.footer-brand>div{display:flex;flex-direction:column}
.footer-brand strong{font-size:1.05rem;color:#fff}
.footer-brand small{font-size:.66rem;color:#acc1d0;margin-top:3px;line-height:1.5}
.footer-about p{color:#b8cad7;max-width:360px;margin:0 0 13px}
.footer-eservice{display:inline-flex;align-items:center;gap:7px;color:#f4d78e;font-weight:800}
.site-footer h3{color:#fff;font-size:.88rem;margin:5px 0 15px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.13)}
.footer-contact-list,.footer-links{list-style:none;padding:0;margin:0}
.footer-contact-list li{display:flex;gap:9px;margin:9px 0;color:#bacbd7}
.footer-contact-list a,.site-footer a{color:#eaf3f8}
.footer-links li{margin:7px 0}
.footer-links a:hover,.footer-contact-list a:hover{color:#f3d486}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:14px 0;color:#aebfcb;font-size:.69rem}
.footer-bottom-inner{display:flex;justify-content:space-between;gap:20px}
.footer-admin a{color:#c8d7e0}

/* Responsive */
@media (max-width:1180px){
  .nav-inner>ul{overflow-x:auto;scrollbar-width:none}
  .nav-inner>ul::-webkit-scrollbar{display:none}
  .main-nav li>a{padding-inline:9px;font-size:.76rem}
  .brand small{max-width:430px}
}
@media (max-width:1020px){
  .gov-topbar-inner{justify-content:center}
  .gov-identity{display:none}
  .gov-top-actions{width:100%;justify-content:center;flex-wrap:wrap;gap:10px}
  .brand-row{min-height:100px}
  .brand img{width:78px;height:78px}
  .brand strong{font-size:1.2rem}
  .brand small{display:none}
  .header-service-btn{display:none}
  .menu-toggle{display:inline-flex}
  .main-nav{display:none}
  .main-nav.is-open{display:block}
  .nav-inner{display:block;padding-block:7px}
  .nav-home{width:100%;height:44px;border:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .nav-inner>ul{display:block;overflow:visible}
  .main-nav li>a{min-height:44px;padding:8px 12px;font-size:.82rem;white-space:normal;border-bottom:1px solid rgba(255,255,255,.08)}
  .main-nav li ul,.main-nav li:hover>ul,.main-nav li:focus-within>ul{position:static;display:none;background:#0d4a75;box-shadow:none;max-width:none;min-width:0;border:0;padding:0 14px}
  .main-nav li.open>ul{display:block}
  .main-nav li ul li>a{color:#fff;border-bottom:1px solid rgba(255,255,255,.07);border-radius:0}
  .main-nav li ul li>a:hover{background:rgba(255,255,255,.08);color:#fff}
  .main-nav li ul li ul,[dir="rtl"] .main-nav li ul li ul{position:static;inset:auto}
  .hero-slider,.hero-slider-track,.hero-slide-inner{min-height:540px}
  .hero-slide-inner{grid-template-columns:1fr;gap:0;text-align:center;padding-bottom:110px}
  .hero-copy{margin-inline:auto}
  .hero-eyebrow{justify-content:center}
  .hero-actions{justify-content:center}
  .hero-emblem{display:none}
  .launchpad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .launch-card:nth-child(3n){border-inline-end:1px solid var(--line)}
  .launch-card:nth-child(2n){border-inline-end:0}
  .launch-card:nth-last-child(-n+3){border-bottom:1px solid var(--line)}
  .launch-card:nth-last-child(-n+2){border-bottom:0}
  .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .notices-layout{grid-template-columns:1fr}
  .director-card{grid-template-columns:310px minmax(0,1fr);gap:34px}
  .mandate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-layout{grid-template-columns:1fr}
  .page-aside{display:grid;grid-template-columns:repeat(2,1fr)}
  .aside-card{position:static}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
}
@media (max-width:680px){
  html{font-size:15px}
  .container{width:min(100% - 22px,1240px)}
  .gov-topbar{font-size:.7rem}
  .gov-top-actions>a:not(.top-language){display:none}
  .accessibility-tools{border-inline-start:0}
  .brand-row{min-height:84px;gap:10px}
  .brand img{width:62px;height:62px}
  .brand strong{font-size:1rem}
  .header-shortcuts{gap:6px}
  .header-search-toggle{width:41px;height:41px}
  .menu-toggle{height:41px;padding-inline:10px}
  .menu-toggle span:last-child{display:none}
  .hero-slider,.hero-slider-track,.hero-slide-inner{min-height:530px}
  .hero-slide-inner{padding-top:30px;padding-bottom:118px}
  .hero-copy h1{font-size:2.15rem}
  .hero-copy p{font-size:.88rem;line-height:1.8}
  .hero-controls{bottom:70px}
  .hero-arrows button{width:38px;height:38px}
  .service-launchpad{margin-top:-34px}
  .launchpad-grid{grid-template-columns:1fr}
  .launch-card,.launch-card:nth-child(2n),.launch-card:nth-child(3n),.launch-card:nth-last-child(-n+2),.launch-card:nth-last-child(-n+3){border-inline-end:0;border-bottom:1px solid var(--line)}
  .launch-card:last-child{border-bottom:0}
  .launch-card{min-height:88px;grid-template-columns:48px 1fr 20px;padding:13px 14px}
  .launch-icon{width:44px;height:44px}
  .launch-icon svg{width:23px;height:23px}
  .section{padding:50px 0}
  .section-heading{align-items:start;flex-direction:column;gap:12px}
  .cards-grid{grid-template-columns:1fr}
  .notice-row{grid-template-columns:58px 1fr 18px;gap:10px;padding:12px}
  .notice-date{width:54px;min-height:55px}
  .notice-copy small{display:none}
  .public-actions{padding:22px}
  .director-card{grid-template-columns:1fr;gap:25px}
  .director-photo-wrap{min-height:320px}
  .director-photo{max-height:320px}
  .director-copy{text-align:center}
  .director-copy .kicker{justify-content:center}
  .mandate-grid{grid-template-columns:1fr}
  .maritime-cta-inner{flex-direction:column;align-items:flex-start}
  .page-hero{padding:36px 0}
  .page-layout{padding-block:34px}
  .legacy-gallery{grid-template-columns:repeat(2,1fr)}
  .legacy-gallery img{height:170px}
  .page-aside{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:24px;padding:40px 0 30px}
  .footer-bottom-inner{flex-direction:column;gap:5px}
  .home-legacy-content{padding:16px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* =========================================================
   Government Design V4 — typography, motion and home polish
   ========================================================= */

/* Utility bar: concise government links, no country-name label. */
.gov-topbar-inner{justify-content:flex-end;min-height:44px}
.gov-top-actions{gap:0;margin-inline-start:auto}
.top-utility-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border-inline-end:1px solid rgba(255,255,255,.12);font-weight:500}
.top-utility-link:first-child{border-inline-start:1px solid rgba(255,255,255,.12)}
.top-utility-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.88}
.top-utility-link:hover{background:rgba(255,255,255,.075);text-decoration:none!important}
.accessibility-tools{border-inline-start:0;margin-inline-start:4px}

/* Slider: cinematic background movement + staged content entrance. */
.hero-slide{background-image:none!important;overflow:hidden}
.hero-slide::before{content:"";position:absolute;inset:-4%;z-index:-3;background-image:linear-gradient(90deg,rgba(5,29,51,.91) 0%,rgba(8,48,78,.76) 42%,rgba(8,48,78,.30) 73%,rgba(8,48,78,.47) 100%),var(--slide-bg),url('../img/hero-fallback.svg'),linear-gradient(135deg,#0a3b66,#13798b);background-size:cover;background-position:center;transform:scale(1.04) translate3d(0,0,0);will-change:transform,filter;filter:saturate(.98) contrast(1.02)}
[dir="rtl"] .hero-slide::before{background-image:linear-gradient(270deg,rgba(5,29,51,.91) 0%,rgba(8,48,78,.76) 42%,rgba(8,48,78,.30) 73%,rgba(8,48,78,.47) 100%),var(--slide-bg),url('../img/hero-fallback.svg'),linear-gradient(135deg,#0a3b66,#13798b)}
.hero-slide.is-active::before{animation:heroKenBurns var(--hero-duration,5800ms) cubic-bezier(.18,.72,.2,1) both}
.hero-slide-shade{background-image:radial-gradient(circle at 80% 20%,rgba(255,255,255,.14),transparent 31%),radial-gradient(circle at 15% 90%,rgba(20,160,180,.12),transparent 33%),linear-gradient(135deg,transparent 0 70%,rgba(205,163,74,.13) 70%)}
.hero-copy{transform:none;opacity:1}
.hero-copy>*{opacity:0;transform:translateY(28px);transition:opacity .72s cubic-bezier(.2,.75,.25,1),transform .72s cubic-bezier(.2,.75,.25,1)}
.hero-slide.is-active .hero-eyebrow{opacity:1;transform:none;transition-delay:.16s}
.hero-slide.is-active .hero-copy h1{opacity:1;transform:none;transition-delay:.25s}
.hero-slide.is-active .hero-copy p{opacity:1;transform:none;transition-delay:.34s}
.hero-slide.is-active .hero-actions{opacity:1;transform:none;transition-delay:.43s}
.hero-emblem{opacity:0;transform:translateY(24px) scale(.96)}
.hero-slide.is-active .hero-emblem{opacity:.88;transform:none;transition:opacity .8s .34s ease,transform .95s .34s cubic-bezier(.2,.75,.25,1)}
.hero-progress{position:absolute;z-index:9;inset-inline:0;bottom:0;height:4px;background:rgba(255,255,255,.12);overflow:hidden}
.hero-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--gold),#f0d894);transform:scaleX(0);transform-origin:right center}
[dir="ltr"] .hero-progress span{transform-origin:left center}
@keyframes heroKenBurns{0%{transform:scale(1.04) translate3d(0,0,0)}100%{transform:scale(1.13) translate3d(-1.2%,.8%,0)}}
[dir="rtl"] .hero-slide.is-active::before{animation-name:heroKenBurnsRtl}
@keyframes heroKenBurnsRtl{0%{transform:scale(1.04) translate3d(0,0,0)}100%{transform:scale(1.13) translate3d(1.2%,.8%,0)}}

/* Reveal-on-scroll motion inspired by the current JMA homepage, implemented without libraries. */
.reveal-item{opacity:0;transform:translateY(34px);transition:opacity .72s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .78s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms);will-change:opacity,transform}
.reveal-item.reveal-scale{transform:translateY(24px) scale(.975)}
.reveal-item.reveal-right{transform:translate3d(42px,0,0)}
.reveal-item.reveal-left{transform:translate3d(-42px,0,0)}
.reveal-item.is-visible{opacity:1;transform:none}

/* Subtle interaction polish across homepage cards. */
.launch-card{transition:background .25s ease,transform .25s ease,box-shadow .25s ease}
.launch-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(14,47,77,.10);z-index:2}
.cards-grid article,.notice-row,.public-actions,.director-card{transition:transform .28s ease,box-shadow .28s ease}
.cards-grid article:hover{transform:translateY(-5px)}

.section-intro{max-width:770px;margin:10px 0 0;color:var(--muted);font-size:.91rem;line-height:1.9}

/* Mandate showcase: stronger visual identity, still restrained and government-friendly. */
.mandate-showcase{position:relative;overflow:hidden;background:linear-gradient(128deg,#082f50 0%,#0d4d70 54%,#0a6777 100%)!important;color:#fff}
.mandate-showcase::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 85%);pointer-events:none}
.mandate-orbit{position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}
.mandate-orbit-one{width:520px;height:520px;inset-inline-end:-250px;top:-240px;box-shadow:0 0 0 65px rgba(255,255,255,.024),0 0 0 130px rgba(255,255,255,.016)}
.mandate-orbit-two{width:310px;height:310px;inset-inline-start:-170px;bottom:-170px;box-shadow:0 0 0 45px rgba(205,163,74,.045)}
.mandate-container{position:relative;z-index:2}
.mandate-showcase .government-heading h2{color:#fff}
.mandate-showcase .kicker{color:#c7eef2}
.mandate-showcase .section-intro{color:#d6e8ef}
.mandate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.mandate-showcase .mandate-grid .mandate-card{position:relative;isolation:isolate;overflow:hidden;background:rgba(255,255,255,.97);color:var(--ink);border:1px solid rgba(255,255,255,.45);border-radius:18px;padding:28px 23px 26px;min-height:294px;box-shadow:0 18px 42px rgba(2,23,40,.20);transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease;background-clip:padding-box}
.mandate-showcase .mandate-grid .mandate-card::before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(23,134,154,.13),transparent 68%);inset-inline-end:-46px;top:-42px;z-index:-1}
.mandate-showcase .mandate-grid .mandate-card:hover{transform:translateY(-9px);box-shadow:0 26px 55px rgba(2,23,40,.27)}
.mandate-showcase .mandate-card .mandate-number{position:absolute;inset-inline-end:16px;top:7px;font-size:4.6rem;line-height:1;font-weight:900;color:rgba(16,63,104,.065);letter-spacing:-.08em;pointer-events:none}
.mandate-showcase .mandate-card .mandate-icon{position:relative;width:64px;height:64px;border-radius:19px;display:grid;place-items:center;background:linear-gradient(145deg,#0f4c73,#16889a);color:#fff;margin-bottom:22px;box-shadow:0 11px 23px rgba(13,85,112,.23)}
.mandate-showcase .mandate-card .mandate-icon::after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.24);border-radius:14px}
.mandate-showcase .mandate-card .mandate-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:2}
.mandate-showcase .mandate-card .mandate-copy{position:relative;z-index:2}
.mandate-showcase .mandate-card h3{font-size:1.05rem;line-height:1.6;color:var(--navy-2);margin:0 0 10px}
.mandate-showcase .mandate-card p{font-size:.79rem;color:#667789;line-height:1.95;margin:0}
.mandate-showcase .mandate-card .mandate-wave{position:absolute;inset-inline:0;bottom:-1px;height:7px;background:linear-gradient(90deg,var(--gold) 0 28%,#1590a2 28% 62%,var(--navy) 62%);opacity:.88}

/* Icon-based resource hub for verification, disaster plans and official references. */
.resource-hub-section{background:linear-gradient(180deg,#f6f9fb 0%,#fff 100%)!important;position:relative}
.resource-heading{margin-bottom:30px}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.resource-card{--resource-accent:#126987;position:relative;display:grid;grid-template-columns:62px minmax(0,1fr) 28px;align-items:center;gap:15px;min-height:132px;padding:20px 19px;background:#fff;border:1px solid #dce7ed;border-radius:15px;color:var(--ink);box-shadow:0 10px 28px rgba(14,47,77,.07);overflow:hidden;transition:transform .28s cubic-bezier(.2,.75,.2,1),box-shadow .28s ease,border-color .28s ease}
.resource-card:nth-child(2),.resource-card:nth-child(5){--resource-accent:#b8872d}
.resource-card:nth-child(3),.resource-card:nth-child(6){--resource-accent:#17869a}
.resource-card::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--resource-accent);transform:scaleY(.48);transform-origin:center;transition:transform .28s ease}
.resource-card::after{content:"";position:absolute;width:105px;height:105px;border-radius:50%;background:rgba(18,105,135,.08);inset-inline-end:-50px;bottom:-58px;transition:transform .35s ease}
.resource-card:hover{color:var(--ink);transform:translateY(-6px);border-color:#c6d9e3;box-shadow:0 18px 38px rgba(14,47,77,.13)}
.resource-card:hover::before{transform:scaleY(1)}
.resource-card:hover::after{transform:scale(1.35)}
.resource-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#edf5f7;color:var(--resource-accent);position:relative;z-index:2}
.resource-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.resource-copy{display:flex;flex-direction:column;min-width:0;position:relative;z-index:2}
.resource-copy strong{font-size:.96rem;color:var(--navy-2);line-height:1.5}
.resource-copy small{font-size:.73rem;color:var(--muted);margin-top:5px;line-height:1.6}
.resource-arrow{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f0f5f7;color:var(--resource-accent);font-size:.9rem;position:relative;z-index:2;transition:transform .25s ease,background .25s ease,color .25s ease}
.resource-card:hover .resource-arrow{transform:translate(2px,-2px);background:var(--resource-accent);color:#fff}
[dir="rtl"] .resource-arrow{transform:rotate(-90deg)}
[dir="rtl"] .resource-card:hover .resource-arrow{transform:rotate(-90deg) translate(2px,-2px)}

@media (max-width:1020px){
  .gov-topbar-inner{justify-content:center}
  .gov-top-actions{margin-inline-start:0;overflow-x:auto;justify-content:flex-start;max-width:100%;scrollbar-width:none;flex-wrap:nowrap;gap:0}
  .gov-top-actions::-webkit-scrollbar{display:none}
  .top-utility-link{flex:0 0 auto}
  .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mandate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .gov-topbar-inner{width:100%;padding-inline:0}
  .gov-top-actions{justify-content:flex-start;padding-inline:10px}
  .gov-top-actions>a:not(.top-language){display:inline-flex}
  .top-utility-link{padding-inline:9px;font-size:.68rem}
  .top-utility-link svg{width:14px;height:14px}
  .accessibility-tools{flex:0 0 auto;padding-inline:5px}
  .top-language{flex:0 0 auto}
  .hero-copy>*{transform:translateY(18px)}
  .resource-grid{grid-template-columns:1fr}
  .resource-card{min-height:112px;grid-template-columns:54px minmax(0,1fr) 26px;padding:16px}
  .resource-icon{width:52px;height:52px;border-radius:14px}
  .mandate-grid{grid-template-columns:1fr}
  .mandate-showcase .mandate-grid .mandate-card{min-height:0;padding:23px 20px 25px}
  .mandate-showcase .mandate-card .mandate-number{font-size:4rem}
}
@media (prefers-reduced-motion:reduce){
  .reveal-item{opacity:1!important;transform:none!important}
  .hero-slide::before{animation:none!important;transform:scale(1.04)!important}
  .hero-progress span{animation:none!important;transform:scaleX(1)!important}
}
@keyframes heroProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* =========================================================
   Government Design V5 — restrained institutional proportions
   Reference direction: Jordan Ministry of Transport portal.
   The aim is a dense, editorial government interface rather
   than an oversized card-driven promotional landing page.
   ========================================================= */
:root{
  --radius:5px;
  --shadow:0 4px 14px rgba(15,48,73,.07);
  --shadow-soft:0 2px 9px rgba(15,48,73,.055);
}
html{font-size:16px}
body{line-height:1.72;font-weight:400}
.container{width:min(1180px,calc(100% - 32px))}

/* Utility strip — compact like a government service bar. */
.gov-topbar{font-size:.72rem}
.gov-topbar-inner{min-height:35px}
.top-utility-link{min-height:35px;padding:0 10px;gap:5px;font-weight:500}
.top-utility-link svg{width:14px;height:14px}
.accessibility-tools{padding-inline:5px;margin-inline-start:3px}
.accessibility-tools button{height:27px;min-width:27px;font-size:.69rem;border-radius:2px}
.top-language{padding-inline-start:10px;font-size:.72rem}

/* Header — reduce logo, vertical space and marketing-style controls. */
.site-header{box-shadow:0 1px 4px rgba(12,43,69,.06)}
.brand-row{min-height:92px;gap:22px}
.brand{gap:13px}
.brand img{width:74px;height:74px}
.brand strong{font-size:1.28rem;line-height:1.35;font-weight:700}
.brand small{font-size:.76rem;margin-top:3px}
.header-shortcuts{gap:7px}
.header-service-btn{min-width:158px;border-radius:3px;padding:7px 10px;gap:8px;background:#fff;box-shadow:none}
.header-service-btn:hover{transform:none;box-shadow:none;background:#f7f9fa}
.header-service-btn small{font-size:.62rem}
.header-service-btn strong{font-size:.8rem}
.header-service-icon{width:30px;height:30px;border-radius:3px;font-size:.88rem}
.header-search-toggle,.menu-toggle{height:39px;border-radius:3px}
.header-search-toggle{width:39px;font-size:1.28rem}

.site-search-panel{padding:14px 0}
.site-search-form>label{font-size:.73rem}
.site-search-form>div{border-radius:3px}
.site-search-form input{padding:9px 11px;font-size:.82rem}
.site-search-form button{padding:0 20px;font-size:.8rem}

/* Navigation — smaller type and height, clear active government feel. */
.main-nav{border-bottom-width:2px}
.nav-inner{min-height:47px}
.nav-home{width:44px;font-size:1.12rem}
.main-nav li>a{min-height:47px;padding:0 10px;font-size:.76rem;font-weight:600}
.main-nav .has-children>a::after{font-size:.65rem}
.main-nav li ul{min-width:260px;max-width:330px;padding:5px;box-shadow:0 8px 20px rgba(12,43,69,.13)}
.main-nav li ul li>a{min-height:36px;padding:7px 9px;border-radius:2px;font-size:.75rem;line-height:1.5}

/* Hero — institutional banner, not a full-screen promotional hero. */
.hero-slider,.hero-slider-track,.hero-slide-inner{min-height:440px}
.hero-slide::before{inset:-2%;transform:scale(1.01);filter:saturate(.9) contrast(1.02)}
.hero-slide.is-active::before{animation:heroKenBurnsV5 var(--hero-duration,6000ms) ease-out both}
[dir="rtl"] .hero-slide.is-active::before{animation-name:heroKenBurnsV5Rtl}
@keyframes heroKenBurnsV5{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(-.45%,.25%,0)}}
@keyframes heroKenBurnsV5Rtl{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(.45%,.25%,0)}}
.hero-slide-shade{background:none}
.hero-slide-inner{grid-template-columns:minmax(0,760px) 1fr;gap:30px;padding-top:30px;padding-bottom:75px}
.hero-copy{max-width:700px}
.hero-copy>*{transform:translateY(12px);transition-duration:.48s}
.hero-slide.is-active .hero-eyebrow{transition-delay:.08s}
.hero-slide.is-active .hero-copy h1{transition-delay:.13s}
.hero-slide.is-active .hero-copy p{transition-delay:.18s}
.hero-slide.is-active .hero-actions{transition-delay:.23s}
.hero-eyebrow{font-size:.74rem;margin-bottom:7px;font-weight:700}
.hero-eyebrow::before{width:26px;height:2px}
.hero-copy h1{font-size:clamp(2rem,3.15vw,3.05rem);line-height:1.33;margin-bottom:12px;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.23)}
.hero-copy p{font-size:.9rem;line-height:1.75;max-width:630px;margin-bottom:19px}
.hero-actions{gap:8px}
.button{min-height:39px;padding:7px 15px;border-radius:3px;font-size:.78rem;font-weight:700}
.button:hover{transform:none}
.button-glass{backdrop-filter:none}
.hero-emblem{display:none}
.hero-controls{bottom:42px}
.hero-dot{width:25px;height:3px}
.hero-dot.is-active{width:40px}
.hero-arrows button{width:35px;height:35px;border-radius:3px;font-size:1.2rem;backdrop-filter:none}
.hero-progress{height:2px}

/* Quick services — one compact government launcher block. */
.service-launchpad{margin-top:0;padding:0;border-bottom:1px solid var(--line);background:#fff}
.launchpad-grid{width:min(1180px,100%);grid-template-columns:repeat(3,minmax(0,1fr));border-radius:0;box-shadow:none;border:0;border-inline-start:1px solid var(--line)}
.launch-card{min-height:82px;grid-template-columns:42px 1fr 18px;gap:10px;padding:12px 14px;border-color:var(--line)}
.launch-card::before{width:2px}
.launch-card:hover{transform:none;box-shadow:none;background:#f7f9fa}
.launch-icon{width:38px;height:38px;border-radius:3px;background:#eef3f6}
.launch-icon svg{width:21px;height:21px}
.launch-copy strong{font-size:.85rem;font-weight:700}
.launch-copy small{font-size:.67rem;line-height:1.45;margin-top:2px}
.launch-arrow{font-size:.92rem}

/* Section rhythm — tighter and more editorial. */
.section{padding:50px 0}
.kicker,.eyebrow{font-size:.7rem;font-weight:700;letter-spacing:0}
.kicker::before{width:18px;height:2px}
.section-heading{margin-bottom:20px;gap:18px}
.section-heading h2{font-size:clamp(1.45rem,2vw,1.9rem);line-height:1.45;font-weight:700;margin-top:3px}
.government-heading{padding-bottom:11px;border-bottom:1px solid #d8e0e6}
.section-link,.text-link{font-size:.75rem;font-weight:700}
.section-link span,.text-link span{font-size:.92rem}
.section-intro{font-size:.79rem;line-height:1.72;margin-top:6px;max-width:700px}

/* News — flatter cards, smaller type, very restrained hover. */
.cards-grid{gap:15px}
.content-card{border-radius:3px;box-shadow:none}
.content-card:hover{transform:translateY(-2px);box-shadow:0 4px 13px rgba(14,47,77,.07)}
.card-media::after{height:25%;opacity:.6}
.card-media img{transition:transform .28s ease}
.card-media:hover img{transform:scale(1.015)}
.card-body{padding:13px 14px 15px}
.card-body time{font-size:.65rem}
.card-body h3{font-size:.88rem;line-height:1.6;margin:6px 0}
.card-body p{font-size:.72rem;line-height:1.65;margin-bottom:9px}
.read-more{font-size:.7rem}

/* Notices — denser rows and a plain official side panel. */
.notices-layout{grid-template-columns:minmax(0,1.68fr) minmax(260px,.62fr);gap:26px}
.notice-list{border-radius:3px}
.notice-row{grid-template-columns:58px 1fr 20px;gap:12px;padding:10px 12px}
.notice-row:hover{transform:none;background:#f8fafb}
.notice-date{width:50px;min-height:50px;border-radius:2px;background:#f7f8f9}
.notice-date b{font-size:1.05rem}
.notice-date small{font-size:.57rem}
.notice-copy strong{font-size:.79rem;line-height:1.5}
.notice-copy small{font-size:.66rem;line-height:1.5;margin-top:2px}
.public-actions{border-radius:3px;padding:20px 21px;box-shadow:none}
.public-actions h2{font-size:1.06rem;margin:5px 0 12px}
.public-actions>a{padding:9px 0;font-size:.75rem}
.public-actions>a:hover{padding-inline-start:2px}
.public-actions svg{width:18px;height:18px}

/* Director — a conventional editorial two-column government feature. */
.director-card{grid-template-columns:255px minmax(0,1fr);gap:34px;padding:0}
.director-photo-wrap{min-height:300px;border:1px solid var(--line);background:#f3f5f6;align-items:flex-end}
.director-photo-bg,.director-photo-wrap::before{display:none}
.director-photo{max-height:300px;border-radius:0;filter:none}
.director-copy h2{font-size:1.75rem;margin:4px 0 10px;font-weight:700}
.director-copy p{font-size:.81rem;line-height:1.85;margin-bottom:12px}

/* Mandate — remove the synthetic orbit / glass-card treatment. */
.mandate-showcase{background:#f4f6f7!important;color:var(--ink);border-block:1px solid var(--line)}
.mandate-showcase::before,.mandate-orbit{display:none}
.mandate-showcase .government-heading h2{color:var(--navy-2)}
.mandate-showcase .kicker{color:var(--blue)}
.mandate-showcase .section-intro{color:var(--muted)}
.mandate-grid{gap:0;border:1px solid #d8e1e6;background:#fff}
.mandate-showcase .mandate-grid .mandate-card{min-height:220px;padding:22px 20px;border:0;border-inline-end:1px solid #dfe6ea;border-radius:0;box-shadow:none;background:#fff;overflow:hidden}
[dir="rtl"] .mandate-showcase .mandate-grid .mandate-card:last-child,[dir="ltr"] .mandate-showcase .mandate-grid .mandate-card:last-child{border-inline-end:0}
.mandate-showcase .mandate-grid .mandate-card::before{display:none}
.mandate-showcase .mandate-grid .mandate-card:hover{transform:none;box-shadow:none;background:#fafbfb}
.mandate-showcase .mandate-card .mandate-number{font-size:.69rem;line-height:1.2;font-weight:700;color:var(--gold-dark);letter-spacing:.03em;position:static;display:block;width:auto;height:auto;background:none;margin:0 0 10px}
.mandate-showcase .mandate-card .mandate-icon{width:44px;height:44px;border-radius:3px;margin:0 0 13px;background:var(--navy);box-shadow:none}
.mandate-showcase .mandate-card .mandate-icon::after{display:none}
.mandate-showcase .mandate-card .mandate-icon svg{width:23px;height:23px}
.mandate-showcase .mandate-card h3{font-size:.9rem;line-height:1.5;margin-bottom:7px}
.mandate-showcase .mandate-card p{font-size:.71rem;line-height:1.72}
.mandate-showcase .mandate-card .mandate-wave{height:2px;background:var(--gold);opacity:1;transform:scaleX(.22);transform-origin:right center;transition:transform .22s ease}
[dir="ltr"] .mandate-showcase .mandate-card .mandate-wave{transform-origin:left center}
.mandate-showcase .mandate-card:hover .mandate-wave{transform:scaleX(1)}

/* Important links — official directory instead of decorative app tiles. */
.resource-hub-section{background:#fff!important}
.resource-heading{margin-bottom:20px}
.resource-grid{gap:0;border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr))}
.resource-card{grid-template-columns:47px minmax(0,1fr) 20px;gap:10px;min-height:96px;padding:13px 14px;border:0;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:#fff}
.resource-card:nth-child(3n){border-inline-end:0}
.resource-card:nth-last-child(-n+3){border-bottom:0}
.resource-card::before{width:2px;transform:scaleY(0)}
.resource-card::after{display:none}
.resource-card:hover{transform:none;box-shadow:none;background:#f8fafb;border-color:var(--line)}
.resource-card:hover::before{transform:scaleY(1)}
.resource-icon{width:42px;height:42px;border-radius:3px;background:#eef3f5}
.resource-icon svg{width:22px;height:22px}
.resource-copy strong{font-size:.82rem;line-height:1.45;font-weight:700}
.resource-copy small{font-size:.65rem;line-height:1.5;margin-top:3px}
.resource-arrow{width:20px;height:20px;border-radius:2px;background:transparent;font-size:.75rem}
.resource-card:hover .resource-arrow{transform:none;background:transparent;color:var(--resource-accent)}
[dir="rtl"] .resource-arrow,[dir="rtl"] .resource-card:hover .resource-arrow{transform:rotate(-90deg)}

/* CTA — keep it short and functional. */
.maritime-cta{padding:33px 0;background:var(--navy)!important}
.maritime-cta::after{display:none}
.maritime-cta-inner{gap:25px}
.maritime-cta h2{font-size:1.45rem;margin:3px 0 4px}
.maritime-cta p{font-size:.76rem;line-height:1.65}

/* Interior content follows the same proportions. */
.page-hero{padding:34px 0}
.page-hero::after{display:none}
.page-hero h1{font-size:clamp(1.55rem,2.7vw,2.25rem);font-weight:700}
.page-layout{gap:28px;padding-block:38px}
.prose{font-size:.84rem;line-height:1.9}
.prose h2{font-size:1.35rem}
.prose h3{font-size:1.15rem}
.featured-image,.prose img,.legacy-banner,.video-wrap,.aside-card,.home-legacy-content{border-radius:3px}
.aside-card{padding:16px}
.aside-card h2{font-size:.9rem}

/* Footer — reduce visual weight. */
.site-footer{font-size:.73rem}
.footer-accent{height:3px}
.footer-grid{gap:34px;padding:38px 0 28px}
.footer-logo{width:62px;height:62px}
.footer-brand strong{font-size:.94rem}
.site-footer h3{font-size:.8rem;margin-bottom:11px}
.footer-bottom{font-size:.65rem;padding:11px 0}

/* Scroll reveal: nearly imperceptible, suitable for an official portal. */
.reveal-item,.reveal-item.reveal-scale,.reveal-item.reveal-right,.reveal-item.reveal-left{transform:translateY(12px);transition:opacity .42s ease var(--reveal-delay,0ms),transform .46s ease var(--reveal-delay,0ms)}
.reveal-item.is-visible{transform:none}
.cards-grid article,.notice-row,.public-actions,.director-card{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.cards-grid article:hover{transform:translateY(-2px)}

@media (max-width:1020px){
  .brand-row{min-height:82px}
  .brand img{width:66px;height:66px}
  .brand strong{font-size:1.08rem}
  .hero-slider,.hero-slider-track,.hero-slide-inner{min-height:415px}
  .hero-slide-inner{text-align:start;padding-bottom:72px}
  .hero-copy{margin-inline:0}
  .hero-eyebrow{justify-content:flex-start}
  .hero-actions{justify-content:flex-start}
  .launchpad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mandate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mandate-showcase .mandate-grid .mandate-card{border-bottom:1px solid var(--line)}
  .mandate-showcase .mandate-grid .mandate-card:nth-child(2n){border-inline-end:0}
  .mandate-showcase .mandate-grid .mandate-card:nth-last-child(-n+2){border-bottom:0}
  .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .resource-card:nth-child(3n){border-inline-end:1px solid var(--line)}
  .resource-card:nth-child(2n){border-inline-end:0}
  .resource-card:nth-last-child(-n+3){border-bottom:1px solid var(--line)}
  .resource-card:nth-last-child(-n+2){border-bottom:0}
}
@media (max-width:680px){
  html{font-size:15.5px}
  .container{width:min(100% - 22px,1180px)}
  .gov-topbar-inner{min-height:34px}
  .top-utility-link{min-height:34px}
  .brand-row{min-height:74px}
  .brand img{width:56px;height:56px}
  .brand strong{font-size:.95rem}
  .hero-slider,.hero-slider-track,.hero-slide-inner{min-height:410px}
  .hero-slide-inner{padding-top:25px;padding-bottom:78px}
  .hero-copy h1{font-size:1.82rem;line-height:1.38}
  .hero-copy p{font-size:.79rem;line-height:1.7}
  .hero-controls{bottom:40px}
  .service-launchpad{margin-top:0}
  .launchpad-grid{grid-template-columns:1fr}
  .section{padding:39px 0}
  .section-heading{gap:8px;margin-bottom:16px}
  .section-heading h2{font-size:1.42rem}
  .director-card{grid-template-columns:1fr;gap:20px}
  .director-photo-wrap{min-height:260px}
  .director-photo{max-height:260px}
  .director-copy{text-align:start}
  .director-copy .kicker{justify-content:flex-start}
  .mandate-grid,.resource-grid{grid-template-columns:1fr}
  .mandate-showcase .mandate-grid .mandate-card,.resource-card,.resource-card:nth-child(2n),.resource-card:nth-child(3n),.resource-card:nth-last-child(-n+2),.resource-card:nth-last-child(-n+3){border-inline-end:0;border-bottom:1px solid var(--line)}
  .mandate-showcase .mandate-grid .mandate-card:last-child,.resource-card:last-child{border-bottom:0}
  .maritime-cta-inner{align-items:stretch}
  .maritime-cta .button{align-self:flex-start}
}


/* ==========================================================
   V5.2 — readable government typography + welcome below hero
   ========================================================== */
html{font-size:16.5px}

/* Top utility links and primary navigation must remain readable at a glance. */
.gov-topbar{font-size:.78rem}
.top-utility-link{font-size:.78rem;font-weight:600}
.top-language{font-size:.78rem}
.accessibility-tools button{font-size:.74rem}

.nav-inner{min-height:51px}
.nav-home{width:47px;font-size:1.18rem}
.main-nav li>a{min-height:51px;padding:0 12px;font-size:.89rem;font-weight:700;line-height:1.35}
.main-nav .has-children>a::after{font-size:.72rem}
.main-nav li ul li>a{min-height:39px;padding:8px 11px;font-size:.84rem;line-height:1.55}

/* Welcome message is intentionally prominent immediately below the slider. */
.director-section{padding:46px 0;background:#fff!important;border-bottom:1px solid var(--line)}
.director-card{grid-template-columns:280px minmax(0,1fr);gap:40px}
.director-photo-wrap{min-height:315px}
.director-photo{max-height:315px}
.director-copy .kicker{font-size:.82rem}
.director-copy h2{font-size:2rem;line-height:1.45;margin:5px 0 12px}
.director-copy p{font-size:1rem;line-height:2.05;color:#43586b;margin-bottom:15px;max-width:820px}
.director-copy .text-link{font-size:.88rem}

/* General homepage readability: increase actual component type, not only root rem. */
.kicker,.eyebrow{font-size:.79rem}
.section-heading h2{font-size:clamp(1.58rem,2.15vw,2.02rem)}
.section-intro{font-size:.9rem;line-height:1.85;max-width:760px}
.section-link,.text-link{font-size:.84rem}

.launch-copy strong{font-size:.94rem}
.launch-copy small{font-size:.77rem;line-height:1.6}

.card-body time{font-size:.73rem}
.card-body h3{font-size:.98rem;line-height:1.65}
.card-body p{font-size:.82rem;line-height:1.78}
.read-more{font-size:.79rem}

.notice-copy strong{font-size:.9rem;line-height:1.6}
.notice-copy small{font-size:.76rem;line-height:1.65}
.public-actions h2{font-size:1.15rem}
.public-actions>a{font-size:.84rem}

.mandate-showcase .mandate-card .mandate-number{font-size:.76rem}
.mandate-showcase .mandate-card h3{font-size:1rem;line-height:1.6}
.mandate-showcase .mandate-card p{font-size:.81rem;line-height:1.85}

.resource-copy strong{font-size:.91rem;line-height:1.55}
.resource-copy small{font-size:.75rem;line-height:1.65}

.maritime-cta p{font-size:.85rem}
.prose{font-size:.96rem;line-height:2}
.prose h2{font-size:1.45rem}
.prose h3{font-size:1.22rem}

@media (max-width:1020px){
  html{font-size:16px}
  .main-nav li>a{font-size:.85rem;padding-inline:10px}
  .director-card{grid-template-columns:245px minmax(0,1fr);gap:30px}
  .director-photo-wrap{min-height:285px}
  .director-photo{max-height:285px}
  .director-copy h2{font-size:1.8rem}
  .director-copy p{font-size:.96rem}
}

@media (max-width:680px){
  html{font-size:16px}
  .gov-topbar{font-size:.74rem}
  .top-utility-link{font-size:.74rem}
  .main-nav li>a{font-size:.93rem;min-height:46px}
  .main-nav li ul li>a{font-size:.88rem}
  .director-section{padding:34px 0}
  .director-card{grid-template-columns:1fr;gap:20px}
  .director-photo-wrap{min-height:250px}
  .director-photo{max-height:250px}
  .director-copy h2{font-size:1.65rem}
  .director-copy p{font-size:.96rem;line-height:1.95}
  .section-heading h2{font-size:1.52rem}
  .section-intro{font-size:.87rem}
  .card-body h3{font-size:.95rem}
  .card-body p{font-size:.82rem}
}

/* ==========================================================
   V5.3 — compact contact dashboard
   ========================================================== */
.contact-page-body{background:#f4f6f8}
.contact-page{background:linear-gradient(180deg,#f7f9fb 0,#f3f6f8 100%);padding:24px 0 28px}
.contact-page-inner{display:flex;flex-direction:column;gap:17px}
.contact-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:13px;border-bottom:1px solid #dbe3e9}
.contact-intro>div:first-child{min-width:0}
.contact-kicker{display:block;color:var(--gold-dark);font-size:.77rem;font-weight:800;margin-bottom:2px}
.contact-intro h1{margin:0;color:var(--navy-2);font-size:1.75rem;line-height:1.35;font-weight:800}
.contact-intro p{margin:3px 0 0;color:#647487;font-size:.85rem;line-height:1.65}
.contact-intro-actions{display:flex;gap:8px;flex:0 0 auto}
.contact-intro-actions a{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border:1px solid #cfd9e1;background:#fff;color:var(--navy);font-size:.79rem;font-weight:700;border-radius:4px}
.contact-intro-actions a:first-child{background:var(--navy);border-color:var(--navy);color:#fff}
.contact-intro-actions a:hover{border-color:#9eb2c0;background:#f9fbfc;color:var(--navy)}
.contact-intro-actions a:first-child:hover{background:#0d365b;color:#fff;border-color:#0d365b}
.contact-intro-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.contact-dashboard{display:grid;grid-template-columns:minmax(300px,.76fr) minmax(0,1.55fr);gap:16px;min-height:410px}
.contact-overview,.contact-directorates{background:#fff;border:1px solid #dce4e9;border-radius:5px;box-shadow:0 4px 13px rgba(13,48,78,.045)}
.contact-overview{padding:18px;display:flex;flex-direction:column}
.contact-overview-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid #e3e9ed}
.contact-mark{width:43px;height:43px;display:grid;place-items:center;background:#eef4f7;color:var(--navy);border:1px solid #dbe5eb;border-radius:4px;flex:0 0 auto}
.contact-mark svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-overview-head div{display:flex;flex-direction:column;line-height:1.45}
.contact-overview-head small{font-size:.72rem;color:#778797;font-weight:600}
.contact-overview-head strong{font-size:.96rem;color:var(--navy-2)}
.contact-primary-list{display:grid;gap:0;margin-top:7px}
.contact-primary-item{display:grid;grid-template-columns:37px minmax(0,1fr);align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf1f3}
.contact-primary-item>span{width:34px;height:34px;display:grid;place-items:center;color:#2e678d;background:#f3f7f9;border-radius:3px}
.contact-primary-item svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.contact-primary-item div{display:flex;flex-direction:column;min-width:0;line-height:1.45}
.contact-primary-item small{font-size:.69rem;color:#7a8997;font-weight:600}
.contact-primary-item strong{font-size:.82rem;color:#24384b;font-weight:700;overflow-wrap:anywhere}
.contact-primary-item strong a{color:#24384b}
.contact-primary-item strong a:hover{color:var(--blue)}
.contact-quick-links{margin-top:auto;display:grid;gap:7px;padding-top:12px}
.contact-quick-links a{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:7px;min-height:39px;padding:7px 9px;border:1px solid #dfe6eb;color:#30475b;background:#fafcfd;font-size:.75rem;font-weight:700;border-radius:3px}
.contact-quick-links a:hover{background:#f2f6f8;border-color:#bdccd7;color:var(--navy)}
.contact-quick-links svg{width:17px;height:17px;fill:none;stroke:var(--blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-quick-links b{font-size:.74rem;font-weight:500;color:#80909d;text-align:end}

.contact-directorates{padding:18px 19px 14px;display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden}
.contact-directorates::before{content:"";position:absolute;inset-inline-start:0;top:0;width:4px;height:100%;background:var(--gold)}
.contact-directorates-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:13px;border-bottom:1px solid #e1e7eb}
.contact-directorates-head h2{margin:0;color:var(--navy-2);font-size:1.05rem;line-height:1.45;font-weight:800}
.contact-select-wrap{position:relative;width:min(330px,47%);flex:0 0 auto}
.contact-select-wrap select{width:100%;height:39px;border:1px solid #cbd6de;background:#fff;color:#24394d;border-radius:3px;padding:0 11px;padding-inline-end:32px;appearance:none;font-size:.76rem;font-weight:700;outline:none;cursor:pointer}
.contact-select-wrap select:focus{border-color:#6b93af;box-shadow:0 0 0 2px rgba(23,97,143,.1)}
.contact-select-wrap>span:last-child{position:absolute;inset-inline-end:10px;top:50%;transform:translateY(-52%);color:#6d7d8a;pointer-events:none;font-size:.8rem}
.contact-panels{position:relative;flex:1;min-height:0}
.contact-directorate-panel{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .22s ease,transform .22s ease,visibility .22s ease;padding-top:13px;display:flex;flex-direction:column}
.contact-directorate-panel.is-active{opacity:1;visibility:visible;transform:none}
.contact-panel-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.contact-panel-title>span{display:grid;place-items:center;width:33px;height:31px;background:var(--navy);color:#fff;font-size:.7rem;font-weight:800;border-radius:2px;flex:0 0 auto}
.contact-panel-title h3{margin:0;color:#183b59;font-size:1rem;line-height:1.45;font-weight:800}
.contact-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 9px;align-content:start}
.contact-field{display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:8px;min-height:57px;padding:7px 8px;background:#f8fafb;border:1px solid #e5ebef;border-radius:3px}
.contact-field-icon{width:32px;height:32px;display:grid;place-items:center;background:#fff;color:#2b688f;border:1px solid #dfe7ec;border-radius:3px}
.contact-field-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.contact-field>div{display:flex;flex-direction:column;min-width:0;line-height:1.38}
.contact-field small{color:#788795;font-size:.65rem;font-weight:600}
.contact-field strong{color:#263b4e;font-size:.76rem;font-weight:700;overflow-wrap:anywhere}
.contact-field strong a{color:#205f88}
.contact-panel-nav{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding-top:9px;border-top:1px solid #edf1f3;color:#7a8996;font-size:.72rem;flex:0 0 auto}
.contact-panel-nav button{width:30px;height:29px;display:grid;place-items:center;border:1px solid #d6dfe5;background:#fff;color:var(--navy);border-radius:3px;cursor:pointer;line-height:1}
.contact-panel-nav button:hover,.contact-panel-nav button:focus-visible{background:var(--navy);border-color:var(--navy);color:#fff;outline:none}
.contact-panel-nav b{color:var(--navy);font-weight:800}
.contact-empty{margin:auto;color:var(--muted);font-size:.86rem}
.contact-compact-footer{background:#0b2d4a;color:#dbe7ef;border-top:2px solid var(--gold);font-size:.69rem;flex:0 0 auto}
.contact-compact-footer-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:18px}

@media (min-width:1100px) and (min-height:700px){
  body.contact-page-body{height:100vh;min-height:0;overflow:hidden;display:flex;flex-direction:column}
  .contact-page-body>.gov-topbar,.contact-page-body>.site-header,.contact-page-body>.contact-compact-footer{flex:0 0 auto}
  .contact-page-body #main{flex:1 1 auto;min-height:0;display:flex;overflow:hidden}
  .contact-page-body .contact-page{flex:1 1 auto;min-height:0;display:flex;overflow:hidden;padding:17px 0 18px}
  .contact-page-body .contact-page-inner{height:100%;min-height:0;gap:13px}
  .contact-page-body .contact-dashboard{flex:1 1 auto;min-height:0}
  .contact-page-body .contact-overview,.contact-page-body .contact-directorates{height:100%;min-height:0}
}

@media (max-width:1099px){
  .contact-dashboard{grid-template-columns:1fr;min-height:0}
  .contact-overview{display:grid;grid-template-columns:1fr 1.3fr;column-gap:18px}
  .contact-overview-head{grid-column:1;padding-bottom:10px}
  .contact-primary-list{grid-column:1;margin-top:4px}
  .contact-quick-links{grid-column:2;grid-row:1 / span 2;margin-top:0;padding-top:0;align-content:center}
  .contact-directorates{min-height:360px}
}

@media (max-width:680px){
  .contact-page{padding:18px 0 22px}
  .contact-page-inner{gap:14px}
  .contact-intro{align-items:flex-start;flex-direction:column;gap:10px}
  .contact-intro h1{font-size:1.5rem}
  .contact-intro p{font-size:.82rem}
  .contact-intro-actions{width:100%}
  .contact-intro-actions a{flex:1;justify-content:center}
  .contact-overview{display:flex;padding:15px}
  .contact-quick-links{margin-top:10px}
  .contact-directorates{padding:15px;min-height:455px}
  .contact-directorates-head{align-items:stretch;flex-direction:column;gap:9px}
  .contact-select-wrap{width:100%}
  .contact-field-grid{grid-template-columns:1fr;gap:6px}
  .contact-field{min-height:54px}
  .contact-panel-title h3{font-size:.92rem}
  .contact-panel-nav{justify-content:center}
  .contact-compact-footer-inner{min-height:45px;justify-content:center;text-align:center;flex-direction:column;gap:0;line-height:1.5;padding:5px 0}
}

/* =========================================================
   V5.4 — gallery lightbox, invisible scrollbars, refined quick links
   ========================================================= */

/* Keep long pages fully usable while removing the visible scrollbar chrome. */
html,body,.prose table,.nav-inner>ul,.gov-top-actions{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar,
.prose table::-webkit-scrollbar,
.nav-inner>ul::-webkit-scrollbar,
.gov-top-actions::-webkit-scrollbar{
  width:0;
  height:0;
  display:none;
}

/* High-contrast / dark accessibility mode: no decorative underlines. */
body.high-contrast a,
body.high-contrast a:hover,
body.high-contrast a:active,
body.high-contrast a:visited{
  text-decoration:none!important;
}
body.high-contrast a:focus-visible,
body.high-contrast button:focus-visible,
body.high-contrast [tabindex]:focus-visible{
  outline:2px solid var(--gold)!important;
  outline-offset:3px;
  text-decoration:none!important;
}

/* Quick service block: more distinctive without becoming a promotional card grid. */
.service-launchpad{
  background:#f5f7f9;
  border-top:1px solid #dbe3e8;
  border-bottom:1px solid #dbe3e8;
}
.launchpad-grid{
  border-inline-start:1px solid #d8e1e7;
  background:#fff;
}
.launch-card{
  min-height:94px;
  grid-template-columns:50px minmax(0,1fr) 32px;
  gap:13px;
  padding:14px 16px;
  background:#fff;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.launch-card::before{
  width:3px;
  background:var(--gold);
  transform:scaleY(1);
  opacity:.78;
}
.launch-card::after{
  content:"";
  position:absolute;
  inset-inline:0;
  bottom:-1px;
  height:3px;
  background:var(--navy);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .2s ease;
}
.launch-card:hover{
  background:#f7fafc;
  box-shadow:inset 0 0 0 1px #dce6ec;
}
.launch-card:hover::after{transform:scaleX(1)}
.launch-icon{
  width:46px;
  height:46px;
  border-radius:4px;
  background:#0e466f;
  color:#fff;
  border:1px solid #0b3c61;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.launch-icon svg{width:24px;height:24px;stroke-width:1.75}
.launch-copy strong{
  font-size:1rem;
  line-height:1.35;
  font-weight:800;
  color:#123f62;
}
.launch-copy small{
  font-size:.76rem;
  line-height:1.55;
  margin-top:4px;
  color:#738393;
}
.launch-arrow{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid #d6b56a;
  border-radius:50%;
  color:#9a6c12;
  background:#fffaf0;
  font-size:.9rem;
  line-height:1;
}
.launch-card:hover .launch-icon{
  background:var(--gold);
  border-color:#c69a3b;
  color:#123f62;
}
.launch-card:hover .launch-arrow{
  background:var(--navy);
  border-color:var(--navy);
  color:#fff;
  transform:none;
}
[dir="ltr"] .launch-card:hover .launch-arrow{transform:rotate(180deg)}

/* Small visual hierarchy for the two most transactional links. */
.launch-card:nth-child(1) .launch-icon,
.launch-card:nth-child(2) .launch-icon{background:#0a3e64}
.launch-card:nth-child(1) .launch-copy strong,
.launch-card:nth-child(2) .launch-copy strong{color:#0b385b}

/* Photo albums / legacy galleries. */
.legacy-gallery,
.wp-block-gallery,
.gallery{
  gap:14px;
}
.legacy-gallery img,
.wp-block-gallery img,
.gallery img{
  cursor:zoom-in;
  border:1px solid #dbe3e8;
  background:#eef3f6;
  transition:filter .2s ease,transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.legacy-gallery img:hover,
.wp-block-gallery img:hover,
.gallery img:hover,
.legacy-gallery img:focus-visible,
.wp-block-gallery img:focus-visible,
.gallery img:focus-visible{
  transform:translateY(-2px);
  border-color:#b5c7d4;
  box-shadow:0 7px 18px rgba(9,48,77,.12);
  filter:saturate(1.04) contrast(1.02);
  outline:none;
}

/* Runtime lightbox built by site.js. */
.jma-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  background:rgba(3,15,25,.94);
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease,visibility .2s ease;
  color:#fff;
}
.jma-lightbox.is-open{opacity:1;visibility:visible}
.jma-lightbox-top{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 20px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.jma-lightbox-counter{
  font-size:.83rem;
  font-weight:700;
  color:rgba(255,255,255,.78);
  direction:ltr;
}
.jma-lightbox-close,
.jma-lightbox-nav{
  appearance:none;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:background-color .16s ease,border-color .16s ease;
}
.jma-lightbox-close{
  width:38px;
  height:38px;
  border-radius:3px;
  font-size:1.45rem;
  line-height:1;
}
.jma-lightbox-close:hover,
.jma-lightbox-nav:hover{
  background:#fff;
  border-color:#fff;
  color:#0b3558;
}
.jma-lightbox-stage{
  position:relative;
  min-height:0;
  display:grid;
  place-items:center;
  padding:22px 76px;
  overflow:hidden;
}
.jma-lightbox-image{
  display:block;
  max-width:min(1180px,92vw);
  max-height:calc(100vh - 150px);
  width:auto;
  height:auto;
  object-fit:contain;
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 18px 55px rgba(0,0,0,.35);
  transform:scale(.985);
  opacity:.2;
  transition:opacity .2s ease,transform .2s ease;
}
.jma-lightbox.is-open .jma-lightbox-image{opacity:1;transform:scale(1)}
.jma-lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:54px;
  border-radius:3px;
  font-size:1.65rem;
}
.jma-lightbox-prev{inset-inline-start:18px}
.jma-lightbox-next{inset-inline-end:18px}
.jma-lightbox-caption{
  min-height:54px;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:10px 20px 14px;
  font-size:.9rem;
  line-height:1.6;
  color:rgba(255,255,255,.84);
  border-top:1px solid rgba(255,255,255,.1);
}
body.jma-lightbox-open{overflow:hidden!important}

@media (max-width:760px){
  .launchpad-grid{grid-template-columns:1fr}
  .launch-card{min-height:86px;grid-template-columns:46px minmax(0,1fr) 30px;padding:12px 13px}
  .launch-icon{width:42px;height:42px}
  .launch-copy strong{font-size:.96rem}
  .launch-copy small{font-size:.74rem}
  .jma-lightbox-stage{padding:16px 48px}
  .jma-lightbox-nav{width:36px;height:46px;font-size:1.4rem}
  .jma-lightbox-prev{inset-inline-start:7px}
  .jma-lightbox-next{inset-inline-end:7px}
  .jma-lightbox-top{min-height:52px;padding:7px 10px}
  .jma-lightbox-image{max-height:calc(100vh - 130px)}
}

@media (prefers-reduced-motion:reduce){
  .jma-lightbox,.jma-lightbox-image,.legacy-gallery img,.wp-block-gallery img,.gallery img{transition:none!important}
}

/* === V6 navigation refinement: cleaner, more intentional government UI === */
.main-nav{background:#103f68;border-bottom:2px solid #c99a35;box-shadow:0 2px 7px rgba(8,43,72,.08)}
.nav-inner{min-height:53px}
.nav-home{width:49px;position:relative;background:rgba(0,0,0,.05);border-inline-end:1px solid rgba(255,255,255,.12)}
.main-nav li>a{position:relative;min-height:53px;padding:0 13px;font-size:.91rem;font-weight:700;letter-spacing:0;transition:background-color .15s ease,color .15s ease}
.nav-inner>ul>li>a::before{content:"";position:absolute;inset-inline:12px;bottom:0;height:3px;background:#d6aa4c;transform:scaleX(0);transform-origin:center;transition:transform .16s ease}
.nav-inner>ul>li:hover>a::before,.nav-inner>ul>li:focus-within>a::before{transform:scaleX(1)}
.main-nav li>a:hover,.main-nav li:focus-within>a{background:rgba(255,255,255,.065)}
.main-nav .has-children>a::after{content:"";width:6px;height:6px;border-inline-end:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-inline-start:8px;opacity:.8;margin-top:-4px}
.main-nav li ul{padding:6px 0;min-width:290px;border:1px solid #d7e0e7;border-top:3px solid #c99a35;border-radius:0 0 5px 5px;box-shadow:0 13px 30px rgba(9,42,68,.16)}
.main-nav li ul li>a{min-height:40px;padding:8px 14px;font-size:.86rem;border-radius:0;border-bottom:1px solid #edf1f4;color:#284255}
.main-nav li ul li:last-child>a{border-bottom:0}
.main-nav li ul li>a::before{content:"";width:5px;height:5px;border-radius:50%;background:#c99a35;opacity:.7;margin-inline-end:9px;flex:0 0 auto}
.main-nav li ul li>a:hover{background:#f4f7f9;color:#0d426d;padding-inline-start:17px}

.service-launchpad{background:#f7f9fa;border-block:1px solid #e4e9ed}
.launchpad-grid{gap:0;border-inline-start:1px solid #d9e2e8;border-top:1px solid #d9e2e8}
.launch-card{position:relative;background:#fff;border:0!important;border-inline-end:1px solid #d9e2e8!important;border-bottom:1px solid #d9e2e8!important;min-height:108px;padding:18px 18px;transition:background-color .16s ease,color .16s ease}
.launch-card::before{content:"";position:absolute;inset-block:15px;inset-inline-start:0;width:3px;background:#c99a35;transform:scaleY(.35);opacity:0;transition:.16s}
.launch-card:hover{background:#f9fbfc;transform:none!important;box-shadow:none!important}.launch-card:hover::before{opacity:1;transform:scaleY(1)}
.launch-icon{width:48px;height:48px;border-radius:5px;background:#edf3f7;color:#0e4b78;border:1px solid #e1e8ed}.launch-icon svg{width:24px;height:24px}.launch-copy strong{font-size:1rem;color:#123e61}.launch-copy small{font-size:.78rem;line-height:1.65;color:#718191}.launch-arrow{width:30px;height:30px;border:1px solid #dce4e9;border-radius:50%;display:grid;place-items:center;color:#b27f1b;background:#fff;transition:.16s}.launch-card:hover .launch-arrow{background:#103f68;border-color:#103f68;color:#fff}

@media(max-width:1180px){.main-nav li>a{padding-inline:10px;font-size:.87rem}}
@media(max-width:920px){.main-nav li>a{font-size:.9rem}.nav-inner>ul>li>a::before{display:none}.main-nav li ul{border-top:0}.main-nav li ul li>a::before{background:rgba(255,255,255,.5)}}
.nav-inner>ul>li.is-active>a{background:rgba(255,255,255,.07)}
.nav-inner>ul>li.is-active>a::before{transform:scaleX(1)}
.main-nav li ul li.is-active>a{background:#f2f6f9;color:#0d426d;font-weight:800}

/* =========================================================
   V6.1 — contextual interior links + scroll-safe page content
   ========================================================= */

/* Never introduce a horizontal page scrollbar. Long pages remain wheel/touch scrollable,
   while the browser scrollbar chrome stays visually hidden as requested. */
html,body{max-width:100%;overflow-x:clip!important;scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
#main,.page-layout,.prose,.page-aside{min-width:0;max-width:100%}
.prose table{display:table!important;width:100%!important;max-width:100%!important;table-layout:fixed;overflow:visible!important}
.prose table[style]{width:100%!important;max-width:100%!important;height:auto!important}
.prose td,.prose th{min-width:0!important;width:auto!important;overflow-wrap:anywhere;word-break:normal}
.prose img,.prose video,.prose iframe,.prose embed,.prose object{max-width:100%!important}
.prose pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.prose code{overflow-wrap:anywhere}

/* Context-aware left sidebar on Arabic interior pages. */
.page-layout{grid-template-columns:minmax(0,1fr) 315px;align-items:start}
.related-aside{gap:12px}
.related-links-card{padding:0!important;overflow:hidden;position:sticky;top:18px;background:#fff}
.related-links-card .aside-kicker{display:block;padding:15px 17px 2px;color:#8a6a24;font-size:.72rem;font-weight:800}
.related-links-card h2{margin:0;padding:3px 17px 13px;border:0!important;font-size:1.02rem;color:#123f62;line-height:1.5}
.related-links-card h2::after{content:"";display:block;width:38px;height:2px;background:#c99a35;margin-top:9px}
.related-links-list{list-style:none;margin:0;padding:0;border-top:1px solid #e1e7eb}
.related-links-list li{margin:0;border-bottom:1px solid #e7ecef}
.related-links-list li:last-child{border-bottom:0}
.related-links-list a{display:grid;grid-template-columns:35px minmax(0,1fr) 21px;align-items:center;gap:9px;min-height:52px;padding:8px 12px;color:#29465d;background:#fff;text-decoration:none!important;transition:background-color .15s ease,color .15s ease}
.related-links-list a:hover{background:#f4f7f9;color:#0d426d}
.related-link-icon{width:31px;height:31px;display:grid;place-items:center;background:#edf3f6;color:#0e4b78;border:1px solid #e0e8ed;border-radius:3px}
.related-link-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.related-link-title{font-size:.87rem;font-weight:700;line-height:1.55}
.related-link-arrow{color:#b5821f;font-size:.92rem;transition:transform .15s ease}
.related-links-list a:hover .related-link-arrow{transform:translateX(-3px)}
[dir="ltr"] .related-links-list a:hover .related-link-arrow{transform:translateX(3px)}
.aside-contact-strip{display:grid;gap:4px;padding:13px 15px;background:#103f68;color:#fff;border-radius:3px;font-size:.74rem;line-height:1.55}
.aside-contact-strip>span{font-weight:800;color:#f3d27f;margin-bottom:2px}
.aside-contact-strip a{color:#fff;text-decoration:none!important;overflow-wrap:anywhere}
.aside-contact-strip a:hover{color:#f3d27f}

/* Important links are now high on the homepage and read like an official directory. */
.service-launchpad + .resource-hub-section{padding-top:28px;padding-bottom:34px;background:#f7f9fa!important;border-bottom:1px solid #e2e8ec}
.service-launchpad + .resource-hub-section .resource-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:15px}
.service-launchpad + .resource-hub-section .resource-heading h2{font-size:1.55rem;margin-top:3px}
.service-launchpad + .resource-hub-section .section-intro{font-size:.82rem;max-width:720px}
.service-launchpad + .resource-hub-section .resource-grid{background:#fff;box-shadow:0 2px 8px rgba(15,48,73,.04)}
.service-launchpad + .resource-hub-section .resource-card{min-height:90px}
.service-launchpad + .resource-hub-section .resource-card:hover{background:#f5f8fa}

body.high-contrast .related-links-card,
body.high-contrast .related-links-list a,
body.high-contrast .related-link-icon{background:#111!important;color:#fff!important}
body.high-contrast .related-links-list a:hover{background:#222!important;color:#f3d27f!important}
body.high-contrast .related-links-card a{text-decoration:none!important}

@media(max-width:1020px){
  .page-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}
  .related-link-title{font-size:.84rem}
}
@media(max-width:820px){
  .page-layout{grid-template-columns:1fr}
  .page-aside{display:block}
  .related-links-card{position:static;margin-top:5px}
  .aside-contact-strip{margin-top:10px}
  .service-launchpad + .resource-hub-section{padding-block:24px}
}
@media(max-width:680px){
  .prose table{font-size:.83rem}
  .prose td,.prose th{padding:7px 6px!important}
  .related-links-list a{grid-template-columns:33px minmax(0,1fr) 18px;padding-inline:10px}
  .service-launchpad + .resource-hub-section .resource-heading h2{font-size:1.35rem}
}

/* V6.2 — top government links, aligned with the legacy portal pattern */
.gov-primary-links{display:flex;align-items:stretch;align-self:stretch;flex:0 0 auto}
.gov-primary-home,.important-links-dropdown>summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:0 13px;color:#fff!important;font-weight:700;font-size:.78rem;border-inline-end:1px solid rgba(255,255,255,.12);cursor:pointer;list-style:none;white-space:nowrap}
.gov-primary-home{border-inline-start:1px solid rgba(255,255,255,.12)}
.gov-primary-home svg,.important-links-dropdown>summary svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gov-primary-home:hover,.important-links-dropdown>summary:hover,.important-links-dropdown[open]>summary{background:rgba(255,255,255,.08);text-decoration:none!important}
.important-links-dropdown{position:relative;display:block}
.important-links-dropdown>summary::-webkit-details-marker{display:none}
.important-links-dropdown>summary b{font-size:.72rem;font-weight:400;transition:transform .18s ease}
.important-links-dropdown[open]>summary b{transform:rotate(180deg)}
.important-links-menu{position:absolute;top:100%;inset-inline-start:0;width:285px;background:#fff;border:1px solid #d9e2e9;border-top:3px solid var(--gold);box-shadow:0 14px 30px rgba(7,35,58,.16);padding:7px;z-index:150}
.important-links-menu a{display:flex;align-items:center;gap:10px;min-height:41px;padding:8px 10px;color:var(--ink)!important;font-size:.78rem;font-weight:600;border-bottom:1px solid #edf1f4}
.important-links-menu a:last-child{border-bottom:0}
.important-links-menu a:hover{background:#f2f6f8;color:var(--navy)!important;text-decoration:none!important}
.important-links-menu a span{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;background:#edf4f8;color:var(--navy);font-size:.75rem;font-weight:800}
body.high-contrast .gov-primary-home,body.high-contrast .important-links-dropdown a,body.high-contrast .important-links-dropdown summary{text-decoration:none!important}

@media (max-width:980px){
  .gov-topbar-inner{flex-wrap:wrap;gap:0;padding-inline:0}
  .gov-primary-links{width:100%;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1)}
  .gov-top-actions{width:100%;margin-inline-start:0}
}
@media (max-width:620px){
  .gov-primary-home,.important-links-dropdown>summary{min-height:38px;font-size:.73rem;padding-inline:10px}
  .important-links-menu{width:min(285px,calc(100vw - 24px))}
}

/* =========================================================
   V6.3 — interior navigation, assistance card and varied motion
   ========================================================= */

/* Contact page can now carry the same contextual left rail used by standard pages. */
.contact-page-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:stretch;min-width:0}
.contact-page-shell>.contact-page-inner{min-width:0}
.contact-related-aside{align-self:start;min-width:0}
.contact-related-aside .related-links-card{position:static}
@media (min-width:1100px) and (min-height:700px){
  .contact-page-body .contact-page-shell{height:100%;min-height:0}
  .contact-page-body .contact-page-inner{height:100%;min-height:0}
  .contact-page-body .contact-related-aside{height:100%;min-height:0;overflow:hidden}
  .contact-page-body .contact-related-aside .related-links-card{max-height:100%;overflow:hidden}
  .contact-page-body .contact-related-aside .related-links-list a{min-height:46px;padding-block:6px}
}
@media(max-width:1180px){.contact-page-shell{grid-template-columns:minmax(0,1fr) 250px;gap:14px}}
@media(max-width:980px){.contact-page-shell{grid-template-columns:1fr}.contact-related-aside{order:2}.contact-related-aside .related-links-card{margin-top:0}}

/* Cleaner and more useful replacement for the old plain "Need assistance?" strip. */
.aside-help-card{overflow:hidden;border:1px solid #dce5eb;background:#fff;border-radius:4px;box-shadow:0 2px 8px rgba(13,48,78,.035)}
.aside-help-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center;padding:14px 15px;background:linear-gradient(135deg,#103f68,#0d5275);color:#fff}
.aside-help-icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08)}
.aside-help-icon svg{width:20px;height:20px;fill:none;stroke:#f4d58a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aside-help-head strong{display:block;color:#fff;font-size:.9rem;line-height:1.45;margin-bottom:2px}
.aside-help-head small{display:block;color:#dbe9f1;font-size:.69rem;line-height:1.65;font-weight:500}
.aside-help-actions{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e4eaee}
.aside-help-actions a{min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;color:#24445c;font-size:.73rem;font-weight:800;text-decoration:none!important;background:#fff}
.aside-help-actions a+a{border-inline-start:1px solid #e4eaee}
.aside-help-actions a:hover{background:#f4f7f9;color:#0d4c77}
.aside-help-actions svg{width:16px;height:16px;fill:none;stroke:#0d5b86;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.aside-help-contact-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 13px;color:#6e7f8d!important;background:#fafcfd;font-size:.68rem;font-weight:700;text-decoration:none!important}
.aside-help-contact-link:hover{color:#0d4c77!important;background:#f3f7f9}
body.high-contrast .aside-help-card,body.high-contrast .aside-help-head,body.high-contrast .aside-help-actions a,body.high-contrast .aside-help-contact-link{background:#111!important;color:#fff!important;border-color:#777!important;text-decoration:none!important}
body.high-contrast .aside-help-head small{color:#fff!important}
body.high-contrast .aside-help-icon svg,body.high-contrast .aside-help-actions svg{stroke:#ffd45c!important}

/* Motion language: varied but restrained. It mirrors the old WPBakery "appear"
   behavior while avoiding oversized or theatrical movement. */
.motion-item{opacity:0;transition-property:opacity,transform,clip-path,filter;transition-duration:.58s,.62s,.62s,.58s;transition-timing-function:ease,cubic-bezier(.2,.72,.25,1),cubic-bezier(.2,.72,.25,1),ease;transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}
.motion-appear{transform:none}
.motion-up{transform:translate3d(0,18px,0)}
.motion-from-right{transform:translate3d(24px,0,0)}
.motion-from-left{transform:translate3d(-24px,0,0)}
.motion-zoom{transform:translate3d(0,8px,0) scale(.982)}
.motion-wipe{transform:translate3d(0,9px,0);clip-path:inset(0 0 14% 0);filter:saturate(.94)}
.motion-item.is-motion-visible{opacity:1;transform:none;clip-path:inset(0);filter:none}

/* Avoid animation transforms creating horizontal page chrome. */
#main{overflow-x:clip}

@media(max-width:820px){
  .aside-help-card{margin-top:10px}
  .motion-from-right,.motion-from-left{transform:translate3d(0,14px,0)}
}
@media(prefers-reduced-motion:reduce){
  .motion-item{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;transition:none!important}
}

/* =========================================================
   V6.4 — teal maritime accent, news ticker, e-services focus,
   direct contact directory, useful-links & partners carousels
   ========================================================= */
:root{
  --accent:#0a7f75;
  --accent-dark:#075f59;
  --accent-soft:#e8f5f3;
  --accent-line:#b9ddd8;
}
body.high-contrast a,body.high-contrast a:hover,body.high-contrast .gov-top-actions>a:hover{text-decoration:none!important}

/* Use the maritime green/teal accent instead of orange/yellow buttons. */
.button-gold,.button-accent{background:var(--accent);border-color:var(--accent);color:#fff}
.button-gold:hover,.button-accent:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.main-nav{border-bottom-color:var(--accent)}
.nav-inner>ul>li>a::before{background:var(--accent)}
.main-nav li ul{border-top-color:var(--accent)}
.main-nav li ul li>a::before{background:var(--accent)}
.hero-eyebrow::before,.hero-dot.is-active,.hero-progress span{background:var(--accent)}
.important-links-menu{border-top-color:var(--accent)}
.important-links-menu a span{background:var(--accent-soft);color:var(--accent-dark)}
.important-links-menu .important-eservice{background:#f0faf8;color:var(--accent-dark)!important;font-weight:800}
.important-links-menu .important-eservice span{background:var(--accent);color:#fff}
.header-service-btn{border-color:var(--accent-line);background:#f5fbfa}
.header-service-btn:hover{border-color:var(--accent);box-shadow:0 5px 16px rgba(10,127,117,.1)}
.header-service-icon{background:var(--accent)}
.footer-accent{background:var(--accent)}
.footer-eservice{color:#b8eee7}

/* Top utility additions. */
.gov-primary-useful,.gov-primary-sitemap{border-inline-start:0}
@media(max-width:760px){
  .gov-primary-sitemap span{display:none}
  .gov-primary-sitemap{padding-inline:10px}
}
@media(max-width:560px){
  .gov-primary-useful span{display:none}
  .gov-primary-useful{padding-inline:10px}
}

/* News ticker immediately under the hero. */
.news-ticker{background:#fff;border-bottom:1px solid #dce5ea;box-shadow:0 2px 8px rgba(12,49,78,.04);position:relative;z-index:4}
.news-ticker-inner{min-height:51px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;padding-inline:0;overflow:hidden}
.news-ticker-label{display:flex;align-items:center;gap:8px;padding:0 16px;background:var(--navy);color:#fff!important;font-size:.79rem;white-space:nowrap}
.news-ticker-label svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.news-ticker-viewport{overflow:hidden;min-width:0;display:flex;align-items:center;direction:ltr}
.news-ticker-track{display:flex;width:max-content;animation:jmaTicker 42s linear infinite;will-change:transform}
.news-ticker:hover .news-ticker-track{animation-play-state:paused}
.news-ticker-group{display:flex;align-items:center;flex:0 0 auto}
.news-ticker-group a{position:relative;display:flex;align-items:center;gap:9px;padding:0 27px;color:#334c60;font-size:.78rem;font-weight:700;white-space:nowrap;min-height:51px}
.news-ticker-group a::after{content:"";position:absolute;inset-inline-end:0;width:4px;height:4px;border-radius:50%;background:var(--accent)}
.news-ticker-group a span{font-size:.66rem;font-weight:500;color:#82909c;direction:ltr}
.news-ticker-group a:hover{color:var(--accent-dark)}
.news-ticker-all{display:flex;align-items:center;gap:5px;padding:0 14px;border-inline-start:1px solid #e0e7eb;color:var(--navy);font-size:.74rem;font-weight:800;white-space:nowrap;background:#fafcfd}
.news-ticker-all:hover{color:var(--accent-dark);background:#f3f8f7}
@keyframes jmaTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Strong e-services portal callout. */
.eservice-spotlight{background:#0c385c;border-bottom:1px solid #082e4d;color:#fff;position:relative;overflow:hidden}
.eservice-spotlight::before{content:"";position:absolute;inset-block:0;inset-inline-end:7%;width:320px;background:linear-gradient(135deg,transparent 0 45%,rgba(255,255,255,.035) 45% 60%,transparent 60%)}
.eservice-spotlight-inner{min-height:116px;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:18px;align-items:center;position:relative;z-index:1}
.eservice-spotlight-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#a9ece4;border-radius:5px}
.eservice-spotlight-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.eservice-spotlight-copy span{display:block;color:#9dd8d3;font-size:.72rem;font-weight:800;margin-bottom:2px}
.eservice-spotlight-copy h2{margin:0;color:#fff;font-size:1.42rem;line-height:1.4}
.eservice-spotlight-copy p{margin:4px 0 0;color:#d7e6ef;font-size:.79rem;line-height:1.65}
.eservice-spotlight-button{min-width:205px;gap:10px;border-radius:4px;box-shadow:none}
.eservice-spotlight-button b{font-size:1rem;font-weight:500}

/* Ensure every quick-service icon visibly reacts on hover. */
.launch-card:hover .launch-icon,
.launch-card:nth-child(1):hover .launch-icon,
.launch-card:nth-child(2):hover .launch-icon{
  background:var(--accent)!important;border-color:var(--accent-dark)!important;color:#fff!important
}
.launch-card::before{background:var(--accent)}
.launch-card::after{background:var(--accent)}
.launch-arrow{border-color:var(--accent-line);color:var(--accent-dark);background:#f6fbfa}
.launch-card:hover .launch-arrow{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}

/* Homepage external directories and moving carousels. */
.external-directory-section{background:#f6f9fa!important;border-top:1px solid #e1e8ec;border-bottom:1px solid #e1e8ec}
.partners-section{background:#fff!important}
.external-directory-heading{margin-bottom:17px}
.logo-carousel{position:relative}
.logo-carousel-viewport{overflow:hidden;direction:ltr;border:1px solid #dde6eb;background:#fff}
.logo-carousel-track{display:flex;gap:0;transition:transform .55s cubic-bezier(.2,.72,.25,1);will-change:transform}
.useful-carousel-card,.partner-logo-card{direction:rtl;flex:0 0 25%;min-width:0;border-inline-end:1px solid #e2e8ec;text-decoration:none!important;background:#fff}
.useful-carousel-card{min-height:112px;display:grid;grid-template-columns:48px minmax(0,1fr) 22px;align-items:center;gap:12px;padding:16px 17px;color:#27455c}
.useful-carousel-card>span{width:46px;height:46px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);border:1px solid #d4ebe8;border-radius:4px}
.useful-carousel-card svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.useful-carousel-card strong{font-size:.9rem;line-height:1.5;color:#153e5e}
.useful-carousel-card b{color:#75909f;font-weight:500}
.useful-carousel-card:hover{background:#f4faf9;color:var(--accent-dark)}
.useful-carousel-card:hover>span{background:var(--accent);color:#fff;border-color:var(--accent)}
.partner-logo-card{height:156px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:13px 18px;gap:8px;color:#42586b}
.partner-logo-card img{display:block;max-width:100%;max-height:92px;object-fit:contain;filter:saturate(.93);transition:filter .18s ease,transform .18s ease}
.partner-logo-card span{font-size:.67rem;line-height:1.4;text-align:center;color:#6d7e8b;max-width:210px}
.partner-logo-card:hover{background:#fbfcfd}.partner-logo-card:hover img{filter:saturate(1.08);transform:scale(1.025)}
.logo-carousel-controls{display:flex;justify-content:center;gap:6px;margin-top:11px}
.logo-carousel-controls button{width:34px;height:32px;border:1px solid #cfdbe2;background:#fff;color:var(--navy);cursor:pointer;border-radius:3px;font-size:1.15rem;line-height:1}
.logo-carousel-controls button:hover,.logo-carousel-controls button:focus-visible{background:var(--accent);border-color:var(--accent);color:#fff;outline:none}

/* Contact page V6.4: all directorates visible directly in a professional card grid. */
body.contact-page-body{height:auto!important;min-height:100vh!important;overflow-y:auto!important;display:block!important;background:#f4f7f9}
.contact-page-body #main{display:block!important;overflow:visible!important;min-height:0!important}
.contact-page-body .contact-page{display:block!important;overflow:visible!important;min-height:0!important;height:auto!important}
.contact-page-v64{padding:32px 0 42px;background:#f5f8fa}
.contact-v64-shell{display:block!important;height:auto!important;min-height:0!important}
.contact-v64-hero{background:#fff;border:1px solid #dae4ea;border-top:4px solid var(--accent);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:23px 25px;margin-bottom:18px;box-shadow:0 4px 16px rgba(12,48,76,.045)}
.contact-v64-title h1{margin:1px 0 5px;font-size:1.8rem;line-height:1.4;color:#123e60}
.contact-v64-title p{margin:0;color:#687b8d;font-size:.84rem;line-height:1.8;max-width:760px}
.contact-v64-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.contact-v64-actions>a{min-width:155px;display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:9px;padding:9px 11px;border:1px solid #d8e3e8;background:#f9fbfc;color:#28465d;border-radius:4px}
.contact-v64-actions>a:hover{border-color:var(--accent);background:#f2faf8;color:var(--accent-dark)}
.contact-v64-actions>a.contact-action-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.contact-v64-actions>a.contact-action-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.contact-v64-actions svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-v64-actions span{display:flex;flex-direction:column;line-height:1.35;min-width:0}.contact-v64-actions small{font-size:.64rem;opacity:.72}.contact-v64-actions strong{font-size:.78rem;overflow-wrap:anywhere}
.contact-v64-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:start}
.contact-v64-main{min-width:0}
.contact-v64-overview{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;background:#0d3f63;color:#fff;padding:14px 16px;margin-bottom:17px;border-inline-start:4px solid var(--accent)}
.contact-v64-overview-mark{width:43px;height:43px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#ace8e1;border:1px solid rgba(255,255,255,.16)}
.contact-v64-overview-mark svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-v64-overview>div:nth-child(2){display:flex;flex-direction:column;line-height:1.45}.contact-v64-overview small{font-size:.69rem;color:#bcd1df}.contact-v64-overview strong{font-size:.85rem;color:#fff}
.contact-v64-overview-links{display:flex;align-items:center;gap:7px}.contact-v64-overview-links a{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid rgba(255,255,255,.18);color:#fff;font-size:.72rem;font-weight:700}.contact-v64-overview-links a:hover{background:rgba(255,255,255,.1)}.contact-v64-overview-links svg{width:15px;height:15px;fill:none;stroke:#aee8e2;stroke-width:1.8}
.contact-directorates-all{background:#fff;border:1px solid #dce5ea;padding:20px}
.contact-directorates-all-head{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-bottom:14px;margin-bottom:15px;border-bottom:1px solid #e2e8ec}
.contact-directorates-all-head h2{margin:1px 0 0;color:#123f61;font-size:1.25rem;line-height:1.45}.contact-directorates-count{font-size:.69rem;font-weight:800;color:var(--accent-dark);background:var(--accent-soft);border:1px solid #d3e9e6;padding:5px 9px;border-radius:3px;white-space:nowrap}
.contact-directorates-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.contact-directorate-card{border:1px solid #dfe7ec;background:#fbfcfd;min-width:0;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.contact-directorate-card:hover{border-color:#b9d8d4;box-shadow:0 7px 18px rgba(10,74,76,.07);transform:translateY(-1px)}
.contact-directorate-card>header{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;min-height:55px;padding:9px 11px;background:#f0f5f7;border-bottom:1px solid #e0e7eb}
.contact-directorate-card>header>span{width:32px;height:32px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.68rem;font-weight:800;border-radius:3px}.contact-directorate-card>header h3{margin:0;color:#153e5e;font-size:.89rem;line-height:1.55}
.contact-directorate-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 10px 10px;gap:0 10px}.contact-directorate-field{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:7px;min-height:49px;padding:6px 0;border-bottom:1px dashed #e6ecef}.contact-directorate-field:nth-last-child(-n+2){border-bottom:0}.contact-directorate-field .contact-field-icon{width:28px;height:28px;background:#fff;color:var(--accent-dark);border-color:#dce8e7}.contact-directorate-field .contact-field-icon svg{width:15px;height:15px}.contact-directorate-field>div{display:flex;flex-direction:column;min-width:0;line-height:1.35}.contact-directorate-field small{font-size:.61rem;color:#81909d;font-weight:600}.contact-directorate-field strong{font-size:.72rem;color:#2b4154;font-weight:700;overflow-wrap:anywhere}.contact-directorate-field strong a{color:#126682}
.contact-page-v64 .contact-related-aside{position:sticky;top:16px}

/* Friendly human-readable site map. */
.site-map-hero{border-bottom:1px solid #dce5ea}.site-map-hero p{max-width:760px;margin:8px 0 0;color:#dbe7ef;font-size:.84rem}.site-map-page{background:#f6f8fa!important}.site-map-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.site-map-toolbar a{padding:8px 12px;background:#fff;border:1px solid #dbe4e9;color:var(--navy);font-size:.78rem;font-weight:800}.site-map-toolbar a:hover{background:var(--accent);border-color:var(--accent);color:#fff}.site-map-card{background:#fff;border:1px solid #dce5ea;padding:20px}.site-map-list{list-style:none;margin:0;padding:0}.site-map-depth-0{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.site-map-depth-0>li{border:1px solid #dfe7eb;background:#fbfcfd}.site-map-list a{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#29465b;font-weight:700;padding:9px 11px;border-bottom:1px solid #e7ecef;font-size:.82rem}.site-map-depth-0>li>a{background:#103f68;color:#fff;font-size:.88rem}.site-map-list a:hover{background:#f2f8f7;color:var(--accent-dark)}.site-map-depth-0>li>a:hover{background:#0c5471;color:#fff}.site-map-depth-1 li a{padding-inline-start:18px;font-weight:600}.site-map-depth-2 li a{padding-inline-start:28px;font-size:.77rem;color:#687b89}.site-map-list b{font-weight:500;color:var(--accent)}

/* Footer development credit. */
.footer-bottom-inner{display:grid;grid-template-columns:1fr auto auto;align-items:center}.footer-development{color:#b8c9d5;text-align:center}.footer-development a{color:#b7e6e1;font-weight:800}.footer-development a:hover{color:#fff}

/* Keep motion varied but restrained for new V6.4 blocks. */
.eservice-spotlight .motion-item,.logo-carousel.motion-item{will-change:opacity,transform}

@media(max-width:1060px){
  .useful-carousel-card,.partner-logo-card{flex-basis:33.3333%}
  .contact-v64-layout{grid-template-columns:minmax(0,1fr) 245px}
  .contact-v64-hero{grid-template-columns:1fr}.contact-v64-actions{justify-content:flex-start}
  .footer-bottom-inner{grid-template-columns:1fr auto}.footer-development{grid-column:1/-1;grid-row:2;text-align:start}
}
@media(max-width:820px){
  .news-ticker-inner{grid-template-columns:auto minmax(0,1fr)}.news-ticker-all{display:none}
  .eservice-spotlight-inner{grid-template-columns:54px minmax(0,1fr);padding-block:16px}.eservice-spotlight-button{grid-column:1/-1;justify-self:start;margin-inline-start:72px}
  .useful-carousel-card,.partner-logo-card{flex-basis:50%}
  .contact-v64-layout{grid-template-columns:1fr}.contact-page-v64 .contact-related-aside{position:static}.contact-directorates-grid{grid-template-columns:1fr}.contact-v64-overview{grid-template-columns:43px minmax(0,1fr)}.contact-v64-overview-links{grid-column:1/-1}
  .site-map-depth-0{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .news-ticker-label{padding-inline:10px}.news-ticker-label strong{display:none}.news-ticker-group a{padding-inline:18px;font-size:.74rem}
  .eservice-spotlight-inner{grid-template-columns:44px minmax(0,1fr);gap:12px}.eservice-spotlight-icon{width:44px;height:44px}.eservice-spotlight-icon svg{width:23px;height:23px}.eservice-spotlight-copy h2{font-size:1.18rem}.eservice-spotlight-copy p{font-size:.75rem}.eservice-spotlight-button{margin-inline-start:56px;min-width:0}
  .useful-carousel-card,.partner-logo-card{flex-basis:100%}
  .contact-v64-hero{padding:18px}.contact-v64-title h1{font-size:1.5rem}.contact-v64-actions{display:grid;grid-template-columns:1fr}.contact-v64-actions>a{min-width:0}.contact-directorates-all{padding:14px}.contact-directorates-all-head{align-items:start;flex-direction:column}.contact-directorate-fields{grid-template-columns:1fr}.contact-directorate-field:nth-last-child(-n+2){border-bottom:1px dashed #e6ecef}.contact-directorate-field:last-child{border-bottom:0}
  .site-map-depth-0{grid-template-columns:1fr}.site-map-card{padding:13px}
  .footer-bottom-inner{grid-template-columns:1fr;gap:5px}.footer-development{grid-column:auto;grid-row:auto;text-align:start}
}
@media(prefers-reduced-motion:reduce){.news-ticker-track{animation:none}.logo-carousel-track{transition:none}}
[dir="ltr"] .useful-carousel-card,[dir="ltr"] .partner-logo-card{direction:ltr}
.logo-carousel-controls button:disabled{opacity:.4;cursor:default;background:#fff;color:#82909d;border-color:#d7e0e5}

/* =========================================================
   V6.5 — article reliability, page refinements, ticker direction
   ========================================================= */
.prose img{display:block;max-width:100%!important;height:auto!important}
.post-detail-prose{background:#fff;border:1px solid #dce5ea;padding:24px 26px;min-height:220px}
.post-detail-prose>span,.post-detail-prose>strong{font-size:1rem!important;line-height:2!important;color:#263d50}
.post-detail-prose img{margin:18px auto;object-fit:contain}
.post-detail-prose a[href$=".pdf"],.post-detail-prose a[href*=".pdf?"],
.prose a[href$=".doc"],.prose a[href$=".docx"],.prose a[href$=".xls"],.prose a[href$=".xlsx"]{font-weight:700;color:var(--accent-dark)}

/* News ticker: Arabic travels left -> right, English right -> left, slower. */
.news-ticker-track{animation-duration:76s!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important}
[dir="rtl"] .news-ticker-track{animation-name:jmaTickerRtl!important}
[dir="ltr"] .news-ticker-track{animation-name:jmaTickerLtr!important}
@keyframes jmaTickerRtl{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
@keyframes jmaTickerLtr{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

/* Director General welcome page: text on the right, portrait physically on the left. */
.welcome-prose{background:#fff;border:1px solid #dce5ea;padding:25px}
.welcome-content-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:30px;align-items:start;direction:ltr}
.welcome-copy{grid-column:2;direction:rtl;text-align:right;min-width:0}
[dir="ltr"] .welcome-copy{direction:ltr;text-align:left}
.welcome-director-card{grid-column:1;direction:rtl;border:1px solid #d8e3e8;background:#f7fafb;position:sticky;top:18px}
.welcome-director-photo{background:linear-gradient(180deg,#eef4f6,#fff);padding:16px 14px 0;min-height:310px;display:flex;align-items:flex-end;justify-content:center}
.welcome-director-photo img{width:100%;max-height:330px;object-fit:contain;margin:0!important;border-radius:0!important}
.welcome-director-meta{padding:13px 14px;border-top:3px solid var(--accent);background:#fff;text-align:center}
.welcome-director-meta strong{display:block;color:var(--navy);font-size:.9rem}.welcome-director-meta span{display:block;color:#71818e;font-size:.7rem;margin-top:2px}
.welcome-copy>p:first-child{margin-top:0}.welcome-copy span[style]{font-size:inherit!important;color:inherit!important}.welcome-copy strong{font-weight:700}.welcome-copy p{font-size:.98rem;line-height:2.05}

/* Directorates / units page: turn legacy long text into a readable institutional directory. */
.directorates-prose{background:transparent}
.directorates-prose span[style]{font-size:inherit!important;color:inherit!important}
.directorates-prose>p:first-child{margin:0 0 18px;padding:20px 22px;background:#0d4165;color:#fff;border-inline-start:4px solid var(--accent);text-align:start!important}
.directorates-prose>p:first-child strong{font-size:1.2rem;color:#fff}
.directorates-prose>p:has(u){margin:24px 0 0;padding:13px 16px;background:#edf5f5;border:1px solid #d2e5e3;border-inline-start:4px solid var(--accent);color:#113f60}
.directorates-prose>p:has(u) strong{font-size:1.03rem;color:#113f60}.directorates-prose>p:has(u) u{text-decoration:none}
.directorates-prose>ol{margin:9px 0 0;padding:0;list-style-position:inside;display:grid;gap:8px}
.directorates-prose>ol>li{margin:0;padding:14px 16px;background:#fff;border:1px solid #dfe7eb;box-shadow:0 2px 8px rgba(12,48,76,.03);font-size:.94rem;line-height:1.95}
.directorates-prose>ol>li::marker{color:var(--accent);font-weight:800}
.directorates-prose>ol>li strong:first-child{color:#103f61;font-weight:800}
.directorates-prose>p:not(:first-child):not(:has(u)){margin:8px 0;padding:12px 16px;background:#fafcfd;border-inline-start:2px solid #d7e3e8;font-size:.93rem;line-height:1.95}
.directorates-prose>p:empty{display:none}

@media(max-width:900px){
  .welcome-content-grid{grid-template-columns:220px minmax(0,1fr);gap:20px}
  .welcome-director-photo{min-height:250px}
}
@media(max-width:700px){
  .post-detail-prose,.welcome-prose{padding:16px}
  .welcome-content-grid{grid-template-columns:1fr;direction:rtl}.welcome-copy,.welcome-director-card{grid-column:1}.welcome-copy{grid-row:1}.welcome-director-card{grid-row:2;position:static}.welcome-director-photo{min-height:0}.welcome-director-photo img{max-height:300px;width:auto}
  .directorates-prose>p:first-child{padding:16px}.directorates-prose>p:has(u){padding:11px 13px}.directorates-prose>ol>li{padding:12px 13px}
}


/* =========================================================
   V6.5.1 — Contact page full-width refinement
   Remove the contact-only related sidebar, use the available
   viewport width, and improve readability of directorate data.
   ========================================================= */
.contact-page-v64 .contact-v64-shell.container{
  width:min(1420px,calc(100% - 34px));
}
.contact-page-v64 .contact-v64-layout{
  display:block;
}
.contact-page-v64 .contact-v64-main{
  width:100%;
  max-width:none;
}
.contact-page-v64 .contact-related-aside{
  display:none!important;
}
.contact-page-v64 .contact-kicker{
  font-size:.88rem;
  letter-spacing:0;
}
.contact-page-v64 .contact-v64-title h1{
  font-size:2rem;
  line-height:1.38;
  margin-bottom:7px;
}
.contact-page-v64 .contact-v64-title p{
  font-size:1rem;
  line-height:1.9;
  max-width:900px;
}
.contact-page-v64 .contact-v64-actions>a{
  min-width:178px;
  grid-template-columns:39px minmax(0,1fr);
  gap:10px;
  padding:11px 13px;
}
.contact-page-v64 .contact-v64-actions svg{
  width:24px;
  height:24px;
}
.contact-page-v64 .contact-v64-actions small{
  font-size:.76rem;
}
.contact-page-v64 .contact-v64-actions strong{
  font-size:.92rem;
}
.contact-page-v64 .contact-v64-overview{
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:14px;
  padding:16px 18px;
}
.contact-page-v64 .contact-v64-overview-mark{
  width:47px;
  height:47px;
}
.contact-page-v64 .contact-v64-overview small{
  font-size:.79rem;
}
.contact-page-v64 .contact-v64-overview strong{
  font-size:1rem;
}
.contact-page-v64 .contact-v64-overview-links a{
  font-size:.84rem;
  padding:9px 11px;
}
.contact-page-v64 .contact-directorates-all{
  padding:24px;
}
.contact-page-v64 .contact-directorates-all-head{
  padding-bottom:17px;
  margin-bottom:18px;
}
.contact-page-v64 .contact-directorates-all-head h2{
  font-size:1.45rem;
}
.contact-page-v64 .contact-directorates-count{
  font-size:.8rem;
  padding:6px 10px;
}
.contact-page-v64 .contact-directorates-grid{
  gap:14px;
}
.contact-page-v64 .contact-directorate-card>header{
  grid-template-columns:40px minmax(0,1fr);
  gap:11px;
  min-height:65px;
  padding:11px 13px;
}
.contact-page-v64 .contact-directorate-card>header>span{
  width:36px;
  height:36px;
  font-size:.78rem;
}
.contact-page-v64 .contact-directorate-card>header h3{
  font-size:1.04rem;
  line-height:1.55;
}
.contact-page-v64 .contact-directorate-fields{
  padding:10px 13px 12px;
  gap:0 16px;
}
.contact-page-v64 .contact-directorate-field{
  grid-template-columns:35px minmax(0,1fr);
  gap:9px;
  min-height:58px;
  padding:8px 0;
}
.contact-page-v64 .contact-directorate-field .contact-field-icon{
  width:33px;
  height:33px;
}
.contact-page-v64 .contact-directorate-field .contact-field-icon svg{
  width:17px;
  height:17px;
}
.contact-page-v64 .contact-directorate-field small{
  font-size:.73rem;
  line-height:1.45;
}
.contact-page-v64 .contact-directorate-field strong{
  font-size:.88rem;
  line-height:1.55;
}
@media(max-width:1060px){
  .contact-page-v64 .contact-v64-shell.container{width:min(100% - 28px,1180px)}
}
@media(max-width:820px){
  .contact-page-v64 .contact-v64-title h1{font-size:1.75rem}
  .contact-page-v64 .contact-v64-title p{font-size:.94rem}
  .contact-page-v64 .contact-directorates-all-head h2{font-size:1.28rem}
  .contact-page-v64 .contact-directorate-card>header h3{font-size:1rem}
  .contact-page-v64 .contact-directorate-field strong{font-size:.86rem}
}
@media(max-width:620px){
  .contact-page-v64 .contact-v64-shell.container{width:calc(100% - 20px)}
  .contact-page-v64 .contact-v64-title h1{font-size:1.55rem}
  .contact-page-v64 .contact-v64-title p{font-size:.9rem}
  .contact-page-v64 .contact-v64-overview small{font-size:.74rem}
  .contact-page-v64 .contact-v64-overview strong{font-size:.91rem}
  .contact-page-v64 .contact-directorate-field small{font-size:.71rem}
  .contact-page-v64 .contact-directorate-field strong{font-size:.86rem}
}

/* =========================================================
   V6.5.4 — reliable news details + readable article paragraphs
   ========================================================= */
/* News content must never depend on JS animation to become visible. */
.post-detail-prose,.post-detail-prose.motion-item{
  opacity:1!important;
  transform:none!important;
  clip-path:none!important;
  filter:none!important;
}
.post-detail-prose{padding:28px 30px;background:#fff}
.post-article-body{
  color:#1d3345;
  font-size:1.02rem;
  font-weight:500;
  line-height:2.1;
  overflow-wrap:anywhere;
}
.post-article-body>div{display:block;margin:0}
.post-article-body p,
.post-article-body div>p{
  margin:0 0 1.15rem;
  color:#1d3345;
  font-size:inherit!important;
  font-weight:500;
  line-height:2.1!important;
  text-align:start;
}
.post-article-body p:last-child{margin-bottom:0}
.post-article-body span[style],
.post-article-body font,
.post-article-body strong[style],
.post-article-body em[style]{
  font-size:inherit!important;
  line-height:inherit!important;
  background:transparent!important;
}
.post-article-body strong{color:#163f5c;font-weight:800}
.post-article-body a{font-weight:700;text-underline-offset:3px}
.post-article-body ul,.post-article-body ol{margin:0 0 1.2rem;padding-inline-start:28px}
.post-article-body li{margin:.35rem 0;line-height:1.95}
.post-article-body blockquote{
  margin:1.25rem 0;padding:14px 18px;background:#f5f9fa;
  border-inline-start:4px solid var(--accent);color:#344f62
}
.post-article-body img{
  display:block;width:auto;max-width:100%!important;height:auto!important;
  margin:20px auto;border:1px solid #e0e7eb;border-radius:4px;background:#fff
}
/* Migrated posts often contain a long run of images in one SPAN/P block. */
.post-article-body .post-gallery{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;margin:22px 0!important;width:100%
}
.post-article-body .post-gallery>img{
  width:100%!important;height:320px!important;object-fit:contain;
  margin:0!important;padding:4px;background:#f8fafb
}
.post-excerpt-fallback{
  padding:16px 18px;background:#f6fafb;border-inline-start:4px solid var(--accent)
}
@media(max-width:760px){
  .post-detail-prose{padding:18px 16px}
  .post-article-body{font-size:.98rem;line-height:2}
  .post-article-body p,.post-article-body div>p{line-height:2!important}
  .post-article-body .post-gallery{grid-template-columns:1fr}
  .post-article-body .post-gallery>img{height:auto!important;max-height:520px}
}
/* Image runs from old WordPress news are presented as a clean gallery. */
.post-article-body span:has(> img + img),
.post-article-body p:has(> img + img){
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:22px 0!important;
  width:100%
}
.post-article-body span:has(> img + img)>img,
.post-article-body p:has(> img + img)>img{
  width:100%!important;
  height:320px!important;
  object-fit:contain;
  margin:0!important;
  padding:4px;
  background:#f8fafb
}
@media(max-width:760px){
  .post-article-body span:has(> img + img),
  .post-article-body p:has(> img + img){grid-template-columns:1fr}
  .post-article-body span:has(> img + img)>img,
  .post-article-body p:has(> img + img)>img{height:auto!important;max-height:520px}
}


/* =========================================================
   V6.5.14 — normalized paragraph structure for all news posts
   ========================================================= */
.post-article-body{
  direction:rtl;
  text-align:start;
}
html[lang="en"] .post-article-body{direction:ltr}
.post-article-body .post-paragraph,
.post-article-body p.post-paragraph{
  display:block;
  margin:0 0 1.35rem!important;
  padding:0!important;
  color:#1d3345!important;
  background:transparent!important;
  font-family:"Tajawal",Arial,sans-serif!important;
  font-size:1.045rem!important;
  font-weight:500!important;
  line-height:2.15!important;
  text-align:start!important;
  white-space:normal!important;
}
.post-article-body .post-paragraph:empty{display:none!important}
.post-article-body .post-media-block{
  display:block!important;
  width:100%;
  margin:1.6rem 0 1.75rem!important;
  padding:0!important;
  text-align:center;
  background:transparent!important;
}
.post-article-body .post-media-block>span,
.post-article-body .post-media-block>a{
  display:block!important;
  width:100%;
}
.post-article-body .post-media-block img{
  display:block!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  object-fit:contain!important;
}
/* Gmail/Word wrappers may remain around normalized paragraphs; keep them neutral. */
.post-article-body div:not(.post-media-block):not(.post-gallery){
  max-width:100%;
}
.post-article-body [dir="ltr"] .post-paragraph[dir="rtl"],
.post-article-body .post-paragraph[dir="rtl"]{
  direction:rtl!important;
  unicode-bidi:plaintext;
}
html[lang="en"] .post-article-body .post-paragraph{
  direction:ltr!important;
  text-align:left!important;
  line-height:1.85!important;
}
@media (min-width:900px){
  .post-article-body .post-paragraph{max-width:960px;margin-inline:auto!important}
  .post-article-body .post-media-block{max-width:1050px;margin-inline:auto!important}
}
@media (max-width:760px){
  .post-article-body .post-paragraph,
  .post-article-body p.post-paragraph{
    font-size:1rem!important;
    line-height:2.05!important;
    margin-bottom:1.1rem!important;
  }
}


/* Logged-in administrator shortcut on the public website. */
.front-admin-edit{position:fixed;z-index:9998;left:18px;bottom:18px;display:flex;gap:7px;align-items:center;padding:7px;border:1px solid rgba(15,63,94,.18);border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 10px 28px rgba(10,43,66,.16);backdrop-filter:blur(8px)}
.front-admin-edit a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:7px;text-decoration:none;font:700 .78rem/1 Tajawal,Arial,sans-serif;color:#174f6c;background:#eef5f8}
.front-admin-edit a:first-child{color:#fff;background:#176f97}.front-admin-edit a:hover{filter:brightness(.97)}
@media(max-width:620px){.front-admin-edit{left:8px;right:8px;bottom:8px;justify-content:center}.front-admin-edit a{flex:1;justify-content:center}}


/* =========================================================
   V6.8 — English typography + editor image sizing fidelity
   ========================================================= */
html[lang="en"] body{font-family:"Inter","Segoe UI",Arial,sans-serif;line-height:1.65;letter-spacing:0}
html[lang="en"] .main-nav a,
html[lang="en"] .gov-topbar,
html[lang="en"] .brand-copy,
html[lang="en"] .page-hero,
html[lang="en"] .prose,
html[lang="en"] .aside-card,
html[lang="en"] button,
html[lang="en"] input,
html[lang="en"] select,
html[lang="en"] textarea{font-family:"Inter","Segoe UI",Arial,sans-serif}
html[lang="en"] .main-nav>ul>li>a{font-weight:600;letter-spacing:.01em}
html[lang="en"] .main-nav li ul li>a{font-weight:500;line-height:1.35}
html[lang="en"] .post-article-body .post-paragraph{font-family:"Inter","Segoe UI",Arial,sans-serif!important;font-weight:400!important;line-height:1.8!important}
/* Respect width/height selected in TinyMCE. max-width keeps oversized images responsive. */
.prose img[width],.post-article-body img[width]{max-width:100%!important}
.prose img[style*="width"],.post-article-body img[style*="width"]{max-width:100%!important}

/* Official website brand marks in the useful links carousel. */
.useful-carousel-card>.useful-brand-logo{width:64px;height:64px;padding:7px;background:#fff;border:1px solid #e1e9ec;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.useful-carousel-card{grid-template-columns:64px minmax(0,1fr) 22px;gap:13px}
.useful-brand-logo img{display:block;width:100%;height:100%;max-width:52px;max-height:52px;object-fit:contain}
.useful-brand-fallback svg{width:26px;height:26px}
.useful-carousel-card:hover>.useful-brand-logo{background:#fff;border-color:#bfd9d6}
@media(max-width:600px){.useful-carousel-card{grid-template-columns:54px minmax(0,1fr) 18px;gap:10px}.useful-carousel-card>.useful-brand-logo{width:54px;height:54px}.useful-brand-logo img{max-width:44px;max-height:44px}}

/* Keep complete high-resolution agency wordmarks visible without blur or cropping. */
.useful-carousel-card>.useful-brand-logo{width:82px;height:72px;padding:5px;background:#fff;border-color:#e3e9ef}
.useful-carousel-card{grid-template-columns:82px minmax(0,1fr) 22px;gap:12px}
.useful-carousel-card .useful-brand-logo img{width:100%;height:100%;max-width:72px;max-height:62px;object-fit:contain;image-rendering:auto}
.useful-carousel-card .useful-brand-fallback{width:100%;height:100%;align-items:center;justify-content:center;color:#087569;background:#ecf7f5;border-radius:5px}
.useful-carousel-card .useful-brand-fallback svg{height:35px;width:35px}
@media(max-width:600px){.useful-carousel-card{grid-template-columns:66px minmax(0,1fr) 18px}.useful-carousel-card>.useful-brand-logo{width:66px;height:64px}.useful-carousel-card .useful-brand-logo img{max-width:58px;max-height:56px}}

/* 2026-10-15: larger, crisp logos in useful links carousel */
.useful-carousel-card{grid-template-columns:112px minmax(0,1fr) 18px;gap:12px;min-height:154px;padding:14px 15px}
.useful-carousel-card>.useful-brand-logo{width:112px;height:100px;padding:4px;border-radius:9px;overflow:hidden;background:#fff}
.useful-carousel-card .useful-brand-logo img{width:100%;height:100%;max-width:102px;max-height:90px;object-fit:contain}
.useful-carousel-card strong{font-size:.94rem;line-height:1.5}
.useful-carousel-card .useful-brand-fallback svg{width:48px;height:48px}
@media(max-width:767px){.useful-carousel-card{grid-template-columns:94px minmax(0,1fr) 18px;min-height:126px;gap:10px}.useful-carousel-card>.useful-brand-logo{width:94px;height:86px}.useful-carousel-card .useful-brand-logo img{max-width:86px;max-height:78px}}
@media(max-width:390px){.useful-carousel-card{grid-template-columns:82px minmax(0,1fr) 16px}.useful-carousel-card>.useful-brand-logo{width:82px;height:78px}.useful-carousel-card .useful-brand-logo img{max-width:74px;max-height:70px}}

/* Original official website useful-links gallery */
.useful-carousel-card.useful-original-card{grid-template-columns:minmax(125px,190px) minmax(0,1fr) 16px;gap:13px;padding:12px 15px;min-height:155px}
.useful-carousel-card.useful-original-card>.useful-brand-logo{width:100%;height:115px;min-width:0;padding:4px 6px;background:white;border:1px solid #e3e9ed;border-radius:8px;display:flex;align-items:center;justify-content:center}
.useful-carousel-card.useful-original-card .useful-brand-logo img{width:100%;height:100%;max-width:100%;max-height:106px;object-fit:contain;display:block}
.useful-carousel-card.useful-original-card strong{font-size:.92rem;line-height:1.5}
@media(max-width:767px){.useful-carousel-card.useful-original-card{grid-template-columns:125px minmax(0,1fr) 16px;min-height:137px;padding:10px}.useful-carousel-card.useful-original-card>.useful-brand-logo{height:100px}}
@media(max-width:390px){.useful-carousel-card.useful-original-card{grid-template-columns:104px minmax(0,1fr) 12px}.useful-carousel-card.useful-original-card>.useful-brand-logo{height:87px}}

/* Useful-links strip: show original image only, no labels or arrows */
.useful-carousel-card.useful-original-card{display:flex!important;align-items:center!important;justify-content:center!important;padding:12px!important;min-height:155px!important;gap:0!important;text-decoration:none!important}
.useful-carousel-card.useful-original-card>.useful-brand-logo{width:100%!important;height:125px!important;padding:5px!important;margin:0!important;border:0!important;background:transparent!important;display:flex!important;align-items:center!important;justify-content:center!important}
.useful-carousel-card.useful-original-card .useful-brand-logo img{width:100%!important;height:100%!important;max-height:120px!important;object-fit:contain!important}
.useful-carousel-card.useful-original-card strong,.useful-carousel-card.useful-original-card>b{display:none!important}
@media(max-width:767px){.useful-carousel-card.useful-original-card{min-height:130px!important}.useful-carousel-card.useful-original-card>.useful-brand-logo{height:106px!important}.useful-carousel-card.useful-original-card .useful-brand-logo img{max-height:100px!important}}
