@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap";.hero{background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;max-width:480px;min-height:100vh;margin:0 auto;position:relative}.hero-overlay{background:#0003;align-items:flex-end;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.hero-content-bottom{text-align:center;color:#fff;background:#0009;width:100%;padding:30px 20px}.hero h1{letter-spacing:.03em;text-transform:uppercase;margin-bottom:8px;font-size:1.8rem;font-weight:300;line-height:1.2}.hero-subtitle{opacity:.9;margin-bottom:20px;font-size:1rem;font-weight:300}.hero-button{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;color:#fff;background:0 0;border:1px solid #fff;width:100%;max-width:240px;margin:0 auto;padding:12px 24px;font-size:.85rem;transition:all .3s;display:inline-block}.hero-button:hover{color:#000;background:#fff}@media (width<=380px){.hero-content-bottom{padding:24px 16px}.hero h1{font-size:1.5rem}.hero-subtitle{margin-bottom:16px;font-size:.9rem}.hero-button{max-width:200px;padding:10px 20px;font-size:.8rem}}.hero-scroll-link{text-transform:lowercase;opacity:.9;text-shadow:1px 1px 2px #0000004d;cursor:pointer;margin-top:24px;font-size:1rem;font-weight:300;transition:opacity .3s}.hero-scroll-link:hover{opacity:.7}.booking-button{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background-color:#0000;border:none;width:100%;max-width:280px;margin:0 auto;padding:14px 32px;font-size:1rem;font-weight:400;transition:all .3s;display:inline-block}.booking-button.booking-button--primary{background-color:var(--accent-color);border:1px solid var(--accent-color);color:#fff}.booking-button.booking-button--primary:hover{color:var(--accent-color);background-color:#0000}.booking-button.booking-button--primary-inverted{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.booking-button.booking-button--primary-inverted:hover{background-color:var(--accent-color);color:#fff}.booking-button.booking-button--secondary{color:var(--accent-color);background-color:#fff;border:1px solid #fff}.booking-button.booking-button--secondary:hover{color:#fff;background-color:#0000}.booking-button.booking-button--secondary-inverted{color:#fff;background-color:#0000;border:1px solid #fff}.booking-button.booking-button--secondary-inverted:hover{color:var(--accent-color);background-color:#fff}.booking-button.booking-button--outline{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.booking-button.booking-button--outline:hover{background-color:var(--accent-color);color:#fff}.booking-button.booking-button--outline-inverted{background-color:var(--accent-color);border:1px solid var(--accent-color);color:#fff}.booking-button.booking-button--outline-inverted:hover{color:var(--accent-color);background-color:#0000}.booking-button.booking-button--ghost{color:#fff;background-color:#ffffff1a;border:1px solid #ffffff4d}.booking-button.booking-button--ghost:hover{background-color:#fff3;border-color:#fff}.booking-button.booking-button--ghost-inverted{color:var(--text-color);background-color:#0000001a;border:1px solid #0003}.booking-button.booking-button--ghost-inverted:hover{border-color:var(--accent-color);background-color:#0003}@media (width<=768px){.booking-button{max-width:240px;padding:12px 24px;font-size:.9rem}}.carousel-section{max-width:480px;margin:0 auto;padding:48px 24px}.carousel-section h2{letter-spacing:.05em;text-align:center;text-transform:lowercase;margin-bottom:32px;font-size:2rem;font-weight:300;position:relative}.carousel-section h2:after{content:"";background-color:var(--accent-color);width:60px;height:2px;margin:12px auto 0;display:block}.carousel-container{width:100%;margin:0 auto}.carousel-main{aspect-ratio:4/5;cursor:grab;background-color:#f5f5f5;border-radius:8px;width:100%;margin-bottom:16px;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.carousel-main:active{cursor:grabbing}.carousel-image-wrapper{background-color:#f5f5f5;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.carousel-image{object-fit:contain;background-color:#f5f5f5;width:auto;max-width:100%;height:auto;max-height:100%}.carousel-button{cursor:pointer;z-index:10;width:40px;height:40px;color:var(--accent-color);background:#fffc;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 6px #0000001a}.carousel-button:hover{background:#fff;transform:translateY(-50%)scale(1.1)}.carousel-button.prev{left:16px}.carousel-button.next{right:16px}.carousel-thumbnails{scrollbar-width:thin;scrollbar-color:var(--accent-color) var(--border-color);gap:8px;padding:8px 0;display:flex;overflow-x:auto}.carousel-thumbnails::-webkit-scrollbar{height:4px}.carousel-thumbnails::-webkit-scrollbar-track{background:var(--border-color);border-radius:4px}.carousel-thumbnails::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:4px}.carousel-thumbnail{aspect-ratio:1;cursor:pointer;opacity:.6;background-color:#f5f5f5;border:2px solid #0000;border-radius:6px;flex:0 0 70px;transition:all .3s;overflow:hidden}.carousel-thumbnail.active{opacity:1;border-color:var(--accent-color);transform:scale(1.05)}.carousel-thumbnail:hover{opacity:.9}.carousel-thumbnail-image{object-fit:cover;width:100%;height:100%}@media (width<=768px){.carousel-section{padding:48px 0}.carousel-main:after{content:"← свайп →";color:#fff;pointer-events:none;opacity:.5;z-index:5;background:#0009;border-radius:20px;padding:4px 12px;font-size:.7rem;transition:opacity .3s;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.carousel-main:hover:after{opacity:0}.carousel-thumbnail{flex:0 0 60px}.carousel-main{border-radius:0}}@media (width<=380px){.carousel-section{padding:40px 0}.carousel-thumbnail{flex:0 0 50px}}.carousel-main{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.carousel-image{pointer-events:none}.social-button{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background-color:#0000;border:none;width:100%;max-width:280px;margin:0 auto;padding:14px 32px;font-size:1rem;font-weight:400;transition:all .3s;display:inline-block}.social-button.social-button--primary{background-color:var(--accent-color);border:1px solid var(--accent-color);color:#fff}.social-button.social-button--primary:hover{color:var(--accent-color);background-color:#0000}.social-button.social-button--primary-inverted{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.social-button.social-button--primary-inverted:hover{background-color:var(--accent-color);color:#fff}.social-button.social-button--secondary{color:var(--accent-color);background-color:#fff;border:1px solid #fff}.social-button.social-button--secondary:hover{color:#fff;background-color:#0000}.social-button.social-button--secondary-inverted{color:#fff;background-color:#0000;border:1px solid #fff}.social-button.social-button--secondary-inverted:hover{color:var(--accent-color);background-color:#fff}.social-button.social-button--outline{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.social-button.social-button--outline:hover{background-color:var(--accent-color);color:#fff}.social-button.social-button--outline-inverted{background-color:var(--accent-color);border:1px solid var(--accent-color);color:#fff}.social-button.social-button--outline-inverted:hover{color:var(--accent-color);background-color:#0000}@media (width<=768px){.social-button{max-width:240px;padding:12px 24px;font-size:.9rem}}.services{background-color:var(--light-gray);max-width:480px;margin:0 auto;padding:48px 24px}.services h2{letter-spacing:.05em;text-align:center;text-transform:uppercase;margin-bottom:32px;font-size:2rem;font-weight:300;position:relative}.services h2:after{content:"";background-color:var(--accent-color);width:60px;height:2px;margin:12px auto 0;display:block}.services-grid{flex-direction:column;gap:0;margin-bottom:32px;display:flex}.service-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.service-item:last-of-type{border-bottom:none}.service-name{max-width:70%;padding-right:12px;font-size:1rem;font-weight:400;line-height:1.4}.service-price{color:var(--accent-color);white-space:nowrap;margin-left:12px;font-size:1.1rem;font-weight:500}.discount-item .service-name{color:#2e7d32}.discount-price{position:relative;color:#2e7d32!important}.discount-price:before{content:"▼";color:#2e7d32;margin-right:4px;font-size:.8rem}.individual-price{opacity:.8;font-style:italic;font-weight:300}.early-booking-section{border-left:3px solid var(--accent-color);background-color:#8b6b6b0d;border-radius:8px;margin:32px 0;padding:20px}.early-booking-title{text-transform:uppercase;letter-spacing:.05em;color:var(--accent-color);margin-bottom:16px;font-size:.95rem;font-weight:500}.early-booking-grid{flex-direction:column;gap:12px;display:flex}.early-booking-item{border-bottom:1px dotted var(--border-color);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.early-booking-item:last-child{border-bottom:none}.early-time{color:#555;font-size:.95rem;font-weight:300}.early-price{color:var(--accent-color);font-size:1rem;font-weight:500}.location-booking{text-align:center;margin-top:24px}.location-text{margin-bottom:24px}.location-text p{color:#888;letter-spacing:.02em;font-size:1rem;font-weight:300;line-height:1.5}.location-text p:first-child{margin-bottom:4px}@media (width<=380px){.services{padding:40px 20px}.service-name{max-width:65%;padding-right:8px;font-size:.95rem}.service-price{font-size:1rem}.early-booking-section{padding:16px}.early-time{font-size:.9rem}.early-price,.location-text p{font-size:.95rem}}.portfolio-booking{text-align:center;margin-top:16px;padding:24px 0 0}.course-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;margin-bottom:32px;transition:transform .3s,box-shadow .3s;overflow:hidden}.course-card:hover{transform:translateY(-4px);box-shadow:0 20px 30px -10px #0000001a}.course-image-wrapper{aspect-ratio:16/9;background-color:var(--light-gray);width:100%;overflow:hidden}.course-image{object-fit:cover;width:100%;height:100%;transition:transform .6s}.course-card:hover .course-image{transform:scale(1.05)}.course-header{padding:24px 24px 16px}.course-title{color:var(--text-color);margin-bottom:8px;font-size:1.8rem;font-weight:300}.course-subtitle{color:var(--accent-color);margin-bottom:16px;font-size:1.1rem;font-weight:300;line-height:1.5}.course-meta{color:#666;gap:24px;font-size:.95rem;display:flex}.course-meta span{align-items:center;gap:6px;display:flex}.course-content{padding:0 24px}.content-block{margin-bottom:24px}.content-block h4{color:var(--accent-color);margin-bottom:12px;font-size:1.1rem;font-weight:500;display:inline-block;position:relative}.content-block h4:after{content:"";background-color:var(--accent-color);opacity:.3;width:30px;height:2px;position:absolute;bottom:-4px;left:0}.content-block ul{padding:0;list-style:none}.content-block li{color:#444;margin-bottom:10px;padding-left:20px;font-size:.95rem;line-height:1.5;position:relative}.content-block li:before{content:"•";color:var(--accent-color);font-weight:700;position:absolute;left:0}.course-footer{background-color:var(--light-gray);border-top:1px solid var(--border-color);text-align:center;padding:24px}.price-tag{color:var(--text-color);margin-bottom:4px;font-size:2rem;font-weight:300}.price-note{color:#888;margin-bottom:20px;font-size:.85rem;font-style:italic}.course-booking-button{border:1px solid var(--accent-color);color:var(--accent-color);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background-color:#0000;border-radius:4px;width:100%;max-width:280px;margin:0 auto;padding:14px 32px;font-size:1rem;font-weight:400;transition:all .3s;display:inline-block}.course-booking-button:hover{background-color:var(--accent-color);color:#fff}@media (width<=380px){.course-header{padding:20px 20px 12px}.course-title{font-size:1.5rem}.course-subtitle{font-size:1rem}.course-meta{flex-direction:column;gap:8px}.course-content{padding:0 20px}.course-footer{padding:20px}.price-tag{font-size:1.8rem}.course-booking-button{padding:12px 24px;font-size:.9rem}}.course-description{margin-top:16px}.course-paragraph{color:#444;margin-bottom:16px;padding:0;font-size:.95rem;line-height:1.6}.course-paragraph:last-child{margin-bottom:0}@media (width<=380px){.course-paragraph{font-size:.9rem;line-height:1.5}}.courses{background-color:#fff;max-width:480px;margin:0 auto;padding:48px 24px}.courses h2{letter-spacing:.05em;text-align:center;text-transform:lowercase;margin-bottom:32px;font-size:2rem;font-weight:300;position:relative}.courses h2:after{content:"";background-color:var(--accent-color);width:60px;height:2px;margin:12px auto 0;display:block}.courses-container{flex-direction:column;gap:24px;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.course-card{animation:.5s forwards fadeInUp}@media (width<=380px){.courses{padding:40px 20px}}.contact-section{text-align:center;background-color:var(--light-gray);max-width:480px;margin:0 auto;padding:48px 24px}.contact-section h2{letter-spacing:.05em;text-align:center;text-transform:lowercase;margin-bottom:32px;font-size:2rem;font-weight:300;position:relative}.contact-section h2:after{content:"";background-color:var(--accent-color);width:60px;height:2px;margin:12px auto 0;display:block}.contact-section-content{margin-top:24px}@media (width<=768px){.contact-section{padding:40px 20px}.contact-section h2{margin-bottom:24px;font-size:1.8rem}}.contact-section-buttons{flex-direction:column;align-items:center;gap:16px;margin-top:24px;display:flex}.footer{background-color:var(--light-gray);border-top:1px solid var(--border-color);max-width:480px;margin:0 auto;padding:24px}.footer-content{text-align:center}.footer-note{color:#999;margin:0;font-size:.7rem;line-height:1.4}@media (width<=768px){.footer{padding:20px 16px}.footer-note{font-size:.65rem}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-color:#fff;--text-color:#1a1a1a;--accent-color:#8b6b6b;--light-gray:#f5f5f5;--border-color:#eaeaea;--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--container-padding:16px;--font-size-base:16px}body{font-family:var(--font-main);color:var(--text-color);background-color:var(--bg-color);line-height:1.5;font-size:var(--font-size-base)}section{width:100%;max-width:480px;margin:0 auto;padding:48px 16px}h2{letter-spacing:-.02em;text-align:center;margin-bottom:32px;font-size:2rem;font-weight:300;position:relative}h2:after{content:"";background-color:var(--accent-color);width:60px;height:2px;margin:12px auto 0;display:block}@media (width>=769px){body{background-color:#f0f0f0;justify-content:center;display:flex}#root{background-color:#fff;width:100%;max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}section{max-width:480px}}
