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