*{box-sizing:border-box}
body{margin:0;background:#0E0D0B;-webkit-font-smoothing:antialiased}
a{color:#C9B486;text-decoration:none}
a:hover{color:#E3D3AC}
em{font-style:italic}
@media (prefers-reduced-motion: reduce){*{animation:none !important;transition:none !important}}

/* image-slot placeholder */
.slot{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#1c1a15,#12110e);color:rgba(244,239,230,0.4);
  font-family:Manrope,sans-serif;font-size:12px;letter-spacing:0.08em;text-align:center;padding:16px;overflow:hidden}
.slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* hover states */
.hero-em{transition:letter-spacing .6s ease,color .6s ease;pointer-events:auto;cursor:default}
.hero-em:hover{letter-spacing:.03em;color:#E3D3AC}
.btn-primary{transition:background .3s}
.btn-primary:hover{background:#E3D3AC;color:#0E0D0B}
.btn-ghost{transition:border-color .3s}
.btn-ghost:hover{border-color:#C9B486;color:#E3D3AC}
.cat-card{transition:background .35s}
.cat-card:hover{background:#181611}
.link-underline:hover{color:#161512;border-bottom-color:#161512}
.nav-link:hover{color:#E3D3AC}

/* nav responsive */
nav .desktop-links{display:flex}
nav .mobile-actions{display:none}
@media (max-width:899px){
  nav .desktop-links{display:none}
  nav .mobile-actions{display:flex}
}
#mobileMenu{position:fixed;inset:0;z-index:300;background:rgba(14,13,11,0.97);backdrop-filter:blur(20px);
  display:none;flex-direction:column;padding:20px clamp(20px,6vw,40px) 40px;overflow-y:auto}
#mobileMenu.open{display:flex}

/* gallery marquee */
@keyframes reelL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes reelR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.reel-row:hover{animation-play-state:paused}
.reel-card{transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s}
.reel-card:hover{transform:rotate(0deg) translateY(-14px) scale(1.06) !important;box-shadow:0 40px 70px -24px rgba(0,0,0,0.85);z-index:5}

/* FAQ */
.faq-q{transition:opacity .2s}
.faq-q:hover{opacity:.85}
.faq-a{display:none}
.faq-item.open .faq-a{display:block}

/* form focus */
input:focus,select:focus,textarea:focus{border-color:#C9B486 !important}
input::placeholder,textarea::placeholder{color:rgba(244,239,230,0.35)}
input,select,textarea{color-scheme:dark}
select option{color:#0E0D0B;background:#F4EFE6}
