/* ── L'ENTRE POTES — Shared Styles ── */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Cormorant+Garamond:ital,wght@0,300;0,600;1,300;1,600&family=DM+Sans:wght@300;400;500&display=swap');

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  --g:#C8A45A;--g2:#E8C87A;--g3:#7A5E20;--g4:rgba(200,164,90,.12);
  --dk:#070503;--dk2:#0E0A06;--s:#130D06;--s2:#1C1409;
  --tx:#F0E8D0;--tx2:rgba(240,232,208,.6);--mu:#7A6A4A;
  --border:rgba(200,164,90,.18);--border2:rgba(200,164,90,.08);
  --sidebar:260px;
  --nav-h:70px;
}

html{scroll-behavior:smooth;background:var(--dk)}
body{font-family:'DM Sans',sans-serif;background:var(--dk);color:var(--tx);overflow-x:hidden}
body.menu-open{overflow:hidden}

/* ── BACKGROUND ── */
.site-bg{
  position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse 70% 55% at 15% 25%,rgba(200,164,90,.055) 0%,transparent 60%),
    radial-gradient(ellipse 50% 50% at 85% 75%,rgba(160,120,40,.045) 0%,transparent 55%),
    linear-gradient(160deg,#0F0904 0%,#0A0603 55%,#070503 100%);
}
.site-grid{
  position:fixed;inset:0;z-index:1;pointer-events:none;
  background-image:
    linear-gradient(rgba(200,164,90,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(200,164,90,.022) 1px,transparent 1px);
  background-size:80px 80px;
}

/* ── SIDEBAR ── */
.sidebar{
  position:fixed;top:0;left:0;width:var(--sidebar);height:100vh;
  background:rgba(13,9,4,.97);backdrop-filter:blur(24px);
  border-right:1px solid var(--border);
  z-index:500;display:flex;flex-direction:column;
  transform:translateX(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);
  overflow-y:auto;
}
.sidebar.open{transform:translateX(0)}

.sidebar-logo{
  padding:36px 28px 24px;
  border-bottom:1px solid var(--border2);
}
.sidebar-logo-name{
  font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:1.6rem;color:var(--g);display:block;line-height:1;
}
.sidebar-logo-sub{
  font-size:.55rem;letter-spacing:.3em;color:var(--mu);
  text-transform:uppercase;margin-top:6px;display:block;
}

.sidebar-nav{padding:24px 0;flex:1}
.sidebar-nav a{
  display:flex;align-items:center;gap:14px;
  padding:14px 28px;
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--mu);text-decoration:none;
  transition:all .3s;border-left:2px solid transparent;
  position:relative;
}
.sidebar-nav a:hover,.sidebar-nav a.active{
  color:var(--tx);background:rgba(200,164,90,.05);
  border-left-color:var(--g);padding-left:36px;
}
.sidebar-nav a svg{width:16px;height:16px;opacity:.6;flex-shrink:0}
.sidebar-nav a:hover svg,.sidebar-nav a.active svg{opacity:1}

.sidebar-divider{height:1px;background:var(--border2);margin:8px 28px}

.sidebar-cta{padding:20px 24px 32px}
.sidebar-cta-btn{
  display:block;text-align:center;
  padding:14px 20px;background:var(--g);color:#080604;
  font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;
  font-weight:500;text-decoration:none;
  transition:all .3s;margin-bottom:12px;position:relative;overflow:hidden;
}
.sidebar-cta-btn::before{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);
  transition:left .4s;
}
.sidebar-cta-btn:hover::before{left:100%}
.sidebar-cta-btn:hover{background:var(--g2);transform:translateY(-1px)}
.sidebar-cta-tel{
  display:block;text-align:center;
  padding:12px 20px;border:1px solid var(--border);color:var(--tx2);
  font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;
  text-decoration:none;transition:all .3s;
}
.sidebar-cta-tel:hover{border-color:var(--g);color:var(--g)}

.sidebar-social{
  padding:0 24px 28px;display:flex;gap:12px;justify-content:center;
}
.s-ico{
  width:38px;height:38px;border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  color:var(--mu);text-decoration:none;
  transition:all .35s;position:relative;overflow:hidden;
}
.s-ico::before{
  content:'';position:absolute;inset:0;background:var(--g);
  transform:scaleY(0);transform-origin:bottom;transition:transform .3s;
  z-index:0;
}
.s-ico:hover::before{transform:scaleY(1)}
.s-ico svg{width:16px;height:16px;position:relative;z-index:1;transition:color .3s}
.s-ico:hover{border-color:var(--g);color:#080604}
.s-ico:hover svg{color:#080604}

/* ── OVERLAY ── */
.overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.6);
  z-index:499;opacity:0;pointer-events:none;
  transition:opacity .4s;backdrop-filter:blur(2px);
}
.overlay.show{opacity:1;pointer-events:all}

/* ── NAV ── */
.topnav{
  position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:400;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 28px;transition:all .4s;
}
.topnav.scrolled{
  background:rgba(7,5,3,.95);backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border2);
}
.hamburger{
  background:none;border:1px solid var(--border);
  width:44px;height:44px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:5px;
  transition:all .3s;flex-shrink:0;
}
.hamburger span{
  display:block;width:20px;height:1.5px;background:var(--tx2);
  transition:all .35s;transform-origin:center;
}
.hamburger.active span:nth-child(1){transform:translateY(6.5px) rotate(45deg);background:var(--g)}
.hamburger.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);background:var(--g)}
.hamburger:hover{border-color:var(--g)}
.hamburger:hover span{background:var(--g)}

.nav-logo{
  font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:1.3rem;color:var(--g);letter-spacing:.03em;
  text-decoration:none;
}
.nav-links{
  display:flex;gap:32px;list-style:none;align-items:center;
}
.nav-links a{
  font-size:.68rem;letter-spacing:.2em;color:var(--mu);
  text-decoration:none;text-transform:uppercase;transition:color .3s;
  position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:-3px;left:0;
  width:0;height:1px;background:var(--g);transition:width .3s;
}
.nav-links a:hover,.nav-links a.active{color:var(--tx)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-cta-btn{
  font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;
  padding:10px 22px;background:var(--g);color:#080604;
  font-weight:500;text-decoration:none;transition:all .3s;white-space:nowrap;
}
.nav-cta-btn:hover{background:var(--g2);transform:translateY(-1px)}

/* ── MAIN LAYOUT ── */
.page-wrap{
  position:relative;z-index:10;
  min-height:100vh;
}

/* ── BUTTONS ── */
.btn-gold{
  display:inline-flex;align-items:center;gap:10px;
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:17px 44px;background:var(--g);color:#080604;
  font-weight:500;text-decoration:none;border:none;
  transition:all .35s;position:relative;overflow:hidden;font-family:'DM Sans',sans-serif;
}
.btn-gold::before{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);
  transition:left .4s;
}
.btn-gold:hover::before{left:100%}
.btn-gold:hover{background:var(--g2);transform:translateY(-2px);box-shadow:0 10px 30px rgba(200,164,90,.2)}
.btn-outline{
  display:inline-flex;align-items:center;gap:10px;
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:16px 44px;background:transparent;color:var(--tx);
  font-weight:300;text-decoration:none;border:1px solid var(--border);
  transition:all .35s;
}
.btn-outline:hover{border-color:var(--g);color:var(--g)}

/* ── SECTION HEADERS ── */
.sec-eye{font-size:.58rem;letter-spacing:.42em;color:var(--g);text-transform:uppercase;display:block;margin-bottom:14px}
.sec-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,7vw,5.5rem);line-height:.95;color:var(--tx)}
.sec-title em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--g)}
.sec-rule{display:flex;align-items:center;gap:12px;margin:20px 0 0;max-width:240px}
.sec-rule::before,.sec-rule::after{content:'';flex:1;height:1px;background:linear-gradient(to right,transparent,var(--g3))}
.sec-rule::after{transform:scaleX(-1)}
.sec-dot{width:5px;height:5px;background:var(--g);transform:rotate(45deg);flex-shrink:0}

/* ── AOS ── */
[data-aos]{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
[data-aos].aos-in{opacity:1;transform:translateY(0)}
[data-aos][data-delay="100"]{transition-delay:.1s}
[data-aos][data-delay="200"]{transition-delay:.2s}
[data-aos][data-delay="300"]{transition-delay:.3s}
[data-aos][data-delay="400"]{transition-delay:.4s}
[data-aos][data-delay="500"]{transition-delay:.5s}
[data-aos][data-delay="600"]{transition-delay:.6s}

/* ── FOOTER ── */
.site-footer{
  position:relative;z-index:10;
  border-top:1px solid var(--border2);
  padding:40px 48px;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;
}
.footer-logo{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.2rem;color:var(--g)}
.footer-links{display:flex;gap:24px}
.footer-links a{font-size:.62rem;letter-spacing:.15em;color:var(--mu);text-decoration:none;text-transform:uppercase;transition:color .3s}
.footer-links a:hover{color:var(--g)}
.footer-social{display:flex;gap:10px}
.footer-copy{font-size:.6rem;color:rgba(122,106,74,.4);letter-spacing:.08em;width:100%;text-align:center;margin-top:16px;padding-top:16px;border-top:1px solid var(--border2)}

/* ── SCROLL BAR ── */
::-webkit-scrollbar{width:3px}
::-webkit-scrollbar-track{background:var(--dk)}
::-webkit-scrollbar-thumb{background:var(--g3);border-radius:2px}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .nav-links,.nav-cta-btn{display:none}
  .site-footer{padding:28px 24px;flex-direction:column;text-align:center}
  .footer-links{justify-content:center;flex-wrap:wrap}
  .footer-social{justify-content:center}
}

/* ═══ OPEN/CLOSED FLOATING WIDGET ═══ */
.status-widget{
  position:fixed;bottom:24px;right:24px;z-index:800;
  display:flex;flex-direction:column;align-items:flex-end;gap:8px;
}
.status-pill{
  display:flex;align-items:center;gap:10px;
  padding:12px 18px;
  backdrop-filter:blur(16px);
  border:1px solid;
  cursor:pointer;
  transition:all .35s;
  position:relative;overflow:hidden;
  min-width:180px;
  box-shadow:0 8px 32px rgba(0,0,0,.4);
}
.status-pill::before{
  content:'';position:absolute;inset:0;
  transform:translateX(-100%);transition:transform .4s;
  z-index:0;
}
.status-pill:hover::before{transform:translateX(0)}
.status-pill.open{
  background:rgba(10,20,10,.85);
  border-color:rgba(80,200,80,.4);
}
.status-pill.open::before{background:rgba(40,120,40,.25)}
.status-pill.closed{
  background:rgba(20,10,8,.88);
  border-color:rgba(200,164,90,.35);
}
.status-pill.closed::before{background:rgba(200,164,90,.08)}
.status-pill:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,.5)}

.status-dot{
  width:9px;height:9px;border-radius:50%;flex-shrink:0;
  position:relative;z-index:1;
}
.status-pill.open .status-dot{
  background:#4ade80;
  box-shadow:0 0 0 3px rgba(74,222,128,.2);
  animation:statusPulse 2s ease-in-out infinite;
}
.status-pill.closed .status-dot{background:var(--g);opacity:.7}
@keyframes statusPulse{
  0%,100%{box-shadow:0 0 0 3px rgba(74,222,128,.2)}
  50%{box-shadow:0 0 0 7px rgba(74,222,128,0)}
}
.status-text{position:relative;z-index:1;flex:1}
.status-label{
  display:block;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
  font-weight:500;line-height:1;
}
.status-pill.open .status-label{color:#4ade80}
.status-pill.closed .status-label{color:var(--g)}
.status-detail{
  display:block;font-size:.58rem;color:rgba(240,232,208,.5);
  margin-top:3px;line-height:1.3;font-weight:300;
}
.status-action{
  display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;flex-shrink:0;
  border:1px solid;border-radius:50%;
  position:relative;z-index:1;transition:all .3s;
}
.status-pill.open .status-action{border-color:rgba(74,222,128,.4);color:#4ade80}
.status-pill.closed .status-action{border-color:rgba(200,164,90,.4);color:var(--g)}
.status-pill:hover .status-action{transform:scale(1.15)}
.status-action svg{width:12px;height:12px}

/* Collapse button */
.status-collapse{
  background:rgba(10,8,5,.7);border:1px solid var(--border);
  color:var(--mu);font-size:.5rem;letter-spacing:.15em;text-transform:uppercase;
  padding:4px 12px;transition:all .3s;cursor:pointer;backdrop-filter:blur(12px);
  align-self:flex-end;
}
.status-collapse:hover{color:var(--g);border-color:var(--g)}

@media(max-width:640px){
  .status-widget{bottom:16px;right:12px}
  .status-pill{min-width:160px;padding:10px 14px}
}
