:root{--gold: #C9A84C;--gold-light: #E8C97A;--gold-dim: #8B6914;--black: #080808;--dark: #0E0E0E;--surface: #141414;--surface2: #1A1A1A;--surface3: #222222;--border: rgba(201,168,76,0.18);--text: #F0EDE6;--text-muted: #8A8580;--red: #E05252;--green: #4CAF7A;--radius: 16px;--radius-sm: 10px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"Space Grotesk",sans-serif;background:var(--black);color:var(--text);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--dark)}::-webkit-scrollbar-thumb{background:var(--gold-dim);border-radius:3px}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px 40px;background:rgba(8,8,8,.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:padding .3s}.nav-logo{font-family:"Playfair Display",serif;font-size:1.35rem;font-weight:700;color:var(--gold);letter-spacing:2px;cursor:pointer}.nav-logo span{color:var(--text);font-weight:400}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{color:var(--text-muted);text-decoration:none;font-size:.85rem;letter-spacing:1px;text-transform:uppercase;transition:color .25s}.nav-links a:hover{color:var(--gold)}.nav-admin-btn{background:rgba(0,0,0,0);border:1px solid var(--border);color:var(--gold);padding:8px 18px;border-radius:8px;font-size:.8rem;letter-spacing:1px;cursor:pointer;text-transform:uppercase;transition:all .25s;font-family:"Space Grotesk",sans-serif}.nav-admin-btn:hover{background:var(--gold);color:var(--black)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}.hamburger span{display:block;width:24px;height:2px;background:var(--gold);border-radius:2px;transition:all .3s}#hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:120px 24px 60px}.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 40%, rgba(201, 168, 76, 0.07) 0%, transparent 70%),radial-gradient(ellipse 40% 40% at 80% 80%, rgba(201, 168, 76, 0.04) 0%, transparent 60%)}.hero-grid-lines{position:absolute;inset:0;opacity:.03;background-image:linear-gradient(var(--gold) 1px, transparent 1px),linear-gradient(90deg, var(--gold) 1px, transparent 1px);background-size:60px 60px}.hero-tag{font-size:.72rem;letter-spacing:4px;text-transform:uppercase;color:var(--gold);border:1px solid var(--border);padding:6px 18px;border-radius:20px;margin-bottom:28px;animation:fadeUp .8s ease both}.hero-title{font-family:"Playfair Display",serif;font-size:clamp(2.8rem,7vw,5.5rem);font-weight:900;line-height:1.05;text-align:center;animation:fadeUp .8s .15s ease both}.hero-title .accent{color:var(--gold)}.hero-sub{color:var(--text-muted);font-size:1.05rem;max-width:480px;text-align:center;line-height:1.7;margin-top:20px;animation:fadeUp .8s .3s ease both}.hero-cta{margin-top:40px;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;animation:fadeUp .8s .45s ease both}.btn-gold{background:linear-gradient(135deg, var(--gold), var(--gold-light));color:var(--black);border:none;padding:14px 32px;border-radius:10px;font-family:"Space Grotesk",sans-serif;font-size:.9rem;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .25s;display:inline-flex;align-items:center;gap:8px}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,168,76,.35)}.btn-outline{background:rgba(0,0,0,0);color:var(--gold);border:1px solid var(--border);padding:14px 32px;border-radius:10px;font-family:"Space Grotesk",sans-serif;font-size:.9rem;font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .25s}.btn-outline:hover{background:rgba(201,168,76,.08);border-color:var(--gold)}.hero-scroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-muted);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;animation:fadeIn 1s 1s ease both}.scroll-line{width:1px;height:40px;background:linear-gradient(var(--gold), transparent);animation:scrollPulse 2s infinite}#djs{padding:60px 40px 40px}.section-header{text-align:center;margin-bottom:48px}.section-tag{font-size:.72rem;letter-spacing:4px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:14px}.section-title{font-family:"Playfair Display",serif;font-size:clamp(2rem,4vw,3rem);font-weight:700}.search-bar{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-bottom:28px}.search-input{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:12px 20px;border-radius:10px;font-family:"Space Grotesk",sans-serif;font-size:.9rem;width:280px;transition:border-color .25s;outline:none}.search-input:focus{border-color:var(--gold)}.search-input::placeholder{color:var(--text-muted)}.filter-pills{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:48px}.pill{padding:7px 18px;border-radius:20px;border:1px solid var(--border);background:rgba(0,0,0,0);color:var(--text-muted);font-family:"Space Grotesk",sans-serif;font-size:.8rem;cursor:pointer;transition:all .2s}.pill:hover,.pill.active{background:rgba(201,168,76,.12);border-color:var(--gold);color:var(--gold)}.dj-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:24px;max-width:1200px;margin:0 auto}.dj-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;animation:fadeUp .5s ease both}.dj-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(201, 168, 76, 0.06) 0%, transparent 60%);opacity:0;transition:opacity .3s}.dj-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 40px rgba(201,168,76,.1);border-color:rgba(201,168,76,.4)}.dj-card:hover::before{opacity:1}.dj-photo{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:4rem;color:var(--gold-dim);position:relative;overflow:hidden}.dj-photo-img{width:100%;height:100%;object-fit:cover}.dj-photo-placeholder{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg, var(--surface2), var(--surface3));display:flex;align-items:center;justify-content:center;font-size:5rem;color:var(--gold-dim);position:relative}.dj-photo-placeholder::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(8, 8, 8, 0.6) 0%, transparent 50%)}.dj-styles-overlay{position:absolute;bottom:0;left:0;right:0;padding:12px 16px;display:flex;gap:6px;flex-wrap:wrap;z-index:2}.style-badge{background:rgba(0,0,0,.7);backdrop-filter:blur(8px);border:1px solid rgba(201,168,76,.3);color:var(--gold-light);font-size:.65rem;padding:3px 10px;border-radius:12px;letter-spacing:.5px}.dj-info{padding:20px}.dj-name{font-family:"Playfair Display",serif;font-size:1.4rem;font-weight:700;margin-bottom:8px}.dj-desc{color:var(--text-muted);font-size:.85rem;line-height:1.65;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dj-card-footer{display:flex;align-items:center;justify-content:space-between}.dj-rating{display:flex;align-items:center;gap:6px;color:var(--gold);font-size:.85rem}.dj-rating-num{color:var(--text-muted);font-size:.8rem}.btn-card{background:rgba(201,168,76,.1);border:1px solid var(--border);color:var(--gold);padding:9px 18px;border-radius:8px;font-family:"Space Grotesk",sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-card:hover{background:var(--gold);color:var(--black)}.modal-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .3s}.modal-overlay.open{opacity:1;pointer-events:all}.modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;max-width:780px;width:100%;max-height:90vh;overflow-y:auto;transform:translateY(30px) scale(0.97);transition:transform .3s;position:relative}.modal-overlay.open .modal{transform:translateY(0) scale(1)}.modal-close{position:absolute;top:16px;right:16px;z-index:10;background:hsla(0,0%,100%,.08);border:1px solid var(--border);color:var(--text);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;transition:all .2s}.modal-close:hover{background:var(--gold);color:var(--black);border-color:var(--gold)}.modal-photo{width:100%;aspect-ratio:16/7;object-fit:cover;background:linear-gradient(135deg, var(--surface2), var(--surface3));display:flex;align-items:center;justify-content:center;font-size:7rem;color:var(--gold-dim);border-radius:20px 20px 0 0;position:relative;overflow:hidden}.modal-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, var(--surface) 0%, transparent 50%)}.modal-body{padding:28px 32px 32px}.modal-name{font-family:"Playfair Display",serif;font-size:2.2rem;font-weight:900;margin-bottom:6px}.modal-styles{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.modal-style-tag{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);color:var(--gold);font-size:.78rem;padding:5px 14px;border-radius:20px}.modal-desc{color:var(--text-muted);line-height:1.8;font-size:.95rem;margin-bottom:24px}.modal-exp{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:18px 22px;margin-bottom:24px}.modal-exp-title{font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--gold);margin-bottom:10px}.modal-exp-items{display:flex;flex-direction:column;gap:8px}.exp-item{display:flex;align-items:center;gap:10px;font-size:.88rem;color:var(--text-muted)}.exp-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0}.reviews-section{margin-bottom:24px}.reviews-title{font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--gold);margin-bottom:16px}.reviews-grid{display:flex;flex-direction:column;gap:12px}.review-card{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:14px 18px}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.review-author{font-weight:600;font-size:.88rem}.review-stars{color:var(--gold);font-size:.9rem}.review-text{color:var(--text-muted);font-size:.85rem;line-height:1.6}.cal-modal{max-width:700px}.cal-header{padding:28px 32px 0}.cal-title{font-family:"Playfair Display",serif;font-size:1.6rem;font-weight:700;margin-bottom:4px}.cal-subtitle{color:var(--text-muted);font-size:.88rem;margin-bottom:24px}.cal-body{padding:0 32px 32px}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.cal-month{font-family:"Playfair Display",serif;font-size:1.25rem;font-weight:700}.cal-nav-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .2s}.cal-nav-btn:hover{border-color:var(--gold);color:var(--gold)}.cal-weekdays{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center;font-size:.72rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:10px}.cal-days{display:grid;grid-template-columns:repeat(7, 1fr);gap:4px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:.88rem;cursor:pointer;transition:all .2s;position:relative;font-weight:500;border:1px solid rgba(0,0,0,0)}.cal-day.past{color:var(--text-muted);opacity:.35;cursor:not-allowed}.cal-day.taken{background:rgba(224,82,82,.12);color:var(--red);border-color:rgba(224,82,82,.2);cursor:not-allowed}.cal-day.partial{background:rgba(160,80,220,.12);color:#c07aff;border-color:rgba(160,80,220,.3);cursor:pointer}.cal-day.partial:hover{background:rgba(160,80,220,.2);border-color:rgba(160,80,220,.5)}.cal-day.available{color:var(--green)}.cal-day.available:hover{background:rgba(76,175,122,.12);border-color:rgba(76,175,122,.3)}.cal-day.selected{background:rgba(201,168,76,.18);border-color:var(--gold);color:var(--gold);font-weight:700}.cal-day.empty{cursor:default}.time-slot.slot-taken{opacity:.38;cursor:not-allowed;color:var(--red);border-color:rgba(224,82,82,.2);background:rgba(224,82,82,.06)}.time-slot.slot-taken:hover{background:rgba(224,82,82,.06);border-color:rgba(224,82,82,.2);color:var(--red)}.cal-legend{display:flex;gap:20px;margin:16px 0;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-muted)}.legend-dot{width:10px;height:10px;border-radius:3px}.booking-section{padding:0 32px 32px}.booking-divider{height:1px;background:var(--border);margin:24px 0}.time-slots{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.time-slot{background:var(--surface2);border:1px solid var(--border);color:var(--text-muted);padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.88rem;transition:all .2s;font-family:"Space Grotesk",sans-serif}.time-slot:hover,.time-slot.selected{background:rgba(201,168,76,.12);border-color:var(--gold);color:var(--gold)}.price-box{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:20px 24px;margin-bottom:24px}.price-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.price-label{color:var(--text-muted);font-size:.88rem}.price-value{font-weight:600}.price-total{font-family:"Playfair Display",serif;font-size:1.8rem;color:var(--gold);font-weight:700}.price-divider{height:1px;background:var(--border);margin:14px 0}.extras{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.extra-item{display:flex;align-items:center;gap:12px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:14px 18px;cursor:pointer;transition:border-color .2s}.extra-item:hover{border-color:rgba(201,168,76,.3)}.extra-item.checked{border-color:var(--gold);background:rgba(201,168,76,.06)}.extra-checkbox{width:18px;height:18px;border-radius:4px;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.extra-item.checked .extra-checkbox{background:var(--gold);border-color:var(--gold)}.extra-checkbox-inner{width:10px;height:10px;background:var(--black);border-radius:2px;display:none}.extra-item.checked .extra-checkbox-inner{display:block}.extra-label{flex:1;font-size:.9rem}.extra-price{color:var(--gold);font-size:.88rem;font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1/-1}.form-label{font-size:.78rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted)}.form-input,.form-select,.form-textarea{background:var(--surface2);border:1px solid var(--border);color:var(--text);padding:12px 16px;border-radius:10px;font-family:"Space Grotesk",sans-serif;font-size:.9rem;outline:none;transition:border-color .25s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--gold)}.form-select option{background:var(--surface2)}.form-textarea{resize:vertical;min-height:100px}.btn-submit{width:100%;padding:16px;background:linear-gradient(135deg, var(--gold), var(--gold-light));border:none;border-radius:12px;font-family:"Space Grotesk",sans-serif;font-size:1rem;font-weight:700;color:var(--black);cursor:pointer;transition:all .25s;letter-spacing:.5px;margin-top:8px}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,168,76,.4)}.success-screen{text-align:center;padding:60px 32px}.success-icon{width:70px;height:70px;border-radius:50%;background:rgba(76,175,122,.15);border:2px solid var(--green);display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 24px;color:var(--green)}.success-title{font-family:"Playfair Display",serif;font-size:1.8rem;font-weight:700;margin-bottom:12px}.success-text{color:var(--text-muted);line-height:1.7;max-width:400px;margin:0 auto 28px}#gallery{padding:80px 40px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:14px;max-width:1200px;margin:0 auto}.gallery-item{aspect-ratio:1;border-radius:12px;background:linear-gradient(135deg, var(--surface2), var(--surface3));display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--gold-dim);overflow:hidden;cursor:pointer;border:1px solid var(--border);transition:transform .3s,box-shadow .3s;position:relative}.gallery-item:hover{transform:scale(1.03);box-shadow:0 12px 40px rgba(0,0,0,.5)}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(201, 168, 76, 0.15), transparent);opacity:0;transition:opacity .3s}.gallery-item:hover::after{opacity:1}#contact{padding:80px 40px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:1000px;margin:0 auto}.contact-info{display:flex;flex-direction:column;gap:24px}.contact-item{display:flex;align-items:flex-start;gap:14px}.contact-icon{width:44px;height:44px;border-radius:10px;background:rgba(201,168,76,.1);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.contact-item-text h4{font-size:.9rem;font-weight:600;margin-bottom:4px}.contact-item-text p{color:var(--text-muted);font-size:.85rem;line-height:1.5}.map-placeholder{background:var(--surface);border:1px solid var(--border);border-radius:16px;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;font-size:.9rem;color:var(--text-muted);gap:10px;overflow:hidden;position:relative}.map-placeholder::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center, rgba(201, 168, 76, 0.06) 0%, transparent 70%)}.social-links{display:flex;gap:12px;margin-top:8px}.social-link{width:42px;height:42px;border-radius:10px;background:var(--surface2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-muted);text-decoration:none;font-size:1rem;transition:all .2s}.social-link:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}.admin-overlay{position:fixed;inset:0;z-index:300;background:var(--black);display:none}.admin-overlay.open{display:flex}.admin-sidebar{width:240px;background:var(--surface);border-right:1px solid var(--border);padding:28px 20px;display:flex;flex-direction:column;gap:8px}.admin-logo{font-family:"Playfair Display",serif;font-size:1.1rem;color:var(--gold);margin-bottom:24px;padding:0 10px}.admin-logo small{display:block;color:var(--text-muted);font-size:.7rem;font-family:"Space Grotesk",sans-serif;margin-top:2px}.admin-nav-item{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;color:var(--text-muted);cursor:pointer;font-size:.88rem;transition:all .2s}.admin-nav-item:hover,.admin-nav-item.active{background:rgba(201,168,76,.1);color:var(--gold)}.admin-main{flex:1;padding:32px 40px;overflow-y:auto}.admin-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.admin-topbar h1{font-family:"Playfair Display",serif;font-size:1.6rem;font-weight:700}.admin-section{display:none}.admin-section.active{display:block}.admin-cards{display:grid;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));gap:16px;margin-bottom:28px}.admin-stat{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px 24px}.admin-stat-num{font-family:"Playfair Display",serif;font-size:2rem;color:var(--gold);font-weight:700}.admin-stat-label{color:var(--text-muted);font-size:.82rem;margin-top:4px}.admin-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;padding:14px 18px;font-size:.72rem;text-transform:uppercase;letter-spacing:1px;color:var(--gold);border-bottom:1px solid var(--border);background:rgba(201,168,76,.04)}.admin-table td{padding:14px 18px;font-size:.88rem;color:var(--text-muted);border-bottom:1px solid hsla(0,0%,100%,.04)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:hsla(0,0%,100%,.02)}.status-badge{padding:3px 10px;border-radius:20px;font-size:.75rem;display:inline-block}.status-new{background:rgba(201,168,76,.15);color:var(--gold)}.status-confirmed{background:rgba(76,175,122,.15);color:var(--green)}.status-cancelled{background:rgba(224,82,82,.15);color:var(--red)}.admin-dj-list{display:flex;flex-direction:column;gap:12px}.admin-dj-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px 22px;display:flex;align-items:center;gap:16px}.admin-dj-avatar{width:48px;height:48px;border-radius:10px;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--gold-dim);flex-shrink:0}.admin-dj-info{flex:1}.admin-dj-name{font-weight:600;font-size:.95rem;margin-bottom:3px}.admin-dj-styles{color:var(--text-muted);font-size:.8rem}.admin-dj-actions{display:flex;gap:8px}.admin-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text-muted);padding:7px 14px;border-radius:8px;font-size:.8rem;cursor:pointer;transition:all .2s;font-family:"Space Grotesk",sans-serif}.admin-btn:hover{border-color:var(--gold);color:var(--gold)}.admin-btn.danger:hover{border-color:var(--red);color:var(--red)}.admin-form{display:flex;flex-direction:column;gap:14px;max-width:500px}.admin-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));gap:14px;margin-bottom:24px}.admin-gallery-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.admin-gallery-emoji{width:100%;aspect-ratio:1;border-radius:10px;background:linear-gradient(135deg, var(--surface2), var(--surface3));display:flex;align-items:center;justify-content:center;font-size:2.2rem;cursor:pointer}.admin-gallery-actions{display:flex;gap:6px}.admin-add-card{background:var(--surface);border:1px dashed var(--border);border-radius:14px;padding:20px 22px;margin-bottom:24px;display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.admin-add-card .form-group{flex:1;min-width:140px;margin:0}.admin-extra-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:14px;margin-bottom:10px}.admin-extra-row .extra-row-label{flex:1;font-size:.9rem}.admin-extra-row input[type=text]{max-width:220px}.admin-extra-row input[type=number]{width:90px}.admin-section-subtitle{font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--gold);margin:28px 0 14px}.admin-section-subtitle:first-child{margin-top:0}.admin-login{display:flex;align-items:center;justify-content:center;min-height:100vh;flex-direction:column;gap:24px;padding:40px;width:100%}.admin-login-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:40px;width:100%;max-width:400px}.admin-login-title{font-family:"Playfair Display",serif;font-size:1.8rem;font-weight:700;margin-bottom:6px;text-align:center}.admin-login-sub{color:var(--text-muted);font-size:.88rem;text-align:center;margin-bottom:28px}.admin-day-popup-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .25s}.admin-day-popup-overlay.open{opacity:1;pointer-events:all}.admin-day-popup{background:var(--surface);border:1px solid var(--border);border-radius:18px;width:100%;max-width:520px;transform:translateY(20px) scale(0.97);transition:transform .25s;position:relative;overflow:hidden}.admin-day-popup-overlay.open .admin-day-popup{transform:translateY(0) scale(1)}.adp-head{padding:22px 24px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.adp-title{font-family:"Playfair Display",serif;font-size:1.2rem;font-weight:700}.adp-dj{color:var(--gold);font-size:.82rem;margin-top:3px}.adp-close{background:hsla(0,0%,100%,.07);border:1px solid var(--border);color:var(--text);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .2s;flex-shrink:0}.adp-close:hover{background:var(--gold);color:var(--black);border-color:var(--gold)}.adp-actions{padding:18px 24px;display:flex;gap:10px;flex-wrap:wrap}.adp-btn{flex:1;min-width:130px;padding:12px 16px;border-radius:10px;font-family:"Space Grotesk",sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid var(--border);transition:all .2s;text-align:center;display:flex;align-items:center;justify-content:center;gap:7px}.adp-btn-red{background:rgba(224,82,82,.1);color:var(--red);border-color:rgba(224,82,82,.25)}.adp-btn-red:hover{background:rgba(224,82,82,.2);border-color:var(--red)}.adp-btn-green{background:rgba(76,175,122,.1);color:var(--green);border-color:rgba(76,175,122,.25)}.adp-btn-green:hover{background:rgba(76,175,122,.2);border-color:var(--green)}.adp-btn-gold{background:rgba(201,168,76,.1);color:var(--gold);border-color:var(--border)}.adp-btn-gold:hover{background:rgba(201,168,76,.18);border-color:var(--gold)}.adp-btn-purple{background:rgba(160,80,220,.1);color:#c07aff;border-color:rgba(160,80,220,.25)}.adp-btn-purple:hover{background:rgba(160,80,220,.2);border-color:#c07aff}.adp-section{padding:0 24px 22px;display:none}.adp-section.open{display:block}.adp-section-title{font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--gold);margin-bottom:14px;padding-top:4px}.adp-slot-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(72px, 1fr));gap:8px}.adp-slot{padding:9px 6px;border-radius:8px;text-align:center;font-size:.82rem;font-weight:600;cursor:pointer;border:1px solid var(--border);transition:all .2s;font-family:"Space Grotesk",sans-serif}.adp-slot.free{background:rgba(76,175,122,.08);color:var(--green);border-color:rgba(76,175,122,.2)}.adp-slot.free:hover{background:rgba(224,82,82,.12);color:var(--red);border-color:rgba(224,82,82,.3)}.adp-slot.booked{background:rgba(224,82,82,.1);color:var(--red);border-color:rgba(224,82,82,.25)}.adp-slot.booked:hover{background:rgba(76,175,122,.12);color:var(--green);border-color:rgba(76,175,122,.3)}.adp-booked-list{display:flex;flex-direction:column;gap:8px}.adp-booked-item{background:var(--surface2);border:1px solid rgba(224,82,82,.2);border-radius:10px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between}.adp-booked-time{color:var(--red);font-weight:700;font-size:.9rem}.adp-booked-note{color:var(--text-muted);font-size:.78rem}.adp-empty{color:var(--text-muted);font-size:.88rem;text-align:center;padding:16px 0}footer{border-top:1px solid var(--border);padding:40px;text-align:center;color:var(--text-muted);font-size:.82rem}footer .footer-logo{font-family:"Playfair Display",serif;font-size:1.4rem;color:var(--gold);margin-bottom:12px}@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes scrollPulse{0%,100%{opacity:1}50%{opacity:.3}}@keyframes glow{0%,100%{box-shadow:0 0 20px rgba(201,168,76,.15)}50%{box-shadow:0 0 40px rgba(201,168,76,.3)}}@media(max-width: 768px){nav{padding:16px 20px}.nav-links{display:none}.hamburger{display:flex}#djs{padding:60px 20px 40px}.dj-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.admin-sidebar{width:200px}.admin-main{padding:20px}#gallery{padding:60px 20px}#contact{padding:60px 20px}.modal-body{padding:20px}.cal-body,.booking-section{padding:0 20px 24px}.cal-header{padding:24px 20px 0}}@media(max-width: 480px){.admin-overlay{flex-direction:column}.admin-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);flex-direction:row;overflow-x:auto;padding:14px}.admin-logo{display:none}}
