@font-face{font-family:ImpactLocal;src:local('Impact')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#f4f2e9;color:#1c211c;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e96b34;outline-offset:6px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08}em{font-family:Georgia,serif;font-weight:400}p+p{margin-top:18px}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:#fff;padding:12px}.skip:focus{top:10px}.header{position:absolute;top:0;left:0;width:100%;height:108px;padding:22px 5.2%;display:flex;align-items:center;justify-content:space-between;gap:35px;color:#f8f7ed;z-index:20;border-bottom:1px solid #ffffff25}.brand{font-family:Arial,Helvetica,sans-serif;font-size:28px;font-weight:900;line-height:.88;letter-spacing:-1.4px}.brand>span{display:block;letter-spacing:1.1px;margin-top:4px}.brand i{font-family:Arial;font-size:10px;font-style:normal;vertical-align:top;letter-spacing:0}.header nav{display:flex;gap:34px;font-size:14px}.header nav a{position:relative;padding:8px 0}.header nav a:after{position:absolute;bottom:0;left:0;content:'';height:1px;background:#ff8650;width:0;transition:.25s}.header nav a:hover:after{width:100%}.nav-cta{border:1px solid #ffffff70;border-radius:3px;padding:11px 21px;font-size:14px}.nav-cta span{margin-left:25px;color:#ff9363}.menu-toggle{display:none}.hero{position:relative;min-height:810px;height: min(940px,100svh);background:#14120f;color:#f8f6ec;isolation:isolate}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:70% 40%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,16,13,.94) 0%,rgba(16,16,13,.77) 29%,rgba(16,16,13,.1) 72%),linear-gradient(0deg,#151512 0%,transparent 40%,#11120e55 100%);z-index:-2}.hero-content{padding:186px 5.2% 100px;max-width:1050px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:14px;line-height:1.5}.eyebrow .line{width:28px;height:1px;background:#ef834e}.hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(54px,6.15vw,96px);letter-spacing:-4px;line-height:1.02;margin:29px 0 25px}.hero h1 em{font-size:.88em;color:#ef9567;letter-spacing:-3px;white-space:nowrap}.hero-description{font-size:17px;line-height:1.7;color:#e1e0d6}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 25px;background:#e97843;color:#191b15;border:1px solid #e97843;border-radius:3px;font-weight:600;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#f69a70;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.video-link{display:inline-flex;align-items:center;gap:12px;font-size:14px}.play{height:40px;width:40px;display:grid;place-items:center;border:1px solid #ffffff90;border-radius:50%;font-size:11px;padding-left:2px;transition:background .2s}.video-link:hover .play{background:#e97843}.hero-bottom{position:absolute;bottom:31px;left:5.2%;right:5.2%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.7px;color:#cfcec4}.hero-bottom>a{font-size:12px;letter-spacing:.3px}.hero-bottom>a span{margin-left:18px;font-size:22px}.ribbon{background:#e97843;color:#192017;display:flex;align-items:center;justify-content:space-around;gap:28px;overflow:hidden;white-space:nowrap;padding:15px 18px;font-size:14px;font-weight:700;letter-spacing:2px}.ribbon b{font-size:28px;line-height:1}.section{padding:100px 7%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-bottom:78px}.muted{color:#747769}.section h2{font-size:clamp(34px,3.4vw,53px);letter-spacing:-1.8px;font-weight:600;line-height:1.16}.section h2 em{color:#6c745d}.intro h2,.story h2,.booking h2,.tour h2{margin-top:25px}.intro-copy{padding-top:6px;color:#65685b;font-size:16px}.intro-copy .lead{color:#292e24;font-size:21px;line-height:1.5}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid #d4d6ca;margin-top:30px;padding-top:25px}.facts strong{font-size:23px;color:#292f25;display:block;font-weight:500}.facts span{font-size:12px}.disciplines{padding-top:28px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:33px}.section-heading h2{font-size:35px}.small-label{font-size:11px;letter-spacing:1.6px;color:#6d7264}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.art-card{min-height:440px;position:relative;overflow:hidden;color:#f8f7ed;background:#22271e}.art-card img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .8s}.art-card:nth-child(1) img{object-position:43%}.art-card:nth-child(2) img{object-position:60%}.art-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0e160ff0,transparent 90%)}.art-card:hover img{transform:scale(1.04)}.card-text{position:absolute;bottom:29px;left:25px;right:20px;z-index:1}.card-text>span{font-size:10px;letter-spacing:1.7px;color:#e7c3a6}.card-text h3{font-size:25px;letter-spacing:-.7px;margin:14px 0}.card-text p{font-size:14px;color:#dedfd1;line-height:1.6}.film{position:relative;min-height:570px;isolation:isolate;background:#111712;color:#fff}.film>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;z-index:-3}.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#141b16dc,transparent 85%),linear-gradient(0deg,#121912b3,transparent);z-index:-2}.film-content{padding:100px 9%;}.film h2{font-size:clamp(44px,5.5vw,77px);letter-spacing:-2px;margin:27px 0 33px}.film h2 em{color:#e5b993}.film-caption{position:absolute;bottom:27px;right:5%;font-size:11px;letter-spacing:1px}.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-top:110px;padding-bottom:110px}.story-photo{position:relative}.story-photo img{height:410px;width:100%;object-fit:cover}.story-photo>span{position:absolute;bottom:0;left:0;background:#e97843;font-size:10px;padding:15px 20px;letter-spacing:1.6px}.story-copy>p:not(.eyebrow){font-size:16px;color:#65695c;margin-top:22px}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid #babdac;padding:14px 0;margin-top:20px;font-size:14px;font-weight:600}.text-link span{font-size:24px}.tour{max-width:none;background:#233d33;color:#f3f1e6;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:86px 9%}.tour .eyebrow{color:#bac7b7}.tour h2 em{color:#efb085}.tour-info{border-left:1px solid #ffffff25;padding:0 0 0 45px}.tour-label{font-size:11px;letter-spacing:1.8px;color:#c4cdbc}.tour h3{font-size:26px;margin:19px 0}.tour p{font-size:16px;color:#d1d7ca;max-width:450px}.button.light{background:#f3f1e6;border-color:#f3f1e6;margin-top:25px}.button.light:hover{background:#e9bea3}.tour .fine{font-size:12px;margin-top:12px;color:#b3c2b2}.booking{display:grid;grid-template-columns:1fr 1fr;gap:12%}.booking-intro{color:#6b6e60;font-size:16px;max-width:380px;margin-top:25px}.format-list{margin-top:27px;display:flex;flex-wrap:wrap;gap:10px;max-width:410px}.format-list span{font-size:12px;border:1px solid #ced1c3;border-radius:30px;padding:5px 14px}.booking-details{padding-top:10px}.booking h3{font-size:25px;margin-bottom:17px}.booking-details>p{color:#6b6e60;font-size:16px;margin-bottom:22px}details{border-bottom:1px solid #d3d5ca}summary{list-style:none;cursor:pointer;font-size:14px;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary>span{font-size:22px;font-weight:400;color:#747c67}details[open] summary>span{transform:rotate(45deg)}details p{font-size:14px;color:#626956;padding:0 20px 20px 0}details+details{margin-top:0}.booking-details .button{margin-top:28px}.email{font-size:13px;margin:14px 0 0;display:block;color:#656e5c}footer{background:#151c17;color:#f3f1e6;padding:48px 7% 25px}.footer-top{display:flex;align-items:center;gap:27px;padding-bottom:38px}.footer-wordmark{font-size:30px;font-weight:900;letter-spacing:-1px;white-space:nowrap}.footer-wordmark span{font-size:12px;vertical-align:top;letter-spacing:0}.footer-top p{font-size:10px;letter-spacing:1.7px;margin-right:auto;max-width:160px;color:#c0c6b7}.footer-top>a:not(.footer-wordmark){font-size:13px}.footer-bottom{display:flex;gap:30px;align-items:center;border-top:1px solid #ffffff20;padding-top:23px;font-size:11px;color:#b6bcaf}.footer-bottom>span{margin-right:auto}a:hover{color:#e99c70}.button:hover{color:#171e15}@media(min-width:1600px){.hero-content{margin-left:calc((100vw - 1600px)/2)}.hero h1{font-size:98px}}@media(max-width:1050px){.header{gap:20px}.header nav{gap:20px}.hero h1{font-size:70px}.hero{min-height:780px}.hero-content{padding-top:185px}.section{padding-left:6%;padding-right:6%}.art-card{min-height:400px}.card-text{left:18px;right:15px}.card-text h3{font-size:21px}.small-label{display:none}.intro,.story,.booking{gap:6%}.footer-top{gap:20px}.footer-wordmark{font-size:25px}.tour{gap:6%}.tour-info{padding-left:25px}}@media(max-width:760px){html{scroll-padding-top:25px}.header{height:86px;padding:17px 6%;gap:15px}.brand{font-size:23px}.nav-cta{margin-left:auto;padding:9px 12px;font-size:12px}.nav-cta span{margin-left:10px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;color:inherit;padding:8px;width:35px;height:40px;cursor:pointer}.menu-toggle span{height:1px;width:22px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:86px;left:0;right:0;padding:22px 6%;background:#18221b;flex-direction:column;gap:5px;border-bottom:1px solid #ffffff40;font-size:17px}.header nav.open{display:flex}.hero{height:auto;min-height:760px}.hero-image{object-position:62% 40%}.hero-shade{background:linear-gradient(90deg,#11130fd9,#11130f45),linear-gradient(0deg,#151512 0%,#15151212 80%)}.hero-content{padding:160px 6% 128px;max-width:100%}.eyebrow{font-size:10px;letter-spacing:1.4px}.hero h1{font-size:clamp(43px,9vw,67px);letter-spacing:-2.4px;margin-top:30px}.hero h1 em{letter-spacing:-1.5px}.hero-description{font-size:16px;margin-top:28px}.hero-actions{gap:19px;flex-wrap:wrap;margin-top:30px}.button{padding:15px 20px;gap:22px}.hero-bottom{left:6%;right:6%;bottom:27px}.hero-bottom>span{font-size:9px;letter-spacing:1px}.hero-bottom>span:last-child{display:none}.hero-bottom>a{font-size:11px}.ribbon{justify-content:flex-start;gap:23px;font-size:11px;padding:13px 20px}.ribbon b{font-size:23px}.section{padding:67px 6%}.intro,.story,.tour,.booking{grid-template-columns:1fr;gap:30px}.section h2{font-size:39px;letter-spacing:-1.3px}.intro h2,.story h2,.booking h2,.tour h2{margin-top:17px}.intro-copy{padding-top:0}.intro-copy .lead{font-size:20px}.facts{gap:12px}.facts strong{font-size:21px}.facts span{font-size:11px}.disciplines{padding-top:0}.section-heading h2{font-size:29px}.cards{grid-template-columns:1fr;gap:18px}.art-card{min-height:380px}.art-card img{object-position:center 35%}.card-text{bottom:26px;left:25px}.card-text h3{font-size:27px}.card-text p{font-size:16px}.film{min-height:490px}.film-content{padding:85px 7%}.film h2{font-size:51px}.film>img{object-position:62%}.film-caption{left:7%;right:auto;font-size:10px}.story-photo img{height:310px}.story-copy>p:not(.eyebrow){font-size:16px}.tour{padding:65px 7%;gap:32px}.tour-info{border-left:0;border-top:1px solid #ffffff30;padding:28px 0 0}.tour p{font-size:16px}.booking-intro{max-width:none}.booking-details{padding-top:5px}.booking-details>p{font-size:16px}.booking-details .button{width:100%}.email{text-align:center;font-size:14px}.footer-top{flex-wrap:wrap;gap:18px}.footer-wordmark{font-size:32px;width:100%}.footer-top p{max-width:none;width:100%;margin-right:0}.footer-top>a:not(.footer-wordmark){font-size:14px}.footer-bottom{flex-wrap:wrap;gap:15px 23px;font-size:12px}.footer-bottom>span{width:100%}.footer-bottom>a:last-child{width:100%;margin-top:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.languages{display:flex;gap:1px;flex-shrink:0}.languages button{border:0;background:transparent;color:#d6d8cd;font-size:12px;font-weight:600;padding:8px 7px;cursor:pointer;min-height:40px}.languages button[aria-pressed=true]{color:#efa178;text-decoration:underline;text-underline-offset:7px}.header .mobile-booking{display:none}.header{gap:24px}.header nav{margin-left:auto;gap:27px}html[lang=en] .hero h1 em{font-size:.77em}html[lang=fr] .hero h1 em{font-size:.88em}html[lang=en] .film h2{font-size:clamp(42px,5vw,70px)}@media(max-width:1150px){.header nav{gap:18px}.header{gap:15px}.nav-cta{padding:10px 13px}.nav-cta span{margin-left:10px}}@media(max-width:950px) and (min-width:761px){.header nav{gap:12px;font-size:13px}.header{gap:11px;padding-left:4%;padding-right:4%}.nav-cta{font-size:12px}.brand{font-size:24px}}@media(max-width:760px){.languages{margin-left:auto}.header .nav-cta{display:none}.header .mobile-booking{display:block;color:#efa178}.header nav{gap:8px;font-size:17px}.header{gap:14px}.hero h1 em{white-space:normal}html[lang=en] .hero h1 em{font-size:.78em}.hero-actions .video-link{font-size:13px}html[lang=fr] .hero h1{font-size:clamp(42px,9vw,67px)}}
/* A vivid palette inspired by the supplied JABULA AFRICA identity. */
body{background:#ffe1a0;color:#251424}.header{background:linear-gradient(180deg,#18091fee,#280d278a);height:110px;border-bottom:1px solid #ffc94c80;gap:22px}.brand{display:block;width:285px;flex-shrink:0}.brand img{width:100%;height:auto}.header nav{gap:24px}.header nav a:hover,.footer-top a:hover{color:#ffcf45}.languages button[aria-pressed=true]{color:#ffce43}.nav-cta{background:#ffc944;color:#2c1332;border-color:#ffc944;white-space:nowrap}.nav-cta span{color:#621344;margin-left:12px}.nav-cta:hover{color:#321332;background:#ffe47c}.hero{background:#4b184a}.hero-image{object-position:70% 38%;filter:saturate(1.18) brightness(1.1)}.hero-shade{background:linear-gradient(90deg,rgba(53,9,52,.93),rgba(72,14,62,.7) 32%,rgba(40,15,45,.05) 76%),linear-gradient(0deg,#3a1030 0%,transparent 38%)}.hero h1 em{color:#ffcf4b}.hero .eyebrow{color:#ffdd89}.eyebrow .line{background:#ffd149}.hero-description{color:#fff7ec}.hero-bottom{color:#ffeacd}.hero-content{padding-top:185px}.button{background:#ffc63d;border-color:#ffc63d;color:#321435;box-shadow:0 6px 20px #531b3812}.button:hover{background:#ffe27b;color:#321435}.play{border-color:#ffd15b}.video-link:hover .play{background:#b02c6f}.ribbon{background:#ffd044;color:#4d173b;border-top:4px solid #f46748;border-bottom:4px solid #ed4767;padding-top:17px;padding-bottom:17px}.ribbon b{color:#bc2455}.section{max-width:none;padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}.intro{background:radial-gradient(ellipse at 100% 0%,#ff984b80,transparent 60%),linear-gradient(110deg,#fff0bf,#ffd875);padding-top:91px;padding-bottom:87px}.muted{color:#873a29}.section h2 em{color:#ba3153}.intro-copy,.intro-copy .lead{color:#432d27}.facts{border-color:#a9553140}.facts strong{color:#873345}.facts span{color:#654536}.disciplines{background:linear-gradient(125deg,#087c7c,#075453);padding-top:68px;padding-bottom:83px;color:#fffbe8}.disciplines h2 em{color:#ffcf58}.small-label{color:#beefde}.cards{gap:25px}.art-card{border-radius:5px;box-shadow:0 13px 27px #013b3d55;border-bottom:5px solid #ffc944}.art-card:nth-child(2){border-bottom-color:#ff7970}.art-card:nth-child(3){border-bottom-color:#72dfc5}.art-card img{filter:saturate(1.13)}.art-card:after{background:linear-gradient(0deg,#21122ded,transparent 92%)}.card-text>span{color:#ffd16d}.card-text p{color:#fff3e9}.film-shade{background:linear-gradient(90deg,#42124fe8,#3d125834 74%),linear-gradient(0deg,#45174ca6,transparent)}.film h2 em{color:#ffd25a}.film .eyebrow{color:#ffce8c}.story{background:radial-gradient(ellipse at 100% 70%,#f9aa7159,transparent 70%),#fff0d7;border-top:7px solid #ee664f}.story-photo{transform:rotate(-2deg);box-shadow:13px 14px 0 #f6b436;border:6px solid #fff6df}.story-photo>span{background:#ef5f47;color:#fff;font-weight:600}.story-copy>p:not(.eyebrow){color:#614b43}.text-link{border-color:#a34f633d;color:#9e2458}.tour{background:radial-gradient(ellipse at 100% 0%,#d234774d,transparent 65%),linear-gradient(120deg,#59185d,#962661);border-top:6px solid #fbad37;border-bottom:6px solid #17a7a1}.tour h2 em{color:#ffd651}.tour .eyebrow,.tour-label{color:#ffe098}.tour p{color:#fff0f6}.tour .fine{color:#e8c8de}.button.light{background:#ffd14b;border-color:#ffd14b;color:#482044}.button.light:hover{background:#ffe78f}.booking{background:linear-gradient(115deg,#ffd34e,#ffb951);color:#3c2034}.booking h2 em{color:#ae2457}.booking-intro,.booking-details>p,details p{color:#60402f}.format-list span{border-color:#b7773466;background:#ffedb160;color:#6b2b36}.booking-details details{border-color:#a95d3740}.booking-details summary>span{color:#9a2c5d}.booking-details .button{background:#762255;border-color:#762255;color:#fff7e6}.booking-details .button:hover{background:#9a2868}.email{color:#6b2847}.booking-details h3{color:#65204b}footer{background:linear-gradient(115deg,#25112e,#461338);border-top:7px solid #ee6651}.footer-top{gap:32px}.footer-wordmark{width:350px;display:block}.footer-wordmark img{width:100%;height:auto}.footer-top p{color:#ffd481;max-width:200px}.footer-bottom{color:#e6c8de;border-color:#ffce5530}.languages button{color:#fff0e8}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#dc447b}@media(max-width:1250px){.header .nav-cta{display:none}.header .mobile-booking{display:block}.header nav{gap:19px}.brand{width:255px}.header{gap:18px}.header nav{font-size:13px}}@media(max-width:1000px){.brand{width:225px}.header nav{gap:13px}.header{gap:13px;padding-left:4%;padding-right:4%}.header nav{font-size:12px}.header .mobile-booking{display:none}.footer-wordmark{width:300px}}@media(max-width:760px){.header{height:94px;padding:15px 5%;gap:10px}.brand{width:min(46vw,240px)}.languages{gap:0}.languages button{font-size:11px;padding:7px 5px}.menu-toggle{width:29px;padding:4px;flex-shrink:0}.header nav{top:94px;font-size:17px;background:#4f1949;padding:23px 6%;gap:8px}.header .mobile-booking{display:block;color:#ffd25a}.hero{min-height:760px}.hero-content{padding-top:160px}.hero-shade{background:linear-gradient(90deg,#460d46df,#540c3440),linear-gradient(0deg,#3a1030 0%,transparent 70%)}.section{padding-left:7%;padding-right:7%}.intro{padding-top:66px;padding-bottom:67px}.disciplines{padding-top:55px;padding-bottom:64px}.story-photo{transform:rotate(-1deg);box-shadow:8px 9px 0 #f6b436}.story{gap:43px}.footer-wordmark{width:min(100%,370px)}.footer-top{gap:21px}.footer-top p{max-width:100%}.card-text p{font-size:16px}.tour .button{gap:18px}}
.slideshow{position:absolute;inset:0;z-index:-3;overflow:hidden;background:radial-gradient(ellipse at 70% 30%,#dd6625,#441449 75%)}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1100ms ease;pointer-events:none;overflow:hidden}.hero-slide.is-active{opacity:1}.hero-slide .hero-image{z-index:auto;object-position:center 45%;filter:saturate(1.06)}.hero-slide:first-child .hero-image{object-position:72% 44%}.slide-dancers .hero-image{height:170%;object-position:center top;filter:none}.slide-live .hero-image{object-position:center 70%}.slideshow-controls{position:absolute;right:5.2%;bottom:88px;display:flex;gap:7px;align-items:center;padding:9px 12px;border:1px solid #ffffff40;border-radius:50px;background:#301332cf;z-index:2;color:#fff2d2}.slideshow-controls button{display:grid;place-items:center;min-width:40px;min-height:40px;cursor:pointer;border:0;background:transparent;color:inherit;border-radius:50%;font-size:21px}.slideshow-controls button:hover{background:#ffffff20}.slideshow-controls .slide-dots{display:flex;gap:0}.slide-dots button{min-width:32px}.slide-dots button span{width:7px;height:7px;background:#fff6;display:block;border-radius:50%;transition:background .2s,transform .2s}.slide-dots button[aria-pressed=true] span{background:#ffd14b;transform:scale(1.4)}.slide-pause{border-left:1px solid #ffffff30!important;border-radius:0!important;font-size:17px!important}.slide-count{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:1px;padding:0 10px;white-space:nowrap}@media(max-width:1000px){.slideshow-controls{bottom:82px}.hero-actions{max-width:650px}}@media(max-width:760px){.hero{min-height:860px}.hero-content{padding-bottom:206px}.slideshow-controls{right:auto;left:6%;bottom:81px;gap:3px;padding:7px 10px}.hero-slide:first-child .hero-image{object-position:65% center}.slide-live .hero-image{object-position:60% 70%}.slide-dancers .hero-image{object-position:53% top}.hero-shade{background:linear-gradient(90deg,#460d46d9,#540c3430),linear-gradient(0deg,#3a1030 0%,#3a103048 28%,transparent 65%)}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
/* Modern red, gold, emerald and indigo, carried through the full page. */
body{background:#f7bc36;color:#261826}.header{background:linear-gradient(180deg,#161b39f5,#171c3294)}.hero{background:#192641}.hero-shade{background:linear-gradient(90deg,#18243de8,#263852a6 31%,#13264312 76%),linear-gradient(0deg,#152b35,transparent 44%)}.hero h1 em{color:#ffd24e}.hero .eyebrow{color:#ffda77}.ribbon{background:#f4be32;border-top-color:#b82435;border-bottom-color:#137452;color:#342018}.ribbon b{color:#b72433}.intro{background:radial-gradient(ellipse at 100% 0%,#ef9c3880,transparent 65%),#ffdf81}.section h2 em{color:#b82738}.disciplines{background:linear-gradient(125deg,#087047,#104637)}.disciplines h2 em{color:#ffd356}.art-card:after{background:linear-gradient(0deg,#102c29f2,transparent 92%)}.art-card:nth-child(2){border-bottom-color:#d83d3a}.art-card:nth-child(3){border-bottom-color:#41af75}.film-shade{background:linear-gradient(90deg,#192140ea,#1b34522a 78%),linear-gradient(0deg,#123a37a6,transparent)}.story{background:#ffe8a5;border-top-color:#b82738}.story-photo>span{background:#b82738}.text-link{color:#a62635}.tour{background:linear-gradient(115deg,#163d32,#08643f);border-top-color:#f4bd31;border-bottom-color:#b82738}.tour h2 em{color:#ffcf42}.tour .eyebrow,.tour-label{color:#ffe39b}.tour p{color:#f9f5df}.booking{background:linear-gradient(120deg,#fac641,#efab34)}.booking h2 em{color:#aa2333}.booking-details h3{color:#7d2730}.booking-details .button{background:#ab2534;border-color:#ab2534}.booking-details .button:hover{background:#862130}.email{color:#742b29}footer{background:linear-gradient(110deg,#101c34,#1b3539);border-top-color:#bc2736}.footer-bottom{color:#d0ddcf}.slideshow{background:radial-gradient(ellipse at 70% 30%,#d38d28,#203c3d 75%)}.hero-slide.is-active .hero-image{animation:banner-drift 6.2s ease-out both;transform-origin:65% 44%}.hero-slide.slide-dancers.is-active .hero-image{transform-origin:50% 10%}.hero.slideshow-paused .hero-image{animation-play-state:paused}.hero-slide{transition:opacity 1200ms ease}.slideshow-controls{background:#162a38dc}.slide-pause{color:#ffdc73!important}@keyframes banner-drift{from{transform:scale(1)}to{transform:scale(1.065)}}
.tent-tour{background:#15253a;color:#fff4d9;position:relative;border-top:9px solid #c6303d;padding-top:88px;padding-bottom:73px}.tent-tour:before{content:'';position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,#e8b52f 0 33.33%,#13805a 33.33% 66.66%,#d04735 66.66%)}.tent-heading{display:flex;justify-content:space-between;align-items:center;gap:35px}.tent-heading .eyebrow{color:#ffc748}.tent-heading h2{font-size:clamp(40px,4.7vw,70px);margin-top:18px}.tent-heading h2 em{color:#f6bf45}.tour-start{border-left:2px solid #d3a643;padding:0 0 0 30px;display:flex;flex-direction:column;min-width:210px}.tour-start>span{font-size:13px;letter-spacing:2px;color:#f8d177}.tour-start>strong{font-size:82px;line-height:1.1;letter-spacing:-4px;color:#fff1c7;font-weight:800;margin:7px 0}.tent-lead{font-size:24px;font-weight:500;margin-top:34px;line-height:1.5}.tent-intro{color:#d4ded7;font-size:17px;line-height:1.8;max-width:900px;margin-top:16px}.tent-gallery{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:250px 250px;gap:22px;margin-top:39px}.tent-gallery figure{position:relative;overflow:hidden;margin:0;background:#243e37;border-bottom:4px solid #e4b432}.tent-gallery .tent-main{grid-row:span 2}.tent-gallery figure:nth-child(2){border-bottom-color:#26a676}.tent-gallery figure:nth-child(3){border-bottom-color:#dc5145}.tent-gallery img{width:100%;height:100%;object-fit:cover;display:block}.tent-main img{object-position:center}.tent-gallery figure:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#122231ed,transparent 66%)}.tent-gallery figcaption{position:absolute;z-index:1;bottom:22px;left:25px;right:20px}.tent-gallery figcaption>span{color:#ffd971;font-size:12px;letter-spacing:1.4px}.tent-gallery h3{font-size:24px;color:#fff4dc;line-height:1.25;margin-top:8px}.tent-main h3{font-size:30px}.tent-bottom{display:flex;justify-content:space-between;gap:35px;align-items:center;margin-top:30px}.tent-bottom>p{font-size:14px;max-width:650px;color:#c1ccc7;line-height:1.75}.tent-bottom .button{flex-shrink:0}.header nav{gap:20px}@media(max-width:1100px){.header nav{gap:14px}.brand{width:225px}.tent-gallery{grid-template-rows:230px 230px}.tent-bottom{align-items:flex-start}.tent-bottom .button{gap:15px}}@media(max-width:760px){.brand{width:min(46vw,240px)}.header nav{gap:8px}.hero-shade{background:linear-gradient(90deg,#172c40db,#133c4533),linear-gradient(0deg,#152b35,transparent 75%)}.tent-tour{padding-top:63px;padding-bottom:59px}.tent-heading{align-items:flex-start;gap:22px;flex-direction:column}.tent-heading h2{font-size:43px}.tour-start{padding:0 0 0 19px;display:grid;grid-template-columns:auto auto;gap:0 19px;min-width:0;align-items:center}.tour-start strong{font-size:59px;grid-row:span 2;grid-column:2;margin:0;letter-spacing:-2px}.tour-start>span{font-size:11px;letter-spacing:1.4px}.tent-lead{font-size:22px;margin-top:25px}.tent-intro{font-size:16px}.tent-gallery{display:flex;flex-direction:column;gap:20px;margin-top:28px}.tent-gallery figure,.tent-gallery .tent-main{height:320px}.tent-gallery .tent-main img{object-position:center}.tent-gallery h3,.tent-main h3{font-size:25px}.tent-gallery figcaption{left:20px}.tent-bottom{flex-direction:column;gap:22px}.tent-bottom .button{width:100%}}@media(prefers-reduced-motion:reduce){.hero-slide.is-active .hero-image{animation:none}.hero-slide{transition:none}}
.show-ambition{font-size:18px;line-height:1.7;color:#7b342d;margin-top:28px;max-width:380px}.intro .facts strong{font-size:25px}.booking-form-wrap{grid-column:1/-1;margin-top:15px;padding-top:40px;border-top:1px solid #8e3e3040;display:grid;grid-template-columns:.75fr 1.25fr;gap:7%}.form-heading h3{font-size:31px;line-height:1.2;margin:15px 0}.form-heading>p:last-child{font-size:16px;line-height:1.75;color:#583728}.enquiry-form{min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.enquiry-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600;min-width:0}.enquiry-form input,.enquiry-form textarea{display:block;width:100%;min-width:0;border:1px solid #98672d80;border-radius:4px;background:#fffaf0;color:#221e27;font:400 16px/1.5 Arial,Helvetica,sans-serif;padding:12px 13px;min-height:48px}.enquiry-form input:focus,.enquiry-form textarea:focus{outline:3px solid #168b6a;outline-offset:1px}.enquiry-form textarea{resize:vertical}.full-width{grid-column:1/-1}.form-note{font-size:14px;line-height:1.65;margin:20px 0;color:#62432e}.enquiry-form>.button{cursor:pointer;font:600 15px Arial,Helvetica,sans-serif;background:#a52334;border-color:#a52334;color:#fff5de;min-height:52px}.email-preview{margin-top:23px;padding:20px;background:#fff2ce;color:#34252a;border:1px solid #c09051;border-radius:5px}.email-preview[hidden]{display:none}.form-status{font-size:14px;line-height:1.7;margin-bottom:14px}.draft-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin-top:15px}.draft-actions .button{font-size:13px;padding:13px 15px;color:#2a192d}.copy-draft{font-size:14px;padding:12px 0;border:0;background:transparent;text-decoration:underline;cursor:pointer;color:#782637}.contact-section{background:#123c32;color:#fff3d6;display:grid;grid-template-columns:1fr 1.3fr;gap:9%;border-top:6px solid #c32c3b}.contact-section h2{margin:20px 0}.contact-section h2 em{color:#ffc849}.contact-section .eyebrow{color:#ffdc82}.contact-section>div>p:not(.eyebrow){font-size:17px;line-height:1.75;color:#d5e5d8;margin-bottom:24px}.contact-address{font-size:clamp(18px,2vw,25px);color:#ffdc82;overflow-wrap:anywhere}.contact-section .form-note{color:#d4e1d3}.contact-section input,.contact-section textarea{border-color:#9bc1a5}.contact-section .email-preview{color:#34252a}.contact-section .email-preview textarea{background:#fffaf0}.contact-section .form-grid>label:nth-child(3){grid-column:1/-1}.enquiry-form input[type=number]{appearance:textfield}@media(max-width:760px){.booking-form-wrap,.contact-section{grid-template-columns:1fr;gap:32px}.booking-form-wrap{margin-top:5px;padding-top:32px}.form-grid{grid-template-columns:1fr;gap:17px}.form-heading h3{font-size:28px}.draft-actions{flex-direction:column;align-items:stretch}.draft-actions .button{justify-content:center}.contact-section{padding-top:60px;padding-bottom:60px}.enquiry-form>.button{width:100%;justify-content:space-between}.intro .facts strong{font-size:22px}.show-ambition{font-size:17px}.email-preview{padding:16px}}
.moments-gallery{min-height:0;background:linear-gradient(120deg,#142239,#103b36);padding:58px 6% 25px;color:#fff3da;border-top:6px solid #eebd35;border-bottom:6px solid #c62c3d;isolation:auto}.moments-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:32px}.moments-heading .eyebrow{color:#ffd369}.moments-gallery h2,html[lang=en] .moments-gallery h2{font-size:clamp(29px,3vw,47px);letter-spacing:-1px;line-height:1.25;margin:16px 0 0}.moments-gallery h2 em{color:#ffd34f}.moments-heading .video-link{flex-shrink:0;max-width:300px;line-height:1.6}.moments-viewport{height:clamp(370px,45vw,640px);position:relative;overflow:hidden;background:#0b121d;border:1px solid #ffffff20;border-radius:5px;touch-action:pan-y}.moment-slide{position:absolute;inset:0;transform:translateX(100%);visibility:hidden;transition:transform 850ms cubic-bezier(.4,0,.2,1);will-change:transform}.moment-slide.is-current{transform:translateX(0);visibility:visible;z-index:2}.moment-slide.is-leaving{transform:translateX(-100%);visibility:visible;z-index:1}.moment-slide img{width:100%;height:100%;object-fit:contain;display:block}.moments-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:19px 0 0}.moment-caption{font-size:14px;color:#ffdc88;line-height:1.6}.moments-controls{display:flex;align-items:center;gap:5px;color:#fff5d9;flex-shrink:0}.moments-controls button{background:transparent;color:inherit;border:1px solid transparent;border-radius:50%;min-height:42px;min-width:42px;display:grid;place-items:center;cursor:pointer;font-size:22px}.moments-controls button:hover{background:#ffffff18}.moment-dots{display:flex}.moment-dots button{min-width:27px}.moment-dots span{display:block;width:6px;height:6px;border-radius:50%;background:#ffffff55}.moment-dots [aria-pressed=true] span{background:#ffd044;width:9px;height:9px}.moments-controls .moment-pause{border-left:1px solid #ffffff30;border-radius:0;font-size:17px;color:#ffdc88}.moment-count{font-size:12px;letter-spacing:1px;white-space:nowrap;font-variant-numeric:tabular-nums;padding-left:8px}@media(max-width:900px){.moments-heading{flex-direction:column;align-items:flex-start;gap:20px}.moments-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.moments-controls{align-self:flex-end}}@media(max-width:760px){.moments-gallery{padding:44px 5% 22px}.moments-gallery h2,html[lang=en] .moments-gallery h2{font-size:31px}.moments-viewport{height:clamp(285px,75vw,450px)}.moments-controls{width:100%;justify-content:center;gap:1px}.moment-dots button{min-width:24px}.moments-controls button{min-height:42px}.moments-controls>button{min-width:36px}.moment-caption{font-size:13px}.moment-count{font-size:11px;padding-left:3px}}@media(prefers-reduced-motion:reduce){.moment-slide{transition:none}}
@media(max-width:760px){.moment-dots{display:none}.moments-controls{justify-content:flex-end;gap:9px}.moment-count{font-size:13px;min-width:66px;text-align:center}.moments-controls>button{min-width:44px;min-height:44px}}
/* Slow colour transitions: deep jewel tones behind light text, warm tones behind dark text. */
.disciplines,.tour,.contact-section{background-image:radial-gradient(ellipse at 90% 5%,#ffffff0d,transparent 65%);background-color:#104637;animation:african-jewel-colours 32s ease-in-out infinite}
.tour{animation-delay:-10s}.contact-section{animation-delay:-21s}
.intro{background-image:radial-gradient(ellipse at 100% 0%,#ffffff30,transparent 65%);background-color:#ffdf81;animation:african-warm-colours 28s ease-in-out infinite}
@keyframes african-jewel-colours{0%,100%{background-color:#104637}25%{background-color:#71312c}50%{background-color:#302b59}75%{background-color:#633b17}}
@keyframes african-warm-colours{0%,100%{background-color:#ffdf81}33%{background-color:#f8c19c}66%{background-color:#e9dfad}}
.colours-paused .disciplines,.colours-paused .tour,.colours-paused .contact-section,.colours-paused .intro{animation-play-state:paused}
.colour-motion-toggle{border:1px solid #ffdc8266;border-radius:4px;background:#ffffff08;color:#ffdf93;font:inherit;padding:9px 12px;min-height:44px;cursor:pointer}.colour-motion-toggle:hover{background:#ffffff18}
@media(prefers-reduced-motion:reduce){.disciplines,.tour,.contact-section,.intro{animation:none}.colour-motion-toggle{display:none}}
.footer-bottom{flex-wrap:wrap}
