/** Shopify CDN: Minification failed

Line 23:19 Expected identifier but found whitespace
Line 23:21 Unexpected "{"
Line 23:30 Expected ":"
Line 24:8 Expected identifier but found whitespace
Line 24:10 Unexpected "{"
Line 24:19 Expected ":"
Line 54:8 Expected identifier but found whitespace
Line 54:10 Unexpected "{"
Line 54:19 Expected ":"
Line 55:12 Expected identifier but found whitespace
... and 111 more hidden warnings

**/


/* CSS from section stylesheet tags */
/* =========================
   SECTION WRAPPER
   ========================= */
.cr-findschool {
  background-color: {{ section.settings.bg_color }};
  color: {{ section.settings.text_color }};
  padding-top: calc({{ section.settings.section_padding_y }}px + 80px); /* was +32px */
  padding-bottom: calc({{ section.settings.section_padding_y }}px + 64px);
  width: 100%;
  position: relative;
  z-index: 1;
  font-family: inherit;
}

.cr-findschool__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* =========================
   HEADLINE
   ========================= */
.cr-findschool__title {
  margin-bottom: 6rem;
  font-weight: 700;              /* was 800 */
  line-height: 1.15;             /* was 1.05 */
  text-transform: uppercase;
  letter-spacing: 0;             /* remove the -0.035em tighten */
  color: {{ section.settings.text_color }};
  font-size: {{ section.settings.left_heading_font_size_mobile }}px;
}

/* =========================
   MAP CARD / GLOW
   ========================= */
.cr-findschool__map-shell {
  --cr-glow-color: transparent;
  position: relative;
  width: 100%;
  max-width: 1100px;
  aspect-ratio: 16 / 10;
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 10px;
  box-shadow:
    0 24px 48px rgba(0,0,0,0.1),
    0 0 80px 25px color-mix(in srgb, var(--cr-glow-color) 65%, transparent);
  display: flex;
  align-items: stretch;
  justify-content: stretch;
  padding: 1rem;
  overflow: visible;   /* <- important */
  z-index: 1;          /* <- sit below the wordmark */
}

/* actual frame for overlays + leaflet */
.cr-findschool__map-frame {
  position: relative;
  flex: 1;
  border-radius: 6px;
  background: #F9FAFB;
  /* overflow: hidden;  ← REMOVE this line too */
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.06);
  z-index: 1;
}

/* the Leaflet map fills the frame */
.cr-findschool__map-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* =========================
   OVERLAYS
   ========================= */
.cr-findschool__pennant {
  position: absolute;
  top: .5rem;
  left: .5rem;
  z-index: 3;
  max-width: 120px;
  max-height: 70px;
  pointer-events: none;
  transform: rotate(-2deg);
}
.cr-findschool__pennant img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.35));
}

/* === Center Wordmark: lift slightly higher and ensure it floats above === */
.cr-findschool__wordmark {
  position: absolute;
  top: -6rem; /* moved even higher above the map */
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
  max-width: min(320px, 70%); /* slightly larger to balance proportions */
  max-height: 120px;
  pointer-events: none;
  text-align: center;
}

.cr-findschool__wordmark img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.35));
}

/* === Pennants: bigger and layered above the border === */
.cr-findschool__pennant {
  position: absolute;
  top: -2rem;         /* lifts higher above border */
  left: -2rem;        /* shifts further left */
  z-index: 999;       /* stays on top of map + border */
  max-width: 200px;   /* bigger pennant size */
  max-height: 120px;
  pointer-events: none;
  transform: rotate(-2deg); /* subtle tilt gives it a realistic "pinned" look */
}

.cr-findschool__pennant img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

.cr-findschool__logo {
  position: absolute;
  top: .5rem;
  right: .5rem;
  z-index: 999;
  width: 80px;               /* fixed bounding box */
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.cr-findschool__logo img {
  width: 75%;                /* scales logos consistently inside box */
  height: 75%;
  object-fit: contain;
  display: block;
  margin: auto;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.35));
}

/* =========================
   INFO BELOW MAP
   ========================= */
.cr-findschool__info {
  margin-top: 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  text-align: center;
  position: relative;
  font-size: {{ section.settings.left_heading_font_size_mobile }}px;
  z-index: 3;
  background: {{ section.settings.bg_color }};
  padding-bottom: 3rem;
}

.cr-findschool__active-name {
  font-weight: 800;
  line-height: 1.05;
  color: {{ section.settings.text_color }};
  text-transform: uppercase;
  font-size: clamp(1.5rem, 0.8vw + 1.25rem, 1.875rem);
  min-height: 1.5em;
}

.cr-findschool__list-link {
  font-size: .95rem;
  line-height: 1.4;
  color: {{ section.settings.text_color }};
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cr-findschool__list-link:hover {
  opacity: .7;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 768px) {
  .cr-findschool {
    padding-top: calc({{ section.settings.section_padding_y }}px + 48px);
    padding-bottom: calc({{ section.settings.section_padding_y }}px + 48px);
  }

  .cr-findschool__title {
    margin-bottom: 9rem;
    font-size: {{ section.settings.left_heading_font_size_desktop }}px;
  }

  .cr-findschool__map-shell {
    aspect-ratio: 3 / 4;
    padding: .75rem;
    box-shadow:
      0 20px 36px rgba(0,0,0,0.1),
      0 0 60px 20px color-mix(in srgb, var(--cr-glow-color) 65%, transparent);
  }

  .cr-findschool__active-name {
    font-size: clamp(1.25rem, 0.8vw + 1rem, 1.5rem);
  }

  .cr-findschool__info {
    margin-top: 9rem;
  }

  /* === NEW MOBILE OVERRIDES === */
  .cr-findschool__pennant {
    top: auto;
    left: .5rem;
    bottom: .5rem;
    transform: rotate(-2deg);
    max-width: 140px;
    max-height: 80px;
    z-index: 999;
  }

  .cr-findschool__logo {
    top: auto;
    right: .5rem;
    bottom: .5rem;
    max-width: 56px;
    max-height: 56px;
    z-index: 999;
  }

  .cr-findschool__wordmark {
    top: -4.35rem;
    max-width: min(260px, 75%);
    max-height: 90px;
  }
}

/* =========================
   LEAFLET OVERRIDES
   ========================= */
.leaflet-control-zoom,
.leaflet-control-attribution {
  display: none !important;
}
.leaflet-container {
  font: inherit;
  line-height: inherit;
  color: #000;
}

/* marker icons for schools on the map */
.cr-school-logo-pin {
  width: 32px;
  height: 32px;
  position: relative;
  left: -16px;
  top: -16px;
  cursor: pointer;
  transition: transform .15s ease, filter .15s ease;
  background: transparent;
  border: none;
  box-shadow: none;
  filter: none;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.cr-school-logo-pin:hover {
  transform: scale(1.15);
  filter: drop-shadow(0 4px 8px rgba(0,0,0,.45));
  z-index: 999;
}
.cr-school-logo-pin img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  display: block;
  border: none;
  background: none;
}

/* =========================
   MODAL (school list)
   ========================= */
.cr-findschool__modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgb(0 0 0 / .4);
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.cr-findschool__modal {
  background: #fff;
  color: #000;
  max-width: 500px;
  width: 100%;
  max-height: 80vh;
  overflow-y: auto;
  border-radius: 8px;
  box-shadow: 0 24px 64px rgb(0 0 0 / .5);
  padding: 1rem 1.25rem 1.25rem;
  font-size: .9rem;
  line-height: 1.4;
  position: relative;
  text-align: left;
  font-family: inherit;
}
.cr-findschool__modal-close {
  position: absolute;
  top: .5rem;
  right: .75rem;
  font-size: .9rem;
  font-weight: 600;
  cursor: pointer;
  color: #000;
}
.cr-findschool__modal h3 {
  margin: 0 0 .5rem 0;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.2;
  color: #000;
}
.cr-findschool__modal ul {
  margin: 0 0 1rem 1.25rem;
  padding: 0;
}
.cr-findschool__modal li {
  margin: .25rem 0;
  list-style: disc;
}

.cr-findschool__active-location {
  font-weight: 500;
  line-height: 1.3;
  color: {{ section.settings.text_color }};
  text-transform: none;
  min-height: 1.25em;
  opacity: 0.8;
  text-transform: uppercase;
  font-size: {{ section.settings.left_heading_font_size_mobile }}px;
}

#cr-leaflet-map-{{ section.id }} svg path {
  stroke-opacity: 1 !important;
  fill-opacity: 0.05 !important;
}
/* =========================
   WHAT IS CRIBREADY SECTION
   ========================= */

.cribready-about {
  background-color: {{ section.settings.bg_color }};
  color: {{ section.settings.text_color }};
  width: 100%;
  font-family: inherit;
  /* kill the blue border look / divider feel */
  border: 0;
  /* breathing room between bar + map */
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.cribready-about__inner {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;

  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* BIG headline */
.cribready-about__title {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: -0.035em;
  line-height: 1.05;
  color: {{ section.settings.text_color }};

  font-size: clamp(1.75rem, 1.2vw + 1.25rem, 2rem); /* desktop ~32px */
  /* match other headings vibe, make it feel like a section header */
  margin: 0 0 1rem 0;
}

/* paragraph block */
.cribready-about__body {
  max-width: 900px; /* readable line length */
  font-size: clamp(1rem, 0.3vw + 0.9rem, 1.125rem); /* ~18px desktop */
  line-height: 1.5;
  font-weight: 400;
  color: {{ section.settings.text_color }};

  /* subtle card-y vibe so it looks intentional, not floating text */
  background-color: #ffffff;
  box-shadow: 0 18px 36px rgba(0,0,0,.08);
  border: 1px solid rgba(0,0,0,.05);
  border-radius: 8px;

  padding: 1.25rem 1.5rem;
  text-align: center;
}

/* tighten shadow and padding on very small screens so it doesn't feel huge */
@media (max-width: 768px) {
  .cribready-about {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .cribready-about__title {
    font-size: clamp(1.5rem, 1vw + 1rem, 1.75rem);
    margin-bottom: 0.75rem;
  }

  .cribready-about__body {
    font-size: 1rem;
    line-height: 1.5;
    box-shadow: 0 14px 28px rgba(0,0,0,.08);
    border-radius: 6px;
    padding: 1rem 1rem;
  }
}
/* ====== WRAPPER ====== */
.cr-feature-split-wrapper {
  background-color: transparent;
  color: {{ section.settings.text_color }};
  width: 100%;
}

/* ====== ROW (WHITE BAR) ====== */
.cr-feature-split__info-row {
  background-color: {{ section.settings.background_color }};
  color: {{ section.settings.text_color }};
  width: 100%;
  min-height: {{ section.settings.section_min_height_vh }}vh;
  display: flex;
  align-items: center;
  padding: 2rem 1rem;
}

/* container for the two halves */
.cr-feature-split__info-inner {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;

  display: grid;
  grid-template-columns: 1fr 1fr; /* LEFT HALF / RIGHT HALF */
  column-gap: 2rem;
  row-gap: 2rem;
}

/* each half:
   text block + button in a 2-col mini layout, vertically centered together */
.cr-feature-split__side {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  justify-content: flex-start;
  column-gap: 2rem;
  row-gap: 1rem;
  min-width: 0;
}

/* LEFT HALF text block (now ONLY heading) */
.cr-feature-split__col-leftText {
  flex-shrink: 0;
  max-width: 38ch;
}

/* RIGHT HALF text block (now the body/paragraph that USED to live on the left) */
.cr-feature-split__col-rightText {
  flex-shrink: 0;
  max-width: 38ch;
  color: {{ section.settings.text_color }};
  line-height: 1.4;
  font-size: {{ section.settings.left_body_font_size_mobile }}px;
}
@media (min-width: 768px) {
  .cr-feature-split__col-rightText {
    font-size: {{ section.settings.left_body_font_size_desktop }}px;
  }
}

/* Heading style ("NEED FURNITURE?") */
.cr-feature-split__heading {
  font-weight: 700;
  line-height: 1.15;
  text-transform: uppercase;
  margin: 0;
  color: {{ section.settings.text_color }};
  font-size: {{ section.settings.left_heading_font_size_mobile }}px;
}
@media (min-width: 768px) {
  .cr-feature-split__heading {
    font-size: {{ section.settings.left_heading_font_size_desktop }}px;
  }
}

/* Paragraph style now displayed on RIGHT side */
.cr-feature-split__body {
  margin: 0;
  line-height: 1.4;
  color: {{ section.settings.text_color }};
  /* font sizes for body already handled above in .cr-feature-split__col-rightText */
}

/* BUTTON WRAPPER */
.cr-feature-split__sideBtnWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Button style stays the black/white block */
.cr-feature-split__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  background-color: #1F2023;
  color: #FFFFFF;

  text-decoration: none;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .03em;
  border-radius: 0;

  padding: 16px 48px;
  min-width: 240px;
  min-height: 50px;
  line-height: 1.2;
  font-size: 16px;

  border: 0;
  box-shadow: none;
  white-space: nowrap;
}
.cr-feature-split__btn:hover {
  filter: brightness(1.08);
}

/* ====== RESPONSIVE ====== */
@media (max-width: 1023px) {
  .cr-feature-split__info-inner {
    grid-template-columns: 1fr;
  }

  .cr-feature-split__side {
    grid-template-columns: 1fr;
    align-items: flex-start;
    justify-content: flex-start;
  }

  .cr-feature-split__sideBtnWrapper {
    width: 100%;
    justify-content: flex-start;
  }

  .cr-feature-split__btn {
    width: 100%;
    min-width: 0;
  }
}
/* ====== WRAPPER ====== */
.cr-service-area {
  background-color: {{ section.settings.bg_color }};
  color: {{ section.settings.text_color }};
  padding-top: {{ section.settings.section_padding_y }}px;
  padding-bottom: {{ section.settings.section_padding_y }}px;
  width: 100%;
  border-top: 1px solid rgba(0,0,0,.08);
  border-bottom: 1px solid rgba(0,0,0,.08);
  position: relative;
  z-index: 1;
  font-family: inherit;
}

/* MAIN 2-COLUMN LAYOUT */
.cr-service-area__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;

  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 0;
  row-gap: 2rem;
  align-items: stretch;

  padding-left: 0;
  padding-right: 0;
}

/* LEFT COLUMN: MAP CARD */
.cr-service-area__map-card {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  min-height: 400px;

  position: relative;
  overflow: hidden;

  background: #F9FAFB;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 0;
  box-shadow: 0 16px 32px rgb(0 0 0 / .08);
  display: block;
}

/* MAP CANVAS TAKES FULL CARD */
.cr-service-area__map-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* RIGHT COLUMN: INFO CARD */
.cr-service-area__info-card {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 4px;
  box-shadow: 0 16px 32px rgb(0 0 0 / .05);

  display: flex;
  flex-direction: column;
  padding: 1.25rem 1.25rem 1rem;
  color: {{ section.settings.text_color }};
}

.cr-service-area__heading {
  margin: 0 0 .5rem 0;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-transform: none;
  color: {{ section.settings.text_color }};
  font-size: clamp(1.25rem, 1vw + 1rem, 1.75rem);
}

.cr-service-area__subtext {
  margin: 0 0 1rem 0;
  font-size: .95rem;
  line-height: 1.4;
  color: {{ section.settings.text_color }};
  max-width: 42ch;
}

/* STATE GROUPS */
.cr-service-area__state-block {
  border-top: 1px solid rgba(0,0,0,.08);
  padding-top: 1rem;
  margin-top: 1rem;
  font-size: .925rem;
  line-height: 1.4;
  color: {{ section.settings.text_color }};
}

.cr-service-area__state-heading {
  display: block;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.3;
  margin: 0 0 .5rem 0;
  color: {{ section.settings.text_color }};
}

.cr-service-area__school-lines {
  margin: 0;
  padding: 0;
  list-style: none;
}
.cr-service-area__school-lines li {
  margin: .25rem 0;
  font-weight: 500;
}

/* NOTE BOX */
.cr-service-area__note-box {
  background: #F9FAFB;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 4px;
  padding: .75rem .75rem;
  margin-top: 1rem;
  font-size: .8rem;
  line-height: 1.4;
}

.cr-service-area__note-strong {
  font-weight: 600;
  color: {{ section.settings.text_color }};
}

/* Responsive */
@media (max-width: 768px) {
  .cr-service-area__inner {
    grid-template-columns: 1fr;
    row-gap: 1.5rem;
  }

  .cr-service-area__info-card {
    order: 1;
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .cr-service-area__map-card {
    order: 2;
    min-height: 300px;
    border-radius: 4px;
    margin-left: 1rem;
    margin-right: 1rem;
  }
}

/* Leaflet overrides */
.leaflet-container {
  font: inherit;
  line-height: inherit;
  color: #000;
}

.leaflet-control-attribution {
  font-size: 10px;
  background: rgba(255,255,255,.8);
  backdrop-filter: blur(4px);
  border-radius: 3px;
  padding: 2px 4px;
}

/* =======================
   School logo pin styles
   ======================= */

.cr-school-logo-pin {
  /* size of the clickable area */
  width: 32px;
  height: 32px;

  position: relative;
  left: -16px; /* center over lat/lng */
  top: -16px;

  cursor: pointer;
  transition: transform .18s ease, filter .18s ease;

  /* kill any background / border / shadow */
  background: transparent;
  border: none;
  box-shadow: none;
  filter: none;
  overflow: visible;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* hover effect: optional subtle lift */
.cr-school-logo-pin:hover {
  transform: scale(1.2);
  filter: drop-shadow(0 4px 8px rgba(0,0,0,.4));
  z-index: 1000;
}

/* the actual school logo */
.cr-school-logo-pin img {
  width: 28px;
  height: 28px;
  max-width: 28px;
  max-height: 28px;

  object-fit: contain;
  display: block;

  /* IMPORTANT:
     remove circular crop, remove white ring */
  border-radius: 0;
  background: none;
  border: none;
  box-shadow: none;
}