@font-face{font-family:'Geometria Figures';src:url('fonts/Geometria-Heavy.otf') format('opentype');font-weight:100 900;font-style:normal;font-display:swap;size-adjust:70%}
/* Tennis & School service pages (sports programme, selection week, campus, sports medical centre).
   Builds on riviera-education.css (.edu-*) and riviera-pages.css; loaded last on these pages. */

.svc-page .edu-hero>img{object-position:60% center}
.svc-page .edu-hero-copy .edu-eyebrow{color:#8ccaff}
.svc-page .edu-section .edu-eyebrow{color:var(--edu-blue)}
.svc-page .edu-stats{grid-template-columns:repeat(var(--svc-stats,4),minmax(0,1fr))}

/* Breadcrumb back to the Tennis & School page. */
.svc-crumb{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d6e4f1}
.svc-crumb li+li:before{content:"/";margin-right:8px;opacity:.6}
.svc-crumb a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}
.svc-crumb a:hover{border-color:#fff}

/* Split block: photo + copy + checklist. */
.svc-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.svc-split+.svc-split{margin-top:88px}
.svc-split.reverse .svc-split-media{order:2}
.svc-split-media{margin:0;height:500px;overflow:hidden;background:#dde2e6}
.svc-split-media img{width:100%;height:100%;object-fit:cover}
.svc-split-copy h3{margin:0 0 18px;font:900 clamp(30px,3vw,46px)/1 Geometria,Arial,sans-serif;letter-spacing:-.045em;color:var(--edu-navy)}
.svc-split-copy>p{margin:0;font-size:17px;line-height:1.7;color:#35465a}
.svc-list{margin:26px 0 0;padding:0;list-style:none;border-top:2px solid var(--edu-blue)}
.svc-list li{position:relative;padding:14px 0 14px 30px;border-bottom:1px solid #d5e7f5;font-size:14px;line-height:1.55;color:#35465a}
.svc-list li:before{content:"";position:absolute;left:2px;top:21px;width:12px;height:6px;border-left:2px solid var(--edu-blue);border-bottom:2px solid var(--edu-blue);transform:rotate(-45deg)}
.svc-list strong{color:var(--edu-navy)}
.svc-white{background:#fff}
.svc-paper{background:var(--edu-paper)}

/* Numbered feature grid (on navy). */
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--edu-blue)}
.svc-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.svc-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.svc-grid article{min-width:0;padding:30px 28px 32px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.svc-grid article+article{padding-left:28px;border-left:1px solid rgba(255,255,255,.22)}
.svc-grid:not(.cols-2):not(.cols-4) article:nth-child(3n+1),.svc-grid.cols-2 article:nth-child(2n+1),.svc-grid.cols-4 article:nth-child(4n+1){padding-left:0;border-left:0}
.svc-grid span{display:block;color:var(--edu-blue);font:900 40px/1 'Geometria Figures',Impact,sans-serif}
.svc-grid h3{margin:16px 0 10px;font:700 15px/1.3 Geometria,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.svc-grid p{margin:0;color:#b8c9d8;font-size:13px;line-height:1.6}

/* Selection week: day-by-day grid (reuses .edu-schedule colours). */
.svc-days .edu-time time{font-size:32px}

/* Cross-links between the Tennis & School pages. */
.svc-links{background:var(--edu-paper)}
.svc-links-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.svc-link{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d9d5cc;border-radius:14px;background:#fff;transition:border-color .2s,transform .2s}
.svc-link:hover{border-color:var(--edu-blue);transform:translateY(-2px)}
.svc-link img{width:100%;height:190px;object-fit:cover}
.svc-link div{display:flex;flex-direction:column;flex:1;padding:22px 22px 24px}
.svc-link small{color:var(--edu-blue);font-size:10px;font-weight:900;letter-spacing:.15em}
.svc-link h3{margin:10px 0 8px;font:900 22px/1.1 Geometria,Arial,sans-serif;letter-spacing:-.03em;color:var(--edu-navy)}
.svc-link p{margin:0;color:#5f6872;font-size:13px;line-height:1.55}
.svc-link b{margin-top:auto;padding-top:18px;color:var(--edu-blue);font-size:10px;font-weight:900;letter-spacing:.12em}

/* Final CTA: two buttons. */
.svc-page .edu-admission .edu-hero-actions{margin-top:14px}
.svc-page .edu-admission .edu-button{margin-top:0}
.svc-page .edu-admission .edu-button.ghost{background:transparent;color:#fff}

/* Campus gallery on white, after the campus life intro. */
.svc-page .international-gallery.gallery-strip{background:#fff;padding-top:0}

@media(max-width:900px){
  .svc-page .edu-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc-page .edu-stats .edu-stat:nth-child(odd){padding-left:0;border-left:0}
  .svc-page .edu-stats .edu-stat:nth-child(even){padding-left:20px;border-left:1px solid rgba(0,25,55,.25)}
  .svc-page .edu-stat strong{font-size:46px}
  .svc-crumb{display:none}
  .svc-split{grid-template-columns:1fr;gap:26px}
  .svc-split+.svc-split{margin-top:56px}
  .svc-split.reverse .svc-split-media{order:0}
  .svc-split-media{height:300px}
  .svc-split-copy>p{font-size:15px}
  .svc-grid,.svc-grid.cols-2,.svc-grid.cols-4{grid-template-columns:1fr}
  .svc-grid article,.svc-grid article+article{padding:24px 0;border-left:0}
  .svc-grid span{font-size:32px}
  .svc-links-grid{grid-template-columns:1fr;gap:12px}
  .svc-link{display:grid;grid-template-columns:110px minmax(0,1fr)}
  .svc-link img{height:100%;min-height:150px}
  .svc-link div{padding:16px}
  .svc-link h3{font-size:19px}
  .svc-page .edu-admission .edu-hero-actions{flex-direction:column;align-items:flex-start}
  .svc-page .edu-admission .edu-button{width:auto}
}
@media(min-width:901px) and (max-width:1200px){
  .svc-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc-grid.cols-4 article:nth-child(3){padding-left:0;border-left:0}
}
@media(prefers-reduced-motion:reduce){.svc-link{transition:none}.svc-link:hover{transform:none}}

/* Sub-headings in Geometria for legibility (brand-typography.css sets BeniM on every h3). */
html body.svc-page :is(.svc-split-copy h3,.svc-link h3){font-family:Geometria,Arial,sans-serif!important;font-weight:900!important;letter-spacing:-.04em!important;line-height:1.08!important;text-transform:none}
html body.svc-page :is(.svc-grid h3,.edu-value h3){font-family:Geometria,Arial,sans-serif!important;font-weight:700!important;letter-spacing:.06em!important;line-height:1.3!important;text-transform:uppercase}
@media(min-width:901px){.svc-days .edu-schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.svc-days .edu-time:nth-child(3n+1){padding-left:0;border-left:0}}
.svc-more{margin:22px 0 0}
.svc-tight{padding-bottom:40px}
.svc-tight .edu-section-head{margin-bottom:0}

/* UX audit 2026-09: blue eyebrow on the dark-blue admission band was 3.2:1; use the light blue made for dark backgrounds */
.svc-page .edu-admission .edu-eyebrow{color:#8ccaff}

/* Selection week hero, like the French Riviera camp pages: photo on the left (rounded, framed on the handshake),
   copy on navy on the right; stacked on mobile (photo on top). */
.edu-split-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch!important;min-height:560px!important;background:#001937!important}
.edu-split-hero:before,.edu-split-hero:after{display:none!important}
.edu-split-hero>img{position:relative!important;inset:auto!important;grid-column:1;grid-row:1;width:100%!important;height:100%!important;min-height:560px;object-fit:cover;object-position:50% 45%!important;border-radius:0 8px 8px 0}
.edu-split-hero>.edu-hero-copy{grid-column:2;grid-row:1;width:auto!important;margin:0!important;padding:64px clamp(28px,4vw,72px)!important;display:flex;flex-direction:column;justify-content:center}
.edu-split-hero h1{font-size:clamp(46px,4.4vw,72px)!important;color:#1f92f0}
.edu-split-hero .edu-hero-lead{font-size:16px}
@media(max-width:900px){.edu-split-hero{grid-template-columns:1fr;min-height:0!important}.edu-split-hero>img{grid-column:1;grid-row:1;min-height:0;height:300px!important;border-radius:0}.edu-split-hero>.edu-hero-copy{grid-column:1;grid-row:2;padding:32px 20px 40px!important}.edu-split-hero h1{font-size:44px!important}}
