
@layer smolum-layout {

 .schools-page .schools-gallery{background:var(--color-background-body);padding-block-end:0}
 .schools-page .schools-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--spacing-3)}
 .schools-gallery .schools-gallery-photo{min-inline-size:0;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-container);background:var(--color-neutral);cursor:zoom-in}
 .schools-gallery .schools-gallery-photo img{display:block;inline-size:100%;block-size:100%;object-fit:cover;transition:transform var(--duration-normal) var(--ease-standard)}
 .schools-gallery .schools-gallery-photo:focus-within{outline:var(--spacing-0-5) solid var(--color-accent);outline-offset:var(--spacing-1)}
 .schools-gallery[data-ready="true"][data-expanded="false"] .schools-gallery-photo:nth-child(n+9){display:none}
 .schools-gallery-controls{margin-block-start:var(--smolum-space-xl)}
 .schools-gallery :is(.schools-gallery-count-mobile,.schools-gallery-count-tablet){display:none}
 @media(min-width:701px) and (max-width:1100px){
  .schools-page .schools-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .schools-gallery[data-ready="true"][data-expanded="false"] .schools-gallery-photo:nth-child(n+7){display:none}
  .schools-gallery .schools-gallery-count-desktop{display:none}
  .schools-gallery .schools-gallery-count-tablet{display:inline}
 }
 @media(hover:hover) and (prefers-reduced-motion:no-preference){.schools-gallery-photo:hover img{transform:scale(1.035)}}
 @media(max-width:700px){
  .schools-page .schools-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-3)}
  .schools-gallery[data-ready="true"][data-expanded="false"] .schools-gallery-photo:nth-child(n+9){display:none}
  .schools-gallery .schools-gallery-count-desktop{display:none}
  .schools-gallery .schools-gallery-count-mobile{display:inline}
 }
 @media(prefers-reduced-motion:reduce){.schools-gallery .schools-gallery-photo img{transition:none}}

 .schools-page .schools-preparation{color:var(--color-on-accent)}
 .schools-preparation .schools-preparation-columns{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
 .schools-preparation .schools-preparation-group{min-inline-size:0}
 .schools-preparation .schools-preparation-group:first-child{padding-inline-end:var(--smolum-space-2xl)}
 .schools-preparation .schools-preparation-group:last-child{padding-inline-start:var(--smolum-space-2xl);border-inline-start:var(--border-width) solid color-mix(in srgb,var(--color-on-accent) 30%,transparent);align-self:stretch}
 .schools-preparation .schools-preparation-item{display:grid;grid-template-columns:calc(var(--spacing-10) + var(--spacing-1)) minmax(0,1fr);align-items:start}
 .schools-preparation .schools-preparation-check{grid-template-columns:var(--spacing-7) minmax(0,1fr)}
 .schools-preparation .schools-preparation-item img{inline-size:100%;block-size:auto;aspect-ratio:1;object-fit:contain}
 @media(max-width:900px){
  .schools-preparation .schools-preparation-columns{grid-template-columns:minmax(0,1fr);gap:var(--smolum-space-xl)}
  .schools-preparation .schools-preparation-group:first-child{padding-inline-end:0}
  .schools-preparation .schools-preparation-group:last-child{padding-inline-start:0;padding-block-start:var(--smolum-space-xl);border-inline-start:0;border-block-start:var(--border-width) solid color-mix(in srgb,var(--color-on-accent) 30%,transparent)}
 }
 .schools-page .schools-organise{align-items:start}
 .schools-page .schools-organise .schools-organise-intro{display:flex;flex-direction:column;align-items:flex-start;min-inline-size:0;gap:var(--smolum-space-lg)}
 .schools-organise-intro h2{max-inline-size:16ch}
 .schools-organise .steps{list-style:none;min-inline-size:0;margin:0;padding:0}
 .schools-page .schools-organise .steps li{padding-block:var(--smolum-space-lg);border-block-end:var(--border-width) solid var(--color-border)}
 .schools-page .schools-organise .steps li:first-child{padding-block-start:0}
 .schools-page .schools-organise .steps li:last-child{padding-block-end:0;border-block-end:0}
 .schools-organise .steps li>span{color:var(--color-accent)}
 @media(max-width:900px){.schools-page .schools-organise.faq-layout{grid-template-columns:minmax(0,1fr);gap:var(--smolum-space-xl)}.schools-organise-intro h2{max-inline-size:none}}
 smolum-schools{display:block}
 .schools-page{min-inline-size:0}
 .schools-page .section{padding-block:var(--section-space)}
 .schools-page .hero.schools-hero{inline-size:100%;display:flex;--smolum-hero-background:url('/releases/b51e87e3ac1ec1286d15/assets/schools/hero-background.jpg')}
 .schools-hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .schools-page .schools-hero .hero-copy{display:flex;flex-direction:column;width:100%;min-inline-size:0;pointer-events:auto}
 .schools-page .schools-hero .hero-location{margin-block-end:var(--smolum-space-md)}
 .schools-page .hero-stats-icons>div{display:grid}
 /* Both full photographs stay inside this reserved footprint, including rotations.
    The inset starts below the hands/products in the main photo's lower quarter. */
 .schools-hero .schools-collage{position:relative;inline-size:100%;min-inline-size:0;aspect-ratio:8/7;isolation:isolate}
 .schools-hero .schools-photo{position:absolute;display:block;margin:0;overflow:hidden;border-radius:var(--radius-container);background:var(--color-background-body)}
 .schools-hero .schools-photo img{display:block;inline-size:100%;block-size:auto;object-fit:contain}
 .schools-hero .schools-photo-main{inset-inline-start:2%;inset-block-start:3%;inline-size:90%;transform:rotate(-3deg)}
 .schools-hero .schools-photo-process{inset-inline-end:2%;inset-block-end:3%;inline-size:38%;border:calc(var(--border-width) * 2) solid var(--color-background-body);transform:rotate(4deg);z-index:1}
 .schools-hero-action>p{max-inline-size:var(--smolum-lead-width)}
 .schools-page .schools-programs{background:var(--smolum-hero-edge);padding-block-start:0}
 .schools-page .schools-occasions{background:var(--color-background-body)}
 .schools-page .schools-occasions-layout{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:min-content minmax(0,1fr);grid-template-areas:"photo title" "photo details";column-gap:var(--smolum-section-phone)}
 .schools-occasions #schools-occasions-title{grid-area:title;min-inline-size:0}
 .schools-occasions .schools-occasion-photo{grid-area:photo;min-inline-size:0;inline-size:100%;aspect-ratio:1;margin:0;align-self:center}
 .schools-occasions .schools-occasion-photo>img{display:block;inline-size:100%;block-size:auto;aspect-ratio:1;object-fit:contain;border-radius:var(--radius-container);border:calc(var(--border-width) * 2) solid var(--color-background-surface);transform:rotate(-2.5deg)}
 .schools-occasions .schools-occasion-details{grid-area:details;min-inline-size:0}
 .schools-occasions .schools-occasion-point{display:grid;grid-template-columns:calc(var(--spacing-10) + var(--spacing-1)) minmax(0,1fr);align-items:start}
 .schools-occasions .schools-occasion-icon{display:block;inline-size:100%;block-size:auto;aspect-ratio:1;object-fit:contain}
 .schools-occasions .teacher-point{min-inline-size:0}
 .schools-occasions .schools-occasion-note{max-inline-size:var(--smolum-lead-width)}
 @media(max-width:1100px){
  .schools-page .schools-occasions-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"title" "photo" "details";row-gap:var(--smolum-space-lg);justify-items:center}
  .schools-occasions :is(#schools-occasions-title,.schools-occasion-photo,.schools-occasion-details){inline-size:100%;max-inline-size:var(--smolum-copy-width)}
  .schools-occasions .schools-occasion-photo>img{transform:rotate(-1.5deg)}
 }
 @media(max-width:700px){
  .schools-occasions .schools-occasion-photo{padding:var(--spacing-2)}
  .schools-occasions .schools-occasion-point{grid-template-columns:var(--spacing-10) minmax(0,1fr);column-gap:var(--smolum-space-sm)}
  .schools-occasions :is(.schools-occasion-details,.schools-occasion-list){gap:var(--smolum-space-lg)}
 }
 .schools-page .schools-program-grid .workshop,.schools-page .schools-program-grid .workshop-image{cursor:default}
 .schools-page .schools-program-grid .workshop-image{margin:0}
 .schools-page .schools-program-grid .workshop-image img{scale:none;transition:none}
 .schools-page .schools-program-action{grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-template-areas:"copy note" "copy contact";margin-block-start:var(--smolum-section-phone);padding:var(--smolum-space-xl);background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius-container)}
 .schools-program-action-copy{grid-area:copy;min-inline-size:0;max-inline-size:var(--smolum-lead-width)}
 .schools-program-note{position:relative;grid-area:note;justify-self:end;margin-block-start:calc(var(--smolum-space-2xl) * -1);margin-inline-end:var(--smolum-space-xs);transform:rotate(3deg);background:var(--color-background-body);color:var(--smolum-dark);border-radius:var(--spacing-0-5);border:var(--border-width) solid color-mix(in srgb,var(--smolum-dark) 12%,transparent);box-shadow:var(--smolum-final-shadow);cursor:default}
 .schools-program-note::before{content:"";position:absolute;pointer-events:none;inline-size:var(--smolum-space-2xl);block-size:var(--smolum-space-lg);inset-inline-start:50%;inset-block-start:calc(var(--spacing-3) * -1);transform:translateX(-50%);background:color-mix(in srgb,var(--smolum-hero-lilac) 78%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--color-background-surface) 35%,transparent)}
 .schools-program-contact{grid-area:contact;min-inline-size:0;text-align:center}
 .schools-page .schools-program-contact .astryx-button{background:var(--smolum-lime);color:var(--smolum-dark)}
 .schools-page .schools-program-contact .astryx-button:not(.workshop-outline-action):not(.contact-fallback-action):not(.contact-fallback-retry):not(:disabled):not([aria-disabled="true"]):is(:hover,:active){background-color:var(--smolum-lime-hover);color:var(--smolum-dark)}
 .schools-page .schools-program-contact .astryx-button:focus-visible{outline:var(--spacing-1) solid var(--color-on-accent);outline-offset:var(--spacing-1)}
 @media(max-width:900px){
  .schools-page .schools-program-action{grid-template-columns:minmax(0,1fr);grid-template-areas:"note" "copy" "contact"}
  .schools-program-action-copy{max-inline-size:none}
  .schools-program-contact{align-items:flex-start;text-align:start}
 }
 @media(max-width:700px){
  .schools-page .schools-program-action{padding:var(--smolum-space-lg);margin-block-start:var(--smolum-space-2xl)}
  .schools-program-note{margin-block-start:calc(var(--smolum-space-xl) * -1);padding:var(--smolum-space-sm);transform:rotate(2deg)}
  .schools-program-contact{align-items:stretch;text-align:center}
 }
 .schools-page .schools-program-action .astryx-button{max-inline-size:100%;white-space:normal}
 @media(min-width:701px){
  @supports(grid-template-rows:subgrid){
   .schools-page .schools-program-grid .workshop{grid-row:span 2}
   .schools-page .schools-program-grid .workshop-copy{grid-row:span 1}
  }
 }
 .schools-page .faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:calc(var(--spacing-10) * 2)}
 .schools-page .schools-organise .steps li{display:grid;grid-template-columns:calc(var(--spacing-10) + var(--spacing-7)) minmax(0,1fr);gap:var(--spacing-6)}
 .schools-page .schools-price{padding-block:0}
 .schools-price .schools-price-panel{grid-template-columns:minmax(0,38fr) minmax(0,62fr);padding:var(--spacing-10);background:var(--color-neutral);border-radius:var(--radius-container)}
 .schools-price-summary{min-inline-size:0;padding-inline-end:var(--smolum-space-xl)}
 .schools-price-details{min-inline-size:0;padding-inline-start:var(--smolum-space-xl);border-inline-start:var(--border-width) solid var(--color-border)}
 .schools-price .schools-price-included{grid-template-columns:var(--smolum-space-lg) minmax(0,1fr)}
 .schools-price-group{padding:var(--smolum-space-xs) var(--smolum-space-md);background:var(--color-background-surface);border-radius:var(--radius-container)}
 .schools-price-check{color:var(--color-accent);font-weight:var(--font-weight-bold)}
 @media(max-width:900px){
  .schools-price .schools-price-panel{grid-template-columns:minmax(0,1fr);gap:var(--smolum-space-xl)}
  .schools-price-summary{padding-inline-end:0}
  .schools-price-details{padding-inline-start:0;padding-block-start:var(--smolum-space-xl);border-inline-start:0;border-block-start:var(--border-width) solid var(--color-border)}
 }
 @media(max-width:700px){
  .schools-price .schools-price-panel{padding:var(--smolum-space-lg)}
  .schools-price-action{inline-size:100%;align-items:stretch}
  .schools-price-action .astryx-button{inline-size:100%;white-space:normal;height:auto;min-height:var(--size-element-lg);padding-block:var(--smolum-space-sm)}
 }
 @media(max-width:1100px){
  .schools-page .faq-layout{gap:calc(var(--spacing-10) + var(--spacing-3));grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
  .schools-page .schools-programs{padding-block-start:var(--smolum-section-compact)}
  .schools-hero-layout{grid-template-columns:minmax(0,1fr)}
  .schools-hero .schools-collage{max-inline-size:var(--smolum-copy-width);justify-self:center}
 }
 @media(max-width:700px){
  .schools-page .schools-program-action .astryx-button{inline-size:100%;height:auto;min-height:var(--size-element-lg);padding-block:var(--spacing-3);text-align:center}
  .schools-page .schools-program-action .astryx-button .astryx-text{text-align:center}
  .schools-page .faq-layout{grid-template-columns:minmax(0,1fr);gap:var(--spacing-8)}
  .schools-hero-action,.schools-hero-action .astryx-button{inline-size:100%}
  .schools-hero-action .astryx-button{min-block-size:calc(var(--spacing-10) + var(--spacing-4))}
  /* Reorder the existing content only at the site's phone breakpoint. */
  .schools-page .schools-hero .hero-copy{display:contents}
  .schools-page .schools-hero-layout{row-gap:0}
  .schools-page .schools-hero .hero-location{grid-row:1}
  .schools-page .schools-hero h1{grid-row:2}
  .schools-page .schools-hero .lead{grid-row:3}
  .schools-hero .schools-collage{grid-row:4;aspect-ratio:27/25;margin-block-end:var(--smolum-space-lg)}
  .schools-page .schools-hero .hero-meta{grid-row:5}
  .schools-page .schools-hero-action{grid-row:6}
  .schools-hero .schools-photo-main{inset-inline-start:3%;inline-size:94%;transform:rotate(-2deg)}
  .schools-hero .schools-photo-process{inset-inline-end:3%;inline-size:42%;transform:rotate(3deg)}
  .schools-page .schools-organise .steps li{grid-template-columns:var(--spacing-10) minmax(0,1fr);gap:var(--spacing-4)}
 }
}
@layer smolum-type {
 .schools-price .schools-price-amount{font-family:var(--font-display);font-size:calc(var(--spacing-7) * 2);font-weight:var(--font-weight-bold);line-height:var(--smolum-leading-display);letter-spacing:var(--smolum-tracking-title);color:var(--color-accent);white-space:nowrap}
 .schools-price .schools-price-unit{font-size:var(--smolum-type-h3-compact);line-height:var(--smolum-leading-title)}
 .schools-price .schools-price-group{font-size:var(--smolum-type-small);font-weight:var(--font-weight-semibold);color:var(--color-accent)}
 .schools-price #schools-price-title{font-size:var(--smolum-space-xl);line-height:var(--smolum-leading-title)}
 @media(max-width:700px){.schools-price .schools-price-amount{font-size:calc(var(--spacing-10) + var(--spacing-1))}.schools-price #schools-price-title{font-size:var(--smolum-type-h3-wide)}}

 @media(max-width:700px){.schools-organise .steps li>span{font-size:var(--spacing-7);line-height:var(--smolum-leading-title);letter-spacing:var(--smolum-tracking-title)}}
 .schools-program-action #schools-program-action-title{font-size:var(--smolum-space-xl);line-height:var(--smolum-leading-title);letter-spacing:var(--smolum-tracking-title);max-inline-size:22ch}
 .schools-program-note p{font-weight:var(--font-weight-semibold);line-height:var(--smolum-leading-title)}
 @media(max-width:700px){.schools-program-action #schools-program-action-title{font-size:var(--smolum-type-h3-wide)}}

 .schools-preparation .schools-preparation-group h3{color:var(--smolum-lime);font-size:var(--smolum-type-h3-wide);line-height:var(--smolum-leading-title)}
 @media(max-width:700px){.schools-preparation .schools-preparation-group h3{font-size:var(--smolum-type-h3-compact)}}
 .schools-preparation .schools-preparation-item h4{font-family:var(--font-body);font-size:var(--smolum-type-lead-wide);line-height:var(--smolum-leading-title);font-weight:var(--font-weight-semibold);letter-spacing:normal}

 .schools-occasions .teacher-point{padding-block:0}
}
