/* ═══════════════════════════════════════════════════════
   Şeker-İş – Premium Dark Theme
   ═══════════════════════════════════════════════════════ */

:root {
  --bg:        #060b18;
  --bg-alt:    #0c1225;
  --surface:   rgba(255,255,255,.04);
  --surface-2: rgba(255,255,255,.07);
  --surface-3: rgba(255,255,255,.10);
  --glass:     rgba(12,18,37,.72);
  --border:    rgba(255,255,255,.08);
  --border-hl: rgba(0,212,170,.22);

  --teal:      #00d4aa;
  --teal-dim:  #00a88a;
  --orange:    #ff6b35;
  --orange-dim:#d4522a;
  --gold:      #fbbf24;
  --red:       #ef4444;

  --ink:       #e8eaed;
  --ink-2:     #c0c7d0;
  --muted:     #6b7a8d;

  --radius:    16px;
  --radius-sm: 10px;
  --radius-xs: 6px;

  --shadow:      0 24px 64px rgba(0,0,0,.35);
  --shadow-sm:   0 8px 24px rgba(0,0,0,.25);
  --glow-teal:   0 0 40px rgba(0,212,170,.15);
  --glow-orange: 0 0 40px rgba(255,107,53,.15);

  --font: 'Poppins', Arial, Helvetica, sans-serif;
  --type-scale: 1;
  --content-type-scale: 1;
  --ease: cubic-bezier(.4,0,.2,1);
  --navbar-transparent-opacity:.55;
  --top-strip-transparent-opacity:.55;
  --navbar-solid-opacity:.94;
  --top-strip-solid-opacity:.94;
  --navbar-bg-color:#fffdf8;
  --navbar-bg-rgb:255,253,248;
  --top-strip-bg-color:#1f6d67;
  --top-strip-bg-rgb:31,109,103;
  --cms-scrollbar-size:8px;
  --cms-scrollbar-track:color-mix(in srgb, var(--bg-alt) 12%, #ffffff 88%);
  --cms-scrollbar-track-strong:color-mix(in srgb, var(--bg-alt) 18%, #ffffff 82%);
  --cms-scrollbar-thumb:color-mix(in srgb, var(--teal) 58%, var(--ink-2) 42%);
  --cms-scrollbar-thumb-hover:color-mix(in srgb, var(--teal) 72%, var(--orange) 28%);
  --cms-opening-hero-first-offset:132px;
  --cms-opening-hero-top-pull:166px;
  --cms-opening-hero-height-extra:8px;
}

:root[data-font-size="xsmall"] {
  --type-scale: .88;
}

:root[data-font-size="small"] {
  --type-scale: .94;
}

:root[data-font-size="normal"] {
  --type-scale: 1;
}

:root[data-font-size="large"] {
  --type-scale: 1.06;
}

:root[data-font-size="xlarge"] {
  --type-scale: 1.12;
}

:root[data-content-font-size="xsmall"] {
  --content-type-scale: .88;
}

:root[data-content-font-size="small"] {
  --content-type-scale: .94;
}

:root[data-content-font-size="normal"] {
  --content-type-scale: 1;
}

:root[data-content-font-size="large"] {
  --content-type-scale: 1.08;
}

:root[data-content-font-size="xlarge"] {
  --content-type-scale: 1.16;
}

:root[data-font="poppins"] {
  --font: 'Poppins', Arial, Helvetica, sans-serif;
}

:root[data-font="open-sans"] {
  --font: 'Open Sans', Arial, Helvetica, sans-serif;
}

:root[data-font="cabin"] {
  --font: 'Cabin', Arial, Helvetica, sans-serif;
}

:root[data-font="source-sans-pro"] {
  --font: 'Source Sans Pro', Arial, Helvetica, sans-serif;
}

:root[data-font="noto-sans"] {
  --font: 'Noto Sans', Arial, Helvetica, sans-serif;
}

:root[data-font="arimo"] {
  --font: 'Arimo', Arial, Helvetica, sans-serif;
}

:root[data-font="google-sans-flex"] {
  --font: 'Google Sans Flex', 'Noto Sans', Arial, Helvetica, sans-serif;
}

:root[data-theme="theme-2"] {
  --bg:#15070b; --bg-alt:#211018; --glass:rgba(33,16,24,.76);
  --teal:#d8a344; --teal-dim:#b9822f; --orange:#d92e3c; --orange-dim:#9f1f2e;
  --gold:#f4c65f; --red:#ef4444; --ink:#f4eef0; --ink-2:#d6c6cc; --muted:#987f88;
  --border:rgba(255,255,255,.1); --border-hl:rgba(216,163,68,.25);
}

:root[data-theme="theme-3"] {
  --bg:#07111f; --bg-alt:#0e1b31; --glass:rgba(14,27,49,.76);
  --teal:#d0a85c; --teal-dim:#a98342; --orange:#346fa8; --orange-dim:#27527e;
  --gold:#f2c76f; --red:#d85b50; --ink:#edf3fb; --ink-2:#c7d4e5; --muted:#7d8ba0;
  --border:rgba(255,255,255,.1); --border-hl:rgba(208,168,92,.25);
}

:root[data-theme="theme-4"] {
  --bg:#0b1309; --bg-alt:#14210f; --glass:rgba(20,33,15,.76);
  --teal:#9fb85a; --teal-dim:#7d9440; --orange:#c96d3a; --orange-dim:#9c4f2c;
  --gold:#d6b866; --red:#d95c4b; --ink:#f0f4e9; --ink-2:#cbd6bf; --muted:#7d8a72;
  --border:rgba(255,255,255,.1); --border-hl:rgba(159,184,90,.25);
}

:root[data-theme="theme-5"] {
  --bg:#0d0f14; --bg-alt:#171a22; --glass:rgba(23,26,34,.78);
  --teal:#a93a52; --teal-dim:#7d2a3d; --orange:#d38b4a; --orange-dim:#a86633;
  --gold:#d8b46a; --red:#d84b59; --ink:#f0f1f4; --ink-2:#c8ccd4; --muted:#858b97;
  --border:rgba(255,255,255,.1); --border-hl:rgba(169,58,82,.25);
}

:root[data-theme="theme-6"] {
  --bg:#071521; --bg-alt:#0e2436; --glass:rgba(14,36,54,.76);
  --teal:#4fb0d8; --teal-dim:#347fa2; --orange:#e06f43; --orange-dim:#ac4f31;
  --gold:#e0b75a; --red:#e15656; --ink:#eef7fb; --ink-2:#c6d9e4; --muted:#7890a0;
  --border:rgba(255,255,255,.1); --border-hl:rgba(79,176,216,.25);
}

:root[data-theme="theme-7"] {
  --bg:#06120d; --bg-alt:#0d2118; --glass:rgba(13,33,24,.78);
  --teal:#30b075; --teal-dim:#238457; --orange:#c95a32; --orange-dim:#984126;
  --gold:#c7ab5e; --red:#d94c42; --ink:#edf7f2; --ink-2:#c4d8ce; --muted:#789083;
  --border:rgba(255,255,255,.1); --border-hl:rgba(48,176,117,.25);
}

:root[data-theme="theme-8"] {
  --bg:#17100b; --bg-alt:#251a12; --glass:rgba(37,26,18,.78);
  --teal:#c7834b; --teal-dim:#9b6133; --orange:#5f8f88; --orange-dim:#426b66;
  --gold:#e0b66c; --red:#d5604c; --ink:#f6efe8; --ink-2:#d7c7b9; --muted:#958477;
  --border:rgba(255,255,255,.1); --border-hl:rgba(199,131,75,.25);
}

:root[data-theme="theme-9"] {
  --bg:#0d0c1d; --bg-alt:#17152d; --glass:rgba(23,21,45,.78);
  --teal:#8c7ae6; --teal-dim:#6755b8; --orange:#d65f73; --orange-dim:#a74556;
  --gold:#d4b36a; --red:#df5361; --ink:#f1f0fb; --ink-2:#cbc7e8; --muted:#8580a6;
  --border:rgba(255,255,255,.1); --border-hl:rgba(140,122,230,.25);
}

:root[data-theme="theme-10"] {
  --bg:#111417; --bg-alt:#1d2226; --glass:rgba(29,34,38,.78);
  --teal:#98a2aa; --teal-dim:#727e87; --orange:#b85848; --orange-dim:#873e34;
  --gold:#b99662; --red:#c84d4d; --ink:#f1f3f4; --ink-2:#cbd0d4; --muted:#848b91;
  --border:rgba(255,255,255,.1); --border-hl:rgba(152,162,170,.25);
}

/* ── Reset ── */
*,*::before,*::after { box-sizing:border-box; }

body {
  margin:0;
  font-family: var(--font);
  font-size:15px;
  line-height:1.6;
  color: var(--ink);
  background: var(--bg);
  background-image:
    radial-gradient(ellipse 80% 60% at 10% 0%, rgba(0,212,170,.06) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 90% 100%, rgba(255,107,53,.04) 0%, transparent 60%);
  background-attachment: fixed;
  overflow-x:hidden;
  -webkit-font-smoothing: antialiased;
}

html {
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}

html::-webkit-scrollbar {
  width:11px;
  height:11px;
}

html::-webkit-scrollbar-track {
  background:var(--cms-scrollbar-track);
}

html::-webkit-scrollbar-thumb {
  border:2px solid var(--cms-scrollbar-track);
  border-radius:999px;
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 72%, var(--teal-dim) 28%));
  background-clip:padding-box;
}

html::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb-hover), color-mix(in srgb, var(--cms-scrollbar-thumb-hover) 74%, var(--orange-dim) 26%));
}

main {
  display:flex;
  flex-direction:column;
}

.featured-news { order:1; }
.ticker-wrap { order:2; }
.news-section { order:3; }
.page-blocks-section { order:4; }
.president-section { order:5; }
.social-section { order:6; }
.media-section { order:7; }
.stats-band { order:8; }
.gallery-section { order:9; }
.access-section { order:10; }
.parallax-callout { order:11; }
.heritage-section { order:12; }
.logo-marquee { order:13; }

.h1,.h2,.h3,.h4,.h5,.h6,
h1,h2,h3,h4,h5,h6 {
  font-family:var(--font);
  margin-top:0;
  margin-bottom:.5rem;
  line-height:1.5;
}

a {
  color:inherit;
  text-decoration:none;
  transition: color .25s var(--ease);
}

img { display:block; max-width:100%; }

/* ── Utility ── */
.eyebrow,
.section-head span,
.feature-card span,
.callout-content span {
  display:inline-flex;
  align-items:center;
  gap:6px;
  color: var(--teal);
  font-weight:700;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.btn {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:0 26px;
  border:0;
  border-radius:999px;
  font-family:var(--font);
  font-weight:700;
  font-size:14px;
  cursor:pointer;
  transition: all .3s var(--ease);
}

.btn-brand {
  color:#fff;
  background: linear-gradient(135deg, var(--orange), var(--orange-dim));
  box-shadow: 0 8px 30px rgba(255,107,53,.3);
}
.btn-brand:hover {
  color:#fff;
  background: linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow: var(--glow-teal);
  transform:translateY(-2px);
}

/* ══════════════════════════════
   TOP STRIP
   ══════════════════════════════ */
.top-strip {
  position:relative;
  z-index:1001;
  background: rgba(var(--top-strip-bg-rgb), var(--top-strip-solid-opacity));
  border-bottom:1px solid var(--border);
  padding:7px 0;
  backdrop-filter: blur(12px);
}
.top-strip, .top-strip a, .top-strip i { color: var(--muted); }
.top-strip a[hidden] { display:none !important; }
.top-strip a:hover { color: var(--teal); }
.top-logo-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  min-width:34px;
  height:40px;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.top-strip-logos img {
  width:auto;
  height:36px;
  object-fit:contain;
  filter:
    drop-shadow(0 0 1px rgba(255,255,255,.95))
    drop-shadow(0 0 7px rgba(255,255,255,.42))
    drop-shadow(0 4px 9px rgba(0,0,0,.18));
  transition:transform .24s var(--ease), filter .24s var(--ease), opacity .24s var(--ease);
}
.top-logo-badge:hover img {
  transform:translateY(-1px);
  filter:
    drop-shadow(0 0 1px rgba(255,255,255,1))
    drop-shadow(0 0 10px rgba(255,255,255,.5))
    drop-shadow(0 7px 14px rgba(0,0,0,.24));
}
.top-strip-logos img:first-child { height:40px; }
.top-strip-logos img:nth-child(2) { height:38px; }

/* ══════════════════════════════
   HEADER
   ══════════════════════════════ */
.site-header {
  position:sticky;
  top:0;
  z-index:1000;
  background: rgba(var(--navbar-bg-rgb), var(--navbar-solid-opacity));
  border-bottom:1px solid var(--border);
  backdrop-filter: blur(20px) saturate(1.4);
  transition: box-shadow .4s var(--ease), background .4s var(--ease);
}
.site-header.scrolled {
  background: rgba(var(--navbar-bg-rgb), var(--navbar-solid-opacity));
  box-shadow: 0 12px 40px rgba(0,0,0,.4);
}

.navbar {
  min-height:78px;
}

.navbar-brand,
.footer-brand {
  display:flex;
  align-items:center;
  gap:12px;
}

.navbar-brand {
  max-width:380px;
  min-width:0;
  gap:14px;
}
.brand-logo-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.brand-logo {
  width:auto;
  height:82px;
  object-fit:contain;
  filter:drop-shadow(0 10px 18px rgba(31,41,48,.16));
}
.brand-copy {
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  gap:7px;
}

.brand-mark {
  display:inline-grid;
  width:50px; height:50px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font-size:26px;
  font-weight:900;
  background: linear-gradient(135deg, var(--teal), var(--orange));
  box-shadow:
    0 0 0 3px rgba(255,255,255,.12),
    0 0 28px rgba(0,212,170,.3);
  transition: transform .35s var(--ease), box-shadow .35s var(--ease);
}
.navbar-brand:hover .brand-mark {
  transform: rotate(8deg) scale(1.06);
  box-shadow:
    0 0 0 3px rgba(255,255,255,.18),
    0 0 42px rgba(0,212,170,.45);
}

.navbar-brand strong {
  display:block;
  color:#fff;
  font-size:24px;
  font-weight:800;
  line-height:1;
  letter-spacing:-.02em;
}
.navbar-brand small {
  display:block;
  max-width:260px;
  margin-top:2px;
  color: var(--muted);
  font-size:12px;
  font-weight:600;
  line-height:1.35;
}

.nav-link {
  position:relative;
  font-family:var(--font);
  font-size:13px;
  font-weight:600;
  color: var(--ink-2);
  letter-spacing:.01em;
  transition: color .25s var(--ease);
}
.nav-link::after {
  content:'';
  position:absolute;
  left:50%; bottom:0;
  width:0; height:2px;
  background: var(--teal);
  border-radius:2px;
  transition: width .3s var(--ease), left .3s var(--ease);
}
.nav-link:hover::after,
.nav-link.active::after {
  width:70%; left:15%;
}
.nav-link:hover, .nav-link.active { color:#fff; }

.nav-cta {
  margin-left:10px;
  color:#fff !important;
  background: linear-gradient(135deg, var(--teal), var(--teal-dim)) !important;
  border-radius:999px !important;
  padding-inline:20px !important;
  box-shadow: 0 4px 18px rgba(0,212,170,.25);
}
.nav-cta:hover {
  box-shadow: 0 4px 28px rgba(0,212,170,.45);
  transform:translateY(-1px);
}
.nav-cta::after { display:none !important; }

.theme-item {
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:12px;
}

.theme-label {
  margin:0;
  color:var(--muted);
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.theme-select {
  width:156px;
  min-height:34px;
  padding:0 30px 0 10px;
  color:var(--ink-2);
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  font:13px var(--font);
  outline:none;
  transition:border-color .25s var(--ease), background .25s var(--ease);
}

.theme-select:hover,
.theme-select:focus {
  color:#fff;
  border-color:var(--teal);
  background:rgba(255,255,255,.1);
}

.page-blocks-section {
  padding:42px 0 34px;
}

.cms-not-found-section {
  padding:72px 0 96px;
}

.cms-not-found-card {
  max-width:720px;
  margin:0 auto;
  padding:42px 36px;
  border:1px solid var(--border);
  border-radius:32px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--bg-alt) 92%, #fff 8%), color-mix(in srgb, var(--bg) 90%, var(--bg-alt) 10%));
  box-shadow:0 24px 60px rgba(18, 42, 52, .12);
  text-align:center;
}

.cms-not-found-card h1 {
  margin:10px 0 14px;
  color:var(--ink);
}

.cms-not-found-card p {
  max-width:560px;
  margin:0 auto;
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
}

.cms-not-found-actions {
  display:flex;
  justify-content:center;
  margin-top:28px;
}

.cms-content-enabled .president-section,
.cms-content-enabled .social-section,
.cms-content-enabled .stats-band,
.cms-content-enabled .gallery-section,
.cms-content-enabled .parallax-callout,
.cms-content-enabled .media-section,
.cms-content-enabled .heritage-section,
.cms-content-enabled .logo-marquee {
  display:none;
}

.page-blocks-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:22px;
  align-items:stretch;
}

.cms-block {
  position:relative;
  isolation:isolate;
  min-width:0;
  grid-column:span var(--cms-span, 1);
}

.cms-block[data-span="1"] { --cms-span:1; }
.cms-block[data-span="2"] { --cms-span:2; }
.cms-block[data-span="3"] { --cms-span:3; }
.cms-block[data-span="4"] { --cms-span:4; }

.cms-animate {
  opacity:0;
  transform:translateY(24px);
  transition:
    opacity .65s var(--ease),
    transform .65s var(--ease);
  will-change:opacity, transform;
}

.cms-animate.is-visible {
  opacity:1;
  transform:none;
}

.cms-block-parallax.cms-animate,
.cms-block-parallax.cms-animate.is-visible {
  opacity:1;
  transform:none !important;
  transition:opacity .65s var(--ease);
  will-change:opacity;
}

.cms-anim-fade { transform:none; }
.cms-anim-slide-left { transform:translateX(-34px); }
.cms-anim-slide-right { transform:translateX(34px); }
.cms-anim-zoom { transform:scale(.94); }
.cms-anim-none,
.cms-anim-none.is-visible {
  opacity:1;
  transform:none;
  transition:none;
}

.cms-block-full {
  grid-column:1 / -1;
}

.cms-block-opening-hero {
  grid-column:1 / -1;
  width:100vw;
  margin-right:calc(50% - 50vw);
  margin-left:calc(50% - 50vw);
}

body:not(.settings-enabled) .page-blocks-grid > .cms-block-opening-hero:first-child {
  margin-top:-42px;
}

.page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero:first-child) {
  padding-top:0;
}

.page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero:first-child) .page-blocks-grid > .cms-block-opening-hero:first-child {
  margin-top:0;
}

body:not(.settings-enabled) .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero:first-child) .page-blocks-grid > .cms-block-opening-hero:first-child .cms-opening-hero {
  min-height:calc(100vh - var(--cms-opening-hero-first-offset));
  min-height:calc(100dvh - var(--cms-opening-hero-first-offset));
}

body:not(.settings-enabled) .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child .cms-opening-hero {
  min-height:calc(100vh + var(--cms-opening-hero-height-extra));
  min-height:calc(100dvh + var(--cms-opening-hero-height-extra));
}

body:not(.settings-enabled) .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child {
  margin-top:calc(-1 * var(--cms-opening-hero-top-pull));
}

body:not(.settings-enabled) .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child {
  margin-top:calc(-1 * var(--cms-opening-hero-top-pull));
}

body:not(.settings-enabled) .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child .cms-opening-hero {
  min-height:calc(100vh + var(--cms-opening-hero-height-extra));
  min-height:calc(100dvh + var(--cms-opening-hero-height-extra));
}

html[data-navbar-transparent="true"] .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero:first-child) .page-blocks-grid > .cms-block-opening-hero:first-child {
  margin-top:calc(-1 * var(--cms-opening-hero-top-pull));
}

html[data-navbar-transparent="true"] .page-blocks-section:has(.page-blocks-grid > .cms-block-opening-hero:first-child) .page-blocks-grid > .cms-block-opening-hero:first-child .cms-opening-hero {
  min-height:calc(100vh + var(--cms-opening-hero-height-extra));
  min-height:calc(100dvh + var(--cms-opening-hero-height-extra));
}

.cms-block-opening-hero.cms-animate,
.cms-block-opening-hero.cms-animate.is-visible {
  opacity:1;
  transform:none !important;
}

.cms-block-full > .cms-module {
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  border-radius:0;
  padding-left:max(18px, calc((100vw - 1320px) / 2 + 24px));
  padding-right:max(18px, calc((100vw - 1320px) / 2 + 24px));
}

.cms-block-logo-marquee.cms-block-full {
  grid-column:1 / -1;
}

.cms-block-logo-marquee.cms-block-full > .cms-module {
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  border-right:0;
  border-left:0;
  border-radius:0;
  padding-left:0;
  padding-right:0;
}

.cms-block-logo-marquee.cms-block-full .module-title {
  width:min(1320px, calc(100vw - 36px));
  margin-right:auto;
  margin-left:auto;
}

.module-title[class*="cms-title-style-"] {
  position:relative;
}

.cms-title-style-clean {
  gap:0;
  margin-bottom:14px;
}

.cms-title-style-clean h3 {
  color:var(--teal-dim);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-clean span {
  display:none;
}

.cms-title-style-underline {
  display:block;
  padding-bottom:8px;
  border-bottom:1px solid color-mix(in srgb, var(--teal) 34%, var(--border));
}

.cms-title-style-underline h3 {
  display:inline-block;
  color:var(--ink);
  text-transform:none;
}

.cms-title-style-underline span {
  display:none;
}

.cms-title-style-pill {
  justify-content:flex-start;
}

.cms-title-style-pill h3 {
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:7px 14px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow:0 10px 22px color-mix(in srgb, var(--teal) 18%, transparent);
  font-size:13px;
  letter-spacing:.04em;
}

.cms-title-style-pill span {
  display:none;
}

.cms-title-style-accent {
  padding-left:12px;
  box-shadow:inset 4px 0 0 var(--orange);
}

.cms-title-style-accent h3 {
  color:var(--teal-dim);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-accent span {
  opacity:.28;
  background:linear-gradient(90deg, var(--orange), var(--teal), transparent);
}

.cms-title-style-ribbon {
  margin-inline:-4px 0;
}

.cms-title-style-ribbon h3 {
  position:relative;
  padding:8px 16px 8px 14px;
  color:#fff;
  background:linear-gradient(135deg, var(--orange), var(--orange-dim));
  border-radius:0 999px 999px 0;
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-ribbon span {
  display:none;
}

.cms-title-style-overline {
  display:block;
  padding-top:9px;
}

.cms-title-style-overline::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:70px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--teal), var(--orange));
}

.cms-title-style-overline h3 {
  color:var(--ink);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-overline span {
  display:none;
}

.cms-title-style-bracket {
  justify-content:flex-start;
}

.cms-title-style-bracket h3 {
  position:relative;
  padding:0 14px;
  color:var(--teal-dim);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-bracket h3::before,
.cms-title-style-bracket h3::after {
  position:absolute;
  top:50%;
  color:var(--orange);
  font-weight:800;
  transform:translateY(-50%);
}

.cms-title-style-bracket h3::before {
  content:"[";
  left:0;
}

.cms-title-style-bracket h3::after {
  content:"]";
  right:0;
}

.cms-title-style-bracket span {
  display:none;
}

.cms-title-style-split span {
  height:1px;
  opacity:.42;
  background:linear-gradient(90deg, transparent, var(--teal), transparent);
}

.cms-title-style-split h3 {
  color:var(--ink);
  text-align:center;
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-badge {
  justify-content:flex-start;
}

.cms-title-style-badge h3 {
  position:relative;
  padding-left:30px;
  color:var(--ink);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-badge h3::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:20px;
  height:20px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--teal), var(--orange));
  transform:translateY(-50%);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--teal) 12%, transparent);
}

.cms-title-style-badge span {
  display:none;
}

.cms-title-style-leftline {
  display:block;
  padding-left:12px;
  border-left:3px solid var(--teal);
}

.cms-title-style-leftline h3 {
  color:var(--ink);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-leftline span {
  display:none;
}

.cms-title-style-gradient h3 {
  color:transparent !important;
  background:linear-gradient(90deg, var(--teal-dim), var(--teal), var(--orange));
  -webkit-background-clip:text;
  background-clip:text;
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-gradient span {
  opacity:.2;
}

.cms-title-style-boxed {
  padding:9px 12px;
  border-radius:8px;
  background:color-mix(in srgb, var(--teal) 8%, var(--surface));
}

.cms-title-style-boxed h3 {
  color:var(--teal-dim);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-boxed span {
  display:none;
}

.cms-title-style-dark {
  justify-content:flex-start;
}

.cms-title-style-dark h3 {
  padding:8px 13px;
  border-radius:6px;
  color:#fff !important;
  background:linear-gradient(135deg, var(--teal-dim), color-mix(in srgb, var(--ink) 72%, #111));
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-dark span {
  display:none;
}

.cms-title-style-marker h3 {
  position:relative;
  z-index:1;
  color:var(--ink);
  text-transform:none;
  letter-spacing:0;
}

.cms-title-style-marker h3::after {
  content:"";
  position:absolute;
  right:-4px;
  bottom:1px;
  left:-4px;
  z-index:-1;
  height:.55em;
  border-radius:4px;
  background:color-mix(in srgb, var(--orange) 26%, transparent);
}

.cms-title-style-marker span {
  display:none;
}

.cms-module {
  height:100%;
  overflow:hidden;
}

.cms-module-fixed-height {
  overflow-x:hidden !important;
  overflow-y:auto !important;
}

.cms-module-fixed-height.cms-module-auto-scroll {
  overflow-x:hidden !important;
  overflow-y:hidden !important;
}

.cms-module-auto-scroll {
  display:flex;
  flex-direction:column;
  overflow:hidden !important;
}

.cms-module-auto-scroll > .cms-auto-scroll-area,
.cms-module-auto-scroll > .cms-child-list[data-cms-auto-scroll="up"] {
  flex:1 1 auto;
  height:100%;
  min-height:0;
}

.cms-auto-scroll-area,
.previous-news,
.cms-news-flow-side,
.cms-gallery-side-list,
.cms-page-breadcrumb,
.cms-page-side-nav,
.cms-child-style-media-strip .cms-child-page-grid,
.cms-child-spotlight-list {
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}

.cms-auto-scroll-area::-webkit-scrollbar,
.previous-news::-webkit-scrollbar,
.cms-news-flow-side::-webkit-scrollbar,
.cms-gallery-side-list::-webkit-scrollbar,
.cms-page-breadcrumb::-webkit-scrollbar,
.cms-page-side-nav::-webkit-scrollbar,
.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar,
.cms-child-spotlight-list::-webkit-scrollbar {
  width:var(--cms-scrollbar-size);
  height:var(--cms-scrollbar-size);
}

.cms-auto-scroll-area::-webkit-scrollbar-track,
.previous-news::-webkit-scrollbar-track,
.cms-news-flow-side::-webkit-scrollbar-track,
.cms-gallery-side-list::-webkit-scrollbar-track,
.cms-page-breadcrumb::-webkit-scrollbar-track,
.cms-page-side-nav::-webkit-scrollbar-track,
.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-track,
.cms-child-spotlight-list::-webkit-scrollbar-track {
  border-radius:999px;
  background:var(--cms-scrollbar-track);
}

.cms-auto-scroll-area::-webkit-scrollbar-thumb,
.previous-news::-webkit-scrollbar-thumb,
.cms-news-flow-side::-webkit-scrollbar-thumb,
.cms-gallery-side-list::-webkit-scrollbar-thumb,
.cms-page-breadcrumb::-webkit-scrollbar-thumb,
.cms-page-side-nav::-webkit-scrollbar-thumb,
.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-thumb,
.cms-child-spotlight-list::-webkit-scrollbar-thumb {
  border:2px solid transparent;
  border-radius:999px;
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%));
  background-clip:padding-box;
}

.cms-auto-scroll-area::-webkit-scrollbar-thumb:hover,
.previous-news::-webkit-scrollbar-thumb:hover,
.cms-news-flow-side::-webkit-scrollbar-thumb:hover,
.cms-gallery-side-list::-webkit-scrollbar-thumb:hover,
.cms-page-breadcrumb::-webkit-scrollbar-thumb:hover,
.cms-page-side-nav::-webkit-scrollbar-thumb:hover,
.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-thumb:hover,
.cms-child-spotlight-list::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb-hover), color-mix(in srgb, var(--cms-scrollbar-thumb-hover) 78%, var(--orange-dim) 22%));
}

.cms-news-flow-block .cms-module.cms-module-fixed-height {
  display:flex;
  flex-direction:column;
}

.cms-news-flow-block .cms-module.cms-module-fixed-height .cms-news-flow {
  flex:1 1 auto;
  min-height:0;
  --cms-news-flow-height:100%;
}

.cms-style-soft .cms-module {
  background:linear-gradient(180deg, color-mix(in srgb, var(--bg-alt) 96%, #fff 4%), color-mix(in srgb, var(--teal) 5%, var(--bg-alt)));
}

.cms-style-showcase .cms-module {
  border-color:color-mix(in srgb, var(--orange) 28%, var(--border));
  box-shadow:0 20px 50px rgba(0,0,0,.14);
}

.cms-style-corporate .cms-module {
  border-left:5px solid var(--teal);
}

.cms-style-dark .cms-module {
  color:#fff;
  background:linear-gradient(135deg, color-mix(in srgb, var(--teal-dim) 78%, #101820), #151a1f);
}

.cms-style-dark .module-title h3,
.cms-style-dark .cms-rich-text,
.cms-style-dark .cms-rich-text blockquote,
.cms-style-dark .cms-inline-link {
  color:#fff;
}

.cms-style-dark .module-title span {
  background:rgba(255,255,255,.25);
}

.cms-style-glass .cms-module,
.cms-parallax-card.cms-style-glass {
  border:1px solid color-mix(in srgb, var(--teal) 24%, rgba(255,255,255,.62));
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--teal) 22%, transparent), transparent 34%),
    radial-gradient(circle at 92% 12%, color-mix(in srgb, var(--orange) 12%, transparent), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.72), rgba(255,255,255,.34));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -1px 0 rgba(255,255,255,.28),
    0 22px 54px rgba(31,41,48,.13);
  backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);
}

.cms-style-glass .cms-module::before {
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:calc(var(--radius-sm) - 2px);
  pointer-events:none;
}

.cms-style-glass .module-title span {
  opacity:.42;
  background:linear-gradient(90deg, var(--teal), rgba(255,255,255,.55), transparent);
}

.cms-style-outline .cms-module,
.cms-parallax-card.cms-style-outline {
  border:1px solid color-mix(in srgb, var(--teal) 42%, var(--border));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--surface) 72%, transparent), transparent),
    transparent;
  box-shadow:
    inset 0 0 0 6px color-mix(in srgb, var(--teal) 5%, transparent),
    0 12px 28px rgba(31,41,48,.055);
}

.cms-style-outline .cms-module::before,
.cms-style-outline .cms-module::after {
  content:"";
  position:absolute;
  width:34px;
  height:34px;
  border-color:var(--teal);
  pointer-events:none;
}

.cms-style-outline .cms-module::before {
  top:12px;
  left:12px;
  border-top:2px solid;
  border-left:2px solid;
}

.cms-style-outline .cms-module::after {
  right:12px;
  bottom:12px;
  border-right:2px solid;
  border-bottom:2px solid;
}

.cms-style-outline .module-title h3 {
  color:var(--teal-dim);
}

.cms-style-outline .module-title span {
  height:2px;
  background:color-mix(in srgb, var(--teal) 56%, var(--border));
}

.cms-style-accent .cms-module,
.cms-parallax-card.cms-style-accent {
  border:0;
  background:
    linear-gradient(90deg, var(--orange) 0 9px, transparent 9px),
    linear-gradient(135deg, color-mix(in srgb, var(--surface) 88%, #fff 12%), color-mix(in srgb, var(--teal) 7%, var(--bg-alt)));
  box-shadow:0 18px 42px rgba(31,41,48,.1);
}

.cms-style-accent .cms-module::before {
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:118px;
  height:118px;
  background:linear-gradient(135deg, color-mix(in srgb, var(--orange) 18%, transparent), transparent 66%);
  pointer-events:none;
}

.cms-style-accent .module-title {
  padding-left:12px;
}

.cms-style-accent .module-title span {
  opacity:.28;
  background:linear-gradient(90deg, var(--orange), var(--teal), transparent);
}

.cms-style-editorial .cms-module,
.cms-parallax-card.cms-style-editorial {
  border:0;
  border-top:5px solid var(--teal);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--teal) 5%, transparent) 0 88px, transparent 88px),
    linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--bg-alt) 88%, #fff 12%));
  box-shadow:0 20px 48px rgba(31,41,48,.09);
}

.cms-style-editorial .module-title {
  align-items:flex-end;
  border-bottom:1px solid color-mix(in srgb, var(--ink-2) 14%, var(--border));
  padding-bottom:10px;
}

.cms-style-editorial .module-title h3 {
  max-width:720px;
  font-size:clamp(18px, 1.9vw, 30px);
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}

.cms-style-editorial .module-title span {
  display:none;
}

.cms-style-minimal .cms-module,
.cms-parallax-card.cms-style-minimal {
  border:0;
  border-bottom:2px solid color-mix(in srgb, var(--teal) 32%, var(--border));
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.cms-style-minimal .module-title {
  margin-bottom:10px;
  padding-bottom:8px;
}

.cms-style-minimal .module-title h3 {
  color:var(--teal-dim);
  font-size:13px;
  letter-spacing:.13em;
}

.cms-style-minimal .module-title span {
  max-width:72px;
  height:1px;
  opacity:.65;
  background:var(--orange);
}

.cms-style-gradient .cms-module,
.cms-parallax-card.cms-style-gradient {
  position:relative;
  color:#fff;
  border-color:transparent;
  background:
    radial-gradient(circle at 12% 16%, color-mix(in srgb, var(--orange) 58%, transparent), transparent 32%),
    radial-gradient(circle at 88% 88%, color-mix(in srgb, var(--teal) 46%, transparent), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb, var(--teal-dim) 82%, #12151b), #1c2028 58%, color-mix(in srgb, var(--orange-dim) 44%, #181b22));
  box-shadow:0 26px 58px rgba(31,41,48,.2);
}

.cms-style-gradient .cms-module::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(255,255,255,.18), transparent 22%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.055) 0 1px, transparent 1px 12px);
  pointer-events:none;
}

.cms-style-gradient .module-title h3,
.cms-style-gradient .cms-rich-text,
.cms-style-gradient .cms-rich-text blockquote,
.cms-style-gradient .cms-inline-link,
.cms-style-gradient .cms-accordion-button:not(.collapsed),
.cms-style-gradient .cms-accordion-body {
  color:#fff;
}

.cms-style-gradient .module-title span {
  opacity:.34;
  background:linear-gradient(90deg, #fff, transparent);
}

.cms-style-gradient .cms-rich-text {
  color:rgba(255,255,255,.88);
}

.cms-style-gradient .cms-inline-link {
  border-color:rgba(255,255,255,.22);
}

.cms-style-borderless .cms-module,
.cms-parallax-card.cms-style-borderless {
  border:0;
  background:transparent;
  box-shadow:none;
}

.cms-style-borderless .module-title {
  margin-bottom:12px;
}

.cms-style-borderless .module-title h3 {
  color:var(--teal-dim);
}

.cms-style-borderless .module-title span {
  height:1px;
  opacity:.42;
  background:linear-gradient(90deg, var(--teal), transparent);
}

.cms-style-borderless-shadow .cms-module,
.cms-parallax-card.cms-style-borderless-shadow {
  border:0;
  background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, #fff 8%), color-mix(in srgb, var(--bg-alt) 82%, #fff 18%));
  box-shadow:0 22px 48px rgba(31,41,48,.11);
}

.cms-style-borderless-shadow .module-title span {
  opacity:.2;
}

.cms-style-borderless-accent .cms-module,
.cms-parallax-card.cms-style-borderless-accent {
  border:0;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--teal) 12%, transparent), transparent 38%),
    linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--orange) 6%, var(--bg-alt)));
  box-shadow:none;
}

.cms-style-borderless-accent .module-title {
  padding-left:12px;
  box-shadow:inset 4px 0 0 var(--orange);
}

.cms-style-borderless-accent .module-title span {
  background:linear-gradient(90deg, var(--orange), var(--teal), transparent);
}

.cms-style-borderless-dark .cms-module,
.cms-parallax-card.cms-style-borderless-dark {
  color:#fff;
  border:0;
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--orange) 26%, transparent), transparent 28%),
    linear-gradient(135deg, color-mix(in srgb, var(--teal-dim) 74%, #121820), #15191f);
  box-shadow:none;
}

.cms-style-borderless-dark .module-title h3,
.cms-style-borderless-dark .cms-rich-text,
.cms-style-borderless-dark .cms-rich-text blockquote,
.cms-style-borderless-dark .cms-inline-link,
.cms-style-borderless-dark .cms-accordion-button:not(.collapsed),
.cms-style-borderless-dark .cms-accordion-body {
  color:#fff;
}

.cms-style-borderless-dark .module-title span {
  opacity:.25;
  background:#fff;
}

.cms-module.is-hidden-block {
  opacity:.48;
  outline:2px dashed color-mix(in srgb, var(--orange) 55%, transparent);
}

.cms-block > .cms-module {
  position:relative;
  z-index:1;
}

.cms-main-image {
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  margin-bottom:14px;
  border-radius:8px;
}

.cms-rich-text {
  color:var(--ink-2);
  font-size:14px;
  line-height:1.72;
}

.cms-rich-text img {
  display:block;
  max-width:100%;
  height:auto !important;
  object-fit:contain;
}

.cms-rich-text img.image_resized,
.cms-rich-text .image_resized img {
  height:auto !important;
  max-width:100%;
}

.cms-rich-text figure.cms-img-reveal-left,
.cms-rich-text img.cms-img-reveal-left,
.cms-page-content figure.cms-img-reveal-left,
.cms-page-content img.cms-img-reveal-left,
figure.cms-img-reveal-left,
img.cms-img-reveal-left,
.cms-text-reveal-left { --cms-img-reveal-from: inset(0 100% 0 0); }

.cms-rich-text figure.cms-img-reveal-right,
.cms-rich-text img.cms-img-reveal-right,
.cms-page-content figure.cms-img-reveal-right,
.cms-page-content img.cms-img-reveal-right,
figure.cms-img-reveal-right,
img.cms-img-reveal-right,
.cms-text-reveal-right { --cms-img-reveal-from: inset(0 0 0 100%); }

.cms-rich-text figure.cms-img-reveal-down,
.cms-rich-text img.cms-img-reveal-down,
.cms-page-content figure.cms-img-reveal-down,
.cms-page-content img.cms-img-reveal-down,
figure.cms-img-reveal-down,
img.cms-img-reveal-down,
.cms-text-reveal-down { --cms-img-reveal-from: inset(0 0 100% 0); }

.cms-rich-text figure.cms-img-reveal-up,
.cms-rich-text img.cms-img-reveal-up,
.cms-page-content figure.cms-img-reveal-up,
.cms-page-content img.cms-img-reveal-up,
figure.cms-img-reveal-up,
img.cms-img-reveal-up,
.cms-text-reveal-up { --cms-img-reveal-from: inset(100% 0 0 0); }

.cms-rich-text figure.cms-img-reveal-center-x,
.cms-rich-text img.cms-img-reveal-center-x,
.cms-page-content figure.cms-img-reveal-center-x,
.cms-page-content img.cms-img-reveal-center-x,
figure.cms-img-reveal-center-x,
img.cms-img-reveal-center-x,
.cms-text-reveal-center-x { --cms-img-reveal-from: inset(0 50% 0 50%); }

.cms-rich-text figure.cms-img-reveal-center-y,
.cms-rich-text img.cms-img-reveal-center-y,
.cms-page-content figure.cms-img-reveal-center-y,
.cms-page-content img.cms-img-reveal-center-y,
figure.cms-img-reveal-center-y,
img.cms-img-reveal-center-y,
.cms-text-reveal-center-y { --cms-img-reveal-from: inset(50% 0 50% 0); }

.cms-rich-text figure[class*="cms-img-reveal"],
.cms-page-content figure[class*="cms-img-reveal"],
figure[class*="cms-img-reveal"],
.cms-rich-text [class*="cms-text-reveal"],
.cms-page-content [class*="cms-text-reveal"] {
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.cms-rich-text figure.cms-img-hover-shine,
.cms-rich-text figure.image-hover-effect-shine,
.cms-page-content figure.cms-img-hover-shine,
.cms-page-content figure.image-hover-effect-shine,
.cms-rich-text .cms-img-hover-shine-wrap,
.cms-page-content .cms-img-hover-shine-wrap,
.cms-img-hover-shine-wrap,
figure.cms-img-hover-shine,
figure.image-hover-effect-shine {
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.cms-img-hover-shine-wrap {
  display:inline-block;
  max-width:100%;
  line-height:0;
  vertical-align:top;
}

.cms-img-hover-shine-wrap-block {
  display:block;
  width:100%;
}

.cms-img-hover-shine-wrap > img {
  display:block;
  max-width:100%;
  height:auto;
}

.cms-page-content .cms-img-hover-shine-wrap.cms-page-cover,
.cms-img-hover-shine-wrap.cms-page-inline-cover {
  float:left;
  width:min(46%, 520px);
  max-width:min(46%, 520px);
  margin:.35rem 1.7rem 1rem 0;
}

.cms-page-content .cms-img-hover-shine-wrap.cms-page-cover > img,
.cms-img-hover-shine-wrap.cms-page-inline-cover > img {
  display:block;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 !important;
  float:none !important;
  object-fit:contain;
}

.cms-rich-text figure.cms-img-hover-shine::after,
.cms-rich-text figure.image-hover-effect-shine::after,
.cms-page-content figure.cms-img-hover-shine::after,
.cms-page-content figure.image-hover-effect-shine::after,
.cms-rich-text .cms-img-hover-shine-wrap::after,
.cms-page-content .cms-img-hover-shine-wrap::after,
.cms-img-hover-shine-wrap::after,
figure.cms-img-hover-shine::after,
figure.image-hover-effect-shine::after {
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  z-index:1;
  display:block;
  width:62%;
  height:100%;
  pointer-events:none;
  background:#fff;
  mix-blend-mode:screen;
  opacity:0;
  transform:translate3d(-50%, -50%, 0) skewX(-20deg) translateX(-165%);
  transform-origin:center;
  will-change:transform, opacity;
}

.cms-rich-text figure.cms-img-hover-shine:hover::after,
.cms-rich-text figure.image-hover-effect-shine:hover::after,
.cms-page-content figure.cms-img-hover-shine:hover::after,
.cms-page-content figure.image-hover-effect-shine:hover::after,
.cms-rich-text .cms-img-hover-shine-wrap:hover::after,
.cms-page-content .cms-img-hover-shine-wrap:hover::after,
.cms-img-hover-shine-wrap:hover::after,
figure.cms-img-hover-shine:hover::after,
figure.image-hover-effect-shine:hover::after {
  animation:cmsHoverPrismWhite 4.8s cubic-bezier(.14,.56,.2,1) both;
}

img.cms-img-hover-shine,
img.image-hover-effect-shine {
  transition:none;
}

img.cms-img-hover-shine:hover,
img.image-hover-effect-shine:hover {
  transition:none;
}

@keyframes cmsHoverPrismWhite {
  0% {
    opacity:0;
    transform:translate3d(-50%, -50%, 0) skewX(-20deg) translateX(-165%);
  }

  14% {
    opacity:.2;
  }

  36% {
    opacity:1;
  }

  72% {
    opacity:.74;
  }

  100% {
    opacity:0;
    transform:translate3d(-50%, -50%, 0) skewX(-20deg) translateX(205%);
  }
}

html.cms-img-reveal-js .cms-rich-text figure[class*="cms-img-reveal"]::after,
html.cms-img-reveal-js .cms-page-content figure[class*="cms-img-reveal"]::after,
html.cms-img-reveal-js figure[class*="cms-img-reveal"]::after,
html.cms-img-reveal-js .cms-rich-text [class*="cms-text-reveal"]::after,
html.cms-img-reveal-js .cms-page-content [class*="cms-text-reveal"]::after {
  content:"";
  position:absolute;
  inset:-1px;
  z-index:3;
  pointer-events:none;
  background:var(--bg-alt, #fff);
  transform:translateX(0);
  transition:transform 2.45s cubic-bezier(.16, 1, .3, 1);
  will-change:transform;
}

html.cms-img-reveal-js .cms-rich-text figure[class*="cms-img-reveal"].is-visible::after,
html.cms-img-reveal-js .cms-page-content figure[class*="cms-img-reveal"].is-visible::after,
html.cms-img-reveal-js figure[class*="cms-img-reveal"].is-visible::after,
html.cms-img-reveal-js .cms-rich-text [class*="cms-text-reveal"].is-visible::after,
html.cms-img-reveal-js .cms-page-content [class*="cms-text-reveal"].is-visible::after {
  transform:translateX(100%);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-left.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-left.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-left.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-left.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-left.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-left.is-visible::after {
  transform:translateX(100%);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-right.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-right.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-right.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-right.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-right.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-right.is-visible::after {
  transform:translateX(-100%);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-up.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-up.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-up.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-up.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-up.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-up.is-visible::after {
  transform:translateY(-100%);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-down.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-down.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-down.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-down.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-down.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-down.is-visible::after {
  transform:translateY(100%);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-center-x.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-center-x.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-center-x.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-center-x.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-center-x.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-center-x.is-visible::after {
  transform:scaleX(0);
}

html.cms-img-reveal-js .cms-rich-text figure.cms-img-reveal-center-y.is-visible::after,
html.cms-img-reveal-js .cms-page-content figure.cms-img-reveal-center-y.is-visible::after,
html.cms-img-reveal-js figure.cms-img-reveal-center-y.is-visible::after,
html.cms-img-reveal-js .cms-rich-text .cms-text-reveal-center-y.is-visible::after,
html.cms-img-reveal-js .cms-page-content .cms-text-reveal-center-y.is-visible::after,
html.cms-img-reveal-js .cms-text-reveal-center-y.is-visible::after {
  transform:scaleY(0);
}

html.cms-img-reveal-js .cms-rich-text [class*="cms-text-reveal"],
html.cms-img-reveal-js .cms-page-content [class*="cms-text-reveal"] {
  width:fit-content;
  max-width:100%;
  -webkit-clip-path:var(--cms-img-reveal-from, inset(0 100% 0 0));
  clip-path:var(--cms-img-reveal-from, inset(0 100% 0 0));
  opacity:.92;
  transition:-webkit-clip-path 2.45s cubic-bezier(.16, 1, .3, 1), clip-path 2.45s cubic-bezier(.16, 1, .3, 1), opacity 1.15s ease;
  will-change:clip-path, opacity;
}

html.cms-img-reveal-js .cms-rich-text [class*="cms-text-reveal"]::after,
html.cms-img-reveal-js .cms-page-content [class*="cms-text-reveal"]::after {
  content:none;
  display:none;
}

html.cms-img-reveal-js .cms-rich-text [class*="cms-text-reveal"].is-visible,
html.cms-img-reveal-js .cms-page-content [class*="cms-text-reveal"].is-visible {
  -webkit-clip-path:inset(0 0 0 0);
  clip-path:inset(0 0 0 0);
  opacity:1;
}

@keyframes cmsImageRevealMaskLeft {
  from { transform:translateX(0); }
  to { transform:translateX(100%); }
}

@keyframes cmsImageRevealMaskRight {
  from { transform:translateX(0); }
  to { transform:translateX(-100%); }
}

@keyframes cmsImageRevealMaskUp {
  from { transform:translateY(0); }
  to { transform:translateY(-100%); }
}

@keyframes cmsImageRevealMaskDown {
  from { transform:translateY(0); }
  to { transform:translateY(100%); }
}

@keyframes cmsImageRevealMaskCenterX {
  from { transform:scaleX(1); }
  to { transform:scaleX(0); }
}

@keyframes cmsImageRevealMaskCenterY {
  from { transform:scaleY(1); }
  to { transform:scaleY(0); }
}

@-webkit-keyframes cmsImageRevealOpen {
  from {
    -webkit-clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
    clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
    opacity:.92;
  }
  to {
    -webkit-clip-path:inset(0 0 0 0);
    clip-path:inset(0 0 0 0);
    opacity:1;
  }
}

@keyframes cmsImageRevealOpen {
  from {
    -webkit-clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
    clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
    opacity:.92;
  }
  to {
    -webkit-clip-path:inset(0 0 0 0);
    clip-path:inset(0 0 0 0);
    opacity:1;
  }
}

.cms-rich-text figure[class*="cms-img-reveal"] > img,
.cms-rich-text img[class*="cms-img-reveal"],
.cms-page-content figure[class*="cms-img-reveal"] > img,
.cms-page-content img[class*="cms-img-reveal"],
figure[class*="cms-img-reveal"] > img,
img[class*="cms-img-reveal"] {
  -webkit-animation:none;
  animation:none;
}

html.cms-img-reveal-js .cms-rich-text figure[class*="cms-img-reveal"] > img,
html.cms-img-reveal-js .cms-rich-text img[class*="cms-img-reveal"],
html.cms-img-reveal-js .cms-page-content figure[class*="cms-img-reveal"] > img,
html.cms-img-reveal-js .cms-page-content img[class*="cms-img-reveal"],
html.cms-img-reveal-js figure[class*="cms-img-reveal"] > img,
html.cms-img-reveal-js img[class*="cms-img-reveal"] {
  -webkit-clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
  clip-path:var(--cms-img-reveal-from, inset(0 0 0 0));
  opacity:.92;
  transition:-webkit-clip-path 1.65s cubic-bezier(.2, .82, .18, 1), clip-path 1.65s cubic-bezier(.2, .82, .18, 1), opacity .9s ease;
  will-change:clip-path, opacity;
}

html.cms-img-reveal-js .cms-rich-text figure[class*="cms-img-reveal"].is-visible > img,
html.cms-img-reveal-js .cms-rich-text img[class*="cms-img-reveal"].is-visible,
html.cms-img-reveal-js .cms-page-content figure[class*="cms-img-reveal"].is-visible > img,
html.cms-img-reveal-js .cms-page-content img[class*="cms-img-reveal"].is-visible,
html.cms-img-reveal-js figure[class*="cms-img-reveal"].is-visible > img,
html.cms-img-reveal-js img[class*="cms-img-reveal"].is-visible {
  -webkit-clip-path:inset(0 0 0 0);
  clip-path:inset(0 0 0 0);
  opacity:1;
}

@media (prefers-reduced-motion: reduce) {
  .cms-rich-text figure[class*="cms-img-reveal"] > img,
  .cms-rich-text img[class*="cms-img-reveal"],
  .cms-page-content figure[class*="cms-img-reveal"] > img,
  .cms-page-content img[class*="cms-img-reveal"],
  figure[class*="cms-img-reveal"] > img,
  img[class*="cms-img-reveal"] {
    animation:none;
    -webkit-clip-path:none;
    clip-path:none;
    opacity:1;
  }
}

.cms-rich-text audio,
.cms-rich-text video {
  display:block;
  width:100%;
  max-width:100%;
  margin:12px 0;
}

.cms-rich-text video {
  height:auto;
}

.cms-rich-text blockquote {
  margin:0 0 12px;
  color:var(--ink);
  font-size:15px;
  line-height:1.65;
  font-weight:500;
}

.cms-rich-text cite {
  display:block;
  margin-top:10px;
  color:var(--teal-dim);
  font-style:normal;
  font-weight:700;
  text-align:right;
}

.cms-inline-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
  color:var(--teal-dim);
  font-weight:700;
  font-size:13px;
  text-decoration:none;
}

.cms-inline-link:hover {
  color:var(--orange);
}

.cms-video-thumb {
  min-height:220px;
}

.cms-audio {
  display:grid;
  align-content:start;
  gap:14px;
}

.cms-audio audio {
  width:100%;
}

.cms-gallery-grid {
  grid-template-columns:repeat(var(--cms-gallery-columns, 3), minmax(0, 1fr));
}

.cms-gallery-item {
  cursor:zoom-in;
}

.cms-fixed-image,
.cms-fixed-image-link {
  display:block;
  min-width:0;
  margin:0;
  color:inherit;
  text-decoration:none;
}

.cms-fixed-image {
  position:relative;
  overflow:hidden;
  width:100%;
  border:1px solid rgba(255,255,255,.2);
  border-radius:var(--radius);
  background:color-mix(in srgb, var(--bg-alt) 92%, #fff 8%);
  box-shadow:var(--shadow-sm);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);
}

.cms-fixed-image:hover {
  transform:translateY(-3px);
  border-color:color-mix(in srgb, var(--teal) 34%, var(--border));
  box-shadow:0 14px 30px rgba(0,0,0,.11);
}

.cms-fixed-image img {
  width:100%;
  height:320px;
  object-fit:cover;
  border:0;
  border-radius:0;
  box-shadow:none;
}

.cms-fixed-image figcaption {
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  width:auto;
  min-height:0;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:10px;
  color:#fff;
  font-size:13px;
  font-weight:800;
  line-height:1.3;
  background:linear-gradient(135deg, rgba(13,31,38,.82), rgba(13,31,38,.46));
  backdrop-filter:blur(10px);
}

.cms-fixed-gallery-shell {
  margin-top:2px;
}

.cms-fixed-image-strip {
  grid-auto-columns:minmax(260px, 32%);
}

.cms-fixed-image-strip .cms-fixed-image-link,
.cms-fixed-image-strip .cms-fixed-image {
  scroll-snap-align:start;
}

.cms-logo-marquee {
  position:relative;
  overflow:hidden;
  width:100%;
  margin-left:0;
  margin-right:0;
  padding:14px 0;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.cms-block-logo-marquee.cms-block-full .cms-logo-marquee {
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.cms-logo-track {
  display:flex;
  width:max-content;
  gap:14px;
  animation:cmsLogoSlide 34s linear infinite;
}

.cms-logo-marquee:hover .cms-logo-track {
  animation-play-state:paused;
}

.cms-logo-pill {
  display:grid;
  place-items:center;
  min-width:180px;
  height:86px;
  padding:12px 20px;
  color:var(--ink);
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), color-mix(in srgb, var(--bg-alt) 88%, #fff 12%));
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  font-weight:800;
  text-align:center;
}

.cms-logo-pill img {
  max-width:150px;
  max-height:58px;
  object-fit:contain;
  filter:drop-shadow(0 2px 5px rgba(255,255,255,.85));
}

.cms-logo-pill span {
  display:block;
  font-size:15px;
}

@keyframes cmsLogoSlide {
  from { transform:translateX(0); }
  to { transform:translateX(-33.333%); }
}

.cms-stats-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
  margin-top:18px;
}

.cms-accordion-list {
  display:grid;
  gap:8px;
  margin-top:10px;
  overflow:hidden;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  --bs-accordion-border-radius:0;
  --bs-accordion-inner-border-radius:0;
  --bs-accordion-btn-border-radius:0;
  --bs-accordion-transition:height .22s var(--ease);
}

.cms-accordion-item {
  position:relative;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.cms-accordion-item:last-child {
  border-bottom:0;
  border-radius:0;
}

.cms-accordion-header {
  margin:0;
}

.cms-accordion-button {
  display:grid;
  grid-template-columns:22px minmax(0, 1fr);
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  min-height:44px;
  padding:8px 16px;
  color:var(--ink);
  border:1px solid color-mix(in srgb, var(--teal) 11%, var(--border));
  border-radius:24px;
  background:color-mix(in srgb, #fff 88%, var(--bg-alt) 12%);
  font-size:clamp(13px, 1.08vw, 15px);
  font-weight:800;
  line-height:1.22;
  text-align:left;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(31,41,48,.055);
  transition:color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease);
}

.cms-accordion-button span {
  position:relative;
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}

.cms-accordion-button::before {
  content:"+";
  display:inline-grid;
  place-items:center;
  width:21px;
  height:21px;
  color:#fff;
  border-radius:999px;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  font-size:14px;
  font-weight:700;
  line-height:1;
  box-shadow:0 4px 9px color-mix(in srgb, var(--teal) 18%, transparent);
}

.cms-accordion-button::after {
  display:none;
}

.cms-accordion-button:hover {
  color:var(--teal-dim);
  border-color:color-mix(in srgb, var(--teal) 24%, var(--border));
  background:#fff;
  box-shadow:0 6px 14px rgba(31,41,48,.075);
  transform:translateY(-1px);
}

.cms-accordion-button:not(.collapsed) {
  color:var(--teal-dim);
  border-color:color-mix(in srgb, var(--teal) 30%, var(--border));
  background:linear-gradient(90deg, color-mix(in srgb, var(--teal) 7%, #fff 93%), #fff);
  box-shadow:0 5px 14px rgba(31,41,48,.07);
  border-radius:24px;
}

.cms-accordion-button:not(.collapsed)::before {
  content:"−";
  padding-bottom:3px;
}

.cms-accordion-button:focus {
  outline:0;
  border-color:color-mix(in srgb, var(--teal) 30%, var(--border));
  box-shadow:0 5px 14px rgba(31,41,48,.07);
}

.cms-accordion-button:focus-visible {
  outline:0;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 14%, transparent), 0 5px 14px rgba(31,41,48,.07);
}

.cms-accordion-body {
  position:relative;
  margin:0 0 2px 26px;
  padding:10px 14px 6px 24px;
  border:0;
  border-radius:0;
  color:var(--ink-2);
  font-size:clamp(12px, 1vw, 14px);
  line-height:1.55;
  background:transparent;
}

.cms-accordion-body::before {
  content:"";
  position:absolute;
  top:-1px;
  bottom:0;
  left:6px;
  width:1px;
  background:color-mix(in srgb, var(--teal) 18%, var(--border));
}

.cms-accordion-body p {
  margin:0;
}

.cms-accordion-link {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:8px;
  color:var(--teal-dim);
  font-size:12px;
  font-weight:800;
  text-decoration:none;
}

.cms-accordion-link i {
  font-size:.9em;
}

.cms-stat {
  min-height:128px;
}

.cms-youtube-layout {
  display:grid;
  grid-template-columns:minmax(260px, .95fr) 1.35fr;
  gap:18px;
  align-items:stretch;
}

.cms-youtube-layout .featured-youtube-card {
  min-height:100%;
}

.cms-youtube-layout .youtube-grid {
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.cms-parallax-card {
  --cms-parallax-overlay:.65;
  position:relative;
  display:grid;
  min-height:280px;
  align-items:end;
  overflow:hidden;
  padding:36px;
  border-radius:14px;
  background-attachment:fixed !important;
  background-position:center center !important;
  background-repeat:no-repeat;
  background-size:cover !important;
  box-shadow:0 22px 46px rgba(0,0,0,.16);
}

.cms-parallax-full {
  grid-column:1 / -1;
}

.cms-parallax-full .cms-parallax-card {
  width:100vw;
  min-height:360px;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  border-radius:0;
  padding-left:max(36px, calc((100vw - 1320px) / 2 + 24px));
  padding-right:max(36px, calc((100vw - 1320px) / 2 + 24px));
}

.cms-parallax-boxed .cms-parallax-card {
  border:1px solid var(--border);
}

.cms-parallax-card::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,var(--cms-parallax-overlay)), rgba(0,0,0,calc(var(--cms-parallax-overlay) * .3)));
}

.cms-parallax-valign-start .cms-parallax-card {
  align-items:start;
}

.cms-parallax-valign-center .cms-parallax-card {
  align-items:center;
}

.cms-parallax-valign-end .cms-parallax-card {
  align-items:end;
}

.cms-parallax-card > .cms-parallax-content {
  position:relative;
  width:100%;
}

.cms-parallax-card .cms-rich-text {
  margin:0;
  color:rgba(255,255,255,.9);
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}

.cms-parallax-card .cms-rich-text > :first-child {
  margin-top:0;
}

.cms-parallax-card .cms-rich-text > :last-child {
  margin-bottom:0;
}

.cms-parallax-card .cms-rich-text h1,
.cms-parallax-card .cms-rich-text h2,
.cms-parallax-card .cms-rich-text h3 {
  margin:0;
  color:#fff;
  font-weight:800;
  line-height:1.08;
  letter-spacing:0;
}

.cms-parallax-card .cms-rich-text h1 {
  max-width:900px;
  font-size:clamp(34px, 5vw, 72px);
}

.cms-parallax-card .cms-rich-text h2 {
  max-width:860px;
  font-size:clamp(28px, 4vw, 54px);
}

.cms-parallax-card .cms-rich-text h3 {
  max-width:820px;
  font-size:clamp(22px, 3vw, 38px);
  font-weight:750;
}

.cms-parallax-card .cms-rich-text p {
  margin:12px 0 0;
  color:rgba(255,255,255,.88);
  font-size:clamp(15px, 1.45vw, 19px);
  font-weight:500;
  line-height:1.65;
}

.cms-parallax-card .cms-rich-text a {
  color:#fff;
  font-weight:800;
  text-decoration-color:rgba(255,255,255,.45);
  text-underline-offset:4px;
}

.cms-parallax-card .cms-rich-text ul,
.cms-parallax-card .cms-rich-text ol {
  max-width:760px;
  margin:14px 0 0;
  padding-left:1.25rem;
  color:rgba(255,255,255,.88);
  font-size:clamp(15px, 1.35vw, 18px);
  line-height:1.6;
}

.cms-rich-text figure.media {
  width:100%;
  margin:14px 0;
}

.cms-rich-text figure.media > div,
.cms-rich-text figure.media [data-oembed-url] {
  width:100%;
}

.cms-rich-text figure.media iframe {
  display:block;
  width:100%;
  max-width:100%;
  border:0;
}

@media (max-width: 991.98px) {
  .page-blocks-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .cms-block[data-span="3"],
  .cms-block[data-span="4"] {
    grid-column:span 2;
  }

  .cms-youtube-layout {
    grid-template-columns:1fr;
  }

  .cms-stats-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-tablet, 3), minmax(0, 1fr));
  }

  .archive-grid.cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-tablet, 3), minmax(0, 1fr));
  }

  .cms-fixed-image-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

}

@media (max-width: 767.98px) {
  .cms-gallery-grid,
  .archive-grid.cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-mobile, 2), minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .cms-block {
    overflow:visible;
  }

  .page-blocks-grid,
  .cms-stats-grid {
    grid-template-columns:1fr;
  }

  .cms-block,
  .cms-block[data-span] {
    grid-column:span 1;
  }

  .cms-fixed-image-grid,
  .cms-youtube-layout .youtube-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-mobile, 2), minmax(0, 1fr));
  }

  .archive-grid.cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-mobile, 2), minmax(0, 1fr));
  }

  .cms-logo-pill {
    min-width:145px;
    height:74px;
  }

  .cms-parallax-card {
    min-height:240px;
    padding:24px;
    background-attachment:fixed !important;
  }

  .cms-parallax-card .cms-rich-text h1 {
    font-size:clamp(28px, 10vw, 42px);
  }

  .cms-parallax-card .cms-rich-text h2 {
    font-size:clamp(24px, 8vw, 34px);
  }

  .cms-parallax-card .cms-rich-text h3 {
    font-size:clamp(20px, 6vw, 28px);
  }

  .cms-parallax-card .cms-rich-text p,
  .cms-parallax-card .cms-rich-text ul,
  .cms-parallax-card .cms-rich-text ol {
    font-size:15px;
    line-height:1.55;
  }

  .cms-accordion-list {
    gap:7px;
  }

  .cms-accordion-button {
    grid-template-columns:20px minmax(0, 1fr);
    min-height:40px;
    gap:10px;
    padding:7px 12px;
    font-size:13px;
  }

  .cms-accordion-button::before {
    width:20px;
    height:20px;
    font-size:13px;
  }

  .cms-accordion-body {
    margin-left:24px;
    padding:9px 8px 4px 20px;
    font-size:12.5px;
  }

  .cms-accordion-body::before {
    left:6px;
  }
}

.dropdown-menu {
  min-width:250px;
  padding:10px;
  border:1px solid var(--border);
  border-radius: var(--radius-sm);
  background: rgba(12,18,37,.95);
  backdrop-filter: blur(18px);
  box-shadow: 0 24px 60px rgba(0,0,0,.45);
}
.dropdown-item {
  border-radius: var(--radius-xs);
  color: var(--ink-2);
  font-family:var(--font);
  font-size:13px;
  font-weight:600;
  white-space:normal;
  padding:8px 12px;
  transition: all .2s var(--ease);
}
.dropdown-item:hover {
  color:#fff;
  background: linear-gradient(135deg, rgba(0,212,170,.2), rgba(0,212,170,.08));
}
.dropdown-item.dropdown-toggle::after {
  float:right;
  margin-top:.6em;
  transform:rotate(-90deg);
}
.dropdown-submenu { position:relative; }
.dropdown-submenu > .dropdown-menu {
  top:-10px;
  left:100%;
  margin-left:6px;
}
.dropdown-submenu.dropdown-submenu-left > .dropdown-menu {
  right:100%;
  left:auto;
  margin-right:6px;
  margin-left:0;
}

.navbar-toggler {
  width:44px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.2);
  border-radius:10px;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow:0 8px 18px rgba(31,109,103,.18);
}
.navbar-toggler:focus {
  box-shadow:0 0 0 3px rgba(31,109,103,.22);
}
.navbar-toggler-icon {
  width:20px;
  height:20px;
  background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,.96%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.4' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  filter:none;
}

/* ══════════════════════════════
   FEATURED NEWS (HERO)
   ══════════════════════════════ */
.featured-news {
  padding:28px 0 20px;
  background: transparent;
  --featured-news-height: 588px;
}

.featured-news-carousel {
  height:var(--featured-news-height);
  overflow:hidden;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-alt);
  box-shadow: var(--shadow);
  touch-action: pan-y;
  user-select:none;
}
.featured-news-carousel .carousel-inner { overflow:hidden; }
.featured-news-carousel .carousel-item {
  height:100%;
  background: var(--bg-alt);
}
.featured-news-carousel .carousel-item.active,
.featured-news-carousel .carousel-item-next,
.featured-news-carousel .carousel-item-prev,
.featured-news-carousel .carousel-item-start,
.featured-news-carousel .carousel-item-end {
  display:flex;
  flex-direction:column;
}
.featured-news-carousel .carousel-item img {
  width:100%;
  flex:1 1 auto;
  height:440px;
  min-height:0;
  object-fit:cover;
  opacity:.88;
  transition: opacity .6s var(--ease);
  -webkit-user-drag:none;
  user-select:none;
}
.featured-news-carousel .carousel-item.active img { opacity:1; }

.featured-caption {
  position:static;
  color:#fff;
  text-align:left;
}
.featured-caption h1 {
  margin:0;
  padding:10px 16px 9px;
  color:#fff;
  background:linear-gradient(90deg, var(--teal-dim), var(--teal));
  font-size:clamp(14px,1.35vw,19px);
  font-weight:700;
  line-height:1.18;
  letter-spacing:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow:ellipsis;
}
.featured-caption p {
  margin:0;
  min-height:38px;
  padding:8px 16px 10px;
  color:var(--ink-2);
  background:var(--surface);
  background:color-mix(in srgb, var(--teal) 7%, var(--surface));
  font-size:clamp(11px,.9vw,13px);
  font-weight:500;
  line-height:1.38;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow:ellipsis;
}

.featured-indicators {
  position:static;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
  margin:0;
  padding:16px 14px 18px;
  background:var(--surface);
  background:color-mix(in srgb, var(--teal) 5%, var(--surface));
  border-top:1px solid var(--border);
}
.featured-indicators [data-bs-target] {
  width:36px; height:36px;
  margin:0; border:0;
  border-radius:50%;
  color:var(--teal-dim);
  background:var(--surface-2);
  background:color-mix(in srgb, var(--teal) 10%, var(--surface));
  text-indent:0;
  font-family:var(--font);
  font-size:14px;
  font-weight:700;
  opacity:1;
  transition: all .25s var(--ease);
}
.featured-indicators [data-bs-target]:hover {
  color:#fff;
  background:var(--teal);
  transform:translateY(-2px);
  box-shadow: 0 4px 14px rgba(0,212,170,.3);
}
.featured-indicators .active {
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow:0 4px 14px rgba(31,109,103,.28);
}

/* Previous news sidebar */
.previous-news {
  height:var(--featured-news-height, 588px);
  max-height:var(--featured-news-height, 588px);
  padding:18px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow-sm);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}
.previous-news::-webkit-scrollbar { width:var(--cms-scrollbar-size); }
.previous-news::-webkit-scrollbar-track { background:var(--cms-scrollbar-track); border-radius:999px; }
.previous-news::-webkit-scrollbar-thumb { background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%)); border-radius:999px; }

.previous-news-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--border);
}
.previous-news-head span {
  color:#fff;
  font-size:16px;
  font-weight:700;
}
.previous-news-head a {
  color: var(--teal);
  font-size:13px;
  font-weight:700;
}
.previous-news-head a:hover { color: var(--orange); }

.previous-news-item {
  display:grid;
  grid-template-columns:88px 1fr;
  gap:12px;
  align-items:center;
  padding:10px 0;
  border-bottom:1px solid var(--border);
  transition: transform .25s var(--ease);
}
.previous-news-item:last-child { border-bottom:0; }
.previous-news-item:hover { transform:translateX(4px); }

.previous-news-item img {
  width:88px; height:62px;
  object-fit:cover;
  border-radius: var(--radius-xs);
  opacity:.85;
  transition: opacity .3s var(--ease);
}
.previous-news-item:hover img { opacity:1; }

.previous-news-item time {
  display:block;
  margin-bottom:3px;
  color: var(--teal);
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
}
.previous-news-item strong {
  display:block;
  color: var(--ink-2);
  font-size:13px;
  line-height:1.35;
  font-weight:600;
  transition: color .25s var(--ease);
}
.previous-news-item:hover strong { color:var(--teal-dim); }

/* ══════════════════════════════
   TICKER
   ══════════════════════════════ */
.ticker-wrap {
  min-height:52px;
  background: var(--surface);
  border-bottom:1px solid var(--border);
  backdrop-filter: blur(10px);
  overflow:hidden;
}
.ticker-wrap.has-ticker-label {
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
}
.ticker-label {
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 22px;
  color:#fff;
  background: linear-gradient(90deg, var(--orange), var(--orange-dim));
  font-family:var(--font);
  font-weight:800;
  font-size:13px;
  letter-spacing:.02em;
}
.ticker {
  display:flex;
  align-items:center;
  min-height:52px;
  overflow:hidden;
}
.ticker-wrap.has-ticker-label .ticker {
  padding-left:600px;
}
.ticker-track {
  display:flex;
  gap:44px;
  min-width:max-content;
  animation: ticker var(--cms-ticker-duration, 40s) linear infinite;
}
.ticker:hover .ticker-track { animation-play-state:paused; }
.ticker-track span,
.ticker-track a {
  position:relative;
  font-family:var(--font);
  font-weight:600;
  font-size:13px;
  color: var(--ink-2);
  text-decoration:none;
  white-space:nowrap;
}

.ticker-track a:hover {
  color:var(--teal);
  text-decoration:none;
}

.ticker-track span::after,
.ticker-track a::after {
  content:'';
  position:absolute;
  right:-24px; top:50%;
  width:6px; height:6px;
  border-radius:50%;
  background: var(--teal);
  box-shadow: 0 0 8px rgba(0,212,170,.4);
}

.cms-block-child-ticker .ticker-wrap {
  border:1px solid var(--border);
  border-radius:var(--radius-xs);
  box-shadow:var(--shadow-sm);
}

.cms-block-child-ticker.cms-block-full > .ticker-wrap {
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  border-right:0;
  border-left:0;
  border-radius:0;
}

.cms-child-card-block .cms-module {
  height:100%;
  display:flex;
  flex-direction:column;
}

.cms-child-card {
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:0;
  width:100%;
  color:var(--ink);
  text-decoration:none;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius-xs);
  background:#fff;
  box-shadow:var(--shadow-sm);
  transition:border-color .22s var(--ease), box-shadow .22s var(--ease), transform .22s var(--ease);
}

.cms-child-card:hover {
  color:var(--teal-dim);
  text-decoration:none;
  border-color:rgba(46,125,50,.35);
  box-shadow:var(--shadow-md);
  transform:translateY(-2px);
}

.cms-child-card-image {
  display:block;
  aspect-ratio:var(--cms-item-aspect-ratio, 16 / 10);
  background:var(--soft);
  overflow:hidden;
}

.cms-child-card-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s var(--ease), opacity .35s var(--ease);
}

.cms-child-card:hover .cms-child-card-image img {
  transform:scale(1.035);
}

.cms-child-card strong {
  display:block;
  padding:13px 15px 15px;
  color:inherit;
  font-size:14px;
  line-height:1.35;
  font-weight:600;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.cms-child-card-empty {
  padding:18px;
  border:1px dashed var(--border);
  border-radius:var(--radius-xs);
  background:rgba(255,255,255,.74);
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.cms-child-list-block .cms-module {
  padding:24px;
  overflow:hidden;
}

.cms-child-list,
.cms-child-list.previous-news {
  padding:6px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}

.cms-child-list[data-cms-auto-scroll="up"],
.cms-child-list.previous-news[data-cms-auto-scroll="up"] {
  height:100% !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  max-height:100% !important;
}

.cms-child-list .previous-news-item.cms-child-list-item-no-image {
  display:block;
  width:100%;
  min-width:0;
  min-height:0;
  padding:12px 0;
  grid-template-columns:minmax(0, 1fr);
}

.cms-child-list .previous-news-item.cms-child-list-item-no-image > div {
  display:block;
  width:100%;
  min-width:0;
}

.cms-child-list .previous-news-item.cms-child-list-item-no-image strong,
.cms-child-list .previous-news-item.cms-child-list-item-no-image time {
  display:block;
  width:100%;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
}

.cms-child-list .previous-news-item.cms-child-list-item-no-image strong {
  line-height:1.45;
}

.cms-child-list .previous-news-item {
  margin:0 0 8px;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  box-sizing:border-box;
}

.cms-child-list .previous-news-item > div {
  background:transparent !important;
  padding:12px 14px !important;
}

.cms-child-list .previous-news-item img {
  margin:12px 0 12px 12px;
}

.cms-child-list .previous-news-item:hover {
  background:transparent !important;
  box-shadow:none !important;
}

.cms-child-list .previous-news-item.cms-child-list-item-no-image:hover {
  transform:none;
  border-radius:0 !important;
  min-height:0;
}

.cms-child-list-empty {
  margin:0;
  padding:16px;
  border:0;
  border-radius:0;
  color:var(--muted);
  background:transparent;
}

@keyframes ticker {
  from { transform:translateX(0); }
  to   { transform:translateX(calc(-100% - 44px)); }
}

/* ══════════════════════════════
   SECTIONS – SHARED
   ══════════════════════════════ */
.section { padding:80px 0; }

.section-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:24px;
}
.section-head span {
  display:none;
}
.section-head h2 {
  display:flex;
  align-items:center;
  flex:1;
  gap:18px;
  margin:0;
  font-size:16px;
  font-weight:800;
  letter-spacing:.01em;
  line-height:1.2;
  text-transform:uppercase;
  color:#fff;
}
.section-head h2::after {
  content:"";
  flex:1;
  height:22px;
  opacity:.34;
  background-image:radial-gradient(currentColor 1px, transparent 1px);
  background-size:5px 5px;
}
.section-head a {
  color: var(--teal);
  font-weight:700;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.02em;
  white-space:nowrap;
  transition: color .25s var(--ease);
}
.section-head a:hover { color: var(--orange); }

/* ══════════════════════════════
   STATS BAND
   ══════════════════════════════ */
.stats-band {
  padding:80px 0;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(0,212,170,.08), transparent 50%),
    linear-gradient(315deg, rgba(255,107,53,.06), transparent 50%),
    var(--bg-alt);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.stats-band p {
  color: var(--ink-2);
  font-size:16px;
  line-height:1.65;
}
.stats-band h2 {
  font-size:clamp(28px,4vw,44px);
  font-weight:800;
  letter-spacing:-.02em;
}

.stat {
  min-height:160px;
  padding:28px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  backdrop-filter: blur(10px);
  transition: all .4s var(--ease);
}
.stat:hover {
  border-color: var(--border-hl);
  box-shadow: var(--glow-teal);
}
.stat strong {
  display:block;
  color: var(--teal);
  font-size:52px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.03em;
}
.stat span {
  display:block;
  margin-top:10px;
  color: var(--muted);
  font-size:14px;
  font-weight:600;
}

/* ══════════════════════════════
   NEWS SECTION
   ══════════════════════════════ */
.news-section {
  background:
    radial-gradient(circle at top right, rgba(0,212,170,.06), transparent 40%),
    var(--bg);
}

.news-carousel {
  overflow:hidden;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border:1px solid var(--border);
  touch-action: pan-y;
  user-select:none;
}

.carousel-item {
  height:520px;
  background: var(--bg-alt);
}
.carousel-item img {
  width:100%; height:100%;
  object-fit:cover;
  opacity:1;
  -webkit-user-drag:none;
  user-select:none;
}

.carousel-caption {
  right:auto;
  left:36px; bottom:34px;
  max-width:620px;
  text-align:left;
}
.carousel-caption span {
  display:inline-block;
  margin-bottom:8px;
  padding:4px 12px;
  border-radius:999px;
  color: var(--bg);
  background: var(--teal);
  font-size:12px;
  font-weight:700;
}
.carousel-caption h3 {
  font-size:clamp(26px,4vw,46px);
  font-weight:800;
  letter-spacing:-.02em;
  text-shadow: 0 4px 16px rgba(0,0,0,.5);
}

.stacked-news { display:grid; gap:14px; }
.stacked-news article {
  padding:20px;
  border-radius: var(--radius-sm);
  border:1px solid var(--border);
  border-left:4px solid var(--teal);
  background: var(--surface);
  backdrop-filter: blur(8px);
  transition: all .3s var(--ease);
  cursor:pointer;
}
.stacked-news article:hover {
  transform:translateX(6px);
  border-left-color: var(--orange);
  box-shadow: var(--glow-teal);
}
.stacked-news time {
  color: var(--teal);
  font-size:12px;
  font-weight:700;
}
.stacked-news h3 {
  margin:6px 0 0;
  font-size:15px;
  font-weight:600;
  line-height:1.4;
  color: var(--ink-2);
}

.cms-opening-hero {
  --cms-opening-hero-overlay:.35;
  position:relative;
  min-height:clamp(520px, 72vh, 760px);
  overflow:hidden;
  color:#fff;
  background:#111827;
  isolation:isolate;
}

.cms-opening-hero-height-compact .cms-opening-hero {
  min-height:clamp(360px, 48vh, 540px);
}

.cms-opening-hero-height-full .cms-opening-hero {
  min-height:100vh;
  min-height:100dvh;
}

.cms-opening-hero-media,
.cms-opening-hero-media .carousel,
.cms-opening-hero-media .carousel-inner,
.cms-opening-hero-media .carousel-item {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.cms-opening-hero-media img,
.cms-opening-hero-video {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.cms-opening-hero-youtube {
  position:absolute;
  top:50%;
  left:50%;
  display:block;
  width:max(100%, calc(100vh * 1.7778));
  height:max(100%, calc(100vw * .5625));
  min-width:100%;
  min-height:100%;
  border:0;
  transform:translate(-50%, -50%);
  pointer-events:none;
  opacity:0;
  animation:cmsOpeningHeroYoutubeReady .9s ease .9s forwards;
}

@keyframes cmsOpeningHeroYoutubeReady {
  from { opacity:0; }
  to { opacity:1; }
}

.cms-opening-hero-shade {
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,var(--cms-opening-hero-overlay)) 0%, rgba(0,0,0,var(--cms-opening-hero-overlay)) 100%),
    linear-gradient(90deg, rgba(0,0,0,.24), transparent 62%),
    radial-gradient(circle at 18% 45%, rgba(0,0,0,.18), transparent 42%);
}

.cms-opening-hero-content {
  position:relative;
  z-index:2;
  display:flex;
  width:min(1320px, calc(100vw - 36px));
  min-height:inherit;
  margin:0 auto;
  padding:clamp(52px, 8vw, 112px) 0;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}

.cms-opening-hero-content > * {
  max-width:min(760px, 92vw);
}

.cms-opening-hero-content:has([style*="text-align:center"]),
.cms-opening-hero-content:has([style*="text-align: center"]),
.cms-opening-hero-content:has(.text-align-center),
.cms-opening-hero-content:has(.text-center) {
  align-items:center;
  text-align:center;
}

.cms-opening-hero-content:has([style*="text-align:right"]),
.cms-opening-hero-content:has([style*="text-align: right"]),
.cms-opening-hero-content:has(.text-align-right),
.cms-opening-hero-content:has(.text-right) {
  align-items:flex-end;
  text-align:right;
}

.cms-opening-hero-content h1,
.cms-opening-hero-content h2 {
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(34px, 5vw, 76px);
  font-weight:900;
  line-height:1.04;
  text-shadow:0 14px 34px rgba(0,0,0,.36);
}

.cms-opening-hero-content h3 {
  color:#fff;
  font-size:clamp(22px, 3vw, 40px);
}

.cms-opening-hero-content p {
  color:rgba(255,255,255,.9);
  font-size:clamp(15px, 1.7vw, 21px);
  line-height:1.65;
  text-shadow:0 8px 24px rgba(0,0,0,.28);
}

.cms-opening-hero-content a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:12px;
  padding:11px 20px;
  color:#fff;
  border:1px solid rgba(255,255,255,.38);
  border-radius:999px;
  background:rgba(255,255,255,.16);
  text-decoration:none;
  font-weight:800;
  backdrop-filter:blur(12px);
}

.cms-opening-hero-content a:hover {
  color:#fff;
  border-color:rgba(255,255,255,.68);
  background:rgba(255,255,255,.24);
}

.cms-edit-opening-hero {
  z-index:1205;
  pointer-events:auto;
}

.settings-enabled .cms-block-opening-hero {
  position:relative;
}

.settings-enabled .cms-opening-hero-media,
.settings-enabled .cms-opening-hero-video {
  pointer-events:none;
}

.settings-enabled .cms-edit-opening-hero {
  top:calc(var(--cms-opening-hero-top-pull) + 12px);
  right:16px;
}

.cms-news-flow {
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(260px, .72fr);
  gap:22px;
  align-items:stretch;
  --cms-news-flow-height:588px;
}

.cms-news-flow.cms-news-flow-no-side {
  grid-template-columns:minmax(0, 1fr);
}

.cms-news-flow-block .cms-module {
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.cms-news-flow-block {
  margin-bottom:20px;
}

.cms-news-flow-carousel {
  display:flex;
  flex-direction:column;
  height:var(--cms-news-flow-height);
  min-height:var(--cms-news-flow-height);
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:var(--bg-alt);
  box-shadow:var(--shadow);
}

.cms-news-flow-carousel .carousel-inner {
  flex:1 1 auto;
  height:auto;
  min-height:0;
  overflow:hidden;
}

.cms-news-flow-carousel .carousel-item {
  height:100%;
}

.cms-news-flow-carousel .carousel-item {
  color:inherit;
  background:var(--bg-alt);
  text-decoration:none;
}

.cms-news-flow-carousel .carousel-item img {
  width:100%;
  flex:1 1 auto;
  height:auto;
  min-height:0;
  object-fit:cover;
  opacity:1;
  transition:transform .45s var(--ease);
}

.cms-news-flow-carousel .carousel-item:hover img {
  transform:none;
}

.cms-news-flow-caption {
  position:static;
  text-align:left;
}

.cms-news-flow-caption h1 {
  margin:0;
  padding:10px 16px 9px;
  color:#fff;
  background:linear-gradient(90deg, var(--teal-dim), var(--teal));
  font-size:clamp(14px, 1.35vw, 19px);
  font-weight:700;
  line-height:1.18;
  letter-spacing:0;
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.cms-news-flow-caption p {
  display:grid;
  gap:2px;
  min-height:38px;
  margin:0;
  padding:8px 16px 10px;
  color:var(--ink-2);
  background:color-mix(in srgb, var(--teal) 7%, var(--surface));
  font-size:clamp(11px, .9vw, 13px);
  font-weight:500;
  line-height:1.38;
  overflow:hidden;
}

.cms-news-flow-caption p strong,
.cms-news-flow-caption p span {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.cms-news-flow-caption p strong {
  color:var(--ink-2);
  font-weight:700;
}

.cms-news-flow-caption p span {
  color:var(--muted);
}

.cms-news-flow-carousel .carousel-indicators {
  position:static;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:0;
  padding:8px 14px;
  background:color-mix(in srgb, var(--teal) 5%, var(--surface));
  border-top:1px solid var(--border);
  border-bottom-right-radius:calc(var(--radius) - 1px);
  border-bottom-left-radius:calc(var(--radius) - 1px);
}

.cms-news-flow-carousel .carousel-indicators [data-bs-target] {
  position:relative;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 36px !important;
  width:36px !important;
  height:36px !important;
  padding:0 !important;
  margin:0;
  border:0 !important;
  border-radius:999px;
  overflow:hidden !important;
  color:transparent !important;
  background:color-mix(in srgb, var(--teal) 10%, var(--surface)) !important;
  font:700 0/1 var(--font) !important;
  text-indent:0 !important;
  opacity:1 !important;
  transition:background .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
}

.cms-news-flow-carousel .carousel-indicators [data-bs-target]::before {
  content:attr(aria-label);
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--teal-dim);
  font:700 14px/1 var(--font);
  pointer-events:none;
}

.cms-news-flow-carousel .carousel-indicators [data-bs-target]:hover,
.cms-news-flow-carousel .carousel-indicators .active {
  color:transparent !important;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim)) !important;
  box-shadow:0 4px 14px rgba(31,109,103,.28);
  transform:translateY(-1px);
}

.cms-news-flow-carousel .carousel-indicators [data-bs-target]:hover::before,
.cms-news-flow-carousel .carousel-indicators .active::before {
  color:#fff;
}

.cms-news-flow-carousel .carousel-control-prev,
.cms-news-flow-carousel .carousel-control-next {
  width:8%;
}

.cms-news-flow-side {
  height:var(--cms-news-flow-height);
  max-height:var(--cms-news-flow-height);
  overflow-y:auto;
  padding:18px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}

.cms-news-flow-side::-webkit-scrollbar { width:var(--cms-scrollbar-size); }
.cms-news-flow-side::-webkit-scrollbar-track {
  margin:12px 0;
  border-radius:999px;
  background:var(--cms-scrollbar-track);
}
.cms-news-flow-side::-webkit-scrollbar-thumb {
  border:2px solid transparent;
  border-radius:999px;
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%));
  background-clip:padding-box;
}

.cms-news-flow-side-head {
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--border);
}

.cms-news-flow-side-head span {
  color:var(--ink);
  font-size:16px;
  font-weight:700;
}

.cms-news-flow-side-head a {
  color:var(--teal);
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}

.cms-news-flow-side-head a:hover {
  color:var(--teal-dim);
}

.cms-news-flow-side-item {
  display:grid;
  grid-template-columns:88px 1fr;
  gap:12px;
  align-items:center;
  min-height:82px;
  padding:10px 0;
  border:0;
  border-bottom:1px solid var(--border);
  border-radius:0;
  color:inherit;
  background:transparent;
  text-decoration:none;
  transition:background .2s var(--ease), transform .2s var(--ease);
}

.cms-news-flow-side-item:last-child {
  border-bottom:0;
}

.cms-news-flow-side-item:hover {
  background:color-mix(in srgb, var(--teal) 7%, transparent);
  transform:translateX(3px);
  text-decoration:none;
}

.cms-news-flow-side-item img {
  width:88px;
  height:62px;
  object-fit:cover;
  border-radius:var(--radius-xs);
  opacity:.86;
  transition:opacity .25s var(--ease), transform .25s var(--ease);
}

.cms-news-flow-side-item:hover img {
  opacity:1;
}

.cms-news-flow-side-item time {
  display:block;
  margin-bottom:3px;
  color:var(--teal);
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
}

.cms-news-flow-side-item strong {
  display:block;
  color:var(--ink-2);
  font-size:13px;
  font-weight:600;
  line-height:1.35;
  transition:color .25s var(--ease);
}

.cms-news-flow-side-item:hover strong {
  color:var(--teal-dim);
}

.cms-news-flow-side-empty,
.cms-news-flow-empty {
  margin:0;
  padding:16px;
  border:1px dashed var(--border);
  border-radius:8px;
  color:var(--muted);
  background:rgba(255,255,255,.55);
}

/* ══════════════════════════════
   GALLERY
   ══════════════════════════════ */
.gallery-section {
  background: var(--bg);
}

.gallery-shell {
  position:relative;
  overflow:hidden;
}
.gallery-shell::before,
.gallery-shell::after {
  content:'';
  position:absolute;
  top:0; bottom:34px;
  z-index:2;
  width:80px;
  pointer-events:none;
}
.gallery-shell::before {
  left:0;
  background: linear-gradient(90deg, var(--bg), transparent);
}
.gallery-shell::after {
  right:0;
  background: linear-gradient(270deg, var(--bg), transparent);
}

.gallery-strip {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(260px,1fr);
  gap:16px;
  overflow-x:auto;
  padding:2px 6px 18px;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  cursor:grab;
  user-select:none;
}
.gallery-strip.is-dragging {
  cursor:grabbing;
  scroll-snap-type:none;
  scroll-behavior:auto;
}
.gallery-strip::-webkit-scrollbar { display:none; }
.gallery-strip img {
  width:100%;
  height:320px;
  object-fit:cover;
  border-radius: var(--radius);
  scroll-snap-align:start;
  box-shadow: var(--shadow-sm);
  pointer-events:none;
  transition: transform .4s var(--ease);
  border:1px solid var(--border);
}
.gallery-strip img:hover { transform:scale(1.02); }

.gallery-dots {
  display:flex;
  justify-content:center;
  gap:8px;
  padding-top:4px;
}
.gallery-dots span {
  width:8px; height:8px;
  border-radius:999px;
  background: rgba(255,255,255,.15);
  transition: all .3s var(--ease);
}
.gallery-dots .active {
  width:28px;
  background: var(--teal);
  box-shadow: 0 0 10px rgba(0,212,170,.4);
}

/* ══════════════════════════════
   PARALLAX CALLOUT
   ══════════════════════════════ */
.parallax-callout {
  position:relative;
  min-height:460px;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#fff;
  isolation:isolate;
}
.parallax-callout::after {
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(6,11,24,.92), rgba(6,11,24,.5)),
    linear-gradient(0deg, rgba(0,212,170,.12), transparent 60%);
}

.hero-bg,
.parallax-layer {
  position:absolute;
  inset:0;
  background-image:url("assets/images/local-image-43.jpg");
  background-size:cover;
  background-position:center 45%;
  background-attachment:fixed;
  transform:none !important;
}

@media (max-width:991px) {
  .parallax-layer {
    background-attachment:fixed;
  }
}

.callout-content {
  position:relative;
  z-index:1;
  max-width:720px;
}
.callout-content h2 {
  margin:14px 0 24px;
  font-size:clamp(30px,5vw,52px);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.1;
}

/* ══════════════════════════════
   CONTENT GRID / FEATURE CARDS
   ══════════════════════════════ */
.content-grid {
  background: var(--bg);
}

.feature-card {
  min-height:100%;
  overflow:hidden;
  padding:28px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  backdrop-filter: blur(10px);
  transition: all .4s var(--ease);
}
.feature-card:hover {
  border-color: var(--border-hl);
  transform:translateY(-4px);
  box-shadow: var(--glow-teal);
}

.feature-card h3 {
  margin:10px 0 12px;
  font-size:22px;
  font-weight:700;
  color:#fff;
  letter-spacing:-.01em;
}
.feature-card p { color: var(--muted); font-size:14px; }
.feature-card a {
  color: var(--teal);
  font-weight:700;
  font-size:14px;
}
.feature-card a:hover { color: var(--orange); }

.feature-card > i {
  display:inline-flex;
  margin-bottom:16px;
  color: var(--teal);
  font-size:40px;
}

.president-card { padding:0; }
.president-card img {
  width:100%; height:220px;
  object-fit:cover;
  border-radius: var(--radius) var(--radius) 0 0;
}
.president-card div { padding:24px; }

.publication-card {
  background:
    linear-gradient(180deg, var(--surface), rgba(251,191,36,.04));
  border-color: rgba(251,191,36,.12);
}
.publication-card:hover {
  border-color: rgba(251,191,36,.3);
  box-shadow: 0 0 40px rgba(251,191,36,.1);
}

.video-card {
  background:
    linear-gradient(145deg, rgba(0,212,170,.1), var(--surface));
  border-color: rgba(0,212,170,.15);
}
.video-card p { color: var(--muted); }
.video-card a,
.video-card > i,
.video-card span { color: var(--teal); }

/* ══════════════════════════════
   ACCESS SECTION
   ══════════════════════════════ */
.access-section,
.media-section,
.social-section {
  background: var(--bg);
}

.president-section,
.heritage-section {
  background: var(--bg-alt);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}

.media-section {
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  background: var(--bg-alt);
}

.module-card {
  height:100%;
  padding:24px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  backdrop-filter: blur(10px);
  box-shadow: var(--shadow-sm);
  transition: all .35s var(--ease);
}
.module-card:hover {
  border-color: var(--border-hl);
}

.module-title {
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}
.module-title h3 {
  margin:0;
  color:#fff;
  font-size:16px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.module-title span {
  flex:1;
  height:20px;
  opacity:.2;
  background-image: radial-gradient(var(--muted) 1px, transparent 1px);
  background-size:5px 5px;
}

.module-card audio {
  width:100%;
  min-height:48px;
  border-radius:8px;
  background:#edf1f4;
}

.module-card audio::-webkit-media-controls-enclosure,
.module-card audio::-webkit-media-controls-panel {
  background:#edf1f4;
}

.module-card audio::-webkit-media-controls-current-time-display,
.module-card audio::-webkit-media-controls-time-remaining-display {
  color:var(--ink-2);
}

.anthem-card {
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.anthem-card .module-title {
  align-items:flex-start;
}

/* Video thumbnails */
.video-thumb,
.youtube-card {
  position:relative;
  display:block;
  overflow:hidden;
  border-radius: var(--radius-sm);
  background: var(--bg-alt);
  border:1px solid var(--border);
}
.video-thumb img,
.youtube-card img {
  width:100%; height:220px;
  object-fit:cover;
  opacity:.8;
  transition: transform .4s var(--ease), opacity .4s var(--ease);
}
.video-thumb i,
.youtube-card i {
  position:absolute;
  left:50%; top:50%;
  display:grid;
  width:68px; height:48px;
  place-items:center;
  border-radius:14px;
  color:#fff;
  background: rgba(255,107,53,.9);
  font-size:34px;
  transform:translate(-50%,-50%);
  box-shadow: 0 8px 24px rgba(255,107,53,.3);
  transition: all .3s var(--ease);
}
.video-thumb:hover img,
.youtube-card:hover img {
  opacity:1;
  transform:scale(1.05);
}
.video-thumb:hover i,
.youtube-card:hover i {
  background: var(--teal);
  box-shadow: 0 8px 24px rgba(0,212,170,.4);
}

/* Access buttons */
.access-card {
  display:grid;
  gap:14px;
  align-content:start;
}

.edevlet-banner {
  display:grid;
  gap:4px;
  min-height:82px;
  padding:18px 22px;
  border-radius: var(--radius);
  color:#fff;
  background: linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow: 0 8px 30px rgba(0,212,170,.2);
  transition: all .3s var(--ease);
}
.edevlet-banner:hover {
  color:#fff;
  transform:translateY(-2px);
  box-shadow: 0 12px 40px rgba(0,212,170,.35);
}
.edevlet-banner strong { font-size:18px; font-weight:800; }
.edevlet-banner span {
  max-width:280px;
  font-size:13px;
  font-weight:500;
  opacity:.9;
}

.access-button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:48px;
  padding:0 18px;
  color:#fff;
  background: var(--surface-3);
  border:1px solid var(--border);
  border-radius: var(--radius-xs);
  font-size:14px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.02em;
  transition: all .25s var(--ease);
}
.access-button:hover {
  color:#fff;
  background: var(--teal-dim);
  border-color: var(--teal);
  transform:translateX(4px);
  box-shadow: var(--glow-teal);
}

/* President */
.president-message img {
  width:100%; height:280px;
  object-fit:cover;
  object-position:center;
  margin-bottom:16px;
  border-radius: var(--radius-sm);
  border:1px solid var(--border);
}
.president-message blockquote {
  margin:0 0 12px;
  padding-left:16px;
  border-left:3px solid var(--teal);
  color: var(--ink-2);
  font-size:15px;
  font-style:italic;
  line-height:1.65;
}
.president-message p {
  margin-bottom:8px;
  color: var(--muted);
  font-size:14px;
}
.president-message cite {
  display:block;
  color: var(--teal);
  font-style:normal;
  font-weight:700;
  text-align:right;
  font-size:14px;
}

/* YouTube grid */
.youtube-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.youtube-showcase .module-card {
  padding:18px;
}
.featured-youtube-card {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.youtube-title {
  margin-bottom:14px;
}
.featured-youtube-card .featured-video img {
  height:332px;
}
.youtube-card img { height:130px; }
.youtube-card i {
  width:48px; height:34px;
  border-radius:10px;
  font-size:24px;
}
.youtube-card strong {
  display:block;
  min-height:50px;
  padding:10px 12px;
  color: var(--ink-2);
  background: var(--bg-alt);
  font-size:12px;
  font-weight:600;
  line-height:1.35;
  border-top:1px solid var(--border);
}
.featured-video-title {
  display:block;
  margin-top:12px;
  color:var(--ink-2);
  font-size:16px;
  line-height:1.45;
  font-weight:700;
}
.youtube-follow {
  margin-top:14px;
}

/* Archive grid */
.archive-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
}

.archive-grid.cms-gallery-grid {
  grid-template-columns:repeat(var(--cms-gallery-columns, 3), minmax(0, 1fr));
}

.cms-page-gallery {
  margin:28px 0 32px;
}

.cms-page-gallery + .cms-child-page-list,
.cms-page-gallery + .cms-child-spotlight {
  margin-top:30px;
}

.cms-page-gallery .cms-gallery-side-list {
  gap:8px;
}

.cms-page-gallery .cms-gallery-side-item {
  min-height:60px;
  padding:10px 12px;
  background:color-mix(in srgb, #fff 82%, var(--bg-alt) 18%);
}

.cms-page-gallery .cms-gallery-side-item strong {
  display:block;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.cms-page-files {
  margin: 22px 0 32px;
}

.cms-page-file-list {
  display: grid;
  gap: 10px;
}

.cms-page-file-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid color-mix(in srgb, var(--teal) 16%, var(--border));
  border-radius: 8px;
  color: inherit;
  background: color-mix(in srgb, #fff 86%, var(--bg-alt) 14%);
  text-decoration: none;
  transition: background .22s var(--ease), border-color .22s var(--ease), transform .22s var(--ease);
}

.cms-page-file-item:hover {
  border-color: color-mix(in srgb, var(--teal) 42%, var(--border));
  background: color-mix(in srgb, var(--teal) 7%, #fff);
  transform: translateX(2px);
  text-decoration: none;
}

.cms-page-file-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  color: var(--teal-dim);
  background: color-mix(in srgb, var(--teal) 10%, #fff);
}

.cms-page-file-text {
  min-width: 0;
}

.cms-page-file-text strong,
.cms-page-file-text small {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.cms-page-file-text strong {
  color: var(--ink-2);
  font-size: 14px;
  font-weight: 700;
}

.cms-page-file-text small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

@media (max-width: 991.98px) {
  .archive-grid.cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-tablet, 2), minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575.98px) {
  .archive-grid.cms-gallery-grid {
    grid-template-columns:repeat(var(--cms-gallery-columns-mobile, 2), minmax(0, 1fr)) !important;
  }
}

.archive-gallery-item {
  position:relative;
  display:block;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:var(--radius-xs);
  background:transparent;
  cursor:zoom-in;
}
.archive-gallery-item::after {
  content:"\F33E";
  font-family:"bootstrap-icons";
  position:absolute;
  right:8px;
  bottom:8px;
  display:grid;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:999px;
  color:#fff;
  background:rgba(6,11,24,.62);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .25s var(--ease), transform .25s var(--ease);
}
.archive-gallery-item:hover::after {
  opacity:1;
  transform:translateY(0);
}
.archive-gallery-item:focus-visible {
  outline:3px solid var(--teal);
  outline-offset:3px;
}

.cms-gallery-showcase {
  position:relative;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius-xs);
  background:color-mix(in srgb, var(--bg-alt) 92%, #fff 8%);
  box-shadow:var(--shadow-sm);
}

.cms-gallery-showcase .carousel-inner,
.cms-gallery-showcase .carousel-item {
  min-height:420px;
}

.cms-gallery-showcase .carousel-item {
  height:420px;
}

.cms-gallery-showcase-item {
  position:relative;
  display:block;
  width:100%;
  height:100%;
  padding:0;
  overflow:hidden;
  border:0;
  background:transparent;
  cursor:zoom-in;
}

.cms-gallery-showcase-item img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border:0;
  border-radius:0;
  filter:none;
  transform:none;
  box-shadow:none;
}

.cms-gallery-showcase-item:hover img {
  transform:scale(1.015);
  transition:transform .35s var(--ease);
}

.cms-gallery-showcase-caption {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  display:block;
  padding:16px 20px;
  color:#fff;
  font-size:18px;
  font-weight:700;
  line-height:1.28;
  text-align:left;
  background:linear-gradient(180deg, rgba(22,112,11,.94), rgba(22,112,11,.98));
}

.cms-gallery-layout-showcase-plain .cms-gallery-showcase-caption {
  display:none;
}

.cms-gallery-showcase-control {
  width:52px;
  opacity:.76;
}

.cms-gallery-showcase-control:hover {
  opacity:1;
}

.cms-gallery-showcase-control .carousel-control-prev-icon,
.cms-gallery-showcase-control .carousel-control-next-icon {
  width:28px;
  height:28px;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.38));
}

.cms-gallery-showcase-split {
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(260px, .72fr);
  gap:18px;
  align-items:stretch;
}

.cms-gallery-showcase-split .cms-gallery-showcase,
.cms-gallery-showcase-split .cms-gallery-showcase .carousel-inner,
.cms-gallery-showcase-split .cms-gallery-showcase .carousel-item {
  height:440px;
  min-height:440px;
}

.cms-gallery-side-list {
  display:grid;
  align-content:start;
  gap:10px;
  max-height:440px;
  overflow-y:auto;
  padding:0 8px 0 0;
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}

.cms-gallery-side-list::-webkit-scrollbar {
  width:var(--cms-scrollbar-size);
}

.cms-gallery-side-list::-webkit-scrollbar-track {
  background:var(--cms-scrollbar-track);
}

.cms-gallery-side-list::-webkit-scrollbar-thumb {
  border-radius:999px;
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%));
}

.cms-gallery-side-item {
  display:grid;
  grid-template-columns:34px minmax(0, 1fr);
  gap:10px;
  align-items:center;
  min-height:72px;
  padding:12px 13px;
  border:1px solid color-mix(in srgb, var(--teal) 16%, var(--border));
  border-left:4px solid color-mix(in srgb, var(--teal) 22%, var(--border));
  border-radius:8px;
  color:var(--ink);
  background:rgba(255,255,255,.72);
  cursor:pointer;
  transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);
}

.cms-gallery-side-item:hover,
.cms-gallery-side-item.active,
.cms-gallery-side-item:focus-visible {
  border-left-color:var(--teal);
  background:color-mix(in srgb, var(--teal) 7%, #fff);
  transform:translateX(2px);
}

.cms-gallery-side-item span {
  color:var(--teal);
  font-size:12px;
  font-weight:700;
  line-height:1;
}

.cms-gallery-side-item strong,
.cms-gallery-side-item a {
  color:var(--ink-2);
  font-size:14px;
  font-weight:600;
  line-height:1.35;
  text-decoration:none;
}

.cms-gallery-side-item a:hover {
  color:var(--teal);
  text-decoration:none;
}

@media (max-width: 767.98px) {
  .cms-news-flow {
    grid-template-columns:1fr;
    gap:14px;
    --cms-news-flow-height:auto;
  }

  .cms-news-flow-carousel {
    height:auto;
    min-height:0;
  }

  .cms-news-flow-carousel .carousel-inner,
  .cms-news-flow-carousel .carousel-item {
    height:auto;
    min-height:0;
  }

  .cms-news-flow-carousel .carousel-item img {
    height:clamp(220px, 54vw, 360px);
    min-height:0;
    object-fit:contain;
    object-position:center;
    background:color-mix(in srgb, var(--bg-alt) 92%, #fff 8%);
  }

  .cms-news-flow-side {
    display:flex;
    gap:10px;
    height:auto;
    max-height:none;
    overflow-x:auto;
    overflow-y:hidden;
    padding:12px;
    scroll-snap-type:x proximity;
  }

  .cms-news-flow-side-head {
    flex:0 0 120px;
    align-self:stretch;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    padding:12px;
    border:1px solid var(--border);
    border-radius:8px;
  }

  .cms-news-flow-side-item {
    flex:0 0 min(280px, 84vw);
    scroll-snap-align:start;
  }

  .cms-news-flow-side-item img {
    width:96px;
    height:72px;
    object-fit:contain;
    object-position:center;
    background:color-mix(in srgb, var(--bg-alt) 90%, #fff 10%);
    padding:4px;
  }

  .cms-gallery-showcase .carousel-inner,
  .cms-gallery-showcase .carousel-item {
    min-height:300px;
    height:300px;
  }

  .cms-gallery-showcase-caption {
    padding:12px 14px;
    font-size:15px;
  }

  .cms-gallery-showcase-split {
    grid-template-columns:1fr;
  }

  .cms-gallery-showcase-split .cms-gallery-showcase,
  .cms-gallery-showcase-split .cms-gallery-showcase .carousel-inner,
  .cms-gallery-showcase-split .cms-gallery-showcase .carousel-item {
    height:300px;
    min-height:300px;
  }

  .cms-gallery-side-list {
    display:flex;
    gap:10px;
    max-height:none;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 2px 8px;
    scroll-snap-type:x proximity;
  }

  .cms-gallery-side-item {
    flex:0 0 min(260px, 82vw);
    scroll-snap-align:start;
  }
}

.archive-grid img {
  display:block;
  width:100%;
  aspect-ratio:1;
  object-fit:cover;
  border-radius: var(--radius-xs);
  filter:grayscale(.6) contrast(.9);
  transition: all .35s var(--ease);
  border:1px solid var(--border);
}
.archive-grid img:hover {
  filter:grayscale(0) contrast(1);
  transform:scale(1.03);
  box-shadow: var(--glow-teal);
}

.cms-gallery-grid img {
  filter:none;
  opacity:1;
}

.cms-gallery-grid img:hover {
  filter:none;
}

/* Publications */
.publications-module {
  color:#fff;
  background: var(--surface-2);
  border-color: var(--border);
}
.publications-module .module-title h3,
.publications-module p { color: var(--ink-2); }

.publication-row {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-bottom:18px;
}
.publication-row div {
  min-height:140px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:8px;
  padding:14px;
  border:2px solid var(--teal);
  border-radius: var(--radius-sm);
  background: var(--surface);
  text-align:center;
  transition: all .3s var(--ease);
}
.publication-row div:hover {
  border-color: var(--orange);
  box-shadow: var(--glow-orange);
}
.publication-row span {
  color: var(--teal);
  font-size:32px;
  font-weight:800;
}
.publication-row strong {
  color: var(--ink-2);
  font-size:12px;
  font-weight:600;
}
.publications-module p {
  margin:0;
  font-size:13px;
  line-height:1.65;
}

/* Instagram */
.instagram-module {
  background: var(--surface);
  border:1px solid var(--border);
}
.instagram-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.instagram-card {
  position:relative;
  display:block;
  width:100%;
  padding:0;
  overflow:hidden;
  min-height:180px;
  border-radius: var(--radius-sm);
  background: var(--bg-alt);
  box-shadow: var(--shadow-sm);
  border:1px solid var(--border);
  text-align:left;
  cursor:pointer;
}
.instagram-card img {
  width:100%; height:100%;
  min-height:180px;
  object-fit:cover;
  opacity:.85;
  transition: all .4s var(--ease);
}
.instagram-card::after {
  content:'';
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, transparent 30%, rgba(6,11,24,.88));
}
.instagram-card span {
  position:absolute;
  right:10px; bottom:10px; left:10px;
  z-index:1;
  color:#fff;
  font-size:12px;
  font-weight:600;
  line-height:1.35;
}
.instagram-card i {
  margin-right:4px;
  color: var(--gold);
}
.instagram-card:hover img {
  opacity:1;
  transform:scale(1.06);
}

.social-follow {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:16px;
  color: var(--teal);
  font-size:14px;
  font-weight:700;
}
.social-follow:hover { color: var(--orange); }

.modal {
  z-index:2105;
}

.modal-backdrop.show {
  z-index:2100;
  opacity:.72;
}

.cms-start-popup-modal .modal-dialog {
  position:relative;
  z-index:2110;
}

.cms-start-popup-modal .modal-content {
  overflow:hidden;
  border:1px solid color-mix(in srgb, var(--teal) 22%, var(--border));
  border-radius:12px;
  background:#fff !important;
  color:#1c2d27;
  opacity:1;
  box-shadow:0 28px 80px rgba(23,40,36,.24);
}

.cms-start-popup-modal .btn-close {
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  width:34px;
  height:34px;
  border-radius:50%;
  background-color:color-mix(in srgb, var(--surface) 88%, transparent);
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}

.cms-start-popup-body {
  max-height:min(62vh, 620px);
  overflow:auto;
  padding:38px 34px 32px;
  background:#fff !important;
  color:#1c2d27 !important;
  font-size:15px;
  opacity:1 !important;
}

.cms-start-popup-body.cms-rich-text,
.cms-start-popup-body .cms-rich-text,
.cms-start-popup-body p,
.cms-start-popup-body li,
.cms-start-popup-body blockquote,
.cms-start-popup-body td,
.cms-start-popup-body th {
  color:#1c2d27 !important;
  opacity:1 !important;
}

.cms-start-popup-body a {
  color:var(--teal-dim) !important;
  opacity:1 !important;
}

.cms-start-popup-body h1,
.cms-start-popup-body h2,
.cms-start-popup-body h3,
.cms-start-popup-body h4,
.cms-start-popup-body h5,
.cms-start-popup-body h6 {
  color:#162520 !important;
  opacity:1 !important;
}

.cms-start-popup-body > :first-child {
  margin-top:0;
}

.cms-start-popup-body > :last-child {
  margin-bottom:0;
}

.cms-start-popup-preview {
  display:block;
}

.cms-cookie-consent {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 1260;
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .22s ease, transform .22s ease;
}

.cms-cookie-consent.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.cms-cookie-consent-inner,
.cms-cookie-consent-preview {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 16px;
  border-radius: 10px;
  background: rgba(30, 30, 30, .94);
  color: #fff;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .22);
}

.cms-cookie-consent-text,
.cms-cookie-consent-preview-text {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
  line-height: 1.6;
}

.cms-cookie-consent-text > :first-child,
.cms-cookie-consent-preview-text > :first-child {
  margin-top: 0;
}

.cms-cookie-consent-text > :last-child,
.cms-cookie-consent-preview-text > :last-child {
  margin-bottom: 0;
}

.cms-cookie-consent-text,
.cms-cookie-consent-text p,
.cms-cookie-consent-text li,
.cms-cookie-consent-text strong,
.cms-cookie-consent-preview-text,
.cms-cookie-consent-preview-text p,
.cms-cookie-consent-preview-text li,
.cms-cookie-consent-preview-text strong {
  color: #fff !important;
}

.cms-cookie-consent-text a,
.cms-cookie-consent-preview-text a {
  color: #77a7ff !important;
}

.cms-cookie-consent-actions,
.cms-cookie-consent-preview-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}

.cms-cookie-consent-accept,
.cms-cookie-consent-preview-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: var(--teal);
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}

.cms-cookie-consent-close,
.cms-cookie-consent-preview-close {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  cursor: pointer;
}

.cms-cookie-consent-preview {
  margin-top: 6px;
}

@media (max-width: 767.98px) {
  .cms-cookie-consent {
    left: 10px;
    right: 10px;
    bottom: 10px;
  }

  .cms-cookie-consent-inner,
  .cms-cookie-consent-preview {
    flex-direction: column;
    align-items: stretch;
  }

  .cms-cookie-consent-actions,
  .cms-cookie-consent-preview-actions {
    justify-content: flex-end;
  }
}

.facebook-post-modal .modal-dialog {
  position:relative;
  z-index:2110;
}

.facebook-post-modal .modal-content {
  overflow:hidden;
  border:1px solid color-mix(in srgb, var(--teal) 18%, transparent);
  border-radius:10px;
  background:var(--bg-alt);
  color:var(--ink);
  box-shadow:0 28px 90px rgba(5,12,20,.45);
}
.facebook-post-modal .btn-close {
  position:absolute;
  top:16px;
  right:16px;
  z-index:3;
  background-color:rgba(255,255,255,.86);
  border-radius:999px;
  padding:10px;
}
.facebook-post-modal-body {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
}
.facebook-post-modal-media {
  min-height:520px;
  background:#111827;
}
.facebook-post-modal-media img {
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:contain;
  display:block;
}
.facebook-post-modal-content {
  position:relative;
  padding:42px 38px;
  background:var(--bg-alt);
  color:var(--ink);
}
.facebook-post-modal-content span {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  color:var(--teal);
  font-weight:700;
}
.facebook-post-modal-content h3 {
  margin:0 0 18px;
  font-size:22px;
  line-height:1.35;
  color:var(--ink);
}
.facebook-post-modal-content p {
  max-height:300px;
  overflow:auto;
  margin:0 0 22px;
  color:var(--ink-2);
  line-height:1.75;
  white-space:pre-line;
}
.facebook-post-modal-content a {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--teal);
  font-weight:700;
  text-decoration:none;
}
.facebook-post-modal-content a:hover { color:var(--orange); }

/* Site lightbox */
.site-lightbox {
  position:fixed;
  inset:0;
  z-index:2000;
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 72px;
  align-items:center;
  gap:12px;
  padding:28px;
  color:#fff;
  background:rgba(3,7,14,.94);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .25s var(--ease), visibility .25s var(--ease);
}
.site-lightbox.is-open {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.site-lightbox.is-open .site-lightbox-figure {
  cursor:grab;
}
.site-lightbox.is-dragging .site-lightbox-figure {
  cursor:grabbing;
}
.site-lightbox-figure {
  min-width:0;
  margin:0;
  display:grid;
  justify-items:center;
  gap:14px;
  user-select:none;
  touch-action:pan-y;
}
.site-lightbox-figure img {
  max-width:100%;
  max-height:calc(100vh - 130px);
  object-fit:contain;
  border-radius:8px;
  box-shadow:0 24px 90px rgba(0,0,0,.46);
  user-select:none;
  -webkit-user-drag:none;
}
.site-lightbox-figure figcaption {
  width:min(100%, 860px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:rgba(255,255,255,.86);
  font-size:13px;
}
.site-lightbox-figure figcaption span {
  color:var(--teal);
  font-weight:800;
  white-space:nowrap;
}
.site-lightbox-figure figcaption strong {
  font-size:13px;
  font-weight:600;
  text-align:right;
}
.site-lightbox-close,
.site-lightbox-nav {
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
  transition:background .2s var(--ease), transform .2s var(--ease);
}
.site-lightbox-close:hover,
.site-lightbox-nav:hover {
  background:rgba(255,255,255,.16);
  transform:translateY(-1px);
}
.site-lightbox-close {
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border-radius:999px;
}
.site-lightbox-nav {
  width:54px;
  height:54px;
  border-radius:999px;
  font-size:22px;
}
.site-lightbox-prev { justify-self:start; }
.site-lightbox-next { justify-self:end; }
body.lightbox-open { overflow:hidden; }

/* ══════════════════════════════
   LOGO MARQUEE
   ══════════════════════════════ */
.logo-marquee {
  padding:64px 0;
  background: var(--bg);
  overflow:hidden;
}
.compact { margin-bottom:20px; }

.marquee { overflow:hidden; }
.marquee-track {
  display:flex;
  gap:16px;
  width:max-content;
  animation: marquee 45s linear infinite;
}
.marquee:hover .marquee-track { animation-play-state:paused; }
.marquee-track span {
  min-width:180px;
  padding:20px 28px;
  text-align:center;
  color: var(--teal);
  background: var(--surface);
  border:1px solid var(--border);
  border-radius: var(--radius-sm);
  font-weight:700;
  font-size:14px;
  box-shadow: var(--shadow-sm);
  transition: all .3s var(--ease);
}
.marquee-track span:hover {
  border-color: var(--border-hl);
  box-shadow: var(--glow-teal);
}

@keyframes marquee {
  from { transform:translateX(0); }
  to   { transform:translateX(-50%); }
}

/* ══════════════════════════════
   FOOTER
   ══════════════════════════════ */
.site-footer {
  padding:56px 0 32px;
  color: var(--muted);
  background:
    linear-gradient(180deg, var(--bg-alt), rgba(6,11,24,1));
  border-top:1px solid var(--border);
}
.site-footer strong,
.site-footer h3 { color:#fff; }
.site-footer h3 {
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:12px;
}
.site-footer h3 a {
  display:inline;
  margin:0;
  color:inherit;
  font-size:inherit;
}
.site-footer a {
  display:block;
  margin:6px 0;
  color: var(--muted);
  font-size:14px;
  transition: color .25s var(--ease);
}
.site-footer a:hover { color: var(--teal); }

.footer-brand strong {
  font-size:20px;
  font-weight:800;
  letter-spacing:-.01em;
}
.footer-logo-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:66px;
  height:66px;
  flex:0 0 auto;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.18);
  background:
    linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.04)),
    radial-gradient(circle at 30% 18%, rgba(255,255,255,.22), transparent 48%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 16px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  transition:transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);
}
.footer-brand:hover .footer-logo-wrap {
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.32);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 18px 38px rgba(0,0,0,.22),
    0 0 0 4px color-mix(in srgb, var(--teal) 16%, transparent);
}
.footer-logo-wrap img {
  width:56px;
  height:56px;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.24));
}
.footer-brand-copy {
  display:flex;
  flex-direction:column;
  gap:5px;
}
.footer-brand-copy small {
  max-width:320px;
  color:rgba(255,255,255,.76);
  font-size:13px;
  font-weight:600;
  line-height:1.35;
}
.footer-bottom {
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.14);
}
.footer-bottom p {
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:13px;
  line-height:1.5;
}

/* ══════════════════════════════
   REVEAL ANIMATIONS
   ══════════════════════════════ */
.reveal {
  opacity:0;
  transform:translateY(28px);
  transition: opacity .7s var(--ease), transform .7s var(--ease);
}
.reveal.is-visible {
  opacity:1;
  transform:translateY(0);
}

/* ══════════════════════════════
   RESPONSIVE
   ══════════════════════════════ */
@media (max-width:1199px) {
  .dropdown-submenu > .dropdown-menu {
    margin:6px 0 6px 16px;
    box-shadow:none;
    position:static !important;
  }
  .dropdown-submenu.dropdown-submenu-left > .dropdown-menu {
    right:auto;
    left:auto;
    margin:6px 0 6px 16px;
  }
  .nav-cta {
    display:inline-flex;
    margin:10px 0 0;
  }
  .instagram-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .site-header .navbar-collapse {
    margin-top:14px;
    padding:14px;
    border:1px solid rgba(31,109,103,.14);
    border-radius:22px;
    background:rgba(var(--navbar-bg-rgb), .98);
    box-shadow:0 18px 40px rgba(6,18,30,.14);
    backdrop-filter:blur(14px);
  }
  .site-header .navbar-collapse .nav-link {
    padding:10px 14px !important;
    color:var(--ink-2) !important;
    border-radius:14px;
  }
  .site-header .navbar-collapse .nav-link:hover,
  .site-header .navbar-collapse .nav-link:focus,
  .site-header .navbar-collapse .nav-link.show {
    color:var(--teal-dim) !important;
    background:rgba(31,109,103,.08);
    box-shadow:inset 0 0 0 1px rgba(31,109,103,.12);
  }
  .site-header .navbar-collapse .nav-link.active {
    color:#fff !important;
  }
  .nav-link::after { display:none; }
  .theme-item {
    align-items:flex-start;
    flex-direction:column;
    margin:12px 0 0;
  }
  .theme-select {
    width:220px;
  }
}

@media (max-width:767px) {
  :root {
    --cms-opening-hero-first-offset:106px;
    --cms-opening-hero-top-pull:138px;
  }

  .top-strip .container-xxl {
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
    text-align:left;
  }
  .top-strip-logos {
    gap:8px !important;
    min-width:0;
  }
  .top-logo-badge {
    min-width:28px;
    height:30px;
    padding:0;
  }
  .top-strip-logos img,
  .top-strip-logos img:first-child,
  .top-strip-logos img:nth-child(2) {
    height:24px;
  }
  .top-strip .container-xxl > .d-flex:last-child {
    flex:0 0 auto;
    margin-left:auto;
    gap:8px !important;
  }
  .navbar { min-height:68px; }
  .navbar-brand {
    max-width:calc(100vw - 96px);
    gap:10px;
  }
  .brand-logo {
    height:58px;
  }
  .brand-mark {
    width:42px; height:42px;
    font-size:22px;
  }
  .navbar-brand strong { font-size:20px; }
  .navbar-brand small {
    max-width:190px;
    font-size:9px;
  }

  .featured-news { padding:0 0 24px; }
  .featured-news .container-xxl {
    padding-right:0; padding-left:0;
  }
  .featured-news-carousel {
    height:auto;
    border-radius:0;
    border-right:0; border-left:0;
  }
  .featured-news-carousel .carousel-item {
    height:auto;
  }
  .featured-news-carousel .carousel-item img {
    height:clamp(240px, 58vw, 380px);
    min-height:0;
    object-fit:contain;
    object-position:center;
    background:color-mix(in srgb, var(--bg-alt) 92%, #fff 8%);
  }
  .featured-caption h1 {
    padding:9px 12px 8px;
    font-size:14px;
  }
  .featured-caption p {
    min-height:40px;
    padding:8px 12px;
    font-size:11px;
  }
  .featured-indicators {
    gap:6px;
    padding:12px 10px 16px;
  }
  .featured-indicators [data-bs-target] {
    width:32px; height:32px;
    font-size:13px;
  }

  .ticker-wrap,
  .ticker-wrap.has-ticker-label { display:grid; grid-template-columns:1fr; }
  .ticker-label { position:static; width:auto; min-width:0; min-height:38px; justify-content:center; }
  .ticker,
  .ticker-wrap.has-ticker-label .ticker { padding-left:0; }
  .ticker { min-height:44px; }

  .section { padding:56px 0; }
  .section-head {
    align-items:center;
    flex-direction:row;
    gap:12px;
  }
  .section-head h2 {
    font-size:14px;
    gap:12px;
  }
  .section-head h2::after {
    min-width:42px;
  }
  .section-head a {
    font-size:11px;
  }

  .carousel-item { height:400px; }
  .carousel-caption {
    left:16px; right:16px; bottom:20px;
  }

  .gallery-strip { grid-auto-columns:82%; }
  .previous-news {
    height:auto;
    max-height:400px;
  }

  .previous-news-item {
    grid-template-columns:96px 1fr;
    gap:10px;
    align-items:start;
  }

  .previous-news-item img {
    width:96px;
    height:72px;
    object-fit:contain;
    object-position:center;
    background:color-mix(in srgb, var(--bg-alt) 90%, #fff 10%);
    padding:4px;
  }

  .youtube-grid,
  .instagram-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .featured-youtube-card .featured-video img {
    height:260px;
  }
  .facebook-post-modal-body {
    grid-template-columns:1fr;
  }
  .cms-start-popup-body {
    max-height:62vh;
    padding:36px 22px 22px;
  }
  .facebook-post-modal-media,
  .facebook-post-modal-media img {
    min-height:280px;
  }
  .facebook-post-modal-content {
    padding:26px 20px;
  }
  .facebook-post-modal-content h3 {
    font-size:18px;
  }
  .site-lightbox {
    grid-template-columns:1fr;
    padding:18px 12px 82px;
  }
  .site-lightbox-figure img {
    max-height:calc(100vh - 150px);
  }
  .site-lightbox-figure figcaption {
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
    padding:0 6px;
  }
  .site-lightbox-figure figcaption strong {
    text-align:left;
  }
  .site-lightbox-nav {
    position:absolute;
    bottom:18px;
    width:48px;
    height:48px;
  }
  .site-lightbox-prev { left:calc(50% - 58px); }
  .site-lightbox-next { right:calc(50% - 58px); }
  .site-lightbox-close {
    top:12px;
    right:12px;
  }
  .publication-row { grid-template-columns:1fr; }
  .module-card { padding:16px; }
  .module-title { gap:8px; }
  .module-title h3 { font-size:14px; }
  .module-title span { min-width:60px; }

  .stat strong { font-size:40px; }
  .stat { min-height:130px; padding:20px; }
}

/* Color repair: clean light corporate themes */
:root,
:root[data-theme="theme-1"] {
  --bg:#f4f1ea;
  --bg-alt:#fffdf8;
  --surface:#ffffff;
  --surface-2:#ece6da;
  --surface-3:#ded6c7;
  --glass:rgba(255,255,255,.92);
  --border:rgba(30,43,48,.12);
  --border-hl:rgba(16,103,93,.28);
  --teal:#10675d;
  --teal-dim:#0b463f;
  --orange:#b84d34;
  --orange-dim:#843426;
  --gold:#b68a3f;
  --red:#b84d34;
  --ink:#1f2b30;
  --ink-2:#42545b;
  --muted:#6c7b80;
  --shadow:0 18px 48px rgba(31,41,48,.12);
  --shadow-sm:0 8px 24px rgba(31,41,48,.09);
  --glow-teal:0 12px 32px rgba(31,109,103,.16);
  --glow-orange:0 12px 32px rgba(200,70,48,.16);
}

:root[data-theme="theme-2"] {
  --bg:#f7f3f0; --bg-alt:#fffdfb; --surface:#fff; --surface-2:#efe6e3; --surface-3:#e3d4d1;
  --glass:rgba(255,255,255,.92); --border:rgba(43,32,35,.12); --border-hl:rgba(166,34,49,.28);
  --teal:#234d5d; --teal-dim:#173341; --orange:#a62231; --orange-dim:#741826;
  --gold:#b98c42; --red:#a62231; --ink:#282326; --ink-2:#51484d; --muted:#7a6e72;
}

:root[data-theme="theme-3"] {
  --bg:#f2f5f8; --bg-alt:#ffffff; --surface:#fff; --surface-2:#e6edf4; --surface-3:#d7e1eb;
  --glass:rgba(255,255,255,.92); --border:rgba(17,38,61,.12); --border-hl:rgba(22,63,107,.28);
  --teal:#163f6b; --teal-dim:#0e2846; --orange:#b77a2f; --orange-dim:#805421;
  --gold:#c49a45; --red:#a94a3b; --ink:#162331; --ink-2:#40546a; --muted:#687a8c;
}

:root[data-theme="theme-4"] {
  --bg:#f1f3e9; --bg-alt:#fffef8; --surface:#fff; --surface-2:#e6ead8; --surface-3:#d8dfc7;
  --glass:rgba(255,255,255,.92); --border:rgba(42,55,31,.12); --border-hl:rgba(75,103,46,.28);
  --teal:#4b672e; --teal-dim:#2e411e; --orange:#ad6139; --orange-dim:#7d4228;
  --gold:#b79047; --red:#a74b3e; --ink:#222a1f; --ink-2:#4b5b45; --muted:#6f7b67;
}

:root[data-theme="theme-5"] {
  --bg:#f2f1ef; --bg-alt:#fff; --surface:#fff; --surface-2:#e7e4e1; --surface-3:#d9d5d1;
  --glass:rgba(255,255,255,.92); --border:rgba(31,35,40,.12); --border-hl:rgba(123,37,57,.28);
  --teal:#303c48; --teal-dim:#1e2730; --orange:#8f2d46; --orange-dim:#612032;
  --gold:#ad8754; --red:#8f2d46; --ink:#20242a; --ink-2:#4b545d; --muted:#707982;
}

:root[data-theme="theme-6"] {
  --bg:#edf5f6; --bg-alt:#ffffff; --surface:#fff; --surface-2:#dfedf1; --surface-3:#d0e1e8;
  --glass:rgba(255,255,255,.92); --border:rgba(21,59,82,.12); --border-hl:rgba(34,101,137,.28);
  --teal:#226587; --teal-dim:#153e56; --orange:#bc5d3d; --orange-dim:#82402c;
  --gold:#b98d3e; --red:#a94a43; --ink:#1d2b35; --ink-2:#425867; --muted:#6c7f8b;
}

:root[data-theme="theme-7"] {
  --bg:#eef4ef; --bg-alt:#fffdf9; --surface:#fff; --surface-2:#e1ece5; --surface-3:#d2dfd8;
  --glass:rgba(255,255,255,.92); --border:rgba(18,55,39,.12); --border-hl:rgba(17,88,58,.28);
  --teal:#11583a; --teal-dim:#0a3525; --orange:#b84f32; --orange-dim:#7f3522;
  --gold:#b9994e; --red:#a94734; --ink:#1f2b25; --ink-2:#435a50; --muted:#6c7d73;
}

:root[data-theme="theme-8"] {
  --bg:#f5efe6; --bg-alt:#fffaf3; --surface:#fff; --surface-2:#ecdfd0; --surface-3:#dfcbb8;
  --glass:rgba(255,255,255,.92); --border:rgba(54,43,32,.12); --border-hl:rgba(97,111,103,.28);
  --teal:#556b63; --teal-dim:#334741; --orange:#b46a3e; --orange-dim:#7d472b;
  --gold:#bf8b3d; --red:#a85540; --ink:#2a2926; --ink-2:#5b544d; --muted:#7a6e63;
}

:root[data-theme="theme-9"] {
  --bg:#f2f1f7; --bg-alt:#fff; --surface:#fff; --surface-2:#e7e5f0; --surface-3:#dad6e8;
  --glass:rgba(255,255,255,.92); --border:rgba(37,36,62,.12); --border-hl:rgba(57,60,108,.28);
  --teal:#393c6c; --teal-dim:#222640; --orange:#a94759; --orange-dim:#742f40;
  --gold:#b99654; --red:#a94759; --ink:#202235; --ink-2:#4d526d; --muted:#70748c;
}

:root[data-theme="theme-10"] {
  --bg:#f4f5f3; --bg-alt:#fff; --surface:#fff; --surface-2:#e7e9e7; --surface-3:#d9dddb;
  --glass:rgba(255,255,255,.92); --border:rgba(32,38,39,.12); --border-hl:rgba(83,99,104,.28);
  --teal:#53666b; --teal-dim:#303f43; --orange:#a64d3f; --orange-dim:#71372f;
  --gold:#aa8751; --red:#a64d3f; --ink:#202628; --ink-2:#4c585c; --muted:#6f797c;
}

:root[data-theme="theme-11"] {
  --bg:#f6f0f2; --bg-alt:#fffdfd; --surface:#fff; --surface-2:#eee2e7; --surface-3:#e0d0d8;
  --glass:rgba(255,255,255,.92); --border:rgba(45,30,41,.12); --border-hl:rgba(108,32,64,.28);
  --teal:#6c2040; --teal-dim:#461329; --orange:#2f746f; --orange-dim:#1e514e;
  --gold:#b58a45; --red:#9d3548; --ink:#2a2328; --ink-2:#594954; --muted:#7b6c75;
}

:root[data-theme="theme-12"] {
  --bg:#eef3f1; --bg-alt:#ffffff; --surface:#fff; --surface-2:#e1eae7; --surface-3:#d2ddd9;
  --glass:rgba(255,255,255,.92); --border:rgba(25,48,44,.12); --border-hl:rgba(34,91,84,.28);
  --teal:#225b54; --teal-dim:#143a36; --orange:#c08a2f; --orange-dim:#8a6121;
  --gold:#c08a2f; --red:#a5533f; --ink:#1d2a29; --ink-2:#425653; --muted:#6a7c78;
}

:root[data-theme="theme-13"] {
  --bg:#171513; --bg-alt:#221f1b; --surface:#f6f1ea; --surface-2:#ebe2d6; --surface-3:#ddd0be;
  --glass:rgba(246,241,234,.92); --border:rgba(167,135,87,.18); --border-hl:rgba(167,135,87,.34);
  --teal:#a78757; --teal-dim:#7f6640; --orange:#1a1a1a; --orange-dim:#0f0f0f;
  --gold:#d4bc8a; --red:#8a6950; --ink:#171514; --ink-2:#4d4338; --muted:#7e705f;
}

:root[data-theme="theme-14"] {
  --bg:#f8f0f3; --bg-alt:#fffdfd; --surface:#fff; --surface-2:#f1e2e8; --surface-3:#e5d0d9;
  --glass:rgba(255,255,255,.92); --border:rgba(140,32,61,.12); --border-hl:rgba(140,32,61,.28);
  --teal:#8c203d; --teal-dim:#5f1629; --orange:#262b35; --orange-dim:#171b23;
  --gold:#cf9a67; --red:#8c203d; --ink:#251d21; --ink-2:#5b484f; --muted:#877279;
}

:root[data-theme="theme-15"] {
  --bg:#f2f6fb; --bg-alt:#ffffff; --surface:#fff; --surface-2:#e6edf6; --surface-3:#d7e2f0;
  --glass:rgba(255,255,255,.92); --border:rgba(37,83,154,.12); --border-hl:rgba(37,83,154,.28);
  --teal:#25539a; --teal-dim:#173767; --orange:#c89a52; --orange-dim:#8f6d39;
  --gold:#dfc07d; --red:#b5654c; --ink:#1c2530; --ink-2:#495d75; --muted:#75869b;
}

:root[data-theme="theme-16"] {
  --bg:#f8f2f5; --bg-alt:#fffefe; --surface:#fff; --surface-2:#efe3ea; --surface-3:#e0cfda;
  --glass:rgba(255,255,255,.92); --border:rgba(108,56,92,.12); --border-hl:rgba(108,56,92,.28);
  --teal:#6c385c; --teal-dim:#49263e; --orange:#b87448; --orange-dim:#825134;
  --gold:#d7ae74; --red:#9a5561; --ink:#261f25; --ink-2:#5a4b56; --muted:#867681;
}

:root[data-theme="theme-17"] {
  --bg:#f4f8f2; --bg-alt:#ffffff; --surface:#fffefc; --surface-2:#e7efe3; --surface-3:#d8e3d1;
  --glass:rgba(255,255,255,.92); --border:rgba(44,112,72,.12); --border-hl:rgba(44,112,72,.28);
  --teal:#2c7048; --teal-dim:#1d4a30; --orange:#c5b079; --orange-dim:#8f8056;
  --gold:#dcca8f; --red:#9b6348; --ink:#1c261d; --ink-2:#495c4d; --muted:#768777;
}

:root[data-theme="theme-18"] {
  --bg:#edf3f8; --bg-alt:#ffffff; --surface:#fff; --surface-2:#e2eaf2; --surface-3:#d3dfea;
  --glass:rgba(255,255,255,.92); --border:rgba(25,54,102,.12); --border-hl:rgba(25,54,102,.28);
  --teal:#193666; --teal-dim:#102342; --orange:#d46d56; --orange-dim:#994c3d;
  --gold:#dcb07b; --red:#b85446; --ink:#1b2430; --ink-2:#4a5c71; --muted:#75859a;
}

:root[data-theme="theme-19"] {
  --bg:#f7f1eb; --bg-alt:#fffdfa; --surface:#fffdf9; --surface-2:#ece3d9; --surface-3:#ddd0c1;
  --glass:rgba(255,255,255,.92); --border:rgba(125,88,58,.12); --border-hl:rgba(125,88,58,.28);
  --teal:#7d583a; --teal-dim:#573d28; --orange:#72877a; --orange-dim:#526056;
  --gold:#d3ae78; --red:#9f6148; --ink:#27211d; --ink-2:#5c5047; --muted:#88796d;
}

:root[data-theme="theme-20"] {
  --bg:#f8f1f3; --bg-alt:#fffdfd; --surface:#fff; --surface-2:#f0e3e8; --surface-3:#e2d1d8;
  --glass:rgba(255,255,255,.92); --border:rgba(164,97,118,.12); --border-hl:rgba(164,97,118,.28);
  --teal:#a46176; --teal-dim:#733f52; --orange:#39424d; --orange-dim:#252c34;
  --gold:#d8b082; --red:#b0626d; --ink:#261f23; --ink-2:#5f4e56; --muted:#8a7880;
}

:root[data-theme="theme-21"] {
  --bg:#fbf5ec; --bg-alt:#fffdfa; --surface:#fffdf8; --surface-2:#f3e8d7; --surface-3:#e5d5be;
  --glass:rgba(255,255,255,.92); --border:rgba(173,118,33,.12); --border-hl:rgba(173,118,33,.28);
  --teal:#ad7621; --teal-dim:#7a5216; --orange:#4b5b68; --orange-dim:#33404a;
  --gold:#e0bc73; --red:#b26643; --ink:#27211b; --ink-2:#605143; --muted:#917e6a;
}

:root[data-theme="theme-22"] {
  --bg:#eef4f5; --bg-alt:#ffffff; --surface:#fff; --surface-2:#e2ebed; --surface-3:#d2dee2;
  --glass:rgba(255,255,255,.92); --border:rgba(63,96,109,.12); --border-hl:rgba(63,96,109,.28);
  --teal:#3f606d; --teal-dim:#2a4049; --orange:#d88773; --orange-dim:#9b5c4d;
  --gold:#e1bb83; --red:#bc6d60; --ink:#1d2529; --ink-2:#4c5f67; --muted:#788990;
}

:root[data-theme="theme-23"] {
  --bg:#f7f2fa; --bg-alt:#fffefe; --surface:#fff; --surface-2:#eee6f4; --surface-3:#dfd2e8;
  --glass:rgba(255,255,255,.92); --border:rgba(123,68,145,.12); --border-hl:rgba(123,68,145,.28);
  --teal:#7b4491; --teal-dim:#542e63; --orange:#49505a; --orange-dim:#30353c;
  --gold:#d7b07d; --red:#a35b8f; --ink:#221d27; --ink-2:#564b61; --muted:#83778f;
}

body {
  color:var(--ink);
  background:var(--bg);
  background-image:
    radial-gradient(ellipse 70% 45% at 10% 0%, rgba(31,109,103,.08) 0%, transparent 60%),
    radial-gradient(ellipse 55% 42% at 90% 100%, rgba(200,70,48,.06) 0%, transparent 60%);
}

.top-strip {
  background:rgba(var(--top-strip-bg-rgb), var(--top-strip-solid-opacity));
  border-bottom:0;
}
.top-strip,
.top-strip a,
.top-strip i { color:rgba(255,255,255,.9); }
.top-strip a:hover { color:#fff; }

.site-header,
.site-header.scrolled {
  background:rgba(var(--navbar-bg-rgb), var(--navbar-solid-opacity));
  border-bottom:1px solid var(--border);
  box-shadow:0 10px 30px rgba(31,41,48,.08);
}

.brand-mark {
  background:linear-gradient(135deg, var(--teal), var(--orange));
  box-shadow:0 0 0 3px rgba(255,255,255,.8), 0 10px 26px rgba(31,41,48,.16);
}
.navbar-brand strong { color:var(--teal-dim); }
.navbar-brand small { color:var(--muted); }
.nav-link { color:var(--ink-2); }
.nav-link:hover,
.nav-link.active { color:var(--teal-dim); }
.nav-link::after { background:var(--orange); }
.nav-cta {
  background:linear-gradient(135deg, var(--teal), var(--teal-dim)) !important;
  box-shadow:0 8px 20px rgba(31,109,103,.18);
}
.theme-select {
  color:var(--ink-2);
  background:#fff;
  border-color:var(--border);
}
.theme-select:hover,
.theme-select:focus {
  color:var(--ink);
  background:#fff;
}

.dropdown-menu {
  background:var(--bg-alt);
  border-color:var(--border);
  box-shadow:var(--shadow);
}
.dropdown-item { color:var(--ink-2); }
.dropdown-item:hover {
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
}

.featured-news,
.news-section,
.gallery-section,
.access-section,
.media-section,
.social-section,
.logo-marquee,
.content-grid { background:var(--bg); }

.featured-news-carousel,
.featured-indicators,
.featured-caption p,
.news-carousel,
.module-card,
.stat,
.previous-news,
.stacked-news article,
.publication-row div,
.marquee-track span {
  background:var(--surface);
  color:var(--ink);
  border-color:var(--border);
}

.featured-caption h1 {
  background:linear-gradient(90deg, var(--teal-dim), var(--teal));
}
.featured-caption p,
.previous-news-item strong,
.stacked-news h3,
.module-card p,
.youtube-card strong,
.publications-module .module-title h3,
.publications-module p,
.publication-row strong {
  color:var(--ink-2);
}

.featured-indicators { border-top:1px solid var(--border); }
.featured-indicators [data-bs-target] {
  color:var(--teal-dim);
  background:var(--surface-2);
  background:color-mix(in srgb, var(--teal) 10%, var(--surface));
}
.featured-indicators [data-bs-target]:hover {
  color:#fff;
  background:var(--teal);
}
.featured-indicators .active {
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
}

.previous-news-head span,
.section-head h2,
.stats-band h2,
.module-title h3,
.feature-card h3,
.site-footer strong,
.site-footer h3 { color:var(--ink); }

.ticker-wrap {
  background:var(--surface);
  border-color:var(--border);
}
.ticker-label {
  background:linear-gradient(90deg, var(--teal-dim), var(--teal));
}
.ticker-track span,
.ticker-track a { color:var(--ink-2); }
.ticker-track span::after,
.ticker-track a::after { background:var(--orange); }

.stats-band,
.president-section,
.heritage-section,
.media-section {
  color:var(--ink);
  background:var(--bg-alt);
  border-color:var(--border);
}
.stats-band p,
.stat span,
.president-message p,
.publications-module p { color:var(--muted); }
.stat strong,
.section-head a,
.previous-news-head a,
.previous-news-item time,
.stacked-news time,
.feature-card a,
.social-follow,
.president-message cite,
.publication-row span,
.marquee-track span { color:var(--teal); }
.section-head a:hover,
.feature-card a:hover,
.social-follow:hover { color:var(--orange); }

.gallery-shell::before { background:linear-gradient(90deg, var(--bg), transparent); }
.gallery-shell::after { background:linear-gradient(270deg, var(--bg), transparent); }
.gallery-dots span { background:rgba(31,41,48,.18); }

/* Refined navigation */
.navbar-nav {
  gap:4px;
}
.navbar .nav-link {
  position:relative;
  display:flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px !important;
  border-radius:8px;
  color:var(--ink-2);
  font-size:13px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:0;
  transition:background-color .22s var(--ease), color .22s var(--ease), box-shadow .22s var(--ease);
}
.navbar .nav-link::after {
  display:none !important;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus,
.navbar .nav-link.show {
  color:var(--teal-dim);
  background:rgba(31,109,103,.08);
  box-shadow:inset 0 0 0 1px rgba(31,109,103,.12);
}
.navbar .nav-link.active {
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow:0 8px 18px rgba(31,109,103,.18);
}
.navbar .dropdown-toggle::after {
  margin-left:7px;
  border-top-color:currentColor;
  transform:translateY(1px);
}
.navbar .nav-cta {
  margin-left:6px;
  color:#fff !important;
  background:linear-gradient(135deg, var(--orange), var(--orange-dim)) !important;
  box-shadow:0 8px 18px rgba(200,70,48,.18);
}
.navbar .nav-cta:hover,
.navbar .nav-cta:focus {
  color:#fff !important;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim)) !important;
}
.dropdown-menu {
  padding:8px;
  border-radius:10px;
}
.dropdown-item {
  border-radius:7px;
  padding:9px 11px;
}
.dropdown-item:hover,
.dropdown-item:focus {
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
}
.navbar .dropdown-submenu > .dropdown-toggle::after {
  float:right;
  margin-top:.55em;
  margin-left:10px;
  border-top-color:currentColor;
  transform:rotate(-90deg);
}
.navbar .dropdown-submenu > .dropdown-menu.show {
  display:block;
}

.cms-page-content {
  margin:0;
  color:var(--ink);
  font-family:var(--font);
  font-size:calc(16px * var(--content-type-scale));
  line-height:1.75;
  text-align:justify;
  text-justify:inter-word;
  overflow:auto;
}

.cms-page-content::after {
  content:"";
  display:block;
  clear:both;
}

.cms-page-content h1,
.cms-page-content h2,
.cms-page-content h3,
.cms-page-content h4,
.cms-page-content h5,
.cms-page-content h6 {
  margin:1.2em 0 .45em;
  color:var(--ink);
  font-weight:600;
  line-height:1.5;
  letter-spacing:-0.018em;
}

.cms-page-content h1 {
  font-size:calc(clamp(1.48rem, 1.7vw, 1.95rem) * var(--content-type-scale));
}

.cms-page-content h2 {
  font-size:calc(clamp(1.28rem, 1.42vw, 1.62rem) * var(--content-type-scale));
}

.cms-page-content h3 {
  font-size:calc(clamp(1.1rem, 1.16vw, 1.28rem) * var(--content-type-scale));
}

.cms-page-content h4 {
  font-size:calc(clamp(.98rem, 1vw, 1.08rem) * var(--content-type-scale));
}

.cms-page-content p {
  margin:0 0 1em;
  text-align:justify;
  text-justify:inter-word;
}

.cms-page-content li,
.cms-page-content td,
.cms-page-content th,
.cms-page-content blockquote,
.cms-page-content a,
.cms-page-content span,
.cms-page-content div:not(.row):not([class*="col-"]) {
  font-size:inherit;
  line-height:inherit;
}

.cms-page-content figure.table {
  display:block;
  max-width:100%;
  margin:0 0 1.4rem;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}

.cms-page-content table {
  width:100%;
  max-width:100%;
  margin:0 0 1.4rem;
  border-collapse:collapse;
  border-spacing:0;
}

.cms-page-content figure.table table {
  margin:0;
}

.cms-page-content table th,
.cms-page-content table td {
  padding:.9rem 1rem;
  vertical-align:top;
  text-align:left;
  border-bottom:1px solid color-mix(in srgb, var(--ink) 14%, transparent);
}

.cms-page-content table th {
  color:var(--ink);
  font-weight:700;
}

.cms-page-content table td {
  color:var(--ink);
}

.cms-page-content a {
  color:var(--teal-dim);
  font-weight:600;
  text-decoration:none;
  transition:color .18s ease, background-color .18s ease;
}

.cms-page-content a:hover,
.cms-page-content a:focus-visible {
  color:var(--teal);
  text-decoration:none;
  background:color-mix(in srgb, var(--teal) 8%, transparent);
}

.cms-page-content .cms-cta-button,
.cms-rich-text .cms-cta-button {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:min(100%, 260px);
  min-height:48px;
  padding:15px 52px 15px 20px;
  border:none;
  border-radius:9px;
  font:700 15px/1 var(--font);
  letter-spacing:.01em;
  text-decoration:none !important;
  text-transform:capitalize;
  box-sizing:border-box;
  overflow:hidden;
  isolation:isolate;
  background:var(--orange);
  color:#fff;
  box-shadow:0 16px 34px rgba(18, 42, 52, .14);
  transition:color .4s ease, transform .4s ease, box-shadow .4s ease, border-color .4s ease, background-color .4s ease;
}

.cms-page-content .cms-cta-button::before,
.cms-rich-text .cms-cta-button::before {
  content:"";
  position:absolute;
  top:50%;
  right:20px;
  width:10px;
  height:10px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
  transition:transform .4s ease;
  z-index:2;
}

.cms-page-content .cms-cta-button::after,
.cms-rich-text .cms-cta-button::after {
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:0;
  height:100%;
  background:var(--teal);
  transition:width .4s ease;
  z-index:-1;
}

.cms-page-content .cms-cta-button:hover,
.cms-page-content .cms-cta-button:focus-visible,
.cms-rich-text .cms-cta-button:hover,
.cms-rich-text .cms-cta-button:focus-visible {
  color:#fff;
  text-decoration:none !important;
  background-color:transparent;
  transform:translateY(-1px);
  box-shadow:0 20px 38px rgba(18, 42, 52, .18);
}

.cms-page-content .cms-cta-button:hover::before,
.cms-page-content .cms-cta-button:focus-visible::before,
.cms-rich-text .cms-cta-button:hover::before,
.cms-rich-text .cms-cta-button:focus-visible::before {
  transform:translate(2px, -50%) rotate(45deg);
}

.cms-page-content .cms-cta-button:hover::after,
.cms-page-content .cms-cta-button:focus-visible::after,
.cms-rich-text .cms-cta-button:hover::after,
.cms-rich-text .cms-cta-button:focus-visible::after {
  left:0;
  right:auto;
  width:100%;
}

.cms-page-content .cms-cta-button-primary,
.cms-rich-text .cms-cta-button-primary {
  background:var(--orange);
  color:#fff;
}

.cms-page-content .cms-cta-button-primary::after,
.cms-rich-text .cms-cta-button-primary::after {
  background:var(--teal);
}

.cms-page-content .cms-cta-button-accent,
.cms-rich-text .cms-cta-button-accent {
  background:var(--teal);
  color:#fff;
}

.cms-page-content .cms-cta-button-accent::after,
.cms-rich-text .cms-cta-button-accent::after {
  background:var(--orange);
}

.cms-page-content .cms-cta-button-ghost,
.cms-rich-text .cms-cta-button-ghost {
  background:transparent;
  color:var(--teal-dim);
  border:1px solid rgba(30, 77, 93, .24);
  box-shadow:none;
}

.cms-page-content .cms-cta-button-ghost::after,
.cms-rich-text .cms-cta-button-ghost::after {
  background:var(--teal);
}

.cms-page-content .cms-cta-button-ghost:hover,
.cms-page-content .cms-cta-button-ghost:focus-visible,
.cms-rich-text .cms-cta-button-ghost:hover,
.cms-rich-text .cms-cta-button-ghost:focus-visible {
  color:#fff;
  border-color:var(--teal);
  box-shadow:0 16px 34px rgba(18, 42, 52, .12);
}

.cms-page-content .cms-cta-button-row,
.cms-rich-text .cms-cta-button-row,
.cms-page-content .cms-cta-button-stack,
.cms-rich-text .cms-cta-button-stack {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:14px;
  align-items:stretch;
  margin:0 0 1rem;
}

.cms-page-content .cms-cta-button-row .cms-cta-button,
.cms-rich-text .cms-cta-button-row .cms-cta-button,
.cms-page-content .cms-cta-button-stack .cms-cta-button,
.cms-rich-text .cms-cta-button-stack .cms-cta-button {
  width:100%;
  max-width:none;
}

.cms-page-content .cms-cta-button-stack,
.cms-rich-text .cms-cta-button-stack {
  grid-template-columns:minmax(0, 260px);
}

.cms-page-content img,
.cms-page-content video,
.cms-page-content iframe {
  max-width:100%;
}

.cms-page-content img {
  display:block;
  height:auto;
}

.cms-page-content figure {
  max-width:100%;
  margin:0 0 1rem;
}

.cms-page-content figure.image,
.cms-page-content .image {
  display:block;
}

.cms-page-content figure.image img,
.cms-page-content .image img,
.cms-page-content img.image_resized,
.cms-page-content .image_resized img {
  width:100%;
  max-width:100%;
  height:auto !important;
  object-fit:contain;
}

.cms-page-content figure.image-style-align-left,
.cms-page-content figure.image-style-side,
.cms-page-content .image-style-align-left,
.cms-page-content .image-style-side {
  float:left;
  width:min(48%, 540px);
  margin:.35rem 1.6rem 1rem 0;
}

.cms-page-content figure.image-style-align-right,
.cms-page-content .image-style-align-right {
  float:right;
  width:min(48%, 540px);
  margin:.35rem 0 1rem 1.6rem;
}

.cms-page-content .image-style-align-center,
.cms-page-content figure.image-style-align-center {
  margin-left:auto;
  margin-right:auto;
}

.cms-page-content figure.media,
.cms-page-content .media {
  max-width:100%;
  clear:both;
}

.cms-page-content:empty::before {
  content:"Bu sayfa için henüz içerik eklenmemiş.";
  color:var(--muted);
}

@media (max-width: 767.98px) {
  .cms-page-content figure.table,
  .cms-page-content table {
    display:block;
    width:max-content;
    min-width:100%;
    max-width:none;
    overflow-x:auto;
    overflow-y:hidden;
  }

  .cms-page-content table th,
  .cms-page-content table td {
    min-width:140px;
    white-space:nowrap;
  }
}

.cms-page-breadcrumb {
  display:flex;
  align-items:center;
  gap:7px;
  max-width:100%;
  margin:0 0 14px;
  padding:8px 10px;
  overflow-x:auto;
  color:var(--muted);
  border:1px solid color-mix(in srgb, var(--teal) 12%, var(--border));
  border-radius:8px;
  background:color-mix(in srgb, #fff 86%, var(--bg-alt) 14%);
  font-size:13px;
  line-height:1.25;
  white-space:nowrap;
  scrollbar-width:thin;
}

.cms-page-breadcrumb a,
.cms-page-breadcrumb span {
  flex:0 0 auto;
  display:block;
  max-width:min(350px, 62vw);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.cms-page-breadcrumb a {
  color:color-mix(in srgb, var(--ink) 78%, var(--teal) 22%);
  font-weight:560;
  text-decoration:none;
}

.cms-page-breadcrumb a:hover {
  color:var(--teal);
  text-decoration:underline;
  text-underline-offset:3px;
}

.cms-page-breadcrumb a.is-current {
  color:var(--ink);
  font-weight:650;
}

.cms-page-breadcrumb span {
  color:var(--ink);
  font-weight:650;
}

.cms-page-breadcrumb i {
  flex:0 0 auto;
  color:color-mix(in srgb, var(--muted) 72%, transparent);
  font-size:11px;
}

.cms-page-side-layout {
  display:grid;
  grid-template-columns:minmax(190px, 260px) minmax(0, 1fr);
  gap:22px;
  align-items:start;
}

.cms-page-side-nav {
  position:sticky;
  top:96px;
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid color-mix(in srgb, var(--teal) 14%, var(--border));
  border-radius:8px;
  background:color-mix(in srgb, #fff 90%, var(--bg-alt) 10%);
}

.cms-page-side-root,
.cms-page-side-links a {
  display:grid;
  gap:3px;
  color:var(--ink-2);
  text-decoration:none;
  border-radius:7px;
}

.cms-page-side-root {
  padding:10px 11px;
  color:var(--ink);
  background:color-mix(in srgb, var(--teal) 8%, transparent);
  font-size:13px;
  font-weight:600;
  line-height:1.2;
}

.cms-page-side-links {
  display:grid;
  gap:4px;
}

.cms-page-side-links a {
  padding:9px 10px;
  border:1px solid transparent;
}

.cms-page-side-links a span {
  font-size:13px;
  font-weight:600;
  line-height:1.2;
}

.cms-page-side-links a time {
  color:var(--muted);
  font-size:11px;
  font-weight:500;
  line-height:1.2;
}

.cms-page-side-root:hover,
.cms-page-side-links a:hover {
  color:color-mix(in srgb, var(--teal) 68%, var(--muted) 32%);
  background:color-mix(in srgb, var(--teal) 5%, transparent);
  text-decoration:none;
}

.cms-page-side-root.active,
.cms-page-side-links a.active {
  color:var(--teal-dim);
  border-color:color-mix(in srgb, var(--teal) 22%, var(--border));
  background:color-mix(in srgb, var(--teal) 11%, #fff 89%);
}

.cms-page-side-links a.active span {
  font-weight:600;
}

.cms-page-side-content {
  min-width:0;
}

.cms-child-page-list {
  clear:both;
  margin:20px 0 0;
  padding-top:16px;
  border-top:1px solid color-mix(in srgb, var(--teal) 12%, var(--border));
}

.cms-child-page-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

.cms-child-page-card {
  position:relative;
  display:grid;
  gap:8px;
  align-content:start;
  min-height:88px;
  padding:12px;
  color:inherit;
  text-decoration:none;
  border:1px solid color-mix(in srgb, var(--teal) 16%, var(--border));
  border-radius:8px;
  background:color-mix(in srgb, #fff 88%, var(--bg-alt) 12%);
  box-shadow:0 12px 26px rgba(14,49,37,.06);
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.cms-child-page-card:hover {
  color:color-mix(in srgb, var(--teal) 68%, var(--muted) 32%);
  border-color:color-mix(in srgb, var(--teal) 30%, var(--border));
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(14,49,37,.09);
}

.cms-child-page-card:hover span {
  color:color-mix(in srgb, var(--teal) 68%, var(--muted) 32%);
  text-decoration:none;
}

.cms-child-page-number {
  display:none;
}

.cms-child-page-card img {
  width:100%;
  aspect-ratio:16 / 8;
  object-fit:cover;
  border-radius:6px;
}

.cms-child-page-card span {
  color:var(--ink);
  font-size:13px;
  font-weight:600;
  line-height:1.2;
}

.cms-child-page-card time {
  display:none;
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  line-height:1.25;
}

.cms-child-page-card small {
  color:rgba(28,45,39,.68);
  font-size:13px;
  line-height:1.45;
}

.cms-child-style-cards-clean .cms-child-page-card img,
.cms-child-style-compact-list .cms-child-page-card img,
.cms-child-style-compact-line .cms-child-page-card img,
.cms-child-style-compact-arrow .cms-child-page-card img,
.cms-child-style-compact-block .cms-child-page-card img,
.cms-child-style-compact-plain .cms-child-page-card img,
.cms-child-style-dated-list .cms-child-page-card img,
.cms-child-style-numbered-list .cms-child-page-card img,
.cms-child-style-timeline .cms-child-page-card img,
.cms-child-style-button-list .cms-child-page-card img,
.cms-child-style-columns .cms-child-page-card img,
.cms-child-style-minimal .cms-child-page-card img {
  display:none;
}

.cms-child-style-compact-list .cms-child-page-grid,
.cms-child-style-compact-line .cms-child-page-grid,
.cms-child-style-compact-arrow .cms-child-page-grid,
.cms-child-style-compact-block .cms-child-page-grid,
.cms-child-style-compact-plain .cms-child-page-grid,
.cms-child-style-dated-list .cms-child-page-grid,
.cms-child-style-dated-image-list .cms-child-page-grid,
.cms-child-style-numbered-list .cms-child-page-grid,
.cms-child-style-timeline .cms-child-page-grid,
.cms-child-style-button-list .cms-child-page-grid,
.cms-child-style-minimal .cms-child-page-grid {
  grid-template-columns:1fr;
  gap:7px;
}

.cms-child-style-compact-list .cms-child-page-card,
.cms-child-style-compact-line .cms-child-page-card,
.cms-child-style-compact-arrow .cms-child-page-card,
.cms-child-style-compact-block .cms-child-page-card,
.cms-child-style-compact-plain .cms-child-page-card,
.cms-child-style-dated-list .cms-child-page-card,
.cms-child-style-numbered-list .cms-child-page-card,
.cms-child-style-minimal .cms-child-page-card {
  min-height:0;
  padding:10px 12px;
  box-shadow:none;
}

.cms-child-style-compact-list .cms-child-page-card,
.cms-child-style-dated-list .cms-child-page-card {
  grid-template-columns:1fr auto;
  align-items:center;
}

.cms-child-style-dated-image-list .cms-child-page-card {
  grid-template-columns:96px minmax(0, 1fr);
  grid-template-areas:
    "image date"
    "image title"
    "image summary";
  align-items:center;
  gap:8px 12px;
  min-height:0;
  padding:10px 12px;
  box-shadow:none;
}

.cms-child-style-dated-image-list .cms-child-page-card img {
  grid-area:image;
  display:block;
  width:100%;
  height:100%;
  min-height:78px;
  aspect-ratio:var(--cms-item-aspect-ratio, 4 / 3);
  object-fit:cover;
  border-radius:6px;
}

.cms-child-style-dated-image-list .cms-child-page-card > time {
  grid-area:date;
  display:block;
  margin:0;
}

.cms-child-style-dated-image-list .cms-child-page-card > span {
  grid-area:title;
  font-size:14px;
  line-height:1.3;
}

.cms-child-style-dated-image-list .cms-child-page-card > small {
  grid-area:summary;
  display:none;
}

.cms-child-style-compact-line .cms-child-page-card,
.cms-child-style-compact-arrow .cms-child-page-card,
.cms-child-style-compact-block .cms-child-page-card,
.cms-child-style-compact-plain .cms-child-page-card {
  align-items:center;
}

.cms-child-style-compact-line .cms-child-page-card {
  padding:9px 0;
  border:0;
  border-bottom:1px solid color-mix(in srgb, var(--teal) 14%, var(--border));
  border-radius:0;
  background:transparent;
}

.cms-child-style-compact-arrow .cms-child-page-card {
  grid-template-columns:1fr auto;
  padding:10px 12px;
  border-color:transparent;
  background:color-mix(in srgb, var(--teal) 4%, #fff 96%);
}

.cms-child-style-compact-arrow .cms-child-page-card::after {
  content:"›";
  color:var(--teal);
  font-size:18px;
  line-height:1;
}

.cms-child-style-compact-block .cms-child-page-card {
  padding:12px 14px;
  border-left:4px solid color-mix(in srgb, var(--teal) 42%, var(--border));
  background:color-mix(in srgb, #fff 92%, var(--bg-alt) 8%);
}

.cms-child-style-compact-plain .cms-child-page-card {
  padding:6px 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.cms-child-style-compact-line .cms-child-page-card:hover,
.cms-child-style-compact-plain .cms-child-page-card:hover {
  transform:none;
  box-shadow:none;
  background:transparent;
}

.cms-child-style-compact-list .cms-child-page-card small,
.cms-child-style-compact-line .cms-child-page-card small,
.cms-child-style-compact-arrow .cms-child-page-card small,
.cms-child-style-compact-block .cms-child-page-card small,
.cms-child-style-compact-plain .cms-child-page-card small,
.cms-child-style-dated-list .cms-child-page-card small,
.cms-child-style-numbered-list .cms-child-page-card small,
.cms-child-style-button-list .cms-child-page-card small,
.cms-child-style-columns .cms-child-page-card small,
.cms-child-style-minimal .cms-child-page-card small {
  display:none;
}

.cms-child-style-dated-list .cms-child-page-card time,
.cms-child-style-timeline .cms-child-page-card time,
.cms-child-style-featured-grid .cms-child-page-card time,
.cms-child-style-media-strip .cms-child-page-card time,
.cms-child-style-side-menu .cms-child-page-card time {
  display:block;
}

.cms-child-style-numbered-list .cms-child-page-card,
.cms-child-style-timeline .cms-child-page-card {
  grid-template-columns:34px 1fr;
  align-items:start;
}

.cms-child-style-numbered-list .cms-child-page-number,
.cms-child-style-timeline .cms-child-page-number {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  color:#fff;
  border-radius:999px;
  background:var(--teal);
  font-size:12px;
  line-height:1;
}

.cms-child-style-timeline .cms-child-page-grid {
  position:relative;
}

.cms-child-style-timeline .cms-child-page-grid::before {
  content:"";
  position:absolute;
  top:7px;
  bottom:7px;
  left:14px;
  width:1px;
  background:color-mix(in srgb, var(--teal) 28%, var(--border));
}

.cms-child-style-timeline .cms-child-page-card {
  border:0;
  background:transparent;
  box-shadow:none;
}

.cms-child-style-featured-grid .cms-child-page-grid {
  grid-template-columns:1.15fr .85fr;
}

.cms-child-style-featured-grid .cms-child-page-card:first-child {
  grid-row:span 2;
}

.cms-child-style-featured-grid .cms-child-page-card:first-child img {
  aspect-ratio:16 / 10;
}

.cms-child-style-split-list .cms-child-page-grid,
.cms-child-style-columns .cms-child-page-grid {
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.cms-child-style-split-list .cms-child-page-card {
  grid-template-columns:88px 1fr;
  align-items:center;
}

.cms-child-style-split-list .cms-child-page-card img {
  height:72px;
  aspect-ratio:1;
}

.cms-child-style-button-list .cms-child-page-grid {
  display:flex;
  flex-wrap:wrap;
}

.cms-child-style-button-list .cms-child-page-card {
  display:inline-flex;
  align-items:center;
  min-height:0;
  padding:10px 14px;
  border-radius:999px;
  box-shadow:none;
}

.cms-child-style-carousel .cms-child-page-grid,
.cms-child-style-media-strip .cms-child-page-grid {
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding:2px 2px 12px;
  scroll-snap-type:x proximity;
}

.cms-child-style-media-strip .cms-child-page-grid {
  padding:4px 6px 14px;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  touch-action:pan-y;
  scrollbar-width:thin;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
}

.cms-child-style-media-strip .cms-child-page-grid.is-dragging {
  cursor:grabbing;
  scroll-snap-type:none;
}

.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar {
  height:var(--cms-scrollbar-size);
}

.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-track {
  background:var(--cms-scrollbar-track);
  border-radius:999px;
}

.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-thumb {
  background:linear-gradient(90deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%));
  border:2px solid transparent;
  background-clip:padding-box;
  border-radius:999px;
}

.cms-child-style-media-strip .cms-child-page-grid::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(90deg, var(--cms-scrollbar-thumb-hover), color-mix(in srgb, var(--cms-scrollbar-thumb-hover) 78%, var(--orange-dim) 22%));
  background-clip:padding-box;
}

.cms-child-style-carousel .cms-child-page-card,
.cms-child-style-media-strip .cms-child-page-card {
  flex:0 0 min(280px, 78vw);
  scroll-snap-align:start;
}

.cms-child-style-media-strip .cms-child-page-card {
  min-height:190px;
  overflow:hidden;
  padding:0;
}

.cms-child-style-media-strip .cms-child-page-card img {
  aspect-ratio:var(--cms-item-aspect-ratio, 16 / 11);
  display:block;
  width:100%;
  margin:0;
  border-radius:8px 8px 0 0;
  pointer-events:none;
  -webkit-user-drag:none;
}

.cms-child-style-media-strip .cms-child-page-card > span,
.cms-child-style-media-strip .cms-child-page-card > time,
.cms-child-style-media-strip .cms-child-page-card > small {
  padding-inline:12px;
}

.cms-child-style-media-strip .cms-child-page-card > span {
  padding-top:10px;
}

.cms-child-style-media-strip .cms-child-page-card > time,
.cms-child-style-media-strip .cms-child-page-card > small {
  padding-bottom:12px;
}

.cms-child-spotlight {
  clear:both;
  display:grid;
  grid-template-columns:minmax(0, 1.5fr) minmax(260px, .72fr);
  gap:22px;
  align-items:start;
  margin:22px 0 0;
  padding-top:16px;
  border-top:1px solid color-mix(in srgb, var(--teal) 12%, var(--border));
  --cms-child-spotlight-height:480px;
}

.cms-child-spotlight-carousel {
  height:var(--cms-child-spotlight-height);
  min-height:360px;
  overflow:hidden;
  touch-action:pan-y pinch-zoom;
  border:1px solid color-mix(in srgb, var(--teal) 14%, var(--border));
  border-radius:12px;
  background:color-mix(in srgb, var(--bg-alt) 86%, #fff 14%);
  box-shadow:0 18px 42px rgba(14,49,37,.09);
}

.cms-child-spotlight-carousel .carousel-inner,
.cms-child-spotlight-carousel .carousel-item {
  height:100%;
  min-height:360px;
}

.cms-child-spotlight-carousel .carousel-item {
  position:relative;
  grid-template-rows:minmax(0, 1fr) auto;
  color:#fff;
  text-decoration:none;
  background:linear-gradient(135deg, color-mix(in srgb, var(--teal) 16%, #fff), color-mix(in srgb, var(--bg-alt) 82%, #fff));
}

.cms-child-spotlight-carousel .carousel-item.active,
.cms-child-spotlight-carousel .carousel-item-next,
.cms-child-spotlight-carousel .carousel-item-prev,
.cms-child-spotlight-carousel .carousel-item-start,
.cms-child-spotlight-carousel .carousel-item-end {
  display:grid;
}

.cms-child-spotlight-carousel .carousel-item img {
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:center center;
  opacity:1;
}

.cms-child-spotlight-shade {
  display:none;
}

.cms-child-spotlight-caption {
  position:relative;
  display:grid;
  gap:0;
  max-width:none;
  background:#fff;
  box-shadow:0 -1px 0 color-mix(in srgb, var(--teal) 12%, var(--border));
}

.cms-child-spotlight-caption time {
  display:none;
}

.cms-child-spotlight-caption strong {
  display:block;
  padding:11px 18px 10px;
  color:#fff;
  background:var(--teal-dim);
  font-size:clamp(15px, 1.25vw, 19px);
  font-weight:600;
  line-height:1.25;
  text-shadow:none;
}

.cms-child-spotlight-caption em {
  display:block;
  min-height:42px;
  padding:10px 18px 12px;
  color:var(--ink-2);
  background:#fff;
  font-size:12.5px;
  font-style:normal;
  line-height:1.45;
  text-shadow:none;
}

.cms-child-spotlight-no-caption .cms-child-spotlight-carousel .carousel-item {
  grid-template-rows:minmax(0, 1fr);
}

.cms-child-spotlight-carousel .carousel-control-prev,
.cms-child-spotlight-carousel .carousel-control-next {
  width:9%;
}

.cms-child-spotlight-dots {
  display:none;
}

.cms-child-spotlight-dots [data-bs-target] {
  width:38px;
  height:3px;
  margin:0;
  border:0;
  opacity:.65;
}

.cms-child-spotlight-dots .active {
  opacity:1;
  background:var(--teal);
}

.cms-child-spotlight-list {
  display:grid;
  gap:13px;
  align-content:start;
  max-height:var(--cms-child-spotlight-height);
  overflow-y:auto;
  padding-right:10px;
  overscroll-behavior:contain;
  scrollbar-color:var(--cms-scrollbar-thumb) var(--cms-scrollbar-track);
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}

.cms-child-spotlight-list::-webkit-scrollbar {
  width:var(--cms-scrollbar-size);
}

.cms-child-spotlight-list::-webkit-scrollbar-track {
  border-radius:999px;
  background:var(--cms-scrollbar-track);
}

.cms-child-spotlight-list::-webkit-scrollbar-thumb {
  border:2px solid var(--cms-scrollbar-track);
  border-radius:999px;
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb), color-mix(in srgb, var(--cms-scrollbar-thumb) 76%, var(--teal-dim) 24%));
}

.cms-child-spotlight-list::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(180deg, var(--cms-scrollbar-thumb-hover), color-mix(in srgb, var(--cms-scrollbar-thumb-hover) 78%, var(--orange-dim) 22%));
}

.cms-child-spotlight-list-item {
  display:grid;
  gap:7px;
  min-height:72px;
  padding:14px 16px;
  color:var(--ink-2);
  border:1px solid color-mix(in srgb, var(--teal) 15%, var(--border));
  border-left:4px solid color-mix(in srgb, var(--teal) 26%, var(--border));
  border-radius:9px;
  background:color-mix(in srgb, #fff 88%, var(--bg-alt) 12%);
  box-shadow:0 12px 28px rgba(14,49,37,.05);
  cursor:pointer;
  transition:color .2s ease, border-color .2s ease, background-color .2s ease, transform .2s ease;
}

.cms-child-spotlight-list-item:hover,
.cms-child-spotlight-list-item.active {
  color:var(--teal-dim);
  border-left-color:var(--teal);
  background:color-mix(in srgb, var(--teal) 7%, #fff 93%);
}

.cms-child-spotlight-list-item:hover {
  transform:translateX(2px);
}

.cms-child-spotlight-list time {
  color:var(--teal);
  font-size:11.5px;
  font-weight:600;
  line-height:1.2;
}

.cms-child-spotlight-list a {
  color:inherit;
  font-size:13px;
  font-weight:600;
  line-height:1.28;
  text-decoration:none;
}

.cms-child-spotlight-list a:hover {
  color:color-mix(in srgb, var(--teal) 72%, var(--ink) 28%);
}

.cms-child-style-side-menu .cms-child-page-grid {
  grid-template-columns:1fr;
  gap:8px;
}

.cms-child-style-side-menu .cms-child-page-card {
  grid-template-columns:minmax(170px, .34fr) minmax(84px, 112px) minmax(0, 1fr) auto;
  grid-template-areas:"title image summary date";
  align-items:center;
  min-height:72px;
  padding:10px 12px;
  box-shadow:none;
}

.cms-child-style-side-menu .cms-child-page-card span {
  grid-area:title;
  padding-right:12px;
  font-weight:600;
}

.cms-child-style-side-menu .cms-child-page-card img {
  grid-area:image;
  aspect-ratio:4 / 3;
}

.cms-child-style-side-menu .cms-child-page-card small {
  grid-area:summary;
  color:var(--ink-2);
}

.cms-child-style-side-menu .cms-child-page-card time {
  grid-area:date;
  white-space:nowrap;
}

.cms-child-style-side-menu .cms-child-page-card:not(:has(img)) {
  grid-template-columns:minmax(170px, .34fr) minmax(0, 1fr) auto;
  grid-template-areas:"title summary date";
}

.cms-child-style-dated-image-list .cms-child-page-card:not(:has(img)) {
  grid-template-columns:1fr auto;
  grid-template-areas:
    "title date"
    "summary summary";
}

.cms-child-page-list.cms-child-style-minimal {
  padding-top:10px;
}

.cms-child-style-minimal .cms-child-page-card {
  padding:7px 0;
  border:0;
  border-bottom:1px solid color-mix(in srgb, var(--teal) 12%, var(--border));
  border-radius:0;
  background:transparent;
}

.cms-child-style-minimal .cms-child-page-card:hover {
  transform:none;
  box-shadow:none;
}

@media (max-width:1199px) {
  .navbar-nav {
    gap:6px;
  }
  .navbar .nav-link {
    justify-content:space-between;
    padding:10px 12px !important;
  }
  .navbar .nav-cta {
    margin-left:0;
    justify-content:center;
  }
}

@media (max-width:767.98px) {
  .cms-content-page .cms-page-body > .container-xxl {
    padding:16px;
  }

  .cms-page-content figure.image-style-align-left,
  .cms-page-content figure.image-style-side,
  .cms-page-content .image-style-align-left,
  .cms-page-content .image-style-side,
  .cms-page-content figure.image-style-align-right,
  .cms-page-content .image-style-align-right,
  .cms-page-content .cms-img-hover-shine-wrap.cms-page-cover,
  .cms-img-hover-shine-wrap.cms-page-inline-cover,
  .cms-page-content .cms-page-cover,
  .cms-page-inline-cover {
    float:none;
    width:100% !important;
    max-width:100% !important;
    height:auto;
    margin:0 auto 1rem;
    border-radius:0;
    object-fit:initial;
    object-position:center center;
  }

  .cms-page-content .cms-img-hover-shine-wrap.cms-page-cover > img,
  .cms-img-hover-shine-wrap.cms-page-inline-cover > img,
  .cms-page-content .cms-page-cover,
  .cms-page-inline-cover {
    width:auto !important;
    max-width:100% !important;
    height:30vh !important;
    max-height:30vh !important;
    object-fit:cover !important;
    object-position:center center !important;
    margin:0 auto !important;
    border-radius:0 !important;
  }

  .cms-page-content .cms-img-hover-shine-wrap.cms-page-cover,
  .cms-img-hover-shine-wrap.cms-page-inline-cover {
    display:flex;
    justify-content:center;
  }

  .cms-child-page-grid {
    grid-template-columns:1fr;
  }

  .cms-page-side-layout {
    grid-template-columns:1fr;
    gap:14px;
  }

  .cms-page-side-nav {
    position:static;
    display:flex;
    gap:7px;
    overflow-x:auto;
    padding:8px;
    scrollbar-width:thin;
  }

  .cms-page-side-root,
  .cms-page-side-links a {
    flex:0 0 auto;
    min-width:max-content;
    padding:8px 10px;
  }

  .cms-page-side-links {
    display:flex;
    gap:7px;
  }

  .cms-page-side-links a time {
    display:none;
  }

  .cms-child-spotlight {
    grid-template-columns:1fr;
    gap:14px;
    --cms-child-spotlight-height:370px;
  }

  .cms-child-spotlight-carousel,
  .cms-child-spotlight-carousel .carousel-inner,
  .cms-child-spotlight-carousel .carousel-item,
  .cms-child-spotlight-carousel .carousel-item img {
    min-height:0;
  }

  .cms-child-spotlight-caption {
    right:auto;
    bottom:auto;
    left:auto;
  }

  .cms-child-spotlight-caption strong {
    font-size:clamp(15px, 4.8vw, 19px);
  }

  .cms-child-spotlight-list {
    gap:9px;
    max-height:380px;
  }

  .cms-child-spotlight-list-item {
    min-height:0;
    padding:14px 16px;
  }

  .cms-child-style-featured-grid .cms-child-page-grid,
  .cms-child-style-split-list .cms-child-page-grid,
  .cms-child-style-columns .cms-child-page-grid {
    grid-template-columns:1fr;
  }

  .cms-child-style-featured-grid .cms-child-page-card:first-child {
    grid-row:auto;
  }

  .cms-child-style-split-list .cms-child-page-card {
    grid-template-columns:72px 1fr;
  }

  .cms-child-style-side-menu .cms-child-page-card {
    grid-template-columns:78px 1fr;
    grid-template-areas:
      "image title"
      "image summary"
      "image date";
  }

  .cms-child-style-side-menu .cms-child-page-card span {
    padding-right:0;
  }

  .cms-child-style-side-menu .cms-child-page-card time {
    white-space:normal;
  }

  .cms-child-style-side-menu .cms-child-page-card:not(:has(img)) {
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "summary"
      "date";
  }

  .cms-child-style-dated-image-list .cms-child-page-card {
    grid-template-columns:78px 1fr;
    grid-template-areas:
      "image date"
      "image title";
  }

  .cms-child-style-dated-image-list .cms-child-page-card:not(:has(img)) {
    grid-template-columns:1fr;
    grid-template-areas:
      "date"
      "title";
  }
}
.gallery-dots .active { background:var(--teal); }

.parallax-callout::after {
  background:
    linear-gradient(90deg, rgba(20,32,38,.78), rgba(20,32,38,.28)),
    linear-gradient(0deg, rgba(31,109,103,.2), transparent 60%);
}

.access-button {
  background:var(--teal-dim);
  border-color:var(--teal-dim);
}
.access-button:hover {
  background:var(--orange);
  border-color:var(--orange);
}

.youtube-card,
.video-thumb {
  background:var(--bg-alt);
  border-color:var(--border);
}
.youtube-card strong {
  background:var(--bg-alt);
  border-color:var(--border);
}

.publications-module {
  background:#2b2d2f;
}
.publications-module .module-title h3,
.publications-module p { color:#fff; }
.publication-row div {
  background:#fff;
  border-color:var(--teal);
}

.instagram-module { background:var(--surface); }
.site-footer {
  background:var(--teal-dim);
  color:rgba(255,255,255,.72);
}
.site-footer strong,
.site-footer h3 { color:#fff; }
.site-footer a { color:rgba(255,255,255,.74); }
.site-footer a:hover { color:#fff; }
.footer-brand .brand-mark { box-shadow:0 0 0 3px rgba(255,255,255,.25); }
.footer-brand strong { color:#fff; }

/* Publications redesign */
.heritage-section .col-lg-5 {
  width:100%;
}

.heritage-section .ataturk-card {
  max-width:980px;
  margin:0 auto;
}

.publications-module {
  position:relative;
  overflow:hidden;
  padding:34px;
  border:1px solid rgba(31,41,48,.08);
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,242,234,.96)),
    radial-gradient(circle at top left, rgba(31,109,103,.14), transparent 34%);
  color:var(--ink);
  box-shadow:0 22px 60px rgba(31,41,48,.12);
}

.publications-module::before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg, var(--teal), var(--orange), var(--gold));
}

.publications-module .module-title h3 {
  color:var(--ink);
  font-size:20px;
}

.publications-module .module-title span {
  opacity:.22;
}

.publication-row {
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:26px;
  margin:8px 0 28px;
}

.publication-row div {
  position:relative;
  min-height:285px;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:14px;
  background:linear-gradient(180deg, #fff, #f5f0e8);
  box-shadow:0 18px 42px rgba(31,41,48,.14);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}

.publication-row div::before {
  content:"";
  width:150px;
  height:205px;
  margin-top:24px;
  border-radius:8px;
  border:8px solid var(--teal);
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.12)),
    linear-gradient(135deg, var(--ink), var(--teal-dim));
  box-shadow:0 16px 30px rgba(31,41,48,.2);
}

.publication-row div:nth-child(2)::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,.24), rgba(0,0,0,.08)),
    linear-gradient(135deg, #f7f7f2, var(--orange));
}

.publication-row div:nth-child(3)::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,.36), rgba(255,255,255,.04)),
    linear-gradient(135deg, #f5f0e8, var(--gold));
}

.publication-row div:hover {
  transform:translateY(-6px);
  box-shadow:0 24px 60px rgba(31,41,48,.18);
}

.publication-row span {
  margin-top:18px;
  color:var(--orange);
  font-size:28px;
  line-height:1;
}

.publication-row strong {
  color:var(--ink);
  font-size:15px;
}

.publications-module p {
  max-width:1050px;
  margin:0;
  padding:20px 22px;
  border-left:4px solid var(--teal);
  border-radius:0 12px 12px 0;
  color:var(--ink-2);
  background:rgba(31,109,103,.08);
  font-size:15px;
  line-height:1.7;
}

.publications-module p strong,
.publications-module p b {
  color:var(--teal-dim);
}

/* Font size selector */
body {
  font-size:calc(15px * var(--type-scale));
}

.navbar .nav-link,
.dropdown-item,
.theme-select,
.ticker-track span,
.ticker-track a,
.previous-news-item strong,
.previous-news-head a,
.section-head a,
.social-card p,
.video-card p,
.president-message p,
.media-card p,
.publication-note,
.access-btn,
.footer-links a {
  font-size:calc(13px * var(--type-scale));
}

.site-footer .footer-links a {
  margin:2px 0;
  padding:5px 8px;
  border-radius:10px;
  transition:background-color .25s var(--ease), color .25s var(--ease);
}

.navbar-brand small,
.previous-news-item time,
.module-title span,
.social-card time,
.video-card time,
.president-message cite {
  font-size:calc(12px * var(--type-scale));
}

.featured-caption h1 {
  font-size:calc(clamp(14px, 1.35vw, 19px) * var(--type-scale));
}

.featured-caption p {
  font-size:calc(clamp(11px, .9vw, 13px) * var(--type-scale));
}

.section-head h2,
.previous-news-head span,
.module-title h3 {
  font-size:calc(14px * var(--type-scale));
}

.navbar-brand strong {
  font-size:calc(20px * var(--type-scale));
}

.president-message blockquote,
.feature-card h3,
.social-card h3,
.video-card h3 {
  font-size:calc(16px * var(--type-scale));
}

/* Readable link hovers on light custom palettes */
.previous-news-item:hover strong,
.stacked-news article:hover h3,
.module-card a:hover,
.section-head a:hover,
.previous-news-head a:hover,
.footer-links a:hover {
  color:var(--teal-dim);
  background:color-mix(in srgb, var(--teal) 10%, var(--bg-alt));
}

.previous-news-item:hover,
.stacked-news article:hover {
  background:color-mix(in srgb, var(--teal) 7%, transparent);
  border-radius:10px;
}

/* Keep featured news slide numbers visible over Bootstrap indicator defaults. */
.featured-news-carousel .featured-indicators [data-bs-target] {
  position:relative;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 36px !important;
  width:36px !important;
  height:36px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:999px;
  text-indent:0 !important;
  overflow:hidden !important;
  color:transparent !important;
  background:color-mix(in srgb, var(--teal) 10%, var(--bg-alt)) !important;
  font:700 0/1 var(--font) !important;
  opacity:1 !important;
}

.featured-news-carousel .featured-indicators [data-bs-target]::before {
  content:attr(aria-label);
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  text-indent:0;
  color:var(--teal-dim);
  font:700 14px/1 var(--font);
  pointer-events:none;
}

.featured-news-carousel .featured-indicators [data-bs-target].active,
.featured-news-carousel .featured-indicators [data-bs-target]:hover {
  color:transparent !important;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim)) !important;
}

.featured-news-carousel .featured-indicators [data-bs-target].active::before,
.featured-news-carousel .featured-indicators [data-bs-target]:hover::before {
  color:#fff;
}

/* CMS title style overrides */
.module-title.cms-title-style-clean {
  gap:0;
  margin-bottom:14px;
}
.module-title.cms-title-style-clean h3,
.module-title.cms-title-style-underline h3,
.module-title.cms-title-style-accent h3,
.module-title.cms-title-style-ribbon h3,
.module-title.cms-title-style-overline h3,
.module-title.cms-title-style-bracket h3,
.module-title.cms-title-style-split h3,
.module-title.cms-title-style-badge h3,
.module-title.cms-title-style-leftline h3,
.module-title.cms-title-style-boxed h3,
.module-title.cms-title-style-marker h3 {
  text-transform:none;
  letter-spacing:0;
}
.module-title.cms-title-style-clean h3,
.module-title.cms-title-style-accent h3,
.module-title.cms-title-style-bracket h3,
.module-title.cms-title-style-boxed h3 {
  color:var(--teal-dim);
}
.module-title.cms-title-style-underline h3,
.module-title.cms-title-style-overline h3,
.module-title.cms-title-style-split h3,
.module-title.cms-title-style-badge h3,
.module-title.cms-title-style-leftline h3,
.module-title.cms-title-style-marker h3 {
  color:var(--ink);
}
.module-title.cms-title-style-clean span,
.module-title.cms-title-style-underline span,
.module-title.cms-title-style-pill span,
.module-title.cms-title-style-ribbon span,
.module-title.cms-title-style-overline span,
.module-title.cms-title-style-bracket span,
.module-title.cms-title-style-badge span,
.module-title.cms-title-style-leftline span,
.module-title.cms-title-style-boxed span,
.module-title.cms-title-style-dark span,
.module-title.cms-title-style-marker span {
  display:none;
}
.module-title.cms-title-style-underline {
  display:block;
  padding-bottom:8px;
  border-bottom:1px solid color-mix(in srgb, var(--teal) 34%, var(--border));
}
.module-title.cms-title-style-pill,
.module-title.cms-title-style-bracket,
.module-title.cms-title-style-badge,
.module-title.cms-title-style-dark {
  justify-content:flex-start;
}
.module-title.cms-title-style-pill h3 {
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:7px 14px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
  box-shadow:0 10px 22px color-mix(in srgb, var(--teal) 18%, transparent);
  font-size:13px;
}
.module-title.cms-title-style-accent {
  padding-left:12px;
  box-shadow:inset 4px 0 0 var(--orange);
}
.module-title.cms-title-style-ribbon h3 {
  padding:8px 16px 8px 14px;
  border-radius:0 999px 999px 0;
  color:#fff;
  background:linear-gradient(135deg, var(--orange), var(--orange-dim));
}
.module-title.cms-title-style-overline {
  display:block;
  padding-top:9px;
}
.module-title.cms-title-style-split span {
  display:block;
  height:1px;
  opacity:.42;
  background:linear-gradient(90deg, transparent, var(--teal), transparent);
}
.module-title.cms-title-style-gradient h3 {
  color:transparent !important;
  background:linear-gradient(90deg, var(--teal-dim), var(--teal), var(--orange));
  -webkit-background-clip:text;
  background-clip:text;
  text-transform:none;
  letter-spacing:0;
}
.module-title.cms-title-style-boxed {
  padding:9px 12px;
  border-radius:8px;
  background:color-mix(in srgb, var(--teal) 8%, var(--surface));
}
.module-title.cms-title-style-dark h3 {
  padding:8px 13px;
  border-radius:6px;
  color:#fff !important;
  background:linear-gradient(135deg, var(--teal-dim), color-mix(in srgb, var(--ink) 72%, #111));
  text-transform:none;
  letter-spacing:0;
}
.cms-content-page .cms-page-hero {
  padding-top: 24px;
  padding-bottom: 6px;
}

.cms-page-hero h1 {
  max-width: 920px;
  margin-bottom: 0;
}

.cms-content-page .cms-page-body {
  padding-top: 14px;
}

.cms-content-page .cms-page-body > .container-xxl {
  padding:24px;
  border:1px solid color-mix(in srgb, var(--teal) 16%, var(--border));
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 32px rgba(20,40,32,.06);
}

.cms-page-title-in-panel {
  margin:0;
  color:var(--ink);
  font-size:clamp(18px, 1.45vw, 24px);
  font-weight:600;
  line-height:1.28;
  letter-spacing:0;
}

.cms-page-title-row {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px 18px;
  margin:0 0 14px;
}

.cms-page-title-row .cms-page-title-in-panel {
  flex:1 1 320px;
}

.cms-page-share {
  position:relative;
  flex:0 0 auto;
  margin-left:auto;
}

.cms-page-share summary {
  list-style:none;
}

.cms-page-share summary::-webkit-details-marker {
  display:none;
}

.cms-page-share-trigger {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:44px;
  min-width:54px;
  padding:0 12px;
  color:var(--teal-dim);
  font-size:13px;
  font-weight:800;
  border:1px solid color-mix(in srgb, var(--teal) 26%, var(--border));
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(240,250,246,.94));
  box-shadow:0 12px 26px rgba(18,52,42,.08);
  cursor:pointer;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease);
}

.cms-page-share-trigger:hover,
.cms-page-share[open] .cms-page-share-trigger {
  color:var(--teal);
  border-color:color-mix(in srgb, var(--teal) 48%, var(--border));
  box-shadow:0 18px 36px rgba(18,52,42,.12);
  transform:translateY(-1px);
}

.cms-page-share-trigger-main {
  display:inline-flex;
  align-items:center;
  gap:0;
}

.cms-page-share-trigger-main i {
  font-size:16px;
}

.cms-page-share-chevron {
  transition:transform .25s var(--ease);
}

.cms-page-share[open] .cms-page-share-chevron {
  transform:rotate(180deg);
}

.cms-page-share-panel {
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:35;
  width:min(360px, calc(100vw - 48px));
  padding:12px;
  border:1px solid color-mix(in srgb, var(--teal) 18%, var(--border));
  border-radius:16px;
  background:rgba(255,255,255,.98);
  box-shadow:0 24px 60px rgba(16,45,36,.18);
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
}

.cms-page-share-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  width:100%;
  padding:0 12px;
  color:#1e3b35;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  border:1px solid rgba(31,108,99,.12);
  border-radius:999px;
  background:linear-gradient(180deg, #ffffff, #f5fbf8);
  transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease), color .22s var(--ease);
  cursor:pointer;
}

.cms-page-share-action:hover,
.cms-page-share-action:focus-visible {
  color:var(--teal);
  border-color:color-mix(in srgb, var(--teal) 45%, rgba(31,108,99,.12));
  box-shadow:0 14px 24px rgba(22,58,47,.12);
  transform:translateY(-1px);
}

.cms-page-share-action i {
  font-size:14px;
}

.cms-page-share-action.is-native {
  grid-column:1 / -1;
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg, var(--teal), var(--teal-dim));
}

.cms-page-share-action.is-native:hover,
.cms-page-share-action.is-native:focus-visible {
  color:#fff;
}

.cms-page-share-action.is-copy.is-copied {
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg, #179b6f, #127351);
}

.cms-page-share-action.is-copy.is-copy-failed {
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg, #d26b38, #b74d21);
}

.cms-page-hero p {
  max-width: 820px;
  color: rgba(22, 37, 32, .72);
}

.cms-page-cover {
  display: block;
  width: min(100%, 980px);
  max-height: 30vh;
  object-fit: cover;
  object-position: center center;
  margin-top: 18px;
  border-radius: 8px;
}

.cms-page-content .cms-page-cover,
.cms-page-inline-cover {
  float:left;
  width:min(46%, 520px);
  max-height:30vh;
  margin:.35rem 1.7rem 1rem 0;
  object-fit:cover;
  object-position:center center;
}

.cms-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.cms-news-card a {
  display: grid;
  gap: 10px;
  height: 100%;
  padding: 14px;
  color: inherit;
  text-decoration: none;
  background: rgba(255, 255, 255, .86);
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 16px 35px rgba(14, 49, 37, .08);
}

.cms-news-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 6px;
}

.cms-news-card time {
  font-size: .82rem;
  color: var(--teal);
  font-weight: 700;
}

.cms-news-card strong {
  font-size: 1.05rem;
  line-height: 1.35;
}

.cms-news-card p {
  margin: 0;
  color: rgba(28, 45, 39, .7);
}

.cms-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.cms-child-pagination {
  align-items: center;
}

.cms-pagination a {
  display: inline-grid;
  place-items: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  color: var(--teal);
  text-decoration: none;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
}

.cms-pagination a.active {
  color: #fff;
  background: var(--teal);
}

html,
body {
  min-height: 100%;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body > main,
body > .cms-content-page {
  flex: 1 0 auto;
}

body > .site-footer {
  flex-shrink: 0;
}

.cms-page-kicker {
  display: inline-flex;
  flex-wrap:wrap;
  align-items: center;
  gap: 8px 12px;
  text-transform:none;
  letter-spacing:0;
}

.cms-page-kicker span {
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--teal-dim);
  font-size:12px;
  font-weight:800;
}

.cms-page-edit-inline {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 9px;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  text-transform: none;
  letter-spacing: 0;
  border: 0;
  border-radius: 999px;
  background: var(--teal);
  box-shadow: 0 10px 22px rgba(33, 102, 17, .16);
}

@media (max-width: 767.98px) {
  .cms-page-title-row {
    align-items:stretch;
  }

  .cms-page-share {
    width:100%;
    margin-left:0;
  }

  .cms-page-share-trigger {
    width:100%;
  }

  .cms-page-share-panel {
    left:0;
    right:auto;
    width:min(100%, 420px);
  }
}

@media (max-width: 479.98px) {
  .cms-page-share-panel {
    grid-template-columns:1fr;
  }
}

.cms-page-edit-inline:hover {
  background: var(--orange);
}

html[data-navbar-transparent="true"] .site-header:not(.scrolled) {
  background:rgba(var(--navbar-bg-rgb), var(--navbar-transparent-opacity));
  border-bottom-color:rgba(31,109,103,.1);
  box-shadow:none;
  backdrop-filter:none;
}

html[data-navbar-transparent="true"] .top-strip:not(.scrolled) {
  background:rgba(var(--top-strip-bg-rgb), var(--top-strip-transparent-opacity));
  border-bottom:1px solid rgba(31,109,103,.1);
  box-shadow:none;
  backdrop-filter:none;
}

html[data-navbar-transparent="true"] .site-header:not(.scrolled) .nav-link::after {
  background:var(--teal);
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .top-strip:not(.scrolled),
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) {
  border-bottom-color:rgba(255,255,255,.14);
  box-shadow:none;
  backdrop-filter:none;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .top-strip:not(.scrolled) {
  background:transparent;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) {
  background:transparent;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .top-strip:not(.scrolled),
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .top-strip:not(.scrolled) a,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .top-strip:not(.scrolled) i,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .navbar-brand strong,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .navbar-brand small,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .nav-link {
  color:rgba(255,255,255,.92);
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .navbar .nav-link:hover,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .navbar .nav-link:focus,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-behind-chrome:first-child) .site-header:not(.scrolled) .navbar .nav-link.show {
  color:#fff;
  background:rgba(255,255,255,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .top-strip:not(.scrolled),
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) {
  border-bottom-color:rgba(255,255,255,.14);
  box-shadow:none;
  backdrop-filter:none;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .top-strip:not(.scrolled) {
  background:transparent;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) {
  background:transparent;
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .top-strip:not(.scrolled),
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .top-strip:not(.scrolled) a,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .top-strip:not(.scrolled) i,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .navbar-brand strong,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .navbar-brand small,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .nav-link {
  color:rgba(255,255,255,.92);
}

body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .navbar .nav-link:hover,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .navbar .nav-link:focus,
body:has(.page-blocks-grid > .cms-block-opening-hero.cms-opening-hero-height-full:first-child) .site-header:not(.scrolled) .navbar .nav-link.show {
  color:#fff;
  background:rgba(255,255,255,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}

@media (max-width:1199px) {
  body.mobile-nav-open .top-strip:not(.scrolled) {
    background:rgba(var(--top-strip-bg-rgb), var(--top-strip-solid-opacity)) !important;
    border-bottom:0 !important;
    box-shadow:none !important;
    backdrop-filter:blur(12px) !important;
  }

  body.mobile-nav-open .site-header:not(.scrolled) {
    background:rgba(var(--navbar-bg-rgb), var(--navbar-solid-opacity)) !important;
    border-bottom:1px solid var(--border) !important;
    box-shadow:0 10px 30px rgba(31,41,48,.08) !important;
    backdrop-filter:blur(12px) !important;
  }

  body.mobile-nav-open .site-header:not(.scrolled) .navbar-brand strong,
  body.mobile-nav-open .site-header:not(.scrolled) .navbar-brand small,
  body.mobile-nav-open .site-header:not(.scrolled) .nav-link {
    color:var(--ink-2) !important;
  }

  body.mobile-nav-open .site-header:not(.scrolled) .navbar-brand strong {
    color:var(--teal-dim) !important;
  }

  body.mobile-nav-open .site-header:not(.scrolled) .navbar-collapse .nav-link.active {
    color:#fff !important;
  }
}

@media (max-width: 991.98px) {
  .cms-opening-hero,
  .cms-opening-hero-height-compact .cms-opening-hero {
    min-height:clamp(420px, 68vh, 620px);
  }

  .cms-opening-hero-height-full .cms-opening-hero {
    min-height:100vh;
    min-height:100dvh;
  }

  .cms-opening-hero-content {
    width:min(100% - 28px, 720px);
    padding:58px 0;
  }

  .cms-opening-hero-content h1,
  .cms-opening-hero-content h2 {
    font-size:clamp(30px, 9vw, 52px);
  }

  .cms-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .cms-news-grid {
    grid-template-columns: 1fr;
  }
}

.cms-quick-contact {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1200;
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  gap: 1px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .24);
}

.cms-back-to-top {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1210;
  border: 0;
  border-radius: 8px;
  width: 58px;
  height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: rgba(255, 255, 255, .44);
  color: rgba(10, 14, 20, .92);
  font: inherit;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .18);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(16px) scale(.96);
  transition: opacity .28s ease, transform .28s ease, box-shadow .28s ease, background .28s ease, color .28s ease;
}

.cms-back-to-top::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .02));
  pointer-events: none;
}

.cms-back-to-top > * {
  position: relative;
  z-index: 1;
}

.cms-back-to-top i {
  font-size: 34px;
  line-height: 1;
  animation: cmsBackToTopFloat 1.8s ease-in-out infinite;
}

.cms-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.cms-back-to-top:hover,
.cms-back-to-top:focus {
  background: rgba(255, 255, 255, .54);
  box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
  transform: translateY(-2px);
  color: rgba(10, 14, 20, 1);
}

.cms-back-to-top + .cms-quick-contact {
  bottom: 94px;
}

@keyframes cmsBackToTopFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

.cms-quick-contact[data-position="left"] {
  left: 18px;
  right: auto;
}

.cms-quick-contact-link {
  width: 70px;
  height: 70px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  font-size: 32px;
  transition: transform .2s ease, filter .2s ease;
}

.cms-quick-contact-link[hidden] {
  display: none !important;
}

.cms-quick-contact-link.is-phone {
  background: #4f88db;
}

.cms-quick-contact-link.is-whatsapp {
  background: #34c759;
}

.cms-quick-contact-link:hover,
.cms-quick-contact-link:focus {
  color: #fff;
  filter: brightness(.96);
  transform: translateY(-1px);
}

.cms-search-box-form {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px;
  width: 100%;
}

.cms-search-box-input-wrap {
  flex: 999 1 320px;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: min(100%, 260px);
  min-height: 56px;
  padding: 0 18px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
}

.cms-search-box-input-wrap i {
  flex: 0 0 auto;
  color: var(--teal-dim);
  font-size: 18px;
}

.cms-search-box-input-wrap input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  color: #1d2a2d;
  border: 0;
  outline: none;
  background: transparent;
  font: 500 16px var(--font);
}

.cms-search-box-input-wrap input::placeholder {
  color: #7b8689;
}

.cms-search-box-submit {
  flex: 1 0 118px;
  max-width: 100%;
  min-width: 118px;
  min-height: 50px;
  padding: 0 22px;
  color: #fff;
  border: 0;
  border-radius: 13px;
  background: linear-gradient(135deg, var(--teal), var(--teal-dim));
  font: 700 15px var(--font);
  box-shadow: 0 14px 28px rgba(0, 0, 0, .14);
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), filter .25s var(--ease);
}

.cms-search-box-submit:hover,
.cms-search-box-submit:focus {
  filter: brightness(1.04);
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, .18);
}

.cms-search-page {
  padding-top: 28px;
  padding-bottom: 54px;
}

.cms-search-page-head {
  margin-bottom: 18px;
}

.cms-search-page-head p {
  margin: 10px 0 0;
  color: var(--ink-2);
  font-size: 16px;
}

.cms-search-page-form {
  margin-bottom: 20px;
}

.cms-search-summary {
  margin-bottom: 18px;
  color: var(--ink-2);
  font-size: 14px;
  font-weight: 700;
}

.cms-search-empty {
  padding: 22px 24px;
  color: var(--ink-2);
  border: 1px solid var(--border);
  border-radius: 16px;
  background: color-mix(in srgb, var(--bg-alt) 88%, #fff 12%);
  font-size: 15px;
}

.cms-search-results {
  display: grid;
  gap: 16px;
}

.cms-search-result-card {
  position: relative;
  isolation: isolate;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: color-mix(in srgb, var(--bg-alt) 90%, #fff 10%);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .08);
  overflow: hidden;
}

.cms-search-result-link {
  display: grid;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
  align-items: stretch;
  color: inherit;
  overflow: hidden;
}

.cms-search-result-link > * {
  min-width: 0;
}

.cms-search-result-image {
  display: block;
  position: relative;
  z-index: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: rgba(255, 255, 255, .08);
}

.cms-search-result-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cms-search-result-body {
  display: grid;
  position: relative;
  z-index: 1;
  align-content: center;
  gap: 10px;
  padding: 22px 24px;
  background: color-mix(in srgb, var(--bg-alt) 94%, #fff 6%);
}

.cms-search-result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  color: var(--ink-2);
  font-size: 12px;
  font-weight: 700;
}

.cms-search-result-meta b {
  color: var(--teal-dim);
}

.cms-search-result-body strong {
  color: var(--ink);
  font-size: 24px;
  line-height: 1.2;
}

.cms-search-result-body p {
  margin: 0;
  color: var(--ink-2);
  font-size: 15px;
  line-height: 1.6;
}

.cms-search-result-body em {
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
}

@media (max-width: 767.98px) {
  .cms-search-box-form {
    flex-direction: column;
    gap: 10px;
  }

  .cms-search-box-input-wrap {
    flex: 0 0 auto;
    min-height: 48px;
    padding: 0 14px;
    border-radius: 12px;
  }

  .cms-search-box-input-wrap i {
    font-size: 16px;
  }

  .cms-search-box-input-wrap input {
    font-size: 14px;
  }

  .cms-search-box-submit {
    flex: 0 0 auto;
    align-self: flex-start;
    width: auto;
    min-width: 92px;
    min-height: 42px;
    padding: 0 20px;
    border-radius: 12px;
    font-size: 14px;
  }

  .cms-search-result-link {
    grid-template-columns: 1fr;
  }

  .cms-search-result-body strong {
    font-size: 20px;
  }
}

@media (max-width: 575.98px) {
  .cms-search-box-input-wrap {
    min-height: 44px;
    padding: 0 12px;
  }

  .cms-search-box-input-wrap input {
    font-size: 13px;
  }

  .cms-search-box-submit {
    min-width: 88px;
    min-height: 38px;
    padding: 0 18px;
    font-size: 13px;
  }

  .cms-back-to-top {
    right: 12px;
    bottom: 12px;
    width: 52px;
    height: 52px;
  }

  .cms-back-to-top + .cms-quick-contact {
    bottom: 86px;
  }

  .navbar-brand small {
    max-width: 180px;
    display: block;
    margin-top: 4px;
    font-size: calc(10px * var(--type-scale)) !important;
    line-height: 1.18;
  }

  .cms-quick-contact {
    right: 12px;
    bottom: 12px;
  }

  .cms-quick-contact[data-position="left"] {
    left: 12px;
  }

  .cms-quick-contact-link {
    width: 62px;
    height: 62px;
    font-size: 28px;
  }
}
