:root{--ink:#1b1e23;--muted:#62666e;--gold:#ddc17c;--border:#dedfe3;--paper:#f5f6f8;--white:#fff}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:1rem/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a,button,input{outline-offset:0.3125rem}a:focus-visible,button:focus-visible,input:focus-visible{outline:0.1875rem solid #95702c}.skip{position:fixed;top:-3.75rem;left:0.625rem;z-index:20;background:white;padding:0.625rem}.skip:focus{top:0.625rem}.sidebar{position:fixed;inset:0 auto 0 0;width:17.25rem;background:#17191d;color:#f3f3f4;padding:1.875rem 1.5rem;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:0.75rem;text-decoration:none;font-size:0.9375rem;letter-spacing:.06em;font-weight:650}.brand img{object-fit:contain;width:4.0625rem;height:4.0625rem}.brand small{display:block;letter-spacing:.24em;color:var(--gold);font-size:0.75rem;margin-top:0.1875rem}.partner{display:flex;gap:0.875rem;border-top:0.0625rem solid #393b40;border-bottom:0.0625rem solid #393b40;padding:1.5rem 0;margin:1.625rem 0}.partner>b{font-size:2rem;letter-spacing:-0.125rem;line-height:1.4}.partner span{font-size:0.75rem;line-height:1.7;letter-spacing:.04em}.partner strong{color:var(--gold);font-size:0.6875rem}nav{display:grid;gap:0.3125rem}nav a{padding:0.75rem 0.875rem;text-decoration:none;color:#c6c8cd;font-size:0.875rem;border-left:0.125rem solid transparent;border-radius:0.1875rem;display:flex;justify-content:space-between}nav a:hover{background:#26292f;color:white}nav a[aria-current=page]{background:#343129;border-left-color:var(--gold);color:#f6dfa4}nav a span{font-size:0.75rem}.sidebar-bottom{margin-top:auto;padding-top:1.5rem;color:#c6c8cd}.sidebar-bottom>span{font-size:0.625rem;letter-spacing:.13em}.sidebar-bottom p{font-size:0.8125rem}.sidebar-bottom small{font-size:0.75rem;color:#9a9ea8}.workspace{margin-left:17.25rem}.topbar{min-height:4.5rem;border-bottom:0.0625rem solid var(--border);padding:1.125rem 5%;display:flex;align-items:center;gap:1.25rem;background:#fff}.topbar>span:first-child{font-size:0.75rem;font-weight:700;letter-spacing:.12em;margin-right:auto}.topbar>a{font-size:0.875rem}.draft{font-size:0.75rem;border:0.0625rem solid #cbb77e;color:#69511b;border-radius:1.875rem;padding:0.25rem 0.75rem}main{padding:2.5rem 5% 0;max-width:93.75rem;margin:auto}.eyebrow{font-size:0.75rem;font-weight:700;letter-spacing:.14em;color:#806321;margin:0 0 0.8125rem}h1{font:400 clamp(2rem,3.7vw,3.375rem)/1.1 Georgia,serif;letter-spacing:-0.09375rem;margin:0 0 1.125rem}h1 em{font-style:normal;color:#806321}.page-heading>p:last-child{color:var(--muted);margin:0 0 1.6875rem;max-width:50rem}h2,h3,p{overflow-wrap:anywhere}h2{font-size:1.4375rem;line-height:1.25;margin:0 0 0.75rem}h3{font-size:1.25rem;line-height:1.3;margin:0.9375rem 0 0.625rem}p{margin:0 0 1rem}.search-wrap{background:white;border:0.0625rem solid #c9cdd3;border-radius:0.375rem;display:flex;align-items:center;gap:0.875rem;padding:0.75rem 1.125rem;margin-bottom:1.875rem}.search-wrap>span{font-size:1.75rem;line-height:1}.search-wrap input{width:100%;border:0;min-width:0;background:transparent;color:var(--ink);padding:0.3125rem 0}.search-wrap kbd{font:0.625rem sans-serif;letter-spacing:.1em;color:#747982;background:#f3f4f6;padding:0.375rem;border-radius:0.1875rem}.welcome-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:1.375rem}.start-card{background:#22252b;color:white;padding:1.875rem 2rem;border-radius:0.5rem;border-top:0.1875rem solid var(--gold)}.start-card .eyebrow{color:var(--gold)}.start-card h2{font:2rem Georgia,serif}.start-card p:not(.eyebrow){color:#cbd0d9;max-width:26.875rem}.button{display:inline-flex;text-decoration:none;align-items:center;justify-content:center;border:0.0625rem solid #bec2c9;background:#fff;color:var(--ink);padding:0.6875rem 1.0625rem;border-radius:0.25rem;font-size:0.875rem;font-weight:650;min-height:2.75rem}.button:hover{filter:brightness(.96)}.gold{background:var(--gold);border-color:var(--gold);color:#202124}.caption{display:block;font-size:0.75rem;color:#bfc4ce;margin-top:1rem}.quick-card{background:white;border:0.0625rem solid var(--border);border-radius:0.5rem;padding:1.6875rem 1.75rem}.quick-card h2{font-size:1.375rem}.shortcuts a{display:flex;gap:0.9375rem;padding:0.8125rem 0;text-decoration:none;border-bottom:0.0625rem solid #e9eaed}.shortcuts a:last-child{border:0}.shortcuts b{color:#89703b;font:1.125rem Georgia,serif}.shortcuts span{font-weight:650;font-size:0.9375rem}.shortcuts small{display:block;color:var(--muted);font-size:0.8125rem;font-weight:400}.shortcuts a:hover span{text-decoration:underline}.section-label{display:flex;align-items:baseline;justify-content:space-between;gap:0.9375rem;margin:2rem 0 1.125rem}.section-label h2{font-size:1.375rem;margin:0}.section-label>span{font-size:0.8125rem;color:var(--muted)}.journeys{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.journeys>a{text-decoration:none;padding:1.375rem;background:#fff;border:0.0625rem solid var(--border);border-radius:0.375rem}.journeys>a:hover,.resource:hover{border-color:#ad9257}.tile-number{font-size:0.625rem;letter-spacing:.1em;font-weight:700;color:#7b622d}.journeys h3{font-size:1.1875rem}.journeys p{font-size:0.875rem;color:var(--muted);margin:0}.notice{padding:1.25rem 1.5rem;background:#fff;border:0.0625rem solid #dfd2b0;border-left:0.1875rem solid #aa8839;border-radius:0.3125rem;margin-bottom:1.375rem}.notice p{margin:0.4375rem 0 0;color:#545961;font-size:0.875rem}.notice a{text-underline-offset:0.1875rem}.filter-row{display:flex;gap:0.5rem;flex-wrap:wrap;margin-top:1.375rem}.filter-row button{border:0.0625rem solid #cbd0d6;border-radius:1.875rem;padding:0.5rem 0.9375rem;min-height:2.625rem;background:white;font-size:0.875rem}.filter-row button[aria-pressed=true]{background:#24272d;color:white;border-color:#24272d}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.125rem}.resource{background:white;border:0.0625rem solid var(--border);border-radius:0.4375rem;padding:1.4375rem;display:flex;flex-direction:column;min-width:0}.resource .eyebrow{font-size:0.625rem;margin:0;color:#746037}.resource h3{margin:0.6875rem 0;font-size:1.25rem}.resource p{color:#5f646e;font-size:0.875rem}.resource .meta{font-size:0.75rem;margin-top:auto;padding-top:0.625rem;color:#737982}.resource .actions{margin-top:0.9375rem}.actions{display:flex;flex-wrap:wrap;gap:0.5625rem}.actions .button{font-size:0.8125rem;padding:0.5625rem 0.75rem}.resource button{border:0;background:transparent;text-align:left;padding:0.5625rem 0;font-size:0.875rem;text-decoration:underline;color:#645028;min-height:2.75rem}.steps{list-style:none;padding:0;counter-reset:step;display:grid;gap:1rem}.steps li{counter-increment:step;background:white;border:0.0625rem solid var(--border);padding:1.5625rem 1.5625rem 1.5625rem 5.125rem;border-radius:0.4375rem;position:relative}.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:1.5rem;top:1.5625rem;font:1.625rem Georgia,serif;color:#8b6b27}.steps h2{font-size:1.3125rem}.steps p{color:#5f646e;max-width:51.25rem}.steps .tip{font-size:0.875rem;color:#6d5729;margin-top:0.75rem;margin-bottom:0}.empty{text-align:center;padding:2.8125rem;background:white;border:0.0625rem solid var(--border)}footer{border-top:0.0625rem solid var(--border);margin-top:2.625rem;padding:1.5rem 0 1.75rem;color:#6e727b;font-size:0.75rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:0.75rem}footer p{width:100%;margin:0;max-width:56.25rem}dialog{border:0;border-top:0.25rem solid var(--gold);border-radius:0.5625rem;padding:2.25rem;width:min(42.5rem,calc(100% - 1.875rem));max-height:88vh;box-shadow:0 1.25rem 5rem #0005}dialog::backdrop{background:#111827a8}dialog h2{font:1.875rem/1.2 Georgia,serif;padding-right:1.75rem}dialog h3{font-size:1rem;margin-top:1.5rem}dialog p,dialog li{font-size:0.9375rem;color:#565d68}dialog ul{padding-left:1.3125rem}dialog .close{position:absolute;right:1.125rem;top:0.875rem;border:0;background:#f0f1f3;width:2.5rem;height:2.5rem;font-size:1.625rem;border-radius:50%}dialog .actions{margin-top:1.5625rem}dialog .filename{font-size:0.75rem;overflow-wrap:anywhere}.sr-only{position:absolute;width:0.0625rem;height:0.0625rem;padding:0;margin:-0.0625rem;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1650px){main{padding-top:3.4375rem}}@media(max-width:1200px){.sidebar{width:15rem;padding:1.5625rem 1.125rem}.workspace{margin-left:15rem}.brand{font-size:0.75rem}.journeys{grid-template-columns:repeat(2,1fr)}.resource-grid{grid-template-columns:repeat(2,1fr)}.welcome-grid{grid-template-columns:1fr}.start-card{padding:1.5625rem}.shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.125rem}.shortcuts a{border:0}.quick-card{padding:1.5rem}}@media(max-width:760px){.sidebar{position:relative;width:100%;padding:1.125rem 1.25rem}.brand{font-size:0.9375rem}.brand img{width:3rem;height:3rem}.partner{position:absolute;right:1.25rem;top:1.25rem;margin:0;padding:0;border:0}.partner>b{font-size:1.5625rem}.partner span{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:0.25rem;margin-top:1.125rem;padding-bottom:0.1875rem}.sidebar nav a{white-space:nowrap;padding:0.625rem 0.75rem;font-size:0.8125rem}.sidebar nav a span{display:none}.sidebar-bottom{display:none}.workspace{margin:0}.topbar{padding:0.8125rem 1.25rem;min-height:3.4375rem;gap:0.75rem}.topbar>span:first-child{font-size:0.625rem}.topbar>a{display:none}main{padding:1.75rem 1.25rem 0}h1{letter-spacing:-.9px;font-size:2.25rem}.page-heading .eyebrow{font-size:0.625rem}.search-wrap{padding:0.625rem 0.75rem;gap:0.5rem}.search-wrap input{font-size:0.875rem}.search-wrap kbd{display:none}.welcome-grid{gap:1rem}.shortcuts{display:block}.shortcuts a{border-bottom:0.0625rem solid var(--border)}.journeys,.resource-grid{grid-template-columns:1fr}.journeys{gap:0.75rem}.journeys>a{padding:1.25rem}.section-label{align-items:flex-start}.section-label>span{font-size:0.75rem}.steps li{padding:1.375rem 1.25rem 1.375rem 4.0625rem}.steps li:before{left:1.25rem;font-size:1.375rem}dialog{padding:1.75rem 1.375rem}.resource{padding:1.375rem}footer{display:block}footer>span{display:block;margin-bottom:0.625rem}}@media(prefers-reduced-motion:no-preference){.resource,.journeys>a,.button{transition:border-color .15s,background .15s}}@media print{.sidebar,.topbar,.search-wrap,dialog{display:none}.workspace{margin:0}main{max-width:none}a{color:black}}

/* Readability revision: larger copy and fluid sizing on wide displays. */
html{font-size:clamp(16px,1vw,30px)}
body{font-size:1.125rem}
main{max-width:none;padding-left:3.5%;padding-right:3.5%}
.sidebar{width:19rem;padding:1.8rem 1.25rem;overflow-y:auto}
.workspace{margin-left:19rem}
.brand{font-size:1rem}.brand img{width:4.75rem;height:4.75rem}
.brand small,.partner span,.partner strong{font-size:.875rem}
nav a{font-size:1.125rem;padding:.8rem .7rem}
nav a span,.sidebar-bottom>span,.sidebar-bottom small{font-size:.875rem}
.sidebar-bottom p{font-size:1rem}
h1{font-size:3.5rem}
.eyebrow,.page-heading .eyebrow,.resource .eyebrow,.tile-number{font-size:.875rem}
.topbar>span:first-child,.draft,.topbar>a{font-size:.9375rem}
.page-heading>p:last-child{max-width:60rem}
.start-card p:not(.eyebrow){max-width:40rem}
.button,.actions .button,.resource button,.filter-row button{font-size:1.0625rem;min-height:3rem}
.caption,.shortcuts small,.resource .meta,.section-label>span,footer,dialog .filename{font-size:.9375rem}
.shortcuts span{font-size:1.125rem}.shortcuts b{font-size:1.375rem}
.journeys h3,.resource h3,.steps h2,.quick-card h2,.section-label h2{font-size:1.5rem}
.journeys p,.resource p,.notice p,.steps .tip,dialog p,dialog li{font-size:1.0625rem}
.search-wrap input{font-size:1.125rem;min-height:2.25rem}
.search-wrap kbd{font-size:.8125rem}
dialog{width:min(48rem,calc(100% - 2rem))}
dialog h3{font-size:1.125rem}
@media(max-width:1200px){.sidebar{width:17rem}.workspace{margin-left:17rem}.shortcuts{display:block}.shortcuts a{border-bottom:1px solid var(--border)}}
@media(max-width:760px){html{font-size:16px}.sidebar{width:100%;overflow:visible}.workspace{margin:0}.sidebar nav a{font-size:1rem}.brand img{width:3.5rem;height:3.5rem}main{padding:1.75rem 1.25rem 0}h1{font-size:2.4rem}.partner{top:1.6rem}.partner>b{font-size:1.75rem}.search-wrap input{font-size:1rem}.topbar>span:first-child{font-size:.8125rem}.draft{font-size:.8125rem}}
@media print{.workspace{margin:0}html{font-size:16px}}

/* Shared luxury finishes. Static sheen keeps the reading surface calm. */
:root{
 --gold:#d4af37;--paper:#f3f1ef;--border:#d7d1c5;
 --metal:linear-gradient(112deg,#a87b1d 0%,#d9b64d 18%,#f9e7a2 35%,#c99a29 49%,#edd17b 65%,#fff0b2 78%,#bd8e22 100%);
 --pearl:radial-gradient(ellipse at 8% 12%,#c9c2f29e 0%,transparent 48%),radial-gradient(ellipse at 79% 22%,#c3dafaab 0%,transparent 52%),radial-gradient(ellipse at 88% 78%,#c7e9dd8c 0%,transparent 47%),radial-gradient(ellipse at 35% 64%,#ffffffc9 0%,transparent 43%),linear-gradient(128deg,#edf0ff 0%,#e3e2f6 22%,#f9fbff 38%,#dcebf7 55%,#edf8f2 72%,#f8f7ff 88%,#dce5f7 100%);
 --satin:linear-gradient(110deg,rgba(3,22,53,.62),rgba(2,15,39,.72)),url('assets/black-silk.webp');
}
body{background:#edf0fa}
.workspace{min-height:100vh;background:var(--pearl);background-attachment:fixed}
.sidebar{background-color:#092a62;background-blend-mode:normal,screen;background-image:linear-gradient(90deg,#031a3ea6,#021329b8),url('assets/black-silk.webp');background-size:cover;background-position:42% center;border-right:1px solid #ae873e;box-shadow:inset -1px 0 0 #f0d38940,8px 0 28px #00000012}
.topbar{background:linear-gradient(115deg,#f4f1ffeF,#f3f8ff 46%,#f0faf5 76%,#fdfcff);border-bottom:1px solid #b99a566e;box-shadow:0 2px 14px #53492509}
.start-card{background-color:#092a62;background-blend-mode:normal,screen;background-image:var(--satin);background-size:cover;background-position:center;border:1px solid #b38b35;border-top:3px solid #e0bd5c;box-shadow:inset 0 1px 0 #fff0bd70,0 12px 30px #16131020}
.start-card p:not(.eyebrow){color:#eeedf0}.caption{color:#d3d2d6}
.start-card h2{color:#fffdf4;text-shadow:0 2px 4px #0008}
.gold{background-color:#d4af37;background-image:var(--metal);color:#15120a;border:1px solid #a67a1c;box-shadow:inset 0 1px 0 #fff7d9, inset 0 -1px 0 #89631666,0 4px 12px #0002;text-shadow:0 1px 0 #fff5ca50}
.gold:hover{filter:brightness(1.06);box-shadow:inset 0 1px 0 #fffbea,0 6px 18px #a97c2433}
h1 em{color:#88621a;background:linear-gradient(115deg,#68460b 0%,#aa7920 23%,#795414 41%,#b48629 59%,#735018 80%,#99701b);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 1px 1px #b58f2210}
.brand small,.partner strong,.start-card .eyebrow{color:#f1d47b;background:var(--metal);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.partner{border-color:#d8b86655}
nav a{color:#eeedf0;text-shadow:0 1px 3px #000}
nav a:hover{background:linear-gradient(110deg,#dfbd5733,#fff8df0e);color:#fff7de}
nav a[aria-current=page]{background:linear-gradient(110deg,#ad812d59,#efdc9230 48%,#8e6a2626);border-left-color:#f1d17c;color:#fff0b9;box-shadow:inset 0 1px 0 #e4c77b40,inset 0 -1px 0 #e4c77b25}
.sidebar-bottom,.sidebar-bottom small{color:#dbd9d4}
.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog{background-color:#fbfcff;background-image:linear-gradient(125deg,#f2efffed,#ffffff 32%,#edf5fcf0 64%,#eff9f3f5 85%,#faf7ff);border-color:#c9b88f99;box-shadow:inset 0 1px 0 #fff,0 6px 22px #4b43500b}
.search-wrap{background:linear-gradient(105deg,#f9f5ff,#f6faff 55%,#f1faf5);border-color:#b5a077;box-shadow:inset 0 1px 0 white,0 4px 18px #7363440b}
.journeys>a:hover,.resource:hover{border-color:#b28a32;box-shadow:inset 0 1px 0 #fff,0 7px 24px #a27a201a}
.eyebrow,.tile-number,.resource .eyebrow{color:#755214}
.shortcuts b,.steps li:before{color:#88631c;text-shadow:0 1px 0 white}
.shortcuts a{border-color:#d5c9af80}
.draft{background:linear-gradient(110deg,#fffdf1,#f5e6b4 48%,#fff8e4);color:#66470f;border-color:#b69040;box-shadow:inset 0 1px 0 white}
.filter-row button[aria-pressed=true]{background-color:#092a62;background-blend-mode:normal,screen;background-image:var(--satin);background-size:cover;color:#f8dfa0;border-color:#b68d37}
dialog{border-top:4px solid #d4af37;box-shadow:0 24px 90px #0007,inset 0 1px 0 #fff}
dialog::backdrop{background:#07080bc4}
footer{border-color:#b99a5659;color:#555964}
@media(max-width:760px){.workspace{background-attachment:scroll}.sidebar{background-position:center 35%}}
@media(forced-colors:active){h1 em,.brand small,.partner strong,.start-card .eyebrow{-webkit-text-fill-color:currentColor;background:none}}
@media print{.workspace,.start-card,.resource,.quick-card,.steps li{background:white;color:black;box-shadow:none}h1 em{-webkit-text-fill-color:currentColor}}

/* Calendar-first training page; official embed supplies current event details. */
.calendar-panel{border:1px solid #c9b88f99;border-radius:.5rem;overflow:hidden;background:#fff;box-shadow:0 8px 28px #4b435012}
.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;background:var(--pearl);border-bottom:1px solid var(--border)}
.calendar-heading h2{margin:0 0 .35rem}.calendar-heading p{margin:0;color:var(--muted);font-size:1rem}.calendar-heading .button{flex-shrink:0}
#training-calendar{display:block;width:100%;height:clamp(720px,43rem,1200px);border:0;background:#fff}
.calendar-note{padding:.75rem 1.5rem;margin:0;font-size:.9rem;color:var(--muted);border-top:1px solid var(--border)}
.training-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.25rem 0}
.training-shortcuts a{padding:1.1rem 1.4rem;border:1px solid #c9b88f99;border-radius:.4rem;background:var(--pearl);text-decoration:none}.training-shortcuts a:hover strong{text-decoration:underline}
.training-shortcuts strong,.training-shortcuts span{display:block}.training-shortcuts span{font-size:.95rem;color:var(--muted);margin-top:.25rem}
.learning-drawer{border-top:1px solid #b99a5659;padding:1rem 0}.learning-drawer summary{cursor:pointer;font-weight:650;min-height:2.75rem}.learning-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #d5c9af80;padding:.8rem 0}.learning-link{text-underline-offset:.2em}
@media(max-width:760px){.calendar-heading{align-items:flex-start;flex-direction:column;padding:1rem}#training-calendar{height:740px}.calendar-note{padding:1rem}.training-shortcuts{grid-template-columns:1fr}.learning-row{gap:.6rem}.learning-row .button{font-size:.95rem}}
/* Enlarge the external calendar's fixed-size labels on desktop displays. */
@media(min-width:1201px){#training-calendar{zoom:1.65;width:calc(100% / 1.65);height:650px}}

/* Text depth: crisp letters with soft separation from silk highlights. */
.sidebar .brand,.sidebar .partner,.sidebar-bottom{ text-shadow:0 1px 2px #020b26,0 3px 8px #020b26b3 }
.sidebar nav a{font-weight:550;color:#fff;background-color:#03133524;text-shadow:0 1px 2px #020b26,0 2px 6px #020b26cc}
.sidebar nav a:hover{background-color:#03133566}
.sidebar nav a[aria-current=page]{font-weight:700;color:#fff3c5;text-shadow:0 1px 2px #020b26,0 2px 7px #020b26}
.brand small,.partner strong,.start-card .eyebrow{-webkit-text-fill-color:currentColor;background:none;color:#ffe39a;text-shadow:0 1px 2px #020b26,0 2px 6px #020b26cc}
.start-card{box-shadow:inset 0 0 0 100vmax #020d292e,inset 0 1px 0 #fff0bd70,0 12px 30px #16131020}
.start-card h2{font-weight:500;text-shadow:0 2px 2px #020b26,0 4px 12px #020b26cc}
.start-card p:not(.eyebrow),.start-card .caption{color:#fff;text-shadow:0 1px 2px #020b26,0 2px 6px #020b26}
.page-heading h1{color:#171c2c;text-shadow:0 2px 0 #ffffffb3,0 5px 14px #26345a18}
.page-heading h1 em{text-shadow:none;filter:drop-shadow(0 1px 0 #ffffff80)}
.quick-card h2,.journeys h3,.resource h3,.calendar-heading h2,.training-shortcuts strong,.section-label h2{color:#171c2c;text-shadow:0 1px 0 #fff,0 2px 5px #26345a14}
.page-heading>p:last-child,.calendar-heading p,.training-shortcuts span,.journeys p,.resource p{color:#454c5c}
@media print{.sidebar *,.start-card *,h1,h2,h3{text-shadow:none!important}.start-card{box-shadow:none}}

/* Document actions distinguish actual files from pending attachments. */
.resource .actions:has(.download-pending),.resource .actions:has(a[download]){align-items:center;gap:.65rem}
.download-pending{font-size:.9rem;color:#5d6472;padding:.45rem .65rem;background:#e9edf3;border-radius:.25rem;border:1px solid #ccd2dc}
.download-size{font-weight:400;font-size:.8em;margin-left:.55rem;white-space:nowrap}
.resource button.document-details{flex-basis:100%;color:#57431a;font-size:1rem;min-height:2.6rem}

/* Marketing gallery: official resource artwork with our shared pearl and satin shell. */
.resource-body{display:flex;flex-direction:column;flex:1;min-width:0}
.marketing-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:center;overflow:hidden;background-color:#092a62;background-image:var(--satin);background-blend-mode:normal,screen;background-size:cover;border:1px solid #c5a456;border-radius:.6rem;padding:2rem 2.3rem;color:#fff;box-shadow:0 12px 30px #10204422}
.marketing-feature .eyebrow{color:#ffe39a}.marketing-feature h2{font:2.4rem/1.15 Georgia,serif;text-shadow:0 2px 6px #0008}.marketing-feature p:not(.eyebrow){max-width:36rem;color:#eef2fc}.marketing-feature-copy{position:relative;z-index:1}
.marketing-brand-art{padding:1rem 2rem;perspective:800px}.brand-sheet{position:relative;transform:rotate(-5deg);padding:1.8rem 2rem;border:1px solid #d8bd7680;border-radius:.35rem;background:linear-gradient(135deg,#193869,#061733);box-shadow:1rem 1rem 0 #ffffff12,2rem 2rem 0 #d3b26312,0 18px 30px #0005}.brand-sheet img{display:block;width:100%;max-height:7rem;object-fit:contain}.brand-sheet span{display:block;text-align:center;letter-spacing:.22em;font-size:.7rem;color:#e9d394;margin-top:1.2rem}.brand-swatches{display:flex;gap:.65rem;justify-content:center;margin-top:1.2rem}.brand-swatches i{width:2.5rem;height:.65rem;background:#fff;border-radius:3px}.brand-swatches i:nth-child(2){background:#d8b960}.brand-swatches i:nth-child(3){background:#5f86b3}
.resource.marketing-resource{padding:0;overflow:hidden}.marketing-resource .resource-body{padding:1.4rem}.marketing-art{aspect-ratio:16/9;overflow:hidden;background:#102754;border-bottom:1px solid #c9b88f99}.marketing-art img{display:block;width:100%;height:100%;object-fit:cover}.marketing-illustration{display:grid;place-items:center;background:radial-gradient(ellipse at 70% 15%,#345987,#0c2146 75%)}.marketing-illustration svg{width:90%;height:90%;filter:drop-shadow(0 10px 12px #0003)}
@media(prefers-reduced-motion:no-preference){.marketing-art img{transition:transform .25s ease}.marketing-resource:hover .marketing-art img{transform:scale(1.035)}}
@media(max-width:760px){.marketing-feature{grid-template-columns:1fr;padding:1.5rem;gap:.5rem}.marketing-feature h2{font-size:2rem}.marketing-brand-art{padding:1rem 1.3rem}.brand-sheet{padding:1.2rem}.brand-sheet img{max-height:5rem}.marketing-resource .resource-body{padding:1.25rem}}

/* Texas flag satin, confined to the sidebar; readable navy surfaces over all colors. */
.sidebar{background-color:#082547;background-image:linear-gradient(#06152b12,#06152b12),url('assets/texas-flag-satin.png');background-blend-mode:normal;background-size:cover;background-position:center top}
.sidebar .brand{background:#03182fc9;border:1px solid #d8bd7655;border-radius:.35rem;padding:.5rem}
.sidebar .partner{background:#03182fbd;border-radius:.3rem;padding:1rem .5rem;margin:1.3rem 0}
.sidebar nav{background:#03182fd9;padding:.4rem;border:1px solid #d8bd7655;border-radius:.4rem;box-shadow:0 6px 20px #00142a30}
.sidebar nav a{background-color:transparent;color:#fff}
.sidebar nav a:hover{background:#ffffff1f}
.sidebar nav a[aria-current=page]{background:linear-gradient(110deg,#ad812d70,#efdc923d);color:#fff1bc}
.sidebar-bottom{background:#03182fdb;border:1px solid #d8bd7655;border-radius:.35rem;padding:.75rem;margin-top:auto;color:#fff}
.sidebar-bottom p{margin-bottom:0}.sidebar-bottom small{color:#eef2f9}
@media(max-width:760px){.sidebar{background-position:center 28%}.sidebar .brand{width:fit-content;padding:.35rem}.sidebar .partner{margin:0;background:transparent;padding:0;border:0}.sidebar nav{padding:.35rem;box-shadow:none}.sidebar-bottom{display:none}}

/* Navy header coordinated with the Texas flag sidebar. */
.topbar{background:#082547;color:#fff;border-bottom:1px solid #c5a655;box-shadow:0 2px 14px #03182f26}
.topbar>span:first-child,.topbar>a{color:#fff;text-shadow:0 1px 2px #0008}
.topbar .draft{background:#102d4b;color:#ffe5a0;border-color:#d9b967;text-shadow:none}
.topbar a:focus-visible{outline-color:#ffe5a0}

/* Reuse the smooth blue satin finish across the header. */
.topbar{background-color:#082547;background-image:var(--satin);background-blend-mode:normal,screen;background-size:cover;background-position:center 42%}

/* Same flag fabric and overlay as the sidebar; show only its upper navy area. */
.topbar{background-color:#082547;background-image:linear-gradient(#06152b12,#06152b12),url('assets/texas-flag-satin.png');background-blend-mode:normal;background-size:100% auto;background-position:center top}

/* One navy fabric source across the site's dark accents. The enlarged
   background shows only the upper blue fabric, excluding the flag star. */
:root{--satin:linear-gradient(#06152b12,#06152b12),url('assets/texas-flag-satin.png')}
.start-card,.marketing-feature,.filter-row button[aria-pressed=true],.brand-sheet{background-color:#082547;background-image:var(--satin);background-blend-mode:normal;background-size:100% 1400%;background-position:center top}

/* Decorative navigation symbols keep the visible text as the accessible name. */
.sidebar nav a{justify-content:flex-start;align-items:center;gap:.65rem}
.sidebar nav .nav-icon{display:block;width:1.2rem;height:1.2rem;flex:0 0 1.2rem;color:#e6c97d;filter:drop-shadow(0 1px 1px #00142a)}
.sidebar nav a>span{margin-left:auto}
.sidebar nav a[aria-current=page] .nav-icon{color:#fff0b9}

/* Shared visual cards: lightweight local illustrations, readable pearl copy. */
.hub-art{display:grid;place-items:center;overflow:hidden;background-color:#082547;background-image:var(--satin);background-size:100% 1400%;background-position:center top;min-width:0}
.hub-art svg{display:block;width:100%;max-width:26rem;height:auto;max-height:14rem;filter:drop-shadow(0 6px 10px #0002)}
.hub-art-compact{height:8rem;border-bottom:1px solid #c9b88f99}.hub-art-compact svg{height:100%;width:auto;max-width:100%}
.hub-feature{margin-bottom:1.25rem}.hub-feature>.hub-art{background:none}.hub-feature>.hub-art svg{max-height:13rem}
.hub-resource .resource-body{padding:1.4rem}
.journeys>a{padding:0;overflow:hidden}.journeys>a>.tile-number{display:block;margin:1.2rem 1.2rem 0}.journeys>a>h3{margin:.6rem 1.2rem}.journeys>a>p{margin:0 1.2rem 1.3rem}
.steps li{padding-right:5.5rem}.step-symbol{position:absolute;right:1.4rem;top:1.4rem;width:2.8rem;height:2.8rem;border:1px solid #b99a5680;border-radius:.6rem;background:#082547;display:grid;place-items:center;color:#e8cc83}.step-symbol svg{width:1.6rem;height:1.6rem}
.welcome-symbol{width:3.5rem;height:3.5rem;display:grid;place-items:center;border:1px solid #e6c97d70;border-radius:.65rem;background:#03182fa6;color:#ffe39a;margin-bottom:1.2rem}.welcome-symbol svg{width:2rem;height:2rem}
.calendar-heading{background-color:#082547;background-image:var(--satin);background-size:100% 1400%;background-position:center top;color:white}.calendar-heading h2,.calendar-heading p{color:white;text-shadow:0 1px 3px #0007}.calendar-heading>div:not(.calendar-symbol){flex:1}.calendar-symbol svg{width:2.8rem;height:2.8rem;color:#e8cc83}
.training-shortcuts a{padding:0;overflow:hidden}.training-shortcuts strong{margin:1.1rem 1.4rem .3rem}.training-shortcuts span{margin:0 1.4rem 1.2rem}
@media(max-width:760px){.hub-art-compact{height:7rem}.hub-feature>.hub-art svg{max-height:9rem}.steps li{padding-right:1.25rem}.step-symbol{position:static;margin-bottom:.8rem}.calendar-symbol{display:none}.hub-resource .resource-body{padding:1.25rem}}
@media print{.hub-art,.step-symbol,.welcome-symbol,.calendar-symbol{display:none}.calendar-heading{background:white;color:black}.calendar-heading h2,.calendar-heading p{color:black;text-shadow:none}}

/* Local calendar uses curated, minimal event data rather than a personal-calendar embed. */
.local-calendar{margin-top:1.75rem}.local-toolbar{display:flex;gap:1rem;align-items:center;padding:1.2rem 1.5rem}.local-toolbar h3{margin:0;min-width:12rem;text-align:center}.local-toolbar>span{margin-left:auto;font-size:.9rem;color:#535b68}.local-toolbar button:disabled{opacity:.35;cursor:default}
.local-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 1.5rem 1rem;gap:.35rem}.local-weekday{text-align:center;font-size:.85rem;font-weight:650;color:#525b69;padding:.5rem}.local-day{min-height:5rem;border:1px solid #d8dfE7;border-radius:.3rem;padding:.55rem;background:#f7f9fc;text-align:left;color:#28344a;font:inherit}.local-day.has-events{background:#082547;color:#fff;border-color:#be9d50}.local-day.has-events:hover,.local-day[aria-pressed=true]{outline:2px solid #bd9540;outline-offset:1px}.local-day small{display:block;font-size:.7rem;line-height:1.25;margin-top:.3rem;color:#ffe3a0}.local-day.empty{background:transparent;border:0;min-height:0;padding:0}.local-agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem 0}.local-agenda-heading h3{margin:0}.local-agenda{padding:1rem 1.5rem;display:grid;gap:.8rem}.local-event{display:grid;grid-template-columns:4.5rem 1fr;gap:1rem;padding:1.2rem;background:var(--pearl);border:1px solid #c9b88f99;border-radius:.4rem}.local-event-date{background:#082547;color:#ffe39a;text-align:center;border-radius:.35rem;padding:.5rem;height:fit-content}.local-event-date b{display:block;font-size:1.8rem;line-height:1.2}.local-event-date span{font-size:.8rem}.local-event h4{font-size:1.15rem;margin:0 0 .35rem}.local-event p{font-size:.95rem;margin:0 0 .45rem;color:#454c5c}.local-event .event-time{font-weight:650;color:#173650}.local-event .event-note{font-size:.85rem}.local-event a{font-size:.9rem}
@media(max-width:760px){.local-toolbar{padding:1rem;gap:.5rem;flex-wrap:wrap}.local-toolbar h3{min-width:0;flex:1;font-size:1.15rem}.local-toolbar>span{width:100%;text-align:center;margin:0}.local-month-grid{padding:0 .5rem 1rem;gap:.2rem}.local-day{min-height:3rem;padding:.3rem;text-align:center}.local-day small{font-size:0}.local-day small:after{content:'•';font-size:1rem}.local-weekday{font-size:.7rem;padding:.3rem 0}.local-agenda{padding:1rem}.local-agenda-heading{padding:1rem}.local-event{grid-template-columns:3.2rem 1fr;padding:.8rem;gap:.7rem}}

/* ROA schedule shares local calendar components. */
.roa-live-source{margin-top:1.5rem;border-top:1px solid #b89c5e66;padding-top:1rem}.roa-live-source summary{cursor:pointer;color:var(--ink);font-weight:700;padding:.7rem 0}.roa-live-source[open] summary{margin-bottom:1rem}#roa-month-grid .local-day small{font-size:.65rem;line-height:1.4}#roa-agenda{max-height:34rem;overflow:auto;padding-right:.4rem}

/* Shared metallic gold cards; deep tones maintain contrast with white copy. */
:root{--card-gold:linear-gradient(118deg,#65450f 0%,#80601f 27%,#715015 46%,#886522 68%,#674810 100%);--action-navy:#082547}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel){background:var(--card-gold);color:#fff;border-color:#c9a857;box-shadow:inset 0 1px 0 #ffe8a766,0 6px 20px #45300f22}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) :is(h2,h3,h4,p,small,strong,b,span,li,a,.eyebrow,.meta,.tip,.caption,.tile-number,.local-weekday){color:#fff;-webkit-text-fill-color:currentColor;text-shadow:0 1px 2px #34210066}
.steps li:before{color:white;text-shadow:0 1px 2px #34210066}
.shortcuts a{border-color:#ffffff40}.shortcuts small{color:#fff}
.button,.button.gold,.resource button,.resource button.document-details,.filter-row button,dialog .close{background:var(--action-navy);background-image:none;color:white;border:1px solid transparent;text-decoration:none;text-shadow:none;box-shadow:0 2px 5px #03182f25}
.resource button,.resource button.document-details{padding:.5625rem .8rem;border-radius:.25rem;text-align:center}
.button:hover,.resource button:hover,.filter-row button:hover{background:#143d66;filter:none}
.filter-row button[aria-pressed=true]{background:#62430d;color:#fff;border-color:#fff}
.button:focus-visible,.resource button:focus-visible,.steps a:focus-visible{outline:3px solid #fff;box-shadow:0 0 0 5px #082547}
.local-day:not(.has-events):not(.empty){background:#ffffff12;color:white;border-color:#ffffff55}
.local-day.has-events small{color:white}
.local-day.empty{background:none;box-shadow:none}
.roa-live-source summary{color:white}.roa-live-source{padding:1rem 1.5rem;border-color:#ffffff40}
.local-event a{display:inline-flex;background:var(--action-navy);padding:.6rem .85rem;border-radius:.25rem;text-decoration:none;margin-top:.35rem}
@media print{ :is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel){background:white!important;color:black!important;box-shadow:none} :is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) *{color:black!important;text-shadow:none!important} }

/* Reflective brushed gold: fine grain, broad light bands and beveled edges. */
:root{--card-gold:repeating-linear-gradient(0deg,#ffffff0a 0px,#ffffff0a 1px,#7c510005 1px,#7c510005 3px),linear-gradient(112deg,#b78c32 0%,#dbb85c 12%,#f4dfa0 26%,#dfbb61 42%,#cba044 57%,#f6e3aa 76%,#d8b052 90%,#bd9135 100%)}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel){background:var(--card-gold);color:#122b44;border:1px solid #b28a31;box-shadow:inset 0 2px 0 #fff3c9,inset 2px 0 0 #fff0b780,inset 0 -3px 0 #80571666,inset -1px 0 0 #93652166,0 4px 0 #8b652b38,0 10px 20px #54391320}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) :is(h2,h3,h4,p,small,strong,b,span,li,a,.eyebrow,.meta,.tip,.caption,.tile-number,.local-weekday){color:#182f43;text-shadow:none;-webkit-text-fill-color:currentColor}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) :is(h2,h3,h4),.notice>strong,.training-shortcuts strong{color:#082547;font-weight:750;text-shadow:0 1px 0 #fff0bd,0 2px 0 #b38b3d55;letter-spacing:-.015em}
.steps li:before{color:#082547;text-shadow:0 1px 0 #fff0bd}.shortcuts a{border-color:#79562140}
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) :is(.button,.button.gold,.local-event-date,.local-event-date b,.local-event-date span,.local-day.has-events small),.resource button,.resource button.document-details,.local-event a{color:white;text-shadow:none}
.calendar-heading h2,.calendar-heading p,.brand-sheet span{color:white!important;text-shadow:none!important}
.local-day:not(.has-events):not(.empty){color:#082547;background:#fff6d740;border-color:#99732970}.local-day.has-events{color:white}
.roa-live-source summary{color:#082547}.roa-live-source{border-color:#79562140}
.resource:hover,.journeys>a:hover{border-color:#997029;box-shadow:inset 0 2px 0 #fff4cd,inset 0 -3px 0 #80571666,0 5px 0 #8b652b38,0 12px 24px #54391328}
/* Heading relief overrides the general card-copy rule. */
:is(.start-card,.quick-card,.journeys>a,.resource,.steps li,.notice,.empty,dialog,.marketing-feature,.training-shortcuts>a,.local-event,.calendar-panel) :is(h2,h3,h4){color:#082547!important;text-shadow:0 1px 0 #fff0bd,0 2px 0 #b38b3d55!important}
.calendar-panel .calendar-heading h2{color:white!important;text-shadow:none!important}

/* Calm calendar surfaces; gold emphasizes events rather than filling the page. */
.calendar-panel.calendar-panel{background:#fff;color:#182f43;border-color:#d9dfe6;box-shadow:0 6px 20px #08254712}
.calendar-panel .local-day:not(.has-events):not(.empty){background:#fafbfd;color:#082547;border-color:#dce2e9}
.calendar-panel .local-event{background:linear-gradient(110deg,#fff,#f8fafc);border:1px solid #dce2e9;border-left:4px solid #c6a04a;box-shadow:0 3px 10px #0825470b}
.calendar-panel :is(.local-toolbar,.local-agenda-heading,.local-event) :is(h3,h4){text-shadow:none!important}
.calendar-panel .local-event a{color:#fff!important;text-shadow:none}
.calendar-panel .roa-live-source{border-color:#dce2e9}

/* Compact topic icons supplement marketing imagery and learning rows. */
.resource-title-icon{width:1.6rem;height:1.6rem;flex-shrink:0;vertical-align:middle;margin-right:.55rem;color:#082547}.learning-row .resource-title-icon{margin-right:0}.learning-row .learning-link{flex:1}.step-symbol .resource-title-icon{margin:0;color:#e9ce85}

/* Tool setup videos use the existing accessible resource dialog. */
dialog.training-dialog{width:min(64rem,calc(100% - 2rem));max-height:90dvh;overflow-y:auto}
.tool-training{margin-bottom:1.75rem}
.tool-training h3{margin:.4rem 0 1rem;padding-right:1.5rem}
.training-player{position:relative;aspect-ratio:16/9;background:#06182f;border:1px solid #082547;border-radius:.6rem;overflow:hidden;box-shadow:0 5px 16px #03182f33}
.training-player iframe{display:block;width:100%;height:100%;border:0}
dialog .training-source,dialog .training-fallback{font-size:.95rem;line-height:1.5}
dialog .training-source-link{font-weight:700;text-decoration:underline;text-underline-offset:3px}
dialog.training-dialog .close{position:sticky;top:0;z-index:2}
@media(max-width:600px){dialog.training-dialog{padding:1.25rem;width:calc(100% - 1rem);max-height:94dvh}.training-player{border-radius:.3rem}}

/* Supporting guidance follows the tool cards. */
#category-intro.tools-guidance-below{margin-top:2rem}

/* Usability pass: clear hierarchy, personal progress, and compact calendars. */
.calendar-jumps,.support-choices{display:flex;flex-wrap:wrap;gap:.75rem;margin:0 0 1.5rem}
.calendar-panel{scroll-margin-top:1rem}
.calendar-panel .local-day{min-height:4.5rem;height:auto;overflow:hidden;padding:.5rem}
.calendar-panel .local-day small{font-size:.75rem;line-height:1.25;white-space:normal}
.calendar-panel .local-day.is-today{outline:2px solid #b38a2d;outline-offset:-3px}
.calendar-panel .local-day[aria-pressed=true]{box-shadow:inset 0 0 0 3px #f0cc70}
.local-toolbar{flex-wrap:wrap}
.more-events{margin:1rem 1.25rem}
.personal-progress{background:#fff;border:1px solid #c9b88f;border-radius:.5rem;padding:1.2rem;margin:1rem 0;color:#082547}
.personal-progress progress{display:block;width:100%;height:1rem;margin:.75rem 0;accent-color:#a47a1e}
.personal-progress p{margin:0;font-size:.95rem}
.step-check{display:flex;gap:.65rem;align-items:center;font-weight:650;margin-bottom:.8rem;color:#082547}
.step-check input{width:1.3rem;height:1.3rem;accent-color:#082547;flex-shrink:0}
.resource-status{display:flex;flex-wrap:wrap;gap:.4rem}
.resource-status span{font-size:.78rem;background:#ffffffc9;padding:.2rem .5rem;border-radius:.25rem;color:#082547!important;font-weight:650}
.resource-status:empty{display:none}
.document-archive{grid-column:1/-1;background:#fafbfd;border:1px solid #d4bf87;border-radius:.5rem;padding:1.25rem;color:#082547}
.document-archive summary{cursor:pointer;font-weight:700;font-size:1.15rem}
.document-archive>.resource-grid{margin-top:1rem}
.hub-feature{min-height:0;padding:1.25rem 1.5rem;gap:1rem}
.hub-feature .hub-art{max-height:8rem}
.hub-feature h2{font-size:1.6rem}
.hub-feature p{margin:.4rem 0 .7rem}
@media(max-width:950px){.calendar-panel .local-month-grid{gap:.25rem}.calendar-panel .local-day{min-height:3.5rem;padding:.25rem}.calendar-panel .local-day small{font-size:.65rem}.local-event{gap:.6rem}.calendar-heading{flex-wrap:wrap}}
@media(max-width:600px){.calendar-panel .local-month-grid{padding:.65rem;gap:.2rem}.calendar-panel .local-day{font-size:.85rem}.calendar-panel .local-weekday{font-size:.7rem}.calendar-panel .local-day small{font-size:.6rem}.support-choices .button{width:100%;text-align:left}.hub-feature{padding:1rem}.step-check{padding-right:2rem}.local-event .actions{flex-direction:column;align-items:flex-start}}

/* Everyday shortcuts: semantic text with decorative task icons. */
.shortcuts .shortcut-icon{width:1.6rem;height:1.6rem;flex:0 0 1.6rem;color:#082547;margin-top:.15rem;filter:drop-shadow(0 1px 0 #fff0bd)}

/* Quiet contextual help appears only after opening a new-tab resource. */
.popup-help{font-size:.85rem!important;line-height:1.45;margin:.75rem 0 0;color:#37465a!important;text-shadow:none!important;font-weight:400;grid-column:1/-1}
.resource>.popup-help{margin:0 1.25rem 1rem}.calendar-panel>.popup-help{margin:.75rem 1.25rem 1rem}

/* Selected dimensional Texas ROA identity, stored with the site. */
.sidebar .partner.partner-logo{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;background:#061b34;border:1px solid #c9a85766}
.partner-logo img{display:block;width:100%;height:auto;object-fit:contain}
.sidebar .partner-logo .partner-caption{display:block;font-size:.65rem;letter-spacing:.1em;text-align:center;color:#ffe39a;padding:.35rem .3rem .45rem;line-height:1.4}
@media(max-width:760px){.sidebar .partner.partner-logo{position:absolute;right:1.25rem;top:1.25rem;width:7rem;margin:0}.sidebar .partner-logo .partner-caption{display:none}.sidebar .brand{max-width:calc(100% - 8rem)}}

/* Logo stitched into the flag; open space lets the flag star remain visible. */
.sidebar .embroidered-brand{display:flex;align-items:flex-start;justify-content:center;flex:0 0 15rem;min-height:15rem;text-decoration:none;background:none;border:0;box-shadow:none;padding:0;margin:0}
.embroidered-brand img{display:block;width:100%;max-height:5.5rem;height:auto;object-fit:contain;opacity:.92;filter:drop-shadow(0 1px 1px #00152a55)}
@media(max-width:760px){.sidebar .embroidered-brand{min-height:6.5rem;flex-basis:auto;width:13rem;max-width:80%;margin:0 auto}.embroidered-brand img{max-height:6rem}.sidebar nav{margin-top:.5rem}}

/* Phone usability: every section is visible and controls remain easy to tap. */
@media(max-width:760px){
 .sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:.25rem}
 .sidebar nav a{white-space:normal;min-width:0;min-height:44px;padding:.55rem .5rem;line-height:1.3;font-size:.875rem}
 .sidebar{padding:1rem}
 .sidebar .embroidered-brand{min-height:5rem}
 .search-wrap input{font-size:16px}
 .topbar{flex-wrap:wrap;gap:.5rem}
 .filter-row button,dialog .close{min-height:44px;min-width:44px}
 .calendar-panel,.local-event>div{min-width:0}
 .local-agenda-heading{flex-wrap:wrap}
 .calendar-panel .local-day{min-width:0;min-height:44px}
 .calendar-panel .local-day small{font-size:.6rem;line-height:1.2}
 .calendar-panel .local-day small:after{content:none}
 dialog{max-height:90dvh;overflow-y:auto}
}
@media(max-width:380px){main{padding:1.25rem .75rem 0}.sidebar{padding:.75rem}.sidebar nav a{font-size:.8rem}.sidebar nav .nav-icon{width:1rem;flex-basis:1rem}.calendar-panel .local-month-grid{padding:.4rem;gap:.15rem}.local-event{grid-template-columns:1fr}.topbar{padding:.8rem}.steps li{padding-left:3rem}.steps li:before{left:.8rem}}
