/* ── Navbar ── */
.site-nav{position:fixed;top:0;left:0;width:100%;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:20px 80px;box-sizing:border-box;background:rgba(17,16,9,0.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(245,240,230,0.06);opacity:0;pointer-events:none;transition:opacity 0.5s ease}
.site-nav.visible{opacity:1;pointer-events:auto}
.site-nav.condensed{padding:12px 80px}
.site-nav-solid{opacity:1;transform:none;pointer-events:auto;transition:none;padding:12px 80px}
.site-nav-solid .nav-logo img{height:42px}
.nav-logo{display:flex;align-items:center;text-decoration:none}
.nav-logo img{height:52px;width:auto;display:block}
.site-nav.condensed .nav-logo img{height:42px}
.nav-links{display:flex;gap:36px}
.nav-links a{font-family:"Lato 1",sans-serif;font-size:13px;font-weight:300;color:rgba(245,240,230,0.6);text-decoration:none;letter-spacing:1px;transition:color 0.3s ease;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:#f1dbb5;transition:width 0.3s ease}
.nav-links a:hover{color:#f1dbb5}
.nav-links a:hover::after{width:100%}
.nav-cta{font-family:"Lato 1",sans-serif;font-size:12px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:#f1dbb5;text-decoration:none;padding:10px 24px;border:1px solid rgba(241,219,181,0.3);transition:border-color 0.3s ease,background 0.3s ease}
.nav-cta:hover{border-color:#f1dbb5;background:rgba(241,219,181,0.08)}
.nav-burger{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:4px}
.nav-burger span{width:22px;height:1.5px;background:#f5f0e6;transition:transform 0.3s ease,opacity 0.3s ease}
.nav-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-burger.open span:nth-child(2){transform:translateY(-6.5px) rotate(-45deg)}
.nav-mobile{position:fixed;top:0;left:0;width:100%;height:100vh;background:#111009;z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.4s ease,visibility 0s linear 0.4s}
.nav-mobile.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 0.4s ease,visibility 0s}
.nav-mobile a{font-family:"Lato 3",sans-serif;font-size:28px;font-weight:700;color:#f5f0e6;text-decoration:none;letter-spacing:1px;transition:color 0.3s ease}
.nav-mobile a:hover{color:#f1dbb5}

/* ── Footer ── */
.site-footer{background:#0d0c08;padding:80px 80px 40px;box-sizing:border-box;border-top:1px solid rgba(245,240,230,0.04);position:relative;z-index:1}
.ftr-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:60px;max-width:1160px;margin:0 auto;padding-bottom:48px;border-bottom:1px solid rgba(245,240,230,0.08)}
.ftr-brand{display:flex;flex-direction:column;gap:12px}
.ftr-logo{display:inline-block;text-decoration:none}
.ftr-logo img{height:80px;width:auto;display:block}
.ftr-tagline{font-family:"Lato 7",sans-serif;font-size:14px;font-style:italic;color:rgba(245,240,230,0.35);margin:0}
.ftr-nav{display:flex;flex-direction:column;gap:14px}
.ftr-nav-title{font-family:"Lato 1",sans-serif;font-size:11px;font-weight:700;color:#76603c;letter-spacing:2px;text-transform:uppercase;margin-bottom:4px}
.ftr-nav a{display:inline-block;align-self:flex-start;font-family:"Lato 1",sans-serif;font-size:14px;font-weight:300;color:rgba(245,240,230,0.5);text-decoration:none;transition:color 0.3s ease}
.ftr-nav a:hover{color:#f1dbb5}
.ftr-contact{display:flex;flex-direction:column;gap:14px}
.ftr-contact .ftr-nav-title{margin-bottom:4px}
.ftr-contact-link{display:flex;align-items:center;gap:12px;font-family:"Lato 1",sans-serif;font-size:14px;font-weight:300;color:rgba(245,240,230,0.5);text-decoration:none;transition:color 0.3s ease}
.ftr-contact-link:hover{color:#f1dbb5}
.ftr-icon{width:18px;height:18px;flex-shrink:0}
.ftr-bottom{display:flex;align-items:center;justify-content:space-between;max-width:1160px;margin:0 auto;padding-top:32px;gap:24px;flex-wrap:wrap}
.ftr-legal{font-family:"Lato 1",sans-serif;font-size:12px;font-weight:300;color:rgba(245,240,230,0.25);margin:0}
.ftr-legal-links{display:flex;align-items:center;gap:12px}
.ftr-legal-links a{font-family:"Lato 1",sans-serif;font-size:12px;font-weight:300;color:rgba(245,240,230,0.25);text-decoration:none;transition:color 0.3s ease}
.ftr-legal-links a:hover{color:#f1dbb5}
.ftr-legal-links span{color:rgba(245,240,230,0.15)}
.ftr-credit{font-family:"Lato 1",sans-serif;font-size:12px;font-weight:300;color:rgba(245,240,230,0.25);margin:0}
.ftr-credit a{color:rgba(245,240,230,0.4);text-decoration:none;transition:color 0.3s ease}
.ftr-credit a:hover{color:#f1dbb5}
.ftr-heart{color:#76603c}

/* ── Navbar & Footer Responsive ── */
@media (max-width:1199px){
  .site-nav{padding:16px 24px}
  .site-nav.condensed,.site-nav-solid{padding:12px 24px}
  .nav-links,.nav-cta{display:none}
  .nav-burger{display:flex}
  .site-footer{padding:60px 24px 32px}
  .ftr-top{grid-template-columns:1fr 1fr;gap:36px}
  .ftr-brand{grid-column:1/-1}
  .ftr-bottom{flex-direction:column;align-items:flex-start;gap:16px}
}

/* ── Section Transitions ── */
.section-transition{height:1px;display:flex;align-items:center;justify-content:center;position:relative;background:#f1dbb5;z-index:1}
.section-transition::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:rgba(118,96,60,0.15)}
.section-transition::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:rgba(118,96,60,0.15)}
.section-transition-text{font-family:"Lato 1",sans-serif;font-size:11px;font-size:calc(11px * var(--f,1));font-weight:300;letter-spacing:6px;text-transform:uppercase;color:#76603c;opacity:0;transition:opacity 0.8s ease 0.2s}
.section-transition.revealed .section-transition-text{opacity:1}
.section-transition-light{background:#f1dbb5}
.section-transition-reverse{background:#f1dbb5}
.section-transition[data-reveal] .section-transition-text{opacity:0}
@media (max-width:1199px){
  .section-transition{height:52px}
  .section-transition-text{font-size:10px;letter-spacing:4px}
}

/* ── Lightbox ── */
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(8,7,5,0.95);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease}
.lightbox-open{opacity:1;visibility:visible}
.lightbox-img-wrap{max-width:90vw;max-height:85vh;display:flex;align-items:center;justify-content:center}
.lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:2px;box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.lightbox-close{position:absolute;top:24px;right:32px;background:none;border:none;color:#f5f0e6;font-size:36px;cursor:pointer;z-index:10000;transition:color 0.3s ease;line-height:1;padding:8px}
.lightbox-close:hover{color:#f1dbb5}
.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(245,240,230,0.5);font-size:48px;cursor:pointer;z-index:10000;transition:color 0.3s ease;padding:16px 24px;line-height:1}
.lightbox-prev{left:16px}
.lightbox-next{right:16px}
.lightbox-prev:hover,.lightbox-next:hover{color:#f1dbb5}
@media (max-width:1199px){
  .lightbox-close{top:16px;right:20px;font-size:28px}
  .lightbox-prev,.lightbox-next{font-size:32px;padding:12px}
  .lightbox-prev{left:8px}
  .lightbox-next{right:8px}
}
