/* Generated by tools/build_css.py from the static site css/service.css. Do not edit. */
.sv-prose{max-width:680px}
.sv-prose p{margin:0 0 20px;color:var(--p-body);font-size:16.5px;line-height:1.72}
.sv-prose p:last-child:not(:where(.bc-w:not(:last-child)>*)){margin-bottom:0}
.sv-prose h3{margin:32px 0 12px;font:600 18px/1.3 'Switzer',sans-serif;
  letter-spacing:.1px;color:var(--p-ink)}
.sv-prose b{font-weight:600;color:var(--p-ink)}
.sv-prose ul{margin:0 0 20px;padding-left:20px}
.sv-prose li{margin:0 0 9px;color:var(--p-body);font-size:16.5px;line-height:1.65}
.sv-prose a{color:var(--dept,var(--p-ink));font-weight:500}
.sv-prose a:hover,.sv-prose a:focus-visible{text-decoration:underline}

.sv-split{display:grid;grid-template-columns:1fr .92fr;gap:clamp(32px,5vw,72px);align-items:start}
.sv-split .sv-prose{max-width:none}
.sv-split .carousel{margin:0}
.sv-split .carousel-slide img{height:clamp(280px,26vw,380px)}
@media(max-width:900px){
  .sv-split{grid-template-columns:1fr;gap:30px}
  .sv-split .carousel-slide img{height:260px}
}
.sv-hero{margin:0}
.sv-hero img{display:block;width:100%;height:clamp(280px,36vw,460px);
  object-fit:cover;border-radius:20px}

.sv-figure{margin:28px 0 0;max-width:680px}
.sv-figure img{display:block;width:100%;border-radius:16px}

.sv-accred{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:clamp(26px,3vw,42px)}
.sv-acc{display:flex;flex-direction:column;gap:9px}
.sv-acc-mark{display:flex;align-items:flex-end;height:46px}
.sv-acc-mark img{max-height:46px;max-width:150px;width:auto;object-fit:contain}
.sv-acc-mark i{font-size:31px;color:var(--dept,var(--p-ink))}
.sv-acc b{font-size:15px;font-weight:600;color:var(--p-ink)}
.sv-acc>span:last-child:not(:where(.bc-w:not(:last-child)>*)),.sv-acc> :where(.elementor,.elementor-widget) >span:last-child:not(:where(.bc-w:not(:last-child)>*)){color:var(--p-quiet);font-size:13.5px;line-height:1.55}

.sv-dance{--dept:var(--dance)}
.sv-music{--dept:var(--music)}
.sv-tkd{--dept:var(--tkd)}

.sv .times-pending{margin:0}
.sv-timetable{display:inline-flex;align-items:center;gap:9px;padding:13px 20px;
  border:1px solid var(--p-line);border-radius:8px;color:var(--p-ink);
  font-size:14px;font-weight:600;letter-spacing:.1px}
.sv-timetable i:first-child:not(:where(.bc-w:not(:first-child)>*)){font-size:1.05rem;line-height:1}
.sv-timetable i:last-child:not(:where(.bc-w:not(:last-child)>*)){font-size:.85rem;line-height:1}
.sv-timetable:hover,.sv-timetable:focus-visible{border-color:var(--dept,var(--p-ink));
  color:var(--dept,var(--p-ink))}

.m-row-link{display:inline-flex;align-items:center;gap:7px;margin-top:4px;
  color:var(--music);font-size:13.5px;font-weight:600;letter-spacing:.1px}
.m-row-link i{font-size:.82rem;line-height:1}
.m-row-link:hover,.m-row-link:focus-visible{filter:brightness(.88)}

.sv-related{max-width:1120px;margin:70px auto 0;padding-top:34px;
  border-top:1px solid var(--p-line,#EDE9F2)}
.sv-related h2{margin:0 0 22px;font-size:clamp(18px,1.76vw,22px);line-height:1.2}
.sv-related-list{display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none}
.sv-related-list a{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;
  border:1px solid var(--p-line,#EDE9F2);border-radius:8px;color:var(--ink);
  font-size:14px;font-weight:600}
.sv-related-list a i{font-size:.85rem;line-height:1}
.sv-related-list a:hover,.sv-related-list a:focus-visible{border-color:var(--ink)}

@media (max-width:640px){
  .sv-prose p,.sv-prose li{font-size:16px}
}

.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:clamp(20px,2.4vw,32px)}
.benefit{display:flex;flex-direction:column;gap:12px;padding:26px 24px;
  background:var(--paper-soft,#F8F6FA);border-radius:16px}
.benefit i{font-size:26px;color:var(--dept,var(--p-ink));line-height:1}
.benefit h3{margin:0;font:600 17px/1.25 'Switzer',sans-serif;letter-spacing:.1px;
  color:var(--p-ink)}

@media (max-width:640px){ .benefit{padding:22px 20px} }
