/* HAMBURGER-1280 (2026-09-02)
   Show off-canvas hamburger at <=1280px, hide mega menu in that range.
   Bootstrap d-lg-* classes use 992px; we override them up to 1280px.
*/

/* 992px–1280px: show hamburger, hide mega menu */
@media (min-width: 992px) and (max-width: 1280px) {
    #offcanvas-toggler {
        display: flex !important;
    }
    .sp-megamenu-parent {
        display: none !important;
    }
}

/* >1280px: hide hamburger, show mega menu (Bootstrap d-lg-* already does this, explicit backup) */
@media (min-width: 1281px) {
    #offcanvas-toggler {
        display: none !important;
    }
    .sp-megamenu-parent {
        display: block !important;
    }
}

/* ── MISSION-VISION-VALUE 3-COLUMN CARDS (2026-09-02) ────────────────────── */
.sdch-mvv-wrap {
    padding: 10px 0 40px;
}
.sdch-mvv-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 100%;
}
.sdch-mvv-card {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.10);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}
.sdch-mvv-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(202,0,0,0.18);
}
.sdch-mvv-header {
    background: #ca0000;
    color: #ffffff;
    text-align: center;
    padding: 16px 20px;
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-family: Oswald, sans-serif;
}
.sdch-mvv-img-wrap {
    background: #fff5f5;
    padding: 28px 20px 22px;
    text-align: center;
    border-bottom: 1px solid #f5e0e0;
}
.sdch-mvv-img-wrap img {
    width: 90px;
    height: 90px;
    object-fit: contain;
    display: inline-block;
}
.sdch-mvv-body {
    padding: 26px 24px 30px;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sdch-mvv-body p {
    font-size: 1.05rem;
    line-height: 1.75;
    color: #3a3a3a;
    text-align: center;
    margin: 0;
    font-style: italic;
}
.sdch-mvv-body p::before { content: 201C; color: #ca0000; font-size: 1.4em; line-height: 0; vertical-align: -0.3em; margin-right: 2px; }
.sdch-mvv-body p::after  { content: 201D; color: #ca0000; font-size: 1.4em; line-height: 0; vertical-align: -0.3em; margin-left: 2px; }

@media (max-width: 767px) {
    .sdch-mvv-grid { grid-template-columns: 1fr; gap: 20px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .sdch-mvv-grid { grid-template-columns: 1fr; gap: 20px; }
}

/* ── COLLEGE RULES PAGE (2026-09-02) ──────────────────────────────────── */
.sdch-rules-wrap { padding: 0 0 40px; max-width: 100%; }

.sdch-rules-nav { background: #f8f8f8; border-left: 4px solid #ca0000; padding: 12px 20px;
  margin-bottom: 28px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.sdch-rules-nav-label { font-weight: 700; color: #ca0000; font-size: .88rem; white-space: nowrap; }
.sdch-rules-nav-link { background: #ca0000; color: #fff !important; padding: 6px 16px;
  border-radius: 3px; font-size: .83rem; font-weight: 600;
  text-decoration: none !important; transition: background .2s; }
.sdch-rules-nav-link:hover { background: #9e0000; }

.sdch-rules-section { margin-bottom: 36px; border: 1px solid #e0e0e0; border-radius: 6px; overflow: hidden; }
.sdch-rules-section-hdr { background: #ca0000; color: #fff; padding: 15px 24px;
  font-size: 1.1rem; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; font-family: 'Oswald', sans-serif; }
.sdch-rules-intro { padding: 18px 24px; background: #fafafa; border-bottom: 1px solid #e8e8e8;
  margin: 0; line-height: 1.8; color: #444; font-size: .96rem; }
.sdch-rules-sub-title { font-weight: 700; color: #ca0000; font-size: .95rem;
  margin: 20px 24px 6px; padding-bottom: 5px; border-bottom: 2px solid #ca0000;
  text-transform: uppercase; letter-spacing: .5px; }

.sdch-rules-list { padding: 14px 24px 20px 54px; margin: 0; }
.sdch-rules-list > li { margin-bottom: 13px; line-height: 1.75; color: #333; font-size: .94rem; }
.sdch-rules-list > li:last-child { margin-bottom: 0; }
.sdch-rules-list ol[type="a"] { margin-top: 8px; padding-left: 18px; }
.sdch-rules-list ol[type="a"] > li { margin-bottom: 5px; }

.sdch-rules-badge { display: inline-block; background: #ca0000; color: #fff;
  font-size: .7rem; font-weight: 700; padding: 2px 7px; border-radius: 3px;
  margin-right: 5px; vertical-align: middle; letter-spacing: .5px; text-transform: uppercase; }

.sdch-rules-note { background: #fff8f0; border-left: 4px solid #e6a817; padding: 11px 15px;
  margin: 10px 24px; border-radius: 0 4px 4px 0; font-size: .88rem; line-height: 1.6; }
.sdch-rules-note ul { margin: 6px 0 0 18px; padding: 0; }
.sdch-rules-note ul li { margin-bottom: 4px; }

.sdch-rules-subsec { margin: 14px 0; padding: 12px 15px; background: #f5f5f5; border-radius: 4px; }
.sdch-rules-subsec > strong { display: block; color: #ca0000; margin-bottom: 8px; font-size: .93rem; }
.sdch-rules-subsec p { margin: 6px 0; font-size: .9rem; }

.sdch-rules-table { width: 100%; border-collapse: collapse; margin: 10px 0 14px; font-size: .9rem; }
.sdch-rules-table th { background: #ca0000; color: #fff; padding: 9px 13px;
  text-align: left; font-weight: 600; }
.sdch-rules-table td { padding: 8px 13px; border-bottom: 1px solid #e0e0e0; color: #333; }
.sdch-rules-table tbody tr:nth-child(even) { background: #f7f7f7; }
.sdch-rules-table tbody tr:hover { background: #fff0f0; }

.sdch-rules-helpbox { background: #fff5f5; border: 2px solid #ca0000; border-radius: 6px;
  padding: 18px 22px; margin: 18px 24px; }
.sdch-rules-helpbox-title { color: #ca0000; font-weight: 700; font-size: .96rem;
  margin-bottom: 10px; text-transform: uppercase; letter-spacing: .5px; }
.sdch-rules-helpbox ul { margin: 0; padding-left: 18px; }
.sdch-rules-helpbox ul li { margin-bottom: 7px; line-height: 1.65; }

.sdch-rules-closing { text-align: center; padding: 18px 24px; background: #fef9f9;
  border-top: 2px dashed #ca0000; font-style: italic; color: #555; margin-top: 0; }
.sdch-rules-closing p { margin: 3px 0; }

@media (max-width: 767px) {
  .sdch-rules-section-hdr { font-size: .97rem; padding: 13px 15px; }
  .sdch-rules-list { padding: 10px 14px 14px 34px; }
  .sdch-rules-note, .sdch-rules-helpbox { margin: 10px 0; }
  .sdch-rules-sub-title { margin: 14px 0 6px; }
  .sdch-rules-nav { padding: 10px 12px; gap: 7px; }
}
