
/* v6 redesign overrides based on approved reference package */
:root{
  --ink:#30213c; --ink-dark:#2b173a; --muted:#65556f; --purple:#542c78;
  --purple-2:#76499a; --purple-soft:#ede2f4; --pink:#faedf1;
  --surface:#ffffff; --mist:#f6f2f9; --cream:#fcf7f1; --line:#e5dfe9;
  --focus:#c05c19; --radius:24px; --shadow:0 16px 55px rgba(72,42,90,.09);
  --font-display:Georgia,"Times New Roman",serif;
}
body{color:var(--ink);background:#fff}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;color:var(--ink-dark)}
a{color:var(--purple);text-decoration-thickness:1.5px;text-underline-offset:.18em}
a:hover{color:#331b4c}
.skip{border-color:var(--focus)}
.topline{background:#452166;color:#fff;font-size:.77rem;letter-spacing:.07em;font-weight:700}
.topline-inner{min-height:34px}.topline a{color:#fff}
.header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.96);border-bottom:1px solid #ede7f0;box-shadow:0 3px 25px rgba(39,23,58,.035);backdrop-filter:blur(14px)}
.header-inner{min-height:96px;gap:22px}
.brand{gap:0;text-decoration:none;color:var(--ink-dark)}
.brand:hover{color:var(--purple)}
.brand img{width:min(300px,40vw);height:auto;max-height:74px}
.brand span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#primary-nav{margin-left:auto}
.nav-menu{gap:10px;align-items:center}
.nav-parent{padding:13px 4px;color:#403047;border-radius:0;font-size:.84rem;font-weight:700;letter-spacing:.01em;position:relative}
.nav-parent:hover,.nav-parent:focus-visible,.nav-active{background:none;color:var(--purple)}
.nav-parent::after{content:"";position:absolute;left:4px;right:4px;bottom:5px;height:2px;background:transparent;transition:background .2s ease}
.nav-parent:hover::after,.nav-active::after,.nav-parent[aria-current="true"]::after{background:var(--purple)}
.sub-toggle{width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--purple);display:inline-flex;align-items:center;justify-content:center;border-radius:999px;position:relative}
.sub-toggle:hover,.sub-toggle:focus-visible{background:var(--mist)}
.sub-toggle span{display:none!important}
.sub-toggle::before{content:"";display:block;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s ease}
.nav-item.is-open>.sub-toggle::before,.nav-item:hover>.sub-toggle::before,.nav-item:focus-within>.sub-toggle::before,.sub-toggle[aria-expanded="true"]::before{transform:rotate(225deg) translate(-1px,-1px)}
.sub-menu{top:calc(100% + 10px);left:0;min-width:280px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:12px;border-radius:18px}
.sub-menu a{padding:10px 13px;border-radius:10px;font-size:.88rem}
.sub-menu a:hover,.sub-menu a:focus-visible{background:var(--mist);color:var(--purple)}
.header-actions{gap:10px}
.header-actions button,.menu-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:999px;background:var(--mist);color:var(--purple)}
.header-actions button:hover,.menu-toggle:hover{background:#eee5f4}
.contact-link{padding:10px 16px;background:#542c78;border-radius:999px;color:#fff;font-size:.86rem;font-weight:750}
.contact-link:hover{background:#6f4694;color:#fff}
.hero{background:radial-gradient(circle at 98% 85%,#dfcbe7 0%,transparent 32%),linear-gradient(115deg,#fffafc 8%,#f9eff6 50%,#ece0f2 100%)}
.hero h1 em,.section h2 em{color:var(--purple-2)}
.eyebrow{color:#643784;letter-spacing:.12em}
.btn-solid{background:#542c78;border-color:#542c78}.btn-solid:hover{background:#6f4694}
.btn-outline{border-color:#cdb7dc;color:#542c78;background:rgba(255,255,255,.8)}
.section-tint{background:var(--mist)}
.item-card,.place-card,.fact-card,.gallery-overview-card,.panel,.content-card,.article-card,.category-card,.video-card,.download-card,.contact-card,.person-card,.story-card{border:1px solid var(--line)!important;box-shadow:0 16px 55px rgba(72,42,90,.07)!important;border-radius:24px!important;background:#fff}
.footer{margin-top:72px;background:linear-gradient(180deg,#f8f2fa 0,#fff 100%);border-top:1px solid var(--line);color:var(--ink)}
.footer-grid{display:grid;grid-template-columns:minmax(280px,1.2fr) minmax(180px,.8fr) minmax(220px,.9fr);gap:36px;padding:52px 0 30px}
.footer-about{max-width:370px}.footer-brand{display:block;margin-bottom:18px;text-decoration:none;color:var(--ink-dark)}
.footer-brand img{width:min(250px,100%);height:auto}.footer-brand span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.footer h2{font-family:var(--font-body,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif);font-size:.84rem;letter-spacing:.12em;text-transform:uppercase;color:#6a4d7c;margin:0 0 14px;font-weight:800}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.footer a{color:var(--ink);text-decoration:none}.footer a:hover{color:var(--purple)}
.footer-bottom{border-top:1px solid var(--line);background:transparent}.footer-bottom .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:16px 0 28px;font-size:.92rem;color:var(--muted)}
.eu-fixed-bubble{position:fixed;right:20px;bottom:18px;z-index:55;width:min(310px,33vw)}
.eu-fixed-bubble a{display:block;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:10px}
.eu-fixed-bubble img{width:100%;height:auto;display:block}
.eu-dismiss{position:absolute;top:-7px;right:-7px;width:28px;height:28px;border:0;border-radius:999px;background:#fff;box-shadow:0 10px 24px rgba(44,23,58,.18);color:#542c78;font-size:20px;line-height:1}
@media (max-width: 980px){
  .brand img{width:min(220px,52vw)}
  #primary-nav{position:absolute;left:16px;right:16px;top:calc(100% + 10px);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:12px;display:none;margin-left:0}
  #primary-nav.is-open{display:block}
  .nav-menu{display:block}
  .nav-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .nav-parent{padding:12px 10px}
  .sub-menu{position:static;display:none;grid-column:1/-1;box-shadow:none;border:0;border-top:1px solid var(--line);padding:8px 0 0 8px;border-radius:0;background:transparent;max-height:none}
  .nav-item.is-open>.sub-menu{display:block}
  .menu-toggle{display:inline-flex}
  .header-actions .contact-link{display:none}
}
@media (max-width: 720px){
  .topline-inner{justify-content:center;text-align:center}
  .topline-inner span:last-of-type{display:none}
  .header-inner{min-height:84px;gap:12px}
  .footer-grid{grid-template-columns:1fr;padding-top:40px}
  .eu-fixed-bubble{right:10px;left:10px;bottom:10px;width:auto}
  .eu-fixed-bubble a{padding:8px}
}


/* v7 refinements */
.brand img{width:min(330px,44vw)!important;max-height:80px!important}
.footer-brand img{width:min(260px,100%)!important;height:auto!important}
.eu-fixed-bubble{position:fixed;right:18px;bottom:10px;z-index:55;width:min(360px,38vw)}
.eu-fixed-bubble a{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
.eu-fixed-bubble img{filter:none;display:block;width:100%;height:auto}
.eu-dismiss{top:4px;right:4px}
.people-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:28px 0}
.person{border:1px solid var(--line);border-radius:20px;padding:18px 18px 16px;background:#fff;box-shadow:0 12px 36px rgba(72,42,90,.06)}
.person h2{font-size:1.2rem;margin:0 0 .35rem}
.person p{margin:0;color:var(--muted)}
.person-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:var(--mist);color:var(--purple);font-weight:700;margin-bottom:8px}
.inline-photo{margin:18px 0 28px}.inline-photo img{width:100%;border-radius:22px;border:1px solid var(--line);box-shadow:0 16px 55px rgba(72,42,90,.09)}
.info-note{padding:16px 18px;border-left:4px solid #a47bbe;background:#f8f2fb;border-radius:14px;margin:20px 0;color:var(--ink)}
.video-callout{margin-top:28px;padding:22px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,#fff,#f7f1fa)}
.video-callout h2{margin:0 0 8px}
.video-callout .btn{margin-top:8px}
@media (max-width:720px){.brand img{width:min(250px,60vw)!important}.eu-fixed-bubble{right:8px;left:8px;bottom:8px;width:auto}}


/* v8 stronger purple visual refresh */
:root{
  --ink:#271633;
  --ink-dark:#210f30;
  --muted:#5f4c70;
  --purple:#6d2aa8;
  --purple-2:#8f42d0;
  --purple-soft:#efe3fb;
  --mist:#f7effd;
  --line:#dbc5ef;
  --shadow:0 18px 58px rgba(70, 24, 112, .12);
}
body{background:linear-gradient(180deg,#fcfaff 0%,#ffffff 220px)}
a{color:var(--purple)}
a:hover{color:#4a137a}
.topline{background:linear-gradient(90deg,#5a1d91 0%,#7a34b8 100%);color:#fff;box-shadow:inset 0 -1px 0 rgba(255,255,255,.14)}
.header{background:rgba(255,255,255,.985);border-bottom:1px solid #dcc5ef;box-shadow:0 10px 34px rgba(85,30,129,.08)}
.header::after{content:"";display:block;height:3px;background:linear-gradient(90deg,#8f42d0 0%,#6d2aa8 45%,#b57ce6 100%);opacity:.96}
.header-inner{min-height:92px;gap:18px}
.brand{display:flex;align-items:center;flex:0 0 auto;margin-right:10px}
.brand img{display:block;width:auto!important;height:62px!important;max-width:min(365px,27vw)!important;max-height:none!important;object-fit:contain}
#primary-nav{margin-left:auto}
.nav-menu{gap:8px}
.nav-parent{color:#342442;font-size:.85rem;font-weight:800;padding:14px 6px}
.nav-parent:hover,.nav-parent:focus-visible,.nav-active{color:var(--purple)}
.nav-parent::after{height:3px;border-radius:999px;bottom:4px}
.sub-toggle{color:var(--purple);width:26px;height:26px}
.sub-toggle:hover,.sub-toggle:focus-visible{background:#f0e4fb}
.sub-menu{border:1px solid #e2cff2;background:linear-gradient(180deg,#fff 0%,#fbf8fe 100%);box-shadow:0 18px 48px rgba(87,32,133,.13)}
.sub-menu a:hover,.sub-menu a:focus-visible{background:#f4ebfd;color:#541889}
.header-actions button,.menu-toggle{border:1px solid #d7c2eb;background:#f6effd;color:#6d2aa8;box-shadow:0 4px 14px rgba(95,43,149,.06)}
.header-actions button:hover,.menu-toggle:hover{background:#efdefb}
.contact-link{background:linear-gradient(90deg,#61209a 0%,#7f37c1 100%);border:0;box-shadow:0 10px 24px rgba(98,32,154,.24);padding:11px 18px}
.contact-link:hover{background:linear-gradient(90deg,#531785 0%,#7332b1 100%)}
.hero,.page-hero{background:radial-gradient(circle at 92% 14%,rgba(182,125,230,.24) 0%,transparent 28%),linear-gradient(135deg,#fbf8ff 0%,#f2e5fd 48%,#ead7fa 100%);border-bottom:1px solid #ebdbf8}
.hero h1,.page-hero h1{color:#250f36}
.eyebrow{color:#7b2fc0;font-weight:800}
.heading-decoration{width:88px;height:4px;border-radius:999px;background:linear-gradient(90deg,#8f42d0 0%,#b57ce6 100%);opacity:1}
.btn-solid{background:linear-gradient(90deg,#61209a 0%,#8640c8 100%)!important;border:0!important;box-shadow:0 12px 28px rgba(98,32,154,.18)}
.btn-solid:hover{filter:saturate(1.04) brightness(.96)}
.btn-outline{border-color:#c9a6e8;color:#5e1d96;background:rgba(255,255,255,.92)}
.section-tint{background:linear-gradient(180deg,#faf5fe 0%,#ffffff 100%)}
.item-card,.place-card,.fact-card,.gallery-overview-card,.panel,.content-card,.article-card,.category-card,.video-card,.download-card,.contact-card,.person-card,.story-card,.person{border:1px solid #e2cff2!important;box-shadow:0 16px 46px rgba(95,31,145,.09)!important}
.item-card:hover,.place-card:hover,.gallery-overview-card:hover,.panel:hover,.article-card:hover,.category-card:hover,.video-card:hover,.download-card:hover{transform:translateY(-2px);box-shadow:0 20px 52px rgba(95,31,145,.14)!important}
.related,.sidebar-card{background:linear-gradient(180deg,#f8f1fd 0%,#fff 100%);border:1px solid #e2cff2;border-radius:24px;box-shadow:0 12px 36px rgba(95,31,145,.07)}
.related h2,.sidebar-card h2{color:#4d197b}
.footer{background:linear-gradient(180deg,#f5edfd 0,#fff 100%);border-top:1px solid #dcc5ef}
.footer h2{color:#6c2ea8}
.eu-dismiss{background:#fff;color:#6d2aa8}
@media (max-width:1100px){.brand img{height:58px!important;max-width:min(320px,31vw)!important}.nav-parent{font-size:.82rem}}
@media (max-width:980px){
  .header-inner{min-height:84px;gap:12px}
  .brand img{height:54px!important;max-width:min(280px,56vw)!important}
  #primary-nav{background:linear-gradient(180deg,#fff 0%,#fbf8fe 100%);border:1px solid #dfcbf2;box-shadow:0 16px 44px rgba(87,32,133,.16)}
}
@media (max-width:720px){
  .brand img{height:46px!important;max-width:min(250px,62vw)!important}
  .topline{font-size:.72rem}
}


/* v9 premium purple mode */
.topline{background:linear-gradient(90deg,#3e0c69 0%,#65209d 55%,#8c42cf 100%)!important}
.header{background:linear-gradient(180deg,rgba(47,13,78,.985) 0%,rgba(64,20,101,.975) 100%)!important;border-bottom:1px solid rgba(191,149,233,.28)!important;box-shadow:0 14px 42px rgba(43,9,72,.22)!important}
.header::after{height:4px!important;background:linear-gradient(90deg,#d7b0fb 0%,#a55ae8 38%,#f0d9ff 100%)!important;opacity:1!important}
.brand{padding:6px 0}
.brand img{filter:drop-shadow(0 2px 8px rgba(255,255,255,.12))}
.nav-parent,.sub-toggle,.header-actions button,.menu-toggle{color:#f5ebff!important}
.nav-parent{font-weight:800!important}
.nav-parent:hover,.nav-parent:focus-visible,.nav-active{color:#fff!important}
.nav-parent::after{background:transparent!important}
.nav-parent:hover::after,.nav-active::after,.nav-parent[aria-current="true"]::after{background:#d8b2fb!important;height:3px!important}
.sub-toggle:hover,.sub-toggle:focus-visible,.header-actions button:hover,.menu-toggle:hover{background:rgba(255,255,255,.12)!important}
.contact-link{background:linear-gradient(90deg,#d49cff 0%,#b765f2 45%,#8c42cf 100%)!important;color:#2f0d4e!important;font-weight:900!important;box-shadow:0 14px 30px rgba(38,8,64,.28)!important}
.contact-link:hover{background:linear-gradient(90deg,#e0b8ff 0%,#c57af7 45%,#9c50dd 100%)!important;color:#2a0a45!important}
.hero,.page-hero{background:radial-gradient(circle at 90% 12%,rgba(120,34,184,.28) 0%,transparent 24%),linear-gradient(135deg,#faf6ff 0%,#edd8ff 45%,#e2c1fc 100%)!important;border-bottom:1px solid #dcc0f6!important}
.heading-decoration{background:linear-gradient(90deg,#7b29c2 0%,#d69fff 100%)!important}
.btn-solid{background:linear-gradient(90deg,#5a1296 0%,#7d28c5 48%,#9d45df 100%)!important;color:#fff!important;box-shadow:0 14px 32px rgba(77,19,126,.28)!important}
.btn-solid:hover{filter:brightness(1.02) saturate(1.08)!important;box-shadow:0 16px 36px rgba(77,19,126,.34)!important}
.btn-outline{border:2px solid #b77beb!important;color:#5f159e!important;background:rgba(249,241,255,.92)!important}
.section-tint{background:linear-gradient(180deg,#f5ebff 0%,#ffffff 100%)!important}
.item-card,.place-card,.fact-card,.gallery-overview-card,.panel,.content-card,.article-card,.category-card,.video-card,.download-card,.contact-card,.person-card,.story-card,.person{border:1px solid #ddc0f6!important;background:linear-gradient(180deg,#fcf9ff 0%,#f5ebff 100%)!important;box-shadow:0 18px 46px rgba(91,24,143,.11)!important}
.item-card:hover,.place-card:hover,.gallery-overview-card:hover,.panel:hover,.article-card:hover,.category-card:hover,.video-card:hover,.download-card:hover{box-shadow:0 22px 58px rgba(91,24,143,.18)!important}
.related,.sidebar-card{background:linear-gradient(180deg,#f0ddff 0%,#fbf7ff 100%)!important;border:1px solid #d5b1f5!important;box-shadow:0 16px 40px rgba(88,24,136,.12)!important}
.related h2,.sidebar-card h2{color:#54108c!important}
.related a,.sidebar-card a{color:#4b177a!important}
.related a:hover,.sidebar-card a:hover{color:#7b29c2!important}
.footer{background:linear-gradient(180deg,#efe0ff 0%,#faf5ff 46%,#fff 100%)!important;border-top:1px solid #d8bdf1!important}
.footer h2{color:#5f169c!important}
.search-panel,.dialog-panel{border:1px solid #d7b7f1!important;box-shadow:0 20px 48px rgba(86,21,134,.16)!important}
.eu-dismiss{background:#fff!important;color:#5f169c!important}
@media (max-width:980px){
  #primary-nav{background:linear-gradient(180deg,#3b0f62 0%,#5d1d95 100%)!important;border:1px solid rgba(223,194,247,.28)!important;box-shadow:0 20px 54px rgba(43,9,72,.34)!important}
  .sub-menu{background:rgba(255,255,255,.04)!important;border-top:1px solid rgba(223,194,247,.22)!important}
  .sub-menu a{color:#f5ebff!important}
  .sub-menu a:hover,.sub-menu a:focus-visible{background:rgba(255,255,255,.09)!important;color:#fff!important}
}
