@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f8f5f3;--ink:#211b20;--accent:#ff006f;--orange:#ff006f;--soft-old:#f3f1ef;--line:#d8d4d2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 'DM Sans',sans-serif}h1,h2,h3,.logo{font-family:Manrope,sans-serif;line-height:1.04;letter-spacing:-.055em}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{width:min(1320px,calc(100% - 112px));margin:auto}.nav{height:106px;display:flex;align-items:center;justify-content:space-between;gap:35px}.logo{font-weight:800;font-size:28px;letter-spacing:-1.7px;line-height:.91;display:flex;gap:12px;align-items:center}.mark{font-size:45px;color:var(--accent);font-weight:500}.navlinks{display:flex;gap:32px;align-items:center;font-size:15px;font-weight:600}.navlinks a:hover,.textlink:hover{text-decoration:underline;text-underline-offset:6px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 25px;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:6px;font-size:16px;font-weight:600;line-height:1.4;min-height:56px}.btn:hover{background:#ff006f}.btn.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.outline:hover{background:#eeecea}.arrow{font-size:23px;line-height:1}.menu{display:none;background:none;border:0;font-size:26px}.hero{padding:50px 0 70px;display:grid;grid-template-columns:1.13fr 1fr;gap:45px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:26px}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block}.hero h1{font-size:clamp(66px,7.3vw,108px);font-weight:800;margin:0 0 30px}.brand{color:var(--accent)}.hero .intro{max-width:440px;color:#5f5b5d;font-size:19px;margin-bottom:28px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.textlink{font-size:15px;font-weight:600}.micro{font-size:13px;margin-top:19px;color:#5f5b5d}.portrait{position:relative;align-self:stretch;min-height:540px;background:var(--orange);border-radius:160px 12px 12px 12px;overflow:visible;display:flex;align-items:flex-end}.portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;mix-blend-mode:multiply;border-radius:160px 12px 12px 12px;filter:contrast(1.08);opacity:.96}.portrait .spark{position:absolute;right:22px;top:20px;color:var(--paper);font-size:110px;line-height:1;font-family:Arial}.roundel{position:absolute;bottom:37px;left:-35px;border-radius:50%;width:133px;height:133px;background:var(--soft-old);display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(-12deg);font-weight:700;font-size:19px;line-height:1.2;box-shadow:0 4px 0 #211b2015}.photo-caption{position:absolute;bottom:30px;right:23px;background:var(--paper);padding:10px 15px;border-radius:5px;font-size:12px;line-height:1.5}.photo-caption b{font-size:15px}.promise{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding:23px 0;font-size:14px;font-weight:600}.promise span:before{content:'↗';color:var(--accent);margin-right:12px}.section{padding:108px 0}.section h2{font-size:clamp(44px,5vw,70px);font-weight:700}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:48px}.sectionhead p{max-width:380px;color:#5f5b5d;font-size:17px}.lesson{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lesson-info{padding:46px 45px 46px 0}.lesson h3{font-size:45px;margin:12px 0 22px}.tag{border:1px solid #b8b3b5;border-radius:30px;font-size:11px;letter-spacing:.09em;padding:6px 11px;text-transform:uppercase;display:inline-block}.lesson p{color:#5f5b5d;max-width:470px;margin-bottom:25px}.schedule{padding:40px;background:#f1efed;display:flex;flex-direction:column;justify-content:center}.schedule strong{font:700 48px/1.2 Manrope;letter-spacing:-.05em}.schedule .day{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;font-size:15px}.schedule p{margin:18px 0 24px;font-size:15px}.future{font-size:14px;color:#5f5b5d;padding-top:22px}.about{background:var(--soft-old)}.aboutgrid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about h2{margin-bottom:28px}.about p{margin-bottom:20px;max-width:510px}.videobox{position:relative;background:#333;aspect-ratio:1.2;overflow:hidden;border-radius:7px}.videobox img{width:100%;height:100%;object-fit:cover;transform:scale(1.35)}.videobox:after{content:'';position:absolute;inset:0;background:#0002;pointer-events:none}.play{position:absolute;z-index:2;bottom:25px;left:25px;background:var(--paper);color:var(--ink);padding:13px 20px;border:0;border-radius:40px;font-size:14px}.videobox iframe{width:100%;height:100%;border:0;position:relative;z-index:3}.prices{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden}.price{padding:35px}.price+.price{border-left:1px solid var(--line)}.price.featured{background:#f3f1ef}.price h3{font-size:24px;letter-spacing:-.025em;margin:12px 0 24px}.amount{font:700 58px/1.1 Manrope;letter-spacing:-.06em;margin-bottom:18px}.price p{font-size:15px;color:#5f5b5d;margin-bottom:28px}.price .btn{width:100%}.price .mini{font-size:12px;letter-spacing:.08em;text-transform:uppercase;min-height:22px}.trial{display:flex;justify-content:space-between;gap:30px;align-items:center;background:var(--accent);color:white;padding:32px 36px;border-radius:7px;margin-bottom:22px}.trial h3{font-size:28px;margin-bottom:7px}.trial p{font-size:15px}.eventstrip{background:#eeecea}.eventrow{display:grid;grid-template-columns:160px 1fr auto;gap:35px;align-items:center;padding:30px 0;border-top:1px solid #b8b3b5;border-bottom:1px solid #b8b3b5}.date{font-size:15px;line-height:1.2}.date strong{font:700 64px/1 Manrope;letter-spacing:-.07em;display:block;margin-bottom:9px}.eventrow h3{font-size:32px;margin:15px 0}.eventrow p{font-size:15px;color:#5f5b5d}.faqgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}details{border-top:1px solid var(--line);padding:22px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:18px;font-weight:600;list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:var(--accent);font-size:23px}details[open] summary:after{content:'−'}details p{font-size:16px;color:#5f5b5d;margin-top:18px}.contact{background:var(--accent);color:white;padding:80px 0}.contact h2{font-size:clamp(50px,6.5vw,88px);margin-bottom:32px}.contactgrid{display:flex;justify-content:space-between;gap:45px;align-items:end}.contact p{max-width:430px;margin-bottom:24px;color:#ffffff}.contact a.mail{font-size:18px;text-decoration:underline;text-underline-offset:5px}footer{padding:34px 0;background:#fff}footer .wrap{display:flex;gap:28px;justify-content:space-between;align-items:center;font-size:12px}.footlinks{display:flex;gap:22px;flex-wrap:wrap}.pagehero{padding:65px 0 70px}.pagehero h1{font-size:clamp(55px,7vw,90px);margin-bottom:26px;max-width:950px}.pagehero p{max-width:650px;color:#5f5b5d}.back{display:inline-block;font-size:14px;margin-bottom:42px}.booking{background:white;border:1px solid var(--line);border-radius:8px;padding:25px;min-height:650px;box-shadow:0 20px 38px rgba(33,27,32,.27),0 6px 16px rgba(33,27,32,.17)}.booking iframe{width:100%;height:800px;border:0}.subnote{font-size:14px;color:#5f5b5d;margin-top:20px}.eventdetail{display:grid;grid-template-columns:1fr .75fr;gap:65px;align-items:start}.eventdetail img{width:100%;border-radius:5px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:35px 0}.facts span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;display:block;color:#5f5b5d;margin-bottom:7px}.facts strong{font-size:19px}.eventdetail h2{font-size:35px;margin:30px 0 20px}.eventdetail p{margin-bottom:20px}.notice{padding:20px;background:var(--soft-old);border-radius:5px;font-size:15px;margin:25px 0}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:35px 0}.swatch{padding:55px 20px 20px;border:1px solid #211b2033;border-radius:6px;font-size:14px}.brandtext{max-width:850px}.brandtext h2{margin:45px 0 20px;font-size:38px}.brandtext p{margin-bottom:20px}.skip{position:absolute;left:10px;top:-100px;background:white;z-index:100;padding:15px}.skip:focus{top:10px}@media(min-width:1600px){.hero{padding-top:75px;padding-bottom:85px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.navlinks{gap:18px}.navlinks .desktop{display:none}.hero{gap:32px}.hero h1{font-size:70px}.portrait{min-height:480px}.aboutgrid{gap:45px}.section{padding:80px 0}.price{padding:25px}.eventrow{grid-template-columns:110px 1fr}.eventrow .btn{grid-column:2;justify-self:start}.faqgrid{gap:40px}}@media(max-width:700px){body{font-size:17px}.wrap{width:calc(100% - 40px)}.nav{height:88px}.logo{font-size:24px}.mark{font-size:38px}.menu{display:block}.navlinks{display:none;position:absolute;top:88px;left:0;right:0;padding:25px 20px;background:var(--paper);z-index:10;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.navlinks .desktop{display:block}.hero{grid-template-columns:1fr;padding:35px 0 38px;gap:40px}.hero h1{font-size:clamp(60px,13vw,85px);margin-bottom:23px}.hero .intro{font-size:18px}.portrait{height:450px;min-height:0;margin-left:20px;border-radius:110px 8px 8px 8px}.portrait img{border-radius:110px 8px 8px 8px;object-position:center 30%}.roundel{width:112px;height:112px;left:-20px;font-size:16px}.promise{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:15px}.section{padding:64px 0}.sectionhead{display:block;margin-bottom:32px}.sectionhead p{margin-top:25px}.section h2{font-size:44px}.lesson,.aboutgrid,.faqgrid,.eventdetail{grid-template-columns:1fr;gap:35px}.lesson-info{padding:30px 0 0}.lesson h3{font-size:40px}.schedule{padding:28px;margin-bottom:0}.schedule strong{font-size:40px}.aboutgrid .videobox{order:2}.prices{grid-template-columns:1fr}.price+.price{border-left:0;border-top:1px solid var(--line)}.price{padding:30px}.price h3{margin:8px 0 18px}.trial{display:block;padding:27px}.trial .btn{margin-top:20px}.eventrow{gap:20px;grid-template-columns:75px 1fr}.date strong{font-size:48px}.eventrow h3{font-size:25px}.eventrow .btn{grid-column:1/-1;width:100%}.contactgrid{display:block}.contactgrid>div:last-child{margin-top:35px}.contact{padding:60px 0}footer .wrap{display:block}footer .logo{margin-bottom:28px}.footlinks{gap:14px;margin-top:20px}.pagehero{padding:30px 0 50px}.pagehero h1{font-size:56px}.eventdetail{gap:40px}.eventdetail .poster{order:2}.booking{padding:8px}.facts{gap:20px}.swatches{grid-template-columns:1fr 1fr}.actions{gap:18px}.navlinks .btn{justify-content:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Start to Dance brand and video headers */
:root{--brand:#ff006f;--brand-text:#ff006f;--soft:#f3f1ef}.mark,.brand{color:var(--brand-text)}.btn{background:var(--brand);border-color:var(--brand);color:#211b20;font-weight:700}.btn:hover{background:#ff006f;border-color:#ff006f;color:white}.btn.light{color:var(--ink)}.btn.outline{color:var(--ink);border-color:var(--ink)}.about{background:var(--soft)}.contact,.trial{background:var(--ink)}.contact .eyebrow,.trial h3{color:#ff006f}.roundel{background:var(--soft)}.video-header{position:relative;isolation:isolate;background:#211b20 url('https://starttodance.be/wp-content/uploads/2026/11/StartToDance_group.png') center 45%/cover;overflow:hidden;color:white}.video-header:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,11,16,.87),rgba(16,11,16,.4) 65%,rgba(16,11,16,.24))}.header-video{position:absolute;inset:0;z-index:-2;opacity:0;transition:opacity 1s;overflow:hidden;pointer-events:none}.video-ready .header-video{opacity:1}.header-video iframe{position:absolute;width:100%;height:56.25vw;min-height:100%;min-width:177.78vh;top:50%;left:50%;transform:translate(-50%,-50%);border:0}.header-content{position:relative;padding-top:92px;padding-bottom:90px;z-index:1}.home-header{min-height:660px}.home-header h1{font-size:clamp(70px,8vw,118px);font-weight:800;margin-bottom:28px;max-width:1000px}.home-header h1 span,.header-accent{color:#ff006f}.home-header .eyebrow{margin-bottom:30px}.video-header .dot{background:var(--brand)}.home-header .header-content>p{font-size:21px;max-width:560px;line-height:1.6;margin-bottom:30px}.video-header .textlink{color:white}.home-header .header-content .micro{font-size:14px;color:#ffffff;margin:24px 0 0}.video-toggle{position:absolute;right:25px;bottom:20px;border:1px solid #ffffff77;color:white;background:#211b20aa;padding:10px 15px;font-size:12px;border-radius:25px;z-index:3}.page-video-header{margin-bottom:65px}.page-video-header .header-content{padding-top:38px;padding-bottom:65px}.page-video-header h1{font-size:clamp(55px,7vw,90px);max-width:1020px;margin-bottom:25px}.page-video-header p{max-width:650px;color:#ffffff}.page-video-header .eyebrow{color:#ffffff}.page-video-header .back{color:white}.aboutgrid{align-items:start}.aboutgrid .videobox{position:sticky;top:30px;margin-top:10px}.about h2{margin-bottom:32px}.about p{font-size:17px;line-height:1.8}.videobox{aspect-ratio:.95}.videobox img{transform:scale(1.25)}.swatches .swatch{color:var(--ink)}
@media(max-width:700px){.home-header{min-height:650px}.header-content{padding-top:65px;padding-bottom:90px}.home-header h1{font-size:clamp(58px,13vw,82px)}.home-header .header-content>p{font-size:18px}.home-header .actions{align-items:flex-start;flex-direction:column}.home-header .eyebrow{font-size:10px;letter-spacing:.1em}.video-header:after{background:linear-gradient(90deg,#100b10dc,#100b1080)}.header-video iframe{height:100%;width:177.78vh;min-width:100%;min-height:56.25vw}.page-video-header h1{font-size:52px}.page-video-header .header-content{padding-top:28px;padding-bottom:75px}.page-video-header{margin-bottom:40px}.aboutgrid .videobox{position:relative;top:auto;aspect-ratio:1.2}.video-toggle{right:20px;bottom:17px}.about p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.header-video{display:none}.video-toggle{display:none}.header-video{transition:none}}

.navlinks{gap:22px}.regular-booking{white-space:nowrap;font-size:14px}.navlinks .btn{white-space:nowrap}@media(max-width:1100px) and (min-width:701px){.navlinks .desktop{display:none}.navlinks{gap:18px}}@media(max-width:700px){.navlinks .regular-booking{padding:10px 0}.navlinks .btn{justify-content:space-between}}

/* Rounded CTA treatment, with the Cabo Norte arrow changing sides. */
.btn{border-radius:999px;justify-content:center;gap:0;padding:17px 25px;border:2px solid var(--brand);background:var(--brand);color:var(--ink);transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease;text-decoration:none!important}.btn .cta-content{display:inline-flex;align-items:center;justify-content:center;max-width:100%;gap:0}.cta-label{min-width:0}.btn .cta-arrow{display:inline-flex;align-items:center;overflow:hidden;flex:0 0 auto;transition:width 300ms ease,opacity 220ms ease,transform 300ms ease}.btn .cta-arrow svg{min-width:22px;flex:0 0 22px}.btn .cta-arrow-left{width:32px;opacity:1;transform:translateX(0);justify-content:flex-start}.btn .cta-arrow-right{width:0;opacity:0;transform:translateX(-8px);justify-content:flex-end}.btn:is(:hover,:focus-visible){background:var(--ink);border-color:var(--ink);color:var(--brand)}.btn.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.outline:is(:hover,:focus-visible){background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.btn.light:is(:hover,:focus-visible){background:var(--brand);border-color:var(--brand);color:var(--ink)}.site-header .btn{background:transparent;border-color:var(--brand);color:var(--brand-text)}.site-header .btn:is(:hover,:focus-visible){background:var(--brand);color:var(--ink);border-color:var(--brand)}.eventrow:is(:hover,:focus-visible) .btn.outline{background:var(--ink);color:var(--paper)}.navlinks .btn:hover{text-decoration:none}.video-header .btn:is(:hover,:focus-visible){background:var(--paper);border-color:var(--paper);color:var(--brand-text)}
@media(hover:hover){.btn:hover .cta-arrow-left,.eventrow:hover .cta-arrow-left{width:0;opacity:0;transform:translateX(-8px)}.btn:hover .cta-arrow-right,.eventrow:hover .cta-arrow-right{width:32px;opacity:1;transform:translateX(0)}}
.btn:focus-visible .cta-arrow-left,.eventrow:focus-visible .cta-arrow-left{width:0;opacity:0;transform:translateX(-8px)}.btn:focus-visible .cta-arrow-right,.eventrow:focus-visible .cta-arrow-right{width:32px;opacity:1;transform:translateX(0)}
.site-header{position:sticky;top:0;z-index:100;background:var(--paper);border-bottom:1px solid #211b2014}.site-header .nav{height:100px}.navlinks{gap:20px}.navlinks .btn{font-size:14px;padding:13px 19px;min-height:50px}.navlinks .regular-booking{font-size:14px}.aboutgrid .videobox{top:125px}
@media(max-width:1200px) and (min-width:701px){.navlinks .desktop{display:none}}@media(max-width:700px){.site-header .nav{height:80px}.navlinks{top:80px;max-height:calc(100dvh - 80px);overflow-y:auto}.navlinks .btn{justify-content:center}.aboutgrid .videobox{top:auto}.btn{padding-inline:22px}.navlinks .regular-booking{padding:8px 0}html{scroll-padding-top:95px}.page-video-header .btn{white-space:normal;text-align:left}}
@media(prefers-reduced-motion:reduce){.btn,.btn .cta-arrow{transition:none}}

/* CTA elevation and white labels on filled colour backgrounds. */
.btn{color:#fff;box-shadow:0 6px 18px rgba(33,27,32,.18),0 2px 4px rgba(33,27,32,.08);transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease,box-shadow 220ms ease}
.btn:is(:hover,:focus-visible){color:#fff;box-shadow:0 9px 24px rgba(33,27,32,.23),0 3px 6px rgba(33,27,32,.1)}
.btn.light{color:var(--ink)}
.btn.light:is(:hover,:focus-visible){color:#fff}
.btn.outline{color:var(--ink)}
.btn.outline:is(:hover,:focus-visible),.eventrow:is(:hover,:focus-visible) .btn.outline{color:#fff}
.site-header .btn{color:var(--brand-text)}
.site-header .btn:is(:hover,:focus-visible){color:#fff}
.video-header .btn{color:#fff}
.video-header .btn:is(:hover,:focus-visible){color:var(--brand-text)}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}

.schedule-actions{display:flex;flex-direction:column;gap:0}.schedule-actions .btn{width:100%}.schedule-actions .returning-label{font-size:13px;text-align:center;margin:23px 0 10px;color:#5f5b5d}.schedule-actions .btn.outline{background:transparent;color:var(--ink)}.schedule-actions .btn.outline:is(:hover,:focus-visible){background:var(--ink);color:#fff}

/* Keep both booking choices side by side. */
.schedule-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px;row-gap:10px;align-items:stretch}
.schedule-actions>.btn:first-child{grid-column:1;grid-row:2}
.schedule-actions>.btn:last-child{grid-column:2;grid-row:2}
.schedule-actions .returning-label{grid-column:2;grid-row:1;margin:0;text-align:center;font-size:12px;align-self:end}
.schedule-actions .btn{padding:15px 12px;font-size:14px;white-space:normal;min-height:62px}
.schedule-actions .cta-label{white-space:normal;text-align:center}
@media(max-width:700px){.schedule-actions{column-gap:10px}.schedule-actions .btn{font-size:12px;padding:13px 8px;min-height:72px}.schedule-actions .returning-label{font-size:11px}.schedule-actions .cta-arrow svg{min-width:18px;flex-basis:18px}.schedule-actions .cta-arrow-left{width:24px}.schedule-actions .btn:focus-visible .cta-arrow-right{width:24px}}
@media(max-width:700px) and (hover:hover){.schedule-actions .btn:hover .cta-arrow-right{width:24px}}

.crew-lesson{margin-top:36px}.crew-subtitle{display:inline-block;font-size:30px;letter-spacing:-.04em;margin-top:6px}.lesson .crew-note{font-size:14px;border-left:3px solid var(--brand);padding-left:18px;margin-bottom:0}.schedule .crew-booking-note{font-size:13px;margin:17px 0 23px}.crew-lesson .day{gap:14px;flex-wrap:wrap}.crew-lesson .schedule .textlink{font-size:13px}@media(max-width:700px){.crew-subtitle{font-size:28px}.crew-lesson .lesson-info{padding-bottom:0}.crew-lesson .schedule .textlink{font-size:12px}}

.logo{gap:0;display:inline-flex;align-items:center;flex:0 0 auto}.brand-logo{display:block;width:80px;height:80px;object-fit:cover}.site-header .logo{width:80px;height:80px}.site-header .nav{height:100px}footer .brand-logo{width:80px;height:80px}@media(max-width:700px){.site-header .nav{height:80px}.site-header .logo,.site-header .brand-logo{width:64px;height:64px}}

/* One brand accent: exact Start to Dance pink. Neutral surfaces provide contrast. */
:root{--brand:#ff006f;--brand-text:#ff006f;--accent:#ff006f;--soft:#f3f1ef;--paper:#f8f5f3;--ink:#211b20}
.brand,.mark{color:var(--brand)}.about,.eventstrip{background:#f3f1ef}.schedule,.price.featured,.notice{background:#f1efed}.contact .eyebrow,.trial h3{color:#fff}.home-header h1 span,.header-accent{color:var(--brand)}.page-video-header .eyebrow{color:#fff}.home-header h1{font-size:clamp(54px,6.6vw,96px);max-width:1240px}.home-header .header-content>p{max-width:630px}.hero .intro,.sectionhead p{color:#5f5b5d}.brand-logo{mix-blend-mode:multiply}.btn,.navlinks .btn,.schedule-actions .btn{font-size:19px;font-weight:700;line-height:1.35}.btn:is(:hover,:focus-visible){background:var(--ink);color:#fff;border-color:var(--ink)}.site-header .btn{background:var(--ink);border-color:var(--ink);color:#fff}.site-header .btn:is(:hover,:focus-visible){background:var(--brand);border-color:var(--brand);color:#fff}.btn.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn.light:is(:hover,:focus-visible){background:var(--brand);color:#fff;border-color:var(--brand)}.video-header .btn:is(:hover,:focus-visible){background:var(--ink);color:#fff;border-color:var(--ink)}.schedule-actions .btn{padding:14px 12px;min-height:66px}.schedule-actions .btn.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.schedule-actions .btn.outline:is(:hover,:focus-visible){background:var(--ink);color:#fff}.navlinks{gap:18px}.navlinks .btn{padding:12px 18px}.first-steps{list-style:none;counter-reset:steps;padding:0;margin:35px 0 0}.first-steps li{counter-increment:steps;position:relative;padding:0 0 27px 58px}.first-steps li:before{content:counter(steps);position:absolute;top:0;left:0;border:1px solid var(--ink);border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:15px;font-weight:700}.first-steps strong{display:block;font-size:19px;margin-bottom:7px}.first-steps span{display:block;font-size:16px;color:#5f5b5d;max-width:510px}.location-section{border-top:1px solid var(--line)}.location-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:start}.location-grid h2{font-size:clamp(38px,4vw,58px)}.location-card{padding:40px;background:#eeecea;border-radius:8px}.location-card h3{font-size:38px;margin:25px 0}.location-card p{font-size:16px;margin-bottom:23px}.location-card .textlink{font-size:15px}.about h2{font-size:clamp(40px,4.2vw,58px)}#tarieven h2{font-size:clamp(40px,4.2vw,58px)}.event-hero-actions{margin-top:30px}.events-list-heading{font-size:34px;margin-bottom:30px}.navlinks .desktop{display:block}.navlinks a:hover{text-decoration:none}.video-header .eyebrow{color:#fff}.site-header .navlinks .btn{white-space:nowrap}
@media(max-width:1250px) and (min-width:701px){.navlinks .desktop{display:none}}@media(max-width:700px){.home-header h1{font-size:clamp(44px,11.5vw,62px)}.home-header .header-content>p{font-size:18px}.home-header .header-content{padding-top:50px}.navlinks .desktop{display:block}.navlinks .btn{font-size:19px}.schedule-actions .btn{font-size:19px;padding:13px 8px;min-height:96px}.location-grid{grid-template-columns:1fr;gap:30px}.location-card{padding:28px}.location-grid h2{font-size:40px}.about h2,#tarieven h2{font-size:40px}.page-video-header h1{font-size:46px}.page-video-header .btn{font-size:19px}.first-steps li{padding-left:48px}.events-list-heading{font-size:28px}.btn .cta-label{overflow-wrap:normal}.crew-lesson .day{display:block}.crew-lesson .day .tag{margin-top:14px}}

.lesson-audience{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);display:flex;align-items:baseline;gap:14px;font-size:17px;line-height:1.6}.lesson-audience strong{font-weight:700;color:var(--ink)}.lesson-audience span{color:#5f5b5d}@media(max-width:700px){.lesson-audience{font-size:17px;flex-wrap:wrap;gap:6px 14px}}

/* Action colours are semantic: pink = trial, black = regular booking or class card. */
.btn.cta-trial,.site-header .btn.cta-trial,.video-header .btn.cta-trial,.schedule-actions .btn.cta-trial{background:#ff006f;border-color:#ff006f;color:#fff}
.btn.cta-trial:is(:hover,:focus-visible),.site-header .btn.cta-trial:is(:hover,:focus-visible),.video-header .btn.cta-trial:is(:hover,:focus-visible),.schedule-actions .btn.cta-trial:is(:hover,:focus-visible){background:#fff;border-color:#ff006f;color:#ff006f}
.btn.cta-booking,.site-header .btn.cta-booking,.video-header .btn.cta-booking,.schedule-actions .btn.cta-booking{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn.cta-booking:is(:hover,:focus-visible),.site-header .btn.cta-booking:is(:hover,:focus-visible),.video-header .btn.cta-booking:is(:hover,:focus-visible),.schedule-actions .btn.cta-booking:is(:hover,:focus-visible){background:var(--ink);border-color:var(--ink);color:#fff}

/* Concise information: one venue, one pricing area, no duplicate process block. */
.home-header h1{font-size:clamp(62px,7.5vw,110px);max-width:1050px}.home-header .header-content>p{max-width:590px}.home-header{min-height:620px}.sectionhead:has(>h2){margin-bottom:40px}.shared-venue{margin-top:30px;padding:25px 0;border-bottom:1px solid var(--line);display:flex;gap:30px;align-items:center;justify-content:space-between}.shared-venue strong{display:block;font-size:16px;margin-bottom:6px}.shared-venue span{font-size:15px;color:#5f5b5d}.shared-venue .textlink{white-space:nowrap}.prices{grid-template-columns:repeat(4,minmax(0,1fr))}.price{display:flex;flex-direction:column;padding:28px 22px}.price h3{font-size:24px;line-height:1.2;min-height:58px;margin-top:0}.price p{min-height:78px}.price .btn{margin-top:auto;padding-inline:16px}.trial-price{background:#f1efed}.trial-terms{margin-top:25px}.trial-terms p{max-width:850px}.schedule .schedule-actions{margin-top:28px}.crew-lesson .schedule .btn{margin-top:28px}.contact p{max-width:none}
@media(max-width:1100px) and (min-width:701px){.prices{grid-template-columns:repeat(2,minmax(0,1fr))}.price:nth-child(3){border-left:0}.price:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:700px){.home-header h1{font-size:clamp(48px,12vw,68px)}.home-header{min-height:600px}.shared-venue{display:block}.shared-venue .textlink{display:inline-block;margin-top:15px}.prices{grid-template-columns:1fr}.price{padding:28px}.price h3{min-height:0}.price p{min-height:0}.price .btn{margin-top:0}.price+.price{border-left:0}.contact h2{font-size:50px}}

.trial-info{margin-top:28px;padding:30px 34px;background:#f1efed;border-left:5px solid #ff006f;border-radius:0 10px 10px 0}.trial-info h3{font-size:27px;letter-spacing:-.035em;line-height:1.25;margin:0 0 24px}.trial-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.trial-info h4{font-size:18px;font-weight:700;margin:0 0 9px}.trial-info p{font-size:16px;line-height:1.75;color:#5f5b5d;margin:0}.trial-info+.subnote{font-size:16px;line-height:1.7;margin-top:24px;max-width:1000px}@media(max-width:700px){.trial-info{padding:25px 23px}.trial-info h3{font-size:25px}.trial-info-grid{grid-template-columns:1fr;gap:25px}}

/* Featured event: a clear visual break in the landing page. */
.event-highlight{background:#211b20;color:#fff;padding:90px 0 100px}.event-highlight .sectionhead{align-items:end;margin-bottom:55px}.event-highlight h2{color:#fff;font-size:clamp(48px,5.3vw,76px)}.event-highlight .sectionhead .textlink{color:#fff;font-size:17px;padding-bottom:7px}.event-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.feature-visual{display:block;max-width:500px;box-shadow:0 18px 45px #0005;transform:rotate(-2deg);border-radius:8px;overflow:hidden;transition:transform 250ms ease}.feature-visual:hover{transform:rotate(0)}.feature-visual img{display:block;width:100%;height:auto}.feature-date{display:flex;align-items:center;gap:20px;margin-bottom:32px}.feature-date strong{display:grid;place-items:center;background:#ff006f;color:#fff;border-radius:12px;width:96px;height:100px;font:800 64px/1 Manrope,sans-serif;letter-spacing:-.06em}.feature-date>span{font-size:13px;line-height:1.7;letter-spacing:.11em;font-weight:600}.feature-category{font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:#fff}.feature-content h3{font-size:clamp(48px,5vw,72px);line-height:1.05;color:#fff;margin:18px 0 28px}.feature-meta{font-size:19px;line-height:1.65;color:#e5e1e2;margin-bottom:32px}.event-highlight .btn.event-feature-cta{background:#fff;border-color:#fff;color:#211b20;box-shadow:0 6px 22px #0004}.event-highlight .btn.event-feature-cta:is(:hover,:focus-visible){background:transparent;border-color:#fff;color:#fff}.event-highlight a:focus-visible{outline-color:#fff}.event-highlight .feature-visual:focus-visible{outline-offset:7px}
@media(max-width:1000px){.event-feature{gap:45px}.feature-content h3{font-size:54px}.feature-date{margin-bottom:25px}.feature-date strong{width:80px;height:85px;font-size:54px}}@media(max-width:700px){.event-highlight{padding:60px 0 70px}.event-highlight h2{font-size:44px}.event-highlight .sectionhead{display:flex;align-items:end;gap:20px;margin-bottom:35px}.event-highlight .sectionhead .textlink{font-size:13px;white-space:nowrap}.event-feature{grid-template-columns:1fr;gap:40px}.feature-content{order:0}.feature-visual{order:1;max-width:440px;transform:none}.feature-content h3{font-size:54px;margin:16px 0 22px}.feature-date{gap:18px;margin-bottom:27px}.feature-date strong{width:76px;height:80px;font-size:52px}.feature-meta{font-size:17px;margin-bottom:27px}.event-feature-cta{max-width:100%;width:100%}}
@media(prefers-reduced-motion:reduce){.feature-visual{transform:none;transition:none}}
@media(max-width:700px){.event-highlight .sectionhead{display:block}.event-highlight .sectionhead .textlink{display:inline-block;margin-top:20px}.event-highlight h2{max-width:100%}}

/* Reusable, compact event list: three previews on home, full list on the events page. */
.event-highlight{padding:75px 0 85px}.event-highlight h2{font-size:clamp(40px,4.8vw,66px)}.event-highlight .sectionhead{margin-bottom:40px}.event-list{display:grid;gap:18px}.event-card{display:grid;grid-template-columns:135px 78px minmax(0,1fr) auto;gap:30px;align-items:center;padding:26px;background:#2c262b;border:1px solid #ffffff25;border-radius:12px;color:#fff}.event-card-poster{display:block;border-radius:5px;overflow:hidden}.event-card-poster img{width:135px;height:135px;object-fit:contain;display:block;background:#211b20}.event-card-date{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:#ff006f;border-radius:9px;padding:15px 8px;max-height:135px}.event-card-date strong{font:800 49px/1 Manrope,sans-serif;letter-spacing:-.06em}.event-card-date span{font-size:11px;line-height:1.6;letter-spacing:.04em;text-align:center;margin-top:7px}.event-card-content .event-kind{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.event-card-content h3{font-size:30px;line-height:1.15;margin:10px 0 12px;color:#fff}.event-card-content p{font-size:15px;line-height:1.6;color:#e5e1e2}.event-card .btn.event-card-cta{background:#fff;color:#211b20;border-color:#fff;font-size:18.7px;padding:15px 20px;white-space:nowrap}.event-card .btn.event-card-cta:is(:hover,:focus-visible){background:transparent;color:#fff;border-color:#fff}.event-card a:focus-visible{outline-color:#fff}.events-overview .event-card{background:#211b20}.event-list-empty{font-size:18px}.event-highlight .event-list-empty{color:#fff}
@media(max-width:1100px) and (min-width:701px){.event-card{grid-template-columns:105px 70px minmax(0,1fr);gap:24px}.event-card-poster img{width:105px;height:105px}.event-card .event-card-cta{grid-column:3;justify-self:start}.event-card-date{max-height:105px;align-self:start}.event-card-content h3{font-size:28px}}
@media(max-width:700px){.event-highlight{padding:55px 0 65px}.event-highlight h2{font-size:40px}.event-highlight .sectionhead{margin-bottom:30px}.event-card{grid-template-columns:76px minmax(0,1fr);gap:20px;padding:22px}.event-card-poster{display:none}.event-card-date{grid-column:1;grid-row:1;max-height:96px;height:96px;align-self:start}.event-card-date strong{font-size:44px}.event-card-content{grid-column:2;grid-row:1}.event-card-content h3{font-size:25px;margin-top:8px}.event-card-content p{font-size:14px}.event-card .btn.event-card-cta{grid-column:1/-1;width:100%;font-size:19px;padding-inline:15px;white-space:normal}.event-card .cta-label{text-align:center}.event-card-content .event-kind{font-size:10px}}

/* Prominent shared class location, shown once beneath the class list. */
.venue-panel{margin-top:36px;padding:38px 40px;background:#fff;border:1px solid #d8d4d2;border-left:6px solid #ff006f;border-radius:12px;box-shadow:0 6px 22px #211b2010;display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:28px;align-items:center}.venue-icon{width:76px;height:76px;border-radius:50%;background:#f3f1ef;color:#ff006f;display:grid;place-items:center}.venue-label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:12px}.venue-address h3{font-size:34px;line-height:1.15;margin:0 0 13px;letter-spacing:-.04em}.venue-address address{font-style:normal;font-size:20px;line-height:1.6;color:#5f5b5d}.venue-panel .btn.venue-route{background:transparent;border-color:#211b20;color:#211b20;font-size:19px;padding:17px 24px;white-space:nowrap}.venue-panel .btn.venue-route:is(:hover,:focus-visible){background:#211b20;color:#fff;border-color:#211b20}
@media(max-width:1000px) and (min-width:701px){.venue-panel{grid-template-columns:64px minmax(0,1fr);gap:24px}.venue-icon{width:64px;height:64px}.venue-panel .venue-route{grid-column:2;justify-self:start}}@media(max-width:700px){.venue-panel{padding:27px 24px;grid-template-columns:48px minmax(0,1fr);gap:18px}.venue-icon{width:48px;height:48px;align-self:start;margin-top:2px}.venue-icon svg{width:29px;height:29px}.venue-address h3{font-size:27px}.venue-address address{font-size:18px}.venue-panel .venue-route{grid-column:1/-1;width:100%;margin-top:5px}.venue-label{font-size:11px;margin-bottom:10px}}

.lesson-audience{align-items:center;gap:13px}.lesson-audience .audience-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:#f1efed;color:#ff006f}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.about .about-intro{font-size:19px;line-height:1.6;font-weight:600;margin-bottom:25px}.about h2{overflow-wrap:normal}

@media(min-width:701px) and (max-width:1100px){.site-header .menu{display:block}.site-header .navlinks{display:none;position:absolute;top:100px;left:0;right:0;padding:25px 32px;background:var(--paper);z-index:110;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;max-height:calc(100dvh - 100px);overflow-y:auto}.site-header .navlinks.open{display:flex}.site-header .navlinks .desktop{display:block}.site-header .navlinks .btn{justify-content:center}}

/* Dedicated Salsation explanation: shared brand, readable editorial content. */
.salsation-story{padding-top:90px;padding-bottom:90px}.salsation-story-row{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;padding:65px 0;border-bottom:1px solid #d8d3d5}.salsation-story-row:first-child{padding-top:0}.salsation-story-row:last-child{border-bottom:0;padding-bottom:0}.salsation-story-row h2{font-size:clamp(36px,3.6vw,54px);line-height:1.1;margin:22px 0 0}.salsation-prose p{font-size:20px;line-height:1.85;margin:0 0 26px;max-width:65ch}.salsation-prose p:last-child{margin-bottom:0}.salsation-origin figure{display:flex;align-items:center;gap:22px;margin:35px 0 0}.salsation-origin figure img{width:110px;height:110px;object-fit:cover;border-radius:50%}.salsation-origin figcaption{font-size:15px;line-height:1.6}.salsation-inline-link{font-weight:700;text-decoration:underline;text-underline-offset:4px}.salsation-learn-more{display:inline-block;margin:0 0 30px}.salsation-book{background:#eeebea;padding:70px 0}.salsation-book>.wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.salsation-book h2{font-size:clamp(40px,4.5vw,64px);margin:20px 0 0}.salsation-book .btn{flex-shrink:0}
@media(max-width:900px){.salsation-story-row{gap:40px;grid-template-columns:1fr 1.2fr}.salsation-prose p{font-size:18px}}@media(max-width:700px){.salsation-story{padding-top:50px;padding-bottom:50px}.salsation-story-row{grid-template-columns:1fr;gap:28px;padding:40px 0}.salsation-story-row h2{font-size:36px;margin-top:15px}.salsation-origin figure{margin-top:25px}.salsation-book{padding:50px 0}.salsation-book>.wrap{display:block}.salsation-book .btn{margin-top:30px;width:100%}.salsation-prose p{font-size:18px;line-height:1.75}}

/* Salsation: a visual, numbered story with clear booking choices. */
.salsation-visual-story .salsation-header{min-height:580px}.salsation-visual-story .salsation-header h1{margin-bottom:24px}.story-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}.salsation-header .cta-booking{color:#fff!important;border-color:#fff!important;background:transparent!important}.salsation-header .cta-booking:hover{background:#fff!important;color:#211b20!important}
.story-chapter{padding-top:100px;padding-bottom:100px}.chapter-heading{display:flex;align-items:center;gap:40px;margin-bottom:50px}.chapter-number{font:800 clamp(92px,10vw,150px)/.85 Manrope,sans-serif;letter-spacing:-.08em;color:#ff006f;flex-shrink:0}.chapter-heading h2{font-size:clamp(38px,4.4vw,64px);line-height:1.08;margin:16px 0 0}.chapter-heading .eyebrow{margin:0}.story-program-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.story-program-photo{position:relative;aspect-ratio:1.08;overflow:hidden;border-radius:18px}.story-program-photo img{height:100%;width:100%;object-fit:cover}.story-program-photo>span{position:absolute;bottom:24px;left:24px;background:#211b20;color:#fff;font-weight:700;font-size:15px;padding:12px 18px;border-radius:999px}.story-program-text p,.story-origin-copy p{font-size:20px;line-height:1.8;margin:0 0 25px}.story-rhythms{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.story-rhythms span{border:1px solid #b9b3b5;border-radius:999px;padding:7px 16px;font-size:14px}
.story-benefits{padding:90px 0;background:#eeebea}.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.benefit-tile{border:1px solid #d8d3d5;background:#f8f5f3;border-radius:16px;padding:30px 25px;position:relative}.benefit-index{font:800 64px/1 Manrope,sans-serif;letter-spacing:-.06em;color:#ff006f}.benefit-tile h3{font-size:25px;line-height:1.15;margin:35px 0 18px}.benefit-tile p{font-size:17px;line-height:1.7;margin:0}.story-community{display:flex;align-items:center;gap:32px;border-top:1px solid #c9c2c6;padding-top:38px;margin-top:45px}.community-mark{display:grid;place-items:center;border-radius:50%;background:#ff006f;color:#fff;width:76px;height:76px;flex-shrink:0;font:500 48px/1 Manrope,sans-serif}.story-community h3{font-size:28px;margin:0 0 10px}.story-community p{font-size:18px;line-height:1.7;max-width:880px;margin:0}
.story-video-section{padding:90px 0;background:#211b20;color:#fff}.story-video-section h2,.story-video-section h3{color:#fff}.story-videos{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px}.story-video-card{min-width:0}.story-video-media{position:relative;aspect-ratio:16/9;background:#000;border-radius:16px;overflow:hidden}.story-video-media>img{display:block;width:100%;height:100%;object-fit:cover}.story-video-media>button{position:absolute;inset:0;width:100%;height:100%;border:0;cursor:pointer;background:linear-gradient(0deg,#0009,transparent 70%);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;font:700 16px Manrope,sans-serif}.story-play{display:grid;place-items:center;background:#ff006f;color:#fff;width:68px;height:68px;border-radius:50%;padding-left:3px;font-size:24px;box-shadow:0 8px 30px #0006;transition:transform .2s}.story-video-media button:hover .story-play{transform:scale(1.12)}.story-video-media>iframe{display:block;border:0;width:100%;height:100%}.story-video-caption h3{font-size:25px;margin:20px 0 7px}.story-video-caption p{font-size:15px;color:#d9d4d7;margin:0}
.story-origin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.story-founder{margin:0;padding:35px;background:#eeebea;border-radius:18px;display:flex;flex-direction:column;align-items:center;text-align:center}.story-founder img{width:220px;height:220px;max-width:100%;object-fit:cover;border-radius:50%}.story-founder figcaption{margin-top:25px}.story-founder strong{font-size:24px;display:block;margin-bottom:8px}.story-founder figcaption span{font-size:14px;letter-spacing:.06em}.story-origin-trial{margin-top:30px}.story-final{background:#eeebea;padding:85px 0}.story-final h2{font-size:clamp(48px,6vw,82px);line-height:1.06;margin:25px 0 40px}.story-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:970px}.story-choice-grid>div{padding:28px;border:1px solid #cfc9cc;border-radius:18px}.story-choice-grid h3{font-size:20px;margin:0 0 22px}.story-choice-grid .btn{width:100%}
@media(max-width:1100px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-program-grid{gap:35px}.story-origin-grid{gap:40px}}
@media(max-width:700px){.salsation-visual-story .salsation-header{min-height:560px}.story-chapter{padding-top:55px;padding-bottom:55px}.chapter-heading{align-items:flex-start;gap:24px;margin-bottom:32px}.chapter-number{font-size:80px}.chapter-heading h2{font-size:32px;margin-top:12px}.chapter-heading .eyebrow{font-size:10px}.story-program-grid,.story-origin-grid,.story-choice-grid{grid-template-columns:1fr;gap:28px}.story-program-photo{aspect-ratio:1.35}.story-program-text p,.story-origin-copy p{font-size:18px;line-height:1.75}.story-program-photo>span{font-size:12px;left:16px;bottom:16px}.story-benefits,.story-video-section,.story-final{padding:55px 0}.benefit-grid{grid-template-columns:1fr;gap:14px}.benefit-tile{padding:25px 25px 25px 95px;min-height:135px}.benefit-index{position:absolute;left:20px;top:25px;font-size:48px}.benefit-tile h3{font-size:24px;margin:0 0 14px}.benefit-tile p{font-size:16px}.story-community{align-items:flex-start;gap:20px;margin-top:30px;padding-top:30px}.community-mark{height:48px;width:48px;font-size:32px}.story-community h3{font-size:24px}.story-community p{font-size:17px}.story-videos{grid-template-columns:1fr;gap:30px}.story-video-caption h3{font-size:24px}.story-founder{padding:30px}.story-founder img{width:180px;height:180px}.story-origin-trial .btn{width:100%;font-size:18px}.story-final h2{font-size:48px}.story-choice-grid{gap:16px}.story-choice-grid>div{padding:24px}.story-choice-grid h3{font-size:18px}.story-actions .btn{font-size:18px}.story-actions{gap:14px}.story-actions .cta-booking{width:auto}}

/* Trial campaign: form first, two short steps, no automatic video sound. */
.trial-header nav{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:8px 0}.trial-header-links{display:flex;gap:30px;font-size:15px;font-weight:700}.trial-top{background:#eeebea;padding:48px 0 65px}.trial-top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(450px,1fr);gap:65px;align-items:start}.trial-pitch{padding:20px 0}.trial-pitch h1{font-size:clamp(40px,4.6vw,65px);line-height:1.08;letter-spacing:-.055em;margin:25px 0}.trial-pitch h1>span{color:#ff006f}.trial-pitch .trial-lead{font-size:21px;line-height:1.7;max-width:480px;margin:0 0 26px}.trial-essentials{display:grid;gap:12px;font-size:16px;font-weight:600;line-height:1.6}.trial-pitch-photo{position:relative;margin-top:35px;aspect-ratio:1.6;border-radius:18px;overflow:hidden;background:#211b20}.trial-pitch-photo img{width:100%;height:100%;object-fit:cover}.trial-pitch-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#211b20c9)}.trial-pitch-photo>span{position:absolute;bottom:25px;left:25px;right:25px;color:#fff;z-index:1;font-weight:700;font-size:20px;line-height:1.4}.trial-form-card{background:#fff;border-radius:20px;padding:32px;box-shadow:0 15px 45px #211b2010;scroll-margin-top:120px;min-width:0;border:1px solid #e1dbde}.trial-form-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.trial-form-heading h2{font-size:27px;line-height:1.2;margin:12px 0 0}.trial-form-heading .eyebrow{font-size:10px}.trial-form-card .trial-price{display:flex;flex-direction:column;text-align:right;flex-shrink:0}.trial-price strong{font:800 47px/1 Manrope,sans-serif;letter-spacing:-.06em;color:#211b20}.trial-price>span{font-size:12px;margin-top:7px}.trial-required{font-size:12px;color:#615c60;margin:20px 0 18px}.trial-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.trial-field{min-width:0;display:flex;flex-direction:column;gap:8px}.trial-field-wide{grid-column:1/-1}.trial-field label{font-size:14px;font-weight:700}.trial-field input{width:100%;min-width:0;min-height:50px;border:1px solid #b9b2b6;background:#fff;border-radius:9px;color:#211b20;font:400 17px Manrope,sans-serif;padding:11px 13px;box-sizing:border-box}.trial-field input[aria-invalid=true]{border:2px solid #211b20}.trial-field input:focus-visible{outline:2px solid #ff006f;outline-offset:3px}.trial-field-help{font-size:12px;line-height:1.6;color:#615c60}.trial-field-error{font-size:12px;line-height:1.5;color:#211b20;font-weight:700}.trial-field-error:empty{display:none}.trial-important{background:#f2efef;border-left:3px solid #ff006f;border-radius:0 9px 9px 0;padding:17px 18px;margin:22px 0}.trial-important strong{font-size:13px}.trial-important p{font-size:12px;line-height:1.7;margin:7px 0 0}.trial-consent{display:flex;align-items:start;gap:12px;font-size:12px;line-height:1.8;cursor:pointer}.trial-consent input{width:19px;height:19px;flex-shrink:0;margin:2px 0 0;accent-color:#ff006f}.trial-consent a{text-decoration:underline;text-underline-offset:3px}.trial-form-card .trial-submit,.trial-form-card .trial-next{width:100%;margin-top:24px;font-size:18px;min-height:54px;cursor:pointer;justify-content:center}.trial-form-card .trial-next{gap:20px}.trial-payment-note{font-size:12px;line-height:1.7;margin:19px 0 0;color:#615c60}.trial-connection-note{border:1px dashed #a29ba0;padding:12px 15px;border-radius:8px;margin-top:22px;font-size:12px;line-height:1.6}.trial-connection-note strong{display:block;margin-bottom:4px}.trial-honeypot{position:absolute;left:-10000px;height:1px;width:1px;overflow:hidden}.trial-form-card [hidden]{display:none!important}.trial-steps{padding:0;list-style:none;display:flex;gap:18px;margin:25px 0 0;font-size:11px;color:#6a6468}.trial-steps li{display:flex;align-items:center;gap:7px;line-height:1.3}.trial-steps li>span{width:24px;height:24px;display:grid;place-items:center;border:1px solid #b9b2b6;border-radius:50%;flex-shrink:0}.trial-steps li.is-current{color:#211b20;font-weight:700}.trial-steps li.is-current>span{background:#211b20;color:#fff;border-color:#211b20}.trial-step-help{text-align:center;font-size:11px;color:#615c60;margin:14px 0 0}.trial-back{border:0;background:none;color:#211b20;text-decoration:underline;text-underline-offset:3px;font:600 12px Manrope,sans-serif;margin:0 0 23px;padding:0;cursor:pointer}#trial-status:not(:empty){margin-top:18px;padding:15px;border:1px solid #211b20;border-radius:8px;font-size:14px;line-height:1.7}.trial-success-mark{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#ff006f;color:#fff;font-size:32px;margin:20px 0}.trial-form-card #trial-success h2{font-size:32px;margin:25px 0}.trial-form-card #trial-success p{font-size:17px;line-height:1.7}.trial-submit:disabled{opacity:.6;cursor:wait}.trial-experience{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:90px;padding-bottom:90px}.trial-experience h2,.trial-practical h2{font-size:clamp(38px,4.3vw,58px);line-height:1.08;margin:22px 0 25px}.trial-experience p,.trial-practical p{font-size:19px;line-height:1.8;margin:0 0 22px}.trial-experience .story-video-caption h3{color:#211b20}.trial-experience .story-video-caption p{color:#615c60;font-size:14px;margin:0}.trial-practical{background:#eeebea;padding:75px 0}.trial-practical-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:start}.trial-location{background:#fff;padding:38px;border-radius:18px;border-left:5px solid #ff006f}.trial-location h3{font-size:38px;line-height:1.1;margin:23px 0}.trial-location address{font-style:normal;font-size:18px;line-height:1.8;margin:0 0 25px}.trial-bonus{border-top:1px solid #c8c1c5;padding-top:25px;margin-top:30px}.trial-bonus strong{font-size:20px}.trial-bonus p{font-size:17px;margin:10px 0 0}.trial-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-top:65px;padding-bottom:65px}.trial-bottom h2{font-size:35px;margin:0 0 20px}.trial-bottom>div:last-child{text-align:right}.trial-bottom p{font-size:13px;line-height:1.7;margin:20px 0 0}.trial-bottom p a{text-decoration:underline}
@media(max-width:1100px){.trial-top-grid{gap:35px;grid-template-columns:minmax(0,1fr) minmax(420px,1fr)}.trial-pitch h1{font-size:44px}.trial-pitch .trial-lead{font-size:18px}.trial-form-card{padding:25px}.trial-practical-grid{gap:45px}.trial-experience{gap:40px}}
@media(max-width:760px){.trial-top{padding:25px 0 40px}.trial-top-grid{grid-template-columns:1fr;gap:25px}.trial-header nav{padding:5px 0}.trial-header-links{gap:18px;font-size:12px}.trial-header .brand-logo{width:60px;height:60px}.trial-pitch{padding:0}.trial-pitch h1{font-size:40px;margin:18px 0}.trial-pitch .eyebrow{font-size:10px}.trial-pitch .trial-lead{font-size:17px;line-height:1.65;margin-bottom:20px}.trial-essentials{font-size:13px;gap:6px}.trial-pitch-photo{display:none}.trial-form-card{padding:24px 20px;border-radius:15px;scroll-margin-top:90px}.trial-form-heading h2{font-size:23px}.trial-price strong{font-size:40px}.trial-form-heading{gap:12px}.trial-price>span{font-size:11px}.trial-fields{gap:16px 12px}.trial-field label{font-size:13px}.trial-steps{gap:13px;font-size:10px}.trial-experience,.trial-practical-grid{grid-template-columns:1fr;gap:35px}.trial-experience{padding-top:50px;padding-bottom:50px}.trial-experience h2,.trial-practical h2{font-size:38px}.trial-experience p,.trial-practical p{font-size:17px}.trial-practical{padding:50px 0}.trial-location{padding:30px}.trial-bottom{display:block;padding-top:45px;padding-bottom:45px}.trial-bottom>div:last-child{text-align:left;margin-top:32px}.trial-bottom .btn{width:100%}.trial-bottom h2{font-size:32px}}

.trial-essentials>span{display:flex;align-items:center;gap:10px}.trial-essentials svg{width:20px;height:20px;flex-shrink:0;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.trial-price{background:transparent!important}.trial-pitch-photo img{object-position:center}
@media(max-width:760px){.trial-pitch h1{font-size:32px;margin:16px 0}.trial-pitch .trial-lead{font-size:16px;margin-bottom:16px}.trial-essentials{gap:4px;font-size:12px}.trial-top-grid{gap:20px}.trial-essentials svg{width:17px;height:17px}.trial-form-heading h2{font-size:22px}.trial-top{padding-top:20px}}

/* Contact: lessons first, clear form, no published email address. */
.contact-page-hero{background:#211b20;padding:60px 0 70px;color:#fff}.contact-page-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(460px,1fr);gap:85px;align-items:start}.contact-page-intro{padding:30px 0}.contact-page-intro .eyebrow{font-size:12px;color:#fff}.contact-page-intro h1{font-size:clamp(50px,5.3vw,76px);line-height:1.05;margin:35px 0;letter-spacing:-.06em;color:#fff}.contact-page-intro h1 span{color:#ff006f}.contact-page-intro>p{font-size:21px;line-height:1.8;max-width:450px;margin:0}.contact-call{display:flex;align-items:center;gap:20px;margin-top:55px}.contact-info-icon{display:grid;place-items:center;background:#ffffff12;border:1px solid #ffffff30;width:56px;height:56px;border-radius:50%;flex-shrink:0}.contact-info-icon svg{width:23px;height:23px;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.contact-call>div{display:flex;flex-direction:column;gap:9px}.contact-call>div>span,.contact-page-social>span{font-size:13px;color:#d9d4d7}.contact-call a{font-size:25px;font-weight:700;color:#fff}.contact-page-social{margin-top:40px;padding-top:30px;border-top:1px solid #ffffff30;display:flex;flex-direction:column;gap:13px;max-width:450px}.contact-page-social a{font-size:15px;line-height:1.7;font-weight:700;color:#fff}.contact-form-card{background:#fff;color:#211b20;padding:35px;border-radius:20px;box-shadow:0 14px 42px #0003;min-width:0;scroll-margin-top:130px}.contact-form-card>.eyebrow{font-size:11px}.contact-form-card h2{font-size:32px;margin:15px 0 20px;color:#211b20}.contact-required{font-size:12px;color:#615c60;margin:0 0 24px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-field{min-width:0;display:flex;flex-direction:column;gap:8px}.contact-field-wide{grid-column:1/-1}.contact-field label{font-size:14px;font-weight:700}.contact-field label>span{font-size:12px;font-weight:400;color:#615c60}.contact-field input,.contact-field select,.contact-field textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #b9b2b6;border-radius:9px;background:#fff;color:#211b20;font:400 17px Manrope,sans-serif;padding:12px 13px;min-height:50px}.contact-field textarea{resize:vertical;min-height:120px;line-height:1.6}.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:2px solid #ff006f;outline-offset:3px}.contact-field [aria-invalid=true]{border:2px solid #211b20}.contact-field-error{font-size:12px;font-weight:700;line-height:1.5}.contact-field-error:empty{display:none}.contact-privacy{font-size:12px;line-height:1.8;color:#615c60;margin:22px 0}.contact-privacy a{text-decoration:underline;text-underline-offset:3px}.contact-form-card .contact-submit{width:100%;background:#211b20;color:#fff;border-color:#211b20;font-size:19px;cursor:pointer;min-height:56px}.contact-form-card .contact-submit:is(:hover,:focus-visible){background:#fff;color:#211b20;border-color:#211b20}.contact-submit:disabled{opacity:.6;cursor:wait}.contact-connection-note{border:1px dashed #a29ba0;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.6;margin-top:22px}.contact-connection-note strong{display:block;margin-bottom:4px}.contact-form-card [hidden]{display:none!important}#contact-status:not(:empty){border:1px solid #211b20;border-radius:8px;padding:15px;font-size:14px;line-height:1.7;margin-top:18px}.contact-success-mark{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#ff006f;color:#fff;font-size:32px;margin:25px 0}.contact-form-card #contact-success p{font-size:18px;line-height:1.8}.contact-page-location{display:grid;grid-template-columns:1.2fr 1fr auto;gap:50px;align-items:center;padding-top:65px;padding-bottom:65px}.contact-venue-heading{display:flex;align-items:center;gap:20px}.contact-location-icon{background:#eeebea;border-radius:50%;width:60px;height:60px;display:grid;place-items:center;flex-shrink:0}.contact-location-icon svg{width:25px;height:25px;stroke:#ff006f;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-venue-heading .eyebrow{font-size:10px}.contact-venue-heading h2{font-size:28px;line-height:1.2;margin:13px 0 0}.contact-page-location address{font-size:17px;font-style:normal;line-height:1.8}.contact-page-location .btn{gap:16px;white-space:nowrap;font-size:18px}
@media(max-width:1100px){.contact-page-grid{gap:40px;grid-template-columns:minmax(0,1fr) minmax(430px,1fr)}.contact-page-intro h1{font-size:56px}.contact-page-intro>p{font-size:19px}.contact-form-card{padding:28px}.contact-page-location{grid-template-columns:1fr 1fr;gap:30px}.contact-page-location>.btn{grid-column:2;justify-self:start}.contact-venue-heading{grid-row:1/3;align-self:center}}
@media(max-width:760px){.contact-page-hero{padding:25px 0 40px}.contact-page-grid{grid-template-columns:1fr;gap:28px}.contact-page-intro{padding:0}.contact-page-intro .eyebrow{font-size:10px}.contact-page-intro h1{font-size:45px;margin:20px 0}.contact-page-intro>p{font-size:17px;line-height:1.7}.contact-call{margin-top:25px;gap:15px}.contact-info-icon{height:45px;width:45px}.contact-call a{font-size:21px}.contact-page-social{margin-top:25px;padding-top:20px}.contact-page-social>span{display:none}.contact-page-social a{font-size:13px}.contact-form-card{padding:25px 20px;border-radius:15px;scroll-margin-top:100px}.contact-form-card h2{font-size:30px}.contact-fields{gap:16px 12px}.contact-field label{font-size:13px}.contact-page-location{grid-template-columns:1fr;gap:25px;padding-top:45px;padding-bottom:45px}.contact-venue-heading{grid-row:auto}.contact-page-location>.btn{grid-column:auto;width:100%}.contact-venue-heading h2{font-size:26px}.contact-page-location address{padding-left:80px;font-size:16px}}

/* Legal pages: retained wording, readable typesetting and linked contents. */
.legal-hero{background:#eeebea;padding:35px 0 55px;border-bottom:1px solid #ded8db}.legal-back{display:inline-block;font-size:13px;font-weight:700;margin-bottom:35px}.legal-hero .eyebrow{display:block;font-size:11px}.legal-hero h1{font-size:clamp(44px,5.7vw,80px);line-height:1.06;letter-spacing:-.055em;margin:25px 0 27px;max-width:1100px}.legal-hero h1 span{color:#ff006f}.legal-version{font-size:13px;line-height:1.8;color:#615c60;margin:0}.legal-layout{display:grid;grid-template-columns:285px minmax(0,780px);gap:80px;justify-content:space-between;padding-top:60px;padding-bottom:60px;align-items:start}.legal-aside{position:sticky;top:135px;max-height:calc(100vh - 160px);overflow:auto;padding-right:15px;scrollbar-width:thin}.legal-aside h2{font-size:17px;letter-spacing:0;margin:0 0 20px}.legal-aside ol{list-style:none;padding:0;margin:0}.legal-aside li{padding:0;margin:0 0 11px;line-height:1.5}.legal-aside li a{font-size:13px;display:block;padding:4px 0}.legal-aside li a:hover{text-decoration:underline;text-underline-offset:3px}.legal-nav-h2 a{font-weight:800}.legal-nav-h2:not(:first-child){margin-top:25px}.legal-nav-h3{padding-left:13px!important;border-left:1px solid #d8d0d5}.legal-prose{font-size:17px;line-height:1.85;min-width:0;overflow-wrap:anywhere;color:#211b20}.legal-prose p{font-size:inherit;line-height:inherit;margin:0 0 22px}.legal-prose h2{font-size:31px;line-height:1.25;letter-spacing:-.035em;margin:60px 0 26px;padding-top:28px;border-top:2px solid #ff006f;scroll-margin-top:135px}.legal-prose h2:first-child{margin-top:0}.legal-prose h3{font-size:24px;line-height:1.35;letter-spacing:-.025em;margin:42px 0 20px;scroll-margin-top:135px}.legal-prose h2 b,.legal-prose h3 b{font-weight:inherit}.legal-prose ul,.legal-prose ol{margin:0 0 25px;padding-left:25px}.legal-prose li{padding-left:6px;margin-bottom:12px}.legal-prose a{text-decoration:underline;text-underline-offset:3px}.legal-end{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #d8d0d5;padding-top:30px;padding-bottom:50px}.legal-end .textlink{font-size:15px}
@media(max-width:1100px){.legal-layout{grid-template-columns:240px minmax(0,1fr);gap:45px}.legal-aside{top:115px}.legal-prose{font-size:16px}}
@media(max-width:760px){.legal-hero{padding:24px 0 35px}.legal-back{font-size:12px;margin-bottom:28px}.legal-hero .eyebrow{font-size:10px}.legal-hero h1{font-size:39px;margin:20px 0 24px}.legal-layout{grid-template-columns:1fr;gap:35px;padding-top:35px;padding-bottom:40px}.legal-aside{position:static;max-height:280px;overflow:auto;background:#eeebea;padding:25px;border-radius:12px;border:1px solid #d8d0d5}.legal-aside h2{font-size:17px}.legal-aside li a{font-size:13px}.legal-prose{font-size:16px;line-height:1.8}.legal-prose h2{font-size:26px;margin-top:45px;scroll-margin-top:105px}.legal-prose h3{font-size:22px;margin-top:35px;scroll-margin-top:105px}.legal-end{display:block;padding-top:25px;padding-bottom:35px}.legal-end .textlink{display:block;font-size:14px;margin-bottom:20px}}

/* Shared legal heading hierarchy: document group, then uniformly styled articles. */
.legal-prose .legal-intro-title{font-size:19px;line-height:1.6;margin:0 0 24px}.legal-nav-h3 a{font-weight:400}.legal-nav-h2 a{font-weight:800}@media(max-width:760px){.legal-prose .legal-intro-title{font-size:17px}}

/* Compact legal paragraphs: retain readability without large gaps between short lines. */
.legal-prose{line-height:1.65}.legal-prose p{margin-bottom:11px}.legal-prose h3{margin:30px 0 14px}.legal-prose h2{margin:45px 0 22px;padding-top:23px}.legal-prose h2:first-child{margin-top:0}.legal-prose li{margin-bottom:6px}.legal-prose ul,.legal-prose ol{margin-bottom:16px}.legal-model{border:1px solid #d8d0d5;border-left:3px solid #ff006f;border-radius:8px;background:#eeebea;padding:22px;margin:20px 0}.legal-model>strong{display:block;margin-bottom:14px}.legal-model p:last-child,.legal-model ul:last-child{margin-bottom:0}@media(max-width:760px){.legal-prose{line-height:1.65}.legal-prose p{margin-bottom:10px}.legal-prose h3{margin:27px 0 13px}.legal-model{padding:18px}}

/* Visible handover labels in the private design preview. */
.media-review-label{position:absolute;z-index:4;right:24px;bottom:22px;max-width:calc(100% - 48px);padding:10px 15px;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:rgba(33,27,32,.88);color:#fff;font-size:12px;line-height:1.45;font-weight:600;pointer-events:none}
.video-header:has(.media-review-label){padding-bottom:70px}
.media-review-inline{top:16px;bottom:auto;left:16px;right:auto;max-width:calc(100% - 32px)}
.trial-pitch-photo:has(img[src*="placeholder-"]) img,.story-program-photo:has(img[src*="placeholder-"]) img{object-fit:contain;background:#f0ece9}
.trial-pitch-photo:has(img[src*="placeholder-"])>span,.story-program-photo:has(img[src*="placeholder-"])>span{display:none}
@media(max-width:600px){.media-review-label{right:16px;bottom:14px;max-width:calc(100% - 32px);font-size:11px;padding:8px 11px}.media-review-inline{top:12px;bottom:auto;left:12px;right:auto}.video-header:has(.media-review-label){padding-bottom:78px}}

.trial-pitch-photo:has(img[src*="placeholder-"]):after{display:none}

/* Public Instagram profile, rendered by Instagram. */
.instagram-section{padding:100px 0;background:#fff;scroll-margin-top:115px}
.instagram-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:75px;align-items:center}
.instagram-intro h2{font-size:clamp(38px,4.2vw,66px);line-height:1.06;letter-spacing:-.055em;margin:23px 0}
.instagram-intro p{font-size:20px;line-height:1.65;max-width:400px;color:#60595d}
.instagram-handle{display:inline-flex;gap:10px;align-items:center;margin:18px 0 26px;font-weight:700}
.instagram-intro .actions{margin-top:0}
.instagram-feed{min-width:0;border:1px solid #e4dfe0;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 14px 44px #211b200a}
.instagram-feed iframe{display:block;width:100%;height:650px;border:0;background:#fff}
.instagram-fallback{padding:14px 20px!important;margin:0!important;font-size:12px!important;line-height:1.6!important;border-top:1px solid #eee8ea;color:#60595d}
.instagram-fallback a{text-decoration:underline;color:#211b20}
@media(max-width:900px){.instagram-section{padding:65px 0}.instagram-layout{grid-template-columns:1fr;gap:32px}.instagram-intro p{max-width:620px}.instagram-feed{width:100%;max-width:620px;margin-inline:auto}.instagram-feed iframe{height:650px}}
@media(max-width:600px){.instagram-section{padding:55px 0}.instagram-intro h2{font-size:42px}.instagram-intro p{font-size:18px}.instagram-feed iframe{height:520px}.instagram-intro .btn{width:100%}}

.instagram-handle svg{color:#FF006F;flex-shrink:0}

/* Every event leads directly to its registration landing page. */
.event-card{position:relative}
.event-card-title{color:inherit;text-decoration:none}
.event-card-title:after{content:'';position:absolute;inset:0;border-radius:12px}
.event-card-title:hover{text-decoration:underline;text-underline-offset:5px}
.event-card-poster,.event-card-cta{position:relative;z-index:1}
.event-card:focus-within{outline:2px solid #FF006F;outline-offset:5px}

/* Own portrait reel beside the Start to Dance story. */
.aboutgrid .videobox.about-reel{position:relative;top:auto;margin-top:0;aspect-ratio:9/16;width:100%;max-width:390px;justify-self:center;background:#211b20;border-radius:14px}
.aboutgrid .videobox.about-reel:after{display:none}
.about-reel video{display:block;width:100%;height:100%;object-fit:contain;border-radius:14px;background:#211b20}
@media(max-width:800px){.aboutgrid .videobox.about-reel{max-width:360px;aspect-ratio:9/16}}

/* Shared social calls to action in the white footer. */
footer .wrap{flex-wrap:wrap}
.footer-socials{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-left:auto}
.footer-socials .footer-social-cta{font-size:15px;min-height:52px;padding:13px 21px}
footer .footlinks{flex-basis:100%;width:100%;justify-content:flex-end;border-top:1px solid #e6e0df;padding-top:22px;margin-top:0}
@media(max-width:800px){.footer-socials{margin-left:0;margin-top:8px}.footer-socials .footer-social-cta{font-size:14px}footer .footlinks{justify-content:flex-start;margin-top:26px}}
@media(max-width:550px){.footer-socials{display:grid;grid-template-columns:1fr;width:100%;gap:14px}.footer-socials .footer-social-cta{width:100%;min-height:54px}footer .footlinks{gap:18px}}

/* Bring the reel and biography together; keep the portrait fully visible. */
.aboutgrid .videobox.about-reel{max-width:460px;box-shadow:0 24px 55px rgba(33,27,32,.2),0 7px 18px rgba(33,27,32,.12);border:1px solid rgba(33,27,32,.08);justify-self:stretch}
@media(min-width:1001px){.aboutgrid{grid-template-columns:clamp(300px,calc(56.25svh - 90px),460px) minmax(0,600px);gap:56px;justify-content:center;align-items:start}.aboutgrid .videobox.about-reel{position:sticky;top:128px;align-self:start}.aboutgrid>div:last-child{min-width:0}.about p{max-width:none}}
@media(min-width:801px) and (max-width:1000px){.aboutgrid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:32px}.aboutgrid .videobox.about-reel{max-width:100%;position:relative;top:auto}}
@media(max-width:800px){.aboutgrid{gap:32px}.aboutgrid .videobox.about-reel{max-width:360px;justify-self:center;position:relative;top:auto;box-shadow:0 18px 36px rgba(33,27,32,.18),0 5px 12px rgba(33,27,32,.1)}}
@media(min-width:1001px) and (max-height:680px){.aboutgrid .videobox.about-reel{position:relative;top:auto}}

/* Keep the Instagram heading on two balanced lines. */
.instagram-intro h2{font-size:clamp(32px,3.4vw,54px)}
.instagram-title-line{display:block;white-space:nowrap}
@media(max-width:600px){.instagram-intro h2{font-size:clamp(28px,9vw,40px)}}

/* Social platform colours and recognisable logos across all footers. */
.footer-socials .social-facebook{--social-color:#1877F2}
.footer-socials .social-instagram{--social-color:#E1306C}
.footer-socials .footer-social-cta{background:var(--social-color);border-color:var(--social-color);color:#fff}
.footer-socials .footer-social-cta:is(:hover,:focus-visible){background:#fff;border-color:var(--social-color);color:var(--social-color)}
.footer-socials .cta-label{display:inline-flex;align-items:center;gap:10px}
.footer-socials .social-logo{display:block;flex-shrink:0}

/* Give the biography room to scroll while its reel remains below the menu. */
@media(min-width:1001px){
 .aboutgrid{grid-template-columns:clamp(240px,calc(56.25svh - 90px),460px) minmax(0,600px);min-height:calc(100svh + 120px);align-items:start}
 .aboutgrid .videobox.about-reel{position:sticky;top:128px;align-self:start}
}

/* A focused contact invitation, with a slow brand-colour gradient. */
.contact-gradient{position:relative;isolation:isolate;overflow:hidden;padding:90px 0;background:#211b20;background-image:linear-gradient(115deg,#211b20 12%,#211b20 38%,#FF006F 73%,#211b20 100%);background-size:240% 240%;animation:contact-gradient-drift 18s ease-in-out infinite alternate}
.contact-gradient .contactgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.8fr);align-items:center;gap:80px}
.contact-gradient .eyebrow{color:#fff;opacity:.8;font-size:12px;letter-spacing:.17em}
.contact-gradient h2{font-size:clamp(44px,5.6vw,78px);line-height:1.04;letter-spacing:-.05em;margin:22px 0 25px}
.contact-gradient p{max-width:450px;margin:0;font-size:18px;line-height:1.65;color:#fff}
.contact-gradient .contact-options{display:flex;flex-direction:column;align-items:stretch;gap:25px;margin:0;padding:36px;border:1px solid #ffffff40;border-radius:24px;background:#211b2038;backdrop-filter:blur(14px);box-shadow:0 18px 50px #211b2026}
.contact-gradient .btn.light{background:#fff;color:#211b20;border-color:#fff;width:100%;font-size:17px;min-height:62px}
.contact-gradient .btn.light:is(:hover,:focus-visible){background:#211b20;color:#fff;border-color:#fff}
.contact-phone{display:flex;align-items:center;justify-content:center;gap:13px;color:#fff;font-size:21px;font-weight:600;white-space:nowrap}
.contact-phone-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#ffffff16;border:1px solid #ffffff40;flex-shrink:0}
.contact-phone:hover{text-decoration:underline;text-underline-offset:5px}
@keyframes contact-gradient-drift{0%{background-position:15% 30%}100%{background-position:85% 70%}}
@media(max-width:800px){.contact-gradient{padding:60px 0}.contact-gradient .contactgrid{grid-template-columns:1fr;gap:32px}.contact-gradient .contact-options{max-width:470px;padding:28px;gap:22px}.contact-gradient h2{font-size:clamp(42px,8vw,64px)}}
@media(max-width:450px){.contact-gradient .contact-options{padding:23px 18px;border-radius:20px}.contact-gradient .btn.light{font-size:16px}.contact-phone{font-size:19px}.contact-gradient p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.contact-gradient{animation:none;background-position:55% 50%}}

/* The biography follows the downward scroll within the fixed reel's height. */
@media(min-width:1001px){
 .aboutgrid .about-copy.about-copy-follow{position:sticky;top:calc(128px + var(--about-copy-offset,0px));align-self:start}
}

/* Deeper shadow to lift the portrait reel clearly from the background. */
.aboutgrid .videobox.about-reel{box-shadow:0 35px 75px rgba(33,27,32,.34),0 12px 28px rgba(33,27,32,.25),0 2px 5px rgba(33,27,32,.16)}
@media(max-width:800px){.aboutgrid .videobox.about-reel{box-shadow:0 24px 48px rgba(33,27,32,.3),0 8px 18px rgba(33,27,32,.2)}}

/* Shared depth for photos, posters and video players on every page. */
:root{--media-shadow:0 24px 50px rgba(33,27,32,.25),0 8px 20px rgba(33,27,32,.16)}
main img:not(.brand-logo),main video{box-shadow:var(--media-shadow)}
:is(.trial-pitch-photo,.story-program-photo,.story-video-media,.videobox,.event-card-poster,.poster,.instagram-feed){box-shadow:var(--media-shadow)}
:is(.trial-pitch-photo,.story-program-photo,.story-video-media,.videobox,.event-card-poster,.poster)>:is(img,video,iframe){box-shadow:none}
.story-video-section .story-video-media{box-shadow:0 26px 54px rgba(0,0,0,.48),0 8px 20px rgba(0,0,0,.3)}
.video-header{box-shadow:0 18px 40px rgba(33,27,32,.22)}
.brand-logo{filter:drop-shadow(0 3px 5px rgba(33,27,32,.16))}
@media(max-width:600px){:root{--media-shadow:0 17px 34px rgba(33,27,32,.24),0 5px 13px rgba(33,27,32,.15)}}

/* Contact-page handover photo, aligned with the introductory copy. */
.contact-photo-placeholder{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin-top:35px;border-radius:18px;background:#f0ece9;box-shadow:var(--media-shadow)}
@media(max-width:760px){.contact-photo-placeholder{margin-top:28px}}

/* Translucent sticky navigation, with the home video continuing behind it. */
.site-header{background:rgba(248,245,243,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(33,27,32,.09)}
.home-header{margin-top:-100px}
.home-header .header-content{padding-top:192px}
@media(max-width:700px){.home-header{margin-top:-80px}.home-header .header-content{padding-top:130px}}

/* One clear location card rather than separate text columns. */
.contact-page-location.location-card-section{display:block;padding-top:60px;padding-bottom:60px}
.contact-location-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:42px;padding:42px 46px;background:#fff;border:1px solid #e5dfe1;border-top:4px solid #FF006F;border-radius:22px;box-shadow:0 14px 36px rgba(33,27,32,.08)}
.contact-location-details{display:flex;align-items:flex-start;gap:24px;min-width:0}
.contact-location-card .contact-location-icon{width:68px;height:68px;background:#fff0f6;border:1px solid #ffd3e6}
.contact-location-card .contact-location-icon svg{width:28px;height:28px}
.contact-location-copy .eyebrow{font-size:11px;letter-spacing:.15em;color:#60595d}
.contact-location-copy h2{font-size:clamp(25px,2.5vw,34px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 18px}
.contact-location-copy address{font-style:normal;font-size:17px;line-height:1.7;color:#60595d;margin:0}
.contact-location-copy address strong{color:#211b20;font-weight:600}
.contact-location-action{padding-left:42px;border-left:1px solid #e5dfe1;align-self:stretch;display:flex;align-items:center}
.contact-location-action .btn{font-size:16px;min-height:58px;white-space:nowrap}
@media(max-width:850px){.contact-location-card{padding:30px;gap:28px;grid-template-columns:1fr}.contact-location-action{padding:24px 0 0;border-left:0;border-top:1px solid #e5dfe1}.contact-location-action .btn{width:100%}.contact-page-location.location-card-section{padding-block:40px}}
@media(max-width:450px){.contact-location-card{padding:26px 22px;border-radius:18px}.contact-location-details{gap:16px}.contact-location-card .contact-location-icon{width:45px;height:45px}.contact-location-card .contact-location-icon svg{width:23px;height:23px}.contact-location-copy h2{font-size:25px}.contact-location-copy address{font-size:15px}}

/* Booking: app first, with the online timetable immediately available below. */
.booking-app-section{padding:0 0 55px;scroll-margin-top:125px}
.booking-app-panel{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:60px;padding:54px;border-radius:26px;color:#fff;background:radial-gradient(ellipse at 0 100%,#FF006F55,transparent 60%),#211b20;box-shadow:0 22px 50px #211b2020}
.booking-app-badge{display:inline-block;padding:8px 14px;border:1px solid #ffffff40;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.03em;color:#fff}
.booking-app-intro h2{font-size:clamp(35px,3.7vw,52px);line-height:1.08;letter-spacing:-.045em;margin:24px 0 20px}
.booking-app-intro>p{font-size:18px;line-height:1.65;max-width:440px;color:#f3edf0}
.booking-store-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.booking-app-panel .booking-store{background:#fff;color:#211b20;border:2px solid #fff;padding:12px 18px;min-height:68px;font-size:16px;line-height:1.25;flex:1;min-width:185px;box-shadow:0 8px 20px #0003}
.booking-store .cta-label{display:inline-flex;align-items:center;gap:10px;text-align:left}
.booking-store .cta-label>svg{flex-shrink:0}
.booking-store small{display:block;font-size:10px;font-weight:500;margin-bottom:4px}
.booking-app-panel .booking-store:is(:hover,:focus-visible){background:#211b20;color:#fff;border-color:#fff}
.booking-app-intro .booking-app-name{font-size:12px;line-height:1.65;color:#e1d5dc;margin-top:17px;max-width:460px}
.booking-app-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;justify-content:center;gap:14px}
.booking-app-steps li{display:flex;gap:20px;align-items:flex-start;padding:24px;border:1px solid #ffffff26;background:#ffffff08;border-radius:16px}
.booking-step-number{font-family:Manrope,sans-serif;color:#FF006F;font-weight:800;font-size:34px;line-height:1.1;letter-spacing:-.06em;flex-shrink:0}
.booking-app-steps h3{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin:0 0 7px}
.booking-app-steps p{font-size:14px;line-height:1.65;color:#e2dce0;margin:0}
.booking-online-link{display:inline-block;font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:5px;margin-top:25px}
.booking-online-section{padding-bottom:70px;scroll-margin-top:125px}
.booking-online-heading{margin-bottom:28px}
.booking-online-heading .eyebrow{font-size:11px;color:#60595d}
.booking-online-heading h2{font-size:clamp(30px,3.5vw,44px);margin-top:13px}
.booking-roster-fallback{display:flex;flex-wrap:wrap;gap:8px 18px;padding:18px 22px;background:#eeebea;border-radius:12px;margin-top:22px;font-size:14px;line-height:1.6}
.booking-roster-fallback a{font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.booking-app-panel{grid-template-columns:1fr;gap:32px;padding:38px}.booking-app-intro>p{max-width:none}.booking-store-links{max-width:530px}.booking-app-steps{gap:12px}.booking-app-steps li{padding:20px}.booking-app-intro h2{font-size:46px}}
@media(max-width:600px){.booking-app-panel{padding:28px 22px;border-radius:20px}.booking-app-intro h2{font-size:36px}.booking-app-intro>p{font-size:17px}.booking-app-badge{font-size:11px}.booking-store-links{flex-direction:column}.booking-app-panel .booking-store{width:100%;flex:auto;min-width:0}.booking-app-steps li{gap:16px;padding:20px 17px}.booking-step-number{font-size:30px}.booking-app-steps h3{font-size:19px}.booking-online-link{font-size:14px;line-height:1.7}.booking-app-section{padding-bottom:40px}.booking-online-section{padding-bottom:45px}}

/* Stronger depth for the app recommendation panel. */
.booking-app-panel{box-shadow:0 30px 65px rgba(33,27,32,.28),0 10px 24px rgba(33,27,32,.18)}
@media(max-width:600px){.booking-app-panel{box-shadow:0 20px 38px rgba(33,27,32,.27),0 6px 16px rgba(33,27,32,.17)}}

/* Shared, readable school description beside the footer logo. */
footer .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 38px;align-items:center}
.footer-brand{display:flex;align-items:flex-start;gap:24px;min-width:0}
.footer-brand .logo{flex:0 0 80px;margin:0}
.footer-description{font-size:14px;line-height:1.75;color:#60595d;max-width:440px;margin:0;letter-spacing:0}
footer .footlinks{grid-column:1/-1;margin:0;display:flex;flex-wrap:wrap}
@media(max-width:1150px){footer .wrap{grid-template-columns:1fr}.footer-description{max-width:650px}.footer-socials{margin-left:104px;justify-content:flex-start}}
@media(max-width:700px){.footer-brand{gap:20px}.footer-brand .logo{flex-basis:64px}.footer-brand .brand-logo{width:64px;height:64px}.footer-description{font-size:13px;line-height:1.75}.footer-socials{margin-left:0;margin-top:0}footer .footlinks{justify-content:flex-start;padding-top:22px}}
@media(max-width:420px){.footer-brand{flex-direction:column;gap:18px}.footer-brand .logo{flex-basis:auto}.footer-description{font-size:14px}}

/* A small circular portrait identifies Robin alongside the biography title. */
.about-title-row{display:flex;align-items:center;gap:24px;margin-bottom:32px}
.about-title-row .about-portrait{display:block;width:104px;height:104px;flex:0 0 104px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 12px 25px rgba(33,27,32,.24),0 4px 9px rgba(33,27,32,.14)}
.about .about-title-row h2{font-size:clamp(36px,3.6vw,52px);line-height:1.08;margin:0;min-width:0}
@media(max-width:600px){.about-title-row{gap:18px;margin-bottom:26px}.about-title-row .about-portrait{width:72px;height:72px;flex-basis:72px}.about .about-title-row h2{font-size:clamp(29px,7.5vw,40px)}}

/* Shared Apple-inspired entrance rhythm: subtle, once per page visit. */
[data-motion-state]{transition:opacity 850ms cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms),translate 1100ms cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
[data-motion-state="pending"]{opacity:0;translate:0 72px}
[data-motion-state="shown"]{opacity:1;translate:0 0}
@media(max-width:700px){[data-motion-state]{--motion-delay:0ms!important;transition-duration:650ms,800ms}[data-motion-state="pending"]{translate:0 38px}}
@media(prefers-reduced-motion:reduce){[data-motion-state]{opacity:1!important;translate:none!important;transition:none!important}}
@media print{[data-motion-state]{opacity:1!important;translate:none!important;transition:none!important}}

/* Trial price and account purpose: explicit, compact and visible before the fields. */
.trial-once{font-size:14px;line-height:1.6;margin:14px 0 18px;color:#615c60}
.trial-bonus{padding:17px 20px;border-left:3px solid #FF006F;background:rgba(255,0,111,.045);border-radius:0 10px 10px 0;margin:0 0 24px}
.trial-bonus strong{font-size:15px;color:#211b20}
.trial-bonus p{font-size:14px;line-height:1.65;margin:5px 0 0;color:#615c60}
.trial-account-title{font-size:23px;line-height:1.25;margin:4px 0 10px}
.trial-account-help{font-size:14px;line-height:1.65;margin:0 0 18px;color:#615c60}
@media(max-width:700px){.trial-bonus{padding:15px 16px}.trial-once{font-size:13px}.trial-account-title{font-size:22px}}

/* Campaign intro: a real lesson beside the booking form, compact on mobile. */
.trial-lesson-preview{margin:24px 0 26px}
.trial-lesson-screen{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:16px;background:#211b20;box-shadow:var(--media-shadow)}
.trial-lesson-screen img,.trial-lesson-screen iframe,.trial-lesson-screen>div{position:absolute;inset:0;width:100%;height:100%;border:0}
.trial-lesson-screen img{object-fit:cover;box-shadow:none;transition:opacity .4s}
.trial-lesson-screen iframe{opacity:0;transition:opacity .4s;pointer-events:none}
.trial-lesson-preview[data-video-state="playing"] iframe{opacity:1}
.trial-lesson-preview[data-video-state="playing"] .trial-lesson-poster{opacity:0}
.trial-lesson-preview figcaption{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:16px}
.trial-lesson-preview figcaption>span{font-size:14px;font-weight:700}
.trial-video-actions{display:flex;gap:8px;flex-wrap:wrap}
.trial-video-actions button{border:1px solid #211b20;border-radius:99px;background:#fff;color:#211b20;font:700 12px/1.3 Manrope,sans-serif;padding:10px 14px;cursor:pointer;box-shadow:0 5px 12px #211b2018}
.trial-video-actions .trial-video-sound{background:#211b20;color:#fff}
.trial-video-actions button:hover{background:#FF006F;color:#fff;border-color:#FF006F}
.trial-video-actions button:focus-visible{outline:3px solid #FF006F;outline-offset:3px}
.trial-video-actions button:disabled{opacity:.5;cursor:wait}
.trial-video-error{font-size:13px;line-height:1.5}
@media(max-width:700px){.trial-lesson-preview{margin:18px 0 20px}.trial-lesson-screen{border-radius:12px}.trial-lesson-preview figcaption{margin-top:12px;gap:9px}.trial-lesson-preview figcaption>span{font-size:13px}.trial-video-actions button{padding:9px 12px;font-size:11px}.trial-pitch .trial-lead{font-size:16px}}

/* One player, three selectable videos: no automatic carousel rotation. */
.trial-lesson-screen{touch-action:pan-y}
.trial-carousel-arrow{position:absolute;z-index:2;top:50%;translate:0 -50%;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff90;border-radius:50%;background:#fff;color:#211b20;font:500 23px/1 Manrope,sans-serif;box-shadow:0 5px 16px #0004;cursor:pointer}
.trial-carousel-prev{left:12px}.trial-carousel-next{right:12px}
.trial-carousel-arrow:hover{color:#fff;background:#FF006F;border-color:#FF006F}
.trial-carousel-arrow:focus-visible,.trial-carousel-choices button:focus-visible{outline:3px solid #FF006F;outline-offset:3px}
.trial-carousel-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}
.trial-carousel-choices{display:flex;gap:8px}
.trial-carousel-choices button{width:44px;height:44px;border:1px solid #bfb8bd;border-radius:50%;background:transparent;color:#211b20;font:700 12px/1 Manrope,sans-serif;cursor:pointer}
.trial-carousel-choices button[aria-pressed="true"]{background:#FF006F;border-color:#FF006F;color:#fff;box-shadow:0 5px 12px #211b2025}
.trial-carousel-choices button:hover{border-color:#FF006F}
.trial-carousel-status{font-size:12px;color:#615c60}
.trial-carousel-arrow:disabled,.trial-carousel-choices button:disabled{opacity:.5;cursor:wait}
@media(max-width:700px){.trial-carousel-arrow{width:38px;height:38px;font-size:21px}.trial-carousel-prev{left:8px}.trial-carousel-next{right:8px}.trial-carousel-navigation{margin-top:12px}}

/* External reel controls travel with the pinned video. */
.aboutgrid .videobox.about-reel{aspect-ratio:auto;overflow:visible;background:transparent;border:0;box-shadow:none;border-radius:0}
.about-reel-screen{aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:#211b20;box-shadow:0 35px 75px rgba(33,27,32,.34),0 12px 28px rgba(33,27,32,.25),0 2px 5px rgba(33,27,32,.16)}
.about-reel-screen video{width:100%;height:100%;object-fit:contain;box-shadow:none}
.about-reel-actions{justify-content:flex-end;margin-top:18px;position:relative;z-index:4}
.about-reel-actions .about-reel-sound{background:#211b20;color:#fff}
@media(min-width:1001px){.aboutgrid{grid-template-columns:clamp(240px,calc(56.25svh - 124px),460px) minmax(0,600px)}}
@media(max-width:800px){.about-reel-screen{box-shadow:0 24px 48px rgba(33,27,32,.3),0 8px 18px rgba(33,27,32,.2)}.about-reel-actions{margin-top:14px}}

/* Visible, smooth grey gradient across the complete trial campaign section. */
.trial-page .trial-top{
 background-image:linear-gradient(115deg,#eeebea 12%,#eeebea 38%,#e5e0d9 73%,#eeebea 100%);
 background-size:240% 240%;background-position:15% 30%;
 animation:contact-gradient-drift 18s ease-in-out infinite alternate;
}
@keyframes trial-grey-flow{0%{background-position:0% 35%}100%{background-position:100% 65%}}
@media(prefers-reduced-motion:reduce){.trial-page .trial-top{animation:none;background-position:50% 50%}}

/* Same controls and right alignment for every standalone lesson video. */
.standalone-video-actions{justify-content:flex-end;margin-top:16px;margin-bottom:12px}
.trial-video-actions .inline-video-sound{background:#211b20;color:#fff}
.story-video-section .standalone-video-actions button{border-color:#ffffff80}
.story-video-media>div:has(iframe),.story-video-media iframe{width:100%;height:100%;border:0;display:block}
.inline-video-error{font-size:13px;line-height:1.6}
@media(max-width:700px){.standalone-video-actions{margin-top:14px}}

/* Same portrait treatment, shadow and controls as the homepage reel. */
.trial-experience .trial-own-lesson{width:min(100%,460px);justify-self:center}
.trial-own-lesson .native-inline-reel{width:100%}
.trial-own-lesson .story-video-caption h3{margin-top:20px}
@media(min-width:1001px){.trial-experience .trial-own-lesson{width:clamp(240px,calc(56.25svh - 124px),460px)}}
@media(max-width:700px){.trial-experience .trial-own-lesson{max-width:360px}}

.trial-experience .trial-experience-subtitle{font-size:22px;font-weight:700;line-height:1.4;margin:-10px 0 22px;color:#211b20}
@media(max-width:700px){.trial-experience .trial-experience-subtitle{font-size:19px;margin-top:-5px}}

/* Longer FAQ answers keep the established accordion layout readable. */
.faq-questions ol{padding-left:22px;margin:0 0 18px;color:#615c60;line-height:1.75}
.faq-questions li{padding-left:4px;margin-bottom:10px;font-size:17px}
.faq-questions details p+p{margin-top:16px}
.faq-questions a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.faq-questions a:hover{color:#FF006F}
@media(max-width:700px){.faq-questions li{font-size:16px}.faq-questions summary{padding-right:25px}}

/* Keep lesson actions readable and evenly sized on phones. */
@media(max-width:700px){
 .schedule-actions{display:flex;flex-direction:column;gap:14px}
 .schedule-actions>.btn{width:100%;min-height:64px;padding:16px 20px}
 .schedule-actions .returning-label{margin:4px 0 -4px;text-align:center}
}

@media(max-width:760px){.contact-location-copy address{padding-left:0;padding-right:0;text-align:left}}

/* A completed submission replaces the entire card, including its introduction. */
.trial-form-card.is-confirmed > [hidden],.contact-form-card.is-confirmed > [hidden]{display:none!important}
.trial-form-card.is-confirmed #trial-success,.contact-form-card.is-confirmed #contact-success{margin:0;outline:none}
.is-confirmed .trial-success-mark,.is-confirmed .contact-success-mark{margin-top:0}
.trial-form-card.is-confirmed h2,.contact-form-card.is-confirmed h2{margin:24px 0 18px;line-height:1.2}
.trial-form-card.is-confirmed p:last-child,.contact-form-card.is-confirmed p:last-child{margin-bottom:0}

/* Mobile consistency: lesson duration and menu dividers. */
@media(max-width:700px){
 .schedule .day,.crew-lesson .schedule .day{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
 .schedule .day .tag,.crew-lesson .schedule .day .tag{margin-top:0;margin-left:auto;flex-shrink:0;white-space:nowrap}
}
@media(max-width:1100px){
 .site-header .navlinks>a:not(.btn){display:block;width:100%;border-bottom:1px solid var(--line);padding-bottom:16px}
}

/* Pink navigation underline; touch and keyboard receive the same feedback. */
.site-header .navlinks>a:not(.btn){position:relative;text-decoration:none;background-image:linear-gradient(#ff006f,#ff006f);background-repeat:no-repeat;background-size:0 3px;background-position:left bottom;transition:background-size .24s ease}
.site-header .navlinks>a:not(.btn):is(:hover,:focus-visible,:active){background-size:100% 3px;text-decoration:none}
@media(min-width:1101px){.site-header .navlinks>a:not(.btn){padding-block:12px}}
@media(prefers-reduced-motion:reduce){.site-header .navlinks>a:not(.btn){transition:none}}

/* Legal service overview */
.cookie-table-wrap{overflow-x:auto;margin:24px 0;border:1px solid var(--line);border-radius:14px;background:#fff}
.cookie-table{border-collapse:collapse;width:100%;min-width:560px;font-size:15px;line-height:1.6}
.cookie-table th,.cookie-table td{text-align:left;padding:16px;vertical-align:top;border-bottom:1px solid var(--line)}
.cookie-table th{background:#f1efed;font-weight:700}.cookie-table tr:last-child td{border-bottom:0}.cookie-table a{text-decoration:underline}
.legal-prose h4{font-size:21px;margin:28px 0 10px}.legal-updated{color:#686264}

/* Multi-day event uses the same card with a wider date label. */
.event-card-date.event-card-multiday strong{font-size:clamp(18px,1.5vw,25px);letter-spacing:-.06em;white-space:nowrap}

.event-card[data-event-id="salsation-blast-amsterdam-2027"] .event-card-poster{aspect-ratio:1 / 1;position:relative;width:100%}
.event-card[data-event-id="salsation-blast-amsterdam-2027"] .event-card-poster img{position:absolute;inset:0;object-fit:cover;object-position:50% 60%;width:100%;height:100%}
@media(min-width:701px){.event-card-date{align-self:center;height:135px}}
@media(min-width:701px) and (max-width:1050px){.event-card-date{height:105px}}
