
:root{
  --bg:#eef3f9;
  --bg-2:#f8fbff;
  --panel:#ffffff;
  --panel-2:#f6f9ff;
  --panel-3:#edf3ff;
  --text:#17324d;
  --text-strong:#10263d;
  --muted:#5d7189;
  --line:rgba(25,67,111,.10);
  --line-strong:rgba(25,67,111,.18);
  --brand:#2f67c7;
  --brand-2:#5db9da;
  --brand-soft:rgba(47,103,199,.10);
  --danger:#d45656;
  --ok:#2f9a66;
  --shadow:0 16px 44px rgba(26,55,93,.08);
  --shadow-soft:0 10px 30px rgba(26,55,93,.06);
  --radius-xl:24px;
  --radius-lg:18px;
  --header-height:88px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  position:relative;
  overflow-x:hidden;
  font-family:Inter,system-ui,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(120,171,255,.20), transparent 34%),
    radial-gradient(circle at top right, rgba(93,185,218,.16), transparent 32%),
    linear-gradient(180deg,#f8fbff 0%,#eef3f9 48%,#edf2f8 100%);
  color:var(--text);
  line-height:1.7;
}
body::before,
body::after,
.admin-body::before,
.admin-body::after{
  content:"";
  position:fixed;
  top:0;
  bottom:0;
  width:min(24vw,280px);
  pointer-events:none;
  z-index:0;
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.16;
  filter:drop-shadow(0 18px 26px rgba(26,55,93,.08));
}
body::before,
.admin-body::before{
  left:0;
  background-image:url('/assets/design/shards-strip.png');
  background-position:left 80px top 70px;
  transform:translateX(-18%) scale(1.05);
}
body::after,
.admin-body::after{
  right:0;
  background-image:url('/assets/design/shards-strip.png');
  background-position:right -10px bottom 60px;
  transform:scaleX(-1) translateX(-12%) scale(1.12);
  transform-origin:center;
  opacity:.12;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
input,textarea,select,button{font:inherit}
summary{list-style:none}
summary::-webkit-details-marker{display:none}
.container{position:relative;z-index:1;width:min(1280px,calc(100% - 40px));margin:0 auto}
.site-shell{min-height:100vh;display:flex;flex-direction:column;position:relative;z-index:1;padding-top:var(--header-height)}
main{flex:1}
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:50;
  background:rgba(248,251,255,.82);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  box-shadow:0 10px 28px rgba(25,67,111,.05);
}
.header-row{display:flex;align-items:center;gap:16px;justify-content:space-between;min-height:var(--header-height)}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;min-width:0}
.brand{display:flex;align-items:center;gap:14px;min-width:0;max-width:500px;flex:0 1 500px}
.brand-logo-stack{
  display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:20px;
  background:linear-gradient(135deg,rgba(47,103,199,.12),rgba(93,185,218,.10));
  border:1px solid var(--line);box-shadow:var(--shadow-soft);flex:0 0 auto
}
.brand-logo{width:46px;height:46px;object-fit:contain}
.brand-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.brand-text strong{font-size:16px;line-height:1.28;color:var(--text-strong)}
.brand-text span{font-size:13px;color:var(--muted)}
.site-nav{display:flex;align-items:center;gap:10px;min-width:0}
.site-nav-main{
  display:flex;align-items:center;gap:2px;padding:5px 6px;border:1px solid var(--line);
  background:rgba(255,255,255,.82);border-radius:18px;flex-wrap:nowrap;min-width:0;
  box-shadow:var(--shadow-soft);max-width:100%;overflow:visible
}
.nav-link,.nav-group-trigger{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 11px;
  border-radius:13px;color:var(--text);font-weight:700;font-size:13px;line-height:1.15;white-space:nowrap;
  text-align:center;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
  border:none;background:transparent;max-width:100%
}
.nav-link:hover,.nav-group-trigger:hover,.card-link:hover{background:rgba(47,103,199,.06);transform:translateY(-1px)}
.nav-link.is-active,.nav-group.is-active > .nav-group-trigger,.nav-group.is-open > .nav-group-trigger{background:rgba(47,103,199,.11);color:var(--brand)}
.nav-group{position:relative;flex:0 1 auto;min-width:0}
.nav-group::after{content:'';position:absolute;left:0;right:0;top:100%;height:14px}
.nav-group-trigger{gap:8px}
.nav-group-trigger::after{content:'';width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-1px);opacity:.75;flex:0 0 auto}
.nav-group.is-open > .nav-group-trigger::after{transform:rotate(225deg) translateY(-1px)}
.nav-dropdown{
  position:absolute;top:calc(100% + 6px);left:0;min-width:240px;padding:10px;display:grid;gap:4px;
  background:#ffffff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);
  opacity:0;visibility:hidden;transform:translateY(4px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s ease
}
.nav-dropdown a{display:block;padding:10px 12px;border-radius:12px;color:var(--text);font-weight:600}
.nav-dropdown a:hover{background:rgba(47,103,199,.06)}
.nav-dropdown a.is-active{background:rgba(47,103,199,.11);color:var(--brand)}

.nav-group.is-open > .nav-dropdown,
.nav-group:hover > .nav-dropdown,
.nav-group:focus-within > .nav-dropdown{
  opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto
}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{flex:0 1 auto}
.site-nav-main > .nav-link:last-child{min-width:0}
.site-nav-main > .nav-link[href="/contacts"]{padding-right:10px}
.nav-link{min-width:0}
.nav-accent{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;border-radius:15px;
  background:linear-gradient(135deg,var(--brand),#5886d8);color:#fff;font-weight:800;box-shadow:var(--shadow-soft);white-space:nowrap;flex:0 0 auto
}
.nav-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid var(--line);background:#fff;color:var(--text);width:46px;height:46px;border-radius:14px;box-shadow:var(--shadow-soft)}
.nav-toggle span{display:block;width:18px;height:2px;border-radius:999px;background:currentColor}
.hero,.page-hero{padding:72px 0 28px}
.hero-grid{display:grid;grid-template-columns:1.3fr .82fr;gap:30px;align-items:center}
.eyebrow{display:inline-block;padding:8px 13px;border-radius:999px;background:rgba(47,103,199,.10);color:var(--brand);font-size:13px;font-weight:800;margin-bottom:16px}
.hero h1,.page-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.03em;margin:0 0 18px;color:var(--text-strong)}
.lead,.section-lead{font-size:18px;color:var(--muted);max-width:820px}
.hero-actions,.resource-actions,.admin-actions,.admin-actions-top{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:14px;font-weight:800;border:1px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(25,67,111,.12)}
.btn-primary{background:linear-gradient(135deg,var(--brand),#5e93dd);color:#fff;box-shadow:var(--shadow-soft)}
.btn-secondary{border:1px solid var(--line-strong);background:rgba(255,255,255,.88);color:var(--text)}
.btn-danger{background:rgba(212,86,86,.08);border-color:rgba(212,86,86,.24);color:var(--danger)}
.hero-card,.card,.post-card,.article-card,.sidebar-card,.resource-card,.empty-card,.admin-card,.admin-item,.admin-login-card{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,249,255,.96));
  border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow)
}
.hero-card{padding:26px;display:grid;gap:14px;position:relative;overflow:hidden}
.hero-card::after,.admin-card::after,.admin-login-card::after{
  content:"";position:absolute;inset:auto -40px -60px auto;width:180px;height:180px;
  background:radial-gradient(circle, rgba(93,185,218,.14), transparent 62%);pointer-events:none
}
.metric{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f2f7ff);border:1px solid rgba(25,67,111,.08)}
.metric strong{font-size:27px;min-width:96px;color:var(--brand)}
.metric span{color:var(--muted)}
.section{padding:28px 0 58px}
.section-muted{background:linear-gradient(180deg,rgba(255,255,255,.40),rgba(255,255,255,.22));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-head-row{margin-bottom:22px}
.section h2,.page-hero h1,.admin-card h2,.admin-topbar h1,.admin-login-card h1{color:var(--text-strong)}
.cards,.resource-list,.admin-items{display:grid;gap:18px}
.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card,.empty-card,.resource-card{padding:24px}
.card h3,.resource-card h3{margin:0 0 10px;font-size:22px;color:var(--text-strong)}
.card p,.contact-line,.resource-card p,.footer-line,.form-note{margin:0;color:var(--muted)}
.card-link{display:block;transition:transform .18s ease,box-shadow .18s ease}
.post-card{overflow:hidden}
.post-card img{height:220px;width:100%;object-fit:cover}
.post-card-body{padding:18px}
.post-card-body h3{margin:8px 0 10px;font-size:22px;color:var(--text-strong)}
.post-card-body p{color:var(--muted);margin:0 0 12px}
.post-card-body a,.sidebar-link,.footer-line a,.admin-file-line a{color:var(--brand);font-weight:600}
.post-meta,.resource-meta{color:#69809b;font-size:13px;font-weight:700}
.article-layout{display:grid;grid-template-columns:minmax(0,2fr) 320px;gap:20px}
.article-card{padding:24px}
.article-card img{border-radius:18px;margin-bottom:18px}
.article-card p{color:var(--text)}
.sidebar-card{padding:22px;height:max-content;position:sticky;top:108px}
.sidebar-link{display:block;padding:10px 0;border-bottom:1px solid var(--line)}
.resource-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.resource-card{display:flex;flex-direction:column;gap:12px}
.resource-meta{display:flex;justify-content:space-between;gap:12px}
.pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:rgba(47,103,199,.10);color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.02em}
.pill.ok{background:rgba(47,154,102,.12);color:var(--ok)}
.pill.muted{background:rgba(25,67,111,.07);color:#5f7187}
.contact-form,.admin-form{display:grid;gap:14px}
.contact-form label,.admin-form label{display:grid;gap:8px;color:var(--text-strong);font-weight:700}
.contact-form input,.contact-form textarea,.admin-form input,.admin-form textarea,.admin-form select{
  width:100%;padding:14px 14px;border-radius:14px;border:1px solid var(--line-strong);background:#fff;color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
.contact-form input:focus,.contact-form textarea:focus,.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{outline:none;border-color:rgba(47,103,199,.38);box-shadow:0 0 0 4px rgba(47,103,199,.10)}
.checkbox-line{display:flex!important;align-items:center;gap:10px;font-weight:700}
.checkbox-line input{width:18px;height:18px}
.form-status{margin-top:10px;font-weight:800}
.form-status.ok{color:var(--ok)}
.form-status.error{color:var(--danger)}
.site-footer{padding:32px 0 42px;border-top:1px solid var(--line);background:rgba(255,255,255,.55);backdrop-filter:blur(6px)}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}
.footer-brand{font-size:18px;font-weight:800;margin-bottom:8px;color:var(--text-strong)}
.footer-copy{color:var(--muted)}
.footer-title{font-weight:800;margin-bottom:8px;color:var(--text-strong)}
.small{padding-top:44px}
.admin-body{min-height:100vh}
.admin-shell{padding:36px 0 52px}
.admin-topbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:22px}
.admin-topbar h1{margin:0 0 10px;font-size:38px;line-height:1.1}
.admin-topbar p{margin:0;max-width:760px;color:var(--muted);font-size:16px}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.admin-grid-top{grid-template-columns:1fr 1fr 1.15fr}
.admin-card{padding:26px;position:relative;overflow:hidden}
.admin-card.wide{grid-column:1/-1}
.admin-card h2{margin:0 0 10px;font-size:24px}
.admin-card-intro{margin:0 0 16px;color:var(--muted);font-size:15px;max-width:58ch}
.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.admin-stat{padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#ffffff,#f4f8ff);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.admin-stat strong{display:block;font-size:28px;line-height:1;color:var(--brand);margin-bottom:6px}
.admin-stat span{display:block;color:var(--muted);font-size:14px;font-weight:700}
.admin-items{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-item{padding:20px;display:grid;gap:14px;background:linear-gradient(180deg,#ffffff,#f7faff)}
.admin-item-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.admin-item-title{display:grid;gap:6px}
.admin-item-title strong{font-size:17px;color:var(--text-strong)}
.admin-item-meta{color:var(--muted);font-size:13px;font-weight:700}
.admin-row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.admin-file-line{padding:12px 14px;border-radius:14px;background:rgba(47,103,199,.05);border:1px dashed rgba(47,103,199,.18);color:var(--muted);word-break:break-word}
.admin-file-line a{display:inline-block}
.admin-divider{height:1px;background:var(--line);margin:4px 0 2px}
.flash{padding:14px 16px;border-radius:16px;margin-bottom:18px;font-weight:800;border:1px solid transparent}
.flash.success{background:rgba(47,154,102,.10);border-color:rgba(47,154,102,.24);color:var(--ok)}
.flash.error{background:rgba(212,86,86,.08);border-color:rgba(212,86,86,.24);color:var(--danger)}
.flash.info{background:rgba(47,103,199,.08);border-color:rgba(47,103,199,.20);color:var(--brand)}
.admin-login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}
.admin-login-card{width:min(100%,470px);padding:30px;position:relative;overflow:hidden}
.admin-login-card h1{margin:0 0 10px;font-size:34px;line-height:1.1}
.admin-login-card p{margin:0 0 20px;color:var(--muted);font-size:16px}
.admin-login-card .btn{width:100%}
@media (max-width: 1180px){
  .hero-grid,.admin-grid-top,.footer-grid,.article-layout{grid-template-columns:1fr}
  .cards.three,.resource-list,.admin-items,.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sidebar-card{position:static}
}
@media (max-width: 920px){
  .container{width:min(100% - 26px, 100%)}
  .header-row{min-height:74px;align-items:flex-start;padding:14px 0}
  .brand{max-width:none;flex:1 1 auto}
  .header-actions{margin-left:0}
  .site-nav{display:none;position:absolute;left:13px;right:13px;top:calc(100% + 10px);padding:14px;border-radius:20px;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
  .site-nav.is-open{display:flex}
  .site-nav-main{flex-direction:column;align-items:stretch;gap:6px;padding:0;background:transparent;border:none;box-shadow:none}
  .nav-link,.nav-group-trigger{justify-content:flex-start;padding:12px 14px}
  .nav-group-trigger::after{margin-left:auto}
  .nav-dropdown{position:static;box-shadow:none;border-radius:14px;margin-top:8px;background:rgba(47,103,199,.04);opacity:1;visibility:visible;transform:none;pointer-events:auto;display:none}
  .nav-group.is-open > .nav-dropdown{display:grid}
  .nav-accent{width:100%;margin-top:8px}
  .nav-toggle{display:flex}
  .hero,.page-hero{padding-top:42px}
  .cards.three,.cards.two,.resource-list,.admin-items,.admin-stats,.admin-row-2{grid-template-columns:1fr}
  body::before,body::after,.admin-body::before,.admin-body::after{width:180px;opacity:.09}
}
@media (max-width: 640px){
  .container{width:calc(100% - 20px)}
  .brand-logo{width:40px;height:40px}
  .brand-logo-stack{padding:8px 10px}
  .brand-text strong{font-size:14px}
  .hero h1,.page-hero h1{font-size:34px}
  .lead,.section-lead{font-size:16px}
  .card,.resource-card,.empty-card,.hero-card,.article-card,.sidebar-card,.admin-card,.admin-item,.admin-login-card{border-radius:20px}
  .admin-topbar h1{font-size:30px}
  .btn{width:100%}
  .hero-actions .btn,.admin-actions .btn,.admin-actions-top .btn,.resource-actions .btn{width:100%}
}



.page-back-wrap{margin:12px auto 0}
.page-back,
.back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 16px;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid rgba(47,103,199,.16);
  background:rgba(255,255,255,.88);
  color:var(--brand);
  font-weight:800;
  line-height:1;
  text-decoration:none;
  box-shadow:0 14px 32px rgba(26,55,93,.10);
  backdrop-filter:blur(8px);
}
.page-back:hover,
.back-link:hover{
  background:rgba(255,255,255,.96);
  border-color:rgba(47,103,199,.26);
  box-shadow:0 18px 36px rgba(26,55,93,.14);
}
.page-back:focus-visible,
.back-link:focus-visible{
  outline:2px solid rgba(47,103,199,.35);
  outline-offset:2px;
}

.back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 16px;
  padding:10px 14px;
  border-radius:12px;
  background:rgba(47,103,199,.08);
  color:var(--brand);
  font-weight:700;
}
.back-link:hover{background:rgba(47,103,199,.14)}
.news-swiper{
  position:relative;
  margin:0 0 22px;
  border-radius:22px;
  overflow:hidden;
  background:#f4f7fc;
  border:1px solid var(--line);
}
.news-swiper-viewport{
  overflow:hidden;
  width:100%;
}
.news-swiper-track{
  display:flex;
  transition:transform .34s ease;
  will-change:transform;
}
.news-swiper-slide{
  flex:0 0 100%;
  margin:0;
  aspect-ratio:16/9;
  background:#eef3f9;
}
.news-swiper-slide img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
}
.news-swiper-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border:none;
  border-radius:999px;
  background:rgba(16,38,61,.72);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
.news-swiper-btn:hover{background:rgba(16,38,61,.88)}
.news-swiper-btn-prev{left:14px}
.news-swiper-btn-next{right:14px}
.news-swiper-pagination{
  position:absolute;
  left:0;
  right:0;
  bottom:12px;
  display:flex;
  justify-content:center;
  gap:8px;
  z-index:2;
}
.news-swiper-dot{
  width:10px;
  height:10px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.55);
  cursor:pointer;
  padding:0;
}
.news-swiper-dot.is-active{background:#fff;transform:scale(1.15)}
@media (max-width: 760px){
  .news-swiper-slide{aspect-ratio:4/3}
  .news-swiper-btn{width:40px;height:40px;font-size:24px}
  .news-swiper-btn-prev{left:10px}
  .news-swiper-btn-next{right:10px}
}


.admin-switcher{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.admin-switcher-btn{appearance:none;border:1px solid var(--line-strong);background:rgba(255,255,255,.9);color:var(--text);border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer;box-shadow:var(--shadow-soft);transition:background-color .18s ease,color .18s ease,transform .18s ease}
.admin-switcher-btn:hover{transform:translateY(-1px);background:rgba(47,103,199,.08)}
.admin-switcher-btn.is-active{background:linear-gradient(135deg,var(--brand),#5e93dd);color:#fff;border-color:transparent}
.admin-panel{display:grid;gap:18px;margin-bottom:18px}
.admin-panel[hidden]{display:none!important}
.admin-stats-wide{grid-template-columns:repeat(8,minmax(0,1fr))}
.admin-news-list{display:grid;gap:18px}
.admin-news-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

.admin-image-sorter{display:grid;gap:12px;padding:14px;border:1px dashed var(--line);border-radius:18px;background:rgba(47,103,199,.04)}
.admin-image-sorter.is-empty .admin-image-sorter-list::before{content:attr(data-empty-text);display:block;padding:18px;border-radius:14px;background:rgba(255,255,255,.7);border:1px dashed var(--line);color:var(--muted)}
.admin-image-sorter-head{display:grid;gap:4px}
.admin-image-sorter-head span{color:var(--muted);font-size:.95rem}
.admin-image-sorter-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-sortable-card{position:relative;align-content:start;cursor:grab}
.admin-sortable-card.is-primary{border-color:rgba(30,111,209,.35);box-shadow:0 0 0 2px rgba(30,111,209,.08)}
.admin-sortable-card.is-dragging{opacity:.55;transform:scale(.98)}
.admin-sortable-handle{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:rgba(17,24,39,.78);color:#fff;font-size:1rem;line-height:1;box-shadow:0 8px 18px rgba(15,23,42,.2)}
.admin-sortable-caption{font-weight:700}
.admin-sortable-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.admin-sortable-controls .btn{flex:0 0 auto}
.btn-small{padding:8px 12px;font-size:.88rem;min-height:36px}
.admin-sortable-controls .btn[disabled]{opacity:.55;cursor:not-allowed}
.admin-sortable-file{font-size:.9rem;color:var(--muted);word-break:break-word}
.admin-sortable-remove{display:flex;justify-content:flex-end}
.admin-sortable-remove .btn{min-width:140px}
.admin-news-image label,.admin-news-image span{font-size:.95rem;color:var(--text)}
.admin-news-image{display:grid;gap:10px;padding:12px;border-radius:14px;background:rgba(47,103,199,.05);border:1px solid var(--line)}
.admin-news-image img{width:100%;height:140px;object-fit:cover;border-radius:12px}
.admin-actions-split{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width: 1180px){.admin-stats-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-news-images,.admin-image-sorter-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 920px){.admin-switcher{flex-direction:column}.admin-stats-wide,.admin-news-images,.admin-image-sorter-list{grid-template-columns:1fr}}


/* Design refresh + mobile/performance layer */
:root{
  --bg-deep:#e9f0f8;
  --hero-glow:radial-gradient(circle at 20% 20%, rgba(114,166,255,.28), transparent 28%), radial-gradient(circle at 80% 16%, rgba(93,185,218,.24), transparent 26%), radial-gradient(circle at 50% 82%, rgba(123,153,255,.18), transparent 28%);
}
html{overflow-x:hidden}
body{
  background:
    var(--hero-glow),
    linear-gradient(180deg,#f8fbff 0%,#eef3f9 44%,#e9f0f8 100%);
}
body::before,
body::after,
.admin-body::before,
.admin-body::after{
  opacity:.11;
  filter:none;
  animation:floatShard 18s ease-in-out infinite;
  will-change:transform;
}
body::after,
.admin-body::after{animation-duration:24s}
.site-shell::before,
.site-shell::after{
  content:"";
  position:fixed;
  inset:auto;
  pointer-events:none;
  z-index:0;
  border-radius:999px;
  opacity:.7;
  will-change:transform, opacity;
}
.site-shell::before{
  width:min(36vw,420px);
  height:min(36vw,420px);
  top:88px;
  right:-120px;
  background:radial-gradient(circle, rgba(93,185,218,.18), rgba(93,185,218,0) 68%);
  animation:floatOrbOne 20s ease-in-out infinite;
}
.site-shell::after{
  width:min(28vw,300px);
  height:min(28vw,300px);
  top:36vh;
  left:-90px;
  background:radial-gradient(circle, rgba(47,103,199,.12), rgba(47,103,199,0) 70%);
  animation:floatOrbTwo 24s ease-in-out infinite;
}
@keyframes floatShard{
  0%,100%{transform:translate3d(0,0,0) scale(1.02)}
  50%{transform:translate3d(0,14px,0) scale(1.06)}
}
@keyframes floatOrbOne{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-26px,24px,0)}
}
@keyframes floatOrbTwo{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(22px,-20px,0)}
}
.site-header{
  background:rgba(248,251,255,.74);
  backdrop-filter:blur(10px);
  box-shadow:0 10px 24px rgba(25,67,111,.045);
}
.header-row{gap:18px}
.brand{max-width:560px}
.brand-logo-stack{
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(232,240,255,.92));
}
.site-nav-main{
  gap:4px;
  padding:6px;
  background:rgba(255,255,255,.7);
  backdrop-filter:blur(8px);
}
.nav-link,.nav-group-trigger{min-height:44px;padding:10px 13px}
.nav-accent{min-height:46px}
.hero,.page-hero{padding:86px 0 34px}
.hero-grid{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:34px;align-items:stretch}
.hero > .container,.page-hero > .container{position:relative}
.hero > .container::after{
  content:"";
  position:absolute;
  right:20px;
  top:-16px;
  width:min(22vw,220px);
  height:min(22vw,220px);
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,255,255,.85), rgba(255,255,255,0) 70%);
  pointer-events:none;
}
.hero h1,.page-hero h1{
  max-width:12ch;
  margin-bottom:20px;
  text-wrap:balance;
}
.lead,.section-lead{max-width:66ch;text-wrap:pretty}
.hero-actions{margin-top:30px}
.btn{
  min-height:50px;
  padding:14px 20px;
  box-shadow:0 10px 24px rgba(25,67,111,.08);
}
.btn-secondary{background:rgba(255,255,255,.82);backdrop-filter:blur(6px)}
.hero-card{
  padding:28px;
  grid-template-columns:1fr;
  align-content:center;
  gap:16px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(241,247,255,.95)),
    radial-gradient(circle at top right, rgba(93,185,218,.22), transparent 36%);
  overflow:hidden;
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0));
  pointer-events:none;
}
.metric{
  position:relative;
  overflow:hidden;
  padding:18px 18px 18px 20px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(243,248,255,.92));
}
.metric::after{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--brand),var(--brand-2));
}
.metric strong{min-width:108px;font-size:24px;line-height:1.15}
.section{padding:34px 0 68px}
.section-muted{
  background:linear-gradient(180deg,rgba(255,255,255,.46),rgba(255,255,255,.26));
  backdrop-filter:blur(4px);
}
.section-head-row,
.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:24px}
.cards,.resource-list,.admin-items{gap:20px}
.card,.empty-card,.resource-card,.post-card,.article-card,.sidebar-card{
  position:relative;
  overflow:hidden;
}
.card::before,.resource-card::before,.post-card::before,.article-card::before,.sidebar-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0));
  pointer-events:none;
}
.card-link:hover,.post-card:hover,.resource-card:hover,.article-card:hover,.sidebar-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 48px rgba(26,55,93,.10);
}
.card-link,.post-card,.resource-card,.article-card,.sidebar-card{transition:transform .24s ease, box-shadow .24s ease}
.post-card{display:flex;flex-direction:column}
.post-card img{height:240px;background:#eaf1fb}
.post-card-body{display:grid;gap:10px;flex:1;padding:20px}
.post-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.article-layout{gap:24px;align-items:start}
.article-card,.sidebar-card{backdrop-filter:blur(8px)}
.sidebar-card{top:98px}
.contact-form input,.contact-form textarea,.admin-form input,.admin-form textarea,.admin-form select{
  background:rgba(255,255,255,.92)
}
.site-footer{
  background:rgba(255,255,255,.42);
  backdrop-filter:blur(10px);
}
.footer-grid{grid-template-columns:1.15fr .9fr .9fr}
.back-link{box-shadow:var(--shadow-soft)}
.hero,.page-hero,.section,.post-card,.resource-card,.card-link,.article-card,.sidebar-card{opacity:0;transform:translate3d(0,24px,0);transition:transform .55s cubic-bezier(.2,.7,.2,1), opacity .55s ease}
.hero.is-visible,.page-hero.is-visible,.section.is-visible,.post-card.is-visible,.resource-card.is-visible,.card-link.is-visible,.article-card.is-visible,.sidebar-card.is-visible{opacity:1;transform:none}

@media (max-width: 1180px){
  .hero-grid{grid-template-columns:1fr}
  .hero h1,.page-hero h1{max-width:14ch}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 920px){
  body::before,body::after,.admin-body::before,.admin-body::after{animation:none;opacity:.08}
  .site-shell::before,.site-shell::after{opacity:.55;animation:none}
  :root{--header-height:72px}
  .site-header{backdrop-filter:blur(8px)}
  .header-row{padding:12px 0;min-height:var(--header-height);align-items:center}
  .brand{gap:12px;min-width:0}
  .brand-text span{display:none}
  .site-nav{
    top:calc(100% + 8px);
    left:10px;
    right:10px;
    padding:12px;
    border-radius:22px;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(10px);
    max-height:min(78vh,680px);
    overflow:auto;
  }
  .site-nav-main{padding:0}
  .nav-link,.nav-group-trigger{min-height:46px;padding:12px 14px;font-size:14px}
  .nav-dropdown{padding:6px}
  .hero,.page-hero{padding:46px 0 24px}
  .hero-grid{gap:18px}
  .hero h1,.page-hero h1{font-size:clamp(30px,9vw,42px);max-width:none}
  .lead,.section-lead{font-size:16px}
  .hero-card{padding:20px}
  .metric{padding:16px 16px 16px 18px}
  .metric strong{min-width:92px;font-size:20px}
  .section{padding:24px 0 48px}
  .section-head-row,.section-head{align-items:flex-start;flex-direction:column}
  .article-layout{grid-template-columns:1fr}
  .sidebar-card{position:static}
  .footer-grid{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .container{width:calc(100% - 18px)}
  .header-row{gap:12px}
  .brand-logo-stack{padding:7px 9px;border-radius:18px}
  .brand-logo{width:38px;height:38px}
  .brand-text strong{font-size:13px;line-height:1.25}
  .nav-toggle{width:44px;height:44px;border-radius:13px}
  .hero,.page-hero{padding-top:34px}
  .eyebrow{font-size:12px;padding:7px 11px;margin-bottom:14px}
  .hero h1,.page-hero h1{font-size:30px;letter-spacing:-.035em}
  .lead,.section-lead{font-size:15px;line-height:1.6}
  .hero-actions,.resource-actions,.admin-actions,.admin-actions-top,.post-card-actions{flex-direction:column}
  .btn,.hero-actions .btn,.admin-actions .btn,.admin-actions-top .btn,.resource-actions .btn{width:100%}
  .card,.resource-card,.empty-card,.hero-card,.article-card,.sidebar-card,.admin-card,.admin-item,.admin-login-card,.post-card{border-radius:18px}
  .post-card img{height:210px}
  .post-card-body{padding:18px}
  .news-swiper{border-radius:18px}
  .site-footer{padding:28px 0 34px}
}
@media (max-width: 420px){
  .brand-logo{width:34px;height:34px}
  .brand-text strong{font-size:12px}
  .metric strong{min-width:78px;font-size:18px}
  .metric span{font-size:14px;line-height:1.55}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero,.page-hero,.section,.post-card,.resource-card,.card-link,.article-card,.sidebar-card{opacity:1;transform:none}
}


/* premium visual refresh without structural changes */
.hero-grid{align-items:center}
.hero-visual{position:relative;min-height:440px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.hero-visual-frame{position:relative;width:min(100%,520px);min-height:440px;padding:28px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.62);background:radial-gradient(circle at 18% 18%, rgba(255,255,255,.96) 0%, rgba(255,255,255,.54) 20%, transparent 44%), radial-gradient(circle at 82% 16%, rgba(93,185,218,.34) 0%, rgba(93,185,218,.14) 24%, transparent 48%), radial-gradient(circle at 50% 78%, rgba(47,103,199,.24) 0%, rgba(47,103,199,.10) 24%, transparent 56%), linear-gradient(145deg, rgba(234,244,255,.96) 0%, rgba(212,232,255,.90) 36%, rgba(170,208,255,.72) 100%);box-shadow:0 34px 90px rgba(26,55,93,.20), inset 0 1px 0 rgba(255,255,255,.82);backdrop-filter:blur(14px)}
.hero-visual-grid{position:absolute;inset:0;background:radial-gradient(circle at center, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 52%), linear-gradient(rgba(47,103,199,.12) 1px, transparent 1px),linear-gradient(90deg, rgba(47,103,199,.12) 1px, transparent 1px);background-size:auto,32px 32px,32px 32px;mask-image:linear-gradient(180deg,rgba(0,0,0,.98),rgba(0,0,0,.28));opacity:.82}
.hero-visual-logo{position:relative;z-index:2;width:min(100%,420px);margin:0 auto;filter:drop-shadow(0 18px 30px rgba(255,255,255,.88)) drop-shadow(0 26px 54px rgba(18,54,103,.30))}
.hero-visual-logo-page{width:min(100%,340px);opacity:.96}
.hero-visual-badge{position:absolute;left:24px;right:24px;bottom:24px;z-index:1;padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.72);box-shadow:0 18px 40px rgba(26,55,93,.12);backdrop-filter:blur(10px)}
.hero-visual-badge span{display:block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:8px}
.hero-visual-badge strong{display:block;font-size:20px;line-height:1.25;color:var(--text-strong)}
.hero-visual-glow{position:absolute;border-radius:999px;filter:blur(0);pointer-events:none;z-index:0}
.hero-visual-glow-lg{width:340px;height:340px;top:-6px;right:-12px;background:radial-gradient(circle, rgba(93,185,218,.46) 0%, rgba(93,185,218,.24) 34%, transparent 72%)}
.hero-visual-glow-sm{width:270px;height:270px;left:-34px;bottom:6px;background:radial-gradient(circle, rgba(47,103,199,.40) 0%, rgba(47,103,199,.16) 38%, transparent 74%)}
.page-hero.small .lead{max-width:760px}
.page-hero.small + .section .cards.three,.page-hero.small + .section .resource-list{align-items:stretch}
.post-card,.resource-card,.card-link,.card{position:relative}
.post-card-body h3,.resource-card h3,.card h3{line-height:1.2}
.post-meta{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:700}
.post-card-actions a{display:inline-flex;align-items:center;gap:8px;font-weight:800}
.post-card-actions a::after,.sidebar-link::after{content:'›';font-size:16px;line-height:1;transition:transform .2s ease}
.post-card:hover .post-card-actions a::after,.sidebar-link:hover::after{transform:translateX(3px)}
.article-card > img,.news-swiper{box-shadow:0 18px 42px rgba(26,55,93,.12)}
.resource-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.empty-card{padding:28px 24px;text-align:left}
@media (max-width: 1180px){.hero-visual{min-height:380px}.hero-visual-frame{min-height:380px}}
@media (max-width: 920px){.hero-visual{min-height:340px;order:-1}.hero-visual-frame{min-height:340px;padding:22px;border-radius:26px;backdrop-filter:none}.hero-visual-badge{left:18px;right:18px;bottom:18px;padding:16px 18px}.hero-visual-badge strong{font-size:18px}.hero-visual-logo{width:min(100%,330px)}.hero-welcome-stage::before{width:290px;height:290px}.hero-welcome-stage::after{width:250px;height:250px}}
@media (max-width: 640px){.hero-visual{min-height:292px}.hero-visual-frame{min-height:292px;padding:18px;border-radius:22px}.hero-visual-grid{background-size:auto,24px 24px,24px 24px;opacity:.68}.hero-visual-logo{width:min(100%,272px)}.hero-visual-badge{position:static;margin-top:12px}.hero-visual-glow-lg{width:210px;height:210px}.hero-visual-glow-sm{width:170px;height:170px}.hero-welcome-stage::before{width:220px;height:220px}.hero-welcome-stage::after{width:180px;height:180px}}


.hero-home-welcome .hero h1{}
.welcome-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.welcome-meta span{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(25,67,111,.10);box-shadow:var(--shadow-soft);font-size:13px;font-weight:800;color:var(--text-strong)}
.hero-visual-frame-welcome{padding:24px}
.hero-welcome-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:390px;height:100%} .hero-welcome-stage::before{content:'';position:absolute;left:50%;top:50%;width:360px;height:360px;transform:translate(-50%,-52%);border-radius:50%;background:radial-gradient(circle, rgba(255,255,255,.92) 0%, rgba(255,255,255,.58) 28%, rgba(255,255,255,0) 68%);box-shadow:0 0 0 1px rgba(255,255,255,.34) inset;z-index:1;pointer-events:none} .hero-welcome-stage::after{content:'';position:absolute;left:50%;top:50%;width:300px;height:300px;transform:translate(-50%,-52%);border-radius:50%;background:radial-gradient(circle, rgba(93,185,218,.20) 0%, rgba(47,103,199,.12) 40%, rgba(47,103,199,0) 74%);z-index:1;pointer-events:none}
.hero-welcome-orbit{position:absolute;border-radius:999px;border:1px solid rgba(47,103,199,.16);background:radial-gradient(circle, rgba(255,255,255,.55), rgba(255,255,255,0));pointer-events:none}
.hero-welcome-orbit-a{width:300px;height:300px;top:18px;right:28px}
.hero-welcome-orbit-b{width:220px;height:220px;left:18px;bottom:56px}
.hero-welcome-panel{position:absolute;z-index:1;padding:18px 18px 16px;border-radius:22px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 40px rgba(26,55,93,.10);backdrop-filter:blur(10px);max-width:250px}
.hero-welcome-panel span{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:8px}
.hero-welcome-panel strong{display:block;font-size:18px;line-height:1.28;color:var(--text-strong);margin-bottom:8px}
.hero-welcome-panel p{margin:0;font-size:14px;line-height:1.6;color:var(--muted)}
.hero-welcome-panel-main{left:0;bottom:24px}
.hero-welcome-panel-note{right:0;top:30px}
.hero-welcome-panel-note p{display:none}
.hero-welcome-stage .hero-visual-logo{width:min(100%,330px);transform:translateY(-6px)}
.welcome-card{padding-top:28px}
.welcome-card-mark{width:56px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--brand-2));margin-bottom:18px;box-shadow:0 8px 20px rgba(47,103,199,.18)}
.welcome-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.welcome-step-card{position:relative;padding-top:66px}
.welcome-step-number{position:absolute;left:24px;top:22px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(47,103,199,.12);color:var(--brand);font-weight:800}
@media (max-width: 1180px){.welcome-steps-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 920px){.welcome-steps-grid{grid-template-columns:1fr}.hero-welcome-stage{min-height:320px}.hero-welcome-panel{max-width:220px}.hero-welcome-panel-main{left:8px;bottom:16px}.hero-welcome-panel-note{right:8px;top:16px}}
@media (max-width: 640px){.welcome-meta span{width:100%;justify-content:flex-start}.hero-welcome-stage{min-height:auto;padding:8px 0;display:block}.hero-welcome-orbit{display:none}.hero-welcome-panel{position:relative;left:auto;right:auto;top:auto;bottom:auto;max-width:none;margin-top:12px;padding:16px;border-radius:18px;backdrop-filter:none}.hero-welcome-stage .hero-visual-logo{width:min(100%,238px);margin:0 auto 6px;transform:none}.welcome-step-card{padding-top:62px}}


/* readability fix for welcome hero */
.hero-home-welcome .hero-grid > :first-child{position:relative;z-index:3}
.hero-home-welcome .eyebrow,.hero-home-welcome h1,.hero-home-welcome .lead,.hero-home-welcome .welcome-meta,.hero-home-welcome .hero-actions{position:relative;z-index:3}
.hero-home-welcome h1{color:#11325b;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.hero-home-welcome .lead{color:#45627f}
.hero-visual-frame{background:radial-gradient(circle at 18% 18%, rgba(255,255,255,.92) 0%, rgba(255,255,255,.46) 18%, transparent 40%), radial-gradient(circle at 82% 16%, rgba(93,185,218,.28) 0%, rgba(93,185,218,.10) 24%, transparent 46%), radial-gradient(circle at 50% 78%, rgba(47,103,199,.18) 0%, rgba(47,103,199,.08) 24%, transparent 54%), linear-gradient(145deg, rgba(232,243,255,.96) 0%, rgba(213,233,255,.90) 40%, rgba(173,210,255,.70) 100%)}
.hero-visual-grid{opacity:.62}
.hero-visual-glow-lg{background:radial-gradient(circle, rgba(93,185,218,.34) 0%, rgba(93,185,218,.14) 34%, transparent 72%)}
.hero-visual-glow-sm{background:radial-gradient(circle, rgba(47,103,199,.28) 0%, rgba(47,103,199,.11) 38%, transparent 74%)}
.hero-welcome-stage::before{background:radial-gradient(circle, rgba(255,255,255,.84) 0%, rgba(255,255,255,.46) 28%, rgba(255,255,255,0) 68%)}
.hero-welcome-stage::after{background:radial-gradient(circle, rgba(93,185,218,.14) 0%, rgba(47,103,199,.08) 40%, rgba(47,103,199,0) 74%)}
.hero-welcome-panel{z-index:4;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.92);box-shadow:0 16px 34px rgba(26,55,93,.12)}
.hero-welcome-panel strong{color:#12365f}
.hero-welcome-panel p{color:#48627c}
.hero-welcome-stage .hero-visual-logo{z-index:3}

.hero-welcome-stage-logo-only{min-height:390px}
.hero-logo-frame{position:relative;z-index:4;display:flex;align-items:center;justify-content:center;padding:26px 30px;border-radius:30px;border:1px solid rgba(255,255,255,.82);background:linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.34));box-shadow:0 24px 60px rgba(26,55,93,.14), inset 0 1px 0 rgba(255,255,255,.9);backdrop-filter:blur(10px)}
.hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%,340px);margin:0;transform:none}
@media (max-width: 920px){.hero-welcome-stage-logo-only{min-height:320px}.hero-logo-frame{padding:22px 24px;border-radius:24px;backdrop-filter:none}}
@media (max-width: 640px){.hero-welcome-stage-logo-only{padding:8px 0;display:flex;align-items:center;justify-content:center}.hero-logo-frame{padding:16px 18px;border-radius:20px}.hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%,238px)}}

/* forum facet styling aligned with uploaded visual */
:root{--facet-image:url('/assets/design/forum-facets-20260331.webp')}

.site-header{overflow:hidden}
.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(248,251,255,.94) 0%, rgba(248,251,255,.82) 34%, rgba(248,251,255,.78) 100%),
    linear-gradient(125deg, rgba(10,45,162,.12) 0%, rgba(0,184,255,.06) 38%, rgba(255,255,255,.08) 100%),
    var(--facet-image) center top / cover no-repeat;
  opacity:.92;
}
.header-row{position:relative;z-index:1}
.brand-logo-stack{
  background:
    linear-gradient(135deg, rgba(255,255,255,.78), rgba(255,255,255,.42)),
    linear-gradient(135deg, rgba(10,45,162,.18), rgba(0,184,255,.10)),
    var(--facet-image) center / cover no-repeat;
  border-color:rgba(255,255,255,.78);
  box-shadow:0 14px 34px rgba(26,55,93,.10);
}
.site-nav-main{
  background:rgba(255,255,255,.92);
  border-color:rgba(255,255,255,.86);
  box-shadow:0 14px 32px rgba(26,55,93,.08);
}
.nav-dropdown{
  background:rgba(255,255,255,.98);
  border-color:rgba(25,67,111,.10);
}

.hero-home-welcome{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.hero-home-welcome::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(6,37,156,.26) 0%, rgba(0,184,255,.10) 34%, rgba(255,255,255,.06) 100%),
    var(--facet-image) center center / cover no-repeat;
  opacity:.56;
}
.hero-home-welcome::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 26%, rgba(7,26,156,.26) 0%, rgba(7,26,156,.10) 18%, rgba(7,26,156,0) 40%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 30%),
    linear-gradient(180deg, rgba(245,250,255,.14) 0%, rgba(245,250,255,.26) 100%);
  opacity:.92;
}
.hero-home-welcome > .container{position:relative;z-index:1}
.hero-home-welcome .hero-grid > :first-child{
  padding:30px 34px 32px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.56));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 22px 56px rgba(26,55,93,.10);
  backdrop-filter:blur(12px);
}
.hero-home-welcome .welcome-meta span{
  background:rgba(255,255,255,.74);
  border-color:rgba(255,255,255,.86);
}
.hero-visual-frame{
  background:
    linear-gradient(145deg, rgba(250,252,255,.18) 0%, rgba(255,255,255,.08) 100%),
    linear-gradient(135deg, rgba(8,39,150,.24) 0%, rgba(0,184,255,.10) 38%, rgba(255,255,255,.08) 100%),
    var(--facet-image) center / cover no-repeat;
  border-color:rgba(255,255,255,.74);
  box-shadow:0 34px 90px rgba(26,55,93,.18), inset 0 1px 0 rgba(255,255,255,.84);
}
.hero-visual-frame::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.62) 0%, rgba(255,255,255,.18) 18%, transparent 44%),
    radial-gradient(circle at 80% 16%, rgba(108,225,255,.22) 0%, rgba(108,225,255,.10) 22%, transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.16) 100%);
}
.hero-visual-frame > *{position:relative;z-index:1}
.hero-visual-grid{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 54%),
    linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.14) 1px, transparent 1px);
  background-size:auto,32px 32px,32px 32px;
  opacity:.52;
}
.hero-logo-frame{
  background:
    linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,255,255,.32)),
    linear-gradient(135deg, rgba(8,39,150,.12), rgba(0,184,255,.08)),
    var(--facet-image) center / cover no-repeat;
  border-color:rgba(255,255,255,.84);
}
.hero-welcome-stage::after{background:radial-gradient(circle, rgba(90,215,255,.20) 0%, rgba(47,103,199,.10) 40%, rgba(47,103,199,0) 74%)}
.hero-welcome-stage .hero-visual-logo{filter:drop-shadow(0 16px 34px rgba(255,255,255,.92)) drop-shadow(0 22px 52px rgba(6,38,132,.34))}

.page-hero.small .container,
.contacts-grid .card,
.article-card,
.sidebar-card{
  position:relative;
  overflow:hidden;
}
.page-hero.small .container{
  padding:34px 36px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.62));
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 18px 44px rgba(26,55,93,.08);
}
.page-hero.small .container::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(125deg, rgba(10,45,162,.18) 0%, rgba(0,184,255,.10) 34%, rgba(255,255,255,.06) 100%),
    var(--facet-image) center / cover no-repeat;
  opacity:.58;
}
.page-hero.small .container > *{position:relative;z-index:1}

.section-muted{position:relative;overflow:hidden;isolation:isolate}
.section-muted::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(10,45,162,.05) 0%, rgba(0,184,255,.03) 34%, rgba(255,255,255,0) 100%),
    var(--facet-image) center / cover no-repeat;
  opacity:.08;
}
.section-muted > .container{position:relative;z-index:1}

.card::before,
.resource-card::before,
.post-card::before,
.article-card::before,
.sidebar-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg, rgba(8,39,150,.95) 0%, rgba(0,184,255,.82) 100%);
}
.welcome-card-mark{box-shadow:0 10px 22px rgba(8,39,150,.18)}

@media (max-width: 920px){
  .hero-home-welcome::before{background-position:center top;opacity:.52}
  .hero-home-welcome::after{opacity:.96}
  .hero-home-welcome .hero-grid > :first-child{padding:22px 22px 24px;border-radius:24px;backdrop-filter:none}
  .page-hero.small .container{padding:24px 22px;border-radius:24px}
}
@media (max-width: 640px){
  .site-header::before{opacity:.82}
  .hero-home-welcome .hero-grid > :first-child{padding:18px 18px 20px;border-radius:20px}
  .hero-visual-grid{background-size:auto,24px 24px,24px 24px;opacity:.42}
  .page-hero.small .container{padding:20px 18px;border-radius:20px}
}


/* section-scoped facet background */
body{
  background-color:#e8f1fb;
  background-image:
    linear-gradient(180deg, rgba(248,251,255,.98) 0%, rgba(238,245,252,.96) 44%, rgba(233,241,248,.98) 100%),
    radial-gradient(circle at 12% 22%, rgba(6,37,156,.10) 0%, rgba(6,37,156,.04) 16%, rgba(6,37,156,0) 34%),
    radial-gradient(circle at 84% 12%, rgba(0,184,255,.08) 0%, rgba(0,184,255,.03) 18%, rgba(0,184,255,0) 36%);
  background-position:center top, left top, right top;
  background-repeat:no-repeat;
  background-size:auto, auto, auto;
  background-attachment:scroll, scroll, scroll;
}

.site-shell{
  isolation:isolate;
}

.site-shell::before{
  opacity:.60;
}

.site-shell::after{
  opacity:.54;
}

.site-header::before{
  background:
    linear-gradient(90deg, rgba(248,251,255,.98) 0%, rgba(248,251,255,.96) 34%, rgba(248,251,255,.94) 100%),
    linear-gradient(125deg, rgba(10,45,162,.06) 0%, rgba(0,184,255,.03) 38%, rgba(255,255,255,.04) 100%);
}

.section,
.section-muted,
.page-hero,
.site-footer{
  position:relative;
  z-index:1;
}

@media (max-width: 920px){
  body{
    background-attachment:scroll, scroll, scroll, scroll, scroll;
    background-position:center top, left -120px top -40px, right -80px top -20px, right -80px bottom -20px, center top;
  }
}

/* nav dropdown layering + smooth hero-to-sections transition */
.site-header{
  overflow:visible;
  isolation:isolate;
}
.site-header::before{
  z-index:0;
}
.header-row,
.site-nav,
.site-nav-main,
.nav-group{
  position:relative;
}
.header-row,
.site-nav,
.site-nav-main{
  z-index:2;
}
.nav-group:hover,
.nav-group:focus-within,
.nav-group.is-open{
  z-index:90;
}
.nav-dropdown{
  top:calc(100% + 10px);
  z-index:120;
  background:linear-gradient(180deg, rgba(255,255,255,.995), rgba(248,252,255,.99));
  border:1px solid rgba(198,215,240,.88);
  box-shadow:0 24px 54px rgba(14,43,114,.16);
  backdrop-filter:blur(14px);
}

.hero-home-welcome{
  padding-bottom:90px;
  margin-bottom:-22px;
}
.hero-home-welcome::after{
  background:
    radial-gradient(circle at 14% 26%, rgba(7,26,156,.22) 0%, rgba(7,26,156,.08) 18%, rgba(7,26,156,0) 42%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 32%),
    linear-gradient(180deg, rgba(245,250,255,.10) 0%, rgba(245,250,255,.14) 56%, rgba(236,244,252,.56) 84%, rgba(240,246,252,.92) 100%);
  opacity:1;
}
.hero-home-welcome > .container::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-38px;
  height:120px;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(240,246,252,0) 0%, rgba(240,246,252,.30) 54%, rgba(240,246,252,.82) 100%);
  z-index:1;
}
.hero-home-welcome > .container > *{
  position:relative;
  z-index:2;
}

.section:first-of-type{
  position:relative;
  z-index:2;
}

.section:not(.home-alt-surface){
  position:relative;
  isolation:isolate;
}
.section:not(.home-alt-surface)::before,
.section:not(.home-alt-surface)::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:72px;
  pointer-events:none;
  z-index:0;
}
.section:not(.home-alt-surface)::before{
  top:0;
  background:linear-gradient(180deg, rgba(240,246,252,.18) 0%, rgba(240,246,252,.08) 38%, rgba(240,246,252,0) 100%);
}
.section:not(.home-alt-surface)::after{
  bottom:0;
  background:linear-gradient(180deg, rgba(240,246,252,0) 0%, rgba(240,246,252,.08) 62%, rgba(240,246,252,.18) 100%);
}
.section > .container{position:relative;z-index:1;}

@media (max-width: 640px){
  .section:not(.home-alt-surface)::before,
  .section:not(.home-alt-surface)::after{
    height:52px;
  }
}

/* alternating home section background, aligned with hero without washing out the content */
.home-alt-surface{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  z-index:1;
  background:transparent;
}
.home-alt-surface::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(17,53,178,.14) 0%, rgba(43,190,255,.07) 36%, rgba(255,255,255,.03) 100%),
    var(--facet-image) center center / cover no-repeat;
  opacity:.48;
  z-index:0;
}
.home-alt-surface::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(circle at 14% 24%, rgba(23,46,166,.11) 0%, rgba(23,46,166,.04) 18%, rgba(23,46,166,0) 44%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 32%),
    linear-gradient(180deg,
      rgba(244,248,253,.30) 0%,
      rgba(240,246,252,.18) 10%,
      rgba(235,243,250,.07) 18%,
      rgba(235,243,250,0) 28%,
      rgba(235,243,250,0) 72%,
      rgba(235,243,250,.07) 82%,
      rgba(240,246,252,.18) 90%,
      rgba(244,248,253,.30) 100%);
}
.home-alt-surface > .container{
  position:relative;
  z-index:2;
}
.home-alt-surface > .container > *{
  position:relative;
  z-index:2;
}
.home-alt-surface .section-head-row,
.home-alt-surface .welcome-steps-grid{
  position:relative;
  z-index:2;
}
.home-alt-surface .card{
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(249,252,255,.62));
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 18px 40px rgba(26,55,93,.08);
  backdrop-filter:blur(6px);
}
.home-alt-surface + .section,
.section + .home-alt-surface{
  position:relative;
}
.home-alt-surface + .section::before,
.section + .home-alt-surface::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:110px;
  pointer-events:none;
  z-index:0;
}
.section + .home-alt-surface::before{
  background:linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(246,250,254,.55) 34%, rgba(233,242,250,.15) 68%, rgba(233,242,250,0) 100%);
}
.home-alt-surface + .section::before{
  background:linear-gradient(180deg, rgba(233,242,250,0) 0%, rgba(233,242,250,.15) 32%, rgba(246,250,254,.55) 66%, rgba(255,255,255,.92) 100%);
}

@media (max-width: 920px){
  .section + .home-alt-surface::before,
  .home-alt-surface + .section::before{
    height:84px;
  }
}

@media (max-width: 640px){
  .section + .home-alt-surface::before,
  .home-alt-surface + .section::before{
    height:60px;
  }
}

@media (max-width: 920px){
  .hero-home-welcome{
    padding-bottom:78px;
    margin-bottom:-20px;
  }
  .hero-home-welcome > .container::after{
    bottom:-34px;
    height:108px;
  }
}

@media (max-width: 640px){
  .nav-dropdown{
    backdrop-filter:none;
  }
  .hero-home-welcome{
    padding-bottom:64px;
    margin-bottom:-14px;
  }
  .hero-home-welcome > .container::after{
    bottom:-24px;
    height:82px;
  }
}

/* 2026-04-01: unify home sections, keep decorative background only on hero-home-welcome */
.section{
  position:relative;
  background:transparent;
}

.section-muted,
.home-alt-surface{
  background:transparent !important;
  backdrop-filter:none !important;
  border-top:none !important;
  border-bottom:none !important;
}

.section::before,
.section::after,
.section-muted::before,
.section-muted::after,
.home-alt-surface::before,
.home-alt-surface::after,
.section:not(.home-alt-surface)::before,
.section:not(.home-alt-surface)::after,
.home-alt-surface + .section::before,
.section + .home-alt-surface::before{
  content:none !important;
  display:none !important;
  background:none !important;
}

.section + .section{
  border-top:1px solid rgba(25,67,111,.06);
}

.section .section-head-row{
  margin-bottom:26px;
}

.home-alt-surface .card,
.section-muted .card{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,255,.96)) !important;
  border:1px solid rgba(25,67,111,.08) !important;
  box-shadow:0 18px 42px rgba(26,55,93,.08) !important;
  backdrop-filter:none !important;
}

.welcome-card,
.welcome-step-card,
.card-link{
  min-height:100%;
}

@media (max-width: 920px){
  .section + .section{
    border-top-color:rgba(25,67,111,.05);
  }
}


/* 2026-04-01: simplified home welcome screen */
.hero-home-intro{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
  padding:44px 38px 44px 6px;
}
.hero-home-intro .eyebrow{
  display:inline-flex;
  align-self:flex-start;
  margin-bottom:18px;
  padding:10px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 12px 28px rgba(18,54,103,.08);
}
.hero-home-intro h1{
  margin:0;
  max-width:520px;
  font-size:clamp(40px,5.2vw,72px);
  line-height:1.02;
  letter-spacing:-.04em;
  color:#11325b;
  text-wrap:balance;
  overflow-wrap:anywhere;
}
.hero-home-intro h1.hero-home-title-size-md{
  max-width:560px;
  font-size:clamp(36px,4.6vw,62px);
  line-height:1.04;
}
.hero-home-intro h1.hero-home-title-size-sm{
  max-width:600px;
  font-size:clamp(32px,4.1vw,54px);
  line-height:1.06;
}
.hero-home-intro h1.hero-home-title-size-xs{
  max-width:640px;
  font-size:clamp(28px,3.5vw,46px);
  line-height:1.08;
  letter-spacing:-.03em;
}
.hero-home-intro h1.hero-home-title-size-xxs{
  max-width:680px;
  font-size:clamp(24px,3vw,40px);
  line-height:1.1;
  letter-spacing:-.02em;
}
.hero-home-caption{
  margin:20px 0 0;
  font-size:16px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(17,50,91,.70);
  overflow-wrap:anywhere;
}
.hero-home-caption.hero-home-caption-size-md{
  font-size:15px;
  letter-spacing:.15em;
}
.hero-home-caption.hero-home-caption-size-sm{
  font-size:14px;
  letter-spacing:.12em;
}
.hero-home-welcome .hero-grid > .hero-home-intro{
  padding:40px 42px 42px;
}
.home-quick-links-section{
  padding-top:22px;
}
.home-quick-links-intro{
  margin-bottom:18px;
  text-align:center;
}
.home-quick-links-intro h2{
  margin:0 0 10px;
  color:#133861;
}
.home-quick-links-intro p{
  margin:0;
  color:#58708b;
}
.home-quick-links-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.home-quick-link{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:164px;
  padding:24px 22px;
  border-radius:28px;
  text-decoration:none;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,252,255,.88));
  border:1px solid rgba(199,217,240,.92);
  box-shadow:0 16px 40px rgba(16,46,106,.08);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.home-quick-link::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:5px;
  border-radius:28px 28px 0 0;
  background:linear-gradient(90deg, rgba(8,39,150,.96), rgba(0,184,255,.84));
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 22px 48px rgba(16,46,106,.12);
  border-color:rgba(123,171,230,.94);
}
.home-quick-link-kicker{
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#3063a3;
}
.home-quick-link strong{
  font-size:24px;
  line-height:1.18;
  color:#14375e;
}
.home-quick-link small{
  font-size:15px;
  line-height:1.55;
  color:#58708b;
}
.home-quick-link-primary{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(244,250,255,.90)),
    linear-gradient(135deg, rgba(8,39,150,.08), rgba(0,184,255,.06));
}
@media (max-width: 920px){
  .hero-home-intro,
  .hero-home-welcome .hero-grid > .hero-home-intro{
    padding:24px 24px 26px;
  }
  .hero-home-intro h1{
    max-width:none;
    font-size:clamp(34px,8vw,54px);
  }
  .hero-home-intro h1.hero-home-title-size-md{
    font-size:clamp(31px,7vw,48px);
  }
  .hero-home-intro h1.hero-home-title-size-sm{
    font-size:clamp(28px,6.3vw,42px);
  }
  .hero-home-intro h1.hero-home-title-size-xs{
    font-size:clamp(25px,5.6vw,38px);
  }
  .hero-home-intro h1.hero-home-title-size-xxs{
    font-size:clamp(22px,5vw,34px);
  }
  .home-quick-links-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 640px){
  .hero-home-intro,
  .hero-home-welcome .hero-grid > .hero-home-intro{
    padding:18px 18px 20px;
    text-align:center;
    align-items:center;
  }
  .hero-home-intro .eyebrow{
    align-self:center;
    margin-bottom:14px;
  }
  .hero-home-intro h1{
    font-size:clamp(30px,10vw,42px);
  }
  .hero-home-intro h1.hero-home-title-size-md{
    font-size:clamp(28px,9vw,38px);
  }
  .hero-home-intro h1.hero-home-title-size-sm{
    font-size:clamp(25px,8vw,34px);
  }
  .hero-home-intro h1.hero-home-title-size-xs{
    font-size:clamp(22px,7vw,30px);
  }
  .hero-home-intro h1.hero-home-title-size-xxs{
    font-size:clamp(20px,6.2vw,27px);
  }
  .hero-home-caption{
    margin-top:14px;
    font-size:13px;
    letter-spacing:.14em;
  }
  .hero-home-caption.hero-home-caption-size-md{
    font-size:12px;
    letter-spacing:.12em;
  }
  .hero-home-caption.hero-home-caption-size-sm{
    font-size:11px;
    letter-spacing:.1em;
  }
  .home-quick-links-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .home-quick-link{
    min-height:auto;
    padding:20px 18px;
    border-radius:22px;
  }
  .home-quick-link::before{
    border-radius:22px 22px 0 0;
  }
}

/* 2026-04-01: make section below home visually continue hero-home-welcome */
.home-quick-links-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin-top:-34px;
  padding:74px 0 56px;
}
.home-quick-links-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(232,241,251,.10) 0%, rgba(225,237,250,.42) 18%, rgba(220,233,248,.74) 100%),
    linear-gradient(135deg, rgba(6,37,156,.20) 0%, rgba(0,184,255,.08) 34%, rgba(255,255,255,.04) 100%),
    var(--facet-image) center center / cover no-repeat;
  opacity:.92;
}
.home-quick-links-section::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 20%, rgba(7,26,156,.18) 0%, rgba(7,26,156,.08) 20%, rgba(7,26,156,0) 42%),
    radial-gradient(circle at 82% 16%, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 30%),
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.08) 44%, rgba(235,243,252,.28) 100%);
  opacity:1;
}
.home-quick-links-section > .container{
  position:relative;
  z-index:1;
}
.home-quick-links-intro{
  position:relative;
  margin:0 auto 24px;
  max-width:760px;
  padding:28px 32px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.50));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 22px 56px rgba(26,55,93,.10);
  backdrop-filter:blur(12px);
}
.home-quick-links-intro h2{
  font-size:clamp(30px,3vw,40px);
  letter-spacing:-.03em;
}
.home-quick-links-grid{
  position:relative;
  z-index:1;
}
.home-quick-link{
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(245,250,255,.70)),
    linear-gradient(135deg, rgba(8,39,150,.10), rgba(0,184,255,.06));
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 20px 48px rgba(16,46,106,.12);
  backdrop-filter:blur(10px);
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  transform:translateY(-6px);
  box-shadow:0 28px 58px rgba(16,46,106,.16);
  border-color:rgba(255,255,255,.92);
}
.home-quick-link strong{
  color:#12345b;
}
.home-quick-link small{
  color:#4c6784;
}
.home-quick-link-primary{
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(244,250,255,.76)),
    linear-gradient(135deg, rgba(8,39,150,.16), rgba(0,184,255,.10));
}
@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:-26px;
    padding:58px 0 44px;
  }
  .home-quick-links-intro{
    padding:22px 22px 24px;
    border-radius:24px;
    backdrop-filter:none;
  }
  .home-quick-link{
    backdrop-filter:none;
  }
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:-18px;
    padding:42px 0 32px;
  }
  .home-quick-links-intro{
    padding:18px 18px 20px;
    border-radius:20px;
    margin-bottom:16px;
  }
}

/* 2026-04-01: stronger continuation from hero to quick links section */
.home-quick-links-section{
  margin-top:-54px;
  padding:94px 0 70px;
}
.home-quick-links-section::before{
  background:
    linear-gradient(180deg, rgba(221,233,248,.16) 0%, rgba(211,226,245,.62) 16%, rgba(198,217,241,.94) 100%),
    linear-gradient(135deg, rgba(6,37,156,.28) 0%, rgba(0,184,255,.12) 34%, rgba(255,255,255,.06) 100%),
    var(--facet-image) center center / cover no-repeat;
  opacity:.98;
}
.home-quick-links-section::after{
  background:
    radial-gradient(circle at 13% 18%, rgba(7,26,156,.22) 0%, rgba(7,26,156,.10) 20%, rgba(7,26,156,0) 44%),
    radial-gradient(circle at 84% 14%, rgba(255,255,255,.24) 0%, rgba(255,255,255,.04) 22%, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 58% 100%, rgba(91,212,255,.16) 0%, rgba(91,212,255,0) 36%),
    linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(238,245,252,.20) 42%, rgba(226,237,249,.52) 100%);
}
.home-quick-links-section > .container{
  padding:30px 28px 34px;
  border-radius:40px;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.38);
  box-shadow:0 30px 72px rgba(19,49,96,.12), inset 0 1px 0 rgba(255,255,255,.52);
  backdrop-filter:blur(10px);
}
.home-quick-links-section > .container::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.26) 0%, rgba(255,255,255,0) 28%),
    linear-gradient(135deg, rgba(8,39,150,.08), rgba(0,184,255,.04));
}
.home-quick-links-intro{
  max-width:860px;
  padding:34px 36px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,255,255,.48)),
    linear-gradient(135deg, rgba(8,39,150,.08), rgba(0,184,255,.04));
  border:1px solid rgba(255,255,255,.80);
  box-shadow:0 24px 58px rgba(22,51,96,.12);
}
.home-quick-links-intro::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.34) 0%, rgba(255,255,255,0) 24%),
    linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,0));
}
.home-quick-links-intro h2{
  font-size:clamp(32px,3.3vw,46px);
  color:#11325b;
}
.home-quick-links-intro p{
  font-size:16px;
  color:#496784;
}
.home-quick-links-grid{
  gap:20px;
}
.home-quick-link{
  min-height:178px;
  padding:26px 24px;
  border-radius:30px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(244,249,255,.54)),
    linear-gradient(135deg, rgba(8,39,150,.14), rgba(0,184,255,.08));
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 22px 50px rgba(16,46,106,.14), inset 0 1px 0 rgba(255,255,255,.54);
}
.home-quick-link::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 14%, rgba(255,255,255,.30) 0%, rgba(255,255,255,0) 24%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  transform:translateY(-8px);
  box-shadow:0 32px 64px rgba(16,46,106,.18), inset 0 1px 0 rgba(255,255,255,.62);
}
.home-quick-link-kicker{
  color:#225a9a;
}
.home-quick-link strong{
  font-size:26px;
  color:#102f57;
}
.home-quick-link small{
  color:#46647f;
}
.home-quick-link-primary{
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(243,249,255,.60)),
    linear-gradient(135deg, rgba(8,39,150,.22), rgba(0,184,255,.12));
}
@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:-42px;
    padding:76px 0 52px;
  }
  .home-quick-links-section > .container{
    padding:22px 20px 24px;
    border-radius:28px;
    backdrop-filter:none;
  }
  .home-quick-links-intro{
    padding:24px 24px 26px;
    border-radius:26px;
  }
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:-30px;
    padding:58px 0 34px;
  }
  .home-quick-links-section > .container{
    padding:16px 14px 18px;
    border-radius:22px;
  }
  .home-quick-links-intro{
    padding:18px 18px 20px;
    border-radius:20px;
  }
  .home-quick-link{
    min-height:auto;
    padding:20px 18px;
    border-radius:22px;
  }
}


/* 2026-04-01: remove shard strips and create smooth hero -> next section blend */
body::before,
body::after,
.admin-body::before,
.admin-body::after{
  content:none !important;
  background-image:none !important;
  display:none !important;
}

.home-quick-links-section{
  margin-top:-72px;
  padding:112px 0 70px;
}
.home-quick-links-section::before{
  background:
    linear-gradient(180deg,
      rgba(242,247,253,0) 0%,
      rgba(237,244,252,.18) 12%,
      rgba(228,238,249,.48) 28%,
      rgba(215,229,245,.78) 52%,
      rgba(206,222,241,.94) 100%),
    linear-gradient(135deg, rgba(6,37,156,.16) 0%, rgba(0,184,255,.07) 36%, rgba(255,255,255,.04) 100%),
    var(--facet-image) center center / cover no-repeat;
  opacity:1;
}
.home-quick-links-section::after{
  background:
    radial-gradient(circle at 16% 10%, rgba(7,26,156,.12) 0%, rgba(7,26,156,.05) 18%, rgba(7,26,156,0) 42%),
    radial-gradient(circle at 84% 8%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.03) 18%, rgba(255,255,255,0) 34%),
    linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(234,242,251,.14) 38%, rgba(225,236,248,.30) 100%);
  opacity:1;
}
.home-quick-links-section > .container{
  padding:26px 24px 32px;
  border-radius:36px;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.34);
  box-shadow:0 24px 60px rgba(19,49,96,.10), inset 0 1px 0 rgba(255,255,255,.46);
  backdrop-filter:blur(8px);
}
.home-quick-links-intro{
  background:linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.46));
}
.home-quick-link{
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(245,250,255,.64)),
    linear-gradient(135deg, rgba(8,39,150,.08), rgba(0,184,255,.04));
}
@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:-56px;
    padding:88px 0 48px;
  }
  .home-quick-links-section > .container{
    padding:20px 18px 24px;
    border-radius:28px;
    backdrop-filter:none;
  }
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:-36px;
    padding:62px 0 34px;
  }
  .home-quick-links-section > .container{
    padding:16px 14px 18px;
    border-radius:22px;
  }
}

/* 2026-04-01: soften quick-links shell, button glow, and hero -> quick-links transition */
.home-quick-links-section{
  margin-top:-84px;
  padding:126px 0 68px;
}
.home-quick-links-section::before{
  background:
    linear-gradient(180deg,
      rgba(242,247,253,0) 0%,
      rgba(239,245,252,.12) 10%,
      rgba(232,240,250,.34) 24%,
      rgba(223,234,247,.58) 44%,
      rgba(214,228,244,.82) 70%,
      rgba(207,223,241,.94) 100%),
    linear-gradient(135deg, rgba(6,37,156,.12) 0%, rgba(0,184,255,.05) 38%, rgba(255,255,255,.03) 100%),
    var(--facet-image) center center / cover no-repeat;
}
.home-quick-links-section::after{
  background:
    radial-gradient(circle at 16% 8%, rgba(7,26,156,.08) 0%, rgba(7,26,156,.03) 18%, rgba(7,26,156,0) 42%),
    radial-gradient(circle at 84% 8%, rgba(255,255,255,.14) 0%, rgba(255,255,255,.02) 18%, rgba(255,255,255,0) 34%),
    linear-gradient(180deg, rgba(255,255,255,.01) 0%, rgba(234,242,251,.10) 40%, rgba(225,236,248,.24) 100%);
}
.home-quick-links-section > .container{
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.home-quick-links-section > .container::before{
  content:none;
}
.home-quick-links-intro{
  background:linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.34));
  border:1px solid rgba(255,255,255,.58);
  box-shadow:0 14px 34px rgba(19,49,96,.06);
}
.home-quick-links-grid{
  gap:18px;
}
.home-quick-link{
  box-shadow:0 14px 34px rgba(16,46,106,.08), inset 0 1px 0 rgba(255,255,255,.42);
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  box-shadow:0 18px 40px rgba(16,46,106,.10), inset 0 1px 0 rgba(255,255,255,.50);
  transform:translateY(-4px);
}

.btn{
  position:relative;
  overflow:hidden;
  box-shadow:0 8px 18px rgba(25,67,111,.08);
}
.btn:hover,
.btn:focus-visible{
  box-shadow:0 10px 22px rgba(25,67,111,.10);
}
.btn-primary{
  box-shadow:0 10px 22px rgba(36,84,153,.16);
}
.btn-primary:hover,
.btn-primary:focus-visible{
  box-shadow:0 12px 24px rgba(36,84,153,.18);
}
.btn-secondary{
  box-shadow:0 8px 18px rgba(25,67,111,.06);
}

.hero-home-welcome{
  padding-bottom:116px;
  margin-bottom:-44px;
}
.hero-home-welcome::after{
  background:
    radial-gradient(circle at 14% 26%, rgba(7,26,156,.20) 0%, rgba(7,26,156,.07) 18%, rgba(7,26,156,0) 44%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 32%),
    linear-gradient(180deg,
      rgba(245,250,255,.08) 0%,
      rgba(243,249,255,.12) 48%,
      rgba(234,242,251,.34) 72%,
      rgba(226,236,248,.72) 88%,
      rgba(220,231,245,.96) 100%);
}
.hero-home-welcome > .container::after{
  bottom:-54px;
  height:156px;
  background:linear-gradient(180deg, rgba(236,244,252,0) 0%, rgba(232,240,249,.24) 44%, rgba(225,235,247,.78) 100%);
}

@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:-64px;
    padding:96px 0 46px;
  }
  .hero-home-welcome{
    padding-bottom:96px;
    margin-bottom:-30px;
  }
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:-40px;
    padding:66px 0 32px;
  }
  .hero-home-welcome{
    padding-bottom:74px;
    margin-bottom:-18px;
  }
}

/* 2026-04-01: make quick-links top edge visually merge into hero bottom */
.home-quick-links-section{
  margin-top:-108px;
  padding:148px 0 68px;
}
.home-quick-links-section::before{
  background:
    linear-gradient(180deg,
      rgba(234,242,251,0) 0%,
      rgba(228,238,249,.08) 10%,
      rgba(217,231,247,.18) 22%,
      rgba(205,222,242,.34) 38%,
      rgba(210,225,243,.62) 58%,
      rgba(211,226,243,.86) 78%,
      rgba(207,223,241,.96) 100%),
    radial-gradient(circle at 18% 0%, rgba(7,26,156,.14) 0%, rgba(7,26,156,.05) 20%, rgba(7,26,156,0) 44%),
    radial-gradient(circle at 82% 4%, rgba(255,255,255,.14) 0%, rgba(255,255,255,.03) 18%, rgba(255,255,255,0) 36%),
    linear-gradient(135deg, rgba(6,37,156,.10) 0%, rgba(0,184,255,.04) 40%, rgba(255,255,255,.03) 100%),
    var(--facet-image) center center / cover no-repeat;
}
.home-quick-links-section::after{
  background:
    radial-gradient(circle at 16% 6%, rgba(7,26,156,.10) 0%, rgba(7,26,156,.03) 16%, rgba(7,26,156,0) 40%),
    radial-gradient(circle at 84% 7%, rgba(255,255,255,.10) 0%, rgba(255,255,255,.02) 15%, rgba(255,255,255,0) 30%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(236,244,252,.08) 30%, rgba(225,236,248,.24) 100%);
}
.home-quick-links-section > .container{
  position:relative;
  z-index:2;
}

@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:-82px;
    padding:114px 0 46px;
  }
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:-54px;
    padding:82px 0 32px;
  }
}

/* 2026-04-01: final seam fix for hero -> quick-links */
.hero-home-welcome{
  position:relative;
  padding-bottom:138px;
  margin-bottom:-92px;
}
.hero-home-welcome::after{
  background:
    radial-gradient(circle at 14% 26%, rgba(7,26,156,.16) 0%, rgba(7,26,156,.05) 18%, rgba(7,26,156,0) 44%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 32%),
    linear-gradient(180deg,
      rgba(245,250,255,.08) 0%,
      rgba(241,247,253,.14) 46%,
      rgba(227,237,248,.50) 72%,
      rgba(214,228,244,.82) 88%,
      rgba(207,223,241,.98) 100%);
}
.hero-home-welcome > .container::after{
  bottom:-42px;
  height:182px;
  background:linear-gradient(180deg,
    rgba(233,241,250,0) 0%,
    rgba(224,236,248,.26) 34%,
    rgba(212,227,244,.74) 72%,
    rgba(207,223,241,.98) 100%);
}

.home-quick-links-section{
  position:relative;
  z-index:2;
  margin-top:-126px;
  padding:136px 0 64px;
}
.home-quick-links-section::before{
  content:"";
  position:absolute;
  inset:-62px 0 0 0;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(207,223,241,.99) 0%,
      rgba(209,224,242,.96) 14%,
      rgba(214,228,244,.84) 30%,
      rgba(221,233,247,.66) 48%,
      rgba(229,239,249,.48) 68%,
      rgba(237,244,252,.30) 84%,
      rgba(242,247,253,.20) 100%),
    radial-gradient(circle at 16% 2%, rgba(7,26,156,.08) 0%, rgba(7,26,156,.02) 18%, rgba(7,26,156,0) 38%),
    radial-gradient(circle at 84% 4%, rgba(255,255,255,.12) 0%, rgba(255,255,255,.02) 18%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, rgba(6,37,156,.08) 0%, rgba(0,184,255,.04) 40%, rgba(255,255,255,.02) 100%),
    var(--facet-image) center top / cover no-repeat;
  opacity:1;
}
.home-quick-links-section::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-46px;
  height:128px;
  pointer-events:none;
  background:linear-gradient(180deg,
    rgba(208,224,242,0) 0%,
    rgba(208,224,242,.36) 32%,
    rgba(208,224,242,.88) 100%);
}
.home-quick-links-section > .container{
  position:relative;
  z-index:3;
  margin-top:-34px;
}
.home-quick-links-intro{
  box-shadow:0 10px 24px rgba(19,49,96,.05);
}
.home-quick-link{
  box-shadow:0 12px 28px rgba(16,46,106,.07), inset 0 1px 0 rgba(255,255,255,.40);
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  box-shadow:0 16px 32px rgba(16,46,106,.09), inset 0 1px 0 rgba(255,255,255,.46);
}

@media (max-width: 920px){
  .hero-home-welcome{
    padding-bottom:108px;
    margin-bottom:-70px;
  }
  .hero-home-welcome > .container::after{
    height:148px;
    bottom:-34px;
  }
  .home-quick-links-section{
    margin-top:-96px;
    padding:104px 0 46px;
  }
  .home-quick-links-section::before{
    inset:-48px 0 0 0;
  }
  .home-quick-links-section::after{
    top:-34px;
    height:100px;
  }
  .home-quick-links-section > .container{
    margin-top:-20px;
  }
}

@media (max-width: 640px){
  .hero-home-welcome{
    padding-bottom:82px;
    margin-bottom:-50px;
  }
  .hero-home-welcome > .container::after{
    height:112px;
    bottom:-22px;
  }
  .home-quick-links-section{
    margin-top:-72px;
    padding:76px 0 34px;
  }
  .home-quick-links-section::before{
    inset:-36px 0 0 0;
  }
  .home-quick-links-section::after{
    top:-24px;
    height:74px;
  }
  .home-quick-links-section > .container{
    margin-top:-12px;
  }
}

/* 2026-04-01 final: no overlap, only smooth blue-to-white transition between hero and quick links */
.home-quick-links-section{
  margin-top:0;
  padding:44px 0 68px;
  background:linear-gradient(180deg, rgba(214,228,244,.96) 0%, rgba(225,236,248,.88) 10%, rgba(236,243,251,.62) 20%, rgba(242,247,253,.28) 30%, #eef4fb 42%, #edf3fa 100%);
}
.home-quick-links-section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:160px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(189,210,233,.42) 0%,
      rgba(204,221,240,.34) 18%,
      rgba(220,233,246,.22) 36%,
      rgba(233,242,250,.10) 58%,
      rgba(238,244,251,0) 100%);
  opacity:1;
}
.home-quick-links-section::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:120px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(111,157,209,.06) 0%,
      rgba(255,255,255,0) 100%);
  opacity:1;
}
.home-quick-links-section > .container{
  position:relative;
  z-index:1;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.home-quick-links-intro{
  margin:0 auto 24px;
}
@media (max-width: 920px){
  .home-quick-links-section{
    margin-top:0;
    padding:36px 0 48px;
  }
  .home-quick-links-section::before{height:128px;}
  .home-quick-links-section::after{height:96px;}
}
@media (max-width: 640px){
  .home-quick-links-section{
    margin-top:0;
    padding:28px 0 34px;
  }
  .home-quick-links-section::before{height:96px;}
  .home-quick-links-section::after{height:72px;}
}

/* 2026-04-01 final follow-up: keep quick-links intro below the seam and blend with blurred hero fragment */
.home-quick-links-section{
  margin-top:0;
  padding:0 0 68px;
  background:linear-gradient(180deg,
    rgba(205,221,240,.98) 0%,
    rgba(214,228,244,.92) 10%,
    rgba(225,236,248,.78) 22%,
    rgba(236,243,251,.54) 36%,
    rgba(243,247,252,.22) 48%,
    #eef4fb 62%,
    #edf3fa 100%);
}
.home-quick-links-section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:188px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(205,221,240,.88) 0%,
      rgba(212,227,244,.72) 16%,
      rgba(223,235,247,.46) 36%,
      rgba(235,242,250,.18) 60%,
      rgba(238,244,251,0) 100%),
    var(--facet-image) center top / cover no-repeat;
  opacity:.34;
  filter:blur(18px);
  transform:scale(1.05);
  transform-origin:top center;
}
.home-quick-links-section::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:156px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(106,149,201,.10) 0%,
      rgba(178,206,235,.08) 18%,
      rgba(228,238,248,.12) 46%,
      rgba(255,255,255,0) 100%);
  opacity:1;
}
.home-quick-links-section > .container{
  position:relative;
  z-index:2;
  margin-top:0;
  padding-top:122px;
}
.home-quick-links-intro{
  margin:0 auto 26px;
}

@media (max-width: 920px){
  .home-quick-links-section{
    padding:0 0 48px;
  }
  .home-quick-links-section::before{
    height:154px;
    filter:blur(14px);
  }
  .home-quick-links-section::after{
    height:126px;
  }
  .home-quick-links-section > .container{
    padding-top:98px;
  }
}

@media (max-width: 640px){
  .home-quick-links-section{
    padding:0 0 34px;
  }
  .home-quick-links-section::before{
    height:118px;
    filter:blur(10px);
  }
  .home-quick-links-section::after{
    height:92px;
  }
  .home-quick-links-section > .container{
    padding-top:72px;
  }
}

/* 2026-04-01 final follow-up 2: true seamless hero -> quick-links fade without overlap */
.home-quick-links-section{
  margin-top:0;
  padding:0 0 68px;
  background:
    linear-gradient(180deg,
      rgba(207,223,241,.995) 0%,
      rgba(208,224,242,.985) 8%,
      rgba(210,225,243,.96) 16%,
      rgba(214,228,244,.88) 28%,
      rgba(223,234,246,.72) 40%,
      rgba(233,241,249,.48) 54%,
      rgba(241,246,252,.22) 68%,
      #eef4fb 82%,
      #edf3fa 100%);
}
.home-quick-links-section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:238px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(207,223,241,.98) 0%,
      rgba(208,224,242,.92) 14%,
      rgba(211,226,243,.74) 30%,
      rgba(218,231,245,.46) 48%,
      rgba(228,238,248,.18) 68%,
      rgba(238,244,251,0) 100%),
    linear-gradient(135deg,
      rgba(11,39,155,.10) 0%,
      rgba(39,125,223,.07) 28%,
      rgba(91,194,255,.05) 46%,
      rgba(255,255,255,0) 76%),
    var(--facet-image) center top / cover no-repeat;
  opacity:.50;
  filter:blur(26px);
  transform:scale(1.06);
  transform-origin:top center;
}
.home-quick-links-section::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:210px;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(245,249,253,.10) 24%,
      rgba(245,249,253,.34) 48%,
      rgba(245,249,253,.78) 76%,
      rgba(238,244,251,0) 100%);
  opacity:1;
}
.home-quick-links-section > .container{
  position:relative;
  z-index:2;
  margin-top:0;
  padding-top:156px;
}
.home-quick-links-intro{
  margin:0 auto 26px;
}

@media (max-width: 920px){
  .home-quick-links-section{
    padding:0 0 48px;
  }
  .home-quick-links-section::before{
    height:196px;
    filter:blur(20px);
  }
  .home-quick-links-section::after{
    height:168px;
  }
  .home-quick-links-section > .container{
    padding-top:126px;
  }
}

@media (max-width: 640px){
  .home-quick-links-section{
    padding:0 0 34px;
  }
  .home-quick-links-section::before{
    height:146px;
    filter:blur(14px);
  }
  .home-quick-links-section::after{
    height:126px;
  }
  .home-quick-links-section > .container{
    padding-top:92px;
  }
}

/* 2026-04-01 follow-up: keep more of the shared background visible on quick-links seam */
.hero-home-welcome{
  padding-bottom:124px;
  margin-bottom:0;
}
.hero-home-welcome::after{
  background:
    radial-gradient(circle at 14% 26%, rgba(7,26,156,.14) 0%, rgba(7,26,156,.05) 18%, rgba(7,26,156,0) 44%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 32%),
    linear-gradient(180deg,
      rgba(245,250,255,.05) 0%,
      rgba(241,247,253,.10) 44%,
      rgba(225,236,247,.36) 72%,
      rgba(211,226,243,.72) 88%,
      rgba(204,220,239,.94) 100%);
}
.hero-home-welcome > .container::after{
  bottom:-18px;
  height:136px;
  background:linear-gradient(180deg,
    rgba(233,241,250,0) 0%,
    rgba(221,233,246,.22) 32%,
    rgba(210,225,242,.62) 72%,
    rgba(204,220,239,.94) 100%);
}

.home-quick-links-section{
  margin-top:0;
  padding:0 0 68px;
  background:
    linear-gradient(180deg,
      rgba(203,219,239,.98) 0%,
      rgba(203,220,239,.96) 8%,
      rgba(205,221,240,.92) 16%,
      rgba(209,224,242,.86) 26%,
      rgba(215,228,244,.76) 38%,
      rgba(223,234,246,.62) 50%,
      rgba(232,240,249,.42) 64%,
      rgba(239,246,252,.22) 78%,
      #eef4fb 90%,
      #edf3fa 100%);
}
.home-quick-links-section::before{
  inset:0 0 auto 0;
  height:286px;
  background:
    linear-gradient(180deg,
      rgba(203,219,239,.72) 0%,
      rgba(204,220,239,.58) 14%,
      rgba(206,222,240,.38) 30%,
      rgba(212,226,243,.20) 50%,
      rgba(224,235,246,.08) 70%,
      rgba(238,244,251,0) 100%),
    linear-gradient(135deg,
      rgba(11,39,155,.10) 0%,
      rgba(39,125,223,.08) 28%,
      rgba(91,194,255,.06) 46%,
      rgba(255,255,255,0) 78%),
    var(--facet-image) center top / cover no-repeat;
  opacity:.84;
  filter:blur(11px);
  transform:scale(1.018);
}
.home-quick-links-section::after{
  top:0;
  height:236px;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(245,249,253,.03) 24%,
      rgba(245,249,253,.10) 46%,
      rgba(245,249,253,.24) 68%,
      rgba(245,249,253,.46) 86%,
      rgba(238,244,251,0) 100%);
}
.home-quick-links-section > .container{
  padding-top:18px;
}
.home-quick-links-intro{
  margin:0 auto 26px;
}

@media (max-width: 920px){
  .home-quick-links-section::before{height:244px;filter:blur(10px);opacity:.80;}
  .home-quick-links-section::after{height:198px;}
  .home-quick-links-section > .container{padding-top:154px;}
}

@media (max-width: 640px){
  .home-quick-links-section::before{height:184px;filter:blur(8px);opacity:.76;}
  .home-quick-links-section::after{height:150px;}
  .home-quick-links-section > .container{padding-top:114px;}
}


/* 2026-04-01: hero action below logo + contact form validation/feedback */
.hero-visual-frame-welcome{display:flex;flex-direction:column;gap:18px;justify-content:center;padding-bottom:28px}
.hero-welcome-stage-logo-only{min-height:320px}
.hero-logo-frame{padding:18px 24px}
.hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%,280px);max-height:180px;object-fit:contain}
.hero-visual-actions{position:relative;z-index:4;display:flex;justify-content:center;align-items:center}
.hero-visual-action-btn{min-width:240px;box-shadow:0 18px 36px rgba(16,46,106,.18)}
.contact-form [aria-invalid="true"]{border-color:rgba(185,28,28,.45)!important;box-shadow:0 0 0 4px rgba(185,28,28,.08)}
.form-status{min-height:24px}
.admin-feedback-item{display:grid;gap:14px}
.admin-feedback-message{padding:14px 16px;border-radius:16px;background:rgba(47,103,199,.05);border:1px solid var(--line);color:var(--text);line-height:1.65;white-space:normal;word-break:break-word}
@media (max-width: 920px){.hero-welcome-stage-logo-only{min-height:260px}.hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%,240px);max-height:150px}.hero-visual-action-btn{min-width:0;width:100%}}
@media (max-width: 640px){.hero-visual-frame-welcome{gap:14px;padding-bottom:20px}.hero-logo-frame{padding:14px 16px}.hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%,210px);max-height:132px}}


/* 2026-04-01: alerts */
.site-alert-stack{position:fixed;right:20px;bottom:20px;z-index:1400;display:grid;gap:12px;max-width:min(420px,calc(100vw - 32px))}
.site-alert{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:rgba(10,15,30,.94);color:#fff;box-shadow:0 18px 46px rgba(7,12,28,.28);opacity:1;transform:translateY(0);transition:opacity .18s ease,transform .18s ease}
.site-alert.is-hiding{opacity:0;transform:translateY(8px)}
.site-alert.is-success{border-color:rgba(34,197,94,.32)}
.site-alert.is-error{border-color:rgba(239,68,68,.32)}
.site-alert-text{flex:1;line-height:1.45}
.site-alert-close{appearance:none;border:0;background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer;opacity:.8}
.site-alert-close:hover{opacity:1}


/* 2026-04-01 patch: readable hero/page containers, aligned visual frame, contained quick-link glow, admin editors */
.page-hero.small .container{
  background:linear-gradient(180deg, rgba(255,255,255,.90), rgba(255,255,255,.74));
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 20px 48px rgba(26,55,93,.10);
}
.page-hero.small .container::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.26), rgba(255,255,255,.08));
}
.page-hero.small h1,
.page-hero.small .lead{
  position:relative;
  z-index:1;
}
.page-hero.small h1{color:#0f3158;text-shadow:0 1px 0 rgba(255,255,255,.72)}
.page-hero.small .lead{color:#415f7b;font-weight:500}

.hero-visual{
  min-height:460px;
}
.hero-visual-frame,
.hero-visual-frame-welcome{
  box-sizing:border-box;
  width:min(100%, 520px);
  min-height:460px;
  padding:24px;
  border-width:1px;
  border-style:solid;
  border-radius:32px;
}
.hero-welcome-stage,
.hero-welcome-stage-logo-only{
  min-height:calc(460px - 48px);
}
.hero-logo-frame{
  width:min(100%, 100%);
  box-sizing:border-box;
}
.hero-visual-actions{margin-top:18px}
@media (max-width: 1180px){
  .hero-visual,.hero-visual-frame,.hero-visual-frame-welcome{min-height:400px}
  .hero-welcome-stage,.hero-welcome-stage-logo-only{min-height:calc(400px - 48px)}
}
@media (max-width: 920px){
  .hero-visual,.hero-visual-frame,.hero-visual-frame-welcome{min-height:340px}
  .hero-welcome-stage,.hero-welcome-stage-logo-only{min-height:calc(340px - 44px)}
  .hero-visual-frame,.hero-visual-frame-welcome{padding:22px;border-radius:26px}
}
@media (max-width: 640px){
  .hero-visual,.hero-visual-frame,.hero-visual-frame-welcome{min-height:292px}
  .hero-welcome-stage,.hero-welcome-stage-logo-only{min-height:calc(292px - 36px)}
  .hero-visual-frame,.hero-visual-frame-welcome{padding:18px;border-radius:22px}
}

.home-quick-link{
  overflow:hidden;
  isolation:isolate;
}
.home-quick-link::before{
  left:0;
  right:0;
  width:auto;
  border-radius:inherit;
  height:100%;
  background:
    radial-gradient(circle at 16% 12%, rgba(255,255,255,.24) 0%, rgba(255,255,255,0) 24%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
  opacity:.9;
  z-index:0;
}
.home-quick-link > *{position:relative;z-index:1}
.home-quick-link::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:4px;
  border-radius:inherit;
  background:linear-gradient(90deg, rgba(8,39,150,.95), rgba(0,184,255,.82));
  z-index:1;
}
.home-quick-link:hover,
.home-quick-link:focus-visible{
  box-shadow:0 24px 52px rgba(16,46,106,.14), inset 0 1px 0 rgba(255,255,255,.52);
}

.admin-grid-tools{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-nav-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.admin-nav-item textarea{min-height:110px}
.admin-file-line{display:grid;gap:8px;padding:12px 14px;border-radius:14px;background:rgba(47,103,199,.05);border:1px solid rgba(47,103,199,.10);word-break:break-word}
.resource-card-external .pill{background:rgba(47,103,199,.10);color:var(--brand)}
@media (max-width: 1100px){
  .admin-grid-tools,.admin-nav-editor{grid-template-columns:1fr}
}

/* hero visual final polish */
.hero-visual{
  position:relative;
  min-height:460px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-visual-glow{
  filter:blur(14px);
  opacity:.88;
}
.hero-visual-frame.hero-visual-frame-welcome{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:22px;
  width:min(100%, 520px);
  min-height:460px;
  padding:26px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 100%),
    linear-gradient(145deg, rgba(7,31,74,.28) 0%, rgba(17,84,145,.18) 46%, rgba(255,255,255,.08) 100%);
  box-shadow:
    0 28px 80px rgba(5,29,68,.28),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(12px);
}
.hero-visual-frame.hero-visual-frame-welcome::before{
  content:'';
  position:absolute;
  inset:1px;
  border-radius:33px;
  background:
    radial-gradient(circle at 18% 16%, rgba(255,255,255,.18), transparent 34%),
    radial-gradient(circle at 84% 20%, rgba(122,218,255,.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 28%, rgba(255,255,255,.04) 100%);
  pointer-events:none;
}
.hero-visual-frame.hero-visual-frame-welcome::after{
  content:'';
  position:absolute;
  left:18px;
  right:18px;
  bottom:82px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
  pointer-events:none;
}
.hero-visual-grid{
  inset:0;
  opacity:.62;
  background-size:auto, 26px 26px, 26px 26px;
}
.hero-welcome-stage.hero-welcome-stage-logo-only{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1 1 auto;
  min-height:324px;
  padding:18px 8px 8px;
}
.hero-welcome-stage.hero-welcome-stage-logo-only::before{
  width:380px;
  height:380px;
  transform:translate(-50%,-51%);
  background:radial-gradient(circle, rgba(255,255,255,.82) 0%, rgba(255,255,255,.32) 34%, rgba(255,255,255,0) 72%);
}
.hero-welcome-stage.hero-welcome-stage-logo-only::after{
  width:320px;
  height:320px;
  transform:translate(-50%,-51%);
  background:radial-gradient(circle, rgba(94,220,255,.24) 0%, rgba(48,115,210,.12) 38%, rgba(48,115,210,0) 74%);
}
.hero-welcome-orbit{
  border-color:rgba(255,255,255,.16);
  box-shadow:0 0 0 1px rgba(255,255,255,.03) inset;
}
.hero-logo-frame{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(100%, 318px);
  min-height:214px;
  margin:0 auto;
  padding:24px 26px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:32px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.78) 0%, rgba(255,255,255,.42) 100%),
    linear-gradient(145deg, rgba(255,255,255,.18) 0%, rgba(132,214,255,.12) 100%);
  box-shadow:
    0 22px 54px rgba(8,31,76,.18),
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -1px 0 rgba(255,255,255,.34);
}
.hero-logo-frame::before{
  content:'';
  position:absolute;
  inset:10px;
  border-radius:24px;
  border:1px solid rgba(17,86,150,.10);
  pointer-events:none;
}
.hero-welcome-stage-logo-only .hero-visual-logo{
  position:relative;
  z-index:2;
  width:min(100%, 272px);
  max-height:152px;
  object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(255,255,255,.86)) drop-shadow(0 18px 42px rgba(7,40,115,.24));
}
.hero-visual-actions{
  position:relative;
  z-index:4;
  display:flex;
  justify-content:center;
  align-items:center;
  padding-top:2px;
}
.hero-visual-action-btn{
  min-width:220px;
  padding:14px 24px;
  border-radius:16px;
  box-shadow:0 14px 32px rgba(5,41,114,.26), inset 0 1px 0 rgba(255,255,255,.24);
}
.hero-visual-action-btn:hover,
.hero-visual-action-btn:focus-visible{
  transform:translateY(-2px);
}
@media (max-width: 1180px){
  .hero-visual{min-height:416px}
  .hero-visual-frame.hero-visual-frame-welcome{min-height:416px}
  .hero-welcome-stage.hero-welcome-stage-logo-only{min-height:286px}
}
@media (max-width: 920px){
  .hero-visual{min-height:352px}
  .hero-visual-frame.hero-visual-frame-welcome{
    min-height:352px;
    padding:22px;
    border-radius:28px;
    backdrop-filter:none;
  }
  .hero-visual-frame.hero-visual-frame-welcome::before{border-radius:27px}
  .hero-welcome-stage.hero-welcome-stage-logo-only{min-height:238px;padding:8px 4px 4px}
  .hero-welcome-stage.hero-welcome-stage-logo-only::before{width:296px;height:296px}
  .hero-welcome-stage.hero-welcome-stage-logo-only::after{width:244px;height:244px}
  .hero-logo-frame{width:min(100%, 280px);min-height:184px;padding:20px 22px;border-radius:26px}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 236px);max-height:136px}
  .hero-visual-action-btn{min-width:0;width:100%}
}
@media (max-width: 640px){
  .hero-visual{min-height:300px}
  .hero-visual-frame.hero-visual-frame-welcome{min-height:300px;padding:18px;border-radius:24px;gap:16px}
  .hero-visual-frame.hero-visual-frame-welcome::before{border-radius:23px}
  .hero-visual-frame.hero-visual-frame-welcome::after{left:14px;right:14px;bottom:72px}
  .hero-welcome-stage.hero-welcome-stage-logo-only{min-height:196px}
  .hero-logo-frame{width:min(100%, 236px);min-height:154px;padding:16px 16px;border-radius:22px}
  .hero-logo-frame::before{inset:8px;border-radius:16px}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 198px);max-height:112px}
  .hero-visual-action-btn{padding:13px 18px}
}

/* logo-only hero cleanup: no white frame behind logo */
.hero-logo-frame{
  width:min(100%, 318px);
  min-height:214px;
  padding:10px 8px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.hero-logo-frame::before{
  display:none;
}
.hero-welcome-stage-logo-only .hero-visual-logo{
  width:min(100%, 300px);
  max-height:168px;
  filter:drop-shadow(0 14px 34px rgba(18,59,136,.22)) drop-shadow(0 10px 26px rgba(132,227,255,.20));
}
@media (max-width: 920px){
  .hero-logo-frame{min-height:182px;padding:8px 6px}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 254px);max-height:146px}
}
@media (max-width: 640px){
  .hero-logo-frame{width:min(100%, 220px);min-height:138px;padding:4px 2px}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 206px);max-height:112px}
}

/* refined floating logo placement without frame */
.hero-welcome-stage.hero-welcome-stage-logo-only{
  align-items:center;
  justify-content:center;
  padding:10px 8px 0;
}
.hero-welcome-stage.hero-welcome-stage-logo-only::before{
  width:340px;
  height:340px;
  transform:translate(-50%,-54%);
  background:radial-gradient(circle, rgba(255,255,255,.44) 0%, rgba(255,255,255,.14) 34%, rgba(255,255,255,0) 72%);
  filter:blur(2px);
}
.hero-welcome-stage.hero-welcome-stage-logo-only::after{
  width:286px;
  height:286px;
  transform:translate(-50%,-54%);
  background:radial-gradient(circle, rgba(96,224,255,.22) 0%, rgba(45,112,213,.10) 40%, rgba(45,112,213,0) 74%);
}
.hero-logo-frame{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(100%, 332px);
  min-height:208px;
  padding:0;
  margin:0 auto;
  transform:translateY(-6px);
}
.hero-logo-frame::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:14px;
  width:54%;
  height:18px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(7,36,94,.22) 0%, rgba(7,36,94,.10) 42%, rgba(7,36,94,0) 74%);
  filter:blur(8px);
  pointer-events:none;
}
.hero-welcome-stage-logo-only .hero-visual-logo{
  width:min(100%, 308px);
  max-height:172px;
  object-fit:contain;
  transform:translateY(-2px);
  filter:drop-shadow(0 18px 44px rgba(13,55,136,.18)) drop-shadow(0 8px 22px rgba(122,224,255,.16));
}
@media (max-width: 920px){
  .hero-welcome-stage.hero-welcome-stage-logo-only{padding:6px 4px 0}
  .hero-welcome-stage.hero-welcome-stage-logo-only::before{width:286px;height:286px}
  .hero-welcome-stage.hero-welcome-stage-logo-only::after{width:236px;height:236px}
  .hero-logo-frame{width:min(100%, 284px);min-height:178px;transform:translateY(-4px)}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 262px);max-height:148px}
}
@media (max-width: 640px){
  .hero-logo-frame{width:min(100%, 226px);min-height:136px;transform:translateY(-2px)}
  .hero-logo-frame::after{width:58%;height:14px;bottom:8px}
  .hero-welcome-stage-logo-only .hero-visual-logo{width:min(100%, 208px);max-height:116px}
}

.admin-feedback-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.admin-feedback-actions form{margin:0}

@media (max-width: 640px){
  .page-back,
  .back-link{width:auto;max-width:100%;font-size:14px;padding:10px 13px}
}


.materials-sections-panel{position:relative;margin:0 0 24px;padding:18px;border:1px solid rgba(47,103,199,.12);border-radius:22px;background:linear-gradient(180deg,rgba(247,250,255,.96),rgba(255,255,255,.98));box-shadow:0 14px 38px rgba(20,59,120,.08)}
.materials-sections-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 14px}
.materials-sections-panel__eyebrow{margin:0 0 6px;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.materials-sections-panel__title{margin:0;font-size:20px;line-height:1.2;color:var(--text)}
.materials-sections-panel__count{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:999px;background:rgba(47,103,199,.1);border:1px solid rgba(47,103,199,.12);font-weight:800;color:var(--brand);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.materials-sections-strip{display:flex;flex-wrap:wrap;gap:10px;margin:0;align-items:stretch}
.materials-section-chip{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:46px;max-width:100%;padding:11px 16px;border-radius:16px;border:1px solid rgba(47,103,199,.14);background:#fff;color:var(--text);font-weight:700;line-height:1.25;box-shadow:0 8px 20px rgba(19,54,120,.06);transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.materials-section-chip__dot{width:9px;height:9px;border-radius:999px;flex:0 0 9px;background:linear-gradient(180deg,#7ad3ff,#2f67c7);box-shadow:0 0 0 4px rgba(47,103,199,.08)}
.materials-section-chip__text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.materials-section-chip:hover,.materials-section-chip:focus-visible{background:rgba(47,103,199,.05);border-color:rgba(47,103,199,.26);color:var(--brand);box-shadow:0 12px 26px rgba(19,54,120,.1);transform:translateY(-1px)}
.materials-section-chip.is-active{background:linear-gradient(180deg,rgba(47,103,199,.12),rgba(47,103,199,.08));border-color:rgba(47,103,199,.3);color:var(--brand)}
.materials-section-chip.is-active .materials-section-chip__dot{background:linear-gradient(180deg,#2f67c7,#1e54b3);box-shadow:0 0 0 4px rgba(47,103,199,.14)}
@media (max-width: 920px){
  .materials-sections-panel{padding:16px;border-radius:20px}
  .materials-sections-panel__title{font-size:18px}
  .materials-sections-strip{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;scrollbar-width:thin;scroll-snap-type:x proximity}
  .materials-section-chip{min-width:220px;max-width:320px;scroll-snap-align:start}
}
@media (max-width: 640px){
  .materials-sections-panel__head{align-items:center}
  .materials-sections-panel__eyebrow{font-size:11px}
  .materials-sections-panel__title{font-size:16px}
  .materials-sections-panel__count{min-width:38px;height:38px;padding:0 10px;font-size:13px}
  .materials-section-chip{min-width:200px;max-width:280px;min-height:44px;padding:10px 14px;border-radius:14px;font-size:14px}
}

.admin-actions-end{justify-content:flex-end}

/* nav compact refinement: keep container width stable */
.site-nav-main{
  gap:1px;
  padding:4px 5px;
}

.site-nav-main > .nav-link,
.site-nav-main > .nav-group{
  flex:0 1 auto;
  min-width:0;
}

.nav-link,
.nav-group-trigger{
  min-height:40px;
  padding:9px 11px;
  border-radius:12px;
  font-size:13px;
  line-height:1.1;
  box-sizing:border-box;
  flex:0 1 auto;
}

.nav-group-trigger{
  gap:6px;
}

.nav-group-trigger::after{
  width:7px;
  height:7px;
  margin-left:1px;
}

.nav-link:hover,
.nav-group-trigger:hover,
.nav-link:focus-visible,
.nav-group-trigger:focus-visible{
  background:rgba(47,103,199,.075);
  color:var(--brand);
  transform:none;
}

.nav-link.is-active,
.nav-group.is-active > .nav-group-trigger,
.nav-group.is-open > .nav-group-trigger{
  background:linear-gradient(180deg, rgba(47,103,199,.14), rgba(47,103,199,.09));
  color:var(--brand);
  box-shadow:inset 0 0 0 1px rgba(47,103,199,.14);
}

.nav-dropdown{
  padding:8px;
  gap:3px;
}

.nav-dropdown a{
  padding:9px 11px;
  border-radius:11px;
}

.nav-dropdown a:hover,
.nav-dropdown a:focus-visible{
  background:rgba(47,103,199,.075);
  color:var(--brand);
}

.nav-dropdown a.is-active{
  background:rgba(47,103,199,.11);
  box-shadow:inset 0 0 0 1px rgba(47,103,199,.14);
}

@media (max-width: 1180px){
  .site-nav-main{
    gap:0;
    padding:3px 4px;
  }

  .nav-link,
  .nav-group-trigger{
    padding:8px 10px;
    font-size:12px;
  }
}

@media (max-width: 860px){
  .site-nav-main{
    padding:0;
  }

  .nav-link,
  .nav-group-trigger{
    min-height:44px;
    padding:11px 14px;
    font-size:14px;
  }
}

/* ═══════════════════════════════════════════════
   МОБИЛЬНОЕ НИЖНЕЕ МЕНЮ  (≤ 920px)
   ═══════════════════════════════════════════════ */

/* Нижнее меню скрыто на десктопе */
.mob-bottom-nav,
.mob-nav-overlay { display: none }

@media (max-width: 920px) {

  /* ── На главной скрываем всё кроме hero ── */
  .home-quick-links-section { display: none !important }
  body:has(.hero-home-welcome) .section:not(.hero-home-welcome) { display: none !important }

  /* ── Прячем старый hamburger ── */
  .nav-toggle { display: none !important }
  .header-actions { display: none !important }

  /* ── Нижнее меню ── */
  .mob-bottom-nav {
    display: flex;
    align-items: stretch;
    position: fixed;
    bottom: 0; left: 0; right: 0;
    height: 68px;
    background: rgba(255,255,255,.97);
    backdrop-filter: blur(16px) saturate(160%);
    -webkit-backdrop-filter: blur(16px) saturate(160%);
    border-top: 1px solid rgba(47,103,199,.14);
    box-shadow: 0 -4px 28px rgba(25,67,111,.10);
    z-index: 200;
    padding: 0 4px env(safe-area-inset-bottom, 0);
    gap: 0;
  }

  .mob-nav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
  }

  .mob-nav-link,
  .mob-nav-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 100%;
    height: 100%;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--muted);
    padding: 8px 2px 6px;
    transition: color .2s ease;
    text-decoration: none;
    font-family: inherit;
  }

  .mob-nav-link.is-active,
  .mob-nav-group.is-active .mob-nav-btn,
  .mob-nav-group.is-open .mob-nav-btn {
    color: var(--brand);
  }

  .mob-nav-icon {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    transition: transform .2s cubic-bezier(.34,1.56,.64,1);
  }

  .mob-nav-link.is-active .mob-nav-icon,
  .mob-nav-group.is-open .mob-nav-icon {
    transform: translateY(-2px) scale(1.08);
  }

  .mob-nav-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .01em;
    white-space: nowrap;
    line-height: 1;
  }

  /* Активная точка под иконкой */
  .mob-nav-link.is-active::after,
  .mob-nav-group.is-active .mob-nav-btn::after,
  .mob-nav-group.is-open .mob-nav-btn::after {
    content: '';
    position: absolute;
    bottom: 5px;
    width: 4px; height: 4px;
    border-radius: 50%;
    background: var(--brand);
  }

  /* ── Всплывающее меню из нижней навигации ── */
  .mob-nav-popup {
    position: fixed;
    bottom: 68px;
    left: 10px; right: 10px;
    background: #fff;
    border: 1px solid rgba(47,103,199,.15);
    border-radius: 22px;
    box-shadow: 0 -2px 40px rgba(25,67,111,.15), 0 4px 20px rgba(25,67,111,.06);
    z-index: 201;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px) scale(.97);
    transform-origin: bottom center;
    transition: opacity .22s ease, transform .22s cubic-bezier(.34,1.56,.64,1), visibility .22s ease;
    pointer-events: none;
  }

  .mob-nav-group.is-open .mob-nav-popup {
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
  }

  .mob-nav-popup-inner {
    padding: 16px 12px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .mob-nav-popup-title {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--muted);
    padding: 0 10px 8px;
  }

  .mob-nav-popup-link {
    display: block;
    padding: 13px 14px;
    border-radius: 14px;
    font-weight: 700;
    font-size: 15px;
    color: var(--text);
    transition: background .15s ease, color .15s ease;
    text-decoration: none;
  }

  .mob-nav-popup-link:hover {
    background: rgba(47,103,199,.07);
    color: var(--brand);
  }

  .mob-nav-popup-link.is-active {
    background: rgba(47,103,199,.11);
    color: var(--brand);
  }

  /* ── Overlay ── */
  .mob-nav-overlay {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(10,20,50,.28);
    z-index: 199;
    opacity: 0;
    visibility: hidden;
    transition: opacity .22s ease, visibility .22s ease;
  }

  .mob-nav-overlay.is-visible {
    opacity: 1;
    visibility: visible;
  }

  /* ── Добавляем отступ снизу чтобы контент не прятался за меню ── */
  .site-shell { padding-bottom: 68px }
  .site-footer { padding-bottom: calc(28px + env(safe-area-inset-bottom, 0)) }

  /* ── Hero занимает весь экран на мобильном ── */
  .hero-home-welcome {
    min-height: calc(100dvh - 68px - var(--header-height, 64px));
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .mob-nav-label { font-size: 9px }
  .mob-nav-icon { width: 20px; height: 20px }
  .mob-nav-popup { left: 8px; right: 8px }
}

/* ═══════════════════════════════════════════════
   КНОПКИ — GHOST / OUTLINE  +  HERO INTRO ACTIONS
   ═══════════════════════════════════════════════ */

.btn-ghost {
  background: rgba(255,255,255,.15);
  border-color: rgba(255,255,255,.35);
  color: #fff;
  backdrop-filter: blur(6px);
}
.btn-ghost:hover {
  background: rgba(255,255,255,.25);
  border-color: rgba(255,255,255,.55);
}

.btn-outline {
  background: transparent;
  border-color: var(--brand);
  color: var(--brand);
}
.btn-outline:hover {
  background: rgba(47,103,199,.07);
}

/* Группа кнопок в hero-intro (десктоп — под заголовком) */
.hero-home-intro-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
  flex-wrap: wrap;
}
.hero-mobile-conference-action {
  display: none;
  margin-top: 14px;
}
.hero-mobile-conference-action .btn {
  width: 100%;
}

/* Вторая кнопка в hero-visual-actions */
.hero-visual-action-btn-secondary {
  flex: 1;
  min-width: 0;
}
.hero-visual-action-btn-program {
  min-width: 0;
  color: #ffffff;
  background: rgb(83 130 214);
  border: 1px solid rgba(142,184,235,.72);
  box-shadow: 0 14px 30px rgba(18,49,97,.18);
}
.hero-visual-action-btn-program:hover,
.hero-visual-action-btn-program:focus-visible {
  color: #12315f;
  background: linear-gradient(135deg, rgba(255,255,255,1), rgba(236,245,255,.98));
  border-color: rgba(168,203,245,.92);
  box-shadow: 0 18px 34px rgba(18,49,97,.22);
}

/* На мобильных оставляем CTA внутри hero-visual-frame,
   чтобы кнопки жили только в мобильной версии визуального блока */
@media (max-width: 920px) {
  .hero-visual-actions { display: flex }
  .hero-home-intro-actions { display: none }
  .hero-mobile-conference-action { display: flex }
  .hero-visual-actions .btn { flex: 1 1 auto; min-width: 140px }
}

/* На десктопе отдельную мобильную кнопку скрываем */
@media (min-width: 921px) {
  .hero-visual-actions { display: flex }
  .hero-home-intro-actions { display: none }
  .hero-mobile-conference-action { display: none }
}

/* ═══════════════════════════════════════════════
   ДЕСКТОП — АДАПТАЦИЯ ДЛЯ МЕЛКИХ ЭКРАНОВ
   921px – 1280px
   ═══════════════════════════════════════════════ */

/* 921–1280: общий контейнер чуть уже */
@media (min-width: 921px) and (max-width: 1280px) {
  .container { width: calc(100% - 32px) }
}

/* 921–1180: шапка начинает сжиматься */
@media (min-width: 921px) and (max-width: 1180px) {
  .header-row { gap: 10px }

  /* Лого: убираем подпись-слоган, уменьшаем */
  .brand { max-width: 260px; flex: 0 1 260px; gap: 10px }
  .brand-logo { width: 38px; height: 38px }
  .brand-logo-stack { padding: 8px 10px; gap: 8px; border-radius: 18px }
  .brand-text span { display: none }
  .brand-text strong { font-size: 13px }

  /* Навигация: компактнее */
  .site-nav { gap: 6px }
  .site-nav-main { gap: 0; padding: 3px 4px }
  .nav-link, .nav-group-trigger {
    padding: 8px 9px;
    font-size: 12px;
    min-height: 38px;
  }
  .nav-group-trigger::after { width: 6px; height: 6px }

  /* Кнопка конференции: короче */
  .nav-accent {
    padding: 0 12px;
    font-size: 12px;
    min-height: 40px;
    border-radius: 13px;
  }
}

/* 921–1060: прячем кнопку конференции из шапки,
   она остаётся в hero-секции                   */
@media (min-width: 921px) and (max-width: 1060px) {
  .nav-accent { display: none }

  .brand { max-width: 220px; flex: 0 1 220px }
  .brand-text strong { font-size: 12.5px }

  .nav-link, .nav-group-trigger {
    padding: 7px 8px;
    font-size: 11.5px;
  }
}

/* ── Hero-grid на 921–1180: держим 2 колонки, но пропорции ── */
@media (min-width: 921px) and (max-width: 1180px) {
  .hero-grid {
    grid-template-columns: 1fr minmax(280px, 0.72fr);
    gap: 24px;
  }
  .hero h1, .page-hero h1 { font-size: clamp(28px, 3.8vw, 50px) }
}

/* ── Контентные сетки ── */
@media (min-width: 921px) and (max-width: 1060px) {
  .cards.three { grid-template-columns: repeat(2, minmax(0, 1fr)) }
  .resource-list { grid-template-columns: repeat(2, minmax(0, 1fr)) }
  .hero-grid { grid-template-columns: 1fr minmax(260px, 0.68fr); gap: 20px }
}

/* 2026-04-02: conference links dropdown */
.nav-accent-group{position:relative}
.nav-accent-trigger{appearance:none;border:0;cursor:pointer}
.nav-accent-dropdown{right:0;left:auto;min-width:260px}
.nav-accent-dropdown a[target="_blank"]{display:block}

.hero-conference-picker{position:relative;width:100%}
.hero-conference-picker summary{list-style:none;width:100%;justify-content:center}
.hero-conference-picker summary::-webkit-details-marker{display:none}
.hero-conference-picker[open] summary{border-bottom-left-radius:16px;border-bottom-right-radius:16px}
.hero-conference-picker-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 10px);
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.28);
  box-shadow:0 24px 48px rgba(15,23,42,.16);
  z-index:25;
}
.hero-conference-picker-menu a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  color:var(--text);
  font-weight:600;
  background:rgba(47,103,199,.04);
}
.hero-conference-picker-menu a:hover,
.hero-conference-picker-menu a:focus-visible{background:rgba(47,103,199,.10);color:var(--brand)}

@media (max-width: 1060px){
  .nav-accent-group{width:100%;margin-top:8px}
  .nav-accent-trigger{width:100%}
  .nav-accent-dropdown{position:static;min-width:0;margin-top:8px}
}

@media (max-width: 920px){
  .hero-mobile-conference-action,
  .hero-conference-picker{position:relative;z-index:40}

  .hero-conference-picker-menu{
    top:auto;
    bottom:calc(100% + 10px);
    left:0;
    right:0;
    max-height:min(46dvh, 320px);
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
}

/* materials nested navigation fix */
.site-nav-main > .nav-group,
.nav-subgroup{position:relative}
.nav-group > .nav-dropdown{min-width:240px}
.nav-subgroup-trigger{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 12px;border:0;background:transparent;color:var(--text);font:inherit;font-weight:600;
  border-radius:12px;cursor:pointer;text-align:left;
}
.nav-subgroup-trigger::after{
  content:'';width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(-45deg);opacity:.72;flex:0 0 auto;
}
.nav-subgroup:hover > .nav-subgroup-trigger,
.nav-subgroup.is-open > .nav-subgroup-trigger,
.nav-subgroup-trigger:focus-visible{background:rgba(47,103,199,.06);color:var(--brand);outline:none}
.nav-subdropdown{
  top:-8px;left:calc(100% - 8px);right:auto;min-width:220px;
}
@media (min-width: 921px){
  .nav-subgroup > .nav-subdropdown{position:absolute;display:block;opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none}
  .nav-subgroup:hover > .nav-subdropdown,
  .nav-subgroup:focus-within > .nav-subdropdown,
  .nav-subgroup.is-open > .nav-subdropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
}
@media (max-width: 920px){
  .nav-subgroup-trigger{padding:12px 14px;background:rgba(47,103,199,.04)}
  .nav-subdropdown{position:static;margin:8px 0 0 10px;display:none;box-shadow:none;border-radius:14px;background:rgba(47,103,199,.05)}
  .nav-subgroup.is-open > .nav-subdropdown{display:grid}
}

.mob-nav-subgroup{display:grid;gap:6px}
.mob-nav-popup-toggle{justify-content:space-between}
.mob-nav-popup-toggle::after{
  content:'';width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);opacity:.72
}
.mob-nav-subgroup.is-open .mob-nav-popup-toggle::after{transform:rotate(225deg)}
.mob-nav-sublist{display:grid;gap:6px;padding:0 0 0 10px}
.mob-nav-popup-sublink{background:rgba(47,103,199,.04)}


/* 2026-04-06 stream button on welcome card: separate admin-managed CTA without increasing card height */
.hero-visual-actions{
  gap:10px;
  flex-wrap:wrap;
}
.hero-visual-actions .btn{
  flex:1 1 0;
}
.hero-stream-action-btn{
  position:relative;
  isolation:isolate;
  min-width:0;
  padding:14px 18px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.68);
  background:linear-gradient(135deg, rgba(255,73,73,.98) 0%, rgba(216,32,32,.96) 54%, rgba(144,15,26,.96) 100%);
  color:#fff;
  box-shadow:0 16px 34px rgba(172,18,33,.24), 0 0 0 1px rgba(255,255,255,.10) inset;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:800;
  letter-spacing:.01em;
  overflow:hidden;
  white-space:nowrap;
}
.hero-stream-action-btn::before{
  content:'';
  position:absolute;
  top:-120%;
  left:-38%;
  width:42%;
  height:320%;
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.20) 40%, rgba(255,255,255,.72) 50%, rgba(255,255,255,.20) 60%, rgba(255,255,255,0) 100%);
  transform:rotate(18deg);
  animation:heroStreamShine 3.2s ease-in-out infinite;
  pointer-events:none;
  z-index:-1;
}
.hero-stream-action-btn::after{
  content:'';
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  box-shadow:0 0 0 0 rgba(255,73,73,.34);
  animation:heroStreamPulse 1.8s ease-out infinite;
  pointer-events:none;
}
.hero-stream-action-btn:hover,
.hero-stream-action-btn:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 20px 40px rgba(172,18,33,.30), 0 0 0 1px rgba(255,255,255,.16) inset;
}
.hero-stream-action-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.72);
  animation:heroStreamDot 1.2s ease-in-out infinite;
  flex:0 0 auto;
}
@keyframes heroStreamShine{
  0%, 16% { transform:translateX(-220%) rotate(18deg); opacity:0; }
  24% { opacity:.92; }
  40% { transform:translateX(420%) rotate(18deg); opacity:0; }
  100% { transform:translateX(420%) rotate(18deg); opacity:0; }
}
@keyframes heroStreamPulse{
  0% { box-shadow:0 0 0 0 rgba(255,73,73,.34); }
  70% { box-shadow:0 0 0 10px rgba(255,73,73,0); }
  100% { box-shadow:0 0 0 0 rgba(255,73,73,0); }
}
@keyframes heroStreamDot{
  0%, 100% { opacity:1; box-shadow:0 0 0 0 rgba(255,255,255,.64); }
  50% { opacity:.45; box-shadow:0 0 0 8px rgba(255,255,255,0); }
}
@media (max-width: 920px){
  .hero-visual-actions .btn{flex:1 1 100%;}
  .hero-stream-action-btn{padding:13px 16px;}
}
@media (prefers-reduced-motion: reduce){
  .hero-stream-action-btn::before,
  .hero-stream-action-btn::after,
  .hero-stream-action-dot{animation:none;}
}

/* 2026-04-06 revision: stacked hero CTA, non-stretched single button, refined stream glow */
.hero-visual-frame-welcome .hero-visual-actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:100%;
  margin-top:14px;
}
.hero-visual-frame-welcome .hero-visual-actions .btn{
  flex:0 0 auto;
  width:min(100%, 248px);
  min-width:0;
  max-width:248px;
}
.hero-visual-frame-welcome .hero-visual-action-btn-program,
.hero-visual-frame-welcome .hero-stream-action-btn{
  min-height:48px;
}
.hero-stream-action-btn{
  position:relative;
  isolation:isolate;
  padding:13px 18px;
  border-radius:17px;
  border:1px solid rgba(255,255,255,.74);
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.34), rgba(255,255,255,0) 28%),
    linear-gradient(135deg, rgba(255,94,94,.99) 0%, rgba(225,42,42,.98) 46%, rgba(158,18,38,.98) 100%);
  color:#fff;
  box-shadow:
    0 14px 30px rgba(165,18,36,.22),
    0 0 0 1px rgba(255,255,255,.10) inset,
    0 8px 18px rgba(255,94,94,.16);
  overflow:hidden;
  white-space:nowrap;
  animation:heroStreamFloat 3.4s ease-in-out infinite;
}
.hero-stream-action-btn::before{
  content:'';
  position:absolute;
  inset:-18% -35%;
  background:
    linear-gradient(115deg, rgba(255,255,255,0) 22%, rgba(255,255,255,.12) 36%, rgba(255,255,255,.68) 50%, rgba(255,255,255,.10) 64%, rgba(255,255,255,0) 76%);
  transform:translateX(-72%) skewX(-18deg);
  animation:heroStreamSweep 3.8s cubic-bezier(.4,0,.2,1) infinite;
  pointer-events:none;
  z-index:-1;
}
.hero-stream-action-btn::after{
  content:'';
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:radial-gradient(circle at 50% 50%, rgba(255,255,255,.18), rgba(255,255,255,0) 64%);
  opacity:.0;
  animation:heroStreamAura 2.8s ease-in-out infinite;
  pointer-events:none;
}
.hero-stream-action-btn:hover,
.hero-stream-action-btn:focus-visible{
  transform:translateY(-2px) scale(1.01);
  box-shadow:
    0 18px 38px rgba(165,18,36,.28),
    0 0 0 1px rgba(255,255,255,.16) inset,
    0 10px 24px rgba(255,94,94,.22);
}
.hero-stream-action-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.72), 0 0 16px rgba(255,255,255,.72);
  animation:heroStreamBeacon 1.55s ease-in-out infinite;
}
@keyframes heroStreamFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-1px)}
}
@keyframes heroStreamSweep{
  0%,18%{transform:translateX(-88%) skewX(-18deg);opacity:0}
  24%{opacity:.92}
  42%{transform:translateX(92%) skewX(-18deg);opacity:0}
  100%{transform:translateX(92%) skewX(-18deg);opacity:0}
}
@keyframes heroStreamAura{
  0%,100%{opacity:0;transform:scale(.96)}
  42%{opacity:.52;transform:scale(1)}
  58%{opacity:.18;transform:scale(1.03)}
}
@keyframes heroStreamBeacon{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,255,255,.60), 0 0 16px rgba(255,255,255,.70)}
  50%{opacity:.48;box-shadow:0 0 0 8px rgba(255,255,255,0), 0 0 22px rgba(255,255,255,.88)}
}
@media (max-width: 920px){
  .hero-visual-frame-welcome .hero-visual-actions{gap:9px;margin-top:12px}
  .hero-visual-frame-welcome .hero-visual-actions .btn{width:min(100%, 236px);max-width:236px}
  .hero-stream-action-btn{padding:12px 16px}
}
@media (max-width: 640px){
  .hero-visual-frame-welcome .hero-visual-actions .btn{width:min(100%, 228px);max-width:228px}
}
@media (prefers-reduced-motion: reduce){
  .hero-stream-action-btn,
  .hero-stream-action-btn::before,
  .hero-stream-action-btn::after,
  .hero-stream-action-dot{animation:none}
}


/* 2026-04-06 conference links grouped by date */
.hero-conference-picker-group{display:grid;gap:8px;padding-top:4px}
.hero-conference-picker-group + .hero-conference-picker-group{padding-top:8px;border-top:1px solid rgba(148,163,184,.18)}
.hero-conference-picker-date{padding:0 4px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hero-conference-picker-links{display:grid;gap:8px}
.footer-line-sub{padding-left:14px}


/* admin conference links layout fix */
[data-conference-links-list],
[data-material-sections-list]{
  grid-template-columns:1fr;
}

[data-conference-link-row],
[data-material-section-row]{
  min-width:0;
}

[data-conference-link-row] .admin-row-2,
[data-material-section-row] .admin-row-2{
  grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);
}

[data-conference-link-row] label,
[data-material-section-row] label,
[data-conference-link-row] input,
[data-material-section-row] input,
[data-conference-link-row] textarea,
[data-material-section-row] textarea{
  min-width:0;
}

[data-conference-link-row] .admin-actions,
[data-material-section-row] .admin-actions{
  flex-wrap:wrap;
}

[data-conference-link-row] .btn,
[data-material-section-row] .btn{
  width:auto;
  max-width:100%;
}

@media (max-width: 640px){
  [data-conference-link-row] .admin-row-2,
  [data-material-section-row] .admin-row-2{
    grid-template-columns:1fr;
  }

  [data-conference-link-row] .btn,
  [data-material-section-row] .btn{
    width:100%;
  }
}


/* 2026-04-06: feedback QR on desktop + contacts CTA */
.admin-separator{
  width:100%;
  height:1px;
  border:0;
  margin:6px 0 2px;
  background:linear-gradient(90deg, rgba(47,103,199,0), rgba(47,103,199,.24), rgba(47,103,199,0));
}

.hero-feedback-qr{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:110;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  width:164px;
  padding:12px 12px 14px;
  overflow:hidden;
  isolation:isolate;
  text-decoration:none;
  color:#12355f;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.72);
  background:
    radial-gradient(circle at top, rgba(89,183,255,.22), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(241,247,255,.94));
  box-shadow:0 24px 54px rgba(12,33,74,.20), 0 14px 30px rgba(47,103,199,.14);
  backdrop-filter:blur(14px) saturate(155%);
  -webkit-backdrop-filter:blur(14px) saturate(155%);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.hero-feedback-qr::before,
.hero-feedback-qr::after{
  content:"";
  position:absolute;
  inset:auto;
  pointer-events:none;
}
.hero-feedback-qr::before{
  top:-34%;
  left:-28%;
  width:132px;
  height:132px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(78,167,255,.28), rgba(78,167,255,0));
  filter:blur(4px);
}
.hero-feedback-qr::after{
  top:-18%;
  right:-52%;
  width:96px;
  height:180%;
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.62), rgba(255,255,255,0));
  transform:rotate(24deg);
  opacity:.42;
  transition:transform .44s ease, opacity .44s ease;
}
.hero-feedback-qr:hover,
.hero-feedback-qr:focus-visible{
  transform:translateY(-5px) scale(1.01);
  border-color:rgba(47,103,199,.30);
  box-shadow:0 30px 64px rgba(12,33,74,.24), 0 18px 34px rgba(47,103,199,.16);
}
.hero-feedback-qr:hover::after,
.hero-feedback-qr:focus-visible::after{
  transform:translateX(-22px) rotate(24deg);
  opacity:.72;
}
.hero-feedback-qr img,
.hero-feedback-qr-badge,
.hero-feedback-qr-caption{position:relative;z-index:1}
.hero-feedback-qr img{
  display:block;
  width:126px;
  height:126px;
  object-fit:contain;
  border-radius:20px;
  background:#fff;
  padding:8px;
  box-shadow:inset 0 0 0 1px rgba(47,103,199,.08), 0 10px 24px rgba(15,40,82,.12);
}
.hero-feedback-qr-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:52px;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(135deg, #184fbd, #2bbcff);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  box-shadow:0 10px 18px rgba(24,79,189,.24);
}
.hero-feedback-qr-badge::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.72);
  animation:heroFeedbackPulse 1.9s ease-out infinite;
}
.hero-feedback-qr-caption{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  width:100%;
  padding:10px 12px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(16,70,168,.95), rgba(39,129,233,.92));
  color:#fff;
  font-size:13px;
  line-height:1.15;
  font-weight:800;
  text-align:center;
  box-shadow:0 12px 24px rgba(16,70,168,.24);
}
.hero-feedback-qr-caption small{
  display:block;
  font-size:11px;
  font-weight:600;
  letter-spacing:.02em;
  opacity:.9;
}
.contact-feedback-cta-wrap{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid rgba(47,103,199,.12);
}
.contact-feedback-cta{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:min(100%, 320px);
  padding:15px 22px;
  border:1px solid rgba(255,255,255,.46);
  border-radius:18px;
  background:
    radial-gradient(circle at top left, rgba(106,193,255,.22), transparent 42%),
    linear-gradient(135deg, #1048aa 0%, #2071d7 52%, #34b8ff 100%);
  box-shadow:0 18px 34px rgba(19,74,173,.22), inset 0 1px 0 rgba(255,255,255,.18);
  overflow:hidden;
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease;
}
.contact-feedback-cta::before,
.contact-feedback-cta::after{
  content:"";
  position:absolute;
  pointer-events:none;
}
.contact-feedback-cta::before{
  left:18px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.66);
  animation:heroFeedbackPulse 1.9s ease-out infinite;
}
.contact-feedback-cta::after{
  top:0;
  left:-42%;
  width:34%;
  height:100%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.34), rgba(255,255,255,0));
  transform:skewX(-24deg);
  transition:left .42s ease;
}
.contact-feedback-cta:hover,
.contact-feedback-cta:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 22px 38px rgba(19,74,173,.28), inset 0 1px 0 rgba(255,255,255,.22);
  filter:saturate(1.05);
}
.contact-feedback-cta:hover::after,
.contact-feedback-cta:focus-visible::after{
  left:112%;
}
@keyframes heroFeedbackPulse{
  0%{transform:scale(.92);box-shadow:0 0 0 0 rgba(255,255,255,.62)}
  70%{transform:scale(1);box-shadow:0 0 0 11px rgba(255,255,255,0)}
  100%{transform:scale(.92);box-shadow:0 0 0 0 rgba(255,255,255,0)}
}
@media (max-width: 920px){
  .hero-feedback-qr{display:none !important}
}


/* 2026-04-06: feedback export + conference dropdown viewport fix + refined feedback CTA/QR */
.admin-feedback-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
  flex-wrap:wrap;
}
.admin-feedback-head .admin-card-intro{margin:6px 0 0}

.nav-accent-dropdown{
  min-width:280px;
  max-width:min(340px, calc(100vw - 32px));
}
.nav-accent-dropdown .nav-subdropdown{
  left:auto;
  right:calc(100% - 8px);
  min-width:260px;
  max-width:min(320px, calc(100vw - 48px));
}
.nav-accent-dropdown a,
.nav-accent-dropdown .nav-subgroup-trigger,
.nav-accent-dropdown .nav-subdropdown a{
  overflow-wrap:anywhere;
}

.hero-feedback-qr{
  right:18px;
  bottom:18px;
  gap:8px;
  width:148px;
  padding:10px 10px 12px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.74);
  background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(243,248,255,.95));
  box-shadow:0 20px 40px rgba(12,33,74,.16), 0 10px 22px rgba(47,103,199,.10);
  backdrop-filter:blur(10px) saturate(140%);
  -webkit-backdrop-filter:blur(10px) saturate(140%);
}
.hero-feedback-qr::before{
  top:-40%;
  left:-34%;
  width:108px;
  height:108px;
  opacity:.7;
}
.hero-feedback-qr::after{
  opacity:.26;
}
.hero-feedback-qr img{
  width:112px;
  height:112px;
  padding:10px;
  border-radius:18px;
  box-shadow:inset 0 0 0 1px rgba(47,103,199,.06), 0 8px 18px rgba(15,40,82,.08);
}
.hero-feedback-qr-badge{
  min-width:46px;
  min-height:24px;
  padding:0 10px;
  background:linear-gradient(135deg, #1d63d3, #53b7ff);
  font-size:10px;
  letter-spacing:.12em;
  box-shadow:0 8px 14px rgba(24,79,189,.16);
}
.hero-feedback-qr-badge::before{
  width:6px;
  height:6px;
}
.hero-feedback-qr-caption{
  gap:1px;
  padding:0;
  border-radius:0;
  background:transparent;
  color:#17427f;
  font-size:12px;
  line-height:1.2;
  box-shadow:none;
}
.hero-feedback-qr-caption small{
  font-size:10px;
  color:#4e6d94;
  opacity:1;
}

.contact-feedback-cta{
  display:inline-grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  min-width:min(100%, 360px);
  padding:15px 20px;
  border-radius:18px;
  background:
    radial-gradient(circle at top left, rgba(106,193,255,.18), transparent 40%),
    linear-gradient(135deg, #1048aa 0%, #2071d7 56%, #31a9ff 100%);
}
.contact-feedback-cta::before{
  content:none;
}
.contact-feedback-cta::after{
  top:0;
  left:-36%;
  width:24%;
  height:100%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.26), rgba(255,255,255,0));
}
.contact-feedback-cta-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.56), 0 0 14px rgba(255,255,255,.58);
  animation:heroFeedbackPulse 1.9s ease-out infinite;
}
.contact-feedback-cta-text{
  display:block;
  min-width:0;
  line-height:1.22;
  text-align:left;
  white-space:normal;
}
@media (max-width: 920px){
  .nav-accent-dropdown .nav-subdropdown{
    right:auto;
    max-width:none;
  }
}


/* 2026-04-06 footer social redesign + mobile density */
.admin-contacts-social-grid{gap:16px}
.contacts-cards-grid{align-items:stretch}
.contact-card-primary,
.contact-card-form{display:flex;flex-direction:column;gap:18px}
.contact-card-head{display:grid;gap:8px}
.contact-list,
.footer-contact-list{display:grid;gap:12px}
.contact-item,
.footer-contact-item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:flex-start;
  gap:12px;
}
.contact-item-icon,
.footer-contact-icon,
.social-link-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border-radius:14px;
  color:#17427f;
  background:linear-gradient(180deg, rgba(239,246,255,.98), rgba(225,238,255,.92));
  box-shadow:inset 0 0 0 1px rgba(47,103,199,.10), 0 8px 18px rgba(15,40,82,.07);
  flex-shrink:0;
}
.contact-item-icon svg,
.footer-contact-icon svg,
.social-link-icon svg{width:18px;height:18px}
.social-link-card .social-link-icon{position:relative;overflow:hidden;border-radius:15px}
.social-link-card .social-link-icon::before,
.footer-social-link::before{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,0));pointer-events:none}
.social-link-card .social-link-icon svg{width:20px;height:20px}
.social-link-card--vk .social-link-icon,
.footer-social-link--vk{color:#fff;background:linear-gradient(135deg, #2787f5, #1867c7);border-color:rgba(39,135,245,.24)}
.social-link-card--telegram .social-link-icon,
.footer-social-link--telegram{color:#fff;background:linear-gradient(135deg, #2aabee, #1c89c9);border-color:rgba(42,171,238,.24)}
.social-link-card--instagram .social-link-icon,
.footer-social-link--instagram{color:#fff;background:linear-gradient(135deg, #f58529 0%, #dd2a7b 38%, #8134af 70%, #515bd4 100%);border-color:rgba(221,42,123,.22)}
.social-link-card--whatsapp .social-link-icon,
.footer-social-link--whatsapp{color:#fff;background:linear-gradient(135deg, #25d366, #1da851);border-color:rgba(37,211,102,.22)}
.footer-social-link{position:relative;overflow:hidden}
.contact-item-text{min-width:0;line-height:1.45;color:#203a5f}
.contact-socials-wrap{display:grid;gap:12px}
.contact-socials-title{margin:0}
.social-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.social-link-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border-radius:18px;
  text-decoration:none;
  color:#173f75;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,248,255,.95));
  border:1px solid rgba(47,103,199,.10);
  box-shadow:0 10px 24px rgba(15,40,82,.08);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.social-link-card::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(255,255,255,.34), transparent 34%);opacity:.9;pointer-events:none}
.social-link-card:hover,
.social-link-card:focus-visible{transform:translateY(-3px);border-color:rgba(47,103,199,.24);box-shadow:0 18px 34px rgba(15,40,82,.14)}
.social-link-copy{display:grid;gap:2px;min-width:0}
.social-link-copy strong{font-size:14px;line-height:1.15;color:#11396f}
.social-link-copy span{font-size:12px;color:#5c7495}
.site-footer{
  padding:34px 0 38px;
  background:
    radial-gradient(circle at top left, rgba(95,170,255,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.74), rgba(242,247,255,.92));
  border-top:1px solid rgba(47,103,199,.12);
  backdrop-filter:blur(8px);
}
.footer-grid-modern{grid-template-columns:1.15fr .98fr 1.05fr;gap:22px}
.footer-column{min-width:0}
.footer-copy-strong{max-width:420px;line-height:1.55;color:#536b8c}
.footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.footer-social-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  text-decoration:none;
  color:#17427f;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(47,103,199,.10);
  box-shadow:0 10px 20px rgba(15,40,82,.06);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, filter .2s ease;
}
.footer-social-link:hover,
.footer-social-link:focus-visible{transform:translateY(-2px);border-color:rgba(47,103,199,.22);box-shadow:0 14px 24px rgba(15,40,82,.10);filter:saturate(1.05)}
.footer-social-link svg{width:16px;height:16px;position:relative;z-index:1}
.footer-social-link span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;position:relative;z-index:1}
.footer-conference-panel{display:grid;gap:10px}
.footer-conference-main-link{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:0 14px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(16,72,170,.94), rgba(45,131,225,.94));
  color:#fff !important;
  text-decoration:none;
  box-shadow:0 14px 30px rgba(16,70,168,.18);
}
.footer-conference-group{
  border:1px solid rgba(47,103,199,.10);
  border-radius:16px;
  background:rgba(255,255,255,.88);
  overflow:hidden;
}
.footer-conference-group summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  cursor:pointer;
  list-style:none;
  font-weight:700;
  color:#153c72;
}
.footer-conference-group summary::-webkit-details-marker{display:none}
.footer-conference-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:28px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(47,103,199,.10);
  color:#1b4d90;
  font-size:12px;
  font-weight:800;
}
.footer-conference-links{display:grid;gap:8px;padding:0 14px 14px}
.footer-conference-links a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(242,247,255,.96);
  text-decoration:none;
}
.footer-conference-note{font-size:13px;line-height:1.45;color:#627998}
@media (max-width: 920px){
  .footer-grid-modern{grid-template-columns:1fr;gap:18px}
  .site-footer{padding:26px 0 calc(84px + env(safe-area-inset-bottom, 0))}
  .footer-column{padding:18px;border:1px solid rgba(47,103,199,.08);border-radius:22px;background:rgba(255,255,255,.72)}
}
@media (max-width: 640px){
  .contacts-cards-grid{gap:14px}
  .social-link-card{border-radius:16px}
  .contact-card-primary,
  .contact-card-form{gap:14px}
  .social-links-grid{grid-template-columns:1fr 1fr;gap:10px}
  .social-link-card{padding:12px}
  .social-link-copy strong{font-size:13px}
  .social-link-copy span{font-size:11px}
  .contact-item,
  .footer-contact-item{gap:10px}
  .contact-item-icon,
  .footer-contact-icon,
  .social-link-icon{width:36px;height:36px;border-radius:12px}
  .footer-socials{gap:8px;margin-top:14px}
  .footer-social-link{min-height:38px;padding:0 12px;gap:8px}
  .footer-social-link span{font-size:11px;letter-spacing:.06em}
  .footer-column{padding:14px;border-radius:18px}
  .footer-conference-main-link{min-height:40px;padding:0 12px;border-radius:14px}
  .footer-conference-group summary{padding:11px 12px;font-size:14px}
  .footer-conference-links{padding:0 12px 12px}
  .footer-conference-links a{padding:9px 10px;font-size:13px}
}
@media (max-width: 420px){
  .social-links-grid{grid-template-columns:1fr}
  .footer-socials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-social-link{justify-content:center}
}

.admin-panel-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:0 0 18px}
.admin-search-field,.admin-filter-field{display:grid;gap:6px;min-width:220px;flex:1}
.admin-search-field span,.admin-filter-field span{font-size:12px;font-weight:700;color:var(--muted)}
.admin-search-field input,.admin-filter-field select{width:100%;min-height:46px;border:1px solid var(--line-strong);border-radius:14px;padding:0 14px;background:#fff;color:var(--text)}
.admin-panel-tool-buttons{display:flex;gap:10px;flex-wrap:wrap}
.admin-item-toggle{align-self:flex-start;appearance:none;border:1px solid var(--line-strong);background:#fff;color:var(--text);border-radius:12px;padding:8px 12px;font-weight:700;cursor:pointer;margin:8px 0 12px}
.admin-item.is-collapsed .admin-divider{margin-bottom:0}
.admin-item-body[hidden]{display:none!important}
.admin-empty-state{display:grid;gap:6px;padding:16px 18px;border:1px dashed var(--line-strong);border-radius:16px;background:rgba(255,255,255,.72);color:var(--muted)}
.admin-item[hidden]{display:none!important}
@media (max-width: 920px){.admin-panel-tools{flex-direction:column;align-items:stretch}.admin-panel-tool-buttons{width:100%}.admin-panel-tool-buttons .btn{flex:1}}


.admin-results-hint{margin:0 0 12px;color:var(--muted);font-size:14px;font-weight:700}
.admin-actions-stack-mobile form{margin:0}
.admin-feedback-actions{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width: 640px){
  .admin-actions-stack-mobile{grid-template-columns:1fr}
}


.viewer-card{display:flex;flex-direction:column;gap:18px;padding:18px;border-radius:24px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 50px rgba(15,23,42,.08)}
.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.viewer-frame{width:100%;min-height:78vh;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#f8fafc}
.viewer-frame-text{background:#fff}
.viewer-image-wrap{display:flex;justify-content:center;align-items:center;min-height:360px;padding:16px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#f8fafc}
.viewer-image{max-width:100%;height:auto;border-radius:12px}
.viewer-note{padding:12px 14px;border-radius:14px;background:rgba(47,103,199,.08);color:var(--text);font-size:14px;line-height:1.5}
@media (max-width: 767px){.viewer-card{padding:14px}.viewer-frame{min-height:68vh}}


/* 2026-04-07 stream dropdown for multiple section links */
.hero-stream-dropdown{
  position:relative;
  width:min(100%, 248px);
  max-width:248px;
}
.hero-stream-dropdown .hero-stream-action-btn{
  width:100%;
  max-width:none;
}
.hero-stream-action-trigger{
  cursor:default;
}
.hero-stream-action-caret{
  width:8px;
  height:8px;
  margin-left:2px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  flex:0 0 auto;
  transition:transform .18s ease;
}
.hero-stream-dropdown-menu{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  right:0;
  display:grid;
  gap:8px;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(14,23,44,.94);
  backdrop-filter:blur(10px);
  box-shadow:0 18px 42px rgba(8,15,35,.34);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index:30;
}
.hero-stream-dropdown:hover .hero-stream-dropdown-menu,
.hero-stream-dropdown:focus-within .hero-stream-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.hero-stream-dropdown:hover .hero-stream-action-caret,
.hero-stream-dropdown:focus-within .hero-stream-action-caret{
  transform:rotate(225deg);
}
.hero-stream-dropdown-item{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 14px;
  border-radius:14px;
  text-align:center;
  font-weight:700;
  color:#fff;
  background:linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.08);
  transition:transform .16s ease, background .16s ease, border-color .16s ease;
}
.hero-stream-dropdown-item:hover,
.hero-stream-dropdown-item:focus-visible{
  transform:translateY(-1px);
  background:linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
  border-color:rgba(255,255,255,.16);
}
@media (max-width: 920px){
  .hero-stream-dropdown,
  .hero-visual-frame-welcome .hero-visual-actions .hero-stream-dropdown{width:min(100%, 236px);max-width:236px}
}
@media (max-width: 640px){
  .hero-stream-dropdown,
  .hero-visual-frame-welcome .hero-visual-actions .hero-stream-dropdown{width:min(100%, 228px);max-width:228px}
}

.admin-stream-links-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:14px;
}
.admin-inline-card{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,.24);
  background:rgba(255,255,255,.66);
}
.admin-inline-card strong{
  font-size:14px;
}


/* 2026-04-07 fix: stable stream dropdown with mouseleave handling */
.hero-visual-frame.hero-visual-frame-welcome{
  overflow:visible;
}
.hero-visual-frame.hero-visual-frame-welcome::before,
.hero-visual-frame.hero-visual-frame-welcome::after{
  pointer-events:none;
}
.hero-visual-frame-welcome .hero-visual-actions{
  overflow:visible;
}
.hero-stream-dropdown{
  position:relative;
  z-index:30;
  display:flex;
  justify-content:center;
  width:min(100%, 248px);
  max-width:248px;
}
.hero-stream-action-trigger{
  width:100%;
}
.hero-stream-action-caret{
  width:9px;
  height:9px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-1px);
  flex:0 0 auto;
  margin-left:2px;
  transition:transform .18s ease;
}
.hero-stream-dropdown.is-open .hero-stream-action-caret,
.hero-stream-action-trigger[aria-expanded="true"] .hero-stream-action-caret{
  transform:rotate(-135deg) translateY(-1px);
}
.hero-stream-dropdown-menu{
  position:absolute;
  left:0;
  right:0;
  bottom:calc(100% + 10px);
  display:grid;
  gap:8px;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.48);
  background:linear-gradient(180deg, rgba(18,34,66,.96) 0%, rgba(18,44,82,.94) 100%);
  box-shadow:0 18px 42px rgba(6,18,44,.30);
  opacity:0;
  visibility:hidden;
  transform:translateY(10px) scale(.98);
  transform-origin:bottom center;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.hero-stream-dropdown.is-open .hero-stream-dropdown-menu,
.hero-stream-dropdown:hover .hero-stream-dropdown-menu,
.hero-stream-dropdown:focus-within .hero-stream-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.hero-stream-dropdown-item{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:11px 13px;
  border-radius:14px;
  color:#fff;
  font-weight:700;
  line-height:1.25;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.hero-stream-dropdown-item:hover,
.hero-stream-dropdown-item:focus-visible{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-1px);
}
@media (max-width: 920px){
  .hero-stream-dropdown{
    width:min(100%, 236px);
    max-width:236px;
  }
}
@media (max-width: 640px){
  .hero-stream-dropdown{
    width:min(100%, 228px);
    max-width:228px;
  }
}


/* 2026-04-07 refinement: stream dropdown aligned with nav-dropdown styles and mobile fit */
.hero-visual-frame.hero-visual-frame-welcome,
.hero-visual-frame-welcome .hero-visual-actions{
  overflow:visible;
}
.hero-stream-dropdown{
  position:relative;
  z-index:35;
  display:flex;
  justify-content:center;
  width:min(100%, 248px);
  max-width:248px;
}
.hero-stream-dropdown .hero-stream-action-btn,
.hero-stream-action-trigger{
  width:100%;
}
.hero-stream-action-trigger{
  cursor:pointer;
}
.hero-stream-action-caret{
  width:9px;
  height:9px;
  margin-left:2px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-1px);
  flex:0 0 auto;
  transition:transform .18s ease;
}
.hero-stream-dropdown.is-open .hero-stream-action-caret,
.hero-stream-action-trigger[aria-expanded="true"] .hero-stream-action-caret{
  transform:rotate(-135deg) translateY(-1px);
}
.hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown{
  position:absolute;
  left:0;
  right:0;
  bottom:calc(100% + 10px);
  top:auto;
  min-width:0;
  margin:0;
  padding:8px;
  display:grid;
  gap:3px;
  background:#fff;
  border:1px solid rgba(47,103,199,.14);
  border-radius:18px;
  box-shadow:0 20px 40px rgba(25,67,111,.14), 0 6px 18px rgba(25,67,111,.08);
  opacity:0;
  visibility:hidden;
  transform:translateY(10px) scale(.98);
  transform-origin:bottom center;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index:50;
}
.hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  color:var(--text);
  font-weight:600;
  text-align:left;
  line-height:1.3;
  white-space:normal;
}
.hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown a:hover,
.hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown a:focus-visible{
  background:rgba(47,103,199,.075);
  color:var(--brand);
}
.hero-stream-dropdown.is-open .hero-stream-dropdown-menu,
.hero-stream-dropdown:hover .hero-stream-dropdown-menu,
.hero-stream-dropdown:focus-within .hero-stream-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
@media (max-width: 920px){
  .hero-visual-frame-welcome .hero-visual-actions{
    width:100%;
    gap:10px;
  }
  .hero-stream-dropdown,
  .hero-visual-frame-welcome .hero-visual-actions .hero-stream-dropdown{
    width:min(100%, 236px);
    max-width:236px;
  }
}
@media (max-width: 640px){
  .hero-visual-frame-welcome .hero-visual-actions{
    align-items:stretch;
  }
  .hero-stream-dropdown,
  .hero-visual-frame-welcome .hero-visual-actions .hero-stream-dropdown,
  .hero-visual-frame-welcome .hero-visual-actions .hero-stream-dropdown .hero-stream-action-btn{
    width:100%;
    max-width:none;
  }
  .hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown{
    left:0;
    right:0;
    bottom:calc(100% + 8px);
  }
}
@media (prefers-reduced-motion: reduce){
  .hero-stream-action-caret,
  .hero-stream-dropdown-menu.nav-dropdown.nav-subdropdown{
    transition:none;
  }
}


/* 2026-04-07 mobile centering for program CTA + flexible stream modes */
.hero-visual-action-btn-program,
.hero-stream-dropdown,
.hero-stream-action-link{
  align-self:center;
}
.hero-stream-dropdown{
  width:100%;
}
.hero-stream-action-link{
  text-decoration:none;
}
@media (max-width: 920px){
  .hero-visual-actions{
    align-items:center;
  }
  .hero-visual-action-btn-program,
  .hero-stream-dropdown,
  .hero-stream-action-link{
    width:min(100%, 320px);
    margin-left:auto;
    margin-right:auto;
  }
  .hero-stream-dropdown-menu{
    width:100%;
    left:0;
    right:0;
  }
}



.materials-stream-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.materials-stream-hero-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 24px;border:1px solid rgba(47,103,199,.16);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.96) 0%,rgba(242,247,255,.98) 56%,rgba(231,241,255,.98) 100%);color:var(--text-strong) !important;font-weight:800;letter-spacing:.01em;text-decoration:none;min-height:56px;box-shadow:0 14px 30px rgba(26,55,93,.10),inset 0 1px 0 rgba(255,255,255,.92);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease;overflow:hidden;backdrop-filter:blur(6px)}.materials-stream-hero-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.72),rgba(255,255,255,0) 42%,rgba(93,185,218,.08) 72%,rgba(255,255,255,0));opacity:1;pointer-events:none}.materials-stream-hero-btn:hover,.materials-stream-hero-btn:focus-visible{transform:translateY(-2px);border-color:rgba(47,103,199,.28);box-shadow:0 20px 38px rgba(26,55,93,.14),0 0 0 4px rgba(47,103,199,.08),inset 0 1px 0 rgba(255,255,255,.96)}.materials-stream-hero-btn:active{transform:translateY(0)}.materials-stream-hero-btn__icon{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,var(--brand),#5b8fdf);box-shadow:0 8px 18px rgba(47,103,199,.22),inset 0 1px 0 rgba(255,255,255,.24);color:#fff;font-size:13px;line-height:1;flex:0 0 34px}.materials-stream-hero-btn span:last-child{position:relative;z-index:1}.materials-stream-embed{margin:0 0 28px;padding:18px;border:1px solid rgba(47,103,199,.12);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.98));box-shadow:0 18px 48px rgba(16,32,67,.08)}.materials-stream-embed-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.materials-stream-embed-head h2{margin:0 0 6px}.materials-stream-embed-head p{margin:0;color:var(--muted)}.materials-stream-embed-frame{position:relative;width:100%;padding-top:56.25%;overflow:hidden;border-radius:20px;background:#0f172a;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.materials-stream-embed-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}@media (max-width: 768px){.materials-stream-hero-actions{margin-top:18px}.materials-stream-hero-actions .btn{width:100%;justify-content:center}.materials-stream-hero-btn{width:100%;padding:15px 18px;border-radius:16px}}


.materials-tools{margin:0 0 22px;padding:18px;border:1px solid rgba(47,103,199,.12);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.98));box-shadow:0 16px 40px rgba(16,32,67,.06)}
.materials-tools-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(180px,1fr));gap:14px}
.materials-tool-field{display:flex;flex-direction:column;gap:8px}
.materials-tool-field span{font-size:13px;font-weight:700;color:var(--text-strong)}
.materials-tool-input,.materials-tool-select{width:100%;min-height:48px;padding:0 14px;border:1px solid rgba(47,103,199,.14);border-radius:14px;background:#fff;color:var(--text);font:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}
.materials-tool-input:focus,.materials-tool-select:focus{outline:none;border-color:rgba(47,103,199,.34);box-shadow:0 0 0 4px rgba(47,103,199,.08)}
.materials-tools-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(47,103,199,.08)}
.materials-tools-summary{color:var(--muted);font-weight:600}
.materials-tools-reset{white-space:nowrap}
.resource-section-label{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:rgba(47,103,199,.08);color:var(--brand);font-weight:700}
.materials-empty-search{margin-top:18px}
.resource-card[hidden]{display:none !important}
@media (max-width: 1100px){.materials-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 768px){.materials-tools{padding:16px;border-radius:20px}.materials-tools-grid{grid-template-columns:1fr}.materials-tools-footer{flex-direction:column;align-items:stretch}.materials-tools-reset{width:100%}}


.materials-nav-compact{display:grid;gap:12px;margin:0 0 20px;padding:14px 16px;border:1px solid rgba(47,103,199,.12);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 10px 24px rgba(16,32,67,.05)}
.materials-nav-compact__main{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:14px;align-items:end}
.materials-nav-compact__meta{display:grid;gap:4px;min-width:0}
.materials-nav-compact__label{font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.materials-nav-compact__current{display:block;font-size:18px;line-height:1.25;color:var(--text);word-break:break-word}
.materials-nav-compact__control{display:grid;gap:6px}
.materials-nav-compact__control-label{font-size:13px;font-weight:700;color:var(--text-strong)}
.materials-nav-compact__select{width:100%;min-height:46px;padding:0 14px;border:1px solid rgba(47,103,199,.14);border-radius:14px;background:#fff;color:var(--text);font:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}
.materials-nav-compact__select:focus{outline:none;border-color:rgba(47,103,199,.34);box-shadow:0 0 0 4px rgba(47,103,199,.08)}
.materials-nav-compact__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid rgba(47,103,199,.08)}
.materials-nav-compact__count{font-size:13px;font-weight:600;color:var(--muted)}
.materials-nav-compact__back{font-size:13px;font-weight:700;color:var(--brand);text-decoration:none}
.materials-nav-compact__back:hover{text-decoration:underline}
@media (max-width: 820px){.materials-nav-compact{padding:14px;border-radius:16px}.materials-nav-compact__main{grid-template-columns:1fr}.materials-nav-compact__current{font-size:16px}.materials-nav-compact__foot{flex-direction:column;align-items:flex-start}}

.admin-row-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.checkbox-line-inline{align-self:end;min-height:48px}.resource-card-archived{border-color:rgba(47,103,199,.18);background:linear-gradient(180deg,rgba(248,250,255,.98),rgba(241,246,255,.98))}.resource-card-archived .resource-section-label:last-child{background:rgba(47,103,199,.14)}@media (max-width: 900px){.admin-row-3{grid-template-columns:1fr}}

.archive-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.archive-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}
.archive-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.archive-overview-card,.archive-section-card{border:1px solid rgba(47,103,199,.12);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(246,249,255,.96));box-shadow:0 16px 40px rgba(16,32,67,.06)}
.archive-overview-card{padding:20px 22px}
.archive-overview-card__label{display:block;color:var(--muted);font-size:13px;font-weight:600;margin-bottom:8px}
.archive-overview-card__value{display:block;font-size:32px;line-height:1.05}
.archive-year-nav{display:flex;flex-wrap:wrap;gap:10px}
.archive-year-nav__link{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;border:1px solid rgba(47,103,199,.15);background:#fff;color:var(--text);font-weight:700;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.archive-year-nav__link:hover{transform:translateY(-1px);border-color:rgba(47,103,199,.26);box-shadow:0 10px 20px rgba(16,32,67,.08)}
.archive-group{display:flex;flex-direction:column;gap:18px}
.archive-group__header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid rgba(47,103,199,.1)}
.archive-group__count{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:rgba(47,103,199,.09);font-weight:700;color:var(--text)}
.archive-section-card{padding:20px 22px}
.archive-section-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.archive-section-card__header h3{margin:0 0 8px}
.archive-section-card__jump{display:inline-flex;align-items:center;color:var(--primary);font-weight:700;text-decoration:none}
.archive-section-card__count{white-space:nowrap;color:var(--muted);font-weight:700}
.archive-resource-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.archive-resource-card{min-height:100%}
@media (max-width: 980px){.archive-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-page-heading,.archive-group__header,.archive-section-card__header{flex-direction:column;align-items:flex-start}.archive-page-actions{width:100%;justify-content:flex-start}}
@media (max-width: 640px){.archive-overview-grid{grid-template-columns:1fr}.archive-overview-card,.archive-section-card{border-radius:20px}.archive-year-nav__link{width:100%}}

.admin-form-note{font-size:.92rem;color:var(--muted);margin-top:-4px;margin-bottom:4px}


.admin-empty-state[hidden]{display:none !important;}
.admin-panel-tools-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;}
.admin-archive-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.88);margin:16px 0 18px;}
.admin-archive-toolbar__content{display:grid;gap:4px;color:var(--muted);}
.admin-archive-toolbar__content strong{color:var(--text);font-size:1rem;}
.admin-archive-year-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0 0 18px;}
.admin-archive-year-card{display:grid;gap:10px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,248,252,.96));box-shadow:0 14px 28px rgba(15,23,42,.06);}
.admin-archive-year-card__meta{color:var(--muted);font-size:.92rem;line-height:1.5;}
.admin-archive-year-card__actions{display:flex;justify-content:flex-start;}
.admin-inline-muted{color:var(--muted);font-size:.92em;}
.archive-page-heading{align-items:stretch;gap:24px;padding:24px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(238,244,255,.96));box-shadow:0 20px 40px rgba(15,23,42,.08);}
.archive-page-heading__content{display:grid;gap:12px;}
.archive-page-tags{display:flex;flex-wrap:wrap;gap:10px;}
.archive-page-tag{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(15,23,42,.06);color:var(--text);font-size:.9rem;font-weight:600;}
.archive-overview-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
.archive-overview-card{border-radius:22px;padding:20px;background:linear-gradient(180deg,#fff,#f5f8ff);border:1px solid var(--line);box-shadow:0 16px 32px rgba(15,23,42,.07);}
.archive-overview-card__label{font-size:.9rem;color:var(--muted);}
.archive-overview-card__value{font-size:2rem;line-height:1.1;color:var(--text);}
.archive-year-nav{position:sticky;top:84px;z-index:4;display:flex;flex-wrap:wrap;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);box-shadow:0 16px 32px rgba(15,23,42,.08);}
.archive-year-nav__link{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:10px 14px;border-radius:999px;background:rgba(37,99,235,.08);color:var(--text);font-weight:700;text-decoration:none;}
.archive-year-nav__link:hover{background:rgba(37,99,235,.16);}
.archive-group{padding:24px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.96));box-shadow:0 18px 36px rgba(15,23,42,.07);}
.archive-group__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px;}
.archive-group__count{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(15,23,42,.06);font-weight:700;color:var(--text);}
.archive-section-card{padding:20px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 14px 28px rgba(15,23,42,.05);}
.archive-section-card__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;}
.archive-section-card__meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.92rem;margin-top:6px;}
.archive-section-card__jump{display:inline-flex;margin-top:10px;font-weight:700;text-decoration:none;}
.archive-section-card__count{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(37,99,235,.08);font-weight:700;color:var(--text);}
.archive-resource-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.archive-resource-card{border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(148,163,184,.22);}
@media (max-width: 900px){.admin-archive-toolbar{flex-direction:column;align-items:flex-start;}.archive-page-heading{padding:20px;}.archive-year-nav{position:static;}.archive-group__header,.archive-section-card__header{flex-direction:column;align-items:flex-start;}}


.admin-archive-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:0 0 18px;padding:18px 20px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,248,255,.98));box-shadow:0 18px 36px rgba(15,23,42,.06)}
.admin-archive-toolbar__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.admin-archive-bulk-form{display:flex;gap:10px;align-items:flex-end;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:#fff}
.admin-archive-bulk-form label{display:grid;gap:6px;font-size:.92rem;color:var(--muted)}
.admin-archive-bulk-form select{min-width:120px}
.admin-archive-year-card__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.admin-archive-year-card__actions form{margin:0}
.archive-year-nav-rich{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.archive-year-nav-rich .archive-year-nav__link{display:grid;gap:4px;justify-items:start;min-width:0;padding:14px 16px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,247,255,.96));box-shadow:0 14px 28px rgba(15,23,42,.06)}
.archive-year-nav-rich .archive-year-nav__link small{color:var(--muted);font-size:.84rem;font-weight:600}
.archive-group__stats{display:flex;flex-wrap:wrap;gap:10px}
.archive-resource-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.archive-resource-card{height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.96));box-shadow:0 16px 32px rgba(15,23,42,.05)}
.archive-resource-card h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.archive-resource-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted)}
.archive-section-card{padding:18px 18px 16px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,247,255,.96));border:1px solid rgba(148,163,184,.18);box-shadow:0 18px 34px rgba(15,23,42,.05)}
@media (max-width: 900px){.admin-archive-toolbar__actions{width:100%}.admin-archive-bulk-form{width:100%;justify-content:space-between}.archive-year-nav-rich{grid-template-columns:1fr}.archive-resource-list{grid-template-columns:1fr}}

/* 2026-04-12 bulk publish by year actions */
.admin-archive-toolbar__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.admin-archive-bulk-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:12px 14px;border:1px solid rgba(37,99,235,.12);border-radius:16px;background:rgba(255,255,255,.86)}
.admin-archive-bulk-form label{display:grid;gap:6px;min-width:140px}
.admin-archive-year-card__actions .btn{white-space:nowrap}

/* 2026-04-13 admin stability and sidebar polish */
.admin-shell{max-width:1480px;padding:28px 0 56px}.admin-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start}.admin-main{min-width:0;padding-left:10px}.admin-sidebar{position:sticky;top:20px;align-self:start;z-index:5}.admin-sidebar-card{display:grid;gap:14px;padding:20px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.97));border:1px solid var(--line);box-shadow:0 18px 44px rgba(15,23,42,.08)}.admin-sidebar-title{display:grid;gap:4px}.admin-sidebar-title strong{color:var(--text-strong);font-size:18px}.admin-sidebar-title span{color:var(--muted);font-size:13px;font-weight:700}.admin-sidebar-nav{display:grid;gap:10px;align-content:start}.admin-sidebar-link{appearance:none;width:100%;border:1px solid rgba(148,163,184,.28);background:linear-gradient(180deg,#fff,#f8fbff);color:var(--text-strong);border-radius:18px;padding:14px 16px;text-align:left;font-weight:800;line-height:1.3;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease, box-shadow .18s ease;white-space:normal;overflow-wrap:anywhere;word-break:normal}.admin-sidebar-link:hover{transform:translateY(-1px);border-color:rgba(47,103,199,.26);background:rgba(47,103,199,.06)}.admin-sidebar-link.is-active{color:#fff;background:linear-gradient(135deg,var(--brand),#5e93dd);border-color:transparent;box-shadow:0 14px 28px rgba(47,103,199,.20)}.admin-topbar,.flash,.admin-switcher,.admin-card,.admin-stat,.admin-item,.admin-archive-toolbar{overflow:hidden}.admin-topbar{padding:24px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(244,248,255,.94));border:1px solid var(--line);box-shadow:var(--shadow-soft)}.admin-topbar p,.admin-card-intro,.admin-item-meta,.admin-file-line,.admin-feedback-message,.admin-stat span{overflow-wrap:anywhere;word-break:break-word}.admin-stats-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-stat{min-width:0;min-height:104px}.admin-stat strong{font-size:30px}.admin-stat span{font-size:13px;line-height:1.35}.admin-switcher{position:sticky;top:20px;z-index:4;padding:10px;border-radius:18px;background:rgba(255,255,255,.94);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.admin-panel{gap:20px}.admin-grid-top{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid-tools{align-items:start}.admin-card{min-width:0;border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow-soft);background:linear-gradient(180deg,#ffffff,#f7faff)}.admin-card h2{line-height:1.15;overflow-wrap:anywhere}.admin-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-item{min-width:0}.admin-item-title,.admin-item-head,.admin-actions,.admin-row-2,.admin-actions-split,.admin-feedback-head,.admin-feedback-actions{min-width:0}.admin-row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-image-sorter-list,.admin-news-images{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-item-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px}.admin-empty-state[hidden],.admin-panel[hidden]{display:none!important}@media (max-width:1280px){.admin-workspace{grid-template-columns:240px minmax(0,1fr);gap:20px}.admin-main{padding-left:8px}.admin-stats-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){.admin-workspace{grid-template-columns:1fr}.admin-main{padding-left:0}.admin-sidebar{position:sticky;top:12px}.admin-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:920px){.admin-switcher{position:static}.admin-stats-wide,.admin-items,.admin-grid-top,.admin-row-2,.admin-image-sorter-list,.admin-news-images,.admin-sidebar-nav{grid-template-columns:1fr}.admin-topbar{flex-direction:column}}


/* 2026-04-13 admin usability cleanup */
.admin-form label{min-width:0;align-content:start;line-height:1.35;overflow-wrap:anywhere;word-break:normal}
.admin-form label input,.admin-form label textarea,.admin-form label select{margin-top:2px;min-width:0}
.admin-form input,.admin-form textarea,.admin-form select{min-width:0;max-width:100%}
.admin-card,.admin-item,.admin-stat,.admin-sidebar-card{min-width:0}
.admin-card h2,.admin-item-title strong,.admin-stat span,.admin-sidebar-link,.admin-card-intro,.admin-file-line{overflow-wrap:anywhere;word-break:normal}
.admin-items.admin-inline-editor{grid-template-columns:1fr!important}
.admin-items.admin-inline-editor .admin-item{padding:18px}
.admin-items.admin-inline-editor .admin-row-2{grid-template-columns:repeat(2,minmax(220px,1fr));align-items:start}
.admin-items.admin-inline-editor .admin-actions-end{margin-top:8px}
.admin-sidebar{position:fixed!important;top:18px;left:max(16px,calc((100vw - 1480px)/2 + 24px));width:280px;max-height:calc(100vh - 36px);overflow:auto;overscroll-behavior:contain;padding-right:2px;z-index:30}
.admin-sidebar-card{max-height:none}
.admin-main{min-width:0}
.admin-workspace{display:block;padding-left:304px}
.admin-switcher{top:18px;z-index:20}
.admin-sidebar-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;text-wrap:pretty}
.admin-sidebar-link::after{content:"›";font-size:18px;line-height:1;color:currentColor;opacity:.7;flex:0 0 auto}
.admin-sidebar-link.is-active::after{opacity:1}
.admin-stat{display:grid;align-content:start;gap:4px;min-height:110px}
.admin-stat strong{margin-bottom:0}
.admin-stat span{display:block;max-width:22ch}
.admin-card-headline h2,.admin-panel-header h2{max-width:24ch}
.admin-actions,.admin-actions-split,.admin-panel-header__actions,.admin-feedback-actions{row-gap:10px}
.admin-panel-header{align-items:start}
.admin-topbar{position:relative;z-index:2}
@media (max-width:1400px){.admin-sidebar{left:16px;width:260px}.admin-workspace{padding-left:292px}.admin-main{padding-left:12px}}
@media (max-width:1180px){.admin-sidebar{position:sticky!important;left:auto;top:12px;width:auto;max-height:none;overflow:visible}.admin-workspace{display:grid;grid-template-columns:1fr;gap:18px;padding-left:0}.admin-main{padding-left:0}.admin-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-items.admin-inline-editor .admin-row-2{grid-template-columns:1fr}}
@media (max-width:760px){.admin-sidebar-nav{grid-template-columns:1fr}.admin-sidebar-link{min-height:44px}.admin-card-headline h2,.admin-panel-header h2{max-width:none}}


/* 2026-04-13 topbar offset fix for fixed admin sidebar */
.admin-topbar,
.flash{
  margin-left: 328px;
}
@media (max-width: 1400px){
  .admin-topbar,
  .flash{margin-left: 284px;}
}
@media (max-width: 1180px){
  .admin-topbar,
  .flash{margin-left: 0;}
}


/* 2026-04-13 archive layout polish + section editor fix */
.archive-shell{display:grid;gap:22px}
.archive-hero-card{position:relative;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:36px;background:linear-gradient(135deg,rgba(9,21,44,.86),rgba(17,37,77,.78));box-shadow:0 26px 60px rgba(15,23,42,.14);overflow:hidden}.archive-hero-card::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(8,18,37,.82) 0%,rgba(17,37,77,.58) 42%,rgba(17,37,77,.72) 100%),var(--facet-image) center/cover no-repeat;opacity:1;pointer-events:none}.archive-hero-card::after{content:'';position:absolute;inset:auto auto -120px -80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(129,188,255,.28),rgba(129,188,255,0));pointer-events:none}
.archive-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.78fr);gap:0;align-items:stretch}
.archive-hero-main{padding:34px 34px 28px;display:grid;gap:18px}
.archive-kicker{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:#eef4ff;color:var(--primary);font-size:.86rem;font-weight:800;letter-spacing:.01em;width:max-content;max-width:100%}
.archive-kicker-dark{background:rgba(255,255,255,.1);color:#dce8ff}
.archive-hero-main h1{margin:0;font-size:clamp(2rem,3vw,3rem);line-height:1.02;color:#fff}
.archive-hero-main p{margin:0;max-width:60ch;color:rgba(232,240,255,.9);font-size:1.06rem;line-height:1.75}
.archive-hero-pills{display:flex;flex-wrap:wrap;gap:10px}
.archive-hero-pills span{display:inline-flex;align-items:center;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);font-weight:700;color:#f4f8ff;border:1px solid rgba(255,255,255,.16)}
.archive-hero-actions{padding:0 34px 34px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.archive-hero-aside{padding:24px;display:flex;align-items:stretch;min-height:100%}
.archive-hero-aside-card{width:100%;display:grid;align-content:start;gap:16px;color:#fff}
.archive-hero-aside-card strong{font-size:1.95rem;line-height:1.05;color:#fff}
.archive-hero-aside-card p{margin:0;color:rgba(255,255,255,.82);line-height:1.7;font-size:1rem}
.archive-hero-years{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:6px}
.archive-hero-years a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);text-decoration:none;color:#fff;font-weight:800}
.archive-hero-years a:hover{background:rgba(255,255,255,.15)}
.archive-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.archive-overview-card{border-radius:24px;padding:22px 24px;background:#fff;border:1px solid rgba(148,163,184,.16);box-shadow:0 16px 30px rgba(15,23,42,.05)}
.archive-overview-card__label{font-size:.92rem;color:var(--muted);font-weight:700;margin-bottom:10px}
.archive-overview-card__value{font-size:2.4rem;line-height:1;color:var(--text)}
.archive-year-nav-rich{position:sticky;top:84px;z-index:4;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:12px;border-radius:26px;background:rgba(255,255,255,.84);border:1px solid rgba(148,163,184,.15);box-shadow:0 18px 34px rgba(15,23,42,.06);backdrop-filter:blur(14px)}
.archive-year-nav-rich .archive-year-nav__link{display:grid;gap:5px;min-height:76px;align-content:center;padding:16px 18px;border-radius:18px;border:1px solid rgba(47,103,199,.12);background:linear-gradient(180deg,#fff,#f4f7ff);box-shadow:none}
.archive-year-nav-rich .archive-year-nav__link span{font-size:1.08rem;font-weight:800;color:var(--text)}
.archive-year-nav-rich .archive-year-nav__link small{font-size:.85rem;font-weight:700;color:var(--muted)}
.archive-groups{display:grid;gap:22px}
.archive-group{padding:28px;border-radius:32px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(248,250,255,.97));box-shadow:0 22px 42px rgba(15,23,42,.06)}
.archive-group__header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(148,163,184,.16);margin-bottom:18px}
.archive-group__header h2{margin:8px 0 0;font-size:2rem;line-height:1.06}
.archive-group__stats{display:flex;flex-wrap:wrap;gap:10px}
.archive-group__count{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#eef4ff;color:#26476c;font-weight:800}
.archive-sections{display:grid;gap:16px}
.archive-section-card{padding:0;border-radius:26px;border:1px solid rgba(148,163,184,.16);background:linear-gradient(180deg,#fff,#f9fbff);box-shadow:0 16px 32px rgba(15,23,42,.045);overflow:hidden}
.archive-section-card__summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px 22px 20px;cursor:pointer;list-style:none}
.archive-section-card__summary::-webkit-details-marker{display:none}
.archive-section-card__summary-main h3{margin:0 0 8px;font-size:1.16rem;line-height:1.25}
.archive-section-card__meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.92rem}
.archive-section-card__summary-side{display:grid;justify-items:end;gap:8px}
.archive-section-card__count{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:rgba(37,99,235,.08);font-weight:800;color:var(--text)}
.archive-section-card__toggle{font-size:.86rem;font-weight:800;color:var(--primary)}
.archive-section-card[open] .archive-section-card__toggle{color:#5a6f8d}
.archive-section-card__body{display:grid;gap:14px;padding:0 22px 22px;border-top:1px solid rgba(148,163,184,.12)}
.archive-section-card__jump{display:inline-flex;align-items:center;width:max-content;margin-top:14px;padding:10px 14px;border-radius:999px;background:#eef4ff;color:var(--primary);font-weight:800;text-decoration:none}
.archive-resource-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.archive-resource-card{height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:14px;padding:18px;border-radius:22px;border:1px solid rgba(148,163,184,.16);background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 30px rgba(15,23,42,.05)}
.archive-resource-card__body{display:grid;gap:10px}
.archive-resource-card h3{margin:0;font-size:1.05rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.archive-resource-card p{margin:0;color:var(--muted);line-height:1.58;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.archive-resource-card__actions{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width: 1080px){.archive-hero-grid{grid-template-columns:1fr}.archive-hero-aside{padding:22px}.archive-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-year-nav-rich{position:static;top:auto}}
@media (max-width: 720px){.archive-hero-main{padding:24px 22px 18px}.archive-hero-actions{padding:0 22px 24px}.archive-hero-aside-card strong{font-size:1.55rem}.archive-hero-years{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-overview-grid,.archive-resource-list{grid-template-columns:1fr}.archive-group{padding:22px}.archive-group__header,.archive-section-card__summary{grid-template-columns:1fr}.archive-section-card__summary-side{justify-items:start}}


/* 2026-04-13 stage15 archive/admin reliability */
.archive-hero-grid-separated{align-items:stretch;gap:24px;margin-bottom:22px;padding:10px}
.archive-page .section-heading.archive-page-heading{padding:34px 34px 32px;border-radius:32px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,249,255,.98));border:1px solid rgba(37,99,235,.10);box-shadow:0 20px 44px rgba(15,23,42,.06)}
.archive-hero-aside-soft{display:flex}
.archive-hero-aside-card,.archive-hero-panel{border-radius:32px !important;overflow:hidden}
.archive-hero-aside-card{padding:28px;background:linear-gradient(180deg,rgba(8,19,40,.72) 0%, rgba(17,37,77,.72) 100%);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);box-shadow:0 22px 42px rgba(6,15,32,.24);display:grid;gap:14px}
.archive-hero-years{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}
.archive-hero-years a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);font-weight:800;text-decoration:none;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.archive-hero-years a:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.archive-overview-grid{margin:4px 0 20px;gap:18px}
.archive-overview-card{border-radius:24px;padding:22px 24px;background:#fff;border:1px solid rgba(37,99,235,.10);box-shadow:0 14px 30px rgba(15,23,42,.05)}
.archive-year-nav-wrap{padding:14px 16px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,249,255,.96));border:1px solid rgba(37,99,235,.08);box-shadow:0 16px 32px rgba(15,23,42,.05);margin-bottom:22px}
.archive-year-nav-rich{margin:0}
.archive-group{border-radius:30px;border:1px solid rgba(37,99,235,.08);box-shadow:0 18px 38px rgba(15,23,42,.05);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.98));padding:28px}
.archive-group__header{padding-bottom:18px;border-bottom:1px solid rgba(37,99,235,.08);margin-bottom:18px}
.archive-section-card{border-radius:24px;padding:18px 20px;background:#fff;border:1px solid rgba(37,99,235,.08);box-shadow:0 12px 26px rgba(15,23,42,.04)}
.archive-section-card + .archive-section-card{margin-top:14px}
.archive-section-card__body{padding-top:18px}
.archive-resource-card{border-radius:22px;border:1px solid rgba(37,99,235,.08);box-shadow:0 10px 24px rgba(15,23,42,.04);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.98))}
.archive-resource-card__actions .btn{min-width:140px}
.flash{position:fixed;right:20px;bottom:20px;top:auto;left:auto;max-width:min(420px,calc(100vw - 32px));z-index:1200;padding:16px 48px 16px 16px;border-radius:18px;box-shadow:0 18px 40px rgba(15,23,42,.16);backdrop-filter:blur(10px)}
.flash.flash-toast{animation:toast-in .22s ease-out}
.flash.flash-toast.is-leaving{animation:toast-out .20s ease-in forwards}
.flash-toast-close{position:absolute;top:10px;right:10px;border:0;background:transparent;color:inherit;font-size:22px;line-height:1;width:32px;height:32px;cursor:pointer;border-radius:10px}
.flash-toast-close:hover{background:rgba(15,23,42,.08)}
@keyframes toast-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes toast-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}
@media (max-width:1080px){.archive-hero-grid-separated{grid-template-columns:1fr}.archive-year-nav-wrap{padding:12px}.flash{right:12px;bottom:12px;max-width:calc(100vw - 24px)}}

.archive-hero-main h1{max-width:11ch;line-height:1}.archive-hero-main p{max-width:62ch}.archive-hero-actions{align-self:end}.archive-hero-actions .btn{min-width:220px;justify-content:center;border-radius:18px;box-shadow:0 14px 28px rgba(15,23,42,.08)}.archive-hero-actions .btn-primary{padding-inline:22px}.archive-hero-aside-card{border-radius:28px}.archive-hero-aside-card p{max-width:30ch}.admin-card{scroll-margin-top:110px}.admin-card[id^="admin-tools-"]{position:relative}.admin-card[id^="admin-tools-"]::before{content:"";position:absolute;inset:0 auto auto 0;width:72px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--brand),rgba(94,147,221,.22));margin:20px 24px}.admin-card[id^="admin-tools-"] h2{padding-top:14px}

.admin-section-chip{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;margin:4px 0 10px;border-radius:999px;background:rgba(47,103,199,.08);border:1px solid rgba(47,103,199,.14);color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}

.admin-topbar-routed{margin-bottom:18px}.admin-breadcrumbs{display:flex;align-items:center;gap:10px;margin-bottom:10px;color:var(--muted);font-size:.92rem;font-weight:700}.admin-breadcrumbs a{text-decoration:none;color:var(--primary)}.admin-route-tabs{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}.admin-route-tab{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:14px;text-decoration:none;background:#fff;border:1px solid rgba(37,99,235,.10);color:var(--text);font-weight:800;box-shadow:0 8px 20px rgba(15,23,42,.04)}.admin-route-tab.is-active{background:linear-gradient(180deg,#1d4ed8,#2563eb);color:#fff;border-color:transparent;box-shadow:0 14px 28px rgba(37,99,235,.24)}body[data-admin-route-view='1'] .admin-main{min-width:0}body[data-admin-route-view='1'] .admin-card[hidden],body[data-admin-route-view='1'] .admin-stats[hidden],body[data-admin-route-view='1'] .admin-archive-toolbar[hidden],body[data-admin-route-view='1'] .admin-panel[hidden]{display:none !important}body[data-admin-route-view='1'] .admin-switcher{margin-bottom:18px}body[data-admin-route-view='1'] .admin-switcher-btn{pointer-events:none;opacity:.7}body[data-admin-route-view='1'] .admin-switcher-btn.is-active{opacity:1}body[data-admin-route-view='1'] .admin-card.wide{margin-bottom:0}.archive-hero-main .archive-kicker{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.14)}.archive-hero-actions .btn{border-color:transparent}.archive-hero-actions .btn-secondary{background:rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(10px)}.archive-hero-actions .btn-secondary:hover{background:rgba(255,255,255,.2)}.archive-hero-actions .btn-primary{background:linear-gradient(180deg,#7ec7ff,#5fa8ff);color:#08213c;box-shadow:0 16px 30px rgba(95,168,255,.28)}.archive-hero-actions .btn-primary:hover{filter:brightness(1.03)}.archive-hero-years-dropdown{display:grid;grid-template-columns:1fr;gap:10px}.archive-hero-select-label{font-size:.9rem;font-weight:700;color:rgba(255,255,255,.84)}.archive-hero-select-wrap{position:relative}.archive-hero-select{width:100%;min-height:52px;padding:0 16px;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.1);color:#fff;font-weight:800;outline:none;backdrop-filter:blur(8px)}.archive-hero-select option{color:#0f172a;background:#fff}

/* 2026-04-13 admin route tabs alignment + archive hero actions polish */
@media (min-width: 1181px){
  .admin-route-tabs{
    margin:0 0 18px 328px;
    width:calc(100% - 328px);
  }
}
@media (min-width: 1181px) and (max-width: 1400px){
  .admin-route-tabs{
    margin-left:284px;
    width:calc(100% - 284px);
  }
}
body[data-admin-route-view='1'] .admin-switcher{
  display:none !important;
}
body[data-admin-route-view='1'] .admin-route-tabs{
  position:relative;
  z-index:1;
}
.archive-hero-card{
  background:linear-gradient(180deg,#eef8ff 0%, #d9eefc 100%);
  border:1px solid rgba(123,166,210,.24);
  box-shadow:0 22px 50px rgba(77,114,153,.12);
}
.archive-hero-card::before{
  background:linear-gradient(115deg,rgba(238,248,255,.90) 0%,rgba(216,236,249,.84) 44%,rgba(205,231,245,.80) 100%),var(--facet-image) center/cover no-repeat;
  opacity:1;
}
.archive-hero-card::after{
  background:radial-gradient(circle,rgba(115,180,222,.18),rgba(115,180,222,0));
}
.archive-hero-main h1,
.archive-hero-aside-card strong{
  color:#17324f;
}
.archive-hero-main p,
.archive-hero-aside-card p,
.archive-hero-select-label{
  color:#496580;
}
.archive-hero-pills span{
  background:rgba(255,255,255,.72);
  color:#23415f;
  border:1px solid rgba(130,166,201,.28);
  box-shadow:0 10px 24px rgba(77,114,153,.08);
}
.archive-hero-main .archive-kicker{
  background:#ffffff;
  color:#28527a;
  border:1px solid rgba(130,166,201,.26);
}
.archive-kicker-dark{
  background:rgba(255,255,255,.8);
  color:#2d557a;
}
.archive-hero-actions{
  align-self:start;
  padding:0 34px 34px;
}
.archive-hero-actions-card{
  width:100%;
  display:grid;
  gap:16px;
  padding:22px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(244,250,255,.94));
  border:1px solid rgba(130,166,201,.24);
  box-shadow:0 18px 36px rgba(77,114,153,.10);
}
.archive-hero-actions-card__eyebrow{
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:#547394;
}
.archive-hero-actions-buttons{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.archive-hero-actions .btn{
  min-width:0;
  width:100%;
  min-height:62px;
  padding:16px 20px;
  border-radius:20px;
  font-size:1.06rem;
  line-height:1.3;
  box-shadow:none;
}
.archive-hero-actions .btn-secondary{
  background:linear-gradient(180deg,#ffffff,#f4f9ff);
  color:#1d3f64;
  border:1px solid rgba(130,166,201,.26);
}
.archive-hero-actions .btn-secondary:hover{
  background:linear-gradient(180deg,#ffffff,#edf6ff);
  border-color:rgba(93,142,189,.34);
}
.archive-hero-actions .btn-primary{
  background:linear-gradient(180deg,#4f88df,#3f74d2);
  color:#fff;
  border:1px solid transparent;
  box-shadow:0 16px 28px rgba(63,116,210,.22);
}
.archive-hero-actions .btn-primary:hover{
  filter:none;
  background:linear-gradient(180deg,#5a91e4,#467bd8);
}
.archive-hero-aside-card{
  padding:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(235,245,252,.92));
  border:1px solid rgba(130,166,201,.22);
  box-shadow:0 18px 36px rgba(77,114,153,.10);
}
.archive-hero-years a,
.archive-hero-select{
  background:rgba(255,255,255,.82);
  color:#1f446b;
  border:1px solid rgba(130,166,201,.28);
  box-shadow:none;
}
.archive-hero-years a:hover{
  background:#ffffff;
}
@media (max-width: 720px){
  .archive-hero-actions-buttons{
    grid-template-columns:1fr;
  }
}

/* 2026-04-13 admin contacts/footer editor: wider workspace + flexible icon rows */
.admin-shell.container{width:min(1520px,calc(100% - 32px))}
.admin-workspace{grid-template-columns:252px minmax(0,1fr);gap:28px}
.admin-card-contacts{max-width:none}
.admin-row-2-wide{grid-template-columns:repeat(2,minmax(260px,1fr))}
.admin-row-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-row-4{display:grid;grid-template-columns:1.05fr 1.55fr .8fr .7fr;gap:12px}
.admin-form-block{display:grid;gap:14px;padding:18px;border:1px solid rgba(47,103,199,.08);border-radius:22px;background:linear-gradient(180deg,#fff,rgba(247,250,255,.92))}
.admin-form-block-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.admin-form-block-head h3{margin:0 0 6px;font-size:18px;color:var(--text-strong)}
.admin-contact-entry-list,.admin-social-entry-list{grid-template-columns:1fr}
.admin-contact-entry{padding:18px;border-radius:20px}
.admin-row-contacts input,.admin-row-socials input{width:100%}
.contact-item-copy,.footer-contact-copy{display:grid;gap:2px;min-width:0}
.contact-item-copy strong,.footer-contact-copy strong{font-size:13px;line-height:1.25;color:var(--text-strong)}
.footer-contact-copy span:last-child{color:#203a5f;line-height:1.45}
.social-link-card--facebook{background:linear-gradient(135deg,#1877f2,#145fbe);border-color:rgba(24,119,242,.24);color:#fff}
.social-link-card--youtube{background:linear-gradient(135deg,#ff3b30,#d91f15);border-color:rgba(255,59,48,.22);color:#fff}
.social-link-card--tiktok{background:linear-gradient(135deg,#101828,#1f2937);border-color:rgba(17,24,39,.24);color:#fff}
.footer-social-link--facebook{color:#fff;background:linear-gradient(135deg,#1877f2,#145fbe);border-color:rgba(24,119,242,.24)}
.footer-social-link--youtube{color:#fff;background:linear-gradient(135deg,#ff3b30,#d91f15);border-color:rgba(255,59,48,.22)}
.footer-social-link--tiktok{color:#fff;background:linear-gradient(135deg,#101828,#1f2937);border-color:rgba(17,24,39,.24)}
@media (max-width: 1280px){
  .admin-shell.container{width:min(1420px,calc(100% - 24px))}
  .admin-row-4{grid-template-columns:1fr 1.2fr 1fr 1fr}
}
@media (max-width: 1180px){
  .admin-shell.container{width:min(100%,calc(100% - 24px))}
  .admin-row-3,.admin-row-4,.admin-row-2-wide{grid-template-columns:1fr}
  .admin-form-block-head{flex-direction:column}
}

/* 2026-04-14 admin contacts/footer responsive card fit fix */
.admin-contact-entry,
.admin-form-block,
.admin-items.admin-inline-editor .admin-item{
  overflow:visible;
}
.admin-row-contacts,
.admin-row-socials{
  align-items:start;
}
.admin-row-contacts{
  grid-template-columns:minmax(180px,1fr) minmax(240px,1.35fr) minmax(250px,.95fr);
}
.admin-row-socials{
  grid-template-columns:minmax(170px,.95fr) minmax(250px,1.4fr) minmax(250px,.95fr) minmax(120px,.55fr);
}
.admin-row-contacts > label,
.admin-row-socials > label{
  min-width:0;
}
.admin-icon-picker{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-width:0;
}
.admin-icon-preview{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  min-width:48px;
  border-radius:14px;
  border:1px solid rgba(130,166,201,.28);
  background:linear-gradient(180deg,#ffffff,#f3f8ff);
  color:#1e3d61;
  box-shadow:0 8px 18px rgba(77,114,153,.08);
}
.admin-icon-preview svg{
  width:24px;
  height:24px;
  display:block;
  flex:0 0 auto;
}
.admin-icon-picker select,
.admin-icon-picker input{
  width:100%;
  min-width:0;
  margin-top:0;
}
.admin-actions.admin-actions-end{
  justify-content:flex-end;
  flex-wrap:wrap;
}
@media (max-width: 1500px){
  .admin-row-socials{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
  .admin-row-socials > label:nth-child(3){
    grid-column:1 / -1;
    max-width:360px;
  }
}
@media (max-width: 1340px){
  .admin-row-contacts{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
  .admin-row-contacts > label:last-child{
    grid-column:1 / -1;
    max-width:360px;
  }
}
@media (max-width: 760px){
  .admin-row-contacts,
  .admin-row-socials{
    grid-template-columns:1fr;
  }
  .admin-row-contacts > label:last-child,
  .admin-row-socials > label:nth-child(3){
    grid-column:auto;
    max-width:none;
  }
  .admin-icon-picker{
    grid-template-columns:44px minmax(0,1fr);
  }
  .admin-icon-preview{
    width:44px;
    height:44px;
    min-width:44px;
  }
}


/* 2026-04-13 admin contacts/footer full-width card fit */
.admin-grid-top > .admin-card-contacts{
  grid-column:1 / -1;
}
#admin-tools-site .admin-form-block,
#admin-tools-site .admin-contact-entry{
  min-width:0;
}
#admin-tools-site .admin-row-contacts{
  grid-template-columns:minmax(220px,1fr) minmax(280px,1.45fr) minmax(360px,1.2fr);
}
#admin-tools-site .admin-row-socials{
  grid-template-columns:minmax(180px,.95fr) minmax(300px,1.5fr) minmax(360px,1.15fr) minmax(120px,.55fr);
}
#admin-tools-site .admin-icon-picker{
  grid-template-columns:52px minmax(240px,1fr);
}
#admin-tools-site .admin-icon-preview{
  width:52px;
  height:52px;
  min-width:52px;
}
#admin-tools-site .admin-icon-preview svg{
  width:26px;
  height:26px;
}
@media (max-width: 1460px){
  #admin-tools-site .admin-row-socials{
    grid-template-columns:repeat(2,minmax(240px,1fr));
  }
  #admin-tools-site .admin-row-socials > label:nth-child(3){
    grid-column:1 / -1;
    max-width:none;
  }
}
@media (max-width: 1280px){
  #admin-tools-site .admin-row-contacts{
    grid-template-columns:repeat(2,minmax(240px,1fr));
  }
  #admin-tools-site .admin-row-contacts > label:last-child{
    grid-column:1 / -1;
    max-width:none;
  }
}
@media (max-width: 860px){
  #admin-tools-site .admin-row-contacts,
  #admin-tools-site .admin-row-socials,
  #admin-tools-site .admin-row-2-wide{
    grid-template-columns:1fr;
  }
  #admin-tools-site .admin-row-contacts > label:last-child,
  #admin-tools-site .admin-row-socials > label:nth-child(3){
    grid-column:auto;
  }
  #admin-tools-site .admin-icon-picker{
    grid-template-columns:48px minmax(0,1fr);
  }
  #admin-tools-site .admin-icon-preview{
    width:48px;
    height:48px;
    min-width:48px;
  }
}

/* 2026-04-13 admin tools full-width cards and field fit pass */
.admin-grid-top,
.admin-grid-tools{
  grid-template-columns:minmax(0,1fr);
}
.admin-grid-top > .admin-card,
.admin-grid-tools > .admin-card,
.admin-panel > .admin-card,
.admin-panel > .admin-card.wide{
  grid-column:1 / -1;
  max-width:none;
}
.admin-panel .admin-items,
.admin-panel .admin-nav-editor,
.admin-panel .admin-stream-links-grid{
  grid-template-columns:minmax(0,1fr);
}
.admin-panel .admin-card,
.admin-panel .admin-item,
.admin-panel .admin-form-block,
.admin-panel .admin-inline-card,
.admin-panel .admin-nav-item{
  width:100%;
  max-width:none;
}
.admin-panel label,
.admin-panel input,
.admin-panel select,
.admin-panel textarea{
  min-width:0;
}
.admin-panel input,
.admin-panel select,
.admin-panel textarea,
.admin-panel .btn{
  max-width:100%;
}
.admin-panel .admin-row-2,
.admin-panel .admin-row-3,
.admin-panel .admin-row-4,
.admin-panel .admin-row-2-wide,
.admin-panel .admin-row-contacts,
.admin-panel .admin-row-socials{
  width:100%;
}
.admin-panel .admin-actions{
  width:100%;
}
.admin-panel .admin-actions.admin-actions-end{
  justify-content:flex-end;
}
.admin-panel [data-icon-custom-input][hidden]{
  display:none !important;
}
@media (min-width: 1181px){
  .admin-panel .admin-row-2,
  .admin-panel .admin-row-2-wide{
    grid-template-columns:repeat(2,minmax(280px,1fr));
  }
  .admin-panel .admin-row-3{
    grid-template-columns:repeat(3,minmax(220px,1fr));
  }
  .admin-panel .admin-row-4{
    grid-template-columns:minmax(220px,1fr) minmax(300px,1.35fr) minmax(280px,1fr) minmax(140px,.6fr);
  }
  .admin-panel .admin-news-images,
  .admin-panel .admin-image-sorter-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}


/* 2026-04-13 admin tools spacing + icon picker reliability fix */
.admin-shell.container{width:min(1540px,calc(100% - 40px))}
.admin-workspace{grid-template-columns:252px minmax(0,1fr);gap:36px}
.admin-main{min-width:0;padding-left:8px}
.admin-grid-top,.admin-grid-tools,.admin-panel{gap:24px}
.admin-panel .admin-card{padding-left:24px;padding-right:24px}
.admin-panel .admin-form-block{padding:20px 20px 18px}
.admin-panel .admin-item{padding:20px}
.admin-panel .admin-icon-picker{grid-template-columns:52px minmax(260px,1fr)}
.admin-panel .admin-icon-picker > *{min-width:0}
.admin-panel .admin-icon-picker select,.admin-panel .admin-icon-picker input{display:block;width:100%}
.admin-panel [data-icon-custom-input]{display:block}
.admin-panel [data-icon-custom-input][hidden]{display:none !important}
@media (max-width:1280px){.admin-shell.container{width:min(100%,calc(100% - 28px))}.admin-workspace{gap:24px}.admin-main{padding-left:0}}
@media (max-width:1100px){.admin-main{padding-left:0}}

.admin-nav-item-materials textarea[readonly]{background:rgba(242,247,255,.9);color:var(--text-strong)}
.admin-materials-nav-preview{display:grid;gap:12px;margin-top:10px;padding:14px 16px;border:1px solid rgba(47,103,199,.12);border-radius:18px;background:rgba(248,251,255,.95)}
.admin-materials-nav-preview__link,.admin-materials-nav-preview__group li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid rgba(47,103,199,.1)}
.admin-materials-nav-preview__group{display:grid;gap:8px}
.admin-materials-nav-preview__group strong{font-size:14px;color:var(--brand)}
.admin-materials-nav-preview__group ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.admin-materials-nav-preview span{font-weight:700;color:var(--text-strong)}
.admin-materials-nav-preview small{display:block;color:var(--muted);word-break:break-word;text-align:right}
@media (max-width: 768px){.admin-materials-nav-preview__link,.admin-materials-nav-preview__group li{flex-direction:column}.admin-materials-nav-preview small{text-align:left}}

/* 2026-04-13: materials sections ordering + live preview */
.admin-material-structure-preview{display:grid;gap:12px;margin:8px 0 18px;padding:16px 18px;border:1px solid rgba(47,103,199,.12);border-radius:20px;background:rgba(248,251,255,.96)}
.admin-material-structure-preview__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.admin-material-structure-preview__head strong{display:block;font-size:16px;color:var(--text-strong)}
.admin-material-structure-preview__head p{margin:4px 0 0;color:var(--muted)}
.admin-material-structure-preview__body{display:grid;gap:10px}
.admin-material-structure-preview__group{display:grid;gap:8px}
.admin-material-structure-preview__group strong{font-size:14px;color:var(--brand)}
.admin-material-structure-preview__group ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.admin-material-structure-preview__group li,.admin-material-structure-preview__empty{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid rgba(47,103,199,.1)}
.admin-material-structure-preview__group span{font-weight:700;color:var(--text-strong)}
.admin-material-structure-preview__group small{display:block;color:var(--muted);word-break:break-word;text-align:right}
.admin-material-structure-preview__empty{color:var(--muted)}
.admin-item-order-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:10px 12px;border-radius:16px;background:rgba(47,103,199,.06);border:1px dashed rgba(47,103,199,.18)}
.admin-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;border:1px solid rgba(47,103,199,.16);background:#fff;color:var(--text-strong);font-size:22px;line-height:1;cursor:grab;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.admin-drag-handle:active{cursor:grabbing}
.admin-order-pill{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border-radius:999px;background:rgba(47,103,199,.12);color:var(--brand);font-weight:800}
.admin-order-meta{color:var(--muted);font-size:14px;flex:1 1 220px}
.admin-order-actions{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
[data-material-section-row].is-dragging{opacity:.55;border-color:rgba(47,103,199,.35);box-shadow:0 18px 40px rgba(47,103,199,.12)}
[data-material-section-row]{cursor:default}
@media (max-width: 768px){
  .admin-material-structure-preview__group li,.admin-material-structure-preview__empty{flex-direction:column}
  .admin-material-structure-preview__group small{text-align:left}
  .admin-item-order-strip{align-items:flex-start}
  .admin-order-actions{margin-left:0;width:100%}
  .admin-order-actions .btn{flex:1 1 140px}
}

.registration-page{display:grid;gap:20px;max-width:920px}
.registration-form-card,.registration-edit-link-card{padding:24px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg,#ffffff,#f7faff);box-shadow:var(--shadow-soft)}
.registration-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
.registration-role-option{position:relative;display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:#fff;cursor:pointer;transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease}
.registration-role-option:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.24)}
.registration-role-option.is-active{border-color:rgba(37,99,235,.38);box-shadow:0 12px 28px rgba(37,99,235,.12)}
.registration-role-option input{position:absolute;inset:0;opacity:0;cursor:pointer}
.registration-role-option span{display:grid;gap:4px}
.registration-role-option strong{color:var(--text-strong)}
.registration-role-option small{color:var(--muted);font-weight:700}
.registration-speaker-fields{display:grid;gap:14px;padding:18px;border:1px dashed var(--line-strong);border-radius:18px;background:rgba(37,99,235,.03)}
.registration-edit-link-card input{width:100%;margin-top:8px}
@media (max-width: 720px){.registration-role-grid{grid-template-columns:1fr}}

/* 2026-04-13: registration CTA in header and admin registration route */
.site-nav{
  justify-content:flex-end;
  width:100%;
}
.site-nav-main{
  flex:1 1 auto;
}
.nav-accent-registration{
  gap:8px;
  padding:0 14px;
  min-width:0;
  max-width:220px;
}
.nav-accent-registration__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  flex:0 0 18px;
}
.nav-accent-registration__icon svg{
  width:18px;
  height:18px;
  display:block;
}
@media (max-width: 1320px){
  .nav-accent-registration{
    padding:0 12px;
    font-size:13px;
  }
}
@media (max-width: 1120px){
  .nav-accent-registration{
    padding:0 11px;
    max-width:190px;
  }
}
@media (max-width: 920px){
  .nav-accent-registration{
    max-width:none;
    width:100%;
    justify-content:flex-start;
    border-radius:14px;
  }
}


/* 2026-04-13: registration UX and header nav fit */
.header-actions{flex:1 1 auto;justify-content:flex-end}
.site-nav{flex:1 1 auto;justify-content:flex-end;gap:12px}
.site-nav-main{flex:1 1 auto;justify-content:flex-end;gap:4px;overflow:hidden}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{flex:0 1 auto;min-width:0}
.nav-link,.nav-group-trigger{padding:10px 12px}
.nav-link,.nav-group-trigger,.nav-accent-registration span:last-child{overflow:hidden;text-overflow:ellipsis}
.nav-accent{flex:0 0 auto}
.nav-accent-registration{display:inline-flex;align-items:center;gap:10px;padding:0 16px;max-width:220px;min-height:46px}
.nav-accent-registration span:last-child{white-space:nowrap}
@media (min-width: 921px) and (max-width: 1380px){
  .brand{max-width:380px;flex-basis:380px}
  .brand-text strong{font-size:14px}
  .site-nav{gap:8px}
  .site-nav-main{padding:4px 5px}
  .nav-link,.nav-group-trigger{padding:9px 10px;font-size:12.5px}
  .nav-accent{padding:0 14px;font-size:12.5px}
  .nav-accent-registration{max-width:186px;padding:0 14px}
}
@media (min-width: 921px) and (max-width: 1200px){
  .brand{max-width:300px;flex-basis:300px}
  .brand-text span{display:none}
  .nav-link,.nav-group-trigger{padding:8px 9px;font-size:12px}
  .nav-accent{padding:0 12px;font-size:12px}
  .nav-accent-registration{max-width:168px}
}
.registration-section{padding-top:40px}
.registration-page{display:grid;gap:22px;max-width:980px}
.registration-hero-card{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px;padding:28px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,247,255,.96));box-shadow:var(--shadow);position:relative;overflow:hidden}
.registration-hero-card::after{content:'';position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:999px;background:radial-gradient(circle,rgba(93,185,218,.2),transparent 65%)}
.registration-hero-copy,.registration-hero-aside{position:relative;z-index:1}
.registration-hero-copy h1{margin:0 0 14px;font-size:clamp(30px,4vw,44px);line-height:1.08;color:var(--text-strong)}
.registration-hero-copy p{margin:0;color:var(--muted);font-size:16px;max-width:60ch}
.registration-hero-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.registration-hero-points span{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(47,103,199,.08);color:var(--brand);font-size:13px;font-weight:800}
.registration-hero-aside{display:grid;gap:14px;align-content:start}
.registration-hero-stat{padding:16px 18px;border-radius:20px;background:#fff;border:1px solid rgba(25,67,111,.08);box-shadow:var(--shadow-soft)}
.registration-hero-stat strong{display:block;font-size:18px;color:var(--text-strong);margin-bottom:6px}
.registration-hero-stat span{display:block;color:var(--muted);font-size:14px;line-height:1.45}
.registration-form-card,.registration-edit-link-card{padding:28px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(180deg,#ffffff,#f7faff);box-shadow:var(--shadow-soft)}
.registration-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}
.registration-form-grid-full{grid-column:1/-1}
.registration-form-card label{display:grid;gap:8px}
.registration-form-card input,.registration-form-card textarea{width:100%}
.registration-form-note{margin:4px 0 0;color:var(--muted);font-size:14px;line-height:1.55}
.registration-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
.registration-role-option{position:relative;display:flex;align-items:center;gap:12px;padding:18px 20px;border:1px solid var(--line);border-radius:20px;background:#fff;cursor:pointer;transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease}
.registration-role-option::before{content:'';width:14px;height:14px;border-radius:999px;border:2px solid rgba(47,103,199,.22);background:#fff;box-shadow:inset 0 0 0 3px #fff}
.registration-role-option:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.24)}
.registration-role-option.is-active{border-color:rgba(37,99,235,.38);box-shadow:0 12px 28px rgba(37,99,235,.12);background:linear-gradient(180deg,#ffffff,#f4f8ff)}
.registration-role-option.is-active::before{background:var(--brand);border-color:var(--brand)}
.registration-role-option input{position:absolute;inset:0;opacity:0;cursor:pointer}
.registration-role-option span{display:grid;gap:4px}
.registration-role-option strong{color:var(--text-strong)}
.registration-role-option small{color:var(--muted);font-weight:700}
.registration-speaker-fields{display:grid;gap:14px;padding:20px;border:1px dashed var(--line-strong);border-radius:20px;background:rgba(37,99,235,.035);margin-bottom:18px}
.registration-speaker-fields__head{display:grid;gap:4px}
.registration-speaker-fields__head strong{color:var(--text-strong)}
.registration-speaker-fields__head span{color:var(--muted);font-size:14px}
.registration-edit-link-card input{width:100%;margin-top:8px}
@media (max-width: 920px){
  .registration-hero-card{grid-template-columns:1fr}
  .registration-form-grid,.registration-role-grid{grid-template-columns:1fr}
}

/* 2026-04-13: header nav fit, dropdown visibility, registration hero background */
.header-row{gap:20px;align-items:center}
.header-actions{display:flex;align-items:center;justify-content:flex-end;min-width:0;flex:1 1 auto}
.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex:1 1 auto;min-width:0;overflow:visible}
.site-nav-main{display:flex;align-items:center;justify-content:flex-start;gap:2px;flex:1 1 auto;min-width:0;overflow:visible;padding:6px 8px;white-space:nowrap}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{flex:0 0 auto;min-width:0}
.site-nav-cta{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:0 0 auto;min-width:0}
.nav-group{position:relative}
.nav-link,.nav-group-trigger{white-space:nowrap;overflow:visible;text-overflow:clip}
.nav-link,.nav-group-trigger{padding:10px 12px;font-size:15px}
.nav-dropdown{z-index:120;min-width:240px}
.nav-accent,.nav-accent-trigger,.nav-accent-registration{white-space:nowrap;overflow:visible;text-overflow:clip;min-height:46px}
.nav-accent{display:inline-flex;align-items:center;justify-content:center;padding:0 18px;font-size:14px;line-height:1.15}
.nav-accent-registration{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 18px;max-width:none;min-width:max-content}
.nav-accent-registration span:last-child{white-space:nowrap;overflow:visible;text-overflow:clip}
.nav-accent-dropdown{right:0;left:auto}
@media (min-width: 921px) and (max-width: 1440px){
  .brand{max-width:360px;flex:0 1 360px}
  .brand-text strong{font-size:14px;line-height:1.2}
  .brand-text span{font-size:11px}
  .site-nav{gap:10px}
  .site-nav-main{gap:0;padding:5px 6px}
  .nav-link,.nav-group-trigger{padding:9px 10px;font-size:14px}
  .nav-accent,.nav-accent-trigger,.nav-accent-registration{font-size:13px}
  .nav-accent{padding:0 16px}
  .nav-accent-registration{padding:0 16px}
}
@media (min-width: 921px) and (max-width: 1280px){
  .brand{max-width:308px;flex-basis:308px}
  .brand-text span{display:none}
  .site-nav{gap:8px}
  .nav-link,.nav-group-trigger{padding:8px 9px;font-size:13px}
  .nav-accent,.nav-accent-trigger,.nav-accent-registration{font-size:12px}
  .nav-accent{padding:0 14px}
  .nav-accent-registration{padding:0 14px}
}
@media (max-width: 920px){
  .site-nav{gap:8px}
  .site-nav-cta{display:grid;gap:8px;width:100%}
  .nav-accent,.nav-accent-registration,.nav-accent-trigger{width:100%;justify-content:flex-start}
  .nav-accent-registration{min-width:0}
}
.registration-hero-card{background:
  linear-gradient(135deg, rgba(10, 27, 56, 0.76), rgba(31, 95, 154, 0.68)),
  url('/assets/design/forum-facets-20260331.webp') center/cover no-repeat;border:1px solid rgba(255,255,255,.14);box-shadow:0 28px 70px rgba(15,23,42,.18)}
.registration-hero-card::after{display:none}
.registration-hero-copy h1,.registration-hero-copy p,.registration-hero-stat strong,.registration-hero-stat span{color:#fff}
.registration-hero-copy .eyebrow{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.18)}
.registration-hero-points span{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px)}
.registration-hero-stat{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);box-shadow:none;backdrop-filter:blur(8px)}
.registration-speaker-fields[hidden]{display:none !important}
.registration-form-card .form-note{margin:0;color:var(--muted)}


/* 2026-04-13: final header width fit + reliable registration role toggle */
.site-header{
  overflow:visible;
}
.header-row{
  display:grid;
  grid-template-columns:minmax(250px, 360px) minmax(0, 1fr);
  gap:18px;
  align-items:center;
}
.brand{
  max-width:none;
  flex:none;
  min-width:0;
}
.header-actions{
  min-width:0;
}
.site-nav{
  width:100%;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.site-nav-main{
  flex:1 1 auto;
  min-width:0;
  justify-content:flex-end;
  gap:0;
  padding:6px;
}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{
  flex:0 1 auto;
  min-width:0;
}
.nav-link,
.nav-group-trigger{
  min-width:0;
  padding:10px 10px;
  font-size:14px;
  line-height:1.15;
}
.site-nav-cta{
  flex:0 0 auto;
  gap:10px;
}
.nav-accent,
.nav-accent-trigger,
.nav-accent-registration{
  min-height:46px;
  padding:0 14px;
  font-size:13px;
  line-height:1.1;
}
.nav-accent-registration{
  gap:8px;
}
.nav-accent-registration__icon{
  width:24px;
  height:24px;
  flex:0 0 24px;
}
.nav-dropdown{
  z-index:200;
}
.registration-speaker-fields[hidden],
.registration-speaker-fields[aria-hidden="true"]{
  display:none !important;
}
@media (max-width: 1500px){
  .header-row{
    grid-template-columns:minmax(230px, 320px) minmax(0, 1fr);
    gap:14px;
  }
  .brand-text strong{
    font-size:14px;
  }
  .brand-text span{
    font-size:11px;
  }
  .nav-link,
  .nav-group-trigger{
    padding:9px 9px;
    font-size:13px;
  }
  .nav-accent,
  .nav-accent-trigger,
  .nav-accent-registration{
    padding:0 12px;
    font-size:12px;
  }
}
@media (max-width: 1320px){
  .header-row{
    grid-template-columns:minmax(210px, 270px) minmax(0, 1fr);
  }
  .brand-text span{
    display:none;
  }
  .nav-link,
  .nav-group-trigger{
    padding:8px 8px;
    font-size:12.5px;
  }
  .site-nav-cta{
    gap:8px;
  }
  .nav-accent,
  .nav-accent-trigger,
  .nav-accent-registration{
    padding:0 10px;
    font-size:11.5px;
  }
}
@media (max-width: 1180px){
  .header-row{
    grid-template-columns:minmax(185px, 220px) minmax(0, 1fr);
  }
  .brand-logo{
    width:36px;
    height:36px;
  }
  .brand-logo-stack{
    padding:8px 9px;
  }
  .brand-text strong{
    font-size:12.5px;
  }
  .nav-link,
  .nav-group-trigger{
    padding:8px 7px;
    font-size:11.5px;
  }
  .nav-accent,
  .nav-accent-trigger,
  .nav-accent-registration{
    padding:0 9px;
    font-size:11px;
  }
}

/* 2026-04-13: final registration SPA init + lighter hero + stable header fit */
.registration-hero-card{
  background:
    linear-gradient(135deg, rgba(250,253,255,.93), rgba(236,245,255,.88)),
    url('/assets/design/forum-facets-20260331.webp') center/cover no-repeat !important;
  border-color: rgba(144, 169, 203, .26);
}
.registration-hero-copy h1,
.registration-hero-copy p,
.registration-hero-stat strong,
.registration-hero-stat span{
  color: var(--text-strong) !important;
}
.registration-hero-copy .eyebrow{
  background: rgba(255,255,255,.78) !important;
  color: var(--brand) !important;
  border-color: rgba(64,106,175,.14) !important;
}
.registration-hero-points span{
  background: rgba(255,255,255,.72) !important;
  color: var(--text-strong) !important;
  border: 1px solid rgba(64,106,175,.12) !important;
  backdrop-filter: blur(6px);
}
.registration-hero-stat{
  background: rgba(255,255,255,.74) !important;
  border-color: rgba(64,106,175,.12) !important;
  box-shadow: var(--shadow-soft) !important;
}
.registration-speaker-fields[hidden],
.registration-speaker-fields[aria-hidden="true"]{
  display: none !important;
}

@media (max-width: 1560px){
  .header-row{
    grid-template-columns: minmax(240px, 330px) minmax(0, 1fr);
    align-items: start;
  }
  .site-nav{
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    align-items: start;
  }
  .site-nav-main{
    justify-content: flex-start;
    flex-wrap: wrap;
    row-gap: 4px;
  }
  .site-nav-cta{
    justify-content: flex-end;
    flex-wrap: wrap;
  }
  .nav-link,
  .nav-group-trigger{
    white-space: nowrap;
  }
}
@media (max-width: 1360px){
  .header-row{
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  }
  .brand-text span{
    display: none;
  }
  .site-nav-main{
    gap: 2px;
  }
  .nav-link,
  .nav-group-trigger{
    font-size: 13px;
    padding: 9px 8px;
  }
}

/* 2026-04-13: header width stabilization + reliable registration role switch */
.site-header .container{
  overflow:visible;
}
.header-row{
  grid-template-columns:minmax(240px, 330px) minmax(0, 1fr);
  gap:20px;
}
.header-actions{
  min-width:0;
}
.site-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:nowrap;
  min-width:0;
}
.site-nav-main{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex:1 1 auto;
  min-width:0;
  gap:2px;
  padding:6px 8px;
}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{
  flex:0 1 auto;
  min-width:0;
}
.nav-link,
.nav-group-trigger{
  white-space:nowrap;
  padding:10px 12px;
}
.site-nav-cta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.nav-accent,
.nav-accent-trigger,
.nav-accent-registration{
  flex:0 0 auto;
  white-space:nowrap;
}
.nav-accent-registration span:last-child,
.nav-accent span,
.nav-accent-trigger{
  white-space:nowrap;
}
.nav-dropdown,
.nav-accent-dropdown{
  z-index:250;
}
.registration-speaker-fields.is-hidden,
.registration-speaker-fields[hidden],
.registration-speaker-fields[aria-hidden="true"]{
  display:none !important;
}
@media (max-width: 1580px){
  .header-row{
    grid-template-columns:minmax(220px, 290px) minmax(0, 1fr);
    gap:16px;
  }
  .brand-text strong{font-size:15px}
  .brand-text span{font-size:12px}
  .nav-link,
  .nav-group-trigger{padding:9px 10px;font-size:13px}
  .nav-accent,
  .nav-accent-trigger,
  .nav-accent-registration{padding:0 14px;font-size:12.5px}
}
@media (max-width: 1440px){
  .header-row{
    grid-template-columns:minmax(200px, 250px) minmax(0, 1fr);
  }
  .brand-text span{display:none}
  .site-nav{
    flex-wrap:wrap;
    row-gap:10px;
  }
  .site-nav-main{
    order:1;
    width:100%;
    justify-content:flex-start;
  }
  .site-nav-cta{
    order:2;
    width:100%;
    justify-content:flex-end;
  }
}
@media (max-width: 1220px){
  .header-row{
    grid-template-columns:1fr;
  }
  .brand{
    max-width:none;
  }
  .site-nav{
    flex-wrap:wrap;
  }
  .site-nav-main,
  .site-nav-cta{
    width:100%;
  }
}

/* 2026-04-13: registration admin management, export and flash positioning */
.flash{bottom:20px}
@media (max-width:1080px){.flash{bottom:12px}}
.admin-registration-toolbar{display:grid;gap:18px;margin-top:22px;padding:20px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:var(--shadow-soft)}
.admin-registration-toolbar__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.admin-registration-count-card{display:grid;gap:6px;padding:18px;border-radius:20px;background:rgba(47,103,199,.05);border:1px solid rgba(47,103,199,.10)}
.admin-registration-count-card strong{font-size:28px;color:var(--brand)}
.admin-registration-count-card span{color:var(--muted);font-weight:700}
.admin-registration-toolbar__controls{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:14px;align-items:end}
.admin-registration-search{display:grid;gap:8px}
.admin-registration-search span{font-size:13px;color:var(--muted);font-weight:700}
.admin-registration-filter-group{display:flex;flex-wrap:wrap;gap:10px}
.admin-registration-filter-group .btn.is-active{background:linear-gradient(135deg,var(--brand),#5e93dd);border-color:transparent;color:#fff;box-shadow:0 14px 28px rgba(47,103,199,.20)}
.admin-registration-toolbar__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.admin-registration-list{display:grid;gap:24px;margin-top:24px}
.admin-registration-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.admin-registration-card{display:grid;gap:16px;position:relative}
.admin-registration-card__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid rgba(148,163,184,.16)}
.admin-registration-card__head strong{display:block;color:var(--text-strong);font-size:18px;line-height:1.2}
.admin-registration-card__head span{display:block;margin-top:4px;color:var(--muted);font-size:13px;line-height:1.45}
.admin-registration-card__meta{display:grid;gap:6px;justify-items:end;text-align:right}
.admin-registration-card__meta small{color:var(--muted);font-size:12px;font-weight:700}
.admin-registration-card__delete{display:flex;justify-content:flex-end}
.admin-registration-purge-form{display:flex;align-items:center}
.admin-registration-group[hidden]{display:none!important}
.admin-registration-card[hidden]{display:none!important}
@media (max-width:1200px){.admin-registration-toolbar__controls{grid-template-columns:1fr}.admin-registration-toolbar__actions{justify-content:flex-start}.admin-registration-cards{grid-template-columns:1fr}.admin-registration-toolbar__summary{grid-template-columns:1fr}}


/* 2026-04-14 compact archive hero + bottom-right toasts */
.archive-hero-grid-separated{
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.72fr) minmax(280px,.78fr);
  gap:18px;
  padding:0;
  margin-bottom:18px;
}
.archive-hero-main{
  padding:28px 30px;
}
.archive-hero-main h1{
  max-width:none;
  margin-bottom:10px;
  font-size:clamp(2rem,3vw,2.7rem);
  line-height:1.02;
}
.archive-hero-main p{
  max-width:54ch;
  margin:0;
}
.archive-hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
.archive-hero-pills span{
  padding:8px 12px;
  border-radius:999px;
  font-size:.9rem;
}
.archive-hero-actions,
.archive-hero-aside{
  min-width:0;
}
.archive-hero-actions{align-self:stretch;padding:0}
.archive-hero-actions-card,
.archive-hero-aside-card{
  height:100%;
  display:grid;
  align-content:start;
}
.archive-hero-actions-card{
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(255,255,255,.55));
  border:1px solid rgba(255,255,255,.46);
  box-shadow:0 14px 30px rgba(77,114,153,.10);
  backdrop-filter:blur(8px);
}
.archive-hero-actions-card__eyebrow{
  font-size:.8rem;
  font-weight:800;
  color:#4a6b89;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.archive-hero-actions-buttons{
  display:grid;
  gap:10px;
}
.archive-hero-actions .btn{
  min-width:0;
  width:100%;
  min-height:48px;
}
.archive-hero-aside-card{
  gap:12px;
  padding:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(241,248,255,.86));
  border:1px solid rgba(126,164,198,.24);
  box-shadow:0 16px 32px rgba(77,114,153,.10);
  color:#17324f;
}
.archive-hero-aside-card strong{
  font-size:1.15rem;
  line-height:1.15;
}
.archive-hero-aside-card p{
  max-width:none;
  color:#4c6882;
  line-height:1.5;
}
.archive-hero-years-dropdown{
  gap:8px;
}
.archive-hero-select-label{
  font-size:.85rem;
  color:#496580;
}
.archive-hero-select{
  min-height:48px;
  padding:0 42px 0 14px;
  border-radius:16px;
  border:1px solid rgba(130,166,201,.30);
  background:rgba(255,255,255,.92);
  color:#17324f;
  backdrop-filter:none;
  box-shadow:0 10px 24px rgba(77,114,153,.08);
}
.archive-hero-select-wrap::after{
  content:'▾';
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  color:#4c6882;
  pointer-events:none;
  font-size:14px;
}
.archive-hero-select option{color:#17324f;background:#fff}
.archive-year-nav-rich{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0;
  background:none;
  border:0;
  box-shadow:none;
}
.archive-year-nav__link{
  min-width:120px;
  padding:12px 14px;
  border-radius:18px;
}
.archive-year-nav__link small{display:block;margin-top:4px}
.archive-group{scroll-margin-top:120px}
.archive-year-nav__link.is-active{
  background:linear-gradient(180deg,#2563eb,#1d4ed8);
  color:#fff;
  border-color:transparent;
  box-shadow:0 14px 28px rgba(37,99,235,.22);
}
.archive-year-nav__link.is-active small{color:rgba(255,255,255,.88)}
@media (max-width: 1260px){
  .archive-hero-grid-separated{grid-template-columns:minmax(0,1fr) minmax(240px,.72fr);}
  .archive-hero-aside{grid-column:1 / -1}
}
@media (max-width: 920px){
  .archive-hero-grid-separated{grid-template-columns:1fr;gap:14px}
  .archive-hero-main,.archive-hero-actions-card,.archive-hero-aside-card{padding:22px}
  .archive-hero-main h1{font-size:2rem}
  .archive-year-nav-rich{gap:8px}
  .archive-year-nav__link{flex:1 1 calc(50% - 8px)}
}
@media (max-width: 640px){
  .archive-year-nav__link{flex:1 1 100%}
}

/* 2026-04-14: archive layout, registration admin cards, header fit */
.page-section.archive-page{padding-top:24px}
.archive-hero-card{position:relative;z-index:0;overflow:hidden}
.archive-hero-grid-separated{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);align-items:stretch}
.archive-hero-actions{display:none!important}
.archive-hero-main{padding:26px 28px}
.archive-hero-main p{max-width:60ch}
.archive-hero-aside-card{padding:20px 22px;border-radius:22px}
.archive-year-nav-rich{position:sticky;top:calc(var(--header-height) + 14px);z-index:5;background:rgba(245,248,252,.88);backdrop-filter:blur(10px);padding:10px;border-radius:20px;border:1px solid rgba(130,166,201,.18)}
.archive-group{scroll-margin-top:calc(var(--header-height) + 36px)}
@media (max-width:1260px){
  .archive-hero-grid-separated{grid-template-columns:1fr}
  .archive-year-nav-rich{position:static;top:auto}
}

.brand{gap:12px;max-width:470px;flex-basis:470px;transform:translateX(-8px)}
.brand-text strong{max-width:19ch;white-space:normal;line-height:1.14;display:block}
.header-row{grid-template-columns:minmax(285px,470px) minmax(0,1fr)!important}
.site-nav-main{justify-content:center;gap:1px;padding:6px 10px}
.nav-link,.nav-group-trigger{font-size:13px;padding:10px 10px}
.site-nav-cta{gap:8px}
.nav-accent,.nav-accent-trigger,.nav-accent-registration{padding:0 12px;font-size:12.5px}
@media (max-width:1500px){
  .brand{flex-basis:420px;max-width:420px;transform:translateX(-10px)}
  .header-row{grid-template-columns:minmax(250px,420px) minmax(0,1fr)!important}
  .nav-link,.nav-group-trigger{font-size:12.5px;padding:9px 9px}
}
@media (max-width:1380px){
  .brand{flex-basis:360px;max-width:360px}
  .header-row{grid-template-columns:minmax(230px,360px) minmax(0,1fr)!important}
  .site-nav{flex-wrap:wrap;row-gap:10px}
  .site-nav-main{order:1;width:100%;justify-content:flex-start;flex-wrap:wrap}
  .site-nav-cta{order:2;width:100%;justify-content:flex-end;flex-wrap:wrap}
}

.admin-registration-cards{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px}
.admin-registration-card{padding:18px 18px 16px;border-radius:26px;overflow:hidden}
.admin-registration-card__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
.admin-registration-card__head > div:first-child{min-width:0}
.admin-registration-card__head strong{font-size:28px;max-width:100%;overflow-wrap:anywhere;line-height:1.15}
.admin-registration-card__head span{font-size:14px;overflow-wrap:anywhere}
.admin-registration-card__meta{justify-items:end;align-items:end;min-width:120px}
.admin-registration-card__meta small{display:block;max-width:170px;text-align:right;line-height:1.45;word-break:break-word}
.admin-registration-card .admin-form{gap:14px}
.admin-registration-card .admin-row-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-registration-card .admin-actions-split{justify-content:flex-start}
.admin-registration-card__delete{margin-top:-4px}
.admin-registration-card .btn{min-height:48px;padding:0 20px}
.admin-registration-card .btn-danger{min-width:136px}
@media (max-width:1100px){
  .admin-registration-cards{grid-template-columns:1fr}
}
@media (max-width:720px){
  .admin-registration-card{padding:16px}
  .admin-registration-card__head{grid-template-columns:1fr}
  .admin-registration-card__meta{justify-items:start;text-align:left;min-width:0}
  .admin-registration-card__meta small{max-width:none;text-align:left}
  .admin-registration-card .admin-row-2{grid-template-columns:1fr}
  .admin-registration-card .btn,.admin-registration-card .btn-danger{width:100%}
}


/* 2026-04-14 23:20 Astana - header two-line brand, admin offset, archive tools, registration cards */
.brand{
  gap:10px;
  transform:translateX(-14px);
  max-width:430px;
  flex-basis:430px;
}
.brand-logo-stack{flex:0 0 auto}
.brand-text{
  min-width:0;
  max-width:270px;
}
.brand-text strong{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  white-space:normal;
  line-height:1.14;
  max-width:18ch;
  text-wrap:balance;
}
.header-row{grid-template-columns:minmax(300px,430px) minmax(0,1fr)!important}
.site-nav-main{justify-content:flex-start;gap:0;padding:6px 10px;min-width:0}
.site-nav-main > .nav-link,
.site-nav-main > .nav-group{flex:0 1 auto}
.nav-link,.nav-group-trigger{font-size:12.75px;padding:10px 9px}
.site-nav-cta{gap:8px;flex:0 0 auto}
.nav-accent,.nav-accent-trigger,.nav-accent-registration{padding:0 12px;font-size:12.25px}
.nav-accent-registration__icon{width:22px;height:22px;flex-basis:22px}
@media (max-width:1560px){
  .brand{max-width:400px;flex-basis:400px;transform:translateX(-12px)}
  .header-row{grid-template-columns:minmax(285px,400px) minmax(0,1fr)!important}
  .brand-text strong{max-width:17ch}
}
@media (max-width:1420px){
  .brand{max-width:360px;flex-basis:360px;transform:translateX(-10px)}
  .header-row{grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important}
  .brand-text strong{font-size:15px;max-width:16ch}
  .nav-link,.nav-group-trigger{font-size:12px;padding:9px 8px}
  .nav-accent,.nav-accent-trigger,.nav-accent-registration{font-size:11.75px;padding:0 11px}
}
@media (max-width:1320px){
  .site-nav{flex-wrap:wrap;row-gap:10px}
  .site-nav-main{order:1;width:100%;justify-content:flex-start;flex-wrap:wrap}
  .site-nav-cta{order:2;width:100%;justify-content:flex-end;flex-wrap:wrap}
}
@media (max-width:920px){
  .brand{transform:none;max-width:none;flex-basis:auto}
  .brand-text strong{max-width:none;-webkit-line-clamp:unset;display:block}
}

.admin-workspace{gap:30px}
.admin-main{padding-left:12px}
@media (min-width:1181px){
  .admin-sidebar{left:max(18px,calc((100vw - 1540px)/2 + 18px));width:272px}
  .admin-workspace{padding-left:302px}
}
@media (max-width:1180px){
  .admin-main{padding-left:0}
}

.archive-shell{gap:18px}
.page-section.archive-page{padding-top:calc(var(--header-height) + 12px)}
.archive-year-tools{display:grid;gap:14px;margin-bottom:4px}
.archive-year-tools__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.archive-year-tools__actions .btn{min-height:46px}
.archive-year-nav-rich{margin:0}
.archive-group[hidden]{display:none!important}
@media (min-width:1081px){
  .archive-year-tools{grid-template-columns:minmax(0,1fr) auto;align-items:start}
}
@media (max-width:1080px){
  .archive-year-tools__actions{justify-content:flex-start}
}

.admin-registration-card{
  align-content:start;
  padding:20px 20px 18px;
}
.admin-registration-card__head{
  grid-template-columns:minmax(0,1fr) minmax(120px,auto);
  gap:16px;
}
.admin-registration-card__head strong{
  font-size:22px;
  line-height:1.18;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.admin-registration-card__head span{
  font-size:13px;
  line-height:1.45;
  color:var(--muted);
}
.admin-registration-card__meta{min-width:0;max-width:180px}
.admin-registration-card__meta small{
  max-width:none;
  font-size:12px;
  line-height:1.45;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.admin-registration-card .admin-row-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.admin-registration-card .admin-actions-split{
  justify-content:space-between;
  align-items:center;
}
.admin-registration-card .btn{
  min-height:46px;
  padding:0 18px;
}
.admin-registration-card__delete{
  margin-top:6px;
  justify-content:flex-end;
}
.admin-registration-card__delete .btn-danger{
  min-width:136px;
}
@media (max-width:880px){
  .admin-registration-card__head{grid-template-columns:1fr}
  .admin-registration-card__meta{max-width:none;justify-items:start;text-align:left}
  .admin-registration-card .admin-row-2{grid-template-columns:1fr}
  .admin-registration-card__delete,.admin-registration-card .admin-actions-split{justify-content:flex-start}
  .admin-registration-card .btn,.admin-registration-card__delete .btn-danger{width:100%}
}

/* 2026-04-14 - header two-line brand, admin spacing, archive scalability */
.site-header .brand{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  align-items:center;
  gap:14px;
  max-width:360px;
  flex:0 1 360px;
}
.site-header .brand-logo-stack{
  justify-self:start;
}
.site-header .brand-text{
  min-width:0;
  gap:2px;
}
.site-header .brand-text strong{
  display:block;
  max-width:22ch;
  margin:0;
  font-size:15px;
  line-height:1.12;
  white-space:normal;
  text-wrap:balance;
  word-break:normal;
  overflow-wrap:normal;
}
.site-header .brand-text span{
  display:block;
  max-width:32ch;
  line-height:1.2;
}
.site-header .header-row{
  grid-template-columns:minmax(300px,360px) minmax(0,1fr) !important;
  gap:14px;
}
.site-header .header-actions{
  min-width:0;
}
.site-header .site-nav{
  min-width:0;
}
.site-header .site-nav-main{
  min-width:0;
  flex:1 1 auto;
}
.site-header .site-nav-main > .nav-link,
.site-header .site-nav-main > .nav-group{
  min-width:0;
}

.admin-workspace{
  padding-left:14px;
}
.admin-main{
  padding-left:16px;
}

.archive-group,
.archive-overview-card,
.archive-section-card,
.archive-resource-card,
.admin-registration-card,
.admin-card,
.resource-card,
.news-card,
.post-card{
  content-visibility:auto;
  contain-intrinsic-size:1px 360px;
}
.archive-section-card[open] .archive-section-card__body{
  contain:layout paint;
}

@media (max-width: 1440px){
  .site-header .header-row{
    grid-template-columns:minmax(280px,338px) minmax(0,1fr) !important;
  }
  .site-header .brand{
    max-width:338px;
    flex-basis:338px;
  }
  .admin-workspace{
    padding-left:10px;
  }
  .admin-main{
    padding-left:12px;
  }
}

@media (max-width: 1320px){
  .site-header .header-row{
    grid-template-columns:minmax(260px,318px) minmax(0,1fr) !important;
    gap:12px;
  }
  .site-header .brand{
    grid-template-columns:64px minmax(0,1fr);
    max-width:318px;
    flex-basis:318px;
    gap:12px;
  }
  .site-header .brand-text strong{
    font-size:14px;
    max-width:20ch;
  }
  .site-header .brand-text span{
    font-size:12px;
  }
}

@media (max-width: 1180px){
  .site-header .header-row{
    grid-template-columns:minmax(240px,286px) minmax(0,1fr) !important;
  }
  .site-header .brand{
    max-width:286px;
    flex-basis:286px;
  }
  .site-header .brand-text strong{
    max-width:18ch;
  }
}

@media (max-width: 1100px){
  .admin-workspace,
  .admin-main{
    padding-left:0;
  }
}

@media (max-width: 900px){
  .site-header .brand{
    grid-template-columns:58px minmax(0,1fr);
    max-width:none;
    flex-basis:auto;
  }
  .site-header .brand-text strong,
  .site-header .brand-text span{
    max-width:none;
  }
}


/* 2026-04-15: requested header position fix without touching admin */
.header-row{
  grid-template-columns:minmax(340px, 430px) minmax(0, 1fr);
  gap:16px;
}
.brand{
  max-width:none;
  flex:0 1 430px;
  justify-self:start;
  margin-left:0;
}
.brand-text{
  gap:2px;
}
.brand-text strong{
  display:block;
  max-width:21ch;
  line-height:1.18;
  text-wrap:balance;
  word-break:normal;
}
@media (max-width: 1500px){
  .header-row{
    grid-template-columns:minmax(320px, 392px) minmax(0, 1fr);
  }
  .brand{
    flex-basis:392px;
  }
  .brand-text strong{
    max-width:20ch;
  }
}
@media (max-width: 1320px){
  .header-row{
    grid-template-columns:minmax(290px, 344px) minmax(0, 1fr);
  }
  .brand{
    flex-basis:344px;
  }
  .brand-text strong{
    max-width:19ch;
    font-size:13.5px;
  }
}
@media (max-width: 1180px){
  .header-row{
    grid-template-columns:minmax(260px, 304px) minmax(0, 1fr);
  }
  .brand{
    flex-basis:304px;
  }
  .brand-logo{
    width:38px;
    height:38px;
  }
  .brand-logo-stack{
    padding:8px 10px;
  }
  .brand-text strong{
    max-width:18ch;
    font-size:12.75px;
  }
}

/* 2026-04-14 - admin desktop content offset fix */
@media (min-width:1181px){
  .admin-workspace{padding-left:340px !important;}
  .admin-main{padding-left:24px !important;}
  .admin-stats,.admin-panel,.admin-topbar,.admin-topbar-routed,.admin-route-tabs{margin-left:0 !important;}
}
@media (min-width:1401px){
  .admin-workspace{padding-left:352px !important;}
  .admin-main{padding-left:28px !important;}
}


/* 2026-04-15 - fix admin main alignment with fixed sidebar */
@media (min-width:1181px){
  .admin-workspace{
    display:block !important;
    padding-left:0 !important;
  }
  .admin-main{
    margin-left:336px !important;
    padding-left:0 !important;
  }
  .admin-topbar,
  .admin-topbar-routed,
  .admin-route-tabs,
  .admin-stats,
  .admin-panel,
  .admin-card{
    margin-left:0 !important;
  }
}
@media (min-width:1401px){
  .admin-main{
    margin-left:348px !important;
  }
}

/* 2026-04-14 - final admin desktop alignment fix for routed topbar and tabs */
@media (min-width:1181px){
  .admin-workspace{
    display:block !important;
    padding-left:0 !important;
  }
  .admin-main{
    margin-left:332px !important;
    width:calc(100% - 332px) !important;
    max-width:calc(100% - 332px) !important;
    padding-left:0 !important;
    box-sizing:border-box;
  }
  .admin-topbar,
  .admin-topbar-routed,
  .admin-route-tabs,
  .admin-stats,
  .admin-panel,
  .admin-card,
  .admin-grid,
  .admin-switcher{
    margin-left:0 !important;
  }
}
@media (min-width:1401px){
  .admin-main{
    margin-left:344px !important;
    width:calc(100% - 344px) !important;
    max-width:calc(100% - 344px) !important;
  }
}


/* 2026-04-15 22:55 Astana - align routed admin topbar and tabs with content */
@media (min-width:1181px){
  .admin-topbar-routed,
  .admin-route-tabs,
  .flash{
    margin-left:332px !important;
    width:calc(100% - 332px) !important;
    max-width:calc(100% - 332px) !important;
    box-sizing:border-box !important;
  }
}
@media (min-width:1401px){
  .admin-topbar-routed,
  .admin-route-tabs,
  .flash{
    margin-left:344px !important;
    width:calc(100% - 344px) !important;
    max-width:calc(100% - 344px) !important;
  }
}


/* 2026-04-14 admin toast width fix */
.flash.flash-toast{
  width:auto !important;
  min-width:280px;
  max-width:min(380px, calc(100vw - 32px)) !important;
  margin-left:0 !important;
}
@media (max-width:1080px){
  .flash.flash-toast{
    min-width:0;
    max-width:calc(100vw - 24px) !important;
  }
}
