/* JKP 1.1: clubroom, member profiles, calendar, header and footer. No stored content changes. */

/* Inset the header separator from the lower edge and match the footer contrast. */
#page .elementor.elementor-136 .elementor-element-74bb010 {
  padding-bottom:12px;
}
#page .elementor.elementor-136 .elementor-element-88a76a1 {
  border-bottom-color:rgba(255,255,255,.24);
}

/* The separator belongs to the column grid, so space is needed INSIDE this border. */
#page .elementor.elementor-277 .elementor-element-3569f7f {
  padding-top:36px;
  border-top-color:rgba(255,255,255,.24);
}

/* Clubroom: retain alternating desktop sections and all existing photographs. */
#page .elementor-752 { max-width:1140px; margin:auto; padding:40px 24px 56px; }
#page .elementor-752 > .e-con { width:100%; padding:0; margin:0 0 40px; gap:40px; align-items:start; }
#page .elementor-752 > .e-con > .e-con { flex:1 1 0; min-width:0; width:auto; padding:0; margin:0; }
#page .elementor-752 .e-con .e-con { padding:0; }
#page .elementor-752 .e-con-inner { padding:0; gap:16px; width:100%; }
#page .elementor-752 .elementor-widget-text-editor { font-size:17px; line-height:1.8; text-align:left; }
#page .elementor-752 .elementor-widget-text-editor p { margin:0 0 1em; }
#page .elementor-752 .elementor-widget-image { min-width:0; line-height:0; }
#page .elementor-752 .elementor-widget-image img { max-width:100%; max-height:420px; width:auto; height:auto; border-radius:4px; object-fit:contain; }
#page .elementor-752 .e-con-inner:has(> .elementor-widget-image) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; }
#page .elementor-752 .e-con-inner:has(> .elementor-widget-image:only-child) { grid-template-columns:minmax(0,1fr); }
#page .elementor-752 h1 { font-size:40px; line-height:1.15; margin:0; }
#page .elementor-752 .elementor-widget-heading { text-align:left; width:100%; }

/* One member per row; existing four-part profile markup stays editable in Elementor. */
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) { max-width:1140px; margin:auto; padding:40px 24px 56px; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) > .e-con { padding:0; margin:0; width:100%; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) > .e-con:first-child { margin-bottom:28px; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) > .e-con:first-child .e-con,
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) > .e-con:first-child .e-con-inner { padding:0; gap:16px; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) h1 { font-size:40px; line-height:1.15; margin:0; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,40%);
  grid-template-areas:'title photos' 'text photos'; grid-template-rows:auto 1fr;
  gap:16px 36px; width:100%; margin:0; padding:32px 0;
  border:0; border-bottom:1px solid var(--jkp-line,#ded9cc); align-items:start;
}
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-con,
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-con-inner { width:100%; min-width:0; padding:0; margin:0; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile > .e-con:nth-child(1) { grid-area:title; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile > .e-con:nth-child(2) { grid-area:photos; align-self:start; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile > .e-con:nth-child(3) { grid-area:text; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile > .e-con:nth-child(4) { display:none; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-heading { text-align:left; width:100%; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile :is(h2,h3) { font-size:25px; line-height:1.25; margin:0; color:var(--jkp-ink,#2b2b2b); }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-text-editor { font-size:16px; line-height:1.7; text-align:left; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-text-editor p { margin:0 0 1em; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-text-editor p:last-child { margin-bottom:0; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-grid > .e-con-inner {
  display:grid; grid-template-rows:auto; grid-template-columns:none;
  grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:12px; align-items:center;
}
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-image { width:100%; min-width:0; line-height:0; }
#page .elementor-340 .jkp-profile .elementor-widget-image { min-height:180px; display:flex; align-items:center; justify-content:center; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .elementor-widget-image img { width:auto; height:auto; max-width:100%; max-height:180px; object-fit:contain; border-radius:3px; }

/* Search is inserted only after its event handlers are ready. No-JS keeps every member. */
#page .jkp-member-search { width:100%; padding:20px 24px; margin:0 0 8px; border-radius:4px; background:var(--jkp-paper,#f5f2e8); }
#page .jkp-member-search label { display:block; font-size:15px; line-height:1.5; font-weight:600; margin-bottom:8px; }
#page .jkp-member-search__controls { display:flex; gap:12px; max-width:560px; }
#page .jkp-member-search input { min-width:0; flex:1; padding:11px 14px; min-height:46px; border:1px solid #b7b0a1; border-radius:4px; background:#fff; color:#2b2b2b; font:inherit; }
#page .jkp-member-search input:focus-visible, #page .tribe-events input:focus-visible { outline:2px solid #a31d1e; outline-offset:2px; border-color:#a31d1e; box-shadow:none; }
#page .jkp-member-search button { padding:10px 16px; min-height:46px; border:1px solid var(--jkp-red,#a31d1e); border-radius:4px; color:var(--jkp-red,#a31d1e); background:transparent; font:inherit; font-weight:600; }
#page .jkp-member-search button:disabled { opacity:.45; cursor:default; }
#page .jkp-member-search button:not(:disabled):hover { background:#a31d1e0d; }
#page .jkp-member-search__status { display:block; margin-top:8px; min-height:22px; font-size:14px; color:#625b50; }
#page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .e-con[hidden] { display:none !important; }

/* TEC keeps its native AJAX, date picker, search, view switching and subscriptions. */
#page .tribe-events {
  --tec-color-accent-primary:#a31d1e;
  --tec-color-accent-primary-hover:#821718;
  --tec-color-accent-primary-active:#821718;
  --tec-color-accent-primary-background:#a31d1e0d;
  --tec-color-accent-primary-background-datepicker:#f5f2e8;
  --tec-color-button-primary:#a31d1e;
  --tec-color-button-primary-hover:#821718;
  --tec-color-button-primary-active:#821718;
  --tec-color-button-primary-background:#a31d1e0d;
  --tec-color-link-accent:#a31d1e;
  --tec-color-link-accent-hover:#821718;
  --tec-color-background-events-bar-submit-button:#a31d1e;
  --tec-color-background-events-bar-submit-button-hover:#821718;
  --tec-color-background-events-bar-submit-button-active:#821718;
  --tec-color-accent-primary-week-event:#a31d1e12;
  --tec-color-accent-primary-week-event-hover:#a31d1e24;
  --tec-color-accent-primary-week-event-featured:#a31d1e0d;
  --tec-color-accent-primary-week-event-featured-hover:#a31d1e20;
  --tec-color-background-primary-multiday:#a31d1e18;
  --tec-color-background-primary-multiday-hover:#a31d1e30;
  --tec-color-text-events-title-month-multiday:#821718;
  --tec-border-radius-month-multiday:4px;
  --tec-color-text-primary:#2b2b2b;
  --tec-color-border-default:#ded9cc;
}
#page .tribe-events .tribe-events-l-container { max-width:1188px; width:100%; min-height:0; margin:auto; padding:40px 24px 64px; }
#page .tribe-events .tribe-events-header__content-title h1 {
  position:static !important; clip:auto !important; clip-path:none !important;
  width:auto !important; height:auto !important; overflow:visible !important;
  padding:0 !important; margin:0 0 28px !important; white-space:normal;
  font-size:40px; line-height:1.15; font-weight:600; color:#2b2b2b;
}
#page .tribe-events .tribe-events-c-events-bar { border:1px solid #ded9cc; border-radius:4px; box-shadow:none; background:#faf9f6; margin-bottom:28px; }
#page .tribe-events .tribe-events-c-search__button { min-height:46px; border-radius:4px; padding:12px 22px; font-weight:600; }
#page .tribe-events .tribe-events-c-search__input { min-height:46px; font-size:16px; }
#page .tribe-events .tribe-events-c-view-selector__list-item--active { background:#f5f2e8; }
#page .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link { color:#a31d1e; }
#page .tribe-events .tribe-events-c-view-selector__list-item-link::after { background-color:#a31d1e; }
#page .tribe-events .tribe-events-c-top-bar { margin-bottom:28px; }
#page .tribe-events .tribe-events-c-top-bar__datepicker-button { font-size:26px; line-height:1.3; }
#page .tribe-events .tribe-events-calendar-list__month-separator { margin:0; padding:16px 0; }
#page .tribe-events .tribe-events-calendar-list__month-separator-text { font-size:16px; font-weight:600; }
#page .tribe-events .tribe-events-calendar-list__event-row { display:grid; grid-template-columns:72px minmax(0,1fr); gap:24px; margin:16px 0 32px; padding:24px 0 32px; border-bottom:1px solid #ded9cc; }
#page .tribe-events .tribe-events-calendar-list__event-date-tag { width:72px; padding:0; }
#page .tribe-events .tribe-events-calendar-list__event-date-tag-datetime { width:72px; height:auto; min-height:82px; padding:14px 8px; background:#f5f2e8; border-radius:4px; }
#page .tribe-events .tribe-events-calendar-list__event-date-tag-daynum { font-size:28px; line-height:1.2; font-weight:600; color:#a31d1e; }
#page .tribe-events .tribe-events-calendar-list__event-date-tag-weekday { color:#625b50; }
#page .tribe-events .tribe-events-calendar-list__event-wrapper { width:100%; padding:0; min-width:0; }
#page .tribe-events .tribe-events-calendar-list__event { display:flex; flex-direction:row; flex-wrap:nowrap; gap:32px; margin:0; align-items:flex-start; }
#page .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper { flex:0 0 280px; width:280px; padding:0; margin:0; order:2; }
#page .tribe-events .tribe-events-calendar-list__event-featured-image { display:block; width:100%; height:190px; object-fit:cover; border-radius:4px; }
#page .tribe-events .tribe-events-calendar-list__event-details { flex:1 1 0; width:auto; min-width:0; padding:0; order:1; }
#page .tribe-events .tribe-events-calendar-list__event-title { font-size:25px; line-height:1.25; margin:0 0 10px; }
#page .tribe-events .tribe-events-calendar-list__event-title-link { color:#a31d1e; }
#page .tribe-events .tribe-events-calendar-list__event-datetime-wrapper { color:#625b50; font-size:14px; margin-bottom:12px; }
#page .tribe-events .tribe-events-calendar-list__event-description { font-size:16px; line-height:1.65; margin-top:12px; }
#page .tribe-events .tribe-events-calendar-list__event-description p { margin:0; }
#page .tribe-events .tribe-events-calendar-list-nav { padding-top:0; border-top:0; }
#page .tribe-events .tribe-events-c-subscribe-dropdown__container { padding:0; margin-top:24px; }
#page .tribe-events .tribe-events-c-subscribe-dropdown { margin:0; }
#page .tribe-events .tribe-events-c-subscribe-dropdown__button { border:1px solid #b7b0a1; border-radius:4px; color:#625b50; background:transparent; }
#page .tribe-events .tribe-events-c-subscribe-dropdown__button:hover { color:#a31d1e; border-color:#a31d1e; background:#f5f2e8; }
#page .tribe-events .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__day-date,
#page .tribe-events .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__day-date-daynum { color:#fff; }
#page .tribe-events .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__mobile-events-icon { background-color:#fff; }

@media (max-width:900px) {
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile { grid-template-columns:minmax(0,1fr) minmax(260px,40%); gap:16px 24px; }
  #page .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper { flex-basis:220px; width:220px; }
  #page .tribe-events .tribe-events-calendar-list__event-featured-image { height:160px; }
}
@media (max-width:767px) {
  #page .elementor.elementor-277 .elementor-element-3569f7f { padding-top:28px; }
  #page .elementor-752, #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) { padding:32px 20px 40px; }
  #page .elementor-752 h1, #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) h1 { font-size:32px; }
  #page .elementor-752 > .e-con { flex-direction:column; gap:24px; margin-bottom:32px; }
  #page .elementor-752 > .e-con > .e-con { width:100%; flex:auto; }
  #page .elementor-752 > .e-con > .e-con:has(.elementor-widget-text-editor) { order:0; }
  #page .elementor-752 > .e-con > .e-con:has(.elementor-widget-image) { order:1; }
  #page .elementor-752 .elementor-widget-text-editor { font-size:16px; line-height:1.75; }
  #page .elementor-752 .elementor-widget-image img { max-height:300px; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile { grid-template-columns:minmax(0,1fr); grid-template-rows:auto; grid-template-areas:'title' 'photos' 'text'; gap:20px; padding:28px 0; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile :is(h2,h3) { font-size:24px; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-grid > .e-con-inner { grid-auto-flow:row; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-grid > .e-con-inner:has(> .elementor-widget-image:nth-child(3)) > .elementor-widget-image:first-child { grid-row:1 / span 2; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-grid > .e-con-inner:has(> .elementor-widget-image:nth-child(3)) > .elementor-widget-image:not(:first-child) { grid-column:2; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .jkp-profile .e-grid > .e-con-inner:has(> .elementor-widget-image:nth-child(3)) > .elementor-widget-image:not(:first-child) img { max-height:120px; }
  #page .elementor-340 .jkp-profile .e-grid > .e-con-inner:has(> .elementor-widget-image:nth-child(3)) > .elementor-widget-image:not(:first-child) { min-height:120px; }
  #page .jkp-member-search { padding:16px; }
  #page .jkp-member-search__controls { gap:8px; }
  #page .jkp-member-search button { padding:10px 12px; font-size:14px; }
  #page .tribe-events .tribe-events-l-container { padding:32px 20px 40px; }
  #page .tribe-events .tribe-events-header__content-title h1 { font-size:32px; margin-bottom:24px !important; }
  #page .tribe-events .tribe-events-c-events-bar { background:#fff; border:0; }
  #page .tribe-events .tribe-events-header { padding-bottom:0; }
  #page .tribe-events .tribe-events-c-events-bar, #page .tribe-events .tribe-events-c-top-bar { margin-bottom:12px; }
  #page .tribe-events .tribe-events-calendar-list__month-separator { padding:8px 0; }
  #page .tribe-events .tribe-events-c-top-bar__datepicker-button { font-size:21px; }
  #page .tribe-events .tribe-events-calendar-list__event-row { grid-template-columns:54px minmax(0,1fr); gap:16px; padding:16px 0 24px; margin:8px 0 24px; }
  #page .tribe-events .tribe-events-calendar-list__event-date-tag,
  #page .tribe-events .tribe-events-calendar-list__event-date-tag-datetime { width:54px; }
  #page .tribe-events .tribe-events-calendar-list__event-date-tag-datetime { min-height:72px; padding:12px 4px; }
  #page .tribe-events .tribe-events-calendar-list__event { flex-direction:column; gap:16px; }
  #page .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper { order:0; flex:0 0 auto; width:100%; }
  #page .tribe-events .tribe-events-calendar-list__event-featured-image { height:auto; aspect-ratio:3/2; }
  #page .tribe-events .tribe-events-calendar-list__event-details { width:100%; }
  #page .tribe-events .tribe-events-calendar-list__event-title { font-size:22px; }
  #page .tribe-events .tribe-events-calendar-list__event-description { display:block !important; visibility:visible; }
  /* Keep the date beside the photo, then give the title and description the full line. */
  #page .tribe-events .tribe-events-calendar-list__event-row:has(.tribe-events-calendar-list__event-featured-image-wrapper) { display:block; position:relative; }
  #page .tribe-events .tribe-events-calendar-list__event-row:has(.tribe-events-calendar-list__event-featured-image-wrapper) .tribe-events-calendar-list__event-date-tag { position:absolute; top:16px; left:0; }
  #page .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper { margin-left:70px; width:calc(100% - 70px); }
}
@media print {
  #page .jkp-member-search { display:none; }
  #page :is(.elementor-340, .jkp-memory-page [data-elementor-type="wp-page"]) .e-con[hidden] { display:block !important; }
}

/* Native Elementor profiles added during the one-time archive migration. */
#page .jkp-native-profile { --display:grid; }
#page .jkp-native-profile > .e-con { display:flex; flex-direction:column; }
#page .jkp-native-profile > .jkp-profile-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#page .jkp-native-profile > .jkp-profile-photos:has(> :only-child) { grid-template-columns:1fr; }
#page .jkp-people-nav { display:flex; flex-wrap:wrap; gap:4px 8px; margin:0; }
#page .jkp-people-nav a { display:block; padding:12px 18px; border-radius:3px; font-size:16px; line-height:1.3; font-weight:600; color:#a31d1e; text-decoration:none; }
#page .jkp-people-nav a:hover, #page .jkp-people-nav a[aria-current] { background:#a31d1e; color:#fff; }
#page .jkp-people-nav a:focus-visible { outline:2px solid #a31d1e; outline-offset:2px; }
#page .elementor-340 > .e-con.jkp-people-nav-wrap { position:sticky; top:var(--jkp-nav-top,0px); z-index:20; background:#fff; padding:10px 0; margin:0 0 20px; border-bottom:1px solid #ded9cc; }
#page .elementor-340 > .e-con.jkp-people-group { gap:0; margin:64px 0 0; scroll-margin-top:var(--jkp-anchor-margin,90px); }
#page .elementor-340 > .e-con.jkp-people-group:first-of-type { margin-top:32px; }
#page .elementor-340 .jkp-people-section { width:100%; padding:24px; margin:0; background:#f5f2e8; border:0; border-left:4px solid #a31d1e; border-radius:3px; }
#page .elementor-340 .jkp-people-section h2 { font-size:32px; font-weight:700; line-height:1.2; margin:0; }
#page .elementor-340 .jkp-profile-row { width:100%; padding:0; margin:0; }
#page .elementor-340 .jkp-profile h3 { font-weight:600; }
#page .elementor-340 .jkp-waiting-footer { padding:24px; margin-top:24px; background:#faf9f5; border:1px solid #ded9cc; border-radius:3px; gap:20px; }
@media(max-width:767px) {
  #page .elementor-340 > .e-con.jkp-people-group { margin-top:40px; }
  #page .elementor-340 .jkp-people-section { padding:20px; }
  #page .elementor-340 .jkp-people-section h2 { font-size:28px; }
  #page .jkp-people-nav { gap:4px; }
  #page .jkp-people-nav a { font-size:14px; padding:12px; }
}
@media print { #page .jkp-people-nav-wrap { display:none; } }
#page .jkp-waiting-footer { padding-top:24px; font-size:16px; }
#page .jkp-waiting-footer-photos { display:flex; flex-direction:row; gap:20px; max-width:360px; }
#page .jkp-waiting-footer-photos img { max-height:150px; width:auto; object-fit:contain; }
#page .elementor-340 .jkp-waiting-footer-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
#page .elementor-340 .jkp-waiting-footer-photos .elementor-widget-image { min-height:150px; display:flex; align-items:center; justify-content:center; }

/* Compact native Ivory Search dropdown. */
.jkp-search-suggestions.is-ajax-search-result { position:fixed !important; left:var(--jkp-results-left,20px) !important; top:var(--jkp-results-top,150px) !important; width:360px !important; max-width:calc(100vw - 40px); box-sizing:border-box; padding:0 !important; border:1px solid #ded9cc !important; border-radius:4px; box-shadow:0 10px 25px #241d1724; overflow:hidden; }
.jkp-search-suggestions .is-ajax-search-items { max-height:min(400px,var(--jkp-results-height,400px)) !important; }
.jkp-search-suggestions .is-ajax-search-post { padding:14px 16px; border-bottom:1px solid #e9e5dc; }
.jkp-search-suggestions .is-title a { color:#a31d1e; font-size:15px; line-height:1.4; font-weight:600; }
.jkp-search-suggestions .is-ajax-result-description { font-size:13px; line-height:1.5; color:#625b50; margin-top:6px; }
.jkp-search-suggestions .is-show-more-results { border-top:1px solid #ded9cc; padding:13px; background:#f5f2e8; color:#a31d1e; font-size:14px; font-weight:600; }
.jkp-search-suggestions a:focus-visible, .jkp-search-suggestions [role="button"]:focus-visible { outline:2px solid #a31d1e; outline-offset:2px; }
#page #masthead .jkp-site-search { position:relative; display:flex; align-items:center; margin-left:10px; padding:0; }
#page #masthead .jkp-site-search > a { width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; padding:10px; border-radius:4px; color:#fff; }
#page #masthead .jkp-site-search > a:hover, #page #masthead .jkp-site-search > a:focus-visible { background:rgba(255,255,255,.12); outline-offset:2px; }
#page #masthead .jkp-site-search > a svg { width:20px; height:20px; fill:currentColor; }
#page #masthead .jkp-site-search .is-search-form { right:0; left:auto; top:calc(100% + 16px); width:360px; max-width:calc(100vw - 40px); padding:12px; background:#fff; border:1px solid #ded9cc; border-radius:4px; box-shadow:0 10px 25px #241d1724; }
#page #masthead .jkp-site-search .is-search-input { min-height:46px; font-size:16px !important; border-color:#b7b0a1 !important; color:#2b2b2b !important; }
#page #masthead .jkp-site-search .is-search-submit, #page #masthead .jkp-site-search .is-search-icon { height:46px; min-width:46px; background:#a31d1e; border-color:#a31d1e; }
#page #masthead .jkp-site-search .is-search-icon svg { fill:#fff; }
#page #masthead .jkp-site-search .is-search-icon svg path { fill:#fff !important; }
#page #masthead .jkp-search-open > a svg { opacity:0; }
#page #masthead .jkp-site-search .search-close { right:0; top:2px; width:44px; height:40px; }
#page #masthead .jkp-site-search .is-search-form { padding:12px !important; box-sizing:border-box; }
#page #masthead .jkp-site-search .is-search-form > label { float:left; display:block; width:calc(100% - 46px) !important; max-width:none !important; margin:0; }
#page #masthead .jkp-site-search .is-search-submit { float:none; display:inline-flex; width:46px !important; padding:0 !important; vertical-align:top; }
@media(max-width:1024px){
 #page #masthead .jkp-site-search { margin:0; padding:0 20px; width:100%; flex-wrap:wrap; }
 #page #masthead .jkp-site-search .is-search-form { position:relative !important; left:0; right:auto; top:auto; z-index:5; flex-basis:100%; margin:0 0 12px; }
 #page #masthead .jkp-site-search .search-close { left:20px; right:auto; }
}

/* TEC list includes both future and past events; month view retains its date picker. */
#page .jkp-combined-events .tribe-events-c-top-bar__datepicker,
#page .jkp-combined-events .tribe-events-c-top-bar__today-button { display:none !important; }
#page .jkp-calendar-section { list-style:none; margin:24px 0 4px; padding:0; }
#page .jkp-calendar-section h2 { font-size:28px; line-height:1.25; margin:0; color:#2b2b2b; }
#page .jkp-all-reports { margin:28px 0 0; font-size:16px; }
#page .jkp-all-reports a { color:#a31d1e; font-weight:600; }
#page .jkp-source-unavailable { text-decoration:underline dotted; text-underline-offset:3px; }
#page .jkp-missing-source { color:#625b50; font-size:14px; padding:12px 16px; border-left:2px solid #ded9cc; }
#page .jkp-event-report-link a { display:inline-block; color:#a31d1e; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:767px){ #page .jkp-calendar-section h2 { font-size:25px; } }
