:root{--bg-dark:#17120E;--bg-card:rgba(18,16,14,0.88);--accent-warm:#A3B98F;--accent-gold:#D9B27C;--text-light:#F2E8DA;--text-muted:#B8A999;--border-glass:rgba(247,244,238,0.12);--font-serif:'Cormorant Garamond',Georgia,serif;--font-sans:'Plus Jakarta Sans',-apple-system,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body{background-color:var(--bg-dark);color:var(--text-light);font-family:var(--font-sans);padding-top:80px}
.container{max-width:1140px;margin:0 auto;padding:20px 24px 80px 24px}
.room-hero-box{width:100%;height:420px;border-radius:28px;overflow:hidden;margin-bottom:36px;border:1px solid var(--border-glass);box-shadow:0 16px 40px rgba(0,0,0,0.4)}
.room-hero-img{width:100%;height:100%;object-fit:cover}
.event-grid{display:grid;grid-template-columns:1fr 360px;gap:44px}
.class-title{font-family:var(--font-serif);font-size:3.4rem;line-height:1.1;color:var(--text-light);margin-bottom:10px}
.class-subtitle{font-size:1.05rem;color:var(--accent-gold);font-style:italic;margin-bottom:32px}
.benefits-box{background:rgba(217,178,124,0.06);border:1px solid rgba(217,178,124,0.2);border-radius:20px;padding:20px;margin-bottom:36px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-around}
.benefit-item{display:flex;align-items:center;gap:8px;font-size:0.9rem;color:var(--text-light);font-weight:500}
.host-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:28px;padding:36px;backdrop-filter:blur(24px);margin-bottom:32px;position:relative}
.host-header{display:flex;gap:28px;align-items:center;margin-bottom:22px}
.host-avatar{width:140px;height:140px;border-radius:50%;object-fit:cover;border:3px solid var(--accent-warm);flex-shrink:0;background:#222;box-shadow:0 10px 30px rgba(163,185,143,0.2)}
.host-title-area h4{font-family:var(--font-serif);font-size:1.9rem;color:var(--accent-gold);margin-bottom:6px}
.certified-badge{display:inline-block;background:rgba(163,185,143,0.2);border:1px solid var(--accent-warm);color:var(--accent-warm);font-size:0.74rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;padding:4px 12px;border-radius:100px;margin-bottom:6px}
.host-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.btn-host-action{background:rgba(255,255,255,0.06);border:1px solid var(--border-glass);color:var(--text-light);text-decoration:none;padding:10px 18px;border-radius:100px;font-size:0.84rem;font-weight:600;transition:all 0.3s;display:inline-flex;align-items:center;gap:8px}
.btn-host-action:hover{background:var(--accent-warm);color:#111;border-color:var(--accent-warm)}
.section-block{margin-bottom:36px;border-bottom:1px solid var(--border-glass);padding-bottom:28px}
.section-title{font-family:var(--font-serif);font-size:1.9rem;color:var(--accent-gold);margin-bottom:14px}
.section-subtitle-title{font-family:var(--font-serif);font-size:1.4rem;color:var(--accent-warm);margin:20px 0 6px 0}
.section-content{font-size:1rem;line-height:1.75;color:var(--text-light)}
.section-content p{margin-bottom:0.9rem}
.sidebar-card{background:var(--bg-card);border:1px solid var(--accent-warm);border-radius:32px;padding:32px 26px;position:sticky;top:120px;backdrop-filter:blur(24px);box-shadow:0 20px 50px rgba(0,0,0,0.5)}
.price-tag{font-family:var(--font-serif);font-size:2.8rem;color:var(--accent-gold);margin-bottom:2px}
.price-sub{font-size:0.84rem;color:var(--text-muted);margin-bottom:20px}
.next-session-box{background:rgba(163,185,143,0.12);border:1.5px solid var(--accent-warm);border-radius:20px;padding:16px;margin-bottom:20px}
.next-session-title{font-size:0.76rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent-gold);margin-bottom:6px}
.next-session-date{font-size:1.05rem;font-weight:700;color:var(--text-light)}
.next-session-time{font-size:0.88rem;font-weight:700;color:var(--accent-warm);margin-top:2px}
.following-sessions-title{font-size:0.82rem;font-weight:700;color:var(--text-muted);margin:24px 0 10px 0;text-transform:uppercase;letter-spacing:0.05em}
.following-list{display:flex;flex-direction:column;gap:8px}
.btn-book{width:100%;min-height:54px;padding:14px;border-radius:100px;background:var(--accent-warm);color:#11100e;font-size:1.05rem;font-weight:700;border:none;cursor:pointer;transition:all 0.3s;text-align:center;text-decoration:none;display:block;box-shadow:0 8px 24px rgba(163,185,143,0.3)}
.btn-book:hover{background:var(--accent-gold);transform:translateY(-2px)}
.location-box-left{background:rgba(255,255,255,0.03);border:1px solid var(--border-glass);border-radius:20px;padding:20px;margin-bottom:32px;font-size:0.9rem;color:var(--text-light);text-decoration:none;display:block;transition:all 0.3s}
.location-box-left:hover{border-color:var(--accent-warm);background:rgba(163,185,143,0.08)}
.dn-sl{position:relative}
.dn-track{display:flex;height:100%;transition:transform .45s cubic-bezier(.4,0,.2,1)}
.dn-slide{min-width:100%;height:100%;position:relative;background:#0d0b09;display:flex;align-items:center;justify-content:center}
.dn-slide video{width:100%;height:100%;object-fit:contain;background:#0d0b09;display:block}
.dn-cap{position:absolute;left:0;right:0;bottom:0;padding:34px 22px 14px;font-size:.82rem;letter-spacing:.04em;color:#F2E8DA;background:linear-gradient(180deg,rgba(13,11,9,0) 0%,rgba(13,11,9,.78) 70%);pointer-events:none}
.dn-nav{position:absolute;top:50%;transform:translateY(-50%);width:64px;height:64px;border-radius:50%;border:0;background:rgba(217,178,124,.94);color:#17120E;font-size:2.2rem;font-weight:700;line-height:1;cursor:pointer;z-index:6;box-shadow:0 10px 30px rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}
.dn-nav:hover{background:#F0D3A8;transform:translateY(-50%) scale(1.08)}
.dn-prev{left:18px}
.dn-next{right:18px}
.dn-dots{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:8px;z-index:4}
.dn-dot{width:11px;height:11px;border-radius:50%;background:rgba(242,232,218,.45);border:0;padding:0;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.6)}
.dn-dot.on{background:var(--accent-gold);width:30px;border-radius:99px}
@media (max-width:860px){
body{padding-top:72px}
.container{padding:14px 16px 60px 16px}
.room-hero-box{height:260px;border-radius:18px;margin-bottom:24px}
.event-grid{display:flex;flex-direction:column;gap:24px}
.sidebar-card{position:static;margin-top:14px;margin-bottom:24px;padding:22px 18px;border-radius:20px}
.class-title{font-size:1.95rem;line-height:1.2;margin-bottom:8px}
.class-subtitle{font-size:0.95rem;margin-bottom:20px}
.benefits-box{padding:14px 12px;gap:8px 12px;border-radius:16px;margin-bottom:24px}
.benefit-item{font-size:0.82rem}
.section-block{margin-bottom:26px;padding-bottom:20px}
.section-title{font-size:1.5rem;margin-bottom:10px}
.section-subtitle-title{font-size:1.18rem;margin:16px 0 4px 0}
.section-content{font-size:0.95rem;line-height:1.65}
.host-card{padding:24px 18px;border-radius:20px;margin-bottom:24px}
.host-header{gap:16px;align-items:center}
.host-avatar{width:90px;height:90px;flex-shrink:0}
.host-title-area h4{font-size:1.45rem}
.btn-host-action{font-size:0.8rem;padding:8px 14px}
.price-tag{font-size:2.2rem}
.dn-nav{width:36px;height:36px;font-size:1.2rem}
.dn-cap{font-size:.76rem;padding:28px 16px 18px}
.mobile-order-1{order:1}
.mobile-order-2{order:2}
.mobile-order-3{order:3}
.mobile-order-4{order:4}
.mobile-order-5{order:5}
.mobile-order-6{order:6}
.mobile-order-7{order:7}
.mobile-order-8{order:8}
.mobile-order-9{order:9}
}
@media (max-width:480px){
.class-title{font-size:1.65rem}
.host-header{flex-direction:column;text-align:center}
.host-buttons{justify-content:center}
}
.dn-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;cursor:pointer;z-index:5;border:0;padding:0;background:radial-gradient(circle at 50% 46%,rgba(13,11,9,.45) 0%,rgba(13,11,9,.18) 42%,rgba(13,11,9,0) 72%)}
.dn-play i{width:104px;height:104px;border-radius:50%;background:rgba(217,178,124,.96);box-shadow:0 14px 42px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}
.dn-play i:after{content:"";border-left:34px solid #17120E;border-top:21px solid transparent;border-bottom:21px solid transparent;margin-left:9px}
.dn-play span{font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:#F2E8DA;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.dn-play:hover i{transform:scale(1.08);background:#F0D3A8}
.dn-play.hide{display:none}
.dn-hint{max-width:1140px;margin:-22px auto 30px auto;font-size:.84rem;letter-spacing:.02em;color:var(--text-muted);text-align:center}
@media (max-width:860px){
.dn-nav{width:48px;height:48px;font-size:1.7rem}
.dn-prev{left:10px}
.dn-next{right:10px}
.dn-play i{width:76px;height:76px}
.dn-play i:after{border-left:25px solid #17120E;border-top:15px solid transparent;border-bottom:15px solid transparent;margin-left:7px}
.dn-play span{font-size:.7rem}
.dn-hint{margin:-16px auto 22px auto;font-size:.78rem;padding:0 8px}
}
