/* Softened-edges preview (Sept 2026 meeting).
   Inert unless <html> carries .edges-soft or .edges-round, which
   /ported/soft.js sets from ?edges=soft|round. Radii follow the
   curriculum page: 8-12px small parts, 16px media, 24-30px panels, pill buttons. */

html.edges-soft  { --r-sm: 6px;  --r-md: 12px; --r-lg: 16px; --r-btn: 6px; --gap: 0px; }
html.edges-round { --r-sm: 10px; --r-md: 18px; --r-lg: 28px; --r-btn: 999px; --gap: 16px; }

/* Buttons: Learn More, form Submit, Give */
:is(.edges-soft, .edges-round) .button,
:is(.edges-soft, .edges-round) .gform_button,
:is(.edges-soft, .edges-round) input[type=submit] {
  border-radius: var(--r-btn) !important;
}
.edges-round .button { transform: none !important; }
.edges-round .button::before, .edges-round .button::after { border-radius: var(--r-btn) !important; }

/* Form fields */
:is(.edges-soft, .edges-round) .gform_wrapper :is(input:not([type=submit]), select, textarea) {
  border-radius: var(--r-sm) !important;
}

/* Image tiles (home, about, resources). The 8px white border is the gutter,
   so rounding the tile rounds the photo inside it. */
:is(.edges-soft, .edges-round) .image-link {
  border-radius: calc(var(--r-lg) + 8px) !important;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black); /* Safari clip fix */
}
:is(.edges-soft, .edges-round) .image-link > * { border-radius: var(--r-lg); }
.edges-round .row.expanded.collapse.medium-up-3 { padding: 0 var(--gap); }

/* Split sections (Rick DuBose, We Provide, Are You Ready):
   round the photo on the soft level, lift the whole split into a card on round. */
.edges-soft .section-split .split-image-wrapper { border-radius: 0 var(--r-lg) var(--r-lg) 0; overflow: hidden; }
.edges-soft .section-split.section-split-right .split-image-wrapper,
.edges-soft .section-split:has(.section-split-right) .split-image-wrapper { border-radius: var(--r-lg) 0 0 var(--r-lg); }
.edges-round .section-split {
  margin: var(--gap) var(--gap);
  width: calc(100% - 2 * var(--gap));
  border-radius: var(--r-lg);
  overflow: hidden;
}

/* Bradford framed quote: the frame is an outline, which follows border-radius */
:is(.edges-soft, .edges-round) .section-video .section-content { border-radius: var(--r-lg); }

/* Dark label blocks ("There is hope", Bradford title) */
:is(.edges-soft, .edges-round) h5 { border-radius: var(--r-sm); }

/* Dropdown menus, hamburger panel, search overlay */
:is(.edges-soft, .edges-round) .sub-menu { border-radius: 0 0 var(--r-md) var(--r-md); overflow: hidden; }
:is(.edges-soft, .edges-round) :is(.search-ov__panel, .search-ov__bar, .search-res) { border-radius: var(--r-md); }

/* Video frames */
:is(.edges-soft, .edges-round) :is(.flex-video, .video-wrapper, iframe) { border-radius: var(--r-lg); overflow: hidden; }

/* Preview switcher */
.edges-switch {
  position: fixed; left: 50%; bottom: 20px; transform: translateX(-50%); z-index: 99999;
  display: flex; gap: 4px; padding: 6px; border-radius: 999px;
  background: rgba(54, 62, 71, .94); box-shadow: 0 8px 30px rgba(0,0,0,.3);
  font: 700 13px/1 "Fira Sans", sans-serif; letter-spacing: .06em; text-transform: uppercase;
}
.edges-switch span { color: #fff; opacity: .7; padding: 10px 6px 10px 12px; }
.edges-switch a {
  color: #fff; text-decoration: none; padding: 10px 16px; border-radius: 999px;
}
.edges-switch a[aria-current=true] { background: #00909b; }
.edges-switch a:hover { background: rgba(255,255,255,.12); }
.edges-switch a[aria-current=true]:hover { background: #00909b; }
@media (max-width: 600px) { .edges-switch span { display: none; } .edges-switch a { padding: 10px 12px; } }
