
/* Consistency and accessibility refinements. Original brand colours are unchanged. */
body{font-size:17px;line-height:1.65}h1,h2,h3{font-family:var(--display);text-wrap:balance}main>section:not(.hero){padding:72px 0}.wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.page-hero{background:var(--cream)}.page-hero h1{font-size:clamp(38px,5vw,64px);line-height:1.1;max-width:950px}.page-hero .lede{font-size:21px;max-width:70ch}.page-hero .eyebrow,.eyebrow{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);font-weight:700}.section--cream{background:var(--cream)}.intro-copy{max-width:78ch}main h2{font-size:clamp(28px,3.5vw,42px);line-height:1.15;margin-bottom:22px}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.course-card{border:1px solid var(--line);border-radius:var(--r);padding:28px;background:var(--white);display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.course-card h2{font-size:27px}.course-card p{margin-top:14px}.course-card:nth-child(4n+1){border-top:5px solid var(--yellow)}.course-card:nth-child(4n+2){border-top:5px solid var(--blue)}.course-card:nth-child(4n+3){border-top:5px solid var(--coral)}.course-card:nth-child(4n){border-top:5px solid var(--gold)}.additional-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}.additional-offers article{padding:26px;border:1px solid var(--line);border-radius:var(--r);background:var(--white)}.additional-offers h3{font-size:25px}.programme-table{overflow-x:auto;margin:26px 0}.programme-table table{border-collapse:collapse;width:100%;min-width:700px;text-align:left}.programme-table th,.programme-table td{padding:16px;border-bottom:1px solid var(--line);font-size:15px}.programme-table thead{background:var(--cream-2)}.note{font-size:14px;color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}.team-card{padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--cream)}.team-card h3{font-size:22px}.team-card p{font-size:15px}.brochure-links{display:flex;gap:14px;flex-wrap:wrap}.form-panel{max-width:820px;margin:auto}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}form label{font-size:15px;display:block;font-weight:600}input,select,textarea{font:inherit;padding:12px;border:1px solid var(--line-2);border-radius:8px;background:var(--white);color:var(--ink);max-width:100%}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;margin:7px 0 12px}textarea{min-height:110px}fieldset{margin:26px 0;border:1px solid var(--line-2);border-radius:var(--r);padding:22px}legend{font-weight:700}.choice{display:flex;gap:12px;align-items:start;margin:14px 0}.choice input{margin-top:7px;flex-shrink:0;accent-color:var(--blue)}.notice{padding:20px;background:var(--cream-2);border-radius:var(--r)}.error{border-left:4px solid var(--error)}.success{border-left:4px solid var(--blue)}.trap{position:absolute;left:-10000px}.btn:not(.btn--ghost){background:var(--blue);color:var(--white)}.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2)}.course-photo{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin-bottom:20px}.hero__body>h1{font-size:clamp(40px,5vw,66px)}.hero__actions{flex-wrap:wrap}.hero__sub{font-size:18px}.hero__kicker{font-size:12px}.hero__slide[aria-hidden=true]{display:none}.hero__slide[aria-hidden=false]{opacity:1;visibility:visible}.triad__title{font-size:17px}.triad__num{font-size:22px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:100;background:var(--white);padding:12px}.site-footer .note{color:var(--muted)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
@media(max-width:700px){body{font-size:16px}.course-grid,.additional-offers,.fields{grid-template-columns:1fr}main>section:not(.hero){padding:48px 0}.hero__body>h1{font-size:40px}.hero__sub{font-size:16px}.wrap{width:calc(100% - 32px)}}

.learning-details{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.learning-details h3{font-size:18px;line-height:1.3;margin:12px 0 6px}.learning-details p{font-size:15px;margin:0 0 16px}.placement-note{margin-top:26px}
/* Responsive launch refinements: retain all original brand colours. */
img{max-width:100%}main,main section,.wrap,.course-card,.additional-offers article,.fields>*{min-width:0}p,li,dd,a{overflow-wrap:break-word}.programme-table{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}.programme-table table{width:100%}.fields input,.fields select,.fields textarea{font-size:16px}.masthead__inner{width:min(1240px,calc(100% - 40px));padding:16px 0}.course-card h2{overflow-wrap:break-word}.btn{white-space:normal;min-height:44px}.lang__toggle,.nav-toggle{min-height:44px}input[type=checkbox],input[type=radio]{width:20px;height:20px}.hero__actions{gap:12px}.hero__sub{max-width:65ch}.hero__body{padding-bottom:60px}.site-footer__cols>div{min-width:0}.site-footer a{overflow-wrap:anywhere}
@media(max-width:1100px){.masthead__inner{flex-wrap:wrap;gap:12px}.nav-toggle{display:block;margin-left:auto}.masthead__cta{display:none}.masthead .nav{display:none;order:5;width:100%;flex:1 0 100%;margin:0;flex-direction:column;align-items:stretch}.masthead[data-nav-open=true] .nav{display:flex}.nav .menu{position:static;width:100%;max-width:100%;box-shadow:none}.nav__link{padding:12px 8px}.lang .menu{right:0;left:auto}}
@media(max-width:700px){.masthead__inner{width:calc(100% - 32px);padding:12px 0}.hero__body{padding:46px 16px}.hero__body h1{font-size:clamp(34px,8.8vw,44px);line-height:1.12}.hero__media{opacity:.45}.hero__kicker{line-height:1.5}.triad{display:grid;grid-template-columns:1fr;gap:10px}.triad__item{width:100%}.triad__title{font-size:16px}.triad__pop{display:none!important}.triad__link{padding:10px 0}.hero__actions .btn{max-width:100%;padding:14px 18px}.page-hero h1{font-size:clamp(32px,8vw,44px)}.page-hero .lede{font-size:19px}.course-card{padding:22px}.course-card h2{font-size:25px}.brochure-links{flex-direction:column;align-items:stretch}.brochure-links .btn{width:100%}.fields{grid-template-columns:1fr}.site-footer__cols{grid-template-columns:1fr 1fr}.menu__panel{max-width:100%}}
@media(max-width:380px){.brand__word{font-size:13px}.brand img{width:36px;height:36px}.brand{gap:6px}.masthead__inner{gap:8px}.nav-toggle{padding:9px;font-size:12px}.lang__toggle{padding:8px;font-size:12px}.site-footer__cols{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{header,.hero__media,.hero__shapes,.hero__scrim,.triad__pop{display:none!important}.hero__body{padding:25px 0}.course-grid,.additional-offers{display:block}.course-card,.additional-offers article{break-inside:avoid;margin-bottom:18px}.programme-table{overflow:visible}.programme-table table{min-width:0}main>section:not(.hero){padding:24px 0}}

.course-pathway{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.course-pathway h3{font-size:18px;line-height:1.35;margin:18px 0 8px}.course-pathway p{font-size:15px;margin:0 0 14px}.course-pathway summary{font-size:15px;font-weight:700;cursor:pointer;min-height:44px;padding:10px 0}.camp-pathway{margin-top:28px;padding:28px;border-radius:var(--r);border:1px solid var(--line);background:var(--cream)}.pathway-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;list-style-position:inside;padding:0;margin:30px 0}.pathway-steps li{padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--white)}.pathway-steps h3{font-size:20px;margin:14px 0}.pathway-steps p{font-size:15px}@media(max-width:1000px){.pathway-steps{grid-template-columns:1fr 1fr}}@media(max-width:600px){.pathway-steps{grid-template-columns:1fr}.camp-pathway{padding:22px}}

.price-plan{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}.price-plan fieldset{margin:0}.plan-result{padding:28px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r);align-self:start}.plan-amount{font-size:40px;font-weight:700;color:var(--blue);line-height:1.2;margin:18px 0}.camp-facts{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:28px 0}.camp-facts li{padding:10px 16px;border:1px solid var(--line-2);border-radius:999px;background:var(--white);font-weight:700;font-size:15px}@media(max-width:800px){.price-plan{grid-template-columns:1fr}.camp-facts{display:grid;grid-template-columns:1fr 1fr}.camp-facts li{border-radius:var(--r)}}@media(max-width:380px){.camp-facts{grid-template-columns:1fr}}

.marketing-figure{margin:0 0 18px}.marketing-figure .course-photo{margin-bottom:5px}.marketing-figure figcaption,figcaption,.imagery-note{font-size:12px;line-height:1.5;color:var(--muted);margin-top:7px}.imagery-note{max-width:70ch}.actual-room-photo{display:block;width:min(700px,100%);height:auto;max-height:650px;object-fit:contain;border-radius:var(--r)}.image-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.image-gallery figure{margin:0}.image-gallery img{width:100%;height:auto;border-radius:var(--r)}@media(max-width:800px){.image-gallery{grid-template-columns:1fr}.image-gallery img{max-height:650px;object-fit:contain}}

.visit-address{font-style:normal;font-size:20px;line-height:1.7;background:var(--cream);border-left:4px solid var(--blue);padding:22px;margin:24px 0}.directions-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;margin:35px 0}.direction-links{display:flex;flex-direction:column;gap:12px;font-size:15px}.location-map{padding:24px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r)}.map-target iframe{width:100%;height:350px;border:0;border-radius:10px;margin:18px 0}.arrival-media{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.arrival-media figure{margin:0}.arrival-media img,.arrival-media video{width:100%;height:auto;max-height:550px;object-fit:contain;background:var(--cream);border-radius:var(--r)}.arrival-steps li{margin:12px 0}.footer-directions{font-size:14px;margin-top:24px}@media(max-width:800px){.directions-grid,.arrival-media{grid-template-columns:1fr}.map-target iframe{height:300px}.visit-address{font-size:18px}}

.teacher-portrait{width:160px;height:160px;object-fit:cover;border-radius:var(--r);margin-bottom:18px}.course-educator{display:flex;align-items:center;gap:12px;text-decoration:none;border-top:1px solid var(--line);padding-top:18px;margin-top:18px;font-size:14px;font-weight:700}.course-educator img{width:56px;height:56px;border-radius:50%;object-fit:cover}.course-materials{border-top:1px solid var(--line);padding-top:12px}.community-wide{display:block;width:100%;max-width:1000px;height:auto;border-radius:var(--r)}

/* KulturLegi visibility (owner request): hero badge, "Access matters" panel, one-line mention on the programs pages. */
.hero__kl{margin:0 0 22px}.kl-badge{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:6px 20px 6px 8px;border-radius:999px;background:var(--yellow);color:var(--ink);font-size:16px;line-height:1.3;font-weight:600;box-shadow:var(--shadow-sm);text-decoration:none}.kl-badge:hover{background:var(--yellow-hover);color:var(--ink)}.kl-badge img{display:block;height:34px;width:auto;flex:none}.kl-badge strong{font-weight:800}
main>section.access:not(.hero){padding:48px 0}.access__panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:36px;align-items:center;background:var(--ink);color:var(--white);border-radius:28px;padding:40px 44px}.access__panel h2{color:var(--white);font-size:clamp(26px,3.2vw,38px);margin:0 0 14px}.access__panel p{color:#E6ECF8;margin:0 0 12px}.access__panel .access__pill{display:inline-block;margin:0 0 14px;padding:4px 14px;border-radius:999px;background:var(--yellow);color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.access__panel .access__note{font-size:14px;color:#C9D3EA}.access__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.access__panel .btn:not(.btn--ghost){background:var(--yellow);color:var(--ink)}.access__panel .btn:not(.btn--ghost):hover{background:var(--yellow-hover);color:var(--ink)}.access__panel .btn--ghost{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.55)}.access__panel .btn--ghost:hover{background:rgba(255,255,255,.12);border-color:var(--white);color:var(--white)}.access__side{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.access__logo{display:block;width:min(190px,100%)}.access__logo img{display:block;width:100%;height:auto}.access__panel .access__big{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(56px,7vw,88px);line-height:1;color:var(--yellow)}.access__big span{display:block;margin-top:6px;font-family:var(--body);font-size:17px;font-weight:600;line-height:1.3;color:var(--white)}
.kl-line{display:flex;align-items:center;gap:14px;margin:28px 0 0;padding:12px 18px;background:var(--cream);border-left:4px solid var(--yellow);border-radius:var(--r);font-size:16px}.kl-line img{display:block;height:30px;width:auto;flex:none}.kl-line a{font-weight:700;white-space:nowrap}
@media(max-width:800px){.access__panel{grid-template-columns:1fr;gap:24px;padding:30px 24px}.access__side{flex-direction:row;justify-content:flex-start;text-align:left;gap:24px}.access__logo{width:130px;flex:none}.access__panel .access__big{font-size:56px}.access__big span{font-size:15px}}
@media(max-width:560px){.kl-badge{font-size:15px;padding-right:16px}.kl-line{flex-direction:column;align-items:flex-start;gap:8px}.access__side{flex-wrap:wrap;gap:16px}.access__actions .btn{width:100%;text-align:center}}

/* Image sizing (owner feedback: pictures too big). The HTML height attribute (1024) used to win over aspect-ratio, so course photos rendered about 1000px tall. */
.course-photo{height:auto;aspect-ratio:2/1;max-height:220px;object-fit:cover}.marketing-figure{max-width:100%}.community-wide{width:100%;max-width:720px;max-height:380px;object-fit:cover}.actual-room-photo{width:auto;max-width:100%;max-height:420px}.image-gallery img{aspect-ratio:4/3;max-height:300px;object-fit:cover}.arrival-media img,.arrival-media video{max-height:380px}main img[style*="aspect-ratio"]{max-height:260px}
@media(min-width:701px){.hero__body{padding-top:56px;padding-bottom:44px}.hero__kicker{margin-bottom:18px}.hero__sub{margin-bottom:22px}.hero__stage{width:68%}}
@media(max-width:800px){.course-photo{max-height:180px}.image-gallery img{max-height:240px;object-fit:cover}.community-wide{max-height:260px}.actual-room-photo{max-height:340px}}
@media print{.access__panel{background:none;color:#000;border:1px solid #000}.access__panel h2,.access__panel p,.access__panel .access__big,.access__big span{color:#000}.kl-badge{background:none;border:1px solid #000}}
