:root{--timetable-radius:18px}main.page-content{color:var(--text-primary)}.hero-story{width:100%;height:clamp(360px,62svh,700px);position:relative;overflow:hidden}.hero-story-parallax{z-index:1;backface-visibility:hidden;will-change:transform;width:100%;height:105%;transform:translate3d(0, var(--parallax-offset,0px), 0);position:absolute;top:-2.5%;left:0}.hero-story-parallax img{object-fit:cover;object-position:center calc(18% + 48px);will-change:transform;transform-origin:50%;width:100%;height:100%;transform:translate(0,0)scale(1)}.timetable-intro{max-width:900px;margin:5rem auto 4rem;padding:0 5%}.timetable-header-block .label{text-transform:uppercase;letter-spacing:.2em;color:var(--primary-solid);margin-bottom:1rem;font-size:.85rem;display:block}.timetable-header-block h1.premium-title{margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:3.5rem;line-height:1.1}.subtitle-intro{color:var(--text-secondary);max-width:600px;margin:0 auto;font-size:1.1rem;font-weight:500}.timetable-container{max-width:1100px;margin:0 auto;padding:0 5% 8rem}.schedule-table{border:1px solid var(--border-color);background-color:var(--bg-dark-secondary);border-radius:var(--timetable-radius);width:100%;margin-bottom:6rem;overflow:hidden}.schedule-header{background-color:color-mix(in srgb, var(--primary-solid) 5%, transparent);text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid var(--border-color);color:var(--primary-solid);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,2fr) minmax(0,2fr) auto;gap:1.5rem;padding:1.5rem 2rem;font-size:.8rem;font-weight:700;display:grid}.schedule-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,2fr) minmax(0,2fr) auto;align-items:center;gap:1.5rem;padding:2rem;transition:background-color .3s,transform .3s;display:grid}.schedule-row:last-child{border-bottom:none}.schedule-row:hover{background-color:color-mix(in srgb, var(--primary-solid) 3%, transparent)}.schedule-header>div,.schedule-row>div{min-width:0}.schedule-row .day{font-family:Playfair Display,serif;font-size:1.3rem;font-weight:600}.schedule-row .time{color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:500;line-height:1.4}.schedule-row .style-col{overflow-wrap:anywhere;font-size:1.1rem;font-weight:500;line-height:1.3}.schedule-row .style-sub{color:var(--text-secondary);opacity:1;font-family:Playfair Display,serif;font-size:.85rem;font-style:italic}.schedule-row .instructor{color:var(--text-secondary);overflow-wrap:anywhere;font-size:1rem}.schedule-row .book-col{text-align:right}.mobile-session-list{display:none}.day-short-label,.day-full-label{display:block}.day-full-label,.mobile-day-meta{display:none}.btn-outline{border:1px solid var(--primary-solid);color:var(--primary-solid);text-transform:uppercase;letter-spacing:.1em;border-radius:50px;padding:.75rem 1.5rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-outline:hover{background-color:var(--primary-solid);color:#fff;box-shadow:0 4px 15px color-mix(in srgb, var(--primary-solid) 30%, transparent);transform:translateY(-2px)}.studio-images-grid{grid-template-columns:1fr 1fr;gap:3rem;margin-top:4rem;display:grid}.service-card{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);--mouse-x:50%;--mouse-y:50%;background:#ffffff0a;border-radius:12px;transition:transform .4s,box-shadow .4s;position:relative;overflow:hidden}.service-card:before{content:"";border-radius:inherit;background:radial-gradient(600px circle at var(--mouse-x) var(--mouse-y), color-mix(in srgb, var(--primary-solid) 40%, transparent), transparent 40%);-webkit-mask-composite:xor;opacity:0;pointer-events:none;z-index:10;padding:2px;transition:opacity .5s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001a}.service-card:hover:before{opacity:1}.studio-card img{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .6s;display:block}.studio-card:hover img{transform:scale(1.03)}.fade-up{opacity:0;transition:opacity .8s cubic-bezier(.25,.46,.45,.94),transform .8s cubic-bezier(.25,.46,.45,.94);transform:translateY(30px)}.timetable-intro.fade-up,.schedule-table.fade-up{opacity:1;transform:none}.fade-up.in-view{opacity:1;transform:translateY(0)}.section-divider-container{justify-content:center;align-items:center;padding:1.5rem 0;display:flex}.minimal-divider{background:linear-gradient(to right, transparent, var(--primary-solid), transparent);opacity:.5;width:60px;height:1px}.bottom-interactive-area{background-color:var(--bg-dark-primary);background-image:radial-gradient(circle at 50% 10%, color-mix(in srgb, var(--primary-solid) 5%, transparent) 0%, transparent 70%), radial-gradient(circle at 10% 90%, color-mix(in srgb, var(--primary-solid) 3%, transparent) 0%, transparent 50%);padding:0 0 2rem;position:relative}.interactive-content-wrapper{z-index:3;max-width:1100px;margin:0 auto;position:relative}.membership-preview{padding-bottom:8rem}.membership-card{background:var(--bg-dark-secondary);border:1px solid var(--border-color);border-radius:20px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden;box-shadow:0 10px 30px #00000008}.membership-info{padding:4rem}.membership-info h2{margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:2.5rem}.section-label{text-align:center;letter-spacing:.3em;text-transform:uppercase;color:var(--primary-solid);margin-bottom:1rem;font-size:.8rem;display:block}.section-title{text-align:center;margin-bottom:4rem;font-family:Playfair Display,serif;font-size:2.8rem}.membership-features{margin:2rem 0;padding:0;list-style:none}.membership-features li{align-items:center;gap:.8rem;margin-bottom:1rem;font-size:1rem;display:flex}.membership-features li:before{content:"✓";color:var(--primary-solid);font-weight:900}.membership-info .btn-outline:hover{background-color:var(--primary-solid);color:#fff;border-color:var(--primary-solid)}.membership-visual{background:color-mix(in srgb, var(--primary-solid) 10%, transparent);justify-content:center;align-items:center;padding:2.5rem;display:flex;position:relative;overflow:hidden}.membership-visual img{object-fit:cover;border-radius:20px;width:100%;height:100%;box-shadow:0 15px 35px #0000001a}.faq-section{text-align:center;max-width:850px;margin:2rem auto 4rem;padding:0 2rem}.faq-container{text-align:left;margin-top:5rem}.faq-item{border-bottom:1px solid var(--border-color);padding:1.5rem 0}.faq-question{text-align:left;cursor:pointer;width:100%;color:var(--text-color);letter-spacing:.02em;background:0 0;border:none;border-radius:4px;justify-content:space-between;align-items:center;gap:3rem;padding:1.8rem 0;font-family:Playfair Display,serif;font-size:1.4rem;font-weight:600;transition:all .3s;display:flex}.faq-question:hover{color:var(--primary-solid);background-color:color-mix(in srgb, var(--primary-solid) 3%, transparent);padding-left:.5rem}.faq-answer{max-height:0;color:color-mix(in srgb, var(--text-color) 92%, #fff 8%);opacity:0;font-size:1.1rem;font-weight:500;line-height:1.8;transition:all .5s cubic-bezier(.4,0,.2,1);overflow:hidden}.faq-item.active .faq-answer{border-left:2px solid color-mix(in srgb, var(--primary-solid) 55%, transparent);background:color-mix(in srgb, var(--primary-solid) 8%, transparent);opacity:1;max-height:500px;margin-top:1rem;padding:.85rem 1rem 1.35rem}.faq-toggle{flex-shrink:0;font-size:1.5rem;transition:transform .3s}.faq-item.active .faq-toggle{transform:rotate(45deg)}@media (width<=1024px){.hero-story{height:clamp(320px,54svh,560px)}.hero-story-parallax{height:103.5%;top:-1.75%}.hero-story-parallax img{object-position:center calc(18% + 66px);transform:translate(0,0)scale(1)}.schedule-header,.schedule-row{grid-template-columns:minmax(0,.95fr) minmax(0,1fr) minmax(0,1.8fr) auto}.schedule-header div:nth-child(4),.schedule-row .instructor{display:none}.timetable-header-block h1.premium-title{font-size:2.5rem}.membership-card{grid-template-columns:1fr}.membership-info{padding:2.5rem}}@media (width<=768px){.hero-story{height:clamp(280px,46svh,430px)}.hero-story-parallax img{object-position:center 18%;transform:translate(0,0)scale(1)}.timetable-intro{margin:calc(1.5rem + 10px) auto calc(1.25rem + 10px);padding:0 5%}.timetable-header-block h1.premium-title{margin-bottom:.9rem;font-size:2rem}.subtitle-intro{font-size:.98rem}.timetable-container{padding:0 5% calc(2rem + 10px)}.schedule-header{display:none}.schedule-table{background:0 0;border:none;border-radius:0;margin-bottom:calc(2rem + 10px);overflow:visible}.schedule-row{text-align:left;border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-dark-elevated) 92%, transparent), color-mix(in srgb, var(--bg-dark-secondary) 96%, transparent));border-radius:16px;grid-template-columns:minmax(144px,auto) 1fr;grid-template-areas:"day sessions""book book";align-items:start;gap:.7rem .95rem;margin-bottom:.8rem;padding:1rem;box-shadow:0 14px 30px #0000002e}.schedule-row:last-child{margin-bottom:0}.schedule-row .day{border:1px solid color-mix(in srgb, var(--primary-solid) 44%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--primary-solid) 20%, transparent), color-mix(in srgb, var(--primary-solid) 10%, transparent));color:var(--text-primary);border-radius:12px;flex-direction:column;grid-area:day;justify-content:center;align-self:stretch;gap:.36rem;padding:.75rem .8rem;font-size:1.18rem;font-weight:700;line-height:1.05;display:flex}.mobile-day-meta{color:color-mix(in srgb, var(--text-primary) 84%, var(--primary-hover));letter-spacing:.01em;font-size:.78rem;font-weight:600;line-height:1.35;display:block}.day-short-label{display:none}.day-full-label{display:block}.schedule-row .time,.schedule-row .style-col{display:none}.mobile-session-list{grid-area:sessions;align-self:stretch;gap:.5rem;display:grid}.mobile-session-item{background:color-mix(in srgb, var(--bg-dark-card) 96%, transparent);border:1px solid color-mix(in srgb, var(--primary-solid) 28%, #ffffff29);border-radius:10px;grid-template-columns:minmax(64px,auto) 1fr;align-items:center;gap:.65rem;padding:.48rem .58rem;display:grid}.mobile-session-time{color:var(--primary-hover);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800;line-height:1}.mobile-session-style{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1.3}.schedule-row .book-col{text-align:right;grid-area:book;margin-top:.25rem}.schedule-row .book-col .btn-outline{text-align:center;letter-spacing:.08em;background-color:var(--primary-solid);width:auto;min-width:112px;color:var(--text-dark);border-color:color-mix(in srgb, var(--primary-hover) 72%, var(--primary-solid));justify-content:center;align-items:center;padding:.58rem 1rem;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 3px 10px #00000047}.studio-images-grid{grid-template-columns:1fr;gap:2rem}.bottom-interactive-area{padding:0 0 1rem}.membership-preview{padding-bottom:calc(2.25rem + 10px)}.membership-info{padding:calc(1.5rem + 10px) calc(1.25rem + 10px)}.membership-info h2{margin-bottom:calc(1rem + 10px);font-size:2rem}.membership-features{margin:calc(1.25rem + 10px) 0}.membership-visual{padding:calc(1.25rem + 10px)}.section-divider-container{padding:calc(.75rem + 10px) 0}.faq-section{margin:calc(1rem + 10px) auto calc(2rem + 10px);padding:0 calc(1rem + 10px)}.section-title{margin-bottom:calc(1.5rem + 10px);font-size:2rem}.faq-container{margin-top:calc(1.5rem + 10px)}.faq-item{padding:calc(.5rem + 10px) 0}.faq-question{gap:calc(1rem + 10px);padding:calc(1rem + 10px) 0;font-size:1.1rem}.faq-answer{font-size:.98rem;line-height:1.6}}@media (width<=480px){.hero-story{height:clamp(240px,42svh,360px)}.hero-story-parallax img{object-position:center calc(18% + 60px);transform:translate(0,0)scale(1)}.timetable-intro{margin:calc(1rem + 10px) auto calc(.85rem + 10px)}.timetable-header-block h1.premium-title{margin-bottom:.75rem;font-size:1.85rem}.timetable-container{padding:0 4.5% calc(1.5rem + 10px)}.schedule-table{margin-bottom:calc(1.25rem + 10px)}.schedule-row{grid-template-columns:minmax(126px,auto) 1fr;gap:.55rem .7rem;padding:.9rem .8rem}.schedule-row .day{min-width:0;padding:.68rem .7rem;font-size:1.08rem}.mobile-day-meta{font-size:.7rem}.mobile-session-item{grid-template-columns:minmax(58px,auto) 1fr;gap:.5rem;padding:.38rem .42rem}.mobile-session-time{font-size:.92rem}.mobile-session-style{font-size:.88rem}.schedule-row .book-col .btn-outline{min-width:104px;padding:.54rem .92rem;font-size:.8rem}.membership-preview{padding-bottom:calc(1.5rem + 10px)}.membership-info{padding:calc(1.2rem + 10px) calc(1rem + 10px)}.membership-info h2{font-size:1.7rem}.membership-visual{padding:calc(.9rem + 10px)}.faq-section{margin:calc(.75rem + 10px) auto calc(1.5rem + 10px);padding:0 calc(.65rem + 10px)}.section-title{margin-bottom:calc(1rem + 10px);font-size:1.65rem}.faq-container{margin-top:calc(1rem + 10px)}.faq-question{padding:calc(.85rem + 10px) 0;font-size:1rem}.faq-item.active .faq-answer{padding:calc(.7rem + 10px) calc(.8rem + 10px) calc(1rem + 10px)}}
