/* Board of Geologists Malaysia - static public site 2026 */
:root{
  --navy:#063a66;--navy-2:#0a527f;--navy-3:#0b2945;--sky:#eaf5fb;--blue:#1377a8;
  --orange:#ef7f1a;--amber:#f4a62a;--green:#79a833;--ink:#17212b;--muted:#637180;
  --line:#dbe4ea;--paper:#fff;--wash:#f6f9fb;--success:#0c7c59;--radius:20px;
  --shadow:0 18px 50px rgba(6,58,102,.11);--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--navy-2);text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{color:var(--navy)}img{max-width:100%;height:auto}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;color:#000;padding:10px 14px;z-index:999}.skip-link:focus{left:8px}
.topbar{background:var(--navy-3);color:#d9edf8;font-size:.9rem}.topbar .container{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar a{color:#fff;text-decoration:none}.topbar-note{display:flex;gap:8px;align-items:center}.dot{width:7px;height:7px;border-radius:50%;background:#91c63e;display:inline-block}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(219,228,234,.9)}.header-row{display:flex;align-items:center;min-height:86px;gap:24px}.brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;min-width:330px}.brand img{width:108px;height:58px;object-fit:contain}.brand strong{display:block;color:var(--navy);font-size:1.02rem;line-height:1.15;letter-spacing:.01em}.brand span{display:block;font-size:.9rem;color:var(--muted);margin-top:3px}.site-nav{margin-left:auto;display:flex;align-items:center;gap:4px}.site-nav a{display:inline-flex;align-items:center;min-height:44px;padding:10px 11px;border-radius:11px;text-decoration:none;color:#2b3742;font-weight:650;font-size:.92rem}.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--sky);color:var(--navy)}.site-nav .nav-cta{background:var(--navy);color:white;padding-inline:16px}.site-nav .nav-cta:hover{background:var(--navy-2);color:white}.menu-btn{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 11px;font-weight:700;color:var(--navy)}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f3f9fc 0%,#fff 54%,#fff7ec 100%);border-bottom:1px solid var(--line)}.hero:before,.page-hero:before{content:"";position:absolute;inset:-35% -10%;opacity:.32;background:repeating-radial-gradient(ellipse at 86% 25%,transparent 0 18px,rgba(19,119,168,.16) 19px 20px,transparent 21px 34px);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:56px;min-height:590px;padding:76px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid #cfe2ec;background:rgba(255,255,255,.78);border-radius:999px;padding:7px 12px;color:var(--navy);font-weight:750;font-size:.9rem;letter-spacing:.025em}.hero h1{font-size:clamp(2.6rem,6vw,5.25rem);letter-spacing:-.055em;line-height:.98;margin:20px 0 24px;color:var(--navy-3);max-width:850px}.hero h1 em{font-style:normal;color:var(--orange)}.lead{font-size:1.12rem;color:#4b5c69;max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:13px;padding:11px 18px;text-decoration:none;font-weight:750;border:1px solid transparent}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-2);color:#fff}.btn-secondary{background:#fff;color:var(--navy);border-color:#ccdbe4}.btn-secondary:hover{background:var(--sky)}.btn-light{background:#fff;color:var(--navy)}.btn-sm{min-height:40px;padding:8px 13px;font-size:.9rem}.arrow{font-size:1.1em}.hero-panel{background:rgba(255,255,255,.86);border:1px solid rgba(202,219,229,.9);box-shadow:var(--shadow);border-radius:28px;padding:28px;position:relative}.hero-panel:after{content:"";position:absolute;width:118px;height:8px;border-radius:10px;background:linear-gradient(90deg,var(--orange),var(--amber),var(--green),var(--blue));top:0;left:28px;transform:translateY(-50%)}.hero-panel h2{font-size:1.1rem;margin:0 0 18px;color:var(--navy)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{background:var(--wash);border:1px solid var(--line);border-radius:16px;padding:18px}.stat b{display:block;font-size:1.7rem;color:var(--navy);line-height:1}.stat span{display:block;margin-top:7px;font-size:.9rem;color:var(--muted)}.stat-note{font-size:.9rem;color:var(--muted);margin:13px 0 0}
.section{padding:76px 0}.section-muted{background:var(--wash)}.section-dark{background:var(--navy-3);color:#fff}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-head h2{font-size:clamp(1.8rem,4vw,2.75rem);line-height:1.08;letter-spacing:-.035em;margin:0;color:var(--navy-3)}.section-dark .section-head h2{color:#fff}.section-head p{margin:0;color:var(--muted);max-width:640px}.section-dark .section-head p{color:#c9dae7}.kicker{font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;color:var(--orange);font-weight:800;margin-bottom:7px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:215px;text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.service-card:hover{transform:translateY(-3px);border-color:#b9d2df;box-shadow:0 15px 35px rgba(6,58,102,.09);color:inherit}.service-card .icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:var(--sky);color:var(--navy);font-weight:900;margin-bottom:18px}.service-card h3{margin:0 0 8px;font-size:1.07rem;color:var(--navy-3)}.service-card p{margin:0;color:var(--muted);font-size:.92rem}.service-card .more{position:absolute;bottom:20px;right:22px;color:var(--navy);font-weight:800}
.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.notice-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 24px rgba(6,58,102,.06)}.notice-card button{display:block;padding:0;border:0;background:none;width:100%;cursor:zoom-in}.notice-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.notice-body{padding:18px 20px 20px}.notice-meta{font-size:.9rem;color:var(--muted);font-weight:700}.notice-card h3{font-size:1.02rem;line-height:1.35;margin:7px 0 0;color:var(--navy-3)}dialog{border:0;border-radius:18px;padding:0;max-width:min(1050px,92vw);box-shadow:0 30px 100px rgba(0,0,0,.34)}dialog::backdrop{background:rgba(4,21,35,.8)}.dialog-inner{position:relative;background:#111}.dialog-inner img{display:block;max-height:85vh;margin:auto}.dialog-close{position:absolute;right:10px;top:10px;border:0;border-radius:999px;background:rgba(255,255,255,.92);width:42px;height:42px;font-size:1.2rem;cursor:pointer}
.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}.feature-box{border-radius:24px;background:#fff;border:1px solid var(--line);padding:28px}.section-dark .feature-box{background:#0a456f;border-color:#1b5d87}.check-list{list-style:none;padding:0;margin:18px 0 0}.check-list li{position:relative;padding:10px 0 10px 30px;border-bottom:1px solid var(--line)}.section-dark .check-list li{border-color:#285f80}.check-list li:before{content:"✓";position:absolute;left:0;top:10px;color:var(--success);font-weight:900}.section-dark .check-list li:before{color:#a7d84b}.quote{font-size:1.3rem;line-height:1.5;margin:0;color:var(--navy-3)}
.page-hero{position:relative;overflow:hidden;background:linear-gradient(130deg,#f3f9fc,#fff);border-bottom:1px solid var(--line)}.page-hero .container{position:relative;padding:68px 0 55px}.page-hero h1{font-size:clamp(2.3rem,5vw,4rem);margin:10px 0 12px;line-height:1.03;letter-spacing:-.045em;color:var(--navy-3)}.breadcrumbs{font-size:.9rem;color:var(--muted)}.breadcrumbs a{text-decoration:none}.content{padding:60px 0 80px}.prose{max-width:820px}.prose h2{color:var(--navy);font-size:1.55rem;margin-top:2.1em}.prose h3{color:var(--navy-3);font-size:1.1rem;margin-top:1.6em}.prose p,.prose li{color:#465662}.prose li+li{margin-top:.45rem}.callout{border-left:4px solid var(--orange);background:#fff7ed;padding:17px 19px;border-radius:0 14px 14px 0;margin:24px 0}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.info-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.info-card h2,.info-card h3{margin:0 0 8px;color:var(--navy);font-size:1.05rem}.info-card p{margin:0;color:var(--muted);font-size:.92rem}.info-card .tag{display:inline-block;font-size:.9rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;background:var(--sky);color:var(--navy);padding:5px 8px;border-radius:8px;margin-bottom:12px}.download-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.download-card{display:flex;gap:15px;align-items:center;padding:17px 18px;background:#fff;border:1px solid var(--line);border-radius:15px;text-decoration:none;color:inherit}.download-card:hover{border-color:#a9c9da;background:#fbfdfe;color:inherit}.file-icon{flex:0 0 42px;height:42px;border-radius:12px;background:var(--sky);display:grid;place-items:center;color:var(--navy);font-weight:900;font-size:.9rem}.download-card strong{display:block;color:var(--navy-3);font-size:.93rem}.download-card span{display:block;color:var(--muted);font-size:.9rem}.steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0;list-style:none}.steps li{counter-increment:step;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.steps li:before{content:counter(step);display:grid;place-items:center;width:34px;height:34px;background:var(--navy);color:#fff;border-radius:11px;font-weight:900;margin-bottom:12px}.steps strong{display:block;color:var(--navy-3)}.steps span{display:block;font-size:.9rem;color:var(--muted);margin-top:6px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}table{width:100%;border-collapse:collapse;min-width:620px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line)}th{background:var(--navy);color:#fff;font-size:.9rem}td{font-size:.9rem;color:#445461}tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 10px;font-size:.9rem;font-weight:800;background:#eaf7f2;color:#0a6f50}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:#22a06b}
details{border:1px solid var(--line);border-radius:14px;background:#fff;padding:0 17px;margin:10px 0}summary{cursor:pointer;padding:15px 0;font-weight:750;color:var(--navy)}details p,details ol{margin-top:0;color:#4a5a66}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px}.contact-card{border:1px solid var(--line);border-radius:20px;padding:24px;background:#fff}.contact-list{list-style:none;margin:0;padding:0}.contact-list li{padding:12px 0;border-bottom:1px solid var(--line)}.contact-list li:last-child{border-bottom:0}.contact-list strong{display:block;color:var(--navy);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}.contact-list a{text-decoration:none}.map-placeholder{min-height:100%;border-radius:20px;background:linear-gradient(135deg,#e8f3f8,#fff6e9);border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;justify-content:end}.map-placeholder .pin{font-size:2.1rem}
.footer{background:#061f34;color:#d6e3ec;padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:40px}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:100px;background:#fff;border-radius:12px;padding:6px}.footer h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:#fff;margin:0 0 12px}.footer p{color:#aebfcb;font-size:.9rem}.footer a{color:#dceaf3;text-decoration:none}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:8px 0}.footer-bottom{margin-top:38px;padding-top:20px;border-top:1px solid #173a52;display:flex;justify-content:space-between;gap:20px;color:#91a8b7;font-size:.9rem}.footer-bottom a{color:#bcd0dd}.external:after{content:" ↗"}.muted{color:var(--muted)}.mt-0{margin-top:0}.mt-2{margin-top:18px}.mt-3{margin-top:28px}.mb-0{margin-bottom:0}.text-center{text-align:center}.anchor-offset{scroll-margin-top:110px}
@media (max-width:980px){.brand{min-width:auto}.brand span{display:none}.menu-btn{display:inline-flex;align-items:center;gap:9px;position:relative;z-index:260}.menu-btn:before{content:"";width:19px;height:14px;background:linear-gradient(var(--navy),var(--navy)) 0 0/100% 2px no-repeat,linear-gradient(var(--navy),var(--navy)) 0 6px/100% 2px no-repeat,linear-gradient(var(--navy),var(--navy)) 0 12px/100% 2px no-repeat}.menu-btn[aria-expanded="true"]:before{content:"×";display:grid;place-items:center;width:19px;height:19px;background:none;font-size:1.45rem;line-height:1;font-weight:500}.site-nav{position:fixed;z-index:250;top:0;right:0;bottom:0;width:min(86vw,370px);height:100dvh;margin:0;background:#fff;border-left:1px solid var(--line);box-shadow:-22px 0 65px rgba(6,31,52,.22);padding:112px 22px 30px;display:flex;flex-direction:column;align-items:stretch;gap:4px;overflow-y:auto;transform:translateX(105%);visibility:hidden;transition:transform .24s ease,visibility .24s ease}.site-nav:before{content:"Navigation";position:absolute;top:34px;left:24px;color:var(--navy-3);font-weight:850;font-size:1.05rem;letter-spacing:-.01em}.site-nav.open{transform:translateX(0);visibility:visible}.site-nav a{width:100%;justify-content:flex-start;min-height:50px;padding:12px 14px;border-radius:12px;border-bottom:1px solid #edf2f5}.site-nav .nav-cta{margin-top:10px;justify-content:center;border-bottom:0}.nav-scrim{position:fixed;z-index:240;inset:0;border:0;padding:0;background:rgba(6,31,52,.48);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;cursor:default}.nav-scrim.open{opacity:1;visibility:visible}body.mobile-nav-open{overflow:hidden}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:62px 0}.hero-panel{max-width:650px}.service-grid,.notice-grid,.info-grid{grid-template-columns:1fr 1fr}.split,.contact-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media (max-width:640px){.container{width:min(100% - 28px,var(--max))}.topbar .container{justify-content:center}.topbar-note:last-child{display:none}.header-row{min-height:76px}.brand img{width:88px;height:49px}.brand strong{font-size:.9rem}.menu-btn{padding:9px 10px}.site-nav{width:min(90vw,350px);padding-top:102px}.site-nav:before{top:31px}.hero-grid{padding:46px 0 52px;gap:30px}.hero h1{font-size:2.55rem}.lead{font-size:1rem}.hero-panel{padding:20px}.stat{padding:15px}.stat b{font-size:1.4rem}.section{padding:56px 0}.section-head{display:block}.section-head p{margin-top:10px}.service-grid,.notice-grid,.info-grid,.download-grid,.steps,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.page-hero .container{padding:48px 0 40px}.content{padding:42px 0 60px}.actions .btn{width:100%}.notice-card img{aspect-ratio:4/3}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}.topbar{font-size:.9rem}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
:focus-visible{outline:3px solid #ffb14e;outline-offset:3px;border-radius:5px}

.download-card .file-icon{display:grid;color:var(--navy);font-size:.9rem}

/* Board Members page */
.board-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:start;margin-bottom:44px}.board-intro-copy{max-width:780px}.board-intro-copy h2{margin:0 0 12px;color:var(--navy-3);font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.025em}.board-intro-copy p{margin:0;color:#4b5c69}.board-composition{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.composition-item{border:1px solid var(--line);border-radius:15px;padding:14px 15px;background:var(--wash)}.composition-item b{display:block;color:var(--navy);font-size:1.18rem;line-height:1}.composition-item span{display:block;color:var(--muted);font-size:.9rem;margin-top:6px}.term-badge{display:inline-flex;align-items:center;gap:8px;background:#edf7f1;color:#0a6f50;border:1px solid #cfe7da;border-radius:999px;padding:7px 11px;font-size:.9rem;font-weight:800}.term-badge:before{content:"";width:7px;height:7px;background:#23a06b;border-radius:50%}.chair-card{display:grid;grid-template-columns:250px 1fr;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(6,58,102,.08);margin:18px 0 46px}.chair-photo{background:linear-gradient(145deg,#edf5f9,#e5eef3);min-height:260px}.chair-photo img{width:100%;height:100%;min-height:260px;object-fit:cover;object-position:center}.chair-body{padding:34px;display:flex;flex-direction:column;justify-content:center}.role-label{display:inline-flex;align-self:flex-start;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--orange);margin-bottom:10px}.chair-body h2{margin:0;color:var(--navy-3);font-size:clamp(1.65rem,3.5vw,2.4rem);line-height:1.12;letter-spacing:-.03em}.chair-body p{margin:10px 0 0;color:var(--muted)}.members-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.members-heading h2{margin:0;color:var(--navy-3);font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.025em}.members-heading p{margin:0;color:var(--muted);font-size:.9rem}.board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.board-card{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:#fff;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.board-card:hover{transform:translateY(-2px);border-color:#bfd4df;box-shadow:0 13px 30px rgba(6,58,102,.08)}.board-photo{aspect-ratio:4/3;background:linear-gradient(145deg,#edf5f9,#f7f9fa);overflow:hidden}.board-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}.board-card[data-fit="contain"] .board-photo img{object-fit:contain;padding:12px}.board-card-body{padding:18px 19px 20px}.board-card .role-label{margin-bottom:7px}.board-card h3{margin:0;color:var(--navy-3);font-size:1rem;line-height:1.38}.board-card p{margin:7px 0 0;color:var(--muted);font-size:.9rem}.board-note{margin-top:34px;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:.9rem}.board-note strong{color:var(--navy)}
@media (max-width:980px){.board-intro{grid-template-columns:1fr}.chair-card{grid-template-columns:220px 1fr}.board-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.board-intro{margin-bottom:32px}.board-composition{grid-template-columns:1fr 1fr}.chair-card{grid-template-columns:1fr;margin-bottom:36px}.chair-photo{min-height:0;aspect-ratio:4/3}.chair-photo img{min-height:0}.chair-body{padding:24px}.members-heading{display:block}.members-heading p{margin-top:6px}.board-grid{grid-template-columns:1fr}.board-photo{aspect-ratio:5/4}}


/* About BoG governance navigation and official content */
.about-section-head{margin-bottom:20px}.about-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 42px}.about-link-card{display:grid;grid-template-columns:52px minmax(0,1fr) 30px;gap:14px;align-items:center;padding:18px 18px;border:1px solid var(--line);border-radius:17px;background:#fff;text-decoration:none;color:inherit;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.about-link-card:hover{color:inherit;border-color:#b7d0dd;transform:translateY(-2px);box-shadow:0 12px 28px rgba(6,58,102,.07)}.about-link-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--sky);color:var(--navy);font-size:.9rem;font-weight:900;letter-spacing:.05em}.about-link-card strong{display:block;color:var(--navy-3);font-size:1rem}.about-link-card small{display:block;color:var(--muted);font-size:.9rem;margin-top:3px;line-height:1.4}.about-link-arrow{color:var(--navy);font-size:1.35rem;font-weight:900;text-align:right}.function-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.function-item{display:grid;grid-template-columns:96px minmax(0,1fr);gap:24px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line)}.function-no{font-size:clamp(2.5rem,5vw,4rem);line-height:.9;font-weight:900;letter-spacing:-.06em;color:#b7d0dd}.function-item:nth-child(3n+1) .function-no{color:var(--navy)}.function-item:nth-child(3n+2) .function-no{color:var(--orange)}.function-item:nth-child(3n) .function-no{color:var(--green)}.function-item p{margin:2px 0 0;color:#40515e;font-size:1rem;line-height:1.65}.source-note{font-size:.9rem;color:var(--muted);margin-top:16px}.about-subnav{display:flex;gap:7px;overflow-x:auto;padding:4px 0 18px;margin:-6px 0 30px;scrollbar-width:thin}.about-subnav a{flex:0 0 auto;text-decoration:none;color:#43535f;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:.9rem;font-weight:700;background:#fff}.about-subnav a:hover{background:var(--sky);color:var(--navy);border-color:#c5dce7}.org-chart-frame,.directory-card{border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(6,58,102,.06)}.org-chart-toolbar,.directory-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f9fcfd,#fff)}.org-chart-toolbar h2,.directory-head h2{margin:7px 0 0;color:var(--navy-3);font-size:1.35rem}.org-chart-scroll{overflow:auto;padding:20px;background:#f5f8fa}.org-chart-scroll img{display:block;width:100%;min-width:820px;height:auto;background:#fff;border-radius:10px}.committee-stack{display:grid;gap:16px}.committee-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:24px;padding:26px;border:1px solid var(--line);border-radius:20px;background:#fff}.committee-number{font-size:3rem;line-height:1;font-weight:900;letter-spacing:-.06em;color:#b7d0dd}.committee-body h2{margin:0;color:var(--navy-3);font-size:1.2rem}.committee-body p{margin:8px 0 10px;color:var(--muted)}.committee-body ol{margin:0;padding-left:1.25rem}.committee-body li{padding:3px 0;color:#445461}.usage-notice{border-left:4px solid var(--orange);background:#fff7ed;border-radius:0 15px 15px 0;padding:18px 20px;margin:0 0 22px}.usage-notice strong{color:var(--navy-3)}.usage-notice p{margin:5px 0 0;color:#5a4937;font-size:.9rem}.directory-table{border:0;border-radius:0}.directory-table table{min-width:760px}.directory-table td{vertical-align:top}.directory-table td strong{color:var(--navy-3)}.dir-no{font-weight:900;color:#9db9c8!important;width:70px}.directory-table a{font-weight:700;text-decoration:none}
@media (max-width:760px){.about-nav-grid{grid-template-columns:1fr}.function-item{grid-template-columns:72px 1fr;gap:16px}.function-no{font-size:2.7rem}.committee-card{grid-template-columns:60px 1fr;padding:20px;gap:14px}.committee-number{font-size:2.2rem}.org-chart-toolbar,.directory-head{align-items:flex-start;flex-direction:column}.org-chart-toolbar .btn{width:auto}.about-subnav{margin-left:-2px;margin-right:-2px}}
@media (max-width:480px){.function-item{grid-template-columns:58px 1fr;padding:20px 0}.function-no{font-size:2.3rem}.function-item p{font-size:.94rem}.committee-card{grid-template-columns:1fr}.committee-number{font-size:2rem}.about-link-card{grid-template-columns:46px minmax(0,1fr) 24px;padding:15px}.about-link-mark{width:44px;height:44px}.about-link-card small{font-size:.9rem}}


/* Patch 2026-07: Governance navigation, search, Vanta globe header and footer contact */
.hero,.page-hero{position:relative;isolation:isolate;overflow:hidden}.hero>.container,.page-hero>.container,.hero-grid{position:relative;z-index:2}.hero canvas,.page-hero canvas{opacity:.18!important;filter:saturate(1.08);pointer-events:none}.page-hero{background:linear-gradient(135deg,#f3f9fc 0%,#fff 62%,#fff5e9 100%);border-bottom:1px solid var(--line);padding:72px 0 58px}.page-hero h1{font-size:clamp(2.25rem,5vw,4.15rem);line-height:1.02;letter-spacing:-.045em;color:var(--navy-3);margin:10px 0 14px}.breadcrumbs{font-size:.9rem;color:var(--muted);margin-bottom:16px}.breadcrumbs a{color:var(--navy);font-weight:700;text-decoration:none}
.nav-item{position:relative;display:flex;align-items:center}.nav-parent-row{display:flex;align-items:center}.nav-parent-row>a{border-top-right-radius:0;border-bottom-right-radius:0}.submenu-toggle{height:44px;min-width:28px;border:0;background:transparent;color:#41505e;border-radius:0 11px 11px 0;font-weight:900;cursor:pointer}.nav-item:hover .nav-parent-row>a,.nav-item:focus-within .nav-parent-row>a{background:var(--sky);color:var(--navy)}.nav-child-menu{position:absolute;left:0;top:calc(100% + 8px);width:250px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 50px rgba(6,58,102,.14);border-radius:16px;padding:8px;display:none;z-index:75}.nav-item:hover .nav-child-menu,.nav-item:focus-within .nav-child-menu,.nav-item.open .nav-child-menu{display:block}.nav-child-menu a{display:flex!important;width:100%;min-height:38px;padding:8px 10px!important;border-radius:10px;font-size:.9rem;font-weight:650;color:#34414d!important}.nav-child-menu a:hover{background:var(--sky);color:var(--navy)!important}.nav-search{border:1px solid var(--line);background:#fff}.nav-search:before{content:"⌕";font-weight:900;margin-right:6px;color:var(--orange)}
.footer-grid-contact{grid-template-columns:1.45fr 1fr 1fr}.footer-contact-block h3{margin-top:0}.footer-contact-block address{font-style:normal;color:#d9e7f0;line-height:1.58;margin:0 0 14px}.footer-contact-list{list-style:none;margin:0;padding:0}.footer-contact-list li{margin:7px 0;color:#d9e7f0}.footer-contact-list strong{display:inline-block;min-width:90px;color:#fff}.footer-emails li{margin-bottom:10px}.footer-emails span{display:block;color:#b6cedd;font-size:.9rem}.footer-utility-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.12);margin-top:22px}.site-stats{display:flex;flex-wrap:wrap;gap:10px 14px;color:#d9e7f0;font-size:.9rem}.site-stats span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 10px;background:rgba(255,255,255,.04)}.site-stats strong{color:#fff}.policy-links{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:.9rem}.policy-links a{color:#d9e7f0;text-decoration:none}.policy-links a:hover{color:#fff;text-decoration:underline}.footer-brand{display:none!important}
.search-panel{border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow);padding:24px;margin-bottom:24px}.search-label{display:block;font-size:1.35rem;font-weight:850;color:var(--navy-3);margin-bottom:12px}.search-form-row{display:flex;gap:10px}.site-search-input{width:100%;min-height:52px;border:1px solid #cfdde6;border-radius:14px;padding:0 16px;font:inherit;color:var(--ink);background:#fff}.site-search-input:focus{outline:3px solid rgba(239,127,26,.22);border-color:var(--orange)}.search-results{display:grid;gap:13px}.search-result-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px 20px}.search-result-card h2{font-size:1.08rem;margin:0 0 6px;color:var(--navy-3)}.search-result-card p{margin:0;color:var(--muted)}.search-result-card a{text-decoration:none}.search-empty{border:1px dashed #bdd1dc;border-radius:18px;padding:22px;background:var(--wash);color:var(--muted)}.sitemap-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sitemap-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.sitemap-card h2{margin:0 0 12px;color:var(--navy-3);font-size:1.15rem}.sitemap-card ul{margin:0;padding-left:18px}.sitemap-card li{margin:8px 0}.sitemap-card a{text-decoration:none;font-weight:650}
@media (max-width:980px){body.mobile-nav-open{overflow:hidden}.site-header{z-index:100}.header-row{min-height:76px}.brand{min-width:0;max-width:calc(100% - 92px)}.brand img{width:88px;height:48px}.brand strong{font-size:.9rem}.brand span span{font-size:.9rem}.menu-btn{display:inline-flex;align-items:center;justify-content:center}.nav-scrim{position:fixed;inset:0;border:0;background:rgba(4,21,35,.48);z-index:80;opacity:0;visibility:hidden;transition:opacity .18s ease}.nav-scrim.open{opacity:1;visibility:visible}.site-nav{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);margin:0;background:#fff;box-shadow:-28px 0 70px rgba(5,30,50,.22);z-index:90;transform:translateX(105%);transition:transform .22s ease;display:block;overflow:auto;padding:20px}.site-nav.open{transform:translateX(0)}.site-nav:before{content:"Menu";display:block;font-size:1.35rem;font-weight:900;color:var(--navy-3);margin:4px 0 16px}.site-nav>a,.site-nav .nav-parent-row>a{width:100%;min-height:46px;border-radius:12px!important;justify-content:flex-start;padding:10px 12px}.site-nav .nav-cta{justify-content:center;margin-top:12px}.site-nav .nav-search{margin-top:8px}.nav-item{display:block;border-bottom:1px solid #e6eef3;padding:4px 0}.nav-parent-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px}.submenu-toggle{height:46px;border:1px solid var(--line);border-radius:12px;background:var(--wash)}.nav-child-menu{position:static;display:none;width:auto;box-shadow:none;border:0;background:var(--wash);border-radius:14px;margin:4px 0 8px;padding:8px}.nav-item.open .nav-child-menu{display:block}.nav-item:hover .nav-child-menu:not(.force-open){display:none}.nav-item.open:hover .nav-child-menu{display:block}.nav-child-menu a{min-height:40px!important}.site-nav a[aria-current="page"]{background:var(--sky)}}
@media (max-width:720px){.search-form-row{flex-direction:column}.search-form-row .btn{width:100%}.sitemap-layout{grid-template-columns:1fr}.footer-grid-contact{grid-template-columns:1fr}.footer-utility-row{align-items:flex-start;flex-direction:column}.page-hero{padding:54px 0 42px}.hero canvas,.page-hero canvas{opacity:.12!important}}
@media (prefers-reduced-motion:reduce){.hero canvas,.page-hero canvas{display:none!important}}

.firm-registration-panel{margin-top:42px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 10px 28px rgba(6,58,102,.06)}.firm-stats{max-width:680px;margin:16px 0 20px}.anchor-marker{display:block;position:relative;top:-110px;visibility:hidden;height:0}.anchor-offset{scroll-margin-top:120px}

/* Patch 2026-07-29: hardened desktop dropdown and mobile off-canvas menu */
@media (min-width:981px){
  .site-nav{overflow:visible;}
  .nav-item{position:relative;}
  .nav-child-menu{visibility:hidden;opacity:0;display:block;transform:translateY(6px);pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s ease;z-index:220;}
  .nav-item:hover>.nav-child-menu,.nav-item:focus-within>.nav-child-menu,.nav-item.open>.nav-child-menu{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto;}
  .site-nav>.nav-item:nth-last-of-type(1)>.nav-child-menu,
  .site-nav>.nav-item:nth-last-of-type(2)>.nav-child-menu{left:auto;right:0;}
}
@media (max-width:980px){
  .site-header{z-index:1000;}
  .menu-btn{position:relative;z-index:1003;display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;}
  .nav-scrim{position:fixed!important;inset:0!important;z-index:1001!important;border:0!important;background:rgba(4,21,35,.52)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s ease,visibility .2s ease!important;}
  .nav-scrim.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .site-nav{position:fixed!important;top:0!important;right:0!important;bottom:0!important;width:min(400px,92vw)!important;height:100dvh!important;margin:0!important;padding:72px 20px 28px!important;background:#fff!important;box-shadow:-28px 0 70px rgba(5,30,50,.24)!important;border-left:1px solid var(--line)!important;z-index:1002!important;display:block!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;transform:translateX(106%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .23s ease,opacity .2s ease,visibility .2s ease!important;}
  .site-nav.open{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .site-nav:before{content:"Menu"!important;position:absolute!important;top:22px!important;left:22px!important;display:block!important;margin:0!important;color:var(--navy-3)!important;font-size:1.35rem!important;font-weight:900!important;letter-spacing:-.02em!important;}
  .site-nav .nav-close-btn{position:absolute;top:16px;right:18px;width:42px;height:42px;border:1px solid var(--line);border-radius:999px;background:var(--wash);color:var(--navy-3);font-size:1.25rem;line-height:1;font-weight:800;cursor:pointer;}
  .site-nav>a,.site-nav .nav-parent-row>a{display:flex!important;width:100%!important;min-height:48px!important;align-items:center!important;justify-content:flex-start!important;padding:11px 12px!important;border-radius:13px!important;color:#2b3742!important;text-decoration:none!important;}
  .nav-item{display:block!important;border-bottom:1px solid #e6eef3!important;padding:5px 0!important;}
  .nav-parent-row{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:6px!important;align-items:center!important;}
  .submenu-toggle{display:grid!important;place-items:center!important;height:46px!important;min-width:46px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:var(--wash)!important;color:var(--navy)!important;font-size:1rem!important;cursor:pointer!important;}
  .nav-item.open .submenu-toggle{background:var(--sky)!important;border-color:#bdd8e7!important;}
  .nav-child-menu{position:static!important;width:auto!important;margin:4px 0 9px!important;padding:8px!important;display:none!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:auto!important;border:0!important;border-radius:15px!important;box-shadow:none!important;background:var(--wash)!important;}
  .site-nav .nav-item.open>.nav-child-menu{display:block!important;}
  .nav-child-menu a{display:flex!important;width:100%!important;min-height:42px!important;padding:9px 11px!important;border-radius:11px!important;color:#34414d!important;font-size:.91rem!important;}
  .nav-search{margin-top:8px!important;border:1px solid var(--line)!important;background:#fff!important;}
  .site-nav .nav-cta{justify-content:center!important;margin-top:12px!important;background:var(--navy)!important;color:#fff!important;}
  body.mobile-nav-open{overflow:hidden!important;touch-action:none;}
}

/* Patch 2026-07-30: final audited navigation repair */
.nav-scrim,.site-nav .nav-close-btn{display:none;}
@media (min-width:981px){
  .site-header{z-index:100;}
  .site-nav{overflow:visible;}
  .site-nav .nav-close-btn{display:none!important;}
  .nav-scrim{display:none!important;}
  .nav-item{position:relative;display:flex;align-items:center;}
  .nav-parent-row{display:flex;align-items:center;}
  .nav-child-menu{display:block!important;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;z-index:500;}
  .nav-item:hover>.nav-child-menu,.nav-item:focus-within>.nav-child-menu,.nav-item.open>.nav-child-menu{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);}
  .site-nav>.nav-item:nth-of-type(4)>.nav-child-menu{left:auto;right:0;}
}
@media (max-width:980px){
  body.mobile-nav-open{overflow:hidden!important;touch-action:none;}
  .site-header{z-index:1000!important;}
  .header-row{min-height:76px;}
  .brand{min-width:0;max-width:calc(100% - 92px);}
  .brand img{width:88px;height:48px;}
  .brand strong{font-size:.9rem;}
  .brand span span{font-size:.9rem;}
  .menu-btn{position:relative;z-index:1003;display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;margin-left:auto;}
  .menu-btn:before{content:"";width:19px;height:14px;background:linear-gradient(var(--navy),var(--navy)) 0 0/100% 2px no-repeat,linear-gradient(var(--navy),var(--navy)) 0 6px/100% 2px no-repeat,linear-gradient(var(--navy),var(--navy)) 0 12px/100% 2px no-repeat;}
  .menu-btn[aria-expanded="true"]:before{content:"×";display:grid;place-items:center;width:19px;height:19px;background:none;font-size:1.45rem;line-height:1;font-weight:500;}
  .nav-scrim{display:block!important;position:fixed!important;inset:0!important;z-index:1001!important;border:0!important;background:rgba(4,21,35,.52)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s ease,visibility .2s ease!important;}
  .nav-scrim.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .site-nav{position:fixed!important;top:0!important;right:0!important;bottom:0!important;width:min(410px,92vw)!important;height:100dvh!important;margin:0!important;padding:76px 20px 28px!important;background:#fff!important;box-shadow:-28px 0 70px rgba(5,30,50,.24)!important;border-left:1px solid var(--line)!important;z-index:1002!important;display:block!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;transform:translateX(106%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .23s ease,opacity .2s ease,visibility .2s ease!important;}
  .site-nav.open{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .site-nav:before{content:"Menu"!important;position:absolute!important;top:22px!important;left:22px!important;display:block!important;margin:0!important;color:var(--navy-3)!important;font-size:1.35rem!important;font-weight:900!important;letter-spacing:-.02em!important;}
  .site-nav .nav-close-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:absolute!important;top:16px!important;right:18px!important;width:42px!important;height:42px!important;border:1px solid var(--line)!important;border-radius:999px!important;background:var(--wash)!important;color:var(--navy-3)!important;font-size:1.25rem!important;line-height:1!important;font-weight:800!important;cursor:pointer!important;}
  .site-nav>a,.site-nav .nav-parent-row>a{display:flex!important;width:100%!important;min-height:48px!important;align-items:center!important;justify-content:flex-start!important;padding:11px 12px!important;border-radius:13px!important;color:#2b3742!important;text-decoration:none!important;border-bottom:0!important;}
  .site-nav>a:hover,.site-nav .nav-parent-row>a:hover,.site-nav a[aria-current="page"]{background:var(--sky)!important;color:var(--navy)!important;}
  .nav-item{display:block!important;border-bottom:1px solid #e6eef3!important;padding:5px 0!important;}
  .nav-parent-row{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:6px!important;align-items:center!important;}
  .submenu-toggle{display:grid!important;place-items:center!important;height:46px!important;min-width:46px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:var(--wash)!important;color:var(--navy)!important;font-size:1rem!important;cursor:pointer!important;}
  .nav-item.open .submenu-toggle{background:var(--sky)!important;border-color:#bdd8e7!important;}
  .nav-child-menu{position:static!important;width:auto!important;display:none!important;margin:4px 0 9px!important;padding:8px!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:auto!important;border:0!important;border-radius:15px!important;box-shadow:none!important;background:var(--wash)!important;}
  .nav-item:hover>.nav-child-menu,.nav-item:focus-within>.nav-child-menu{display:none!important;}
  .site-nav .nav-item.open>.nav-child-menu,.site-nav .nav-item.open:hover>.nav-child-menu,.site-nav .nav-item.open:focus-within>.nav-child-menu{display:block!important;}
  .nav-child-menu a{display:flex!important;width:100%!important;min-height:42px!important;padding:9px 11px!important;border-radius:11px!important;color:#34414d!important;font-size:.91rem!important;}
  .nav-search{margin-top:8px!important;border:1px solid var(--line)!important;background:#fff!important;}
  .site-nav .nav-cta{justify-content:center!important;margin-top:12px!important;background:var(--navy)!important;color:#fff!important;}
}

/* =========================================================
   2026-07-31 FINAL HEADER / NAVIGATION REPAIR v2.0
   Contact + Search are moved by site.js to the top utility bar
   on desktop. On mobile they return to the off-canvas menu.
   ========================================================= */
@media (min-width:981px){
  .site-header{overflow:visible!important;z-index:300!important}
  .header-row{
    min-height:92px!important;
    gap:16px!important;
    overflow:visible!important;
  }
  .brand{
    min-width:292px!important;
    flex:0 0 auto!important;
    gap:12px!important;
  }
  .brand img{width:100px!important;height:54px!important}
  .brand strong{font-size:.98rem!important;white-space:nowrap!important}
  .brand span{font-size:.9rem!important}

  .site-nav{
    margin-left:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    gap:1px!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .site-nav > a,
  .site-nav .nav-parent-row > a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:9px 9px!important;
    border-radius:10px!important;
    color:#273746!important;
    font-size:.9rem!important;
    font-weight:700!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    opacity:1!important;
    visibility:visible!important;
    text-indent:0!important;
    overflow:visible!important;
  }
  .site-nav > a:hover,
  .site-nav .nav-parent-row > a:hover,
  .site-nav a[aria-current="page"]{
    background:var(--sky)!important;
    color:var(--navy)!important;
  }
  .site-nav .nav-item{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    overflow:visible!important;
  }
  .site-nav .nav-parent-row{
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    min-width:max-content!important;
  }
  .site-nav .submenu-toggle{
    display:inline-grid!important;
    place-items:center!important;
    width:24px!important;
    min-width:24px!important;
    height:34px!important;
    margin-left:-4px!important;
    padding:0!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#506171!important;
    font-size:.9rem!important;
    line-height:1!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .site-nav .submenu-toggle:hover,
  .site-nav .nav-item.open .submenu-toggle{
    background:var(--sky)!important;
    color:var(--navy)!important;
  }
  .site-nav > .nav-cta{
    min-height:44px!important;
    margin-left:7px!important;
    padding:10px 16px!important;
    border-radius:12px!important;
    background:var(--navy)!important;
    color:#fff!important;
    font-size:.9rem!important;
    font-weight:800!important;
  }
  .site-nav > .nav-cta:hover{background:var(--navy-2)!important;color:#fff!important}

  /* Dropdowns: force readable wording regardless of earlier patches. */
  .site-nav .nav-child-menu{
    display:block!important;
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:0!important;
    width:250px!important;
    padding:8px!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 20px 50px rgba(6,58,102,.14)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translateY(7px)!important;
    transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
    z-index:900!important;
  }
  .site-nav .nav-item:hover > .nav-child-menu,
  .site-nav .nav-item:focus-within > .nav-child-menu,
  .site-nav .nav-item.open > .nav-child-menu{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .site-nav .nav-item:last-of-type > .nav-child-menu{left:auto!important;right:0!important}
  .site-nav .nav-child-menu a{
    display:flex!important;
    width:100%!important;
    min-height:39px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:8px 10px!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#34414d!important;
    font-size:.9rem!important;
    font-weight:650!important;
    line-height:1.3!important;
    white-space:normal!important;
    opacity:1!important;
    visibility:visible!important;
    text-indent:0!important;
  }
  .site-nav .nav-child-menu a:hover{background:var(--sky)!important;color:var(--navy)!important}

  /* Quick links physically moved into the top bar by JS. */
  .topbar-utility-nav{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    margin-right:8px!important;
    padding-right:9px!important;
    border-right:1px solid rgba(255,255,255,.22)!important;
  }
  .topbar-utility-nav a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:25px!important;
    padding:3px 8px!important;
    border-radius:7px!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:.9rem!important;
    font-weight:700!important;
    line-height:1!important;
    white-space:nowrap!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .topbar-utility-nav a:hover{background:rgba(255,255,255,.12)!important}
  .topbar-utility-nav .nav-search{border:1px solid rgba(255,255,255,.26)!important;background:rgba(255,255,255,.07)!important}
  .topbar-utility-nav .nav-search:before{content:"⌕"!important;margin-right:5px!important;color:#ffd18f!important;font-weight:900!important}
}

@media (min-width:981px) and (max-width:1180px){
  .brand{min-width:254px!important}
  .brand img{width:88px!important;height:48px!important}
  .brand strong{font-size:.9rem!important}
  .brand span{font-size:.9rem!important}
  .site-nav > a,.site-nav .nav-parent-row > a{padding-inline:6px!important;font-size:.9rem!important}
  .site-nav > .nav-cta{padding-inline:12px!important;font-size:.9rem!important}
  .topbar{font-size:.9rem!important}
}

/* On the mobile menu Contact / Search are returned to the nav by JS. */
@media (max-width:980px){
  .topbar-utility-nav{display:none!important}
  .site-nav > a,
  .site-nav .nav-parent-row > a{
    color:#2b3742!important;
    opacity:1!important;
    visibility:visible!important;
    text-indent:0!important;
  }
  .site-nav .nav-child-menu a{
    color:#34414d!important;
    opacity:1!important;
    visibility:visible!important;
    text-indent:0!important;
  }
}


/* =========================================================
   BoG 2026 Homepage refinement v2.1
   ========================================================= */

/* Responsible ministry under the Board name */
.brand .brand-ministry{
  display:block;
  max-width:330px;
  margin-top:4px;
  color:#657483;
  font-size:.9rem;
  line-height:1.28;
  font-weight:560;
  letter-spacing:0;
}

/* Right utility area now contains Contact/Search only. */
.topbar .topbar-note:last-child{
  min-height:30px;
}
.topbar-utility-nav{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

/* The homepage title no longer needs the "Official website • Digital services" pill. */
.hero-grid > div:first-child{
  padding-top:4px;
}

/* Registration of Geological Firms sits with related registration statistics. */
.firm-registration-summary{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid var(--line);
}
.firm-registration-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.firm-registration-head > div{
  min-width:0;
}
.firm-registration-label{
  display:block;
  color:var(--navy);
  font-size:.9rem;
  font-weight:800;
  line-height:1.25;
}
.firm-registration-head strong{
  display:block;
  margin-top:3px;
  color:var(--navy-3);
  font-size:1rem;
  line-height:1.2;
}
.firm-registration-head a{
  flex:0 0 auto;
  color:var(--navy-2);
  font-size:.9rem;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.firm-registration-head a:hover{
  text-decoration:underline;
}
.firm-registration-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.firm-registration-grid > div{
  min-width:0;
  padding:11px 10px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fbfdfe;
}
.firm-registration-grid b{
  display:block;
  color:var(--navy);
  font-size:1.15rem;
  line-height:1;
}
.firm-registration-grid span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.25;
}
.firm-registration-summary > p{
  margin:9px 0 0;
  color:var(--muted);
  font-size:.9rem;
}

/* The quote was inheriting the dark default quote colour on a blue panel. */
.section-dark .feature-box .quote{
  color:#fff!important;
}
.section-dark .feature-box .quote + .check-list{
  margin-top:22px;
}

@media (max-width:980px){
  .brand .brand-ministry{
    display:none;
  }
}

@media (max-width:640px){
  .firm-registration-head{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .firm-registration-grid{
    grid-template-columns:1fr;
  }
  .firm-registration-grid > div{
    display:grid;
    grid-template-columns:44px 1fr;
    align-items:center;
    gap:8px;
  }
  .firm-registration-grid span{
    margin-top:0;
    font-size:.9rem;
  }
}


/* =========================================================
   BoG 2026 — Publications / Menu / Downloads refinements v2.2
   ========================================================= */

/* Desktop dropdown reliability:
   remove the dead hover gap between the parent and submenu. */
@media (min-width:981px){
  .site-nav .nav-item.has-children{
    position:relative!important;
    overflow:visible!important;
  }

  .site-nav .nav-item.has-children::after{
    content:"";
    position:absolute;
    left:-4px;
    right:-4px;
    top:calc(100% - 2px);
    height:12px;
    z-index:890;
  }

  .site-nav .nav-child-menu{
    top:calc(100% + 1px)!important;
    z-index:900!important;
  }

  /* Keep dropdown open while the pointer is travelling into it. */
  .site-nav .nav-item.has-children:hover > .nav-child-menu,
  .site-nav .nav-item.has-children:focus-within > .nav-child-menu,
  .site-nav .nav-item.has-children.open > .nav-child-menu{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
}

/* Selected publications — intentionally compact and editorial rather than
   reproducing the old sidebar of large cover images. */
.selected-publications{
  background:#fff;
  border-top:1px solid var(--line);
}
.selected-publications-head{
  align-items:flex-end;
}
.selected-publications-head > .btn{
  flex:0 0 auto;
  width:max-content;
  white-space:nowrap;
}
.publication-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.publication-card{
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  min-height:194px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 12px 34px rgba(6,58,102,.06);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.publication-card:hover{
  transform:translateY(-3px);
  border-color:#a9c8dc;
  box-shadow:0 18px 38px rgba(6,58,102,.11);
}
.publication-cover{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:194px;
  padding:18px 14px;
  color:#fff;
  position:relative;
  isolation:isolate;
}
.publication-cover::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(circle at 75% 18%,rgba(255,255,255,.20),transparent 28%),
    linear-gradient(150deg,rgba(255,255,255,.10),transparent 44%);
}
.publication-cover b{
  position:absolute;
  top:16px;
  left:14px;
  font-size:.9rem;
  letter-spacing:.08em;
}
.publication-cover small{
  margin-bottom:7px;
  font-size:.9rem;
  font-weight:750;
  letter-spacing:.08em;
  opacity:.88;
}
.publication-cover strong{
  font-size:1rem;
  line-height:1.08;
  letter-spacing:.03em;
}
.publication-strategic .publication-cover{
  background:linear-gradient(160deg,#0b3357,#057995);
}
.publication-fee .publication-cover{
  background:linear-gradient(160deg,#5b665c,#987d45);
}
.publication-oacp .publication-cover{
  background:linear-gradient(160deg,#243e59,#735068);
}
.publication-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:20px 18px;
}
.publication-copy small{
  color:var(--orange);
  font-size:.9rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.publication-copy strong{
  margin-top:9px;
  color:var(--navy);
  font-size:1rem;
  line-height:1.35;
}
.publication-copy em{
  margin-top:auto;
  padding-top:18px;
  color:var(--navy-2);
  font-size:.9rem;
  font-style:normal;
  font-weight:800;
}

@media(max-width:1050px){
  .publication-grid{
    grid-template-columns:1fr;
  }
  .publication-card{
    grid-template-columns:104px minmax(0,1fr);
    min-height:150px;
  }
  .publication-cover{
    min-height:150px;
  }
}
@media(max-width:560px){
  .selected-publications-head{
    align-items:flex-start;
  }
  .publication-card{
    grid-template-columns:90px minmax(0,1fr);
  }
  .publication-cover{
    padding:14px 10px;
  }
  .publication-cover b{
    top:12px;
    left:10px;
  }
  .publication-copy{
    padding:16px 14px;
  }
}


/* =========================================================
   BoG 2026 — Resources Publication Centre v2.4
   ========================================================= */
.resource-publications{
  margin-bottom:56px;
  padding-bottom:46px;
  border-bottom:1px solid var(--line);
}
.resource-publications-head{
  margin-bottom:22px;
}
.resource-publications-head > p{
  max-width:640px;
}
.resource-publication-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.resource-pub-card{
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  min-height:196px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 10px 30px rgba(6,58,102,.055);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.resource-pub-card:hover{
  transform:translateY(-2px);
  border-color:#a9c8dc;
  box-shadow:0 16px 36px rgba(6,58,102,.10);
}
.resource-pub-cover{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:196px;
  padding:18px 14px;
  background:linear-gradient(160deg,#99675f,#d6aaa4);
  color:#fff;
}
.resource-pub-cover::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:radial-gradient(circle at 70% 18%,rgba(255,255,255,.24),transparent 27%),linear-gradient(145deg,rgba(255,255,255,.06),transparent 48%);
}
.resource-pub-cover b{
  position:absolute;
  top:15px;
  left:14px;
  font-size:.9rem;
  letter-spacing:.08em;
}
.resource-pub-cover small{
  margin-bottom:7px;
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.07em;
}
.resource-pub-cover strong{
  font-size:1.03rem;
  line-height:1.08;
  letter-spacing:.02em;
}
.resource-pub-cover.strategic{background:linear-gradient(160deg,#0b3357,#057995)}
.resource-pub-cover.fee{background:linear-gradient(160deg,#5b665c,#987d45)}
.resource-pub-cover.inspector{background:linear-gradient(160deg,#163b59,#247fa0)}
.resource-pub-cover.magazine{background:linear-gradient(160deg,#3b385f,#6e6a98)}
.resource-pub-body{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:20px 18px;
}
.resource-pub-body strong{
  margin-top:8px;
  color:var(--navy);
  font-size:1.01rem;
  line-height:1.34;
}
.resource-pub-body p{
  margin:9px 0 0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.5;
}
.resource-pub-body em{
  margin-top:auto;
  padding-top:14px;
  color:var(--navy-2);
  font-size:.9rem;
  font-style:normal;
  font-weight:800;
}
.resource-pub-tag{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  background:#edf4f8;
  color:#52677a;
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.resource-pub-tag.current{
  background:#e7f8ef;
  color:#08734e;
}
.resource-publication-note{
  margin-top:16px;
  padding:14px 16px;
  border:1px solid #d9e6ee;
  border-left:4px solid var(--orange);
  border-radius:14px;
  background:#f8fbfd;
  color:#536779;
  font-size:.9rem;
  line-height:1.5;
}
.resource-publication-note strong{color:var(--navy)}
@media(max-width:900px){
  .resource-publication-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .resource-pub-card{grid-template-columns:92px minmax(0,1fr);min-height:174px}
  .resource-pub-cover{min-height:174px;padding:14px 10px}
  .resource-pub-cover b{top:12px;left:10px}
  .resource-pub-body{padding:16px 14px}
}


/* =========================================================
   BoG 2026 — Leadership & Office Holders v2.5
   ========================================================= */
.leadership-preview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.leadership-preview-card{
  min-width:0;
  padding:20px 22px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#f7fbfd);
}
.leadership-preview-card strong{
  display:block;
  margin-top:7px;
  color:var(--navy);
  font-size:1.05rem;
  line-height:1.3;
}
.leadership-preview-card small{
  display:block;
  margin-top:6px;
  color:var(--muted);
}
.leadership-role{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--teal);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.leadership-role::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--orange);
}

.leadership-intro,
.leadership-history-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  gap:42px;
  align-items:end;
  margin:34px 0 24px;
}
.leadership-intro h2,
.leadership-history-head h2{
  margin:.35rem 0 0;
  color:var(--navy);
}
.leadership-intro > p,
.leadership-history-head > p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
}

.current-leadership-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.current-leader-card{
  position:relative;
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:20px;
  min-width:0;
  padding:26px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 38px rgba(6,58,102,.07);
}
.current-leader-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,var(--orange),var(--teal));
}
.leader-monogram{
  display:grid;
  place-items:center;
  width:80px;
  height:80px;
  border-radius:22px;
  color:#fff;
  background:linear-gradient(145deg,var(--navy),#176d94);
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:.04em;
}
.leader-monogram-registrar{
  background:linear-gradient(145deg,#0d6c67,#168b83);
}
.leader-copy{
  min-width:0;
}
.leader-copy h2{
  margin:8px 0 5px;
  color:var(--navy);
  font-size:1.35rem;
  line-height:1.2;
}
.leader-copy > p{
  color:var(--muted);
  line-height:1.55;
}
.leader-tenure{
  margin:0 0 12px!important;
  color:#41556a!important;
  font-size:.9rem;
}
.text-link{
  display:inline-block;
  margin-top:4px;
  color:var(--navy-2);
  font-size:.9rem;
  font-weight:800;
  text-decoration:none;
}
.text-link:hover{text-decoration:underline}

.office-history-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.office-history-card{
  min-width:0;
  padding:24px 26px 14px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fbfdfe;
}
.office-history-title{
  display:flex;
  gap:13px;
  align-items:center;
  padding-bottom:18px;
  border-bottom:1px solid var(--line);
}
.office-history-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:13px;
  color:var(--navy);
  background:var(--sky);
  font-size:.9rem;
  font-weight:900;
}
.office-history-title small{
  display:block;
  color:var(--orange);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.office-history-title h3{
  margin:2px 0 0;
  color:var(--navy);
  font-size:1.1rem;
}

.office-timeline{
  list-style:none;
  margin:0;
  padding:0;
}
.office-timeline li{
  position:relative;
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:11px;
  padding:18px 0;
}
.office-timeline li:not(:last-child){
  border-bottom:1px solid #e5edf2;
}
.timeline-dot{
  position:relative;
  width:11px;
  height:11px;
  margin-top:5px;
  border:2px solid #a9bac6;
  border-radius:50%;
  background:#fff;
}
.office-timeline .is-current .timeline-dot{
  border-color:var(--teal);
  background:var(--teal);
  box-shadow:0 0 0 4px rgba(13,128,111,.10);
}
.office-timeline strong{
  display:block;
  color:#21374b;
  font-size:.94rem;
  line-height:1.35;
}
.office-timeline span:not(.timeline-dot){
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.9rem;
}
.office-timeline small{
  display:block;
  margin-top:3px;
  color:#83909d;
  font-size:.9rem;
}

.leadership-source-note{
  margin-top:24px;
  padding:18px 20px;
  border-left:4px solid var(--orange);
  border-radius:0 14px 14px 0;
  background:#fff7ee;
}
.leadership-source-note strong{
  color:var(--navy);
}
.leadership-source-note p{
  margin:5px 0 0;
  color:#6a5f55;
  font-size:.9rem;
  line-height:1.55;
}

@media(max-width:900px){
  .leadership-preview-grid,
  .current-leadership-grid,
  .office-history-grid{
    grid-template-columns:1fr;
  }
  .leadership-intro,
  .leadership-history-head{
    grid-template-columns:1fr;
    gap:10px;
  }
}
@media(max-width:560px){
  .current-leader-card{
    grid-template-columns:1fr;
    padding:22px;
  }
  .leader-monogram{
    width:62px;
    height:62px;
    border-radius:18px;
  }
}


/* =========================================================
   BoG 2026 — Board portraits + rebuilt organisation chart v2.6
   ========================================================= */

/* Board Members: every image uses the same portrait proportion and visual scale. */
.board-photo-note{
  margin:-8px 0 18px;
  color:var(--muted);
  font-size:.9rem;
}
.board-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
}
.board-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  height:100%;
}
.board-photo{
  aspect-ratio:4/5!important;
  background:linear-gradient(145deg,#eef4f7,#f8fafb)!important;
}
.board-photo img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center 30%!important;
}
.board-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:16px 17px 18px!important;
}
.board-card h3{
  font-size:.92rem!important;
  line-height:1.34!important;
}
.chair-card{
  grid-template-columns:290px minmax(0,1fr)!important;
}
.chair-photo{
  min-height:360px!important;
  aspect-ratio:4/5;
}
.chair-photo img{
  min-height:0!important;
  object-fit:cover!important;
  object-position:center 28%!important;
}

/* Organisation chart — HTML rather than a single raster image. */
.org-modern{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 38px rgba(6,58,102,.07);
}
.org-modern-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px 26px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,#f6fbfd,#fff);
}
.org-modern-head h2{
  margin:7px 0 0;
  color:var(--navy-3);
  font-size:1.45rem;
}
.org-modern-head p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.9rem;
}
.org-stage{
  position:relative;
  padding:34px 28px 30px;
  background:
    radial-gradient(circle at 50% 0%,rgba(24,132,162,.06),transparent 30%),
    #f8fbfc;
}
.org-level{
  position:relative;
  z-index:2;
}
.org-level-board{
  display:grid;
  grid-template-columns:minmax(240px,.8fr) minmax(300px,1fr) minmax(240px,.8fr);
  gap:18px;
  align-items:center;
}
.org-level-board .org-node-board{grid-column:1}
.org-level-board .org-node-chair{grid-column:2}
.org-node{
  position:relative;
  min-width:0;
  padding:19px 20px;
  border:1px solid #cadbe4;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(6,58,102,.06);
  text-align:left;
}
.org-node-kicker{
  display:block;
  color:#617487;
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.075em;
  line-height:1.3;
  text-transform:uppercase;
}
.org-node strong{
  display:block;
  margin-top:7px;
  color:var(--navy);
  font-size:.98rem;
  line-height:1.3;
}
.org-node small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.35;
}
.org-node a{
  display:inline-block;
  margin-top:8px;
  color:var(--navy-2);
  font-size:.9rem;
  font-weight:800;
  text-decoration:none;
}
.org-node-chair{
  border-color:#d8a46e;
  background:linear-gradient(145deg,#fff9f2,#fff);
  text-align:center;
}
.org-node-chair::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-35px;
  width:1px;
  height:35px;
  background:#9bb3c1;
}
.org-node-board{
  border-color:#d9b389;
  background:#fffaf4;
}
.org-node-board::after{
  content:"";
  position:absolute;
  top:50%;
  right:-19px;
  width:19px;
  height:1px;
  background:#9bb3c1;
}
.org-level-registrar{
  display:flex;
  justify-content:center;
  margin-top:34px;
}
.org-node-registrar{
  width:min(500px,100%);
  border-color:#e9c766;
  background:linear-gradient(145deg,#fff9dc,#fff);
  text-align:center;
}
.org-node-registrar::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-41px;
  width:1px;
  height:41px;
  background:#9bb3c1;
}
.org-branch-line{
  position:relative;
  width:76%;
  height:20px;
  margin:20px auto 0;
  border-top:1px solid #9bb3c1;
}
.org-branch-line::before,
.org-branch-line::after{
  content:"";
  position:absolute;
  top:-1px;
  width:1px;
  height:20px;
  background:#9bb3c1;
}
.org-branch-line::before{left:0}
.org-branch-line::after{right:0}
.org-executive-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.org-node-executive{
  min-height:142px;
  border-color:#b9d7be;
  background:linear-gradient(145deg,#f3fbf0,#fff);
  text-align:center;
}
.org-node-executive::before{
  content:"";
  position:absolute;
  left:50%;
  top:-21px;
  width:1px;
  height:21px;
  background:#9bb3c1;
}
.org-support-wrap{
  margin:34px auto 0;
  padding-top:18px;
  border-top:1px dashed #bed0da;
}
.org-support-label{
  margin-bottom:12px;
  color:#6e7e8d;
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.09em;
  text-align:center;
  text-transform:uppercase;
}
.org-support-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:760px;
  margin:auto;
}
.org-node-support{
  border-color:#b8d0e8;
  background:linear-gradient(145deg,#f2f7fd,#fff);
  text-align:center;
}
.org-structure-note{
  margin:0;
  padding:18px 24px;
  border-top:1px solid var(--line);
  background:#fff;
}
.org-structure-note strong{
  color:var(--navy);
  font-size:.9rem;
}
.org-structure-note p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.5;
}

@media(max-width:1120px){
  .board-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .org-executive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .org-branch-line{display:none}
  .org-node-executive::before{display:none}
}
@media(max-width:820px){
  .board-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .chair-card{grid-template-columns:220px minmax(0,1fr)!important}
  .org-modern-head{align-items:flex-start;flex-direction:column}
  .org-level-board{grid-template-columns:1fr}
  .org-level-board .org-node-board,
  .org-level-board .org-node-chair{grid-column:1}
  .org-node-board::after{display:none}
  .org-node-chair::before{display:none}
  .org-level-registrar{margin-top:14px}
  .org-node-registrar::after{display:none}
  .org-executive-grid{margin-top:14px}
}
@media(max-width:560px){
  .board-grid{grid-template-columns:1fr!important}
  .board-photo{aspect-ratio:4/5!important}
  .chair-card{grid-template-columns:1fr!important}
  .chair-photo{min-height:0!important;aspect-ratio:4/5}
  .org-stage{padding:24px 18px}
  .org-executive-grid,
  .org-support-grid{grid-template-columns:1fr}
  .org-node-executive{min-height:0}
}


/* =========================================================
   BoG2026 Security Hardening v1.0 — Mobile Navigation UI
   Final override. Keeps the drawer compact, readable and
   removes the duplicated header "Close" control.
   ========================================================= */
@media (max-width:980px){
  .nav-scrim{
    z-index:1200!important;
    background:rgba(5,27,45,.58)!important;
    backdrop-filter:blur(1px);
  }

  .site-nav{
    z-index:1202!important;
    width:min(360px,88vw)!important;
    padding:72px 16px 22px!important;
    background:#fff!important;
    border-left:1px solid #dbe6ec!important;
    box-shadow:-22px 0 55px rgba(4,31,51,.22)!important;
    overscroll-behavior:contain!important;
    scrollbar-width:thin;
  }

  /* The drawer owns the close action. Do not overlay the header Menu button. */
  body.mobile-nav-open .menu-btn{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  .site-nav:before{
    top:22px!important;
    left:18px!important;
    content:"Menu"!important;
    font-size:1.22rem!important;
    line-height:40px!important;
  }

  .site-nav .nav-close-btn{
    display:grid!important;
    place-items:center!important;
    top:18px!important;
    right:16px!important;
    width:40px!important;
    height:40px!important;
    padding:0!important;
    border:1px solid #d5e2e9!important;
    border-radius:12px!important;
    background:#f6fafc!important;
    color:var(--navy)!important;
    font-size:1.45rem!important;
    font-weight:500!important;
    box-shadow:none!important;
  }
  .site-nav .nav-close-btn:focus-visible{
    outline:3px solid rgba(239,127,26,.25)!important;
    outline-offset:2px!important;
  }

  .site-nav > a,
  .site-nav .nav-parent-row > a{
    min-height:48px!important;
    padding:11px 12px!important;
    border:0!important;
    border-radius:11px!important;
    color:#23384b!important;
    font-size:1rem!important;
    font-weight:760!important;
    line-height:1.25!important;
  }

  .site-nav > a + a,
  .site-nav > .nav-item,
  .site-nav > .nav-item + a{
    margin-top:2px!important;
  }

  .site-nav .nav-item{
    margin:0!important;
    padding:3px 0!important;
    border-bottom:1px solid #edf2f5!important;
  }

  .site-nav .nav-parent-row{
    grid-template-columns:minmax(0,1fr) 38px!important;
    gap:5px!important;
  }

  .site-nav .submenu-toggle{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    align-self:center!important;
    border:0!important;
    border-radius:10px!important;
    background:#f2f7fa!important;
    color:#315069!important;
    font-size:.9rem!important;
  }

  .site-nav .nav-item.open .submenu-toggle{
    background:#e5f3f8!important;
    color:var(--navy)!important;
    transform:rotate(180deg);
  }

  .site-nav .nav-child-menu{
    margin:3px 0 8px 10px!important;
    padding:6px!important;
    border-left:2px solid #d7e8f0!important;
    border-radius:0 12px 12px 0!important;
    background:#f7fafc!important;
  }

  .site-nav .nav-child-menu a{
    min-height:38px!important;
    padding:8px 10px!important;
    border-radius:9px!important;
    color:#405365!important;
    font-size:.9rem!important;
    font-weight:650!important;
  }

  .site-nav a[aria-current="page"]{
    background:#edf7fb!important;
    color:var(--navy)!important;
    box-shadow:inset 3px 0 0 var(--teal)!important;
  }

  /* Contact/Search sit as normal utility rows instead of oversized blocks. */
  .site-nav > a[href$="contact.html"],
  .site-nav > a[href*="/contact.html"],
  .site-nav > .nav-search{
    min-height:45px!important;
    margin-top:4px!important;
    border:0!important;
    background:transparent!important;
    color:#355068!important;
    font-size:.93rem!important;
    font-weight:700!important;
  }

  .site-nav > .nav-search{
    border:1px solid #dce7ed!important;
    background:#f8fbfc!important;
  }

  .site-nav > .nav-cta{
    min-height:50px!important;
    margin-top:12px!important;
    border-radius:12px!important;
    background:var(--navy)!important;
    color:#fff!important;
    font-weight:820!important;
    box-shadow:0 8px 20px rgba(6,58,102,.14)!important;
  }
  .site-nav > .nav-cta:visited,
  .site-nav > .nav-cta:hover,
  .site-nav > .nav-cta:focus{
    color:#fff!important;
  }
}

@media (max-width:430px){
  .site-nav{
    width:min(342px,90vw)!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .site-nav > a,
  .site-nav .nav-parent-row > a{
    font-size:.96rem!important;
  }
}


/* =========================================================
   BoG2026 — Firm Registration & Current Register v2.8
   ========================================================= */
.firm-registration-v2{
  padding:30px!important;
}
.firm-reg-primary-grid{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);
  gap:22px;
  margin-top:22px;
}
.firm-reg-process,
.firm-reg-summary{
  min-width:0;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
}
.firm-reg-process{padding:22px}
.firm-reg-minihead h3{
  margin:8px 0 5px;
  color:var(--navy);
}
.firm-reg-minihead p{
  margin:0 0 18px;
  color:var(--muted);
  font-size:.9rem;
}
.firm-download-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.firm-download-card{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:14px;
  border:1px solid #d8e4ea;
  border-radius:15px;
  background:#fbfdfe;
  color:inherit;
  text-decoration:none;
  transition:.17s ease;
}
.firm-download-card:hover{
  transform:translateY(-1px);
  border-color:#98bdd0;
  box-shadow:0 10px 24px rgba(6,58,102,.07);
}
.firm-download-guide{
  grid-column:1/-1;
  background:linear-gradient(135deg,#f2fafc,#fff);
  border-color:#bcdce6;
}
.firm-doc-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:12px;
  background:var(--sky);
  color:var(--navy);
  font-size:.9rem;
  font-weight:900;
}
.firm-download-card > span:nth-child(2){
  display:flex;
  min-width:0;
  flex-direction:column;
}
.firm-download-card small{
  color:var(--orange);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.firm-download-card strong{
  margin-top:3px;
  color:#1f3549;
  font-size:.9rem;
}
.firm-download-card em{
  margin-top:3px;
  overflow:hidden;
  color:var(--muted);
  font-size:.9rem;
  font-style:normal;
  line-height:1.3;
}
.firm-download-card b{
  color:var(--navy-2);
  font-size:.9rem;
  white-space:nowrap;
}
.firm-reg-summary{
  display:flex;
  flex-direction:column;
  padding:22px;
  background:linear-gradient(155deg,#082f52,#0e5b78);
  color:#fff;
}
.firm-reg-summary .badge{
  align-self:flex-start;
  border-color:rgba(255,255,255,.25);
  background:rgba(255,255,255,.10);
  color:#fff;
}
.firm-reg-summary-head strong{
  display:block;
  margin-top:14px;
  font-size:1.75rem;
  line-height:1.05;
}
.firm-reg-summary-head small{
  display:block;
  margin-top:7px;
  color:rgba(255,255,255,.72);
  line-height:1.45;
}
.firm-reg-stat-list{
  display:grid;
  gap:7px;
  margin:19px 0;
}
.firm-reg-stat-list > div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  background:rgba(255,255,255,.06);
}
.firm-reg-stat-list b{font-size:1.1rem}
.firm-reg-stat-list span{font-size:.9rem;color:rgba(255,255,255,.83)}
.firm-register-cta{
  width:100%;
  margin-top:auto;
  background:#fff!important;
  color:var(--navy)!important;
  text-align:center;
}
.firm-reg-summary .btn{
  width:100%;
  min-height:50px;
  justify-content:center;
  text-align:center;
}
.firm-reg-summary .btn + .btn{
  margin-top:10px;
}
.firm-reg-privacy-note{
  margin:16px 0 0;
  color:rgba(255,255,255,.63);
  font-size:.9rem;
  line-height:1.4;
}
.firm-reg-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.firm-reg-steps article{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:11px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f9fbfc;
}
.firm-reg-steps article > span{
  display:grid;
  place-items:center;
  width:34px;height:34px;
  border-radius:10px;
  background:#e9f4f8;
  color:var(--navy);
  font-size:.9rem;
  font-weight:900;
}
.firm-reg-steps strong{color:#20384d;font-size:.9rem}
.firm-reg-steps p{margin:4px 0 0;color:var(--muted);font-size:.9rem;line-height:1.4}

/* Current registered firms page */
.firm-register-intro{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:20px;
}
.firm-register-intro h2{
  margin:9px 0 6px;
  color:var(--navy);
}
.firm-register-intro p{
  max-width:780px;
  margin:0;
  color:var(--muted);
}
.firm-register-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:20px 0;
}
.firm-kpi{
  appearance:none;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.firm-kpi:hover,.firm-kpi.is-active{
  border-color:#87b6c9;
  background:#f1f9fc;
}
.firm-kpi b{
  display:block;
  color:var(--navy);
  font-size:1.45rem;
}
.firm-kpi span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.9rem;
}
.firm-register-tools{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:12px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#f7fafc;
}
.firm-register-tools label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#40556a;
  font-size:.9rem;
  font-weight:800;
}
.firm-register-tools input,
.firm-register-tools select{
  width:100%;
  min-height:44px;
  padding:9px 12px;
  border:1px solid #cfdde5;
  border-radius:11px;
  background:#fff;
  color:#23384b;
  font:inherit;
  font-size:.9rem;
}
.firm-register-count{
  margin:15px 2px 8px;
  color:var(--muted);
  font-size:.9rem;
}
.firm-register-list{
  display:grid;
  gap:9px;
}
.firm-register-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.firm-register-card summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 28px;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  list-style:none;
  cursor:pointer;
}
.firm-register-card summary::-webkit-details-marker{display:none}
.firm-register-main{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.firm-certificate{
  color:var(--teal);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.05em;
}
.firm-register-main strong{
  margin-top:3px;
  color:#1e3448;
  font-size:.91rem;
}
.firm-register-meta{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--muted);
  font-size:.9rem;
}
.firm-category-chip{
  padding:5px 8px;
  border-radius:999px;
  background:#edf6fa;
  color:var(--navy);
  font-weight:750;
}
.firm-register-arrow{
  display:grid;
  place-items:center;
  width:28px;height:28px;
  border-radius:9px;
  background:#f1f6f8;
  color:var(--navy);
  font-size:1rem;
  transition:.16s ease;
}
.firm-register-card[open] .firm-register-arrow{transform:rotate(45deg)}
.firm-register-detail{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  padding:0 18px 18px;
  border-top:1px solid #edf2f5;
}
.firm-register-detail > div{
  padding-top:15px;
}
.firm-register-detail small{
  display:block;
  color:var(--orange);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.firm-register-detail p{
  margin:5px 0 0;
  color:#526579;
  font-size:.9rem;
  line-height:1.48;
}
.firm-register-note{
  margin-top:20px;
  padding:16px 18px;
  border-left:4px solid var(--orange);
  border-radius:0 14px 14px 0;
  background:#fff7ed;
}
.firm-register-note strong{color:var(--navy)}
.firm-register-note p{margin:4px 0 0;color:#685e54;font-size:.9rem;line-height:1.48}

@media(max-width:900px){
  .firm-reg-primary-grid{grid-template-columns:1fr}
  .firm-reg-steps{grid-template-columns:1fr}
  .firm-register-intro{align-items:flex-start;flex-direction:column}
  .firm-register-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .firm-register-detail{grid-template-columns:1fr}
}
@media(max-width:620px){
  .firm-registration-v2{padding:20px!important}
  .firm-download-grid{grid-template-columns:1fr}
  .firm-download-guide{grid-column:auto}
  .firm-download-card{
    grid-template-columns:42px minmax(0,1fr);
  }
  .firm-download-card b{
    grid-column:2;
  }
  .firm-register-kpis{grid-template-columns:1fr 1fr}
  .firm-register-tools{grid-template-columns:1fr}
  .firm-register-card summary{
    grid-template-columns:minmax(0,1fr) 28px;
  }
  .firm-register-meta{
    grid-column:1;
    grid-row:2;
    flex-wrap:wrap;
  }
  .firm-register-arrow{
    grid-column:2;
    grid-row:1/3;
  }
}


/* =========================================================
   BoG2026 Mobile Menu Interaction Hotfix v2.9
   Root cause:
   .nav-scrim is appended directly to <body>, while .site-nav lives inside
   .site-header. Because .site-header creates its own stacking context,
   a body-level scrim with z-index:1200 can sit ABOVE the whole header,
   including the drawer. That made the drawer look blurred/dim and caused
   the scrim to intercept taps.
   ========================================================= */
@media (max-width:980px){
  /* Keep the page scrim below the sticky header stacking context. */
  .nav-scrim,
  .nav-scrim.open{
    z-index:90!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  /* Header / drawer must sit above the body-level scrim. */
  .site-header{
    z-index:100!important;
  }
  body.mobile-nav-open .site-header{
    z-index:100!important;
  }

  .site-nav,
  .site-nav.open{
    z-index:120!important;
    filter:none!important;
    -webkit-filter:none!important;
  }

  .site-nav.open,
  .site-nav.open *,
  .site-nav .nav-close-btn,
  .site-nav .submenu-toggle{
    pointer-events:auto!important;
  }

  /* The dim layer should affect the page behind the drawer only. */
  .nav-scrim.open{
    background:rgba(5,27,45,.54)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* Make the active drawer visually crisp on mobile Safari. */
  .site-nav{
    opacity:1!important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
  }

  /* Ensure mobile Safari does not leave a transparent hit-layer over controls. */
  .site-nav .nav-parent-row,
  .site-nav .nav-child-menu,
  .site-nav > a,
  .site-nav button{
    position:relative;
    z-index:1;
  }
}


/* =========================================================
   BoG2026 — Homepage Core Service Icons v3.0
   Self-hosted SVG symbols, no external icon CDN required.
   ========================================================= */
.service-card .icon{
  width:50px!important;
  height:50px!important;
  border-radius:15px!important;
  margin-bottom:19px!important;
  background:linear-gradient(145deg,#edf7fb,#f8fcfe)!important;
  border:1px solid #d7e8ef!important;
  color:var(--navy)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.service-card .icon img{
  display:block;
  width:26px;
  height:26px;
  object-fit:contain;
}

/* Make every service visually distinct without turning the section colourful. */
.service-card:nth-child(1) .icon{
  background:linear-gradient(145deg,#eef8fb,#f9fdfe)!important;
  color:#08658a!important;
}
.service-card:nth-child(2) .icon{
  background:linear-gradient(145deg,#eef7f3,#fbfefd)!important;
  color:#14765f!important;
}
.service-card:nth-child(3) .icon{
  background:linear-gradient(145deg,#fff5ea,#fffdf9)!important;
  color:#c26a13!important;
}
.service-card:nth-child(4) .icon{
  background:linear-gradient(145deg,#f2f7e9,#fcfef9)!important;
  color:#648315!important;
}
.service-card:nth-child(5) .icon{
  background:linear-gradient(145deg,#f1f3fb,#fbfcff)!important;
  color:#3b568e!important;
}
.service-card:nth-child(6) .icon{
  background:linear-gradient(145deg,#f2f6f8,#fbfdfe)!important;
  color:#52697a!important;
}

/* SVG files use currentColor for strokes. With <img>, currentColor does not
   inherit into the file, so apply a consistent dark navy visual via filter.
   This keeps all local icons crisp and monochrome. */
.service-card .icon img{
  filter:brightness(0) saturate(100%) invert(18%) sepia(36%) saturate(1323%) hue-rotate(166deg) brightness(91%) contrast(95%);
  opacity:.94;
}
.service-card:hover .icon{
  transform:translateY(-1px);
  border-color:#b7d2df!important;
}

@media(max-width:620px){
  .service-card .icon{
    width:46px!important;
    height:46px!important;
    border-radius:14px!important;
  }
  .service-card .icon img{
    width:24px;
    height:24px;
  }
}


/* =========================================================
   BoG2026 — Flaticon UIcons + Contact Map v3.1
   ========================================================= */

/* Homepage Flaticon UIcons */
.service-card .icon img{display:none!important}
.service-card .icon .fi{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  color:var(--navy);
  font-size:1.42rem;
  line-height:1;
}
.service-card .icon .fi::before{
  line-height:1!important;
}
.service-card:hover .icon .fi{
  transform:scale(1.04);
}

/* Flaticon license credit */
.flaticon-credit{
  color:#9eb8c8;
  font-size:.9rem;
  white-space:nowrap;
}
.flaticon-credit a{
  color:#c8dce8;
  text-decoration:none;
}
.flaticon-credit a:hover{
  color:#fff;
  text-decoration:underline;
}

/* Contact page */
.contact-grid-v2{
  align-items:stretch;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:22px;
}
.contact-card-v2{
  padding:25px;
}
.contact-card-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:18px;
  border-bottom:1px solid var(--line);
}
.contact-card-heading h2{
  margin:5px 0 0;
  color:var(--navy);
  font-size:1.35rem;
}
.contact-office-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  background:#eef7fa;
  color:var(--navy);
  font-size:.9rem;
  font-weight:800;
}
.contact-detail-list{
  display:grid;
  gap:0;
}
.contact-detail{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
  padding:15px 0;
  border-bottom:1px solid #edf2f5;
}
.contact-detail-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:#eef7fa;
  color:var(--navy);
  font-size:1rem;
}
.contact-detail small,
.bog-map-info small{
  display:block;
  color:var(--orange);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.contact-detail strong{
  display:block;
  margin-top:3px;
  color:#20384d;
  font-size:.9rem;
  line-height:1.4;
}
.contact-detail p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}
.contact-detail a{
  color:inherit;
  text-decoration:none;
}
.contact-detail a:hover{
  color:var(--teal);
}
.contact-email-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:17px;
}
.contact-email-grid a{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  align-items:center;
  gap:9px;
  min-width:0;
  padding:11px 12px;
  border:1px solid #dce6ec;
  border-radius:12px;
  background:#f9fbfc;
  color:#294056;
  text-decoration:none;
}
.contact-email-grid a:hover{
  border-color:#9bc2d3;
  background:#f1f8fb;
}
.contact-email-grid .fi{
  color:var(--teal);
  font-size:1rem;
}
.contact-email-grid span{
  min-width:0;
}
.contact-email-grid strong{
  display:block;
  font-size:.9rem;
}
.contact-email-grid small{
  display:block;
  margin-top:2px;
  overflow:hidden;
  color:var(--muted);
  font-size:.9rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bog-map-card{
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:100%;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 30px rgba(6,58,102,.06);
}
.bog-map-frame{
  position:relative;
  min-height:370px;
  background:#e8f3f8;
}
.bog-map-frame iframe{
  display:block;
  width:100%;
  height:100%;
  min-height:370px;
  border:0;
}
.bog-map-info{
  padding:20px;
}
.bog-map-info > div:first-child{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
}
.contact-detail-icon-map{
  background:#fff4e8;
  color:var(--orange);
}
.bog-map-info h2{
  margin:3px 0 4px;
  color:var(--navy);
  font-size:1.08rem;
}
.bog-map-info p{
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}
.bog-map-info .actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.bog-map-info .btn{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.bog-map-info .btn .fi{
  line-height:1;
}

@media(max-width:980px){
  .contact-grid-v2{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .contact-card-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .contact-email-grid{
    grid-template-columns:1fr;
  }
  .bog-map-frame,
  .bog-map-frame iframe{
    min-height:320px;
  }
  .bog-map-info .actions{
    flex-direction:column;
  }
  .bog-map-info .btn{
    width:100%;
    justify-content:center;
  }
  .flaticon-credit{
    width:100%;
    margin-top:4px;
  }
}


/* =========================================================
   BoG2026 Homepage Policy Icons for SPLaSK v1.0.6
   ========================================================= */
.home-policy-icons{
  margin-top:32px;
  padding:23px;
  border:1px solid #dbe7ec;
  border-radius:22px;
  background:
    radial-gradient(circle at 94% 0,rgba(239,127,26,.10),transparent 30%),
    linear-gradient(135deg,#f7fbfc,#fff);
  box-shadow:0 14px 32px rgba(6,58,102,.055);
}

.home-policy-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:15px;
}

.home-policy-head h2{
  margin:5px 0 0;
  color:var(--navy);
  font-size:clamp(1.15rem,2vw,1.55rem);
}

.home-policy-head p{
  max-width:450px;
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}

.home-policy-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.home-policy-link{
  display:flex;
  min-height:96px;
  align-items:center;
  gap:13px;
  padding:15px;
  border:1px solid #d7e5eb;
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(6,58,102,.035);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.home-policy-link:hover,
.home-policy-link:focus-visible{
  transform:translateY(-2px);
  border-color:#9fc3d1;
  box-shadow:0 12px 24px rgba(6,58,102,.07);
}

.home-policy-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:43px;
  height:43px;
  border:1px solid #d5e6ed;
  border-radius:13px;
  background:#edf6fa;
  color:var(--navy);
  font-size:1rem;
}

.home-policy-icon .fi{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.home-policy-link strong{
  display:block;
  color:var(--navy);
  font-size:.9rem;
  line-height:1.32;
}

.home-policy-link small{
  display:block;
  margin-top:4px;
  color:#687b8b;
  font-size:.9rem;
  line-height:1.38;
}

@media(max-width:980px){
  .home-policy-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:640px){
  .home-policy-icons{
    padding:17px;
  }

  .home-policy-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-policy-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   BoG2026 SPLaSK Main Homepage Icons v1.0.7
   ========================================================= */

.home-service-icons{
  grid-column:1 / -1;
  margin-top:24px;
  padding:22px;
  border:1px solid #dbe7ec;
  border-radius:22px;
  background:
    radial-gradient(circle at 94% 0,rgba(239,127,26,.10),transparent 30%),
    linear-gradient(135deg,#f7fbfc,#fff);
  box-shadow:0 14px 32px rgba(6,58,102,.055);
}

.home-service-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:15px;
}

.home-service-head h2{
  margin:5px 0 0;
  color:var(--navy);
  font-size:clamp(1.15rem,2vw,1.55rem);
}

.home-service-head p{
  max-width:470px;
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}

.home-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.home-service-link{
  display:flex;
  min-height:98px;
  align-items:center;
  gap:13px;
  padding:15px;
  border:1px solid #d7e5eb;
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(6,58,102,.035);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.home-service-link:hover,
.home-service-link:focus-visible{
  transform:translateY(-2px);
  border-color:#9fc3d1;
  box-shadow:0 12px 24px rgba(6,58,102,.07);
}

.home-service-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:43px;
  height:43px;
  border:1px solid #d5e6ed;
  border-radius:13px;
  background:#edf6fa;
  color:var(--navy);
  font-size:1rem;
}

.home-service-icon .fi,
.utility-content-page .fi{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.home-service-link strong{
  display:block;
  color:var(--navy);
  font-size:.9rem;
  line-height:1.32;
}

.home-service-link small{
  display:block;
  margin-top:4px;
  color:#687b8b;
  font-size:.9rem;
  line-height:1.38;
}

.utility-content-page{
  display:grid;
  gap:18px;
}

.utility-intro-card{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:center;
  gap:16px;
  padding:22px;
  border:1px solid #d8e5eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(6,58,102,.045);
}

.utility-main-icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border:1px solid #cfe1e8;
  border-radius:17px;
  background:#edf6fa;
  color:var(--navy);
  font-size:1.25rem;
}

.utility-intro-card h2{
  margin:5px 0 6px;
  color:var(--navy);
}

.utility-intro-card p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}

.faq-list{
  display:grid;
  gap:10px;
}

.faq-list details{
  overflow:hidden;
  border:1px solid #d8e5eb;
  border-radius:15px;
  background:#fff;
}

.faq-list summary{
  display:flex;
  min-height:54px;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  color:var(--navy);
  font-weight:850;
  cursor:pointer;
  list-style:none;
}

.faq-list summary::-webkit-details-marker{
  display:none;
}

.faq-list details[open] summary i{
  transform:rotate(180deg);
}

.faq-list p{
  margin:0;
  padding:0 16px 16px;
  color:#5e7283;
  font-size:.9rem;
  line-height:1.55;
}

.utility-link-grid,
.feedback-route-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.utility-link-grid a,
.feedback-route-grid article{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:16px;
  border:1px solid #d8e5eb;
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}

.utility-link-grid a > i,
.feedback-route-grid article > i{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:#edf6fa;
  color:var(--navy);
}

.utility-link-grid strong,
.feedback-route-grid h3{
  display:block;
  margin:0;
  color:var(--navy);
  font-size:.9rem;
}

.utility-link-grid small,
.feedback-route-grid p{
  display:block;
  margin:4px 0 0;
  color:#687b8b;
  font-size:.9rem;
  line-height:1.42;
}

.feedback-route-grid{
  grid-template-columns:1fr 1fr;
}

.feedback-route-grid article{
  align-items:start;
}

.feedback-route-grid a{
  display:inline-flex;
  margin-top:9px;
  color:var(--teal);
  font-size:.9rem;
  font-weight:850;
  text-decoration:none;
}

.feedback-form{
  display:grid;
  gap:13px;
  padding:22px;
  border:1px solid #d8e5eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(6,58,102,.045);
}

.feedback-form .form-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:4px;
}

.feedback-form h2{
  margin:5px 0 0;
  color:var(--navy);
}

.feedback-form .form-head p{
  max-width:420px;
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}

.feedback-form label{
  display:grid;
  gap:6px;
  color:#40586d;
  font-size:.9rem;
  font-weight:850;
}

.feedback-form input,
.feedback-form select,
.feedback-form textarea{
  width:100%;
  padding:12px 13px;
  border:1px solid #d8e5eb;
  border-radius:12px;
  background:#fafdfe;
  color:#223b50;
  font:inherit;
}

.feedback-form textarea{
  resize:vertical;
}

.feedback-form .btn{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.sitemap-extra-links{
  margin-top:24px;
  padding:18px;
  border:1px solid #d8e5eb;
  border-radius:16px;
  background:#fff;
}

.sitemap-extra-links h2{
  margin:0 0 10px;
  color:var(--navy);
  font-size:1rem;
}

.sitemap-extra-links ul{
  margin:0;
}

@media(max-width:980px){
  .home-service-grid{
    grid-template-columns:1fr 1fr;
  }

  .utility-link-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .home-service-icons{
    padding:17px;
  }

  .home-service-head,
  .feedback-form .form-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-service-grid,
  .feedback-route-grid{
    grid-template-columns:1fr;
  }

  .utility-intro-card{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   BoG2026 About Vision and Mission Layout v1.0.8
   ========================================================= */

.about-statement-card{
  margin-top:18px;
  padding:20px;
  border:1px solid #d8e5eb;
  border-radius:18px;
  background:
    radial-gradient(circle at 94% 4%,rgba(239,127,26,.10),transparent 32%),
    #fff;
  box-shadow:0 9px 22px rgba(6,58,102,.045);
}

.about-statement-card h2{
  margin:6px 0 8px;
  color:var(--navy);
}

.about-statement-card p{
  margin:0;
  color:#5d7182;
  line-height:1.58;
}

.about-mission-card{
  border-color:#d9e4eb;
  background:
    radial-gradient(circle at 95% 8%,rgba(6,58,102,.08),transparent 32%),
    #fff;
}

@media(min-width:901px){
  .container.split{
    align-items:stretch;
  }

  .container.split > aside{
    display:flex;
    flex-direction:column;
    gap:0;
  }

  .container.split > aside .feature-box{
    margin-bottom:0;
  }

  .function-intro-line{
    max-width:none!important;
    white-space:nowrap;
  }
}

@media(max-width:1180px){
  .function-intro-line{
    white-space:normal;
  }
}


/* =========================================================
   BoG2026 Homepage Quick Links Right Strip v1.0.9
   ========================================================= */

/* JMG-style quick links: placed below the main header and aligned to the right. */
.home-quick-strip{
  margin:0;
  padding:8px 0 9px;
  border-top:1px solid rgba(6,58,102,.08);
  border-bottom:1px solid rgba(6,58,102,.10);
  background:
    repeating-linear-gradient(
      -45deg,
      rgba(6,58,102,.025) 0,
      rgba(6,58,102,.025) 2px,
      transparent 2px,
      transparent 7px
    ),
    #f8fbfc;
  box-shadow:0 8px 18px rgba(6,58,102,.04);
}

.home-quick-strip-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
}

.home-quick-strip .home-service-head{
  display:none!important;
}

.home-quick-strip .home-service-grid{
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:28px;
}

.home-quick-strip .home-service-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:92px;
  min-height:74px;
  padding:6px 4px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#182c3e;
  box-shadow:none;
  text-align:center;
  text-decoration:none;
  transition:transform .16s ease,color .16s ease;
}

.home-quick-strip .home-service-link:hover,
.home-quick-strip .home-service-link:focus-visible{
  transform:translateY(-2px);
  color:var(--navy);
  box-shadow:none;
}

.home-quick-strip .home-service-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#0b3d66;
  font-size:1.95rem;
}

.home-quick-strip .home-service-icon .fi{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

/* Add subtle individual colours similar to public-sector quick-link icons. */
.home-quick-strip .home-service-link:nth-child(1) .home-service-icon{
  color:#d64242;
}

.home-quick-strip .home-service-link:nth-child(2) .home-service-icon{
  color:#0b0f14;
}

.home-quick-strip .home-service-link:nth-child(3) .home-service-icon{
  color:#1d6fb8;
}

.home-quick-strip .home-service-link:nth-child(4) .home-service-icon{
  color:#2d343c;
}

.home-quick-strip .home-service-link strong{
  display:block;
  max-width:116px;
  color:inherit;
  font-size:.9rem;
  font-weight:820;
  line-height:1.18;
}

.home-quick-strip .home-service-link small{
  display:none!important;
}

.home-quick-strip + .hero{
  margin-top:0;
}

@media(max-width:980px){
  .home-quick-strip{
    padding:7px 0;
  }

  .home-quick-strip-inner{
    display:block;
  }

  .home-quick-strip .home-service-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }

  .home-quick-strip .home-service-link{
    min-width:0;
    min-height:68px;
  }

  .home-quick-strip .home-service-icon{
    width:34px;
    height:34px;
    font-size:1.65rem;
  }

  .home-quick-strip .home-service-link strong{
    font-size:.9rem;
  }
}

@media(max-width:560px){
  .home-quick-strip .home-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .home-quick-strip .home-service-link{
    min-height:64px;
  }
}


/* =========================================================
   BoG2026 Compact BoG Quick Links v1.1.0
   ========================================================= */

.home-quick-strip{
  margin:0;
  padding:0;
  border-top:1px solid rgba(6,58,102,.06);
  border-bottom:1px solid rgba(6,58,102,.08);
  background:rgba(248,252,253,.92);
  box-shadow:none;
}

.home-quick-strip-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:45px;
  align-items:center;
  gap:14px;
}

.home-quick-strip .home-service-grid{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
}

.home-quick-strip .home-service-link{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:0;
  min-height:34px;
  padding:5px 10px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:#234359;
  box-shadow:none;
  text-align:left;
  text-decoration:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}

.home-quick-strip .home-service-link:hover,
.home-quick-strip .home-service-link:focus-visible{
  transform:none;
  border-color:#cfe1e8;
  background:#fff;
  color:var(--navy);
  box-shadow:none;
}

.home-quick-strip .home-service-icon{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border:0;
  border-radius:8px;
  background:#edf6fa;
  color:var(--navy);
  font-size:.9rem;
}

.home-quick-strip .home-service-link:nth-child(1) .home-service-icon,
.home-quick-strip .home-service-link:nth-child(2) .home-service-icon,
.home-quick-strip .home-service-link:nth-child(3) .home-service-icon,
.home-quick-strip .home-service-link:nth-child(4) .home-service-icon{
  color:var(--navy);
}

.home-quick-strip .home-service-icon .fi{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.home-quick-strip .home-service-link strong{
  display:block;
  max-width:none;
  color:inherit;
  font-size:.9rem;
  font-weight:820;
  line-height:1;
  white-space:nowrap;
}

.home-quick-strip .home-service-link small{
  display:none!important;
}

@media(max-width:980px){
  .home-quick-strip{
    padding:6px 0;
  }

  .home-quick-strip-inner{
    display:block;
    min-height:0;
  }

  .home-quick-strip .home-service-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
  }

  .home-quick-strip .home-service-link{
    flex-direction:column;
    gap:4px;
    min-height:50px;
    padding:6px 4px;
    border-radius:12px;
    background:#fff;
  }

  .home-quick-strip .home-service-icon{
    width:25px;
    height:25px;
  }

  .home-quick-strip .home-service-link strong{
    font-size:.9rem;
    line-height:1.16;
    white-space:normal;
    text-align:center;
  }
}

@media(max-width:560px){
  .home-quick-strip .home-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* =========================================================
   BoG2026 Main Menu Cleanup v1.1.1
   ========================================================= */

/* Contact is provided through homepage quick links, footer and the contact page.
   It is no longer a primary-navigation item. */
.site-nav > a[href$="/contact.html"],
.site-nav > a[href$="contact.html"]{
  display:none!important;
}


/* =========================================================
   BoG2026 Homepage Public Registers Highlight v1.1.5
   ========================================================= */

.home-public-registers{
  padding:28px 0 6px;
  background:#fff;
}

.home-public-registers-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:15px;
}

.home-public-registers-head h2{
  margin:5px 0 0;
  color:var(--navy);
  font-size:clamp(1.25rem,2.15vw,1.7rem);
}

.home-public-registers-head p{
  max-width:530px;
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.5;
}

.home-register-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.home-register-card{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  overflow:hidden;
  min-height:148px;
  padding:20px;
  border:1px solid #d8e5eb;
  border-radius:20px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 12px 30px rgba(6,58,102,.055);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.home-register-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:var(--teal);
}

.home-register-card.is-firms::before{
  background:var(--orange);
}

.home-register-card:hover,
.home-register-card:focus-visible{
  transform:translateY(-2px);
  border-color:#a9cbd7;
  box-shadow:0 16px 34px rgba(6,58,102,.09);
}

.home-register-card-icon{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:1px solid #cfe1e8;
  border-radius:16px;
  background:#edf6fa;
  color:var(--navy);
  font-size:1.25rem;
}

.home-register-card.is-firms .home-register-card-icon{
  border-color:#f1d4b7;
  background:#fff5e9;
  color:#a6500c;
}

.home-register-card-copy small{
  display:block;
  color:var(--orange);
  font-size:.9rem;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.home-register-card-copy strong{
  display:block;
  margin-top:5px;
  color:var(--navy);
  font-size:1.08rem;
  line-height:1.25;
}

.home-register-card-copy span{
  display:block;
  margin-top:6px;
  color:#607385;
  font-size:.9rem;
  line-height:1.45;
}

.home-register-card-action{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--navy);
  font-size:.9rem;
  font-weight:850;
  white-space:nowrap;
}

@media(max-width:820px){
  .home-public-registers-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-register-card-grid{
    grid-template-columns:1fr;
  }

  .home-register-card{
    grid-template-columns:48px minmax(0,1fr);
  }

  .home-register-card-action{
    grid-column:2;
  }
}


/* =========================================================
   BoG2026 Social Media Link and SPLaSK Support v1.1.8
   Facebook is intentionally presented as a compact icon below
   the contact-information block instead of a separate module.
   ========================================================= */

.footer-social-block{
  min-width:0;
  margin-top:-12px;
}

.footer-social-block>h3,
.footer-social-note{
  display:none;
}

.footer-social-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.footer-social-links a{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  min-height:42px;
  padding:0;
  border:1px solid rgba(255,255,255,.22);
  border-radius:12px;
  background:transparent;
  color:#fff;
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.footer-social-links a:hover,
.footer-social-links a:focus-visible{
  border-color:rgba(255,255,255,.42);
  background:rgba(255,255,255,.08);
  transform:translateY(-1px);
}

.footer-social-links a:focus-visible{
  outline:3px solid rgba(255,255,255,.38);
  outline-offset:3px;
}

.footer-social-icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:10px;
  background:#1877f2;
  color:#fff;
  font-size:1rem;
}

.footer-social-links a>span:not(.footer-social-icon){
  display:none;
}

.contact-social-card{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:start;
  gap:15px;
  margin:18px 0;
  padding:21px;
  border:1px solid #d8e5eb;
  border-radius:19px;
  background:#fff;
  box-shadow:0 9px 22px rgba(6,58,102,.045);
}

.contact-social-icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:17px;
  background:#1877f2;
  color:#fff;
  font-size:1.35rem;
}

.contact-social-card h2{
  margin:5px 0 7px;
  color:var(--navy);
}

.contact-social-card p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.55;
}

.contact-social-card .btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.sitemap-social-links{
  margin-top:24px;
  padding:18px;
  border:1px solid #d8e5eb;
  border-radius:16px;
  background:#fff;
}

.sitemap-social-links h2{
  margin:0 0 10px;
  color:var(--navy);
  font-size:1rem;
}

.sitemap-social-links ul{
  margin:0;
}

@media(max-width:760px){
  .contact-social-card{
    grid-template-columns:1fr;
  }
}

/* Live firm count badge on homepage register card */
.home-register-card-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:10px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(6,58,102,.06);
  color:#607385;
  font-size:.9rem;
  font-weight:700;
}
.home-register-card-live.is-live{
  background:rgba(22,163,74,.1);
  color:#15803d;
}
.home-register-card-live.has-error{
  background:rgba(220,38,38,.08);
  color:#b91c1c;
}


/* =========================================================
   2026-08-10 ACCESSIBILITY: COMFORTABLE-TEXT DEFAULT
   Audience: older users and users with low vision.
   - 17px root size keeps rem-based typography scalable while reducing visual density.
   - Small UI/meta text remains rem-based and scalable.
   - Relaxed line spacing improves readability.
   ========================================================= */
html{font-size:106.25%;}
body{line-height:1.65;}

/* Keep form controls and action labels comfortably readable. */
button,input,select,textarea{font-size:1rem;}
input,select,textarea{line-height:1.5;}

/* Maintain readable paragraph rhythm without changing the visual hierarchy. */
.prose p,.prose li,.section-head p,.info-card p,.service-card p,.notice-card p{line-height:1.65;}

/* Mid-width desktop previously compressed header text too aggressively.
   Hide the secondary brand line instead of shrinking important navigation text. */
@media (min-width:981px) and (max-width:1180px){
  .brand{min-width:220px!important;}
  .brand span{display:none!important;}
}

/* eGEOReg service transition — official online transaction channel */
.egeoreg-transition-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;margin:0 0 34px;padding:24px 26px;border:1px solid #bfd8e5;border-radius:20px;background:linear-gradient(135deg,#f1f8fc 0%,#fff 70%);box-shadow:0 12px 32px rgba(6,58,102,.07)}
.egeoreg-transition-panel.compact{margin-top:4px;margin-bottom:30px}.egeoreg-transition-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--navy);color:#fff;font-size:1.25rem}.egeoreg-transition-copy .kicker{margin-bottom:4px}.egeoreg-transition-copy h2{margin:0;color:var(--navy-3);font-size:1.3rem;letter-spacing:-.02em}.egeoreg-transition-copy p{margin:7px 0 0;color:#465966;line-height:1.65}.egeoreg-transition-actions{display:flex;align-items:center;justify-content:flex-end}.egeoreg-transition-actions .btn{white-space:nowrap}.firm-egeoreg-renewal-cta{margin-top:10px;width:100%;justify-content:center}
@media(max-width:800px){.egeoreg-transition-panel{grid-template-columns:auto 1fr}.egeoreg-transition-actions{grid-column:1/-1;justify-content:flex-start;padding-left:72px}}
@media(max-width:560px){.egeoreg-transition-panel{grid-template-columns:1fr;padding:21px}.egeoreg-transition-icon{width:48px;height:48px}.egeoreg-transition-actions{grid-column:auto;padding-left:0}.egeoreg-transition-actions .btn{width:100%}}

@media (max-width:720px){
  .footer-grid-contact{
    grid-template-areas:
      "contact"
      "social"
      "emails"
      "links";
  }
  .footer-grid-contact>.footer-contact-block{grid-area:contact}
  .footer-grid-contact>.footer-social-block{grid-area:social;margin-top:-8px}
  .footer-grid-contact>div:nth-child(2){grid-area:emails}
  .footer-grid-contact>div:nth-child(3){grid-area:links}
}

/* =========================================================
   PUBLIC HOME TYPOGRAPHY v137
   Scope: English and Bahasa Melayu homepages only.
   Keep the 17px accessible reading base; reduce oversized
   display headings and tighten vertical rhythm.
   ========================================================= */
body.bog-home-page .hero-grid{
  min-height:550px;
  gap:48px;
  padding:64px 0;
}
body.bog-home-page .hero h1{
  max-width:760px;
  margin:18px 0 22px;
  font-size:clamp(2.25rem,4.35vw,3.6rem);
  line-height:1.06;
  letter-spacing:-.042em;
}
body.bog-home-page .lead{
  max-width:68ch;
  font-size:1.05rem;
  line-height:1.65;
}
body.bog-home-page .section{
  padding:64px 0;
}
body.bog-home-page .section-head h2{
  font-size:clamp(1.65rem,2.8vw,2.25rem);
  line-height:1.14;
  letter-spacing:-.028em;
}
body.bog-home-page .section-head p{
  max-width:68ch;
  line-height:1.65;
}
body.bog-home-page .hero-panel h2{
  font-size:1.05rem;
  line-height:1.35;
}
body.bog-home-page .stat b{
  font-size:1.55rem;
}
body.bog-home-page .btn{
  min-height:48px;
  font-size:.95rem;
}
@media(max-width:980px){
  body.bog-home-page .hero-grid{
    min-height:auto;
    gap:36px;
    padding:56px 0;
  }
}
@media(max-width:640px){
  body.bog-home-page .hero-grid{
    gap:28px;
    padding:42px 0 48px;
  }
  body.bog-home-page .hero h1{
    font-size:2.25rem;
    line-height:1.08;
    letter-spacing:-.035em;
  }
  body.bog-home-page .lead{
    font-size:1rem;
  }
  body.bog-home-page .section{
    padding:52px 0;
  }
}
