*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#222;background:#f4a6b5;font-family:Alumni Sans,sans-serif}a{color:inherit;text-decoration:none}ul{list-style:none}.container{width:min(1100px,100% - 2rem);margin:0 auto}.site-header{z-index:1000;background:#fff;border-bottom:1px solid #eaeaea;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:2rem;min-height:72px;display:flex}.logo{font-size:1.5rem;font-weight:700}.nav-list{align-items:center;gap:1.25rem;font-size:1.5rem;display:flex}.lang-switcher{margin-left:16px;font-weight:500}.active-lang{color:#f26a8d;border-bottom:2px solid #f26a8d;padding-bottom:2px;font-weight:700}.social-rail{z-index:1000;flex-direction:column;gap:14px;display:flex;position:fixed;top:180px;left:30px}.social-rail a{color:#222;opacity:.65;font-size:24px;transition:opacity .2s,transform .2s;display:flex}.social-rail a:hover{opacity:1;transform:scale(1.08)}.hero{padding:6rem 0}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem;font-size:1.2rem;font-weight:500}.hero h1{max-width:700px;margin-bottom:1rem;font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.1}.hero-text{letter-spacing:.08em;max-width:600px;margin-bottom:2rem;font-size:1.2rem;font-weight:500;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn{border-radius:999px;justify-content:center;align-items:center;padding:.9rem 1.4rem;font-size:1.2rem;font-weight:600;display:inline-flex}.btn-primary{color:#f26a8d;background:#222}.btn-secondary{color:#222;border:1px solid #222}.section{padding:5rem 0}.section h2{letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.section p{letter-spacing:.08em;max-width:600px;margin-bottom:2rem;font-size:1.2rem;font-weight:500;line-height:1.6}.alt{background:#f4a6b5}.site-footer{background-color:#fff;margin-top:4rem;padding:2rem 0}.about-page h1{max-width:700px;margin-bottom:1rem;font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.1}.about-page p{letter-spacing:.08em;max-width:600px;margin-bottom:2rem;font-size:1.2rem;font-weight:700;line-height:1.6}.about-row{grid-template-columns:1fr 1fr;align-items:center;gap:80px;margin-bottom:120px;display:grid}.about-row-reverse .about-text{order:2}.about-row-reverse .about-image-placeholder{order:1}.about-text p{max-width:600px}.about-image{border-radius:12px;width:100%;overflow:hidden}.about-image img{width:100%;height:auto;transition:transform .5s;display:block}.about-image:hover img{transform:scale(1.04)}.rbc-today,.rbc-day-bg.rbc-today,.rbc-date-cell.rbc-now{background-color:#f26a8d!important}.rbc-time-view .rbc-allday-cell{display:none}.rbc-time-view .rbc-time-header-content{border-left:1px solid #ddd}.rbc-time-view .rbc-row.rbc-time-header-cell{min-height:auto}.btn{color:#222;cursor:pointer;background:#f26a8d;border:1px solid #222;border-radius:6px;padding:12px 18px;font-weight:500;transition:all .2s}.btn:hover{background:#f5f5f5}.btn:active{transform:scale(.98)}.classes-header{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:60px;display:flex}.classes-header>div:first-child{max-width:650px}.classes-header h1{margin-bottom:16px;font-size:36px}.classes-header p{font-size:24px}.classes-header-booking{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.classes-header-booking h2{margin:0 0 10px}.classes-booking-label{margin:0}.classes-header-booking .classes-booking-label{margin-bottom:4px}.classes-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.class-card{background:#ffffff21;border:1px solid #3c282d2e;border-radius:18px;padding:44px 40px;transition:transform .3s,background .3s;position:relative}.class-card:hover{background:#fff3;transform:translateY(-4px)}.class-number{opacity:.55;margin-bottom:34px;font-size:16px;display:block}.class-card h2{margin-bottom:22px;font-size:36px;line-height:1}.class-meta{letter-spacing:.08em;gap:24px;margin-bottom:36px;font-size:18px;display:flex}.class-focus{margin-bottom:22px}.class-focus>span{letter-spacing:.12em;opacity:.55;margin-bottom:7px;font-size:20px;display:block}.class-focus p{margin:0;font-size:20px;line-height:1.4}.class-description{opacity:.85;font-size:20px;line-height:1.65}@media (max-width:768px){.classes-header{flex-direction:column;align-items:flex-start;gap:24px}.classes-header-booking{text-align:left}.classes-grid{grid-template-columns:1fr}.class-card{padding:28px}}.booking-selected-session{background:#fff;border:1px solid #e5e5e5;border-radius:16px;margin-top:24px;padding:24px;box-shadow:0 8px 24px #0000000f}.booking-form{flex-direction:column;gap:12px;max-width:420px;margin-top:16px;display:flex}.booking-input{background:#fff;border:1px solid #dcdcdc;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-size:16px;transition:border-color .2s,box-shadow .2s}.booking-private-option{justify-content:space-between;align-items:center;gap:20px;margin-top:8px;padding:16px 0;display:flex}.booking-private-title{margin:0 0 4px;font-size:18px;font-weight:600}.booking-private-text{color:#666;margin:0;font-size:15px;line-height:1.4}.booking-switch{cursor:pointer;flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.booking-switch input{opacity:0;width:1px;height:1px;position:absolute}.booking-switch-slider{background:#d7d7d7;border-radius:999px;transition:background .2s;position:absolute;inset:0}.booking-switch-slider:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.booking-switch input:checked+.booking-switch-slider{background:#f26a8d}.booking-switch input:checked+.booking-switch-slider:before{transform:translate(22px)}.booking-switch input:focus-visible+.booking-switch-slider{box-shadow:0 0 0 3px #f26a8d33}.booking-input:focus{border-color:#f26a8d;box-shadow:0 0 0 3px #f26a8d26}.booking-form .btn{cursor:pointer;background:#f4a6b5;border:none;border-radius:6px;width:fit-content;margin-top:8px;padding:14px 18px;font-weight:500;transition:all .2s}.booking-form .btn:hover{background:#f26a8d}.booking-form .btn:active{transform:scale(.98)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;padding:0 16px;display:grid}.gallery-item{border-radius:12px;overflow:hidden}.gallery-image{object-fit:cover;width:100%;height:100%;display:block}.gallery-item img{transition:transform .3s}.gallery-item:hover img{transform:scale(1.05)}.pricing-page{width:100%}.pricing-hero{text-align:center;padding:7rem 6% 4rem}.pricing-hero-content{max-width:760px;margin:0 auto}.pricing-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#f26a8d;margin:0 0 1rem;font-size:2rem;font-weight:600}.pricing-hero h1{color:#222;margin:0;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:600;line-height:1.05}.pricing-intro{color:#666;max-width:620px;margin:1.5rem auto 0;font-size:1.1rem;line-height:1.7}.pricing-section{padding:2rem 6% 7rem}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;width:min(1150px,100%);margin:0 auto;display:grid}.pricing-card{background:#ffffff21;border:1px solid #3c282d2e;border-radius:18px;flex-direction:column;padding:2.5rem;display:flex}.pricing-card:hover{background:#fff3;transform:translateY(-4px)}.pricing-card-header{border-bottom:1px solid #2222221f;padding-bottom:2rem}.pricing-card h2{color:#222;margin:0 0 1.25rem;font-size:2rem;font-weight:600;line-height:1.1}.pricing-main-price{flex-wrap:wrap;align-items:baseline;gap:.45rem;display:flex}.pricing-price{color:#f26a8d;font-size:3.2rem;font-weight:600;line-height:1}.pricing-unit{color:#666;font-size:1rem}.pricing-description{color:#555;margin:2rem 0;font-size:1rem;line-height:1.7}.pricing-packages{border-top:1px solid #2222221f;margin-top:auto}.pricing-package{border-bottom:1px solid #2222221f;justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem 0;display:flex}.pricing-package h3{color:#222;margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.pricing-package p{color:#777;margin:0;font-size:.9rem;line-height:1.5}.pricing-package strong{text-align:right;color:#222;flex-shrink:0;font-size:1.15rem;font-weight:600}.pricing-cta{text-align:center;max-width:700px;margin:7rem auto 0}.pricing-cta>p{letter-spacing:.16em;color:#f26a8d;margin:0 0 .75rem;font-size:2rem;font-weight:600}.pricing-cta h2{color:#222;margin:0 0 2rem;font-size:clamp(2rem,4vw,3.2rem);font-weight:600;line-height:1.1}.contact-details{grid-template-columns:1fr 1fr;gap:80px;margin-top:64px;display:grid}.contact-block h3{margin-bottom:20px}.contact-block p{line-height:1.8}.contact-block a{color:#222;text-decoration:none}@media (max-width:768px){.nav{flex-direction:column;justify-content:center;padding:1rem 0;position:relative}.nav-list{flex-wrap:wrap;justify-content:center}.social-rail{z-index:1001;flex-direction:column;gap:12px;position:fixed;top:10%;left:16px;transform:translateY(-50%)}.about-row{grid-template-columns:1fr;gap:24px;margin-bottom:72px}.about-row .about-text,.about-row-reverse .about-text{order:1}.about-row .about-image,.about-row-reverse .about-image{order:2}.btn{max-width:100%;padding:7px 9px;font-size:.85rem}.gallery-grid{grid-template-columns:1fr;gap:16px;padding:0}.contact-details{grid-template-columns:1fr;gap:40px}.pricing-hero{padding:5rem 5% 3rem}.pricing-section{padding:1rem 5% 5rem}.pricing-grid{grid-template-columns:1fr}.pricing-card{padding:2rem}.pricing-cta{margin-top:5rem}}@media (max-width:520px){.pricing-hero{padding-top:4rem}.pricing-card{border-radius:18px;padding:1.5rem}.pricing-price{font-size:2.7rem}.pricing-package{align-items:flex-start;gap:1rem}.pricing-package strong{font-size:1rem}}
