@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Montserrat:wght@300;400;500;600;700&display=swap");:root{--color-primary:#4a3b30;--color-secondary:#d9c8b0;--color-accent:#e6b8b8;--color-background:#f5f0e6;--color-text:#4a3b30;--color-heading:#4a3b30;--color-trim:#dbcbb8;--color-white:#ffffff;--color-dark:#2a1f16;--font-heading:"Cormorant Garamond",Georgia,serif;--font-body:"Montserrat","Helvetica Neue",sans-serif;--max-width:1200px;--header-height:160px}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);line-height:1.2;font-weight:400}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:1rem}h3{font-size:clamp(1.4rem,2.5vw,2rem)}p{margin-bottom:1rem;font-size:.95rem;font-weight:300;letter-spacing:.02em}a{color:var(--color-primary);text-decoration:none;transition:color .3s ease}a:hover{color:var(--color-accent)}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}.section{padding:6rem 0}.section--alt{background-color:var(--color-white)}.section--dark{background-color:var(--color-primary)}.section--dark,.section--dark h2,.section--dark h3{color:var(--color-white)}.section-header{text-align:center;max-width:700px;margin:0 auto 3rem}.section-header p{color:#7a6b5d;font-size:1rem}.btn{display:inline-block;padding:14px 40px;font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;border:none;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn--primary{background-color:var(--color-primary);color:var(--color-white)}.btn--primary:hover{background-color:var(--color-dark);color:var(--color-white)}.btn--outline{background:transparent;border:1px solid var(--color-white);color:var(--color-white)}.btn--outline:hover{background-color:var(--color-white);color:var(--color-primary)}.btn--accent{background-color:var(--color-accent);color:var(--color-primary)}.btn--accent:hover{background-color:#d9a3a3;color:var(--color-primary)}.divider{width:60px;height:1px;background-color:var(--color-trim);margin:1.5rem auto}.page-hero{position:relative;height:50vh;min-height:400px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding-top:var(--header-height);padding-bottom:15px}.page-hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(42,31,22,.85),rgba(74,59,48,.75));z-index:1}.page-hero__bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%}.page-hero__content{position:relative;z-index:2;color:var(--color-white);max-width:700px;padding:0 2rem}.page-hero__content h1{color:var(--color-white);margin-bottom:1rem}.page-hero__content p{font-size:1.1rem;opacity:.9;font-weight:300}.grid{display:grid;grid-gap:3rem;gap:3rem}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.grid--2,.grid--3{grid-template-columns:1fr}.section{padding:4rem 0}}.feature-card{padding:2.5rem;background:var(--color-white);border:1px solid var(--color-trim);transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(74,59,48,.08)}.feature-card h3{margin-bottom:1rem;font-size:1.4rem}.feature-card p{color:#7a6b5d;font-size:.9rem}.testimonial-card{padding:2.5rem;background:var(--color-white);border:1px solid var(--color-trim);position:relative}.testimonial-card:before{content:"\201C";font-family:var(--font-heading);font-size:5rem;color:var(--color-accent);position:absolute;top:10px;left:20px;line-height:1;opacity:.4}.testimonial-card p{font-style:italic;font-size:.95rem;color:#5a4d42;position:relative;z-index:1}.testimonial-card .author{margin-top:1.5rem;font-style:normal;font-weight:600;font-size:.85rem;color:var(--color-primary);letter-spacing:.05em}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.area-link{display:block;padding:.75rem 1.25rem;background:var(--color-white);border:1px solid rgba(0,0,0,.12);border-radius:4px;color:var(--color-primary);text-decoration:none;font-weight:500;transition:all .2s ease}.area-link:hover{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.real-weddings__card-image{display:block;overflow:hidden}.real-weddings__card-image img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .5s ease}.real-weddings__card-image:hover img{transform:scale(1.03)}.hero{position:relative;height:100vh;min-height:600px;overflow:hidden}.hero__swiper,.hero__swiper .swiper-slide{height:100%}.hero__slide{position:relative;height:100%;display:flex;align-items:center;justify-content:center}.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,31,22,.4),rgba(42,31,22,.6) 50%,rgba(42,31,22,.8))}.hero__content{position:relative;z-index:2;text-align:center;color:var(--color-white);max-width:800px;padding:0 2rem}.hero__watermark{max-height:80px;width:auto;margin:0 auto 2rem;opacity:.6;filter:brightness(1.2)}.hero__content h1{color:var(--color-white);font-weight:300;margin-bottom:1rem;text-shadow:0 2px 20px rgba(0,0,0,.3)}.hero__content p{font-size:1.1rem;font-weight:300;opacity:.9;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-body);margin-bottom:2.5rem}.hero__buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.installation__grid{align-items:center;gap:4rem}.installation__image{overflow:hidden;border-radius:8px;box-shadow:0 12px 32px rgba(74,59,48,.18)}.installation__image img{width:100%;height:600px;object-fit:cover;transition:transform .8s ease;display:block}.installation__image:hover img{transform:scale(1.03)}.installation__text h2{margin-bottom:0}.installation__text p{color:#5a4d42}.installation__text .btn{margin-top:1.5rem}.stats{position:relative;background:var(--color-dark);padding:5rem 0;overflow:hidden}.stats__overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(42,31,22,.95),rgba(74,59,48,.9))}.stats__inner{position:relative;z-index:1}.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:2rem;gap:2rem;text-align:center}.stats__number{font-family:var(--font-heading);font-size:clamp(3rem,6vw,4.5rem);font-weight:300;color:var(--color-accent);line-height:1;margin-bottom:.5rem}.stats__label{font-family:var(--font-body);font-size:.8rem;font-weight:500;color:rgba(255,255,255,.7)}.section-tag,.stats__label{letter-spacing:.15em;text-transform:uppercase}.section-tag{display:inline-block;font-size:.7rem;font-weight:600;color:var(--color-primary);margin-bottom:.8rem;position:relative;padding-left:14px}.section-tag:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--color-primary);border-radius:50%}.services-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3rem;gap:2rem}.services-header__left h2{margin-bottom:0;max-width:600px}.services-grid{gap:1.5rem}.service-card{padding:2.5rem 2rem 2rem;background:var(--color-white);border:1px solid var(--color-trim);text-align:left;display:flex;flex-direction:column;height:100%;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(74,59,48,.08)}.service-card__icon{width:56px;height:56px;margin-bottom:1.5rem;color:var(--color-primary)}.service-card__icon svg{width:100%;height:100%}.service-card h3{margin-bottom:.8rem;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-body);font-weight:600;font-size:.9rem;color:var(--color-primary)}.service-card p{font-size:.85rem;color:#7a6b5d;margin-bottom:1.2rem}.service-card__bullets{list-style:none;margin:0 0 1.5rem;border-top:1px solid var(--color-trim);padding:1rem 0 0;flex-grow:1}.service-card__bullets li{padding:.4rem 0 .4rem 1.2rem;position:relative;font-size:.82rem;font-weight:400;color:#5a4d42}.service-card__bullets li:before{content:"+";position:absolute;left:0;color:var(--color-primary);font-weight:700;font-size:.9rem}.service-card__btn{font-size:.65rem;padding:10px 24px;align-self:flex-start;margin-top:auto}.premium-section{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.premium-section__image{position:relative;overflow:hidden}.premium-section__image img{width:100%;height:100%;object-fit:cover}.premium-section__content{background:var(--color-secondary);padding:4rem 3.5rem;display:flex;align-items:center}.premium-section__content h2{margin-bottom:1rem}.premium-section__content>div>p{color:#5a4d42;font-size:.9rem;margin-bottom:2rem}.premium-section__features{display:flex;flex-direction:column;gap:1rem}.premium-feature{display:flex;gap:1.2rem;align-items:flex-start;padding:1.5rem;background:rgba(255,255,255,.5);border:1px solid var(--color-trim);transition:background .3s ease}.premium-feature:hover{background:rgba(255,255,255,.8)}.premium-feature__icon{width:40px;height:40px;flex-shrink:0;color:var(--color-primary)}.premium-feature__icon svg{width:100%;height:100%}.premium-feature h4{font-family:var(--font-body);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.3rem;color:var(--color-primary)}.premium-feature p{font-size:.82rem;color:#6b5d52;margin:0}.gallery-section{background:var(--color-dark)}.gallery-section h2{color:var(--color-white)}.gallery-section .divider{background:rgba(255,255,255,.3)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.5rem;gap:.5rem}.gallery-card{position:relative;overflow:hidden;aspect-ratio:4/3;cursor:pointer}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery-card:hover img{transform:scale(1.08)}.gallery-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(42,31,22,.8));display:flex;align-items:flex-end;padding:1.5rem;opacity:0;transition:opacity .4s ease}.gallery-card:hover .gallery-card__overlay{opacity:1}.gallery-card__overlay h3{color:var(--color-white);font-size:1.2rem;font-weight:400}.home__banner{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden}.home__banner-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home__banner-overlay{position:absolute;inset:0;background:rgba(42,31,22,.7)}.home__banner-content{position:relative;z-index:2;text-align:center;max-width:800px;padding:0 2rem}.home__banner-content h2{color:var(--color-white);font-size:clamp(2rem,4vw,3.2rem);font-weight:300;line-height:1.3;text-shadow:0 2px 20px rgba(0,0,0,.3)}.home__cta-center{text-align:center;margin-top:3rem}.faq__layout{display:grid;grid-template-columns:1fr 1.5fr;grid-gap:4rem;gap:4rem;align-items:start}.faq__header h2{margin-bottom:0}.faq__header p{color:#7a6b5d}.faq__list{border-top:1px solid var(--color-trim)}.faq__item{border-bottom:1px solid var(--color-trim)}.faq__question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 0;background:none;border:none;cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:500;color:var(--color-primary);text-align:left;gap:1rem;transition:color .3s ease}.faq__icon,.faq__question:hover{color:var(--color-accent)}.faq__icon{width:18px;height:18px;flex-shrink:0;transition:transform .3s ease}.faq__item--open .faq__icon{transform:rotate(45deg)}.faq__icon-v{transition:opacity .3s ease}.faq__item--open .faq__icon-v{opacity:0}.faq__answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease}.faq__item--open .faq__answer{max-height:300px;padding-bottom:1.25rem}.faq__answer p{font-size:.88rem;color:#7a6b5d;line-height:1.7;margin:0}@media (max-width:1024px){.installation__grid{gap:2rem}.stats__grid{grid-template-columns:repeat(2,1fr);gap:3rem}.faq__layout{gap:2rem}.faq__layout,.premium-section{grid-template-columns:1fr}.premium-section__image{height:400px}.premium-section__content{padding:3rem 2rem}.services-header{flex-direction:column;align-items:flex-start}}@media (max-width:768px){.hero{height:100svh}.hero__content p{font-size:.9rem}.installation__image img{height:400px}.installation__grid .installation__text{order:1}.installation__grid .installation__image{order:2}.gallery-grid,.stats__grid{grid-template-columns:repeat(2,1fr)}.home__banner{height:50vh}}@media (max-width:480px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.stats__grid{grid-template-columns:1fr 1fr;gap:2rem}}.about__grid{align-items:center}.about__image{overflow:hidden;border-radius:8px;box-shadow:0 12px 32px rgba(74,59,48,.18);display:inline-block;max-width:480px}.about__image img{width:100%;max-width:480px;object-fit:cover;transition:transform .6s ease;display:block}.about__image:hover img{transform:scale(1.03)}.about__text h2{margin-bottom:0}.about__text .btn{margin-top:1rem}@media (max-width:768px){.about__image{text-align:center}}.dj__text-block{padding:1rem 0}.dj__text-block h3{margin-bottom:1rem}.dj__list{margin-top:1rem;padding-left:0}.dj__list li{padding:.5rem 0 .5rem 1.5rem;position:relative;font-size:.9rem;font-weight:300;color:#5a4d42}.dj__list li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--color-accent);border-radius:50%}.dj__package{background:var(--color-white);border:1px solid var(--color-trim);padding:3rem;position:relative;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.dj__package:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(74,59,48,.08)}.dj__package--featured{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.dj__package-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--color-accent);color:var(--color-primary);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 16px}.dj__package h3{font-size:1.6rem;margin-bottom:.5rem}.dj__package-desc{color:#7a6b5d;font-size:.9rem;margin-bottom:2rem}.dj__package-list{text-align:left;margin-bottom:2rem}.dj__package-list li{padding:.6rem 0 .6rem 1.5rem;position:relative;font-size:.9rem;font-weight:300;color:#5a4d42;border-bottom:1px solid var(--color-trim)}.dj__package-list li:last-child{border-bottom:none}.dj__package-list li:before{content:"\2713";position:absolute;left:0;color:var(--color-accent);font-weight:600}.contact__grid{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:4rem;gap:4rem;align-items:start}.contact__info h2{margin-bottom:0}.contact__details{margin-top:2rem}.contact__details h3{margin-bottom:1rem;font-size:1.3rem}.contact__details ul{padding-left:0}.contact__details li{padding:.4rem 0 .4rem 1.5rem;position:relative;font-size:.9rem;font-weight:300;color:#5a4d42}.contact__details li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--color-accent);border-radius:50%}.contact__form{background:var(--color-white);border:1px solid var(--color-trim);padding:3rem}.contact__form h3{margin-bottom:2rem;text-align:center}.contact__form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem}.contact__field{margin-bottom:1.5rem}.contact__field label{display:block;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.5rem}.contact__field input,.contact__field textarea{width:100%;padding:12px 16px;font-family:var(--font-body);font-size:.9rem;border:1px solid var(--color-trim);background:var(--color-background);color:var(--color-text);transition:border-color .3s ease;outline:none}.contact__field input:focus,.contact__field textarea:focus{border-color:var(--color-accent)}.contact__field textarea{resize:vertical}.contact__form .btn{width:100%;margin-top:.5rem}.contact__form .btn:disabled{opacity:.6;cursor:not-allowed}.contact__status{margin-top:1rem;padding:1rem;text-align:center;font-size:.9rem;font-weight:400}.contact__status--success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.contact__status--error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}@media (max-width:768px){.contact__grid{gap:3rem}.contact__form-grid,.contact__grid{grid-template-columns:1fr}.contact__form{padding:2rem}}.spotify__login{text-align:center;max-width:600px;margin:0 auto}.spotify__login h2{margin-bottom:0}.spotify__login p{margin-bottom:2rem;color:#7a6b5d}.spotify__login-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 40px;background:#1DB954;color:white;font-family:var(--font-body);font-size:.9rem;font-weight:600;border:none;border-radius:50px;cursor:pointer;transition:background .3s ease,transform .2s ease}.spotify__login-btn:hover:not(:disabled){background:#1ed760;transform:scale(1.02)}.spotify__login-btn:disabled{opacity:.6;cursor:not-allowed}.spotify__content{max-width:1000px;margin:0 auto}.spotify__form{display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:600px;margin:0 auto 2rem}.spotify__textarea{width:100%;padding:1rem;font-family:var(--font-body);font-size:.9rem;border:2px solid var(--color-trim);border-radius:8px;resize:vertical;transition:border-color .3s ease}.spotify__textarea:focus{outline:none;border-color:#1DB954}.spotify__textarea::placeholder{color:#b0a89e}.spotify__playlist-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.spotify__playlist-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--color-white);border:1px solid var(--color-trim);border-radius:8px;transition:box-shadow .3s ease}.spotify__playlist-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}.spotify__playlist-info{display:flex;align-items:center;gap:1rem}.spotify__playlist-thumb{width:56px;height:56px;border-radius:6px;object-fit:cover}.spotify__playlist-info h4{font-family:var(--font-body);font-size:.95rem;font-weight:500;margin:0 0 .25rem}.spotify__playlist-meta{display:block;font-size:.8rem;color:#7a6b5d;margin-bottom:.15rem}.spotify__playlist-link{font-size:.8rem;color:#1DB954;text-decoration:none}.spotify__playlist-link:hover{text-decoration:underline}.spotify__delete-btn{background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s ease}.spotify__delete-btn:hover{color:#e74c3c}.spotify__embeds{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-top:2rem}.spotify__embed-wrap{border-radius:12px;overflow:hidden}@media (max-width:768px){.spotify__embeds{grid-template-columns:1fr}.spotify__playlist-item{padding:.8rem 1rem}.spotify__playlist-thumb{width:44px;height:44px}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:8rem 2rem 4rem;background:var(--color-background)}.auth-card{background:var(--color-white);border:1px solid var(--color-trim);padding:3rem;width:100%;max-width:440px;text-align:center}.auth-card--wide{max-width:600px}.auth-card h2{margin-bottom:.5rem}.auth-subtitle{color:#7a6b5d;font-size:.9rem;margin-bottom:2rem}.auth-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2;padding:.8rem;font-size:.85rem;margin-bottom:1.5rem}.auth-field{margin-bottom:1.2rem;text-align:left}.auth-field label{display:block;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.4rem}.auth-field input{width:100%;padding:11px 14px;font-family:var(--font-body);font-size:.88rem;border:1px solid var(--color-trim);background:var(--color-background);color:var(--color-text);outline:none;transition:border-color .3s ease}.auth-field input:focus{border-color:var(--color-accent)}.auth-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.auth-submit{width:100%;margin-top:.5rem}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--color-trim)}.auth-divider span{font-size:.8rem;color:#7a6b5d;text-transform:uppercase;letter-spacing:.1em}.auth-spotify-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px;background:#1DB954;color:white;font-family:var(--font-body);font-size:.85rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:background .3s ease}.auth-spotify-btn:hover{background:#1ed760}.auth-switch{margin-top:1.5rem;font-size:.85rem;color:#7a6b5d}.auth-switch a{color:var(--color-primary);font-weight:500}@media (max-width:480px){.auth-row{grid-template-columns:1fr}.auth-card{padding:2rem}}.admin{padding:8rem 2rem 4rem;max-width:1100px;margin:0 auto;min-height:100vh}.admin__header{margin-bottom:2rem}.admin__header h1{margin-bottom:.3rem}.admin__header p{color:#7a6b5d}.admin__tabs{display:flex;gap:0;border-bottom:2px solid var(--color-trim);margin-bottom:2rem}.admin__tab{padding:.8rem 1.5rem;background:none;font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#7a6b5d;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s ease}.admin__tab--active,.admin__tab:hover{color:var(--color-primary)}.admin__tab--active{border-bottom-color:var(--color-primary)}.admin__stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;margin-bottom:3rem}.admin__stat{background:var(--color-white);border:1px solid var(--color-trim);padding:2rem;text-align:center}.admin__stat-number{font-family:var(--font-heading);font-size:3rem;color:var(--color-primary);line-height:1;margin-bottom:.5rem}.admin__stat-label{font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#7a6b5d}.admin__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem}.admin__grid h3{margin-bottom:1rem;font-size:1.2rem}.admin__item{display:flex;flex-direction:column;padding:.8rem 0;border-bottom:1px solid var(--color-trim);font-size:.85rem}.admin__item strong{color:var(--color-primary)}.admin__item span{color:#7a6b5d;font-size:.8rem}.admin__item-date{font-size:.75rem}.admin__search{width:100%;padding:12px 16px;font-family:var(--font-body);font-size:.88rem;border:1px solid var(--color-trim);background:var(--color-white);color:var(--color-text);outline:none;margin-bottom:1.5rem;transition:border-color .3s ease}.admin__search:focus{border-color:var(--color-accent)}.admin__card{background:var(--color-white);border:1px solid var(--color-trim);margin-bottom:1rem}.admin__card-header{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;cursor:pointer;transition:background .2s ease}.admin__card-header:hover{background:rgba(0,0,0,.02)}.admin__card-header strong{display:block;font-size:.9rem;color:var(--color-primary)}.admin__card-meta{font-size:.78rem;color:#7a6b5d}.admin__card-right{display:flex;align-items:center;gap:1rem}.admin__card-body{padding:0 1.5rem 1.5rem;border-top:1px solid var(--color-trim)}.admin__card-body p{font-size:.85rem}.admin__card-body h4{font-family:var(--font-body);font-size:.8rem;margin:1rem 0 .8rem}.admin__badge,.admin__card-body h4{font-weight:600;text-transform:uppercase;letter-spacing:.08em}.admin__badge{font-size:.65rem;padding:3px 10px}.admin__badge--spotify{background:#1DB954;color:white}.admin__expand{font-size:1.2rem;color:#7a6b5d;width:24px;text-align:center;flex-shrink:0}.admin__playlist{border:1px solid var(--color-trim);margin-top:.5rem}.admin__playlist-header{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;cursor:pointer;font-size:.85rem}.admin__playlist-header:hover{background:rgba(0,0,0,.02)}.admin__tracks{width:100%;border-collapse:collapse;font-size:.8rem}.admin__tracks th{text-align:left;padding:.5rem 1rem;background:var(--color-background);font-weight:600;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#7a6b5d}.admin__tracks td{padding:.4rem 1rem;border-top:1px solid var(--color-trim);color:#5a4d42}.admin__muted{font-size:.9rem;padding:2rem}.admin__loading,.admin__muted{color:#7a6b5d;text-align:center}.admin__loading{padding:3rem}@media (max-width:768px){.admin__grid,.admin__stats{grid-template-columns:1fr}.admin__tabs{overflow-x:auto}}.footer{position:relative;background-color:var(--color-primary);background-image:url(/assets/images/footer-bg.webp);background-size:cover;background-position:50%;color:var(--color-white);padding-top:5rem}.footer:before{content:"";position:absolute;inset:0;background:rgba(42,31,22,.9);z-index:0}.footer>*{position:relative;z-index:1}.footer h4{color:var(--color-accent);font-family:var(--font-heading);font-size:1.4rem;margin-bottom:1.5rem}.footer__inner{display:grid;grid-template-columns:1fr 1.4fr 1fr;grid-gap:4rem;gap:4rem;padding-bottom:4rem;border-bottom:1px solid rgba(255,255,255,.1)}.footer__badges{display:flex;gap:1.5rem;align-items:center;margin-bottom:1.5rem}.footer__badges img{max-height:120px;width:auto;opacity:.9;transition:opacity .3s ease}.footer__badges img:hover{opacity:1}.footer__tagline{font-style:italic;font-family:var(--font-heading);font-size:1.1rem;opacity:.8;line-height:1.6}.footer__nav ul{display:grid;grid-template-columns:1fr 1fr;grid-gap:.8rem 1.5rem;gap:.8rem 1.5rem}.footer__nav a{color:rgba(255,255,255,.7);font-size:.85rem;font-weight:300;letter-spacing:.05em;transition:color .3s ease}.footer__nav a:hover{color:var(--color-accent)}.footer__contact p{color:rgba(255,255,255,.7);font-size:.9rem;margin-bottom:1.5rem}.footer__contact .btn{font-size:.7rem;padding:10px 28px}.footer__spotify{display:inline-flex;align-items:center;gap:8px;margin-top:1.2rem;color:#1DB954;font-size:.8rem;font-weight:500;letter-spacing:.05em;transition:color .3s ease}.footer__spotify:hover{color:#1ed760}.footer__spotify svg{width:22px;height:22px}.footer__bottom{padding:1.5rem 0}.footer__bottom p{text-align:center;font-size:.8rem;color:rgba(255,255,255,.4);margin:0}@media (max-width:768px){.footer__inner{grid-template-columns:1fr;gap:3rem;text-align:center}.footer__badges{justify-content:center}.footer__nav ul{justify-items:center}.footer__contact{display:flex;flex-direction:column;align-items:center}.footer__spotify{display:flex}}.header{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background-color .4s ease,box-shadow .4s ease;background:transparent}.header--scrolled{background:rgba(42,31,22,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,.15)}.header--light:not(.header--scrolled){background:var(--color-background);box-shadow:0 1px 0 var(--color-trim)}.header--light:not(.header--scrolled) .header__link{color:var(--color-primary)}.header--light:not(.header--scrolled) .header__link:after{background-color:var(--color-primary)}.header--light:not(.header--scrolled) .header__signin{color:var(--color-primary)}.header--light:not(.header--scrolled) .header__burger span{background:var(--color-primary)}.header__inner{max-width:1400px;margin:0 auto;padding:0 2rem;height:var(--header-height);display:flex;align-items:center;justify-content:space-between}.header__logo img{max-height:120px;width:auto;filter:brightness(1.1)}.header__nav{display:flex;align-items:center;gap:2rem}.header__link{color:var(--color-white);font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;position:relative;padding:.5rem 0;transition:color .3s ease}.header__link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-accent);transition:width .3s ease}.header__link--active,.header__link:hover{color:var(--color-accent)}.header__link--active:after,.header__link:hover:after{width:100%}.header__actions{display:flex;align-items:center;gap:1rem}.header__signin{color:var(--color-white);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;transition:color .3s ease}.header__signin:hover{color:var(--color-accent)}.header__user-menu{position:relative}.header__user-btn{width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:var(--color-primary);font-family:var(--font-body);font-size:.85rem;font-weight:600;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.header__user-btn:hover{transform:scale(1.08)}.header__dropdown{position:absolute;top:calc(100% + 10px);right:0;background:var(--color-white);border:1px solid var(--color-trim);min-width:220px;box-shadow:0 8px 30px rgba(0,0,0,.12);z-index:100}.header__dropdown-name{padding:1rem 1.2rem .2rem;font-weight:600;font-size:.85rem;color:var(--color-primary)}.header__dropdown-email{padding:0 1.2rem .8rem;font-size:.75rem;color:#7a6b5d}.header__dropdown-divider{height:1px;background:var(--color-trim)}.header__dropdown-item{display:block;width:100%;padding:.7rem 1.2rem;font-family:var(--font-body);font-size:.8rem;color:var(--color-primary);text-align:left;background:none;border:none;cursor:pointer;transition:background .2s ease;text-decoration:none}.header__dropdown-item:hover{background:var(--color-background);color:var(--color-primary)}.header__dropdown-item--logout{color:#c62828}.header__cta{font-size:.7rem;padding:10px 28px}.header__cta-mobile{display:none}.header__user-mobile{display:none;flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15)}.header__user-name{color:var(--color-accent);font-size:.85rem;font-weight:500}.header__link--signin-mobile{display:none}.header__burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px}.header__burger span{display:block;width:24px;height:2px;background:var(--color-white);transition:all .3s ease}.header__burger--open span:first-child{transform:rotate(45deg) translate(5px,5px)}.header__burger--open span:nth-child(2){opacity:0}.header__burger--open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width:1024px){.header__nav{position:fixed;top:0;right:-100%;width:320px;height:100vh;background:rgba(42,31,22,.98);flex-direction:column;justify-content:center;gap:1.5rem;transition:right .4s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.header__nav--open{right:0}.header__link{font-size:.85rem;letter-spacing:.15em}.header__actions{display:none}.header__cta-mobile{display:inline-block;margin-top:1rem}.header__user-mobile{display:flex}.header__link--signin-mobile{display:block;margin-top:1rem}.header__burger{display:flex;z-index:1001}}