/*
Theme Name: Berlin Group Static Theme
Theme URI: https://berlin-group.org/
Author: OpenAI / ChatGPT; Maciej Kostro (concept co-author)
Description: Maciej Kostro is co-author of the concept for this theme and the entire website. WordPress theme generated from the approved static Berlin Group HTML prototype with preserved CSS, spacing, typography, logo and Font Awesome icon treatment.
Version: 3.0
Text Domain: berlin-group-static-theme
Requires at least: 6.0
Requires PHP: 7.4
*/


:root{--navy:#061b36;--navy-2:#0a2a4f;--blue:#0077b6;--cyan:#00a3d7;--gold:#fbc02c;--light:#f4f8fb;--line:#dce8f1;--text:#1d3348;--muted:#64798c;--white:#fff;--shadow:0 14px 34px rgba(6,27,54,.12);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.topbar{background:#020b16;color:rgba(255,255,255,.72);font-size:12px}.topbar-inner{max-width:var(--max);margin:auto;padding:8px 22px;display:flex;justify-content:space-between;gap:16px}.header{position:sticky;top:0;z-index:70;background:rgba(6,27,54,.97);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px rgba(0,0,0,.18)}.header-inner{max-width:var(--max);margin:auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:22px}.logo img{height:38px;width:auto;display:block}.nav{display:flex;gap:18px;align-items:center;color:rgba(255,255,255,.84);font-size:13px;font-weight:700}.nav a{padding:8px 0;border-bottom:2px solid transparent}.nav a:hover,.nav a.active{border-color:var(--gold);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 18px;border-radius:2px;border:2px solid transparent;background:var(--cyan);color:#fff;font-weight:800;cursor:pointer;font-size:13px}.btn:hover{background:#008fc1}.btn.secondary{background:transparent;border-color:rgba(255,255,255,.7)}.btn.gold{background:var(--gold);color:var(--navy)}.btn.outline{background:#fff;color:var(--blue);border-color:var(--blue)}
.hamburger{display:none;width:42px;height:40px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;align-items:center;justify-content:center;font-size:24px;cursor:pointer}.mobile-menu{display:none;position:fixed;inset:66px 0 auto 0;background:var(--navy);z-index:69;border-top:1px solid rgba(255,255,255,.12);box-shadow:0 18px 40px rgba(0,0,0,.25)}.mobile-menu.open{display:block}.mobile-menu a{display:block;color:#fff;padding:15px 22px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:700}
.hero{position:relative;min-height:560px;color:#fff;background:var(--navy);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,16,32,.94),rgba(5,24,48,.82) 42%,rgba(5,24,48,.38)),url('hero.jpg') center/cover no-repeat}.hero-inner{position:relative;max-width:var(--max);margin:auto;padding:92px 22px 110px;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.kicker{color:var(--gold);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;margin-bottom:10px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(35px,5.2vw,58px);line-height:1.03;letter-spacing:-.03em;margin-bottom:22px;font-weight:800}h2{font-size:clamp(25px,3.6vw,40px);line-height:1.1;letter-spacing:-.02em;color:var(--navy);margin-bottom:12px;font-weight:800}h3{color:var(--navy);font-size:18px;line-height:1.25;margin-bottom:10px}.lead{font-size:16px;line-height:1.75;color:rgba(255,255,255,.86);max-width:670px;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}
.panel{background:rgba(255,255,255,.95);color:var(--text);box-shadow:var(--shadow);border-top:5px solid var(--gold);padding:26px}.panel h3{font-size:22px}.task{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.task:first-of-type{border-top:0}.task-icon{width:42px;height:42px;border-radius:50%;background:#eef7fc;color:var(--blue);display:grid;place-items:center}.task-icon svg{width:22px;height:22px}.task strong{display:block;color:var(--navy);margin-bottom:2px}.task span{color:var(--muted);font-size:13px}.task:hover strong{color:var(--blue)}
.quicklinks{max-width:var(--max);margin:-58px auto 0;position:relative;z-index:3;padding:0 22px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.quick{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:22px;border-top:4px solid var(--gold)}.quick .qnum{color:var(--blue);font-weight:900;font-size:22px;margin-bottom:8px}.quick h3{font-size:16px;margin-bottom:6px}.quick p{color:var(--muted);font-size:13px;margin:0}
section{padding:76px 0}.section-light{background:var(--light)}.container{max-width:var(--max);margin:auto;padding:0 22px}.section-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:end;margin-bottom:34px}.section-copy{color:var(--muted);font-size:15px;line-height:1.75;margin:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);box-shadow:0 10px 28px rgba(6,27,54,.08);border-radius:2px}.card-band{height:5px;background:var(--gold)}.card-body{padding:23px}.std-icon{width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:13px;margin-bottom:16px}
.badge{display:inline-flex;border-radius:999px;padding:5px 10px;background:#eef4f8;color:var(--muted);font-size:11px;font-weight:900;white-space:nowrap}.badge.active{background:#e4f6eb;color:#10683a}.badge.mature{background:#dff1ff;color:#084c7e}.badge.open{background:#fff4d4;color:#7c5900}.badge.gold{background:var(--gold);color:var(--navy)}
.meta{background:var(--light);border-left:3px solid var(--gold);padding:13px;margin:15px 0;font-size:13px}.meta-row{display:flex;justify-content:space-between;gap:12px;padding:3px 0}.meta-label{color:var(--muted)}.meta-value{font-weight:900;color:var(--navy);text-align:right}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.tag{background:#eef4f8;color:#55718a;padding:5px 8px;border-radius:2px;font-size:11px;font-weight:800}.link{color:var(--blue);font-weight:900;cursor:pointer}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.tab{border:1px solid var(--line);background:#fff;color:var(--blue);padding:9px 12px;font-size:12px;font-weight:900;cursor:pointer}.tab.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.library{padding:24px}.toolbar{display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:18px}.search{border:1px solid var(--line);background:#fff;min-height:42px;padding:0 13px;display:flex;align-items:center;gap:8px;flex:1 1 320px}.search input,.toolbar select{border:1px solid var(--line);outline:0;background:#fff;padding:10px}.search input{border:0;width:100%;padding:0}.table-wrap{overflow:auto;border:1px solid var(--line);background:#fff}table{border-collapse:collapse;width:100%;min-width:1040px;background:#fff}th{background:var(--navy);color:#fff;text-align:left;padding:12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;position:sticky;top:0}td{border-top:1px solid var(--line);padding:13px;color:var(--muted);vertical-align:top}td strong{color:var(--navy)}.download{color:var(--blue);font-weight:900}
.page-hero{background:linear-gradient(90deg,var(--navy),var(--navy-2));color:#fff;padding:56px 0}.page-hero h1{font-size:40px;margin:0 0 16px}.page-hero p{color:rgba(255,255,255,.82);max-width:780px;font-size:16px}.aside-layout{display:grid;grid-template-columns:1fr 320px;gap:24px}.article{font-size:15px;line-height:1.8}.article h2{font-size:27px;margin-top:26px}.aside{padding:22px;position:sticky;top:90px;align-self:start}.cta{background:linear-gradient(90deg,rgba(6,27,54,.96),rgba(6,27,54,.78)),url('hero.jpg') center 70%/cover no-repeat;color:#fff;padding:62px 0}.cta h2{color:#fff}.cta p{color:rgba(255,255,255,.8)}
footer{background:#020b16;color:rgba(255,255,255,.74);padding:42px 0 26px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:28px}.footer-logo{height:38px;margin-bottom:18px}footer h4{color:#fff;margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.06em}footer a{display:block;color:rgba(255,255,255,.66);margin:7px 0;font-size:13px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;color:rgba(255,255,255,.55);font-size:12px}
@media(max-width:1050px){.nav,.header-inner>.btn{display:none}.hamburger{display:flex}.hero-inner,.section-head,.aside-layout{grid-template-columns:1fr}.grid-3,.grid-2{grid-template-columns:repeat(2,1fr)}.quicklinks{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.aside{position:static}}
@media(max-width:680px){.topbar{display:none}.header-inner{padding:12px 18px}.mobile-menu{inset:62px 0 auto 0}.logo img{height:32px}.hero-inner{padding:58px 18px 95px}.container,.quicklinks{padding-left:18px;padding-right:18px}.grid-3,.grid-2,.quicklinks,.footer-grid{grid-template-columns:1fr}section{padding:56px 0}.page-hero{padding:44px 0}.page-hero h1{font-size:32px}table{min-width:980px}}


/* Visual revision v3: white navigation, subtler hero, yellow line icons */
.topbar{display:none;}
.header{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(6,27,54,.08);}
.header-inner{padding:16px 22px;}
.logo img{height:36px;}
.nav{color:#111;font-weight:700;}
.nav a{color:#111;border-bottom:2px solid transparent;}
.nav a:hover,.nav a.active{border-color:var(--gold);color:#111;}
.header .btn.gold{background:var(--gold);color:var(--navy);}
.hamburger{border-color:rgba(6,27,54,.22);color:var(--navy);}
.mobile-menu{background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 40px rgba(6,27,54,.15);}
.mobile-menu a{color:#111;border-bottom:1px solid var(--line);}
.hero{min-height:500px;}
.hero:before{background:linear-gradient(90deg,rgba(3,16,32,.82),rgba(5,24,48,.67) 42%,rgba(5,24,48,.25)),url('hero.jpg') center/cover no-repeat;}
.hero-inner{padding:78px 22px 92px;grid-template-columns:1.12fr .88fr;gap:46px;}
.hero h1{font-size:clamp(31px,4.2vw,48px);font-weight:600;line-height:1.13;letter-spacing:-.018em;max-width:680px;}
.lead{font-size:15px;line-height:1.7;max-width:640px;}
.panel{padding:22px;border-top:3px solid var(--gold);box-shadow:0 10px 26px rgba(6,27,54,.13);background:rgba(255,255,255,.93);}
.panel h3{font-size:19px;margin-bottom:8px;}
.panel .kicker{font-size:11px;margin-bottom:6px;}
.task{grid-template-columns:36px 1fr;gap:10px;padding:10px 0;}
.task-icon{width:36px;height:36px;background:#fff7dc;color:var(--gold);border-radius:8px;}
.task-icon svg{width:20px;height:20px;stroke:currentColor;}
.task span{font-size:12px;}
.std-icon{width:48px;height:48px;border-radius:0;background:transparent;color:var(--gold);font-size:0;margin-bottom:16px;}
.grid-3 article:nth-child(1) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%2020h32M11%2020%2024%209l13%2011M13%2020v16M23%2020v16M33%2020v16M9%2038h30%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%2020h32M11%2020%2024%209l13%2011M13%2020v16M23%2020v16M33%2020v16M9%2038h30%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(2) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2215%22%20r%3D%226%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2215%22%20r%3D%226%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2234%22%20r%3D%226%22%2F%3E%3Cpath%20d%3D%22M19.2%2018.7%2021.2%2029M28.8%2029%2030.8%2018.7M20%2015h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2215%22%20r%3D%226%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2215%22%20r%3D%226%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2234%22%20r%3D%226%22%2F%3E%3Cpath%20d%3D%22M19.2%2018.7%2021.2%2029M28.8%2029%2030.8%2018.7M20%2015h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(3) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%226%22%20width%3D%2216%22%20height%3D%2236%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M21%2011h6M24%2035h.1%22%2F%3E%3Cpath%20d%3D%22m10%2024%205-5M38%2024l-5-5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%226%22%20width%3D%2216%22%20height%3D%2236%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M21%2011h6M24%2035h.1%22%2F%3E%3Cpath%20d%3D%22m10%2024%205-5M38%2024l-5-5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(4) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%227%22%20y%3D%2212%22%20width%3D%2234%22%20height%3D%2224%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M7%2020h34M13%2029h8M27%2029h7%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%227%22%20y%3D%2212%22%20width%3D%2234%22%20height%3D%2224%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M7%2020h34M13%2029h8M27%2029h7%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(5) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%206h15l8%208v28H13z%22%2F%3E%3Cpath%20d%3D%22M28%206v10h8M18%2024h13M18%2030h13M18%2036h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%206h15l8%208v28H13z%22%2F%3E%3Cpath%20d%3D%22M28%206v10h8M18%2024h13M18%2030h13M18%2036h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(6) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M24%205%2039%2011v10c0%2010-6%2017-15%2022C15%2038%209%2031%209%2021V11z%22%2F%3E%3Cpath%20d%3D%22m17%2025%205%205%2010-12%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M24%205%2039%2011v10c0%2010-6%2017-15%2022C15%2038%209%2031%209%2021V11z%22%2F%3E%3Cpath%20d%3D%22m17%2025%205%205%2010-12%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.grid-3 article:nth-child(7) .std-icon::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%2215%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%225%22%2F%3E%3Cpath%20d%3D%22M24%209v10M24%2029v10M9%2024h10M29%2024h10%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%2215%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%225%22%2F%3E%3Cpath%20d%3D%22M24%209v10M24%2029v10M9%2024h10M29%2024h10%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}
.std-icon::before{content:"";display:block;width:42px;height:42px;background:var(--gold);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;}
.badge{margin-bottom:12px;}
.badge + h3{margin-top:4px;}
.card-body h3{clear:both;}
.footer-grid{grid-template-columns:1.15fr repeat(5,1fr);}
footer a:hover{color:#fff;}
@media(max-width:1050px){.logo img{}.hero-inner{grid-template-columns:1fr;}.footer-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:680px){.hero-inner{padding:52px 18px 78px;}.hero h1{font-size:30px;}.panel{padding:18px;}.footer-grid{grid-template-columns:1fr;}}


/* v5 point corrections: based on v3, minimal layout changes */

/* readable logo on white header */
.logo img,
.bg-logo img {
width: 300px;
  max-width: 28vw;
  min-width: 260px;
  height: auto;
  display: block;
}

/* calmer desktop navigation */
.nav,
.bg-nav {
  gap: 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  white-space: nowrap;
  flex-wrap: nowrap;
}

.nav a,
.bg-nav a {
  white-space: nowrap;
  padding: 7px 0;
  color: #111827;
}

.header-inner,
.bg-header-inner {
  gap: 18px;
}

.header .btn,
.bg-header .bg-btn,
.header-inner > .btn,
.bg-header-inner > .bg-btn {
  font-size: 12px;
  padding: 9px 14px;
  min-height: 38px;
  white-space: nowrap;
}

/* Standard/news/event/detail pages: centered content with stable aside */
.aside-layout,
.bg-aside-layout {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: minmax(0, 740px) 300px;
  gap: 30px;
  align-items: start;
}

.article,
.bg-article {
  min-width: 0;
  max-width: 740px;
  width: 100%;
}

.aside,
.bg-aside {
  width: 100%;
  max-width: 300px;
  min-width: 0;
  box-sizing: border-box;
}

.table-wrap,
.bg-table-wrap {
  max-width: 100%;
  overflow-x: auto;
}

table {
  max-width: 100%;
}

/* Working in-page tabs */
.tabs .tab,
.bg-tabs .bg-tab,
.tab {
  cursor: pointer;
}

/* Better footer alignment */
.footer-grid,
.bg-footer-grid {
  align-items: start;
}

.footer-grid > div:not(:first-child),
.bg-footer-grid > div:not(:first-child) {
  text-align: right;
}

.footer-grid > div:not(:first-child) a,
.bg-footer-grid > div:not(:first-child) a {
  text-align: right;
}

/* Icon replacement: no fake letter circles */
.std-icon,
.bg-std-icon {
  background: transparent !important;
  color: transparent !important;
  border-radius: 0 !important;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  background-size: 46px 46px !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  overflow: hidden;
}

@media (max-width: 1180px) {
  .nav,
  .bg-nav {
    gap: 10px;
    font-size: 11.5px;
  }
  .logo img,
  .bg-logo img {
    width: 270px;
    min-width: 240px;
    max-width: 27vw;
  }
}

@media (max-width: 1050px) {
  .aside-layout,
  .bg-aside-layout {
    grid-template-columns: 1fr;
    max-width: 760px;
  }
  .article,
  .bg-article {
    max-width: 760px;
  }
  .aside,
  .bg-aside {
    max-width: 760px;
    position: static;
  }
  .footer-grid > div:not(:first-child),
  .bg-footer-grid > div:not(:first-child),
  .footer-grid > div:not(:first-child) a,
  .bg-footer-grid > div:not(:first-child) a {
    text-align: left;
  }
}

@media (max-width: 680px) {
  .logo img,
  .bg-logo img {
    width: 240px;
    min-width: 0;
    max-width: 72vw;
  }
}


/* v6 targeted corrections */

/* Use provided logos, not generated variants */
.logo img,
.bg-logo img {
width: 300px;
  max-width: 30vw;
  min-width: 260px;
  height: auto;
  display: block;
}

.footer-logo,
.bg-footer-logo {
width: 300px;
  max-width: 100%;
  height: auto;
}

/* Navigation: slightly larger again, but not bold and no ugly wrapping */
.nav,
.bg-nav {
  display: flex;
  align-items: center;
  gap: 18px;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  white-space: nowrap;
  flex-wrap: nowrap;
}

.nav a,
.bg-nav a {
  color: #111;
  font-weight: 400;
  white-space: nowrap;
  padding: 8px 0;
  border-bottom: 2px solid transparent;
}

.nav a:hover,
.bg-nav a:hover {
  color: #111;
  border-bottom-color: #fbc02c;
}

.header-inner,
.bg-header-inner {
  gap: 24px;
}

/* Footer: back to left aligned, but spread columns across full width */
.footer-grid,
.bg-footer-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(4, minmax(150px, 1fr));
  gap: clamp(28px, 4vw, 64px);
  align-items: start;
  justify-content: space-between;
  width: 100%;
}

.footer-grid > div,
.bg-footer-grid > div,
.footer-grid > div:not(:first-child),
.bg-footer-grid > div:not(:first-child),
.footer-grid > div:not(:first-child) a,
.bg-footer-grid > div:not(:first-child) a {
  text-align: left !important;
}

.footer-grid h4,
.bg-footer-grid h4 {
  margin-bottom: 14px;
}

.footer-grid a,
.bg-footer-grid a {
  line-height: 1.45;
}

/* Keep detail pages centered with side box */
.aside-layout,
.bg-aside-layout {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  grid-template-columns: minmax(0, 740px) 300px;
  gap: 30px;
  align-items: start;
}

.article,
.bg-article {
  min-width: 0;
  max-width: 740px;
}

.aside,
.bg-aside {
  max-width: 300px;
  min-width: 0;
}

@media (max-width: 1180px) {
  .nav,
  .bg-nav {
    gap: 13px;
    font-size: 12.5px;
  }
  .logo img,
  .bg-logo img {
    width: 280px;
    min-width: 230px;
    max-width: 27vw;
  }
}

@media (max-width: 1050px) {
  .nav,
  .bg-nav,
  .header-inner > .btn,
  .bg-header-inner > .bg-btn {
    display: none;
  }
  .aside-layout,
  .bg-aside-layout {
    grid-template-columns: 1fr;
    max-width: 760px;
  }
  .article,
  .bg-article,
  .aside,
  .bg-aside {
    max-width: 760px;
  }
  .footer-grid,
  .bg-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .logo img,
  .bg-logo img {
    width: 240px;
    min-width: 0;
    max-width: 72vw;
  }
  .footer-grid,
  .bg-footer-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }
}


/* v7 logo path fix: HTML controls logo src; CSS controls only sizing */
.logo img,
.bg-logo img {
  width: 300px !important;
  max-width: 30vw !important;
  min-width: 260px !important;
  height: auto !important;
  display: block !important;
  object-fit: contain;
}

.footer-logo,
.bg-footer-logo {
  width: 300px !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: contain;
}

@media (max-width: 1180px) {
  .logo img,
  .bg-logo img {
    width: 280px !important;
    min-width: 230px !important;
    max-width: 27vw !important;
  }
}

@media (max-width: 680px) {
  .logo img,
  .bg-logo img {
    width: 240px !important;
    min-width: 0 !important;
    max-width: 72vw !important;
  }
}


/* v8 absolute logo correction: no filters, no CSS source replacement */
.logo img,
.bg-logo img {
  width: 300px !important;
  max-width: 30vw !important;
  min-width: 260px !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  background: transparent !important;
}

.footer-logo,
.bg-footer-logo {
  width: 300px !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  background: transparent !important;
}

@media (max-width: 1180px) {
  .logo img,
  .bg-logo img {
    width: 280px !important;
    min-width: 230px !important;
    max-width: 27vw !important;
  }
}

@media (max-width: 680px) {
  .logo img,
  .bg-logo img {
    width: 240px !important;
    min-width: 0 !important;
    max-width: 72vw !important;
  }
}


/* Font Awesome icon integration */
.std-icon,
.bg-std-icon {
  background: transparent !important;
  color: #fbc02c !important;
  border-radius: 0 !important;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  overflow: visible !important;
  font-size: 36px;
  line-height: 1;
}

.std-icon i,
.bg-std-icon i,
.task-icon i,
.bg-task-icon i {
  color: #fbc02c;
  font-size: 34px;
  line-height: 1;
}

.task-icon,
.bg-task-icon {
  background: transparent !important;
  color: #fbc02c !important;
}

.quick .fas,
.quick .far,
.quick .fab {
  color: #fbc02c;
}



/* Font Awesome correction v2 */

/* Fast Paths icons: smaller and more subtle */
.task-icon,
.bg-task-icon {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
}

.task-icon i,
.bg-task-icon i {
  font-size: 20px !important;
  line-height: 1 !important;
}

/* Standard card icons: visible but not oversized */
.std-icon,
.bg-std-icon {
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 18px !important;
}

.std-icon i,
.bg-std-icon i {
  font-size: 30px !important;
  line-height: 1 !important;
}


/* WordPress integration layer — keeps approved static visual system intact */
.wp-site-blocks,
.bg-wp-main {
  margin: 0;
  padding: 0;
}

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.nav ul {
  list-style: none;
  display: flex;
  gap: inherit;
  align-items: center;
  margin: 0;
  padding: 0;
}

.nav li {
  margin: 0;
  padding: 0;
}

.mobile-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-menu li {
  margin: 0;
  padding: 0;
}

.current-menu-item > a,
.current_page_item > a {
  border-bottom-color: var(--gold);
}

.bg-wp-content img {
  max-width: 100%;
  height: auto;
}

.bg-wp-content .alignwide,
.bg-wp-content .alignfull {
  max-width: 100%;
}

.bg-wp-post-nav {
  margin-top: 32px;
}

.bg-empty {
  color: var(--muted);
}

@media (max-width: 1050px) {
  .nav ul {
    display: none;
  }
}


/* v1.1.6 active navigation correction */
.nav .current-menu-item > a,
.nav .current_page_item > a,
.nav .current-menu-ancestor > a,
.nav .current-menu-parent > a,
.nav li.bg-active-section > a {
  border-bottom-color: var(--gold) !important;
  color: #111 !important;
}

.mobile-menu .current-menu-item > a,
.mobile-menu .current_page_item > a,
.mobile-menu li.bg-active-section > a {
  color: #fff !important;
}


/* v1.1.9 breadcrumbs */
.breadcrumb {
  background: #fff;
  border-bottom: 1px solid var(--line);
  font-size: 11px;
  line-height: 1.4;
  color: var(--muted);
}

.breadcrumb .container {
  padding-top: 10px;
  padding-bottom: 10px;
}

.breadcrumb a {
  color: var(--muted);
  text-decoration: none;
}

.breadcrumb a:hover {
  color: var(--blue);
}

.breadcrumb .sep {
  display: inline-block;
  margin: 0 7px;
  color: #9aabb9;
}

.breadcrumb .current {
  color: var(--navy);
  font-weight: 600;
}


/* v1.1.10 requested refinements */

/* Standard-page specification table: smaller, more responsive */
.single-bg_standard .article .table-wrap,
.post-type-archive-bg_standard .article .table-wrap {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.single-bg_standard .article table {
  width: 100%;
  min-width: 640px;
  table-layout: auto;
}

.single-bg_standard .article table th,
.single-bg_standard .article table td {
  font-size: 12px;
  line-height: 1.35;
  padding: 10px 11px;
}

.single-bg_standard .article table th {
  white-space: nowrap;
}

.single-bg_standard .article table td:first-child {
  min-width: 260px;
}

@media (max-width: 680px) {
  .single-bg_standard .article table {
    min-width: 560px;
  }

  .single-bg_standard .article table th,
  .single-bg_standard .article table td {
    font-size: 11px;
    padding: 9px 10px;
  }
}

/* About page requested layout */
.about-main-layout {
  display: grid;
  grid-template-columns: minmax(0, 740px) 300px;
  gap: 30px;
  align-items: start;
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}

.about-main-layout .article {
  max-width: 740px;
  min-width: 0;
}

.about-contact-box {
  max-width: 300px;
  width: 100%;
}

.about-contact-box a {
  color: var(--blue);
  font-weight: 700;
}

.about-link-boxes {
  margin-top: 36px;
}

.about-link-boxes .card {
  height: 100%;
}

.about-link-boxes .card-body {
  display: flex;
  flex-direction: column;
  min-height: 190px;
}

.about-link-boxes .link {
  margin-top: auto;
}

/* Footer contact and social links */
.footer-contact {
  margin-top: 16px;
}

.footer-contact a,
.footer-social a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.footer-social {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.footer-social a {
  margin: 0;
}

.footer-social i,
.footer-contact i {
  color: var(--gold);
}

@media (max-width: 1050px) {
  .about-main-layout {
    grid-template-columns: 1fr;
    max-width: 760px;
  }

  .about-main-layout .article,
  .about-contact-box {
    max-width: 760px;
  }
}


/* v1.1.11 requested corrections */

/* Standards detail table: same typography scale as Library table */
.single-bg_standard .article table th,
.single-bg_standard .article table td {
  font-size: inherit !important;
  line-height: inherit !important;
}

/* Keep mobile behaviour, but do not shrink typography below Library table scale */
@media (max-width: 680px) {
  .single-bg_standard .article table th,
  .single-bg_standard .article table td {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}

/* Footer contact/social in one centered row */
.footer-contact-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 18px;
  text-align: center;
}

.footer-contact-row a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 !important;
  color: rgba(255,255,255,.66);
  font-size: 13px;
}

.footer-contact-row i {
  color: var(--gold);
}


/* v1.1.12 requested corrections */
.education-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 26px 0 34px;
}

.education-actions .btn {
  text-decoration: none;
}

.footer-contact-row {
  grid-column: 1 / -1;
  justify-content: center !important;
  text-align: center;
  margin: 28px auto 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.footer-contact-row a {
  color: rgba(255,255,255,.78);
}

.footer-contact-row a:hover {
  color: #fff;
}

.education-page-layout,
.participants-page-layout {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: minmax(0, 740px) 300px;
  gap: 30px;
  align-items: start;
}

.education-page-layout .article,
.participants-page-layout .article {
  max-width: 740px;
  min-width: 0;
}

.education-page-layout .aside,
.participants-page-layout .aside {
  max-width: 300px;
  width: 100%;
}

@media (max-width: 1050px) {
  .education-page-layout,
  .participants-page-layout {
    grid-template-columns: 1fr;
    max-width: 760px;
  }

  .education-page-layout .article,
  .participants-page-layout .article,
  .education-page-layout .aside,
  .participants-page-layout .aside {
    max-width: 760px;
  }
}


/* v1.1.13 footer spacing correction */
.footer-contact-row {
  margin-top: 10px !important;
  padding-top: 12px !important;
}


/* v1.1.14 Education links: use News "Read more" link style */
.education-actions {
  display: block !important;
  margin: 22px 0 30px !important;
}

.education-actions a {
  display: inline-block !important;
  margin: 0 22px 10px 0 !important;
}

.education-actions .btn,
.education-actions .btn.gold {
  background: transparent !important;
  border: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: var(--blue) !important;
  font-weight: 900 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
}

.education-actions .btn:hover,
.education-actions .btn.gold:hover {
  color: var(--navy) !important;
}


/* v1.1.15 force Education links to News Read-more style */
.education-page-layout .education-actions,
.education-page-layout .education-resource-links {
  display: block !important;
  margin: 22px 0 30px !important;
}

.education-page-layout .education-actions a,
.education-page-layout .education-resource-links a,
.education-page-layout .article a.education-link {
  display: inline-block !important;
  margin: 0 22px 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: var(--blue) !important;
  font-weight: 900 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
}

.education-page-layout .education-actions a:hover,
.education-page-layout .education-resource-links a:hover,
.education-page-layout .article a.education-link:hover {
  color: var(--navy) !important;
}

/* If old button markup is still saved in the Education page content */
.education-page-layout .article a.btn,
.education-page-layout .article a.btn.gold,
.education-page-layout .article .wp-block-button__link {
  display: inline-block !important;
  margin: 0 22px 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: var(--blue) !important;
  font-weight: 900 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.education-page-layout .article a.btn:hover,
.education-page-layout .article a.btn.gold:hover,
.education-page-layout .article .wp-block-button__link:hover {
  color: var(--navy) !important;
  background: transparent !important;
}


/* v1.1.17 Education links: style only, do not replace page content */
.education-page-layout .article a[href*="mkostro.com/berlin-group"],
.education-page-layout .article a[href*="youtube.com/@TheBerlinGroup-openFinance"],
.education-page-layout .article a[href*="youtu.be"],
.education-page-layout .article a.education-link,
.education-page-layout .article .education-resource-links a {
  display: inline-block !important;
  margin: 0 22px 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: var(--blue) !important;
  font-weight: 900 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.education-page-layout .article a[href*="mkostro.com/berlin-group"]:hover,
.education-page-layout .article a[href*="youtube.com/@TheBerlinGroup-openFinance"]:hover,
.education-page-layout .article a[href*="youtu.be"]:hover,
.education-page-layout .article a.education-link:hover,
.education-page-layout .article .education-resource-links a:hover {
  color: var(--navy) !important;
  background: transparent !important;
}


/* v1.1.18 subpage hero height + mobile active menu fix */

/* Keep the navy subpage header stable across subpages */
.page-hero {
  min-height: 238px !important;
  display: flex !important;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page-hero .container {
  width: 100%;
}

/* Keep subpage lead in one line on desktop/tablet where space allows */
.page-hero p {
  max-width: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Restore wrapping on small screens to avoid horizontal overflow */
@media (max-width: 760px) {
  .page-hero {
    min-height: 220px !important;
  }

  .page-hero p {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}

/* Active item in responsive menu must remain visible */
.mobile-menu .current-menu-item > a,
.mobile-menu .current_page_item > a,
.mobile-menu .current-menu-ancestor > a,
.mobile-menu .current-menu-parent > a,
.mobile-menu li.bg-active-section > a,
.mobile-menu .bg-active-section > a {
  color: #fff !important;
  background: rgba(251, 192, 44, .16) !important;
  border-left: 4px solid var(--gold) !important;
  padding-left: 18px !important;
}

.mobile-menu a:hover {
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
}


/* v1.1.19 responsive menu active link contrast */
.mobile-menu .current-menu-item > a,
.mobile-menu .current_page_item > a,
.mobile-menu .current-menu-ancestor > a,
.mobile-menu .current-menu-parent > a,
.mobile-menu li.bg-active-section > a,
.mobile-menu .bg-active-section > a {
  color: #061b36 !important;
  background: #fbc02c !important;
  border-left: 0 !important;
  padding-left: 22px !important;
  font-weight: 800 !important;
}

.mobile-menu .current-menu-item > a:hover,
.mobile-menu .current_page_item > a:hover,
.mobile-menu .current-menu-ancestor > a:hover,
.mobile-menu .current-menu-parent > a:hover,
.mobile-menu li.bg-active-section > a:hover,
.mobile-menu .bg-active-section > a:hover {
  color: #061b36 !important;
  background: #fbc02c !important;
}


/* v1.1.20 responsive menu active hover fix */
.mobile-menu li.current-menu-item > a,
.mobile-menu li.current_page_item > a,
.mobile-menu li.current-menu-ancestor > a,
.mobile-menu li.current-menu-parent > a,
.mobile-menu li.bg-active-section > a,
.mobile-menu .bg-active-section > a,
.mobile-menu li.current-menu-item > a:hover,
.mobile-menu li.current_page_item > a:hover,
.mobile-menu li.current-menu-ancestor > a:hover,
.mobile-menu li.current-menu-parent > a:hover,
.mobile-menu li.bg-active-section > a:hover,
.mobile-menu .bg-active-section > a:hover,
.mobile-menu li.current-menu-item > a:focus,
.mobile-menu li.current_page_item > a:focus,
.mobile-menu li.current-menu-ancestor > a:focus,
.mobile-menu li.current-menu-parent > a:focus,
.mobile-menu li.bg-active-section > a:focus,
.mobile-menu .bg-active-section > a:focus {
  color: #061b36 !important;
  background-color: #fbc02c !important;
  background: #fbc02c !important;
  text-decoration: none !important;
}

.mobile-menu li.current-menu-item > a *,
.mobile-menu li.current_page_item > a *,
.mobile-menu li.current-menu-ancestor > a *,
.mobile-menu li.current-menu-parent > a *,
.mobile-menu li.bg-active-section > a *,
.mobile-menu .bg-active-section > a * {
  color: #061b36 !important;
}


/* v1.1.21 definitive mobile menu hover contrast fix
   This intentionally overrides the generic .mobile-menu a:hover rule. */
body .mobile-menu a:hover,
body .mobile-menu a:focus {
  color: #061b36 !important;
  background: #fbc02c !important;
  background-color: #fbc02c !important;
  text-decoration: none !important;
}

body .mobile-menu .current-menu-item > a,
body .mobile-menu .current_page_item > a,
body .mobile-menu .current-menu-ancestor > a,
body .mobile-menu .current-menu-parent > a,
body .mobile-menu .bg-active-section > a,
body .mobile-menu li.bg-active-section > a,
body .mobile-menu .current-menu-item > a:hover,
body .mobile-menu .current_page_item > a:hover,
body .mobile-menu .current-menu-ancestor > a:hover,
body .mobile-menu .current-menu-parent > a:hover,
body .mobile-menu .bg-active-section > a:hover,
body .mobile-menu li.bg-active-section > a:hover,
body .mobile-menu .current-menu-item > a:focus,
body .mobile-menu .current_page_item > a:focus,
body .mobile-menu .current-menu-ancestor > a:focus,
body .mobile-menu .current-menu-parent > a:focus,
body .mobile-menu .bg-active-section > a:focus,
body .mobile-menu li.bg-active-section > a:focus {
  color: #061b36 !important;
  background: #fbc02c !important;
  background-color: #fbc02c !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}

/* Some browsers/WordPress menu walkers wrap label text in spans. */
body .mobile-menu a:hover *,
body .mobile-menu a:focus *,
body .mobile-menu .current-menu-item > a *,
body .mobile-menu .current_page_item > a *,
body .mobile-menu .current-menu-ancestor > a *,
body .mobile-menu .current-menu-parent > a *,
body .mobile-menu .bg-active-section > a *,
body .mobile-menu li.bg-active-section > a * {
  color: #061b36 !important;
}


/* v1.1.22 Education arrows + footer Participants link */
.education-page-layout .article a[href*="mkostro.com/berlin-group"]::after,
.education-page-layout .article a[href*="youtube.com/@TheBerlinGroup-openFinance"]::after,
.education-page-layout .article a[href*="youtu.be"]::after {
  content: " →";
}


/* v1.1.23 CSV document sync support */
.library-download-link {
  white-space: nowrap;
}


/* v1.1.24 CSV library asset links */
.asset-download-link {
  font-weight: 700;
  white-space: nowrap;
}
.asset-download-link::after {
  content: " →";
}


/* v1.1.25 document library simplification */
.library-document-title {
  font-weight: 700;
}
.standard-doc-section + .standard-doc-section {
  margin-top: 2rem;
}
.standard-doc-section h3 {
  margin-top: 1rem;
}

/* v1.1.26: automatic Education/Participants page creation disabled. */


/* v1.1.28 page alignment and static section headers */
.breadcrumbs,
.breadcrumb,
.bg-breadcrumbs {
  font-size: 1rem;
  line-height: 1.55;
}

.bg-section > .container,
.breadcrumbs .container,
.breadcrumb .container,
.bg-breadcrumbs .container,
.page-hero .container {
  max-width: 1180px;
}

.bg-section .article,
.bg-section .bg-wp-content.article,
.bg-section .aside-layout,
.bg-section .about-main-layout {
  margin-left: 0;
}

.aside-layout {
  align-items: flex-start;
}

.article.bg-wp-content,
.bg-wp-content.article {
  max-width: none;
}

.standard-intro {
  margin-bottom: 2rem;
}

.standard-library-links {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.25rem;
}

.page-hero.static-page-hero h1,
.page-hero.static-page-hero p {
  max-width: 860px;
}

.single-clean-body {
  min-height: 1px;
}

.single-clean-body:empty {
  display: none;
}


/* v1.1.29 layout and sortable library */
.breadcrumbs,
.breadcrumb,
.bg-breadcrumbs,
.bg-breadcrumbs .container,
.breadcrumbs .container {
  font-size: 1.05rem;
}

.bg-section > .container,
.page-hero .container,
.bg-breadcrumbs .container,
.breadcrumbs .container,
.breadcrumb .container {
  width: min(1180px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}

.bg-section .article,
.bg-section .bg-wp-content.article,
.article.bg-wp-content,
.bg-wp-content.article {
  margin-left: 0;
}

.section-intro {
  max-width: 860px;
  margin: 0 0 2rem 0;
}

.section-intro p {
  font-size: 1.05rem;
  line-height: 1.7;
}

.standard-library-links {
  display: none !important;
}

.standard-library-text {
  margin-top: 1.25rem;
  font-size: 1.02rem;
  line-height: 1.7;
}

.sortable-header {
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}

.sortable-header::after {
  content: " ⇅";
  font-size: .8em;
  opacity: .55;
}

.sortable-header[data-direction="asc"]::after {
  content: " ↑";
  opacity: 1;
}

.sortable-header[data-direction="desc"]::after {
  content: " ↓";
  opacity: 1;
}


/* v1.1.30 corrections */
.breadcrumbs,
.breadcrumb,
.bg-breadcrumbs,
.bg-breadcrumbs .container,
.breadcrumbs .container {
  font-size: .95rem !important;
}

.single-bg_standard .standard-intro h2,
.post-type-archive-bg_standard .standard-intro h2 {
  font-size: var(--h2-size, 2rem);
  line-height: 1.2;
  margin-top: 0;
}

.single-bg_standard .standard-intro table,
.single-bg_standard .standard-intro .table-wrap,
.single-bg_standard .standard-intro [id*="related"],
.single-bg_standard .standard-intro [class*="related"] {
  display: none !important;
}


/* v1.1.31 homepage hero clickability and standard-page hard cleanup */
.hero {
  pointer-events: auto !important;
}

.hero::before,
.hero:before {
  pointer-events: none !important;
  z-index: 0;
}

.hero-inner,
.hero .container,
.hero .actions,
.hero .actions a,
.hero a,
.hero button,
.quicklinks,
.quicklinks *,
.quick,
.quick a {
  position: relative;
  z-index: 5;
  pointer-events: auto !important;
}

.quicklinks {
  z-index: 20 !important;
}

.single-bg_standard .standard-intro table,
.single-bg_standard .standard-intro .table-wrap,
.single-bg_standard .standard-intro h3,
.single-bg_standard .standard-intro ul,
.single-bg_standard .standard-intro ol {
  display: none !important;
}


/* v1.1.32 clean editable page structure */
.editable-page-intro {
  max-width: 860px;
  margin: 0 0 2rem 0;
}
.editable-page-intro h2 {
  margin-top: 0;
}
.editable-page-intro p {
  font-size: 1.05rem;
  line-height: 1.7;
}


/* v1.1.33 editable detail pages */
.detail-page-content {
  max-width: 860px;
}
.detail-page-content h2:first-child,
.detail-page-content h3:first-child {
  margin-top: 0;
}
.standard-edit-hint {
  font-size: .92rem;
  color: var(--muted);
}


/* v1.1.34 about contact and editable page header support */
.about-page-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 24px;
  align-items: start;
}
.about-contact-box {
  position: sticky;
  top: 90px;
}
@media(max-width:1050px){
  .about-page-layout {
    grid-template-columns: 1fr;
  }
  .about-contact-box {
    position: static;
  }
}


/* v1.1.35 cookie popup */
.bg-cookie-popup {
  position: fixed;
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 2000;
  max-width: 920px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  padding: 18px;
  display: none;
  align-items: center;
  gap: 18px;
}
.bg-cookie-popup p {
  margin: 4px 0 0;
  color: var(--muted);
}
.bg-cookie-popup.is-visible {
  display: flex;
}
.bg-cookie-popup .btn {
  flex: 0 0 auto;
}
@media(max-width:680px) {
  .bg-cookie-popup {
    display: none;
    flex-direction: column;
    align-items: flex-start;
  }
  .bg-cookie-popup.is-visible {
    display: flex;
  }
}


/* v2.0.3 global content-link underline */
.article a,
.bg-wp-content a,
.editable-page-intro a,
.detail-page-content a,
.card-body p a,
.standard-library-text a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

.nav a,
.mobile-menu a,
.btn,
.quick,
.task,
.logo,
.card h3 a,
.footer-grid a,
.footer-social a,
.asset-download-link {
  text-decoration: none !important;
}


/* v2.0.5 shared editable contact box */
.contact-page-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 24px;
  align-items: start;
}

.shared-contact-box {
  position: sticky;
  top: 90px;
}

@media(max-width:1050px){
  .contact-page-layout {
    grid-template-columns: 1fr;
  }
  .shared-contact-box {
    position: static;
  }
}




/* v2.0.14 safe cleanup: simple header, mobile menu, participants table */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: #fff;
  border-bottom: 1px solid var(--line);
}

.header-inner {
  position: relative;
  z-index: 101;
}

.logo,
.logo img,
.nav,
.nav ul,
.nav li,
.nav a,
.header .btn,
.hamburger {
  position: relative;
}

.nav a,
.logo,
.header .btn,
.mobile-menu a {
  cursor: pointer;
}

.hero,
.page-hero {
  position: relative;
  z-index: 1;
}

.hero::before,
.hero:before,
.page-hero::before,
.page-hero:before {
  pointer-events: none;
}

.mobile-menu {
  z-index: 110;
}

.mobile-menu.open {
  display: block;
}

/* Shared contact-box layout kept simple. */
.contact-page-layout,
.about-page-layout,
.participants-page-layout,
.education-page-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: flex-start;
}

.shared-contact-box,
.about-contact-box,
.participants-page-layout .aside,
.education-page-layout .aside,
.contact-page-layout .aside {
  position: sticky;
  top: 90px;
  align-self: start;
  justify-self: stretch;
  width: 100%;
  max-width: 320px;
  float: none;
}

/* Participants content and table. */
.participants-content {
  padding-top: 0;
  margin-top: 0;
}

.participants-content > :first-child,
.participants-content h1:first-child,
.participants-content h2:first-child,
.participants-content h3:first-child {
  margin-top: 0;
}

.participants-module.library {
  padding: 0;
  margin-top: 24px;
  box-shadow: none;
}

.participants-table-wrap {
  border-radius: 0;
}

.participants-table {
  min-width: 620px;
}

.participants-table th {
  cursor: default;
}

.participants-table th::after,
.participants-table th.sortable-header::after,
.participants-table th[data-direction="asc"]::after,
.participants-table th[data-direction="desc"]::after {
  content: none;
  display: none;
}

.participants-table th,
.participants-table td {
  vertical-align: middle;
}

.participants-table tbody tr {
  height: 58px;
}

.participants-table th:first-child,
.participants-table .participant-country-cell {
  width: 160px;
  text-align: center;
  vertical-align: middle;
}

.participant-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 28px;
  margin-left: auto;
  margin-right: auto;
  font-size: 20px;
  line-height: 1;
}

.participant-organisation-cell {
  color: var(--muted);
  vertical-align: middle;
}

.participant-org-main {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 34px;
  vertical-align: middle;
}

.participant-logo-mark {
  width: 112px;
  min-width: 112px;
  max-width: 112px;
  height: 34px;
  min-height: 34px;
  max-height: 34px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: -.02em;
  filter: none;
}

.participant-logo-mark img {
  display: block;
  width: auto;
  height: 24px;
  max-height: 24px;
  max-width: 92px;
  object-fit: contain;
  filter: none;
}

.participant-org-name {
  color: var(--navy);
  font-weight: 700;
}

.participant-link {
  float: right;
  margin-left: 16px;
  line-height: 34px;
}

.footer-logo-link {
  display: inline-block;
  margin: 0 0 18px;
}

.footer-logo-link .footer-logo {
  margin-bottom: 0;
}

@media(max-width:1050px) {
  .contact-page-layout,
  .about-page-layout,
  .participants-page-layout,
  .education-page-layout {
    grid-template-columns: 1fr;
  }

  .shared-contact-box,
  .about-contact-box,
  .participants-page-layout .aside,
  .education-page-layout .aside,
  .contact-page-layout .aside {
    position: static;
    max-width: none;
    width: 100%;
  }
}

@media(max-width:680px) {
  .participants-table {
    min-width: 560px;
  }

  .participant-logo-mark {
    width: 96px;
    min-width: 96px;
    max-width: 96px;
  }

  .participant-logo-mark img {
    height: 22px;
    max-height: 22px;
    max-width: 78px;
  }

  .participant-link {
    float: none;
    display: inline-block;
    margin-left: 12px;
  }
}



































/* v2.1.14 clean transparent above-footer last-modification */
.bg-last-modification-strip {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent !important;
  position: relative;
  z-index: 3;
  overflow: visible;
}

.bg-last-modification-strip .container {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 8px;
  margin-bottom: 0;
  pointer-events: none;
}

.bg-last-modification {
  background: transparent !important;
  color: var(--muted);
  opacity: .54;
  font-size: 10.5px;
  line-height: 1.35;
  font-weight: 400;
  text-align: left;
  margin: 0;
}


/* v2.1.19 News & Events pagination and equal card layout */
.bg-news-events-grid {
  align-items: stretch;
}

.bg-news-event-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.bg-news-event-card .card-band {
  flex: 0 0 auto;
}

.bg-news-event-card-body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 310px;
}

.bg-news-event-badge {
  align-self: flex-start;
  margin-bottom: 14px;
}

.bg-news-event-title {
  min-height: 3.1em;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bg-news-event-title a {
  color: inherit;
}

.bg-news-event-excerpt {
  min-height: 4.65em;
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bg-news-event-meta {
  margin-top: auto;
}

.bg-news-event-link {
  display: inline-flex;
  align-self: flex-start;
}

.bg-ne-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 22px 0 8px;
}

.bg-ne-page-link,
.bg-ne-page-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  min-width: 36px;
  padding: 7px 11px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.bg-ne-page-number.current {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}

.bg-ne-page-link.disabled {
  color: var(--muted);
  opacity: .45;
  pointer-events: none;
}

@media (max-width: 900px) {
  .bg-news-event-card-body {
    min-height: 290px;
  }
}

@media (max-width: 640px) {
  .bg-news-event-title,
  .bg-news-event-excerpt {
    min-height: auto;
  }

  .bg-news-event-card-body {
    min-height: 0;
  }
}


/* v2.1.20 News & Events no-reload pagination and four-line titles */
.bg-news-event-card-body {
  min-height: 390px;
}

.bg-news-event-title {
  min-height: 6.2em;
  -webkit-line-clamp: 4;
}

.bg-news-event-excerpt {
  min-height: 4.65em;
  -webkit-line-clamp: 3;
}

.bg-ne-item-hidden {
  display: none !important;
}

.bg-ne-pagination button.bg-ne-page-link,
.bg-ne-pagination button.bg-ne-page-number {
  font-family: inherit;
  cursor: pointer;
}

.bg-ne-pagination button:disabled {
  cursor: default;
}

.bg-ne-pagination button:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

@media (max-width: 900px) {
  .bg-news-event-card-body {
    min-height: 350px;
  }
}

@media (max-width: 640px) {
  .bg-news-event-title,
  .bg-news-event-excerpt {
    min-height: auto;
  }

  .bg-news-event-card-body {
    min-height: 0;
  }
}


/* v2.1.21 Participants tabs and additional participant lists */
.bg-participants-tabs-module {
  padding: 0;
  overflow: hidden;
}

.bg-participant-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 18px 18px 0;
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.bg-participant-tab {
  appearance: none;
  border: 1px solid var(--line);
  border-bottom: 0;
  background: var(--light);
  color: var(--blue);
  padding: 11px 14px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  border-radius: 2px 2px 0 0;
}

.bg-participant-tab.active {
  background: #fff;
  color: var(--navy);
  border-top: 3px solid var(--gold);
  margin-bottom: -1px;
}

.bg-participant-tab:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.bg-participant-tab-panel {
  padding: 18px;
}

.bg-participant-tab-panel[hidden] {
  display: none !important;
}

.participants-simple-table .participant-organisation-cell,
.participants-simple-table .participant-country-cell,
.participants-simple-table .participant-type-cell {
  vertical-align: middle;
}

.participants-simple-table .participant-organisation-cell {
  font-weight: 800;
  color: var(--navy);
}

.participants-simple-table .participant-type-cell {
  color: var(--muted);
}

@media (max-width: 720px) {
  .bg-participant-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .bg-participant-tab {
    border: 1px solid var(--line);
    border-radius: 2px;
    text-align: left;
  }

  .bg-participant-tab.active {
    margin-bottom: 0;
  }
}


/* v2.3.4 — Participants multi-list assignment and client-side sorting */
.participants-table th[data-bg-participant-sort] {
  position: relative;
  padding-right: 30px;
  cursor: pointer;
  user-select: none;
}

.participants-table th[data-bg-participant-sort]::after {
  content: "\2195";
  display: inline-block;
  position: absolute;
  right: 12px;
  color: var(--muted);
  font-size: 13px;
}

.participants-table th[data-bg-participant-sort][aria-sort="ascending"]::after {
  content: "\2191";
  color: var(--gold);
}

.participants-table th[data-bg-participant-sort][aria-sort="descending"]::after {
  content: "\2193";
  color: var(--gold);
}

.participants-table th[data-bg-participant-sort]:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: -3px;
}


/* v2.3.5 — News & Events search and date filters */
.bg-ne-filter-card {
  margin: 0 0 30px;
}

.bg-ne-filter-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 190px 190px 190px;
  gap: 14px;
  margin-bottom: 0;
}

.bg-ne-filter-toolbar .search {
  min-width: 0;
}

.bg-ne-filter-toolbar select,
.bg-ne-date-filter {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--line);
  background: #fff;
}

.bg-ne-filter-toolbar select {
  padding: 9px 10px;
  color: var(--text);
}

.bg-ne-date-filter {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
}

.bg-ne-date-filter span {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.bg-ne-date-filter input {
  min-width: 0;
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  padding: 8px 0;
  color: var(--text);
}

.bg-ne-no-results {
  margin: 18px 0;
}

@media (max-width: 980px) {
  .bg-ne-filter-toolbar {
    grid-template-columns: minmax(240px, 1fr) minmax(180px, 1fr);
  }
}

@media (max-width: 620px) {
  .bg-ne-filter-toolbar {
    grid-template-columns: 1fr;
  }
}


/* v2.2.1 — restore frontend list rendering in editable content areas */
.bg-wp-content ul,
.bg-wp-content ol,
.article ul,
.article ol,
.detail-page-content ul,
.detail-page-content ol,
.standard-intro ul,
.standard-intro ol,
.page-intro ul,
.page-intro ol,
.card-body ul,
.card-body ol,
.panel ul,
.panel ol {
  margin: 0 0 1.25em 1.4em;
  padding-left: 1.25em;
}

.bg-wp-content ul,
.article ul,
.detail-page-content ul,
.standard-intro ul,
.page-intro ul,
.card-body ul,
.panel ul {
  list-style: disc outside;
}

.bg-wp-content ol,
.article ol,
.detail-page-content ol,
.standard-intro ol,
.page-intro ol,
.card-body ol,
.panel ol {
  list-style: decimal outside;
}

.bg-wp-content li,
.article li,
.detail-page-content li,
.standard-intro li,
.page-intro li,
.card-body li,
.panel li {
  margin: .35em 0;
  padding-left: .15em;
}

.bg-wp-content li > ul,
.bg-wp-content li > ol,
.article li > ul,
.article li > ol,
.detail-page-content li > ul,
.detail-page-content li > ol,
.standard-intro li > ul,
.standard-intro li > ol,
.page-intro li > ul,
.page-intro li > ol,
.card-body li > ul,
.card-body li > ol,
.panel li > ul,
.panel li > ol {
  margin-top: .35em;
  margin-bottom: .35em;
}

.bg-wp-content ul ul,
.article ul ul,
.detail-page-content ul ul,
.standard-intro ul ul,
.page-intro ul ul,
.card-body ul ul,
.panel ul ul {
  list-style-type: circle;
}

.bg-wp-content ul ul ul,
.article ul ul ul,
.detail-page-content ul ul ul,
.standard-intro ul ul ul,
.page-intro ul ul ul,
.card-body ul ul ul,
.panel ul ul ul {
  list-style-type: square;
}


/* v2.2.3 — force visible list markers in editor-generated frontend content */
.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ul, ol),
.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ul.wp-block-list, ol.wp-block-list) {
  display: block !important;
  margin-top: 0.75em !important;
  margin-right: 0 !important;
  margin-bottom: 1.25em !important;
  margin-left: 0 !important;
  padding-left: 2rem !important;
  list-style-position: outside !important;
  overflow: visible !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ul, ul.wp-block-list) {
  list-style-type: disc !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ol, ol.wp-block-list) {
  list-style-type: decimal !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(li) {
  display: list-item !important;
  margin-top: 0.35em !important;
  margin-bottom: 0.35em !important;
  padding-left: 0.15em !important;
  overflow: visible !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(li)::marker {
  color: var(--navy) !important;
  font-weight: 700;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ul ul) {
  list-style-type: circle !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ul ul ul) {
  list-style-type: square !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ol ol) {
  list-style-type: lower-alpha !important;
}

.bg-wp-main :where(.bg-wp-content, .article, .detail-page-content, .standard-intro, .page-intro, .entry-content, .wp-block-post-content) :where(ol ol ol) {
  list-style-type: lower-roman !important;
}


/* v2.2.4 — preserve list markup in component previews */
.component-content-preview {
  color: var(--text);
  margin: 10px 0 0;
}

.component-content-preview p {
  margin: 0 0 1em;
}

.component-content-preview ul,
.component-content-preview ol,
.card-body .component-content-preview ul,
.card-body .component-content-preview ol {
  margin: .75em 0 1.05em 0 !important;
  padding-left: 1.35rem !important;
}

.component-content-preview li {
  margin: .25em 0 !important;
}


/* v2.2.6 — standard detail editor lists */
.single-bg_standard .detail-page-content ul,
.single-bg_standard .standard-intro ul,
.bg-wp-main .detail-page-content ul,
.bg-wp-main .standard-intro ul {
  display: block !important;
  list-style: disc outside !important;
  margin: 0.75em 0 1.25em 0 !important;
  padding-left: 2rem !important;
  overflow: visible !important;
}

.single-bg_standard .detail-page-content ol,
.single-bg_standard .standard-intro ol,
.bg-wp-main .detail-page-content ol,
.bg-wp-main .standard-intro ol {
  display: block !important;
  list-style: decimal outside !important;
  margin: 0.75em 0 1.25em 0 !important;
  padding-left: 2rem !important;
  overflow: visible !important;
}

.single-bg_standard .detail-page-content li,
.single-bg_standard .standard-intro li,
.bg-wp-main .detail-page-content li,
.bg-wp-main .standard-intro li {
  display: list-item !important;
  margin: 0.35em 0 !important;
  padding-left: 0.15em !important;
  overflow: visible !important;
}

.single-bg_standard .detail-page-content li::marker,
.single-bg_standard .standard-intro li::marker,
.bg-wp-main .detail-page-content li::marker,
.bg-wp-main .standard-intro li::marker {
  color: var(--navy) !important;
  font-weight: 700;
}


/* v2.3.0 — Consultations cards, pagination and detail layout */
.bg-consultations-grid {
  align-items: stretch;
}

.bg-consultation-card-body {
  min-height: 390px;
}

.bg-consultation-title {
  min-height: 6.2em;
  -webkit-line-clamp: 4;
}

.bg-consultation-excerpt {
  min-height: 4.65em;
  -webkit-line-clamp: 3;
}

.bg-consultation-detail-content h3,
.consultation-detail-content h3 {
  margin-top: 1.8em;
}

.consultation-downloads {
  margin-top: .75em;
}

@media (max-width: 900px) {
  .bg-consultation-card-body {
    min-height: 350px;
  }
}

@media (max-width: 640px) {
  .bg-consultation-title,
  .bg-consultation-excerpt {
    min-height: auto;
  }

  .bg-consultation-card-body {
    min-height: 0;
  }
}


/* v2.3.1 — compact consultation cards */
.bg-consultation-card-body {
  min-height: 315px;
}

.bg-consultation-title {
  min-height: 3.1em;
  margin-bottom: 10px;
  -webkit-line-clamp: 2;
}

.bg-consultation-excerpt {
  min-height: 3.1em;
  margin-top: 0;
  margin-bottom: 0;
  -webkit-line-clamp: 2;
}

.bg-consultation-meta {
  margin-top: auto;
}

@media (max-width: 900px) {
  .bg-consultation-card-body {
    min-height: 295px;
  }
}

@media (max-width: 640px) {
  .bg-consultation-card-body {
    min-height: 0;
  }

  .bg-consultation-title,
  .bg-consultation-excerpt {
    min-height: auto;
  }
}


/* v2.3.2 — editable consultation detail text */
.consultation-detail-editable-text {
  margin-bottom: 1.4em;
}


/* v2.3.3 — consultation detail uses main WordPress editor content */
.consultation-detail-editor-content {
  margin-bottom: 1.4em;
}

/* Advisory Participants: category icons and legend. */
#bg-advisory-board-participants .participant-type-cell,
#bg-advisory-board-participants th:last-child {
  width: 96px;
  text-align: center;
}
#bg-advisory-board-participants .bg-category-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 10px;
  background: #edf3f8;
  color: var(--navy);
  font-size: 16px;
  line-height: 1;
}
#bg-advisory-board-participants .bg-category-legend {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
#bg-advisory-board-participants .bg-category-legend h3 {
  margin: 0 0 14px;
  color: var(--navy);
  font-size: 14px;
  font-weight: 700;
}
#bg-advisory-board-participants .bg-category-legend-items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
#bg-advisory-board-participants .bg-category-legend-item {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}
@media (max-width: 480px) {
  #bg-advisory-board-participants .bg-category-legend-items {
    grid-template-columns: 1fr;
  }
}

#bg-advisory-board-participants .bg-category-legend-label {
  padding-left: 18px;
}

/* 3.0: accessibility and horizontal table navigation. */
.bg-skip-link {
  position: fixed; top: 8px; left: 8px; z-index: 10000;
  transform: translateY(-200%); padding: 12px 18px;
  background: #fff; color: var(--navy); border: 2px solid var(--blue);
}
.bg-skip-link:focus { transform: none; }
#bg-main-content { scroll-margin-top: 100px; }
.mobile-menu[hidden], .bg-table-scroll-hint[hidden] { display: none !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
.table-wrap:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.bg-sort-button {
  font: inherit; letter-spacing: inherit; text-transform: inherit; color: inherit;
  background: transparent; border: 0; margin: 0; padding: 6px 0;
  text-align: inherit; cursor: pointer; min-height: 32px;
}
th .bg-sort-button:focus-visible { outline-color: var(--gold); }
.bg-table-scroll-hint {
  margin: 10px 0; color: var(--muted); font-size: 13px; line-height: 1.5;
}
.table-wrap[tabindex] { overscroll-behavior-x: contain; scrollbar-width: auto; }
@media (max-width: 720px) {
  .participants-module, .card.library, .bg-participant-tab-panel { min-width: 0; max-width: 100%; }
  .table-wrap { max-width: 100%; -webkit-overflow-scrolling: touch; }
  .participants-table th:first-child, .participants-table .participant-country-cell { width: 64px; min-width: 64px; }
  .participants-table .participant-org-name { white-space: normal; overflow-wrap: anywhere; }
  .participants-table .participant-link { min-width: 44px; min-height: 44px; line-height: 44px; text-align: center; }
  .bg-sort-button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
