/*
Theme Name: Kea Parish Council
Theme URI: https://kea.buildwithmihi.co.uk/
Author: MiHi Digital
Description: Bespoke lightweight WordPress theme for Kea Parish Council.
Version: 1.57.23
Text Domain: kea-parish-council
*/

:root{
  --kea-blue:#1676b8;
  --kea-blue-hover:#0a4770;
  --kea-rich-blue:#0b4f7c;
  --kea-button-blue:#0a456c;
  --kea-button-blue-hover:#073754;
  --kea-deep-blue:#082f4f;
  --kea-ink:#243946;
  --kea-muted:#6f7f87;
  --kea-cream:#f4f1e9;
  --kea-cream-soft:#faf9f5;
  --kea-pale-blue:#edf5f8;
  --kea-pale-blue-2:#e5f0f5;
  --kea-line:#dce6eb;
  --kea-white:#fff;
  --kea-serif:"Libre Caslon Text",Georgia,"Times New Roman",serif;
  --kea-sans:"Miranda Sans","Helvetica Neue",Arial,sans-serif;
  --kea-radius:10px;
  --kea-shadow:0 16px 42px rgba(8,47,79,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;background:var(--kea-cream-soft);color:var(--kea-ink);font-family:var(--kea-sans);font-size:17px;line-height:1.68}
a{color:inherit}
img{max-width:100%;height:auto}
button,input,textarea,select{font:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.kea-shell{width:min(1250px,calc(100% - 64px));margin-inline:auto}
.kea-skip-link{position:fixed;left:14px;top:14px;z-index:99999;padding:11px 16px;background:var(--kea-deep-blue);color:#fff;text-decoration:none;transform:translateY(-180%)}
.kea-skip-link:focus{transform:none}

/* Header - mirrors the Unity header proportions, reskinned for Kea */
.kea-main-header{
  position:sticky;
  top:0;
  z-index:1500;
  background:#fff;
  border-bottom:1px solid rgba(8,47,79,.08);
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  transition:box-shadow .25s ease,background-color .25s ease,border-color .25s ease;
}
.kea-main-header.is-scrolled{
  background:#fff;
  border-bottom-color:rgba(8,47,79,.11);
  box-shadow:0 12px 34px rgba(8,47,79,.055);
}
.admin-bar .kea-main-header{top:32px}

.kea-main-header__inner{
  width:min(1360px,calc(100% - 56px));
  min-height:110px;
  display:grid;
  grid-template-columns:190px minmax(0,1fr) 190px;
  gap:24px;
  align-items:center;
}

.kea-logo{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:136px;
  line-height:0;
  text-decoration:none;
}
.kea-logo__image{
  display:block;
  width:100%;
  height:auto;
}

.kea-nav{
  justify-self:center;
  margin:0;
}
.kea-menu,.kea-menu ul{list-style:none;margin:0;padding:0}
.kea-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(22px,2vw,34px);
}
.kea-menu>li{position:relative;display:flex;align-items:center;height:110px}
.kea-menu>li>a{
  position:relative;
  display:flex;
  align-items:center;
  height:110px;
  padding:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-sans);
  font-size:16px;
  font-weight:400;
  line-height:1;
  letter-spacing:-.015em;
  text-transform:none;
  text-decoration:none;
  white-space:nowrap;
  transition:color .2s ease;
}
.kea-menu>li>a:hover,
.kea-menu>li>a:focus-visible,
.kea-menu>li.current-menu-item>a,
.kea-menu>li.current-menu-ancestor>a{
  color:var(--kea-rich-blue);
}
.kea-menu>.menu-item-has-children>a{gap:9px}
.kea-menu>.menu-item-has-children>a:after{
  content:"";
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
}

/* Dropdowns: softer than Unity, with a Kea-blue edge on interaction. */
.kea-menu .sub-menu{
  position:absolute;
  left:-22px;
  top:100%;
  min-width:280px;
  padding:7px 0;
  background:#fff;
  border:1px solid rgba(8,47,79,.07);
  border-top:0;
  border-radius:0 0 9px 9px;
  box-shadow:0 16px 32px rgba(8,47,79,.075);
  opacity:0;
  visibility:hidden;
  transform:translateY(0);
  transition:opacity .18s ease,visibility .18s ease;
}
.kea-menu li:hover>.sub-menu,
.kea-menu li:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.kea-menu .sub-menu li+li{margin-top:0}
.kea-menu .sub-menu a{
  display:block;
  min-height:0;
  padding:13px 18px;
  border:0;
  border-radius:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-sans);
  font-size:15px;
  font-weight:400;
  line-height:1.25;
  letter-spacing:-.005em;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease,padding-left .18s ease;
}
.kea-menu .sub-menu li+li a{border-top:1px solid rgba(8,47,79,.055)}
.kea-menu .sub-menu a:after{content:none!important;display:none!important}
.kea-menu .sub-menu a:hover,
.kea-menu .sub-menu a:focus-visible{
  padding-left:22px;
  background:#eef5f9;
  color:var(--kea-rich-blue);
}
.kea-menu .sub-menu .sub-menu{
  top:-8px;
  left:calc(100% + 10px);
}

.kea-header-tools{
  justify-self:end;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
}
.kea-search-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:52px;
  padding:0 24px;
  border:1px solid var(--kea-button-blue);
  border-radius:999px;
  background:var(--kea-button-blue);
  color:#fff;
  font-family:var(--kea-sans);
  font-size:14px;
  font-weight:400;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:none;
  transition:background-color .2s ease,border-color .2s ease;
}
.kea-search-toggle:hover,
.kea-search-toggle:focus-visible{
  background:var(--kea-button-blue-hover);
  border-color:var(--kea-button-blue-hover);
  color:#fff;
  transform:none;
  box-shadow:none;
}
.kea-search-toggle svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
}
.kea-search-toggle--mobile{display:none;width:43px;min-height:43px;padding:0}
.kea-menu-toggle{display:none;align-items:center;justify-content:center;width:43px;height:43px;padding:0;border:0;border-radius:0;background:transparent;color:var(--kea-deep-blue);cursor:pointer;flex-direction:column;gap:6px}
.kea-menu-toggle:hover{background:transparent;color:var(--kea-rich-blue)}
.kea-menu-toggle span{display:block;width:24px;height:1.5px;background:currentColor;transition:.2s ease}
.kea-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.kea-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.kea-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:1240px) and (min-width:1101px){
  .kea-main-header__inner{
    grid-template-columns:150px minmax(0,1fr) 174px;
    gap:18px;
  }
  .kea-logo{width:126px}
  .kea-menu{gap:17px}
  .kea-menu>li>a{font-size:14px}
  .kea-search-toggle--desktop{min-height:50px;padding-inline:18px;font-size:13px}
}

/* Search modal */
body.kea-search-open{overflow:hidden}
.kea-search-panel{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:28px}
.kea-search-panel[hidden]{display:none}
.kea-search-panel__backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(8,47,79,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer}
.kea-search-panel__dialog{position:relative;z-index:1;width:min(1040px,100%);padding:62px 64px 56px;background:#fff;border:1px solid rgba(8,47,79,.07);border-radius:8px;box-shadow:0 24px 68px rgba(8,47,79,.16)}
.kea-search-close{position:absolute;top:18px;right:18px;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:var(--kea-pale-blue);color:var(--kea-deep-blue);cursor:pointer;box-shadow:none;transition:background-color .18s ease,color .18s ease}
.kea-search-close:hover,.kea-search-close:focus-visible{background:#dcebf2;color:var(--kea-rich-blue)}
.kea-search-close span{position:absolute;left:12px;top:20px;width:18px;height:2px;background:currentColor}
.kea-search-close span:first-child{transform:rotate(45deg)}
.kea-search-close span:last-child{transform:rotate(-45deg)}
/* Search kicker inherits the shared Kea kicker treatment below. */
.kea-search-panel h2{max-width:none;margin:0 0 34px;color:var(--kea-deep-blue);font-family:var(--kea-serif);font-size:clamp(46px,4.2vw,60px);font-weight:400;line-height:1.04;letter-spacing:-.035em;white-space:nowrap}
.kea-search-form{display:flex;width:100%;margin:0;padding:5px;background:#fff;border:1px solid #bfd0da;border-radius:8px;overflow:hidden;box-shadow:none;transition:border-color .18s ease,box-shadow .18s ease}
.kea-search-form:focus-within{border-color:#9ab8c8;box-shadow:0 0 0 2px rgba(11,79,124,.025)}
.kea-search-form input{flex:1;min-width:0;height:56px;padding:0 17px;border:0;outline:0;background:#fff;color:var(--kea-deep-blue);font-family:var(--kea-sans);font-size:15px;font-weight:400}
.kea-search-form input::placeholder{color:#7a8790}
.kea-search-form button{min-width:124px;margin:0;border:0;border-radius:5px;background:var(--kea-button-blue);color:#fff;font-family:var(--kea-sans);font-size:13px;font-weight:400;cursor:pointer;box-shadow:none;transition:background-color .18s ease}
.kea-search-form button:hover,.kea-search-form button:focus-visible{background:var(--kea-button-blue-hover)}
.kea-search-form button span{margin-left:11px}
.kea-search-popular{margin-top:34px;padding-top:27px;border-top:1px solid var(--kea-line)}
.kea-search-popular__label{display:block;margin-bottom:14px;color:var(--kea-deep-blue);font-family:var(--kea-serif);font-size:18px;font-weight:400;line-height:1.2;letter-spacing:-.01em;text-transform:none}
.kea-search-popular__links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:26px;row-gap:0}
.kea-search-popular__links a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:0 2px;border:0;border-bottom:1px solid var(--kea-line);border-radius:0;background:transparent;color:var(--kea-deep-blue);font-family:var(--kea-sans);font-size:14px;font-weight:400;line-height:1.25;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-search-popular__links a:hover,.kea-search-popular__links a:focus-visible{background:transparent;border-color:#b7ceda;color:var(--kea-rich-blue)}
.kea-search-popular__links a span:last-child{font-size:15px;color:var(--kea-rich-blue)}


/* Shared typography */
.kea-eyebrow,
.kea-search-panel__eyebrow,
.kea-hero-quick__kicker{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 14px;
  color:var(--kea-rich-blue);
  font-family:var(--kea-sans);
  font-size:10px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kea-eyebrow::before,
.kea-search-panel__eyebrow::before,
.kea-hero-quick__kicker::before::before{
  content:"";
  flex:0 0 28px;
  width:28px;
  height:1px;
  background:currentColor;
  opacity:.55;
}
.kea-section-heading--centered .kea-eyebrow{justify-content:center}
.kea-display{font-family:var(--kea-serif);font-weight:400;letter-spacing:-.035em;line-height:1.06;color:var(--kea-deep-blue)}

/* All solid blue calls-to-action use the signed-off header button treatment. */
.kea-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:52px;
  padding:0 24px;
  border:1px solid var(--kea-button-blue);
  border-radius:999px;
  background:var(--kea-button-blue);
  color:#fff;
  font-family:var(--kea-sans);
  font-size:14px;
  font-weight:400;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:none;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease;
}
.kea-button:hover,
.kea-button:focus-visible:hover:focus-visible{
  background:var(--kea-button-blue-hover);
  border-color:var(--kea-button-blue-hover);
  color:#fff;
  transform:none;
  box-shadow:none;
}
.kea-button--primary,
.kea-button--dark{background:var(--kea-button-blue);color:#fff}

/* Gutenberg/editor buttons use the same CTA language as the bespoke theme buttons.
   Standard editable pages use .kea-content-wrap (not .kea-prose), so target both. */
.kea-content-wrap .wp-block-buttons,
.kea-prose .wp-block-buttons{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:28px 0}
.kea-content-wrap .wp-block-button,
.kea-prose .wp-block-button{margin:0}
.kea-content-wrap .wp-block-button__link,
.kea-content-wrap .wp-element-button,
.kea-prose .wp-block-button__link,
.kea-prose .wp-element-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  min-height:52px!important;
  width:auto!important;
  padding:0 24px!important;
  border:1px solid var(--kea-button-blue)!important;
  border-radius:999px!important;
  background:var(--kea-button-blue)!important;
  color:#fff!important;
  font-family:var(--kea-sans)!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease!important;
}
.kea-content-wrap .wp-block-button__link::after,
.kea-content-wrap .wp-element-button::after,
.kea-prose .wp-block-button__link::after,
.kea-prose .wp-element-button::after{content:"→";font-size:1em;line-height:1}
.kea-content-wrap .wp-block-button__link:hover,
.kea-content-wrap .wp-block-button__link:focus-visible,
.kea-content-wrap .wp-element-button:hover,
.kea-content-wrap .wp-element-button:focus-visible,
.kea-prose .wp-block-button__link:hover,
.kea-prose .wp-block-button__link:focus-visible,
.kea-prose .wp-element-button:hover,
.kea-prose .wp-element-button:focus-visible{
  background:var(--kea-button-blue-hover)!important;
  border-color:var(--kea-button-blue-hover)!important;
  color:#fff!important;
  transform:none!important;
  box-shadow:none!important;
}
.kea-content-wrap .wp-block-button.is-style-outline .wp-block-button__link,
.kea-prose .wp-block-button.is-style-outline .wp-block-button__link{
  background:transparent!important;
  color:var(--kea-button-blue)!important;
  border-color:var(--kea-button-blue)!important;
}
.kea-content-wrap .wp-block-button.is-style-outline .wp-block-button__link:hover,
.kea-content-wrap .wp-block-button.is-style-outline .wp-block-button__link:focus-visible,
.kea-prose .wp-block-button.is-style-outline .wp-block-button__link:hover,
.kea-prose .wp-block-button.is-style-outline .wp-block-button__link:focus-visible{
  background:var(--kea-pale-blue)!important;
  color:var(--kea-button-blue-hover)!important;
  border-color:var(--kea-button-blue-hover)!important;
}
.kea-text-link{display:inline-flex;align-items:center;gap:14px;padding-bottom:4px;border-bottom:1px solid currentColor;color:var(--kea-deep-blue);font-size:12px;font-weight:700;text-decoration:none}
.kea-text-link:hover{color:var(--kea-blue)}

/* Homepage */
.kea-home{overflow:hidden;background:var(--kea-cream-soft)}
.kea-hero{padding:98px 0 104px;background:var(--kea-cream-soft)}
.kea-hero__layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:82px;align-items:center}
.kea-hero__content{text-align:left}
.kea-hero .kea-eyebrow{margin-bottom:18px}
.kea-hero h1{max-width:760px;margin:0 0 25px;font-size:clamp(54px,5.4vw,78px);color:var(--kea-deep-blue)}
.kea-hero__intro{max-width:630px;margin:0 0 31px;color:#526776;font-size:18px;line-height:1.62}
.kea-actions{display:flex;align-items:center;justify-content:flex-start;gap:24px;flex-wrap:wrap}

.kea-hero-quick{width:100%;max-width:430px;justify-self:end;padding:0;background:#fff;border:1px solid rgba(8,47,79,.08);border-radius:10px;box-shadow:0 18px 42px rgba(8,47,79,.07);overflow:hidden}
.kea-hero-quick__header{padding:19px 27px 18px;background:var(--kea-deep-blue)}
.kea-hero-quick__kicker{margin:0;color:#fff}
.kea-hero-quick__kicker::before{opacity:.48}
.kea-hero-quick__body{padding:24px 27px 15px;background:#fff}
.kea-hero-quick__featured{display:block;margin:0 0 8px;padding:18px 18px 17px;background:#edf5f9;border:1px solid #dceaf1;border-radius:6px;color:var(--kea-deep-blue);text-decoration:none;transition:background-color .16s ease,border-color .16s ease}
.kea-hero-quick__label{display:block;margin-bottom:7px;color:#647987;font-size:12.5px;font-weight:400}
.kea-hero-quick__date{display:block;font-family:var(--kea-serif);font-size:32px;font-weight:400;line-height:1.05;letter-spacing:-.025em;color:var(--kea-deep-blue)}
.kea-hero-quick__meeting-title{display:block;margin-top:8px;color:#536b79;font-size:14px;line-height:1.5}
.kea-hero-quick__meeting-actions{display:flex;align-items:center;gap:22px;margin-top:17px}.kea-hero-quick__meeting-actions a{display:inline-flex;align-items:center;gap:9px;padding-bottom:4px;border-bottom:1px solid #b8cdd8;color:var(--kea-rich-blue);font-size:12.5px;font-weight:500;text-decoration:none;transition:color .16s ease,border-color .16s ease}.kea-hero-quick__meeting-actions a:hover,.kea-hero-quick__meeting-actions a:focus-visible{color:var(--kea-blue-hover);border-bottom-color:var(--kea-blue-hover)}
.kea-hero-quick__links{display:grid}
.kea-hero-quick__links a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:67px;padding:12px 0;border-bottom:1px solid var(--kea-line);color:var(--kea-deep-blue);text-decoration:none;transition:color .16s ease,border-color .16s ease}
.kea-hero-quick__links a:last-child{border-bottom:0}
.kea-hero-quick__links a:hover,.kea-hero-quick__links a:focus-visible{color:var(--kea-rich-blue);border-color:#bfd1dc}
.kea-hero-quick__links strong{display:block;font-size:13.5px;font-weight:500;line-height:1.32}
.kea-hero-quick__links small{display:block;margin-top:4px;color:#768994;font-size:11.5px;font-weight:400;line-height:1.4}
.kea-hero-quick__links>a>span:last-child{flex:0 0 auto;color:var(--kea-rich-blue);font-size:14px}

.kea-signposts{padding:126px 0 122px;background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 88px,#f5f8fa 100%);border-top:0}
.kea-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}
.kea-section-heading h2{margin:0;font-size:clamp(42px,4vw,60px);color:var(--kea-deep-blue)}
.kea-section-heading>p,.kea-section-heading>div+p{max-width:370px;margin:0;color:var(--kea-muted)}
.kea-section-heading--centered{display:block;max-width:760px;margin:0 auto 48px;text-align:center}
.kea-section-heading--centered p{max-width:560px;margin:16px auto 0;font-size:16.5px;line-height:1.6;color:#647987}
.kea-signpost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.kea-signpost{position:relative;display:flex;flex-direction:column;min-height:300px;padding:34px 30px 30px;border:1px solid #d9e3e8;border-radius:8px;background:#fff;color:var(--kea-deep-blue);text-decoration:none;box-shadow:none;transition:border-color .18s ease,background-color .18s ease,color .18s ease}
.kea-signpost:nth-child(2),.kea-signpost:nth-child(3),.kea-signpost:nth-child(4),.kea-signpost:nth-child(5){background:#fff}
.kea-signpost:hover,.kea-signpost:focus-visible{transform:none;border-color:#b7ccd7;background:#fbfdfe;box-shadow:none}
.kea-signpost__number{display:flex;align-items:center;gap:11px;margin-bottom:52px;color:var(--kea-rich-blue);font-family:var(--kea-sans);font-size:10px;font-weight:500;line-height:1;letter-spacing:.14em}
.kea-signpost__number::after{content:"";width:28px;height:1px;background:currentColor;opacity:.38}
.kea-signpost h3{margin:0 0 12px;font-family:var(--kea-serif);font-size:29px;font-weight:400;line-height:1.08;letter-spacing:-.02em;color:var(--kea-deep-blue)}
.kea-signpost p{max-width:340px;margin:0 0 30px;color:#647987;font-size:16px;line-height:1.58}
.kea-signpost__link{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;margin-top:auto;padding-top:16px;border-top:1px solid #e1e8ec;color:var(--kea-deep-blue);font-family:var(--kea-sans);font-size:13px;font-weight:500;line-height:1.25}
.kea-signpost__link>span{flex:0 0 auto;color:var(--kea-rich-blue);font-size:15px}
.kea-signpost--cta{background:var(--kea-button-blue)!important;border-color:var(--kea-button-blue);color:#fff}
.kea-signpost--cta .kea-signpost__number{color:#c9e2f0}
.kea-signpost--cta .kea-signpost__number::after{background:currentColor;opacity:.42}
.kea-signpost--cta h3,.kea-signpost--cta .kea-signpost__link{color:#fff}
.kea-signpost--cta p{color:rgba(255,255,255,.78)}
.kea-signpost--cta .kea-signpost__link{border-top-color:rgba(255,255,255,.22)}
.kea-signpost--cta .kea-signpost__link>span{color:#fff}
.kea-signpost--cta:hover,.kea-signpost--cta:focus-visible{background:var(--kea-button-blue-hover)!important;border-color:var(--kea-button-blue-hover)}

.kea-meetings-home{padding:104px 0 112px;background:#f5f8fa;border-top:1px solid rgba(8,47,79,.10)}
.kea-meetings-home__grid{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);gap:34px;align-items:stretch}
.kea-meetings-home__intro{position:sticky;top:120px;min-height:432px;padding:44px 42px 40px;border-radius:8px;background:var(--kea-button-blue);display:flex;flex-direction:column;align-items:flex-start}
.kea-meetings-home__intro .kea-eyebrow{color:#d4e7f1}
.kea-meetings-home__intro h2{max-width:420px;margin:0 0 24px;font-size:clamp(43px,4vw,59px);line-height:1.05;color:#fff}
.kea-meetings-home__intro p{max-width:410px;margin:0 0 32px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.68}
.kea-meetings-home__intro .kea-text-link{margin-top:auto;color:#fff;border-bottom-color:rgba(255,255,255,.55);font-size:13px;font-weight:500}
.kea-meetings-home__intro .kea-text-link:hover{color:#fff;border-bottom-color:#fff}

.kea-meeting-stack{display:flex;flex-direction:column;gap:12px}
.kea-meeting-row{display:grid;grid-template-columns:124px minmax(0,1fr) minmax(128px,auto);gap:0;align-items:stretch;min-height:146px;padding:0;border:1px solid #d7e3e9;border-radius:8px;background:#fff;overflow:hidden;transition:border-color .18s ease,background-color .18s ease}
.kea-meeting-row:first-child{background:#fff}
.kea-meeting-row:hover,.kea-meeting-row:first-child:hover{border-color:#b7cdd9;background:#fff;box-shadow:none;transform:none}
.kea-meeting-row__meta{display:flex;align-items:center;justify-content:center;padding:22px 18px;background:var(--kea-button-blue);color:#fff}
.kea-meeting-row__date{display:flex;align-items:center;gap:10px;color:#fff;font-family:var(--kea-sans);line-height:1}
.kea-meeting-row__day{font-family:var(--kea-serif);font-size:42px;font-weight:400;line-height:.9;letter-spacing:-.035em}
.kea-meeting-row__month-year{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.kea-meeting-row__month{font-size:15px;font-weight:700;line-height:1;letter-spacing:.10em;text-transform:uppercase;color:#fff}.kea-meeting-row__year{font-size:10px;font-weight:500;line-height:1;letter-spacing:.05em;color:rgba(255,255,255,.82)}
.kea-meeting-row__content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:24px 28px}
.kea-meeting-row__label{color:var(--kea-rich-blue);font-size:9.5px;font-weight:600;line-height:1.25;letter-spacing:.14em;text-transform:uppercase}
.kea-meeting-row h3{margin:0;padding-top:5px;font-family:var(--kea-serif);font-size:18px;font-weight:400;line-height:1.18;color:var(--kea-deep-blue);max-width:34ch}
.kea-meeting-row__actions{align-self:center;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:12px;padding:20px 28px 20px 12px}
.kea-meeting-row__action{display:inline-flex;align-items:center;gap:10px;margin:0;padding-bottom:5px;border-bottom:1px solid #b6cad5;color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap;transition:color .18s ease,border-color .18s ease}
.kea-meeting-row__action:hover{color:var(--kea-rich-blue);border-bottom-color:var(--kea-rich-blue)}

.kea-news-home{padding:124px 0 118px;background:linear-gradient(to bottom,#f5f8fa 0,#f4f1e9 150px,var(--kea-cream) 150px,var(--kea-cream) 100%);border-top:0}
.kea-news-home .kea-section-heading{margin-bottom:48px}
.kea-news-home .kea-section-heading h2{max-width:700px}
.kea-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kea-news-card{position:relative;min-height:322px;padding:34px 32px 30px;background:rgba(255,255,255,.88);border:1px solid rgba(8,47,79,.12);border-radius:8px;display:flex;flex-direction:column;box-shadow:none;transition:border-color .18s ease,background-color .18s ease}
.kea-news-card:hover{border-color:rgba(11,79,124,.28);background:#fff}
.kea-news-card__date{display:flex;align-items:center;gap:10px;margin-bottom:36px;color:var(--kea-rich-blue);font-size:10.5px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.kea-news-card__date::before{content:"";width:26px;height:1px;background:currentColor;opacity:.48}
.kea-news-card h3{margin:0 0 16px;font-family:var(--kea-serif);font-size:30px;font-weight:400;line-height:1.08;letter-spacing:-.018em;color:var(--kea-deep-blue)}
.kea-news-card h3 a{color:inherit;text-decoration:none}
.kea-news-card p{max-width:38ch;margin:0 0 30px;color:#647987;font-size:16.5px;line-height:1.62}
.kea-news-card__link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:16px;border-top:1px solid rgba(8,47,79,.13);color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-news-card__link:hover{color:var(--kea-rich-blue);border-top-color:rgba(11,79,124,.38)}

/* Interior pages */
.kea-page-hero{padding:96px 0 88px;background:var(--kea-cream-soft);border-bottom:1px solid rgba(8,47,79,.06)}
.kea-page-hero__inner{max-width:980px}
.kea-breadcrumbs{margin:0 0 34px;font-family:var(--kea-sans);font-size:13px;font-weight:400;line-height:1.4;color:#6a7d89}
.kea-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.kea-breadcrumbs li{display:flex;align-items:center;gap:8px;margin:0}
.kea-breadcrumbs li+li:before{content:"/";color:#a8b5bd}
.kea-breadcrumbs a{color:var(--kea-rich-blue);text-decoration:none}
.kea-breadcrumbs a:hover,.kea-breadcrumbs a:focus-visible{color:var(--kea-deep-blue)}
.kea-page-hero h1{max-width:900px;margin:0;font-family:var(--kea-serif);font-size:clamp(42px,4.1vw,58px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:var(--kea-deep-blue)}
.kea-page-content{padding:72px 0 105px;background:#fff}
.kea-content-wrap{max-width:900px}
.kea-content-wrap h2,.kea-content-wrap h3{font-family:var(--kea-serif);font-weight:400;color:var(--kea-deep-blue)}
.kea-content-wrap h2{font-size:38px}.kea-content-wrap h3{font-size:28px}
.kea-content-wrap a{color:var(--kea-blue)}

/* Search/archive */
.kea-listing{padding:75px 0 100px;background:#fff}
.kea-listing-grid{display:grid;gap:14px}
.kea-listing-card{padding:24px;border:1px solid var(--kea-line);background:var(--kea-cream-soft)}
.kea-listing-card h2{margin:0 0 7px;font-family:var(--kea-serif);font-size:28px;font-weight:400;color:var(--kea-deep-blue)}
.kea-listing-card h2 a{text-decoration:none}
.kea-listing-card p{margin:0;color:var(--kea-muted)}

/* Footer */
.kea-footer{color:#fff}
.kea-footer-main{padding:42px 0 22px;background:var(--kea-deep-blue)}
.kea-footer__primary{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:center;gap:56px;padding-bottom:34px}
.kea-footer__brand-link{display:inline-flex;flex-direction:column;align-items:flex-start;color:#fff;text-decoration:none}
.kea-footer__brand img{display:block;width:138px;max-height:62px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);opacity:.98}
.kea-footer__wordmark{font-family:var(--kea-serif);font-size:34px;font-weight:400;line-height:.9;letter-spacing:-.03em;color:#fff}
.kea-footer__wordmark-sub{margin-top:7px;font-family:var(--kea-sans);font-size:8.5px;font-weight:500;line-height:1;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.kea-footer__nav{display:flex;align-items:center;justify-content:flex-end;gap:9px 28px;flex-wrap:wrap}
.kea-footer__nav a{position:relative;display:inline-flex;align-items:center;min-height:34px;color:rgba(255,255,255,.78);font-size:13px;font-weight:400;line-height:1.35;text-decoration:none;transition:color .18s ease}
.kea-footer__nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:rgba(255,255,255,.38);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.kea-footer__nav a:hover,.kea-footer__nav a:focus-visible{color:#fff}
.kea-footer__nav a:hover::after,.kea-footer__nav a:focus-visible::after{transform:scaleX(1)}
.kea-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.46);font-size:11px}
.kea-footer__bottom-links{display:flex;gap:20px;flex-wrap:wrap}
.kea-footer__bottom a{color:rgba(255,255,255,.6);font-size:11px;text-decoration:none;transition:color .18s ease}
.kea-footer__bottom a:hover,.kea-footer__bottom a:focus-visible{color:#fff}

/* Responsive */

/* Desktop dropdowns. */
.kea-submenu-toggle{display:none!important}
.kea-mobile-menu-overlay{display:none}

@media (min-width:1101px){
  .kea-nav--desktop{display:block}
  .kea-menu .sub-menu{
    top:100%;
    border:1px solid rgba(8,47,79,.065);
    border-top:0;
    border-radius:0 0 7px 7px;
    box-shadow:0 18px 38px rgba(8,47,79,.07);
  }
  .kea-menu .sub-menu a:hover,
  .kea-menu .sub-menu a:focus-visible{
    padding-left:18px;
    background:#f4f8fb;
    color:var(--kea-rich-blue);
  }
}

@media (max-width:1100px){
  body.kea-menu-open{overflow:hidden!important}

  .kea-main-header__inner{
    width:calc(100% - 56px);
    min-height:88px;
    grid-template-columns:155px 1fr auto;
    gap:20px;
  }
  .kea-logo{width:112px}

  .kea-nav--desktop{display:none!important}
  .kea-search-toggle--desktop{display:none!important}
  .kea-search-toggle--mobile,
  .kea-menu-toggle{display:flex}

  .kea-header-tools{
    grid-column:3;
    gap:20px;
  }
  .kea-search-toggle--mobile{
    width:44px;
    min-height:44px;
    padding:0;
  }
  .kea-menu-toggle{
    width:44px;
    height:44px;
    gap:6px;
    border-radius:0;
    background:transparent;
  }
  .kea-menu-toggle span{
    width:26px;
    height:3px;
    border-radius:3px;
  }

  /* Separate full-screen Unity-style mobile navigation. */
  .kea-mobile-menu-overlay{
    position:fixed!important;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:2147483000!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column;
    background:#fff!important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .14s ease,visibility .14s ease;
    isolation:isolate;
  }
  .kea-mobile-menu-overlay[hidden]{display:none!important}
  .kea-mobile-menu-overlay.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  /* Keep the open menu header on exactly the same grid as the closed header. */
  .kea-mobile-menu-overlay__topbar{
    flex:0 0 auto;
    min-height:82px;
    padding:0 28px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    background:#fff;
    border-bottom:1px solid rgba(8,47,79,.08);
  }
  .kea-mobile-menu-overlay__brand{
    width:112px;
    flex:0 0 auto;
  }
  .kea-mobile-menu-overlay__actions{
    display:flex;
    align-items:center;
    gap:20px;
  }
  .kea-mobile-menu-search,
  .kea-mobile-menu-close{
    width:44px;
    height:44px;
    padding:0;
    border:0;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
  }
  .kea-mobile-menu-search{
    background:var(--kea-rich-blue);
    color:#fff;
  }
  .kea-mobile-menu-search svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
  }
  .kea-mobile-menu-close{
    position:relative;
    background:#f1f6f9;
    color:var(--kea-rich-blue);
  }
  .kea-mobile-menu-close span{
    position:absolute;
    width:22px;
    height:2.5px;
    border-radius:2px;
    background:currentColor;
  }
  .kea-mobile-menu-close span:first-child{transform:rotate(45deg)}
  .kea-mobile-menu-close span:last-child{transform:rotate(-45deg)}

  .kea-mobile-menu-overlay__scroll{
    flex:1 1 auto;
    min-height:0;
    width:100%;
    padding:18px 28px max(32px,env(safe-area-inset-bottom));
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    background:#fff;
  }
  .kea-mobile-menu-overlay__navigation,
  .kea-mobile-menu,
  .kea-mobile-menu ul{
    width:100%;
    margin:0;
    padding:0;
    list-style:none;
  }
  .kea-mobile-menu>li{
    width:100%;
    border-bottom:1px solid rgba(8,47,79,.10);
  }
  .kea-mobile-menu>li>a{
    position:relative;
    width:100%;
    min-height:72px;
    padding:22px 42px 22px 0;
    display:flex;
    align-items:center;
    color:var(--kea-deep-blue);
    background:transparent!important;
    font-family:var(--kea-serif);
    font-size:24px;
    font-weight:400;
    line-height:1.08;
    letter-spacing:-.025em;
    text-decoration:none;
  }
  .kea-mobile-menu>.menu-item-has-children>a:after{
    content:"";
    position:absolute;
    right:4px;
    top:50%;
    width:9px;
    height:9px;
    border-right:1.5px solid currentColor;
    border-bottom:1.5px solid currentColor;
    transform:translateY(-65%) rotate(45deg);
    transform-origin:center;
    transition:transform .16s ease;
  }
  .kea-mobile-menu>.menu-item-has-children.is-submenu-open>a:after{
    transform:translateY(-35%) rotate(225deg);
  }
  .kea-mobile-menu .sub-menu{
    display:none!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    margin:0 0 12px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .kea-mobile-menu .menu-item-has-children.is-submenu-open>.sub-menu{display:block!important}
  .kea-mobile-menu .sub-menu li{border:0}
  .kea-mobile-menu .sub-menu a{
    min-height:46px;
    padding:10px 0!important;
    display:flex!important;
    align-items:center;
    border:0!important;
    background:transparent!important;
    color:var(--kea-deep-blue)!important;
    font-family:var(--kea-sans)!important;
    font-size:15px!important;
    font-weight:400!important;
    line-height:1.35!important;
    text-decoration:none;
  }
  .kea-mobile-menu .sub-menu a:hover,
  .kea-mobile-menu .sub-menu a:focus-visible{color:var(--kea-rich-blue)!important}

  .admin-bar .kea-mobile-menu-overlay{top:32px!important}

  .kea-hero__layout{grid-template-columns:1fr;gap:44px}
  .kea-hero-quick{max-width:none;justify-self:stretch}
  .kea-meetings-home__grid{grid-template-columns:1fr;gap:18px}
  .kea-meetings-home__intro{position:static;min-height:auto;padding:38px 36px}
  .kea-meetings-home__intro .kea-text-link{margin-top:4px}
  .kea-footer__primary{grid-template-columns:1fr;gap:26px}
  .kea-footer__nav{justify-content:flex-start;max-width:760px}
}

@media (max-width:900px){
  .kea-signpost-grid{grid-template-columns:1fr 1fr}
  .kea-meeting-row{grid-template-columns:112px minmax(0,1fr);min-height:136px}
  .kea-meeting-row__actions{grid-column:2;justify-self:start;align-items:flex-start;padding:0 28px 22px;flex-direction:row;flex-wrap:wrap}
  .kea-news-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:782px){
  .admin-bar .kea-main-header{top:46px}
  .admin-bar .kea-mobile-menu-overlay{top:46px!important}
}

@media (max-width:760px){
  .kea-shell{width:calc(100% - 30px)}

  .kea-hero{padding:70px 0 76px}
  .kea-hero__layout{gap:38px}
  .kea-hero h1{font-size:43px;line-height:1.08}
  .kea-hero__intro{font-size:16px}
  .kea-actions{gap:12px;flex-wrap:nowrap}
  .kea-actions .kea-button{min-height:48px;padding:0 18px;font-size:12.5px;gap:10px}
  .kea-actions .kea-text-link{font-size:12.5px;gap:9px;white-space:nowrap}
  .kea-hero-quick{padding:0}
  .kea-hero-quick__header{padding:17px 22px 16px}
  .kea-hero-quick__body{padding:21px 22px 12px}
  .kea-hero-quick__date{font-size:29px}
  .kea-signposts,
  .kea-meetings-home,
  .kea-news-home{padding:76px 0}
  .kea-section-heading{display:block}
  .kea-section-heading .kea-text-link{margin-top:20px}
  .kea-signpost-grid,
  .kea-news-grid{grid-template-columns:1fr}
  .kea-signpost{min-height:255px}
  .kea-signpost__number{margin-bottom:34px}
  .kea-meetings-home__intro{padding:32px 28px 30px;border-radius:7px}
  .kea-meetings-home__intro h2{font-size:40px;line-height:1.08}
  .kea-meetings-home__intro p{font-size:16px}
  .kea-meeting-row{grid-template-columns:94px minmax(0,1fr);min-height:128px;border-radius:7px}
  .kea-meeting-row__meta{justify-content:center;align-items:center;padding:18px 12px}
  .kea-meeting-row__day{font-size:34px}
  .kea-meeting-row__month{font-size:13px}
  .kea-meeting-row__year{font-size:9px}
  .kea-meeting-row__content{padding:20px 18px 8px}
  .kea-meeting-row h3{font-size:17px;line-height:1.16}
  .kea-meeting-row__actions{grid-column:2;justify-self:start;align-items:flex-start;padding:0 20px 20px;flex-direction:row;flex-wrap:wrap}

  .kea-footer-main{padding-top:36px}
  .kea-footer__primary{grid-template-columns:1fr;gap:24px;padding-bottom:28px}
  .kea-footer__nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
  .kea-footer__nav a{min-height:40px;border-bottom:1px solid rgba(255,255,255,.12)}
  .kea-footer__nav a::after{display:none}
  .kea-footer__bottom{display:block}
  .kea-footer__bottom-links{margin-top:10px;flex-wrap:wrap}

  /* Closed and open mobile headers share exactly the same measurements. */
  .kea-main-header__inner{
    width:calc(100% - 30px);
    min-height:80px;
    grid-template-columns:125px 1fr auto;
    gap:10px;
  }
  .kea-logo{width:88px}
  .kea-header-tools{gap:20px}

  .kea-mobile-menu-overlay__topbar{
    min-height:80px;
    padding:0 15px;
  }
  .kea-mobile-menu-overlay__brand{
    width:88px;
  }
  .kea-mobile-menu-overlay__actions{gap:20px}
  .kea-mobile-menu-overlay__scroll{padding:12px 20px max(28px,env(safe-area-inset-bottom))}
  .kea-mobile-menu>li>a{min-height:64px;padding:18px 38px 18px 0;font-size:22px}

  .kea-search-panel{padding:12px}
  .kea-search-panel__dialog{max-height:calc(100dvh - 24px);overflow-y:auto;padding:46px 22px 30px;border-radius:5px}
  .kea-search-close{top:13px;right:13px}
  .kea-search-panel__eyebrow{margin-bottom:10px}
  .kea-search-panel h2{padding-right:38px;margin-bottom:23px;font-size:34px;line-height:1.12;white-space:normal}
  .kea-search-form{display:block;padding:4px}
  .kea-search-form input,
  .kea-search-form button{width:100%;height:54px}
  .kea-search-form button{min-width:0;margin-top:4px}
  .kea-search-popular{margin-top:26px;padding-top:22px}
  .kea-search-form input{font-size:16px}
  .kea-search-popular__links{grid-template-columns:1fr 1fr;column-gap:22px}
  .kea-search-popular__links a{min-height:51px;padding-inline:2px;font-size:13.5px}
  .kea-search-popular__links a:nth-child(n+5){display:none}

  .kea-page-hero{padding:68px 0 62px}
  .kea-breadcrumbs{margin-bottom:27px;font-size:12px}
  .kea-page-hero h1{font-size:clamp(38px,10.5vw,46px);line-height:1.07}
}

@media (max-width:430px){
  .kea-hero h1{font-size:39px;line-height:1.1}
  .kea-actions{gap:9px}
  .kea-actions .kea-button{padding:0 14px;font-size:11.5px}
  .kea-actions .kea-text-link{font-size:11.5px;gap:7px}
  .kea-hero-quick__featured{padding:16px}
  .kea-search-panel{padding:10px}
  .kea-search-panel__dialog{padding:43px 20px 26px}
  .kea-search-panel h2{font-size:31px}
  .kea-search-form input{height:52px;padding-inline:13px;font-size:16px}
  .kea-search-form button{height:50px;font-size:12px}
  .kea-search-popular__links{grid-template-columns:1fr}
}


/* v1.26 — news transition + meeting title spacing */
@media (max-width:700px){
  .kea-news-home{padding:82px 0 78px;background:linear-gradient(to bottom,#f5f8fa 0,#f4f1e9 90px,var(--kea-cream) 90px,var(--kea-cream) 100%)}
  .kea-news-home .kea-section-heading{margin-bottom:34px}
  .kea-news-card{min-height:0;padding:28px 24px 24px}
  .kea-news-card__date{margin-bottom:26px}
  .kea-news-card h3{font-size:27px}
  .kea-news-card p{font-size:16px}
}


/* =========================================================
   v1.29 — universal inner pages + Meetings & Agendas archive
   ========================================================= */

.kea-inner-page{background:#fff}
.kea-page-hero{padding:82px 0 78px;background:var(--kea-cream-soft);border-bottom:1px solid rgba(8,47,79,.07)}
.kea-page-hero__inner{max-width:1050px}
.kea-page-hero .kea-breadcrumbs{margin-bottom:34px}
.kea-page-hero .kea-eyebrow{margin-bottom:18px}
.kea-page-hero h1{max-width:940px;margin:0;font-size:clamp(46px,4.6vw,66px);line-height:1.08}
.kea-page-hero__intro{max-width:720px;margin:24px 0 0;color:#59707e;font-size:18px;line-height:1.65}

.kea-page-content{padding:82px 0 112px;background:#fff}
.kea-page-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(250px,320px);justify-content:space-between;gap:80px;align-items:start}
.kea-content-wrap{max-width:820px;color:#435b69;font-size:17px;line-height:1.78}
.kea-content-wrap>*:first-child{margin-top:0}
.kea-content-wrap>*:last-child{margin-bottom:0}
.kea-content-wrap p{margin:0 0 24px}
.kea-content-wrap h2,.kea-content-wrap h3,.kea-content-wrap h4{color:var(--kea-deep-blue);font-family:var(--kea-serif);font-weight:400;letter-spacing:-.025em}
.kea-content-wrap h2{margin:52px 0 20px;font-size:38px;line-height:1.15}
.kea-content-wrap h3{margin:30px 0 16px;font-size:28px;line-height:1.18}
.kea-content-wrap h4{margin:30px 0 12px;font-size:22px;line-height:1.2}
.kea-content-wrap ul,.kea-content-wrap ol{margin:0 0 28px;padding-left:24px}
.kea-content-wrap li{margin:8px 0}
.kea-content-wrap a{color:var(--kea-rich-blue);text-decoration-thickness:1px;text-underline-offset:3px}
.kea-content-wrap blockquote{margin:38px 0;padding:26px 30px;border-left:3px solid var(--kea-rich-blue);background:var(--kea-pale-blue);color:var(--kea-deep-blue);font-family:var(--kea-serif);font-size:24px;line-height:1.45}
.kea-content-wrap table{width:100%;border-collapse:collapse;margin:32px 0;font-size:15px}
.kea-content-wrap th,.kea-content-wrap td{padding:14px 12px;border-bottom:1px solid var(--kea-line);text-align:left;vertical-align:top}
.kea-content-wrap th{color:var(--kea-deep-blue);font-weight:600}

.kea-section-nav{position:sticky;top:126px;padding:25px 26px 14px;border:1px solid #d9e5ea;border-radius:8px;background:#f5f8fa}
.kea-section-nav__label{display:block;margin-bottom:12px;color:var(--kea-rich-blue);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.kea-section-nav nav{display:grid}
.kea-section-nav a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:51px;border-bottom:1px solid #d7e3e9;color:var(--kea-deep-blue);font-size:14px;font-weight:400;line-height:1.35;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-section-nav a:last-child{border-bottom:0}
.kea-section-nav a span:last-child{color:var(--kea-rich-blue)}
.kea-section-nav a:hover,.kea-section-nav a:focus-visible,.kea-section-nav a[aria-current="page"]{color:var(--kea-rich-blue);border-color:#b9ced9}
.kea-section-nav a[aria-current="page"]{font-weight:400}

/* Meetings archive */
.kea-page-hero--meetings{background:var(--kea-cream-soft);border-bottom:0}
.kea-meetings-archive{padding:72px 0 118px;border-top:1px solid #d8e4e9;background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 82px,var(--kea-pale-blue) 190px,var(--kea-pale-blue) 100%)}
.kea-meetings-archive>.kea-shell{max-width:1050px}
.kea-meetings-archive__intro{max-width:820px;margin:0 0 46px}
.kea-meetings-archive__heading{display:block;margin-bottom:28px;padding-top:0}
.kea-meetings-archive__heading .kea-eyebrow{margin:0}

.kea-meeting-years{display:grid;gap:16px}
.kea-meeting-year{border:1px solid #cfdee6;border-radius:8px;background:#fff;overflow:hidden}
.kea-meeting-year__summary{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:92px;padding:20px 28px;cursor:pointer;list-style:none;background:#fff;color:var(--kea-deep-blue);transition:background-color .18s ease,border-color .18s ease}
.kea-meeting-year__summary::-webkit-details-marker{display:none}
.kea-meeting-year__summary:hover,.kea-meeting-year__summary:focus-visible{background:#f9fcfd}
.kea-meeting-year[open]>.kea-meeting-year__summary{background:#f5fafc}
.kea-meeting-year__title{display:flex;align-items:center;gap:16px;min-width:0}
.kea-meeting-year__title strong{font-family:var(--kea-serif);font-size:36px;font-weight:400;line-height:1;letter-spacing:-.025em}
.kea-meeting-year__current{color:var(--kea-rich-blue);font-size:9px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.kea-meeting-year__meta{display:flex;align-items:center;gap:20px;color:#667b88;font-size:13px;white-space:nowrap}
.kea-meeting-year__chevron{position:relative;width:22px;height:22px;flex:0 0 22px}
.kea-meeting-year__chevron::before,.kea-meeting-year__chevron::after{content:"";position:absolute;left:4px;right:4px;top:10px;height:1px;background:var(--kea-rich-blue)}
.kea-meeting-year__chevron::after{transform:rotate(90deg);transition:transform .18s ease}
.kea-meeting-year[open] .kea-meeting-year__chevron::after{transform:rotate(0)}
.kea-meeting-year__content{border-top:1px solid #d8e5eb;background:#fff}

.kea-archive-meeting{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:stretch;min-height:116px;border-bottom:1px solid #e0e9ee;background:#fff}
.kea-archive-meeting:last-child{border-bottom:0}
.kea-archive-meeting__date{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 14px;background:var(--kea-button-blue);color:#fff;font-family:var(--kea-sans);line-height:1}
.kea-archive-meeting__day{font-family:var(--kea-serif);font-size:38px;font-weight:400;line-height:.9;letter-spacing:-.035em}
.kea-archive-meeting__month-year{display:flex;flex-direction:column;gap:3px;align-items:flex-start;font-size:13px;font-weight:700;line-height:1;letter-spacing:.1em}
.kea-archive-meeting__month-year small{font-size:9px;font-weight:500;line-height:1;letter-spacing:.04em;color:rgba(255,255,255,.82)}
.kea-archive-meeting__title{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:22px 30px}
.kea-archive-meeting__label{margin-bottom:9px;color:var(--kea-rich-blue);font-size:9px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.kea-archive-meeting h3{max-width:520px;margin:0;color:var(--kea-deep-blue);font-family:var(--kea-serif);font-size:20px;font-weight:400;line-height:1.18;letter-spacing:-.018em}
.kea-archive-meeting__actions{display:flex;align-items:center;justify-content:flex-end;gap:24px;padding:18px 28px 18px 12px}
.kea-archive-meeting__actions a{display:inline-flex;align-items:center;gap:10px;padding:8px 0 6px;border-bottom:1px solid #b8ccd7;color:var(--kea-deep-blue);font-size:13px;font-weight:400;line-height:1.2;text-decoration:none;white-space:nowrap;transition:color .18s ease,border-color .18s ease}
.kea-archive-meeting__actions a:hover,.kea-archive-meeting__actions a:focus-visible{color:var(--kea-rich-blue);border-color:var(--kea-rich-blue)}
.kea-archive-meeting__action-type{font-weight:400}

.kea-empty-state{padding:48px;border:1px solid #d8e4e9;border-radius:8px;background:#fff}
.kea-empty-state h2{margin:0 0 12px;color:var(--kea-deep-blue);font-family:var(--kea-serif);font-size:34px;font-weight:400}
.kea-empty-state p{margin:0;color:#627785}

/* Override the functionality plugin's legacy shortcode styling if the shortcode
   is used on another page. The dedicated Meetings page uses the template above. */
.kea-inner-page .mihi-meetings{gap:14px}
.kea-inner-page .mihi-meetings__year{border-color:#d6e2e8!important;border-radius:8px!important}
.kea-inner-page .mihi-meetings__year-number{color:var(--kea-deep-blue)!important;font-family:var(--kea-serif)!important}
.kea-inner-page .mihi-meetings__button{background:var(--kea-button-blue)!important;font-weight:400!important}

@media (max-width:980px){
  .kea-page-layout{grid-template-columns:1fr;gap:52px}
  .kea-section-nav{position:static;max-width:none}
  .kea-archive-meeting{grid-template-columns:100px minmax(0,1fr)}
  .kea-archive-meeting__actions{grid-column:2;justify-content:flex-start;padding:0 28px 22px}
}

@media (max-width:760px){
  .kea-page-hero{padding:58px 0 56px}
  .kea-page-hero .kea-breadcrumbs{margin-bottom:26px}
  .kea-page-hero h1{font-size:clamp(38px,10vw,46px);line-height:1.1}
  .kea-page-hero__intro{margin-top:19px;font-size:16px}
  .kea-page-content{padding:62px 0 82px}
  .kea-content-wrap{font-size:16px;line-height:1.72}
  .kea-content-wrap h2{font-size:32px}
  .kea-content-wrap h3{font-size:25px}
  .kea-section-nav{padding:22px 22px 12px}

  .kea-meetings-archive{padding:48px 0 82px;background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 58px,var(--kea-pale-blue) 130px,var(--kea-pale-blue) 100%)}
  .kea-meetings-archive__heading{display:block;margin-bottom:24px}
  .kea-meetings-archive__heading .kea-eyebrow{margin-bottom:0}
  .kea-meeting-years{gap:12px}
  .kea-meeting-year__summary{min-height:76px;padding:16px 18px}
  .kea-meeting-year__title{gap:11px}
  .kea-meeting-year__title strong{font-size:30px}
  .kea-meeting-year__meta{font-size:12px;gap:11px}
  .kea-archive-meeting{grid-template-columns:82px minmax(0,1fr);min-height:112px}
  .kea-archive-meeting__date{padding:14px 9px;gap:7px}
  .kea-archive-meeting__day{font-size:31px}
  .kea-archive-meeting__month-year{font-size:11px}
  .kea-archive-meeting__title{padding:18px 16px 8px}
  .kea-archive-meeting__label{margin-bottom:7px}
  .kea-archive-meeting h3{font-size:18px;line-height:1.18}
  .kea-archive-meeting__actions{grid-column:2;flex-wrap:wrap;justify-content:flex-start;gap:10px 22px;padding:5px 16px 18px}
  .kea-archive-meeting__actions a{font-size:13px}
}

@media (max-width:430px){
  .kea-meeting-year__summary{gap:12px}
  .kea-meeting-year__current{display:none}
  .kea-meeting-year__count{font-size:11px}
  .kea-meeting-year__meta{gap:8px}
  .kea-archive-meeting{grid-template-columns:74px minmax(0,1fr)}
  .kea-archive-meeting__day{font-size:28px}
  .kea-archive-meeting__month-year{font-size:10px}
  .kea-archive-meeting__title{padding-left:13px;padding-right:13px}
  .kea-archive-meeting__actions{padding-left:13px;padding-right:13px}
}


/* =========================================================
   v1.30 — mobile homepage polish, simplified footer, section nav
   ========================================================= */

/* Homepage latest-information panel: same visual language, with an accordion
   behaviour on mobile. */
.kea-hero-quick__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  cursor:default;
}
.kea-hero-quick__header::-webkit-details-marker{display:none}
.kea-hero-quick__toggle{
  position:relative;
  display:none;
  width:18px;
  height:18px;
  flex:0 0 18px;
  color:#fff;
}
.kea-hero-quick__toggle::before,
.kea-hero-quick__toggle::after{
  content:"";
  position:absolute;
  left:2px;
  right:2px;
  top:8px;
  height:1.5px;
  background:currentColor;
}
.kea-hero-quick__toggle::after{transform:rotate(90deg);transition:transform .18s ease}
.kea-hero-quick[open] .kea-hero-quick__toggle::after{transform:rotate(0)}

/* Inner-page section navigation now mirrors the homepage information card. */
.kea-section-nav{
  position:sticky;
  top:126px;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(8,47,79,.09);
  border-radius:10px;
  background:#fff;
  box-shadow:0 16px 36px rgba(8,47,79,.055);
}
.kea-section-nav__header{
  padding:19px 23px 18px;
  background:var(--kea-deep-blue);
}
.kea-section-nav__label{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  color:#fff;
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kea-section-nav__label::before{
  content:"";
  width:28px;
  height:1px;
  background:currentColor;
  opacity:.45;
}
.kea-section-nav nav{display:grid;padding:10px 23px 12px;background:#fff}
.kea-section-nav a{
  min-height:57px;
  font-size:14.5px;
  font-weight:400;
}

/* Simpler footer: navigation first, then legal links and copyright beneath. */
.kea-footer-main{padding:28px 0 22px}
.kea-footer__primary{display:block;padding-bottom:25px}
.kea-footer__nav{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px 34px;
  flex-wrap:wrap;
}
.kea-footer__nav a{
  min-height:36px;
  color:rgba(255,255,255,.82);
  font-size:14.5px;
  font-weight:400;
}
.kea-footer__nav a::after{display:none!important}
.kea-footer__bottom{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  padding-top:18px;
}
.kea-footer__bottom-links{order:1;display:flex;gap:22px;flex-wrap:wrap}
.kea-footer__copyright{order:2;color:rgba(255,255,255,.43);font-size:11px}

@media (min-width:761px){
  .kea-hero-quick__header{pointer-events:none}
}

@media (max-width:760px){
  /* Tuck latest council information away until it is wanted. */
  .kea-hero{padding:70px 0 34px}
  .kea-hero__layout{gap:30px}
  .kea-hero-quick{border-radius:8px;box-shadow:none}
  .kea-hero-quick__header{padding:17px 20px 16px;cursor:pointer}
  .kea-hero-quick__toggle{display:block}
  .kea-hero-quick__body{padding:18px 20px 11px}
  .kea-signposts{padding-top:52px;padding-bottom:76px}

  /* Mobile meeting cards: the blue date block runs the full card depth. */
  .kea-meeting-row{
    grid-template-columns:88px minmax(0,1fr);
    grid-template-rows:auto auto;
    min-height:132px;
  }
  .kea-meeting-row__meta{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:stretch;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:16px 10px;
  }
  .kea-meeting-row__date{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    text-align:center;
  }
  .kea-meeting-row__month-year{align-items:center}
  .kea-meeting-row__content{grid-column:2;grid-row:1;padding:20px 17px 8px}
  .kea-meeting-row__actions{grid-column:2;grid-row:2;justify-self:start;align-items:flex-start;padding:0 17px 20px;flex-direction:row;flex-wrap:wrap}

  /* Pull Latest updates closer to the meetings section on mobile. */
  .kea-news-home{
    padding:54px 0 70px;
    background:linear-gradient(to bottom,#f5f8fa 0,#f4f1e9 48px,var(--kea-cream) 48px,var(--kea-cream) 100%);
  }

  /* Footer remains lightweight on mobile. */
  .kea-footer-main{padding-top:30px}
  .kea-footer__primary{padding-bottom:22px}
  .kea-footer__nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px 24px;
  }
  .kea-footer__nav a{
    min-height:36px;
    border-bottom:0!important;
    font-size:14px;
  }
  .kea-footer__bottom{align-items:flex-start;gap:8px}
  .kea-footer__bottom-links{margin-top:0}

  .kea-section-nav{position:static;max-width:none}
}

@media (max-width:430px){
  .kea-footer__nav{grid-template-columns:1fr 1fr;gap:4px 16px}
  .kea-footer__nav a{font-size:13.5px}
}

.kea-meeting-row--empty{grid-template-columns:minmax(0,1fr) auto}.kea-meeting-row--empty .kea-meeting-row__content{grid-column:1}.kea-meeting-row--empty .kea-meeting-row__actions{grid-column:2}

/* =========================================================
   v1.33 — Councillors & Clerk
   Uses the Meetings & Agendas inner-page pattern.
   ========================================================= */

.kea-page-hero--people{border-bottom:0}

.kea-people-content{
  padding:72px 0 112px;
  border-top:1px solid #d8e4e9;
  background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 82px,var(--kea-pale-blue) 190px,var(--kea-pale-blue) 100%);
}
.kea-people-content>.kea-shell{max-width:1050px}
.kea-people-content__intro{max-width:820px;margin:0 0 46px}
.kea-people-content__heading{display:block;margin:0 0 28px}
.kea-people-content__heading .kea-eyebrow{margin:0}

.kea-people-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

.kea-person-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:330px;
  padding:30px 28px 24px;
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
  color:#526a78;
}

.kea-person-card__badge{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin:0 0 24px;
  padding:5px 10px;
  border:1px solid #bfd8e5;
  border-radius:999px;
  background:#eef6fa;
  color:var(--kea-deep-blue);
  font-size:10px;
  font-weight:500;
  line-height:1.15;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.kea-person-card h3{
  margin:0 0 20px;
  font-family:var(--kea-serif);
  font-size:27px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:-.025em;
  color:var(--kea-deep-blue);
}

.kea-person-card__tags{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:7px;
  margin:0 0 22px;
}

.kea-person-pill{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  min-height:28px;
  padding:5px 10px;
  border:1px solid #bfd8e5;
  border-radius:999px;
  background:#eef6fa;
  color:var(--kea-deep-blue);
  font-size:11.5px;
  font-weight:400;
  line-height:1.25;
}

.kea-person-pill--ward{
  border-color:#bfd8e5;
  background:#eef6fa;
  color:var(--kea-deep-blue);
}

.kea-person-card__bio{
  margin:0 0 20px;
  color:#5d7380;
  font-size:14px;
  line-height:1.58;
}
.kea-person-card__bio p{margin:0 0 10px}

.kea-person-card__contact{
  display:grid;
  margin-top:auto;
  border-top:1px solid #d7e3e9;
}
.kea-person-card__contact a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:48px;
  border-bottom:1px solid #e0e8ec;
  color:var(--kea-deep-blue);
  font-size:13.5px;
  font-weight:400;
  line-height:1.35;
  text-decoration:none;
}
.kea-person-card__contact a:last-child{border-bottom:0}
.kea-person-card__contact a span:last-child{flex:0 0 auto;color:var(--kea-rich-blue)}
.kea-person-card__contact a:hover,.kea-person-card__contact a:focus-visible{color:var(--kea-rich-blue)}

.kea-person-card--clerk,
.kea-person-card--contact{
  border-color:var(--kea-button-blue);
  background:var(--kea-button-blue);
  color:#fff;
}
.kea-person-card--clerk .kea-person-card__badge,
.kea-person-card--contact .kea-person-card__badge{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.kea-person-card--clerk h3,
.kea-person-card--contact h3{color:#fff}
.kea-person-card--clerk .kea-person-pill,
.kea-person-card--clerk .kea-person-pill--ward{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
  color:#fff;
}
.kea-person-card--clerk .kea-person-card__bio,
.kea-person-card--contact p{color:rgba(255,255,255,.84)}
.kea-person-card--contact p{margin:0 0 22px;font-size:14px;line-height:1.6}
.kea-person-card--clerk .kea-person-card__contact,
.kea-person-card--contact .kea-person-card__contact{border-top-color:rgba(255,255,255,.25)}
.kea-person-card--clerk .kea-person-card__contact a,
.kea-person-card--contact .kea-person-card__contact a{
  border-bottom-color:rgba(255,255,255,.18);
  color:#fff;
}
.kea-person-card--clerk .kea-person-card__contact a span:last-child,
.kea-person-card--contact .kea-person-card__contact a span:last-child{color:#fff}
.kea-person-card--clerk .kea-person-card__contact a:hover,
.kea-person-card--clerk .kea-person-card__contact a:focus-visible,
.kea-person-card--contact .kea-person-card__contact a:hover,
.kea-person-card--contact .kea-person-card__contact a:focus-visible{color:#dcecf5}

.kea-people-empty{
  padding:28px;
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
}
.kea-people-empty p{margin:0}

@media (max-width:1000px){
  .kea-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:680px){
  .kea-people-content{
    padding:48px 0 72px;
    background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 58px,var(--kea-pale-blue) 130px,var(--kea-pale-blue) 100%);
  }
  .kea-people-content__intro{margin-bottom:34px}
  .kea-people-content__heading{margin-bottom:24px}
  .kea-people-grid{grid-template-columns:1fr;gap:12px}
  .kea-person-card{min-height:285px;padding:26px 22px 20px}
  .kea-person-card__badge{margin-bottom:20px}
  .kea-person-card h3{font-size:26px}
}


/* =========================================================
   v1.34 — Council leadership panel
   ========================================================= */

.kea-leadership-panel{
  margin:0 0 52px;
  border:1px solid #cfdee6;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 14px 32px rgba(11,53,82,.06);
}

.kea-leadership-panel__header{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:54px;
  padding:0 26px;
  background:var(--kea-deep-blue);
  color:#fff;
  font-size:10px;
  font-weight:600;
  line-height:1;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.kea-leadership-panel__header .kea-kicker-line{
  width:27px;
  height:1px;
  background:rgba(255,255,255,.58);
}

.kea-leadership-panel__body{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:0 26px;
}

.kea-leadership-person{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:28px 26px 24px;
  border-right:1px solid #d8e4e9;
}
.kea-leadership-person:first-child{padding-left:0}
.kea-leadership-person:last-child{padding-right:0;border-right:0}

.kea-leadership-person__label{
  margin:0 0 10px;
  color:var(--kea-rich-blue);
  font-size:9.5px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.kea-leadership-person h3{
  margin:0 0 13px;
  font-family:var(--kea-serif);
  font-size:25px;
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.02em;
  color:var(--kea-deep-blue);
}

.kea-leadership-person__ward{
  align-self:flex-start;
  display:inline-flex;
  min-height:27px;
  margin:0 0 22px;
  padding:5px 10px;
  border:1px solid #bfd8e5;
  border-radius:999px;
  background:#eef6fa;
  color:var(--kea-deep-blue);
  font-size:11px;
  font-weight:400;
  line-height:1.2;
}

.kea-leadership-person__links{
  display:grid;
  margin-top:auto;
  border-top:1px solid #d7e3e9;
}
.kea-leadership-person__links:empty{display:none}
.kea-leadership-person__links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:42px;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:400;
  line-height:1.3;
  text-decoration:none;
}
.kea-leadership-person__links a+a{border-top:1px solid #e2eaee}
.kea-leadership-person__links a span:last-child{color:var(--kea-rich-blue)}
.kea-leadership-person__links a:hover,
.kea-leadership-person__links a:focus-visible{color:var(--kea-rich-blue)}

@media (max-width:820px){
  .kea-leadership-panel{margin-bottom:38px}
  .kea-leadership-panel__body{grid-template-columns:1fr;padding:0 22px}
  .kea-leadership-person,
  .kea-leadership-person:first-child,
  .kea-leadership-person:last-child{
    padding:22px 0;
    border-right:0;
    border-bottom:1px solid #d8e4e9;
  }
  .kea-leadership-person:last-child{border-bottom:0}
  .kea-leadership-person h3{font-size:23px}
}


/* =========================================================
   v1.35 — taxonomy-led council member ordering + mobile polish
   ========================================================= */

/* Council-position taxonomy controls the leadership panel and alphabetical councillor grid. */

@media (max-width:760px){
  /* Keep the date rail full-height when the document actions wrap below. */
  .kea-archive-meeting__date{
    grid-row:1 / span 2;
    align-self:stretch;
    min-height:100%;
  }

  .kea-archive-meeting__title{
    justify-content:flex-end;
    padding-top:20px;
    padding-bottom:10px;
  }

  .kea-archive-meeting__actions{
    align-self:start;
    min-height:48px;
    padding-top:0;
  }

  .kea-archive-meeting__actions a{
    min-height:40px;
    padding:8px 0 6px;
  }
}

@media (max-width:430px){
  .kea-meeting-year__summary{
    min-height:72px;
    padding:15px 14px;
  }

  .kea-meeting-year__title strong{font-size:28px}
  .kea-meeting-year__chevron{width:20px;height:20px;flex-basis:20px}

  .kea-archive-meeting{
    grid-template-columns:78px minmax(0,1fr);
    min-height:118px;
  }

  .kea-archive-meeting__date{
    gap:6px;
    padding:14px 8px;
  }

  .kea-archive-meeting__day{font-size:29px}
  .kea-archive-meeting__month-year{font-size:10.5px}
  .kea-archive-meeting__title{padding:17px 14px 7px}
  .kea-archive-meeting h3{font-size:17px;line-height:1.18}
  .kea-archive-meeting__actions{gap:8px 18px;padding:0 14px 16px}
  .kea-archive-meeting__actions a{font-size:12.5px}
}


/* =========================================================
   v1.35.1 — taxonomy-led leadership panel
   ========================================================= */
.kea-people-page .kea-leadership-panel{
  margin-bottom:46px;
  box-shadow:0 18px 42px rgba(8,47,79,.06);
}
.kea-people-page .kea-leadership-panel__header{
  min-height:54px;
  padding:0 27px;
  background:var(--kea-deep-blue);
}
.kea-people-page .kea-leadership-panel__body{background:#fff}
.kea-people-page .kea-leadership-person__ward{
  border-color:#bfd8e5;
  background:#eef6fa;
  color:var(--kea-deep-blue);
}
@media (max-width:820px){
  .kea-people-page .kea-leadership-panel{margin-bottom:34px;box-shadow:none}
}


/* =========================================================
   v1.35.3 — Chairman / Vice Chairman display labels
   ========================================================= */

.kea-people-grid--leaders{
  margin:0 0 48px;
}

.kea-person-card--leader{
  overflow:hidden;
  min-height:330px;
}

.kea-person-card--leader .kea-person-card__badge{
  align-self:stretch;
  width:auto;
  min-height:48px;
  margin:-30px -28px 26px;
  padding:0 28px;
  border:0;
  border-radius:0;
  background:var(--kea-deep-blue);
  color:#fff;
  font-size:10px;
  font-weight:600;
  line-height:1;
  letter-spacing:.12em;
}

.kea-person-card--leader .kea-person-card__badge::before{
  content:"";
  width:24px;
  height:1px;
  margin-right:12px;
  background:rgba(255,255,255,.55);
}

@media (max-width:1000px){
  .kea-people-grid--leaders{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:820px){
  .kea-people-grid--leaders{grid-template-columns:1fr;gap:12px;margin-bottom:36px}
}

@media (max-width:680px){
  .kea-person-card--leader .kea-person-card__badge{
    min-height:46px;
    margin:-26px -22px 24px;
    padding:0 22px;
  }
}


/* =========================================================
   CONTACT PAGE
   ========================================================= */
.kea-page-hero--contact{border-bottom:0}
.kea-contact-content{
  padding:58px 0 112px;
  border-top:1px solid rgba(8,47,79,.12);
  background:linear-gradient(180deg,var(--kea-cream-soft) 0,var(--kea-pale-blue) 150px,var(--kea-pale-blue) 100%);
}
.kea-contact-content>.kea-shell{max-width:1050px}
.kea-contact-content__heading{margin-bottom:26px}
.kea-contact-content__heading .kea-eyebrow{margin-bottom:0}
.kea-contact-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:28px;align-items:start}
.kea-contact-card,.kea-contact-form-card{overflow:hidden;border:1px solid #d7e3e9;border-radius:8px;background:#fff}
.kea-contact-card__header,.kea-contact-form-card__header{display:flex;align-items:center;min-height:57px;padding:0 24px;background:var(--kea-button-blue);color:#fff;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.kea-contact-card__body{padding:32px 28px 22px}
.kea-contact-card__role{display:block;margin-bottom:11px;color:var(--kea-rich-blue);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.kea-contact-card h2{margin:0 0 18px;font-family:var(--kea-serif);font-size:30px;font-weight:400;line-height:1.12;color:var(--kea-deep-blue)}
.kea-contact-card p{margin:0 0 26px;color:#536b78;font-size:15px;line-height:1.68}
.kea-contact-card__links{display:grid;border-top:1px solid var(--kea-line)}
.kea-contact-card__links a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;border-bottom:1px solid var(--kea-line);color:var(--kea-deep-blue);font-size:14px;font-weight:400;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-contact-card__links a:last-child{border-bottom:0}
.kea-contact-card__links a span:last-child{color:var(--kea-rich-blue)}
.kea-contact-card__links a:hover,.kea-contact-card__links a:focus-visible{color:var(--kea-rich-blue);border-color:#b9ced9}
.kea-contact-form-card__body{padding:30px 30px 32px}
.kea-contact-form{display:grid;gap:21px}
.kea-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.kea-form-field{display:grid;gap:8px}
.kea-form-field label{color:var(--kea-deep-blue);font-size:13px;font-weight:500}
.kea-form-field input,.kea-form-field textarea{width:100%;margin:0;border:1px solid #cfdee5;border-radius:5px;background:#fff;color:var(--kea-ink);box-shadow:none;outline:0;transition:border-color .18s ease,box-shadow .18s ease}
.kea-form-field input{height:50px;padding:0 14px}
.kea-form-field textarea{min-height:158px;padding:13px 14px;resize:vertical}
.kea-form-field input:focus,.kea-form-field textarea:focus{border-color:#86adc4;box-shadow:0 0 0 3px rgba(11,79,124,.07)}
.kea-contact-privacy{border-top:1px solid var(--kea-line);border-bottom:1px solid var(--kea-line);padding:13px 0;color:#526b78;font-size:13px;line-height:1.6}
.kea-contact-privacy summary{cursor:pointer;color:var(--kea-deep-blue);font-weight:500}
.kea-contact-privacy p{margin:12px 0 2px}
.kea-form-check{display:flex;align-items:flex-start;gap:10px;color:#536b78;font-size:13px;line-height:1.5}
.kea-form-check input{flex:0 0 auto;width:17px;height:17px;margin-top:2px;accent-color:var(--kea-button-blue)}
.kea-contact-form .kea-button{justify-self:start;border:0;cursor:pointer}
.kea-form-message{margin:0 0 24px;padding:14px 16px;border-radius:5px;font-size:14px;line-height:1.55}
.kea-form-message--success{background:#edf6f2;color:#244f3c;border:1px solid #c9e1d5}
.kea-form-message--error{background:#fff3f1;color:#773d35;border:1px solid #eccdc8}
.kea-form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* =========================================================
   404 PAGE
   ========================================================= */
.kea-page-hero--404{border-bottom:0}
.kea-404-content{padding:58px 0 110px;border-top:1px solid rgba(8,47,79,.12);background:linear-gradient(180deg,var(--kea-cream-soft) 0,var(--kea-pale-blue) 150px,var(--kea-pale-blue) 100%)}
.kea-404-content__inner{max-width:1050px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:start}
.kea-404-actions>p{max-width:470px;margin:0 0 28px;color:#526a77;font-size:17px;line-height:1.7}
.kea-404-actions__buttons{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.kea-404-actions__buttons button{cursor:pointer}
.kea-404-routes{overflow:hidden;border:1px solid #d7e3e9;border-radius:8px;background:#fff}
.kea-404-routes__label{display:flex;align-items:center;min-height:57px;padding:0 24px;background:var(--kea-button-blue);color:#fff;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.kea-404-routes a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:59px;padding:0 24px;border-bottom:1px solid var(--kea-line);color:var(--kea-deep-blue);font-size:15px;font-weight:400;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-404-routes a:last-child{border-bottom:0}
.kea-404-routes a span:last-child{color:var(--kea-rich-blue)}
.kea-404-routes a:hover,.kea-404-routes a:focus-visible{color:var(--kea-rich-blue);border-color:#b9ced9}

@media (max-width:900px){
  .kea-contact-grid,.kea-404-content__inner{grid-template-columns:1fr;gap:26px}
  .kea-contact-card{max-width:none}
}

@media (max-width:600px){
  .kea-contact-content,.kea-404-content{padding:42px 0 72px;background:linear-gradient(180deg,var(--kea-cream-soft) 0,var(--kea-pale-blue) 105px,var(--kea-pale-blue) 100%)}
  .kea-contact-content__heading{margin-bottom:20px}
  .kea-contact-card__header,.kea-contact-form-card__header,.kea-404-routes__label{min-height:52px;padding-inline:20px}
  .kea-contact-card__body,.kea-contact-form-card__body{padding:24px 20px}
  .kea-contact-card h2{font-size:27px}
  .kea-form-grid{grid-template-columns:1fr;gap:21px}
  .kea-form-field input,.kea-form-field textarea{font-size:16px}
  .kea-contact-form .kea-button{width:100%}
  .kea-404-actions>p{font-size:16px}
  .kea-404-actions__buttons{gap:18px}
  .kea-404-routes a{min-height:56px;padding-inline:20px;font-size:14.5px}
}


/* =========================================================
   v1.37 — Policies document archive
   ========================================================= */

.kea-page-hero--policies{
  background:var(--kea-cream-soft);
  border-bottom:0;
}

.kea-policies-archive{
  padding:72px 0 118px;
  border-top:1px solid #d8e4e9;
  background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 82px,var(--kea-pale-blue) 190px,var(--kea-pale-blue) 100%);
}

.kea-policies-archive>.kea-shell{
  max-width:1050px;
}

.kea-policies-archive__intro{
  max-width:820px;
  margin:0 0 44px;
}

.kea-policies-archive__heading{
  margin:0 0 28px;
}

.kea-policies-archive__heading .kea-eyebrow{
  margin:0;
}

.kea-policy-list{
  display:grid;
  gap:12px;
}

.kea-policy-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
  min-height:104px;
  padding:22px 28px;
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
  transition:border-color .18s ease,background-color .18s ease;
}

.kea-policy-row:hover{
  border-color:#b8ced9;
  background:#fbfdfe;
}

.kea-policy-row__content{
  min-width:0;
}

.kea-policy-row__label{
  display:block;
  margin-bottom:8px;
  color:var(--kea-rich-blue);
  font-size:9px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.kea-policy-row h2{
  margin:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-serif);
  font-size:22px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:-.018em;
}

.kea-policy-row__meta{
  display:block;
  margin-top:8px;
  color:#6b7f8b;
  font-size:12px;
  line-height:1.35;
}

/* Universal document type chip */
.kea-file-type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-width:38px;
  height:23px;
  margin-top:10px;
  padding:0 8px;
  border:1px solid rgba(11,79,124,.10);
  border-radius:5px;
  background:#e7f1f5;
  color:var(--kea-rich-blue);
  font-family:var(--kea-sans);
  font-size:9.5px;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

a .kea-file-type{margin-top:0;pointer-events:none}

.kea-policy-row__action{
  display:inline-flex;
  align-items:center;
  gap:15px;
  padding:8px 0 6px;
  border-bottom:1px solid #b8ccd7;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:400;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
  transition:color .18s ease,border-color .18s ease;
}

.kea-policy-row__action:hover,
.kea-policy-row__action:focus-visible{
  color:var(--kea-rich-blue);
  border-bottom-color:var(--kea-rich-blue);
}

.kea-policy-row__unavailable{
  color:#7f9099;
  font-size:12px;
  white-space:nowrap;
}

@media (max-width:760px){
  .kea-policies-archive{
    padding:48px 0 82px;
    background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 58px,var(--kea-pale-blue) 130px,var(--kea-pale-blue) 100%);
  }

  .kea-policies-archive__heading{
    margin-bottom:24px;
  }

  .kea-policy-row{
    grid-template-columns:1fr;
    gap:16px;
    min-height:0;
    padding:20px 18px;
  }

  .kea-policy-row h2{
    font-size:20px;
  }

  .kea-policy-row__action{
    justify-self:start;
  }
}

/* =========================================================
   v1.38 — Finance document archive
   ========================================================= */

.kea-page-hero--finance{
  background:var(--kea-cream-soft);
  border-bottom:0;
}

.kea-finance-archive{
  padding:72px 0 118px;
  border-top:1px solid #d8e4e9;
  background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 82px,var(--kea-pale-blue) 190px,var(--kea-pale-blue) 100%);
}

.kea-finance-archive>.kea-shell{
  max-width:1050px;
}

.kea-finance-archive__intro{
  max-width:820px;
  margin:0 0 44px;
}

.kea-finance-archive__heading{
  margin:0 0 28px;
}

.kea-finance-archive__heading .kea-eyebrow{
  margin:0;
}

.kea-finance-groups{
  display:grid;
  gap:14px;
}

.kea-finance-group{
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}

.kea-finance-group__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  min-height:90px;
  padding:20px 28px;
  cursor:pointer;
  list-style:none;
  background:#fff;
  color:var(--kea-deep-blue);
  transition:background-color .18s ease;
}

.kea-finance-group__summary::-webkit-details-marker{
  display:none;
}

.kea-finance-group__summary:hover,
.kea-finance-group__summary:focus-visible{
  background:#f9fcfd;
}

.kea-finance-group[open]>.kea-finance-group__summary{
  background:#f5fafc;
}

.kea-finance-group__title{
  font-family:var(--kea-serif);
  font-size:28px;
  font-weight:400;
  line-height:1.12;
  letter-spacing:-.02em;
}

.kea-finance-group__meta{
  display:flex;
  align-items:center;
  gap:18px;
  color:#667b88;
  font-size:13px;
  white-space:nowrap;
}

.kea-finance-group__chevron{
  position:relative;
  width:22px;
  height:22px;
  flex:0 0 22px;
}

.kea-finance-group__chevron::before,
.kea-finance-group__chevron::after{
  content:"";
  position:absolute;
  left:4px;
  right:4px;
  top:10px;
  height:1px;
  background:var(--kea-rich-blue);
}

.kea-finance-group__chevron::after{
  transform:rotate(90deg);
  transition:transform .18s ease;
}

.kea-finance-group[open] .kea-finance-group__chevron::after{
  transform:rotate(0);
}

.kea-finance-group__content{
  border-top:1px solid #d8e5eb;
  background:#fff;
}

.kea-finance-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
  min-height:104px;
  padding:22px 28px;
  border-bottom:1px solid #e0e9ee;
  background:#fff;
  transition:background-color .18s ease;
}

.kea-finance-row:last-child{
  border-bottom:0;
}

.kea-finance-row:hover{
  background:#fbfdfe;
}

.kea-finance-row__content{
  min-width:0;
}

.kea-finance-row__label{
  display:block;
  margin-bottom:8px;
  color:var(--kea-rich-blue);
  font-size:9px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.kea-finance-row h2{
  margin:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-serif);
  font-size:21px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:-.018em;
}

.kea-finance-row__meta{
  display:block;
  margin-top:8px;
  color:#6b7f8b;
  font-size:12px;
  line-height:1.35;
}

.kea-finance-row__action{
  display:inline-flex;
  align-items:center;
  gap:15px;
  padding:8px 0 6px;
  border-bottom:1px solid #b8ccd7;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:400;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
  transition:color .18s ease,border-color .18s ease;
}

.kea-finance-row__action:hover,
.kea-finance-row__action:focus-visible{
  color:var(--kea-rich-blue);
  border-bottom-color:var(--kea-rich-blue);
}

.kea-finance-row__unavailable{
  color:#7f9099;
  font-size:12px;
  white-space:nowrap;
}

.kea-finance-group__empty{
  padding:24px 28px;
  color:#6b7f8b;
  font-size:14px;
  line-height:1.6;
}

@media (max-width:760px){
  .kea-finance-archive{
    padding:48px 0 82px;
    background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 58px,var(--kea-pale-blue) 130px,var(--kea-pale-blue) 100%);
  }

  .kea-finance-archive__heading{
    margin-bottom:24px;
  }

  .kea-finance-groups{
    gap:12px;
  }

  .kea-finance-group__summary{
    min-height:76px;
    padding:16px 18px;
    gap:16px;
  }

  .kea-finance-group__title{
    font-size:23px;
  }

  .kea-finance-group__meta{
    gap:10px;
    font-size:12px;
  }

  .kea-finance-row{
    grid-template-columns:1fr;
    gap:16px;
    min-height:0;
    padding:20px 18px;
  }

  .kea-finance-row h2{
    font-size:19px;
  }

  .kea-finance-row__action{
    justify-self:start;
  }

  .kea-finance-group__empty{
    padding:20px 18px;
  }
}

@media (max-width:430px){
  .kea-finance-group__count{
    font-size:11px;
  }

  .kea-finance-group__title{
    font-size:21px;
  }
}


/* =========================================================
   SECTION INTRO / REVEAL SYSTEM
   ---------------------------------------------------------
   Shared motion language based on the restrained reveal
   treatment used on the Unity site. JS only adds state
   classes; all movement and timing live here.
   ========================================================= */
.kea-reveal{
  opacity:0;
  transform:translate3d(0,22px,0);
  transition:
    opacity .66s cubic-bezier(.22,1,.36,1),
    transform .78s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--kea-reveal-delay,0ms);
  will-change:opacity,transform;
}

.kea-reveal--left{
  transform:translate3d(-24px,0,0);
}

.kea-reveal--right{
  transform:translate3d(24px,0,0);
}

.kea-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

/* Do not let reveal transforms become the hover language. */
.kea-reveal.is-visible:hover{
  transform:translate3d(0,0,0);
}

@media (max-width:760px){
  .kea-reveal{
    transform:translate3d(0,15px,0);
    transition-duration:.58s,.68s;
  }

  .kea-reveal--left,
  .kea-reveal--right{
    transform:translate3d(0,15px,0);
  }

  .kea-reveal.is-visible{
    transform:translate3d(0,0,0);
  }
}

@media (prefers-reduced-motion:reduce){
  .kea-reveal,
  .kea-reveal--left,
  .kea-reveal--right{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}

/* =========================================================
   v1.41 — Responsibilities & Organisation
   ========================================================= */

.kea-page-hero--responsibilities{
  background:var(--kea-cream-soft);
  border-bottom:0;
}

.kea-responsibilities{
  padding:72px 0 118px;
  border-top:1px solid #d8e4e9;
  background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 82px,var(--kea-pale-blue) 190px,var(--kea-pale-blue) 100%);
}

.kea-responsibilities__inner{
  max-width:1050px;
}

.kea-responsibilities__heading{
  max-width:850px;
  margin:0 0 42px;
}

.kea-responsibilities__heading .kea-eyebrow{
  margin:0 0 17px;
}

.kea-responsibilities__intro{
  max-width:820px;
  margin:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-serif);
  font-size:clamp(24px,2.3vw,31px);
  font-weight:400;
  line-height:1.42;
  letter-spacing:-.02em;
}

.kea-responsibility-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-bottom:20px;
}

.kea-responsibility-card,
.kea-responsibility-detail{
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
}

.kea-responsibility-card{
  display:flex;
  flex-direction:column;
  min-height:330px;
  padding:30px 30px 27px;
}

.kea-responsibility-card__label,
.kea-responsibility-detail__label{
  display:block;
  margin-bottom:22px;
  color:var(--kea-rich-blue);
  font-size:10px;
  font-weight:600;
  line-height:1.25;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.kea-responsibility-card h2,
.kea-responsibility-detail h2,
.kea-responsibility-areas h2,
.kea-clerk-role h2{
  margin:0;
  color:var(--kea-deep-blue);
  font-family:var(--kea-serif);
  font-weight:400;
  letter-spacing:-.025em;
}

.kea-responsibility-card h2{
  font-size:28px;
  line-height:1.15;
}

.kea-responsibility-card p{
  margin:18px 0 0;
  color:#506775;
  font-size:16px;
  line-height:1.68;
}

.kea-responsibility-card__link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:auto;
  padding-top:24px;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:500;
  text-decoration:none;
}

.kea-responsibility-card__link span{
  color:var(--kea-rich-blue);
}

.kea-responsibility-card__link:hover,
.kea-responsibility-card__link:focus-visible{
  color:var(--kea-rich-blue);
}

.kea-responsibility-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,2fr);
  gap:18px;
  margin-bottom:20px;
}

.kea-responsibility-detail{
  min-height:282px;
  padding:31px 32px 29px;
}

.kea-responsibility-detail h2{
  font-size:31px;
  line-height:1.13;
}

.kea-responsibility-detail p{
  margin:18px 0 24px;
  color:#506775;
  font-size:16px;
  line-height:1.68;
}

.kea-responsibility-detail--blue{
  border-color:var(--kea-button-blue);
  background:var(--kea-button-blue);
}

.kea-responsibility-detail--blue .kea-responsibility-detail__label{
  color:rgba(255,255,255,.7);
}

.kea-responsibility-detail--blue h2,
.kea-responsibility-detail--blue p{
  color:#fff;
}

.kea-responsibility-areas{
  margin:20px 0;
  padding:34px 34px 36px;
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
}

.kea-responsibility-areas__heading{
  display:block;
  margin-bottom:24px;
}

.kea-responsibility-areas__heading .kea-eyebrow{
  margin:0 0 13px;
}

.kea-responsibility-areas h2{
  max-width:620px;
  margin:0;
  font-size:28px;
  line-height:1.18;
  text-align:left;
}

.kea-responsibility-pills{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.kea-responsibility-pills span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 13px;
  border-radius:5px;
  background:#e7f1f6;
  color:var(--kea-deep-blue);
  font-size:12px;
  font-weight:500;
  line-height:1.2;
}

.kea-clerk-role{
  overflow:hidden;
  margin-top:20px;
  border:1px solid #cfdee6;
  border-radius:8px;
  background:#fff;
}

.kea-clerk-role__header{
  display:flex;
  align-items:center;
  min-height:55px;
  padding:0 30px;
  background:var(--kea-button-blue);
  color:#fff;
}

.kea-clerk-role__header span{
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.kea-clerk-role__body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:55px;
  padding:31px 32px 34px;
}

.kea-clerk-role__name{
  display:block;
  margin-bottom:10px;
  color:var(--kea-rich-blue);
  font-size:11px;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.kea-clerk-role h2{
  font-size:31px;
  line-height:1.14;
}

.kea-clerk-role p{
  max-width:680px;
  margin:16px 0 0;
  color:#506775;
  font-size:16px;
  line-height:1.68;
}

.kea-clerk-role__actions{
  display:grid;
  min-width:150px;
}

.kea-clerk-role__actions a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  min-height:48px;
  border-bottom:1px solid #d7e3e9;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:500;
  text-decoration:none;
}

.kea-clerk-role__actions a:last-child{
  border-bottom:0;
}

.kea-clerk-role__actions a span{
  color:var(--kea-rich-blue);
}

.kea-clerk-role__actions a:hover,
.kea-clerk-role__actions a:focus-visible{
  color:var(--kea-rich-blue);
}

@media (max-width:900px){
  .kea-responsibility-grid{grid-template-columns:1fr}
  .kea-responsibility-card{min-height:0}
  .kea-responsibility-detail-grid{grid-template-columns:1fr}
  .kea-responsibility-detail{min-height:0}
  .kea-clerk-role__body{grid-template-columns:1fr;gap:24px}
  .kea-clerk-role__actions{max-width:300px}
}

@media (max-width:600px){
  .kea-responsibilities{
    padding:46px 0 78px;
    background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f5f8f9 64px,var(--kea-pale-blue) 145px,var(--kea-pale-blue) 100%);
  }
  .kea-responsibilities__heading{margin-bottom:29px}
  .kea-responsibilities__intro{font-size:22px;line-height:1.42}
  .kea-responsibility-grid,.kea-responsibility-detail-grid{gap:12px;margin-bottom:12px}
  .kea-responsibility-card{padding:25px 22px 23px}
  .kea-responsibility-card__label,.kea-responsibility-detail__label{margin-bottom:17px}
  .kea-responsibility-card h2{font-size:25px}
  .kea-responsibility-card p,.kea-responsibility-detail p,.kea-clerk-role p{font-size:15.5px}
  .kea-responsibility-detail{padding:26px 22px 25px}
  .kea-responsibility-detail h2{font-size:27px}
  .kea-responsibility-areas{margin:12px 0;padding:26px 22px 27px}
  .kea-responsibility-areas__heading{display:block;margin-bottom:22px}
  .kea-responsibility-areas__heading .kea-eyebrow{margin-bottom:14px}
  .kea-responsibility-areas h2{font-size:25px;text-align:left}
  .kea-responsibility-pills{gap:7px}
  .kea-clerk-role{margin-top:12px}
  .kea-clerk-role__header{min-height:52px;padding-inline:22px}
  .kea-clerk-role__body{padding:26px 22px 27px}
  .kea-clerk-role h2{font-size:27px}
  .kea-clerk-role__actions{max-width:none}
}


/* =========================================================
   v1.42 — editable page templates + menu-led section navigation
   ========================================================= */

/* Standard pages use the Meetings-style inner-page rhythm: a sand hero,
   a gentle fade into the content area, editable body copy and the current
   submenu collected into one panel at the bottom. */
.kea-page-hero--standard{border-bottom:0}
.kea-standard-content{
  padding:78px 0 108px;
  border-top:1px solid #d8e4e9;
  background:linear-gradient(180deg,var(--kea-cream-soft) 0%,#f8fafb 72px,#fff 170px,#fff 100%);
}
.kea-standard-content__inner{max-width:1050px}
.kea-content-wrap--standard{max-width:920px}
.kea-content-wrap--wide{max-width:1050px}

/* Bottom submenu panel — same family as Quick Access / In this section,
   but horizontal so it works as a useful end-of-page signpost. */
.kea-bottom-section-nav{
  margin-top:72px;
  overflow:hidden;
  border:1px solid rgba(8,47,79,.10);
  border-radius:10px;
  background:#fff;
  box-shadow:0 16px 36px rgba(8,47,79,.045);
}
.kea-bottom-section-nav__header{
  padding:19px 24px 18px;
  background:var(--kea-deep-blue);
}
.kea-bottom-section-nav__label{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kea-bottom-section-nav__label::before{
  content:"";
  width:28px;
  height:1px;
  background:currentColor;
  opacity:.45;
}
.kea-bottom-section-nav__links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:34px;
  padding:14px 24px 16px;
}
.kea-bottom-section-nav__links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:68px;
  padding:6px 2px;
  border-bottom:1px solid #d7e3e9;
  color:var(--kea-deep-blue);
  font-size:15px;
  font-weight:400;
  line-height:1.35;
  text-decoration:none;
  transition:color .18s ease,border-color .18s ease;
}
.kea-bottom-section-nav__links a span:last-child{color:var(--kea-rich-blue)}
.kea-bottom-section-nav__links a:hover,
.kea-bottom-section-nav__links a:focus-visible,
.kea-bottom-section-nav__links a[aria-current="page"]{
  color:var(--kea-rich-blue);
  border-color:#b9ced9;
}
.kea-bottom-section-nav__links a[aria-current="page"]{font-weight:400}

/* Section landing pages are editable, but their navigation grid follows the
   Primary Menu automatically. */
.kea-section-landing__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:58px;
}
.kea-section-landing__card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  min-height:112px;
  padding:26px 28px;
  border:1px solid #d2e0e7;
  border-radius:8px;
  background:#fff;
  color:var(--kea-deep-blue);
  text-decoration:none;
  transition:border-color .18s ease,background-color .18s ease;
}
.kea-section-landing__card:hover,
.kea-section-landing__card:focus-visible{
  border-color:#aec7d4;
  background:#f8fbfc;
}
.kea-section-landing__title{
  font-family:var(--kea-serif);
  font-size:23px;
  font-weight:400;
  line-height:1.15;
}
.kea-section-landing__arrow{color:var(--kea-rich-blue);font-size:16px}

@media (max-width:760px){
  .kea-standard-content{padding:58px 0 80px}
  .kea-bottom-section-nav{margin-top:52px}
  .kea-bottom-section-nav__links{grid-template-columns:1fr;padding:12px 20px 14px}
  .kea-bottom-section-nav__links a{min-height:62px;padding:6px 2px;font-size:14.5px}
  .kea-section-landing__grid{grid-template-columns:1fr;margin-top:42px}
  .kea-section-landing__card{min-height:92px;padding:22px 20px}
  .kea-section-landing__title{font-size:21px}
}


/* =========================================================
   SECTION MASTER / TOP-LEVEL LANDING PAGES
   ========================================================= */
.kea-section-master{
  position:relative;
  padding:72px 0 108px;
  border-top:1px solid #d8e3e8;
  background:linear-gradient(180deg,#faf9f5 0,#eef6f9 92px,#eef6f9 100%);
}
.kea-section-master__inner{max-width:1050px}
.kea-section-master__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.kea-section-master__card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:126px;
  padding:30px 30px;
  border:1px solid #d3e0e6;
  border-radius:8px;
  background:#fff;
  color:var(--kea-deep-blue);
  text-decoration:none;
  transition:border-color .18s ease,background-color .18s ease;
}
.kea-section-master__card:hover,
.kea-section-master__card:focus-visible{
  border-color:#b8ccd6;
  background:#f9fbfc;
}
.kea-section-master__copy{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.kea-section-master__title{
  font-family:var(--kea-serif);
  font-size:25px;
  font-weight:400;
  line-height:1.12;
}
.kea-section-master__excerpt{display:block;max-width:34ch;color:#657985;font-size:14px;line-height:1.5}
.kea-section-master__arrow{
  flex:0 0 auto;
  color:var(--kea-rich-blue);
  font-size:16px;
}
.kea-section-master__empty{
  margin:0;
  color:var(--kea-muted);
  font-size:16px;
}

@media (max-width:900px){
  .kea-section-master__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
  .kea-section-master{padding:54px 0 78px}
  .kea-section-master__grid{grid-template-columns:1fr;gap:10px}
  .kea-section-master__card{min-height:94px;padding:22px 20px}
  .kea-section-master__title{font-size:22px}
}


/* =========================================================
   SEARCH RESULTS
   ========================================================= */
.kea-search-results-hero .kea-page-hero__inner{max-width:1050px}
.kea-search-results-hero h1{max-width:1000px}
.kea-search-results{
  position:relative;
  padding:72px 0 108px;
  border-top:1px solid #d8e3e8;
  background:linear-gradient(180deg,#faf9f5 0,#eef6f9 92px,#eef6f9 100%);
}
.kea-search-results__inner{max-width:1050px}
.kea-search-results__form{
  display:flex;
  align-items:stretch;
  width:100%;
  min-height:62px;
  margin:0 0 38px;
  padding:5px;
  border:1px solid #bfd0d9;
  border-radius:8px;
  background:#fff;
}
.kea-search-results__form:focus-within{border-color:#8db4c8;box-shadow:0 0 0 3px rgba(22,118,184,.06)}
.kea-search-results__form input{
  flex:1;
  min-width:0;
  padding:0 18px;
  border:0;
  outline:0;
  background:transparent;
  color:var(--kea-deep-blue);
  font-size:16px;
  box-shadow:none;
}
.kea-search-results__form input::placeholder{color:#788a95}
.kea-search-results__form button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-width:138px;
  min-height:52px;
  padding:0 22px;
  border:0;
  border-radius:26px;
  background:var(--kea-button-blue);
  color:#fff;
  font-size:14px;
  font-weight:400;
  cursor:pointer;
  box-shadow:none;
  transition:background-color .18s ease;
}
.kea-search-results__form button:hover,.kea-search-results__form button:focus-visible{background:var(--kea-button-blue-hover)}
.kea-search-results__list{display:grid;gap:12px}
.kea-search-result{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  min-height:154px;
  padding:28px 30px;
  border:1px solid #d2e0e7;
  border-radius:8px;
  background:#fff;
  transition:border-color .18s ease,background-color .18s ease;
}
.kea-search-result:hover{border-color:#b7cdd8;background:#fff}
.kea-search-result__type{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  color:var(--kea-rich-blue);
  font-size:9.5px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kea-search-result__type::before{content:"";width:24px;height:1px;background:currentColor;opacity:.5}
.kea-search-result__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.kea-search-result__meta .kea-search-result__type{margin-bottom:0}
.kea-search-result__meta .kea-file-type{margin-top:0;align-self:center}
.kea-search-result__actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.kea-search-result h2{margin:0 0 10px;font-family:var(--kea-serif);font-size:27px;font-weight:400;line-height:1.12;color:var(--kea-deep-blue)}
.kea-search-result h2 a{color:inherit;text-decoration:none}
.kea-search-result p{max-width:68ch;margin:0;color:#617784;font-size:15.5px;line-height:1.58}
.kea-search-highlight{
  padding:0 .08em;
  border-radius:2px;
  background:#dceef5;
  color:inherit;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.kea-search-result__action{
  display:inline-flex;
  align-items:center;
  gap:18px;
  padding-bottom:5px;
  border-bottom:1px solid #b6cad5;
  color:var(--kea-deep-blue);
  font-size:13px;
  font-weight:500;
  text-decoration:none;
  white-space:nowrap;
  transition:color .18s ease,border-color .18s ease;
}
.kea-search-result__action:hover,.kea-search-result__action:focus-visible{color:var(--kea-rich-blue);border-color:var(--kea-rich-blue)}
.kea-search-pagination{margin-top:34px}
.kea-search-pagination .nav-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kea-search-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:0 13px;border:1px solid #cad9e0;border-radius:5px;background:#fff;color:var(--kea-deep-blue);font-size:13px;text-decoration:none}
.kea-search-pagination .page-numbers.current{background:var(--kea-deep-blue);border-color:var(--kea-deep-blue);color:#fff}
.kea-search-empty{padding:38px 40px;border:1px solid #d2e0e7;border-radius:8px;background:#fff}
.kea-search-empty h2{margin:0 0 12px;font-family:var(--kea-serif);font-size:36px;font-weight:400;line-height:1.08;color:var(--kea-deep-blue)}
.kea-search-empty p{margin:0 0 26px;color:#617784;font-size:16px}
.kea-search-empty__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.kea-search-empty__links a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;border-bottom:1px solid #d5e1e7;color:var(--kea-deep-blue);font-size:14px;text-decoration:none}
.kea-search-empty__links a span{color:var(--kea-rich-blue)}

@media (max-width:760px){
  .kea-search-results{padding:54px 0 78px}
  .kea-search-results__form{min-height:58px;margin-bottom:28px}
  .kea-search-results__form input{font-size:16px;padding:0 13px}
  .kea-search-results__form button{min-width:104px;min-height:48px;padding:0 16px;font-size:13px}
  .kea-search-result{grid-template-columns:1fr;gap:20px;min-height:0;padding:24px 21px}
  .kea-search-result h2{font-size:24px}
  .kea-search-result p{font-size:15px}
  .kea-search-result__action{justify-self:start}
  .kea-search-result__actions{align-items:flex-start}
  .kea-search-empty{padding:28px 22px}
  .kea-search-empty h2{font-size:30px}
  .kea-search-empty__links{grid-template-columns:1fr}
}

/* =========================================================
   SECTION MASTER — SIMPLE MENU-LED LANDING
   Uses the same In this section panel as standard content pages.
   ========================================================= */
.kea-section-master--simple{
  padding-top:72px;
  padding-bottom:108px;
}
.kea-section-master--simple .kea-bottom-section-nav{
  margin-top:0;
}
@media (max-width:620px){
  .kea-section-master--simple{
    padding-top:54px;
    padding-bottom:78px;
  }
}


/* Footer is structural content and must never depend on scroll-reveal state. */
.kea-footer .kea-footer__primary,
.kea-footer .kea-footer__bottom{opacity:1!important;transform:none!important;transition:none!important;}


/* =========================================================
   HTML SITEMAP
   ========================================================= */
.kea-sitemap{max-width:none}
.kea-sitemap__accordions{display:grid;gap:14px}
.kea-sitemap-accordion{overflow:hidden;border:1px solid #cfdee5;border-radius:8px;background:#fff}
.kea-sitemap-accordion__summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 26px;align-items:center;gap:22px;min-height:88px;padding:19px 26px;cursor:pointer;list-style:none;color:var(--kea-deep-blue)}
.kea-sitemap-accordion__summary::-webkit-details-marker{display:none}
.kea-sitemap-accordion__summary::marker{display:none;content:""}
.kea-sitemap-accordion__title{font-family:var(--kea-serif);font-size:27px;font-weight:400;line-height:1.12;letter-spacing:-.015em}
.kea-sitemap-accordion__meta{color:#587184;font-family:var(--kea-sans);font-size:13px;font-weight:400;white-space:nowrap}
.kea-sitemap-accordion__toggle{position:relative;width:20px;height:20px;color:var(--kea-rich-blue)}
.kea-sitemap-accordion__toggle::before,.kea-sitemap-accordion__toggle::after{content:"";position:absolute;top:50%;left:50%;width:15px;height:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .18s ease}
.kea-sitemap-accordion__toggle::after{transform:translate(-50%,-50%) rotate(90deg)}
.kea-sitemap-accordion[open] .kea-sitemap-accordion__toggle::after{transform:translate(-50%,-50%) rotate(0)}
.kea-sitemap-accordion[open] .kea-sitemap-accordion__summary{border-bottom:1px solid #d7e3e9;background:#f8fbfc}
.kea-sitemap-accordion__content{padding:4px 26px 22px}
.kea-sitemap-accordion__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
.kea-sitemap-accordion__links.is-nested{grid-column:1/-1;margin-left:18px;border-left:1px solid #d9e5ea;padding-left:18px}
.kea-sitemap-accordion__branch{min-width:0}
.kea-sitemap-accordion__link{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;border-bottom:1px solid #d7e3e9;color:var(--kea-deep-blue);font-family:var(--kea-sans);font-size:15px;font-weight:400;line-height:1.35;text-decoration:none;transition:color .18s ease,border-color .18s ease}
.kea-sitemap-accordion__link span:last-child{flex:0 0 auto;color:var(--kea-rich-blue);font-size:15px}
.kea-sitemap-accordion__link:hover,.kea-sitemap-accordion__link:focus-visible{color:var(--kea-rich-blue);border-bottom-color:#b7ccd7}
.kea-sitemap-accordion__link--overview{min-height:62px;margin-bottom:4px;font-family:var(--kea-serif);font-size:19px}
@media(max-width:760px){
  .kea-sitemap-accordion__summary{grid-template-columns:minmax(0,1fr) 22px;gap:15px;min-height:76px;padding:17px 20px}
  .kea-sitemap-accordion__title{font-size:23px}
  .kea-sitemap-accordion__meta{grid-column:1;font-size:12px;margin-top:-9px}
  .kea-sitemap-accordion__toggle{grid-column:2;grid-row:1/3}
  .kea-sitemap-accordion__content{padding:3px 20px 19px}
  .kea-sitemap-accordion__links{grid-template-columns:1fr}
  .kea-sitemap-accordion__links.is-nested{margin-left:10px;padding-left:14px}
  .kea-sitemap-accordion__link{min-height:54px;font-size:14px}
  .kea-sitemap-accordion__link--overview{font-size:18px}
}



/* =========================================================
   v1.46.8 — council-member destinations + wider sitemap
   ========================================================= */
.kea-standard-content__inner--sitemap{max-width:1180px}
.kea-content-wrap--sitemap{max-width:1180px;width:100%}
.kea-person-card[id]{scroll-margin-top:130px}
@media (max-width:1100px){
  .kea-standard-content__inner--sitemap,.kea-content-wrap--sitemap{max-width:none}
  .kea-person-card[id]{scroll-margin-top:105px}
}

/* v1.46.9 — legal wording aligned with statistical analytics preference setup */

/* v1.47.0 — Community Centre gateway page content import */


/* =========================================================
   v1.48.0 — NEWS ARCHIVE + SINGLE NEWS
   ========================================================= */
.kea-news-index-hero .kea-page-hero__intro,
.kea-news-single-hero .kea-page-hero__intro{max-width:760px}
.kea-page-hero__intro--html p{margin:0}

.kea-news-archive{
  padding:74px 0 108px;
  background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 86px,#f5f8fa 100%);
  border-top:1px solid rgba(8,47,79,.07)
}
.kea-news-archive__inner{max-width:1180px}
.kea-news-archive__kicker{margin-bottom:30px}
.kea-news-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kea-news-archive-card{
  min-height:320px;padding:34px 30px 28px;background:#fff;border:1px solid #d5e1e7;border-radius:8px;
  display:flex;flex-direction:column;transition:border-color .18s ease,background-color .18s ease
}
.kea-news-archive-card:hover{border-color:#b9ced9;background:#fff}
.kea-news-archive-card__date{
  display:flex;align-items:center;gap:10px;margin-bottom:34px;color:var(--kea-rich-blue);
  font-size:10.5px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase
}
.kea-news-archive-card__date::before{content:"";width:26px;height:1px;background:currentColor;opacity:.48}
.kea-news-archive-card h2{margin:0 0 15px;font-family:var(--kea-serif);font-size:29px;font-weight:400;line-height:1.1;letter-spacing:-.018em;color:var(--kea-deep-blue)}
.kea-news-archive-card h2 a{color:inherit;text-decoration:none}
.kea-news-archive-card p{margin:0 0 30px;color:#607787;font-size:15.5px;line-height:1.62}
.kea-news-archive-card__link{
  margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:16px;
  border-top:1px solid #d8e3e8;color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none;
  transition:color .18s ease,border-color .18s ease
}
.kea-news-archive-card__link:hover,.kea-news-archive-card__link:focus-visible{color:var(--kea-rich-blue);border-top-color:#b4cad6}
.kea-news-empty{max-width:760px;padding:34px;border:1px solid #d5e1e7;border-radius:8px;background:#fff}
.kea-news-empty h2{margin:0 0 10px;font-family:var(--kea-serif);font-size:30px;font-weight:400;color:var(--kea-deep-blue)}
.kea-news-empty p{margin:0;color:#607787}

.kea-news-pagination{margin-top:44px}
.kea-news-pagination .nav-links,
.kea-news-pagination ul.page-numbers{
  width:100%;margin:0;padding:0;list-style:none;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px
}
.kea-news-pagination ul.page-numbers li{margin:0;padding:0;list-style:none}
.kea-news-pagination ul.page-numbers li::marker{content:""}
.kea-news-pagination a.page-numbers,
.kea-news-pagination span.page-numbers{
  width:42px;height:42px;padding:0;border:1px solid #cbdbe3;border-radius:50%;background:#fff;
  display:inline-flex;align-items:center;justify-content:center;color:var(--kea-deep-blue);font-size:13px;font-weight:500;line-height:1;text-decoration:none
}
.kea-news-pagination span.page-numbers.current{background:var(--kea-button-blue);border-color:var(--kea-button-blue);color:#fff}
.kea-news-pagination a.page-numbers:hover,
.kea-news-pagination a.page-numbers:focus-visible{border-color:var(--kea-rich-blue);color:var(--kea-rich-blue);outline:none}
.kea-news-pagination a.page-numbers.prev,
.kea-news-pagination a.page-numbers.next{width:auto;min-width:42px;padding:0 18px;border-radius:999px}
.kea-news-pagination span.page-numbers.dots{width:26px;border-color:transparent;background:transparent}

.kea-news-single-content{
  padding:72px 0 108px;
  background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 86px,#f5f8fa 100%);
  border-top:1px solid rgba(8,47,79,.07)
}
.kea-news-single-content__inner{max-width:1050px}
.kea-news-article{max-width:920px}
.kea-news-article__meta{margin:0 0 28px;padding-bottom:16px;border-bottom:1px solid #d5e1e7;color:var(--kea-rich-blue);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.kea-news-article__body{max-width:920px;width:100%;font-size:17px;line-height:1.72}
.kea-news-article__body > :first-child{margin-top:0}
.kea-news-single-footer{max-width:920px;margin-top:54px;padding-top:26px;border-top:1px solid #cfdde4}
.kea-news-post-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:34px}
.kea-news-post-nav__item{
  position:relative;min-height:142px;padding:23px 58px 23px 24px;border:1px solid #d3e0e6;border-radius:8px;background:#fff;
  display:flex;flex-direction:column;justify-content:center;color:var(--kea-deep-blue);text-decoration:none
}
.kea-news-post-nav__item--next{padding:23px 24px 23px 58px;text-align:right;align-items:flex-end}
.kea-news-post-nav__label{margin-bottom:8px;color:var(--kea-rich-blue);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.kea-news-post-nav__item strong{font-family:var(--kea-serif);font-size:19px;font-weight:400;line-height:1.2}
.kea-news-post-nav__item > span:last-child{position:absolute;right:24px;top:50%;transform:translateY(-50%);color:var(--kea-rich-blue)}
.kea-news-post-nav__item--next > span:last-child{right:auto;left:24px}
.kea-news-post-nav__item:hover,.kea-news-post-nav__item:focus-visible{border-color:#b3cbd7}

@media(max-width:900px){
  .kea-news-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .kea-news-archive,.kea-news-single-content{padding:54px 0 76px;background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 60px,#f5f8fa 100%)}
  .kea-news-archive__grid{grid-template-columns:1fr}
  .kea-news-archive-card{min-height:270px;padding:28px 24px 24px}
  .kea-news-archive-card__date{margin-bottom:26px}
  .kea-news-archive-card h2{font-size:26px}
  .kea-news-pagination{margin-top:34px}
  .kea-news-pagination .page-numbers{min-width:38px;height:38px}
  .kea-news-article__body{font-size:16.5px}
  .kea-news-single-footer{margin-top:42px}
  .kea-news-post-nav{grid-template-columns:1fr}
  .kea-news-post-nav__item,.kea-news-post-nav__item--next{min-height:120px;padding:20px 50px 20px 20px;text-align:left;align-items:flex-start}
  .kea-news-post-nav__item--next{padding-left:20px;padding-right:50px}
  .kea-news-post-nav__item--next > span:last-child{left:auto;right:20px}
  .kea-news-post-nav__item > span:last-child{right:20px}
}


/* =========================================================
   v1.48.6 — single news date treatment
   ========================================================= */
.kea-news-date-pill{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:32px;margin:0 0 18px;padding:0 13px;
  border:1px solid #c7dbe5;border-radius:999px;background:#eaf3f7;
  color:var(--kea-deep-blue);font-size:10.5px;font-weight:600;line-height:1;
  letter-spacing:.11em;text-transform:uppercase
}
.kea-news-single-hero .kea-news-date-pill + .kea-display{margin-top:0}
.kea-news-article__meta{display:none}
@media(max-width:620px){
  .kea-news-date-pill{min-height:30px;margin-bottom:15px;padding:0 11px;font-size:10px}
}


/* =========================================================
   v1.50.3 — News positioned before Contact
   ========================================================= */
.kea-footer-newsletter{
  padding:46px 0 38px;
  background:var(--kea-deep-blue);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.kea-footer-newsletter__inner{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(480px,1.22fr);
  gap:62px;
  align-items:center;
}
.kea-footer-newsletter__copy .kea-eyebrow{margin-bottom:13px;color:#9bc9df}
.kea-footer-newsletter__copy h2{
  margin:0 0 13px;
  max-width:455px;
  font-family:var(--kea-serif);
  font-size:clamp(32px,2.65vw,43px);
  font-weight:400;
  line-height:1.07;
  letter-spacing:-.025em;
  color:#fff;
}
.kea-footer-newsletter__copy p{
  max-width:470px;
  margin:0;
  color:rgba(255,255,255,.7);
  font-size:15.5px;
  line-height:1.6;
}
.kea-footer-newsletter__form-wrap{
  padding:25px 27px 23px;
  border:1px solid #d6e3e9;
  border-radius:8px;
  background:#fff;
}
.kea-footer-newsletter__message{
  margin:0 0 13px;
  padding:10px 12px;
  border-radius:5px;
  background:var(--kea-pale-blue);
  color:var(--kea-deep-blue);
  font-size:13px;
  line-height:1.45;
}
.kea-footer-newsletter__fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.kea-footer-newsletter__fields:focus-within{
  border-color:transparent;
  box-shadow:none;
}
.kea-footer-newsletter__fields input[type="email"]{
  width:100%;
  min-width:0;
  height:50px;
  margin:0;
  padding:0 15px;
  border:1px solid #bed0d9!important;
  outline:0;
  border-radius:6px!important;
  background:#fff;
  box-shadow:none!important;
  color:var(--kea-deep-blue);
  font-family:var(--kea-sans);
  font-size:15px;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.kea-footer-newsletter__fields input[type="email"]:focus{
  border-color:#7caec6!important;
  box-shadow:0 0 0 3px rgba(10,69,108,.055)!important;
}
.kea-footer-newsletter__fields input::placeholder{color:#7d8f99;opacity:1}
.kea-footer-newsletter__fields button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-width:126px;
  height:50px;
  padding:0 21px;
  border:0;
  border-radius:999px;
  background:var(--kea-button-blue);
  color:#fff;
  font-family:var(--kea-sans);
  font-size:14px;
  font-weight:400;
  cursor:pointer;
  box-shadow:none;
  transition:background-color .18s ease;
}
.kea-footer-newsletter__fields button:hover,
.kea-footer-newsletter__fields button:focus-visible{background:var(--kea-button-blue-hover)}
.kea-footer-newsletter__consent{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:15px;
  color:#486270;
  font-size:12.5px;
  line-height:1.45;
  cursor:pointer;
}
.kea-footer-newsletter__consent input{
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin:2px 0 0;
  accent-color:var(--kea-button-blue);
}
.kea-footer-newsletter__privacy{
  margin:8px 0 0;
  color:#6a7d87;
  font-size:11px;
  line-height:1.45;
}
.kea-footer-newsletter__privacy a{
  color:var(--kea-rich-blue);
  text-underline-offset:2px;
}
.kea-footer-newsletter__honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

@media (max-width:900px){
  .kea-footer-newsletter{padding:40px 0 34px}
  .kea-footer-newsletter__inner{grid-template-columns:1fr;gap:25px}
  .kea-footer-newsletter__copy h2{max-width:620px}
  .kea-footer-newsletter__copy p{max-width:620px}
  .kea-footer-newsletter__form-wrap{padding:23px 24px 21px}
}
@media (max-width:600px){
  .kea-footer-newsletter{padding:34px 0 30px}
  .kea-footer-newsletter__inner{gap:21px}
  .kea-footer-newsletter__copy h2{font-size:30px;line-height:1.1}
  .kea-footer-newsletter__copy p{font-size:14.5px}
  .kea-footer-newsletter__form-wrap{padding:19px 18px 18px;border-radius:7px}
  .kea-footer-newsletter__fields{grid-template-columns:1fr;gap:8px}
  .kea-footer-newsletter__fields input[type="email"]{height:48px;padding:0 13px}
  .kea-footer-newsletter__fields button{width:100%;height:48px;border-radius:999px}
  .kea-footer-newsletter__consent{font-size:12px;margin-top:13px}
}

/* =========================================================
   v1.51 — Events calendar
   ========================================================= */

.kea-events-home{
  padding:104px 0 112px;
  background:#f5f8fa;
  border-top:1px solid rgba(8,47,79,.10);
}
.kea-events-home .kea-section-heading{margin-bottom:46px}
.kea-events-home .kea-section-heading h2{max-width:680px}
.kea-event-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kea-event-card{min-height:330px;display:flex;flex-direction:column;border:1px solid #d7e3e9;border-radius:8px;background:#fff;overflow:hidden}
.kea-event-card__date{min-height:92px;padding:20px 24px;display:flex;align-items:center;gap:12px;background:var(--kea-button-blue);color:#fff;text-decoration:none}
.kea-event-card__day{font-family:var(--kea-serif);font-size:42px;font-weight:400;line-height:.9;letter-spacing:-.035em}
.kea-event-card__month-year{display:flex;flex-direction:column;gap:3px;font-family:var(--kea-sans);line-height:1}
.kea-event-card__month-year strong{font-size:14px;font-weight:700;letter-spacing:.11em}
.kea-event-card__month-year small{font-size:10px;font-weight:500;letter-spacing:.05em;color:rgba(255,255,255,.82)}
.kea-event-card__content{flex:1;display:flex;flex-direction:column;padding:28px 26px 24px}
.kea-event-card__category{margin-bottom:12px;color:var(--kea-rich-blue);font-size:9.5px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.kea-event-card h3{margin:0 0 15px;font-family:var(--kea-serif);font-size:27px;font-weight:400;line-height:1.1;letter-spacing:-.018em;color:var(--kea-deep-blue)}
.kea-event-card h3 a{color:inherit;text-decoration:none}
.kea-event-card__meta{display:flex;flex-direction:column;gap:5px;margin-bottom:25px;color:#617784;font-size:14px;line-height:1.45}
.kea-event-card__link{margin-top:auto;padding-top:15px;border-top:1px solid rgba(8,47,79,.13);display:flex;justify-content:space-between;align-items:center;color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none}
.kea-event-card__link:hover{color:var(--kea-rich-blue);border-top-color:rgba(11,79,124,.38)}
.kea-home-events-empty{padding:30px 0;color:#607684}
.kea-home-events-empty p{margin:0 0 18px}

.kea-events-archive{padding:72px 0 112px;background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 120px,#f5f8fa 100%);border-top:1px solid rgba(8,47,79,.10)}
.kea-events-archive__inner{max-width:1180px}
.kea-events-calendar{margin-bottom:86px;padding:34px;border:1px solid #d3e0e7;border-radius:9px;background:#fff}
.kea-events-calendar__header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}
.kea-events-calendar__header .kea-eyebrow{margin-bottom:8px}
.kea-events-calendar__header h2{margin:0;font-family:var(--kea-serif);font-size:38px;font-weight:400;line-height:1.06;color:var(--kea-deep-blue)}
.kea-events-calendar__nav{display:flex;align-items:center;gap:8px}
.kea-events-calendar__nav a{min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbdbe3;border-radius:999px;color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none;background:#fff}
.kea-events-calendar__nav a:hover,.kea-events-calendar__nav a:focus-visible{border-color:#91b5ca;color:var(--kea-rich-blue)}
.kea-events-calendar__nav .kea-events-calendar__today{min-width:68px}
.kea-events-calendar__nav-disabled{min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce6eb;border-radius:999px;color:#9aabb5;background:#f6f8f9;cursor:not-allowed}
.kea-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #dbe5ea;border-left:1px solid #dbe5ea}
.kea-calendar-grid__weekday{padding:10px 8px;border-right:1px solid #dbe5ea;border-bottom:1px solid #dbe5ea;background:#f7fafb;color:#617784;font-size:10px;font-weight:600;letter-spacing:.10em;text-transform:uppercase;text-align:center}
.kea-calendar-day{position:relative;min-height:130px;padding:11px;border-right:1px solid #dbe5ea;border-bottom:1px solid #dbe5ea;background:#fff}
.kea-calendar-day--empty{background:#fafcfd}
.kea-calendar-day__number{width:29px;height:29px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#526b79;font-size:12px;font-weight:500}
.kea-calendar-day.is-today .kea-calendar-day__number{background:var(--kea-button-blue);color:#fff}
.kea-calendar-day__events{display:flex;flex-direction:column;gap:5px;margin-top:6px}
.kea-calendar-day__event{display:block;padding:6px 7px;border-radius:4px;background:var(--kea-pale-blue);color:var(--kea-deep-blue);font-size:10.5px;font-weight:500;line-height:1.3;text-decoration:none}
.kea-calendar-day__event:hover{background:#dcebf2;color:var(--kea-rich-blue)}
.kea-calendar-day__more{padding:2px 7px;color:#6b7f8b;font-size:10px}
.kea-events-calendar__mobile-list{display:none}

.kea-upcoming-events__heading{margin-bottom:34px}
.kea-upcoming-events__heading .kea-eyebrow{margin-bottom:10px}
.kea-upcoming-events__heading h2{margin:0;font-family:var(--kea-serif);font-size:44px;font-weight:400;line-height:1.07;letter-spacing:-.025em;color:var(--kea-deep-blue)}
.kea-upcoming-events__list{display:flex;flex-direction:column;gap:12px}
.kea-event-row{display:grid;grid-template-columns:124px minmax(0,1fr) auto;align-items:stretch;min-height:138px;border:1px solid #d5e1e7;border-radius:8px;background:#fff;overflow:hidden}
.kea-event-row__date{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px 18px;background:var(--kea-button-blue);color:#fff}
.kea-event-row__day{font-family:var(--kea-serif);font-size:42px;font-weight:400;line-height:.9;letter-spacing:-.035em}
.kea-event-row__month-year{display:flex;flex-direction:column;gap:3px;line-height:1}
.kea-event-row__month-year strong{font-size:14px;font-weight:700;letter-spacing:.10em}
.kea-event-row__month-year small{font-size:10px;font-weight:500;color:rgba(255,255,255,.82)}
.kea-event-row__content{display:flex;flex-direction:column;justify-content:center;padding:22px 28px}
.kea-event-row__category{margin-bottom:7px;color:var(--kea-rich-blue);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.kea-event-row h3{margin:0 0 8px;font-family:var(--kea-serif);font-size:22px;font-weight:400;line-height:1.15;color:var(--kea-deep-blue)}
.kea-event-row h3 a{color:inherit;text-decoration:none}
.kea-event-row__meta{display:flex;gap:18px;flex-wrap:wrap;color:#657b88;font-size:13px;line-height:1.45}
.kea-event-row__meta span+span:before{content:"·";margin-right:18px;color:#9aabb5}
.kea-event-row__action{align-self:center;margin-right:26px;padding-bottom:5px;border-bottom:1px solid #b6cad5;color:var(--kea-deep-blue);font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap}
.kea-event-row__action:hover{color:var(--kea-rich-blue);border-bottom-color:var(--kea-rich-blue)}

.kea-event-single{padding:74px 0 112px;background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 110px,#f5f8fa 100%);border-top:1px solid rgba(8,47,79,.10)}
.kea-event-single__inner{max-width:1050px;display:grid;grid-template-columns:310px minmax(0,1fr);gap:46px;align-items:start}
.kea-event-single__details{border:1px solid #d4e1e7;border-radius:8px;background:#fff;overflow:hidden}
.kea-event-single__date{padding:25px;display:flex;align-items:center;gap:12px;background:var(--kea-button-blue);color:#fff}
.kea-event-single__day{font-family:var(--kea-serif);font-size:48px;line-height:.9}
.kea-event-single__date>span:last-child{display:flex;flex-direction:column;gap:3px;line-height:1}
.kea-event-single__date strong{font-size:15px;letter-spacing:.1em}
.kea-event-single__date small{font-size:10px;color:rgba(255,255,255,.82)}
.kea-event-single__details dl{margin:0;padding:8px 24px 20px}
.kea-event-single__details dl>div{padding:17px 0;border-bottom:1px solid #e1e8ec}
.kea-event-single__details dl>div:last-child{border-bottom:0}
.kea-event-single__details dt{margin-bottom:5px;color:var(--kea-rich-blue);font-size:9.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.kea-event-single__details dd{margin:0;color:#526b79;font-size:14px;line-height:1.55}
.kea-event-single__details a{color:var(--kea-rich-blue)}
.kea-event-single__content{max-width:none;padding-top:6px}
.kea-event-single__intro{margin:0 0 28px;font-size:19px;line-height:1.6;color:#526b79}
.kea-event-single__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:36px}

/* Single council meeting */
.kea-archive-meeting h3 a{color:inherit;text-decoration:none}
.kea-archive-meeting h3 a:hover,.kea-archive-meeting h3 a:focus-visible{color:var(--kea-rich-blue)}
.kea-meeting-single__documents{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:22px 0 34px}
.kea-meeting-single__documents a.kea-button,
.kea-meeting-single__documents a.kea-button:visited,
.kea-meeting-single__documents a.kea-button:hover,
.kea-meeting-single__documents a.kea-button:focus-visible{color:#fff}
.kea-meeting-single__pending{margin:0;color:#607683;font-size:16px}
.kea-meeting-single__content{margin-top:34px;padding-top:30px;border-top:1px solid rgba(8,47,79,.12)}
@media(max-width:600px){.kea-meeting-single__documents{align-items:flex-start;flex-direction:column;gap:14px;margin:18px 0 28px}}

@media(max-width:900px){
  .kea-event-card-grid{grid-template-columns:1fr 1fr}
  .kea-calendar-day{min-height:110px;padding:8px}
  .kea-event-row{grid-template-columns:108px minmax(0,1fr)}
  .kea-event-row__action{grid-column:2;justify-self:start;margin:0 28px 20px}
  .kea-event-single__inner{grid-template-columns:260px minmax(0,1fr);gap:30px}
}

@media(max-width:760px){
  .kea-events-home{padding:76px 0}
  .kea-events-home .kea-section-heading{margin-bottom:32px}
  .kea-event-card-grid{grid-template-columns:1fr}
  .kea-event-card{min-height:0}
  .kea-event-card__date{min-height:78px;padding:17px 22px}
  .kea-event-card__day{font-size:36px}
  .kea-event-card__content{padding:24px 22px 21px}
  .kea-event-card h3{font-size:25px}

  .kea-events-archive{padding:54px 0 84px;background:linear-gradient(to bottom,var(--kea-cream-soft) 0,#f5f8fa 75px,#f5f8fa 100%)}
  .kea-events-calendar{margin-bottom:58px;padding:24px 20px}
  .kea-events-calendar__header{align-items:center;margin-bottom:0}
  .kea-events-calendar__header h2{font-size:31px}
  .kea-events-calendar__nav{gap:5px}
  .kea-events-calendar__nav a{min-width:38px;height:38px;padding:0 9px}
  .kea-events-calendar__nav-disabled{min-width:38px;height:38px;padding:0 9px}
  .kea-events-calendar__nav .kea-events-calendar__today{min-width:58px}
  .kea-calendar-grid{display:none}
  .kea-events-calendar__mobile-list{display:block;margin-top:22px;border-top:1px solid #dce6eb}
  .kea-events-calendar__mobile-list>a{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #dce6eb;color:var(--kea-deep-blue);font-size:14px;text-decoration:none}
  .kea-events-calendar__mobile-list small{color:#6d818c;white-space:nowrap}
  .kea-upcoming-events__heading h2{font-size:36px}
  .kea-event-row{grid-template-columns:92px minmax(0,1fr);min-height:124px}
  .kea-event-row__date{padding:16px 10px}
  .kea-event-row__day{font-size:34px}
  .kea-event-row__content{padding:18px 18px 8px}
  .kea-event-row h3{font-size:18px}
  .kea-event-row__meta{display:block;font-size:12.5px}
  .kea-event-row__meta span{display:block}
  .kea-event-row__meta span+span:before{display:none}
  .kea-event-row__action{grid-column:2;margin:0 18px 18px}

  .kea-event-single{padding:54px 0 84px}
  .kea-event-single__inner{grid-template-columns:1fr;gap:24px}
  .kea-event-single__details{max-width:none}
}


/* =========================================================
   NESTED HISTORY NAVIGATION
   ========================================================= */
.kea-menu .sub-menu .menu-item-has-children{position:relative}
.kea-menu .sub-menu .menu-item-has-children>a{padding-right:38px}
.kea-menu .sub-menu .menu-item-has-children>a:after{
  content:""!important;
  display:block!important;
  position:absolute;
  right:18px;
  top:50%;
  width:6px;
  height:6px;
  border-right:1.4px solid currentColor;
  border-bottom:1.4px solid currentColor;
  transform:translateY(-50%) rotate(-45deg);
}
.kea-menu .sub-menu .sub-menu:before{
  content:"";
  position:absolute;
  left:-12px;
  top:0;
  width:12px;
  height:100%;
}

@media (max-width:1100px){
  .kea-mobile-menu .sub-menu .menu-item-has-children>a{
    position:relative;
    padding-right:34px!important;
    font-weight:500!important;
  }
  .kea-mobile-menu .sub-menu .menu-item-has-children>a:after{
    content:""!important;
    display:block!important;
    position:absolute;
    right:4px;
    top:50%;
    width:7px;
    height:7px;
    border-right:1.4px solid currentColor;
    border-bottom:1.4px solid currentColor;
    transform:translateY(-65%) rotate(45deg);
    transition:transform .16s ease;
  }
  .kea-mobile-menu .sub-menu .menu-item-has-children.is-submenu-open>a:after{
    transform:translateY(-35%) rotate(225deg);
  }
  .kea-mobile-menu .sub-menu .sub-menu{
    margin:0 0 10px 14px!important;
    padding-left:16px!important;
    border-left:1px solid rgba(8,47,79,.12)!important;
  }
  .kea-mobile-menu .sub-menu .sub-menu a{
    min-height:42px;
    font-size:14px!important;
    color:var(--kea-deep-blue)!important;
  }
}

/* =========================================================
   v1.53 — combined meetings + events calendar
   ========================================================= */
.kea-archive-meeting__pending{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  color:#6a7f8c;
  font-size:12px;
  font-weight:400;
  white-space:nowrap;
}

@media (max-width:760px){
  .kea-archive-meeting__pending{font-size:12px}
}

/* Search result groups / post-type accordions */
.kea-search-results__groups{display:grid;gap:12px}
.kea-search-group{
  overflow:hidden;
  border:1px solid #cbdbe3;
  border-radius:8px;
  background:#fff;
}
.kea-search-group__summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 24px;
  align-items:center;
  gap:18px;
  min-height:78px;
  padding:19px 24px;
  color:var(--kea-deep-blue);
  cursor:pointer;
  list-style:none;
  transition:background-color .18s ease,border-color .18s ease;
}
.kea-search-group__summary::-webkit-details-marker{display:none}
.kea-search-group__summary:hover,.kea-search-group__summary:focus-visible{background:#f7fafb}
.kea-search-group__heading{font-family:var(--kea-serif);font-size:25px;font-weight:400;line-height:1.15;letter-spacing:-.015em}
.kea-search-group__count{color:#667d89;font-size:12px;font-weight:500;letter-spacing:.03em}
.kea-search-group__toggle{position:relative;width:18px;height:18px;color:var(--kea-rich-blue)}
.kea-search-group__toggle::before,.kea-search-group__toggle::after{content:"";position:absolute;left:2px;top:8px;width:14px;height:1.5px;background:currentColor;transition:transform .18s ease}
.kea-search-group__toggle::after{transform:rotate(90deg)}
.kea-search-group[open] .kea-search-group__toggle::after{transform:rotate(0)}
.kea-search-group[open] .kea-search-group__summary{border-bottom:1px solid #d8e4e9;background:#f9fbfc}
.kea-search-group__content{padding:12px;background:#eef6f9}
.kea-search-group__content .kea-search-results__list{gap:10px}
.kea-search-group__content .kea-search-result{border-color:#d5e2e8}

@media (max-width:700px){
  .kea-search-group__summary{grid-template-columns:minmax(0,1fr) 20px;gap:12px;min-height:70px;padding:17px 18px}
  .kea-search-group__heading{font-size:22px}
  .kea-search-group__count{grid-column:1;grid-row:2;margin-top:-8px;font-size:11px}
  .kea-search-group__toggle{grid-column:2;grid-row:1/3}
  .kea-search-group__content{padding:8px}
}


/* =========================================================
   Mobile rendering performance
   =========================================================
   Below-the-fold homepage/footer regions can be skipped by supporting mobile
   browsers until they approach the viewport. This does not hide or lazy-load
   content and is ignored safely by browsers without content-visibility.
*/
@media (max-width:760px){
  @supports (content-visibility:auto){
    .kea-signposts,
    .kea-meetings-home,
    .kea-events-home,
    .kea-news-home,
    .kea-footer-newsletter,
    .kea-footer-main{
      content-visibility:auto;
      contain-intrinsic-size:auto 720px;
    }
  }
}
