.london-heading{max-width:780px;margin:12px 0 28px}.london-heading h1{font:clamp(36px,4vw,58px)/1.05 var(--heading-font);margin:10px 0 16px}.london-heading p{max-width:680px}.london-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:24px;background:#f5eef6;border:1px solid #e5d9ed;border-radius:18px;margin-bottom:22px}.london-filters label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;flex:1 1 150px}.london-filters input:not([type=checkbox]),.london-filters select{box-sizing:border-box;width:100%;min-height:44px;background:white;border:1px solid #cbbcd0;border-radius:7px;padding:10px;color:#342239;font:inherit}.london-more{flex-basis:100%;order:5}.london-more summary,.visitor-guide summary{cursor:pointer;min-height:32px}.london-filter-extra{display:flex;flex-wrap:wrap;gap:16px;padding-top:15px}.london-filter-extra .check{flex-direction:row;align-items:center;font-weight:400}.london-explainer{max-width:850px;font-size:13px;color:#64536b}.london-results{display:grid;gap:14px}.london-result{display:grid;grid-template-columns:135px minmax(0,1fr) auto;gap:22px;border:1px solid #e5d9ed;border-radius:14px;background:#fff;padding:24px}.london-result h2{font:28px/1.15 var(--heading-font);margin:6px 0 12px}.london-result h2 a{color:inherit}.london-result p{margin:8px 0}.london-result .eyebrow{font-size:10px}.london-result>.btn{align-self:start}.london-date{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#4a2e55}.course-caution{font-weight:600;font-size:13px}.joining-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:18px}.joining-facts dt{font-size:12px;font-weight:700;color:#6d5475;margin-bottom:6px}.joining-facts dd{margin:0;font-size:14px}.shortlist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:15px;margin:20px 0}.shortlist-item{padding:18px;border:1px solid #e5d9ed;border-radius:10px}.shortlist-item h3{margin:8px 0;font-size:21px}.shortlist-item p{font-size:13px}.visitor-guide{border:1px solid #e5d9ed;border-radius:12px;padding:20px;margin-bottom:24px}.visitor-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.practice-sample{max-width:800px;margin:20px auto}.practice-sample h1{font:40px/1.1 var(--heading-font)}.practice-sample li{margin:18px 0;line-height:1.65}.task-nav{display:flex;gap:20px;padding:12px 28px;border-bottom:1px solid #e5d9ed;overflow:auto;white-space:nowrap;background:#faf7fb}.task-nav a{font-size:13px;font-weight:600;color:#4a2e55}.home-finder{margin:4px 0 30px;padding:22px 26px;border:1px solid #e5d9ed;border-radius:16px;background:#f5eef6;display:flex;flex-wrap:wrap;align-items:center;gap:14px}.home-finder h2{font:30px/1.1 var(--heading-font);margin:0 auto 0 0}.home-finder a{font-size:.875rem}.home-finder .btn{white-space:normal;text-align:center;min-height:44px}.london-map{height:430px;border-radius:12px;margin:20px 0;z-index:0}.venue-save{margin-top:12px}@media(max-width:700px){.london-result{grid-template-columns:1fr auto;gap:12px;padding:18px}.london-date{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.london-result h2{font-size:26px}.london-result>.btn{font-size:12px;padding:10px}.london-filters{padding:16px;gap:12px}.joining-facts dl,.visitor-grid{grid-template-columns:1fr}.task-nav{padding:12px 18px;gap:18px}.home-finder{padding:18px}.home-finder h2{flex-basis:100%}.home-finder .btn{width:100%}.practice-sample h1{font-size:34px}}
.task-nav{scrollbar-width:none}.task-nav::-webkit-scrollbar{display:none}@media(max-width:700px){.london-filters>label{flex-basis:calc(50% - 8px);min-width:0}.london-filters input:not([type=checkbox]),.london-filters select{min-width:0}.london-filters .btn{min-height:44px}.london-filter-extra label{min-width:0}}

/* Home: one welcome, then choosing and browsing, then the community story. */
.home-mobile-title{display:none}
.home-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-areas:"welcome photo" "paths paths" "listings listings" "people people" "learning learning" "belonging belonging";column-gap:2.25rem}
.home-layout>*{min-width:0}.home-welcome{grid-area:welcome;padding:1rem 0 1.5rem;align-self:center}.home-welcome h1{font-size:clamp(2.7rem,4.6vw,4.5rem);line-height:1.02;margin:1rem 0}.home-welcome .intro-lead{font-size:1.125rem;margin:0 0 1.25rem;max-width:40ch}.home-clarity{max-width:53ch}.home-clarity p{margin:.35rem 0 1.25rem;font-size:1rem;line-height:1.6}.home-welcome .home-finder{margin:0;padding:1.15rem 0 0;border:0;border-top:1px solid #e5d9ed;border-radius:0;background:transparent;display:block}.home-welcome .home-finder h2{font:1.85rem/1.15 var(--heading-font);margin:0 0 1rem}.home-primary-actions{display:flex;flex-wrap:wrap;gap:.65rem}.home-welcome .home-finder .btn{font-size:.875rem;min-height:46px;white-space:normal;text-align:center}.home-guide{display:inline-block;margin:.8rem 0 0;padding:.3rem 0;line-height:1.5}.home-layout>.intro-picture{grid-area:photo;margin:0;min-height:450px;max-height:none;border-radius:90px 12px 12px 12px}.home-layout>.choose-path{grid-area:paths;margin:1.4rem 0 2rem;gap:1rem}.home-layout .path-card{display:flex;align-items:center;padding:1.2rem;gap:1rem}.home-layout .path-symbol{display:grid;margin:0;width:40px;height:40px}.home-layout .path-card h2{font-size:1.75rem}.home-layout .path-card p{font-size:1rem;line-height:1.5}.home-layout .path-card>.icon{display:none}.home-layout>.home-listings{grid-area:listings;margin:0 0 2.5rem}.home-layout>.meet-barrio-home{grid-area:people;background:#e5d9ed80;margin-bottom:2rem}.home-layout>.learning-home{grid-area:learning}.home-layout>.belonging-panel{grid-area:belonging}.home-tools{display:flex;gap:.8rem 1.5rem;flex-wrap:wrap;margin-top:1.2rem;padding-top:1rem;border-top:1px solid #e5d9ed}.home-tools a{min-height:36px;display:inline-flex;align-items:center}
@media(max-width:900px){.home-layout{grid-template-columns:1fr;grid-template-areas:"welcome" "paths" "listings" "photo" "people" "learning" "belonging"}.home-welcome{padding:0}.home-welcome h1{font-size:clamp(2.6rem,6vw,3.7rem)}.home-layout>.intro-picture{height:300px;min-height:300px;margin:0 0 1.5rem;border-radius:60px 12px 12px 12px}.home-layout>.choose-path{margin:1.4rem 0 2rem}.home-layout .path-card{padding:1rem}.home-layout .path-card h2{font-size:1.5rem}.home-layout .path-card p{font-size:.95rem}}
@media(max-width:600px){.home-shell .current-day-bar{font-size:.8rem;padding:9px 19px}.home-shell .page{padding-top:1.2rem}.home-welcome h1{font-size:clamp(2.5rem,10.8vw,3.2rem);letter-spacing:-.035em}.home-welcome .intro-lead{font-size:1.05rem;margin-bottom:1rem}.home-clarity p{font-size:1rem;margin-bottom:1rem}.home-welcome .home-finder{padding-top:1rem}.home-welcome .home-finder h2{font-size:1.7rem;margin-bottom:.75rem}.home-primary-actions{display:grid;grid-template-columns:1fr}.home-layout>.choose-path{gap:.65rem;margin:1.25rem 0 1.75rem}.home-layout .path-card{padding:.9rem 1rem}.home-layout .path-card h2{margin-bottom:.2rem}.home-layout .path-card p{font-size:.95rem}.home-layout>.home-listings>.section-title .eyebrow{display:none}.home-layout>.intro-picture{height:260px;min-height:260px}.home-guide{font-size:.9rem}.home-layout .section-title h2{font-size:2rem}}

/* Keep the mobile opening focused on finding a dance, with one visible h1. */
@media(max-width:900px){
 .home-welcome>.eyebrow,.home-welcome>.intro-lead,.home-welcome>.home-clarity,.home-welcome .home-desktop-title,.home-welcome .home-finder h2{display:none}
 .home-welcome .home-mobile-title{display:block}
 .home-layout .home-welcome>h1{font:500 1.7rem/1.2 var(--heading-font);letter-spacing:-.02em;margin:0 0 1rem}
 .home-welcome .home-finder{padding:0;border-top:0}
 .home-welcome .home-guide{min-height:44px;display:inline-flex;align-items:center}
}

.home-show-booking{margin:1.35rem 0 0;padding:1.2rem;border:1px solid var(--line);border-radius:12px;background:#fff}.home-show-booking h2{font:400 1.8rem/1.15 var(--heading-font);margin:.55rem 0}.home-show-booking p{font-size:1rem;line-height:1.55;margin:0 0 1rem}.home-show-booking .eyebrow{font-size:.67rem;letter-spacing:1px}.home-show-booking .chips{gap:.75rem;align-items:center;flex-wrap:wrap}.home-show-booking .btn{min-height:48px;max-width:100%;white-space:normal;text-align:center}
