#fw-section-custom-html-c5bc8044-1d9d-43e9-b6e7-b401f2649017 {

#portfolio-root *,#portfolio-root *::before,#portfolio-root *::after{box-sizing:border-box;margin:0;padding:0;}
#portfolio-root{position:fixed;inset:0;width:100%;height:100%;overflow:hidden;background:#0a0a0a;z-index:9000;}
#pf-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 33%;filter:brightness(0.55) saturate(0.8);z-index:0;}
#pf-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.35) 0%,rgba(0,0,0,0.15) 30%,rgba(0,0,0,0.15) 60%,rgba(0,0,0,0.8) 100%);z-index:1;}
#pf-hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:6;display:flex;flex-direction:column;align-items:center;cursor:pointer;user-select:none;gap:0.6rem;}
#pf-logo{width:clamp(150px,25vw,280px);height:auto;display:block;mix-blend-mode:screen;position:relative;z-index:1;}
.pf-subtitle{font-family:"Poppins",sans-serif;font-size:clamp(0.75rem,1.4vw,1rem);font-weight:700;letter-spacing:0.35em;color:#ffffff !important;text-transform:uppercase;transition:opacity 0.35s ease;position:relative;z-index:1;margin-top:0.8rem;}
.pf-rule{width:75%;height:1px;background:linear-gradient(90deg,transparent,#c9a84c,transparent) !important;margin:1.8rem auto 0;transition:opacity 0.4s ease;position:relative;z-index:1;}
#portfolio-root.nav-active .pf-rule,#portfolio-root.nav-active .pf-subtitle{opacity:0;pointer-events:none;}
#pf-wheel{position:absolute;inset:0;z-index:6;pointer-events:none;}
.pf-nav-item{position:absolute;transform:translate(-50%,-50%);pointer-events:none;}
.pf-nav-item a{display:flex;flex-direction:column;align-items:center;gap:0.4rem;font-family:"Poppins",sans-serif;font-size:clamp(0.55rem,1vw,0.7rem);font-weight:700;letter-spacing:0.2em;color:rgba(245,240,232,0.0) !important;text-decoration:none !important;text-transform:uppercase;white-space:nowrap;padding:0.9rem 1.2rem;border:1px solid transparent !important;background:transparent !important;transition:color 0.6s cubic-bezier(.22,1,.36,1),letter-spacing 0.3s ease,transform 0.5s cubic-bezier(.22,1,.36,1);cursor:pointer;transform:scale(0.6);}
.pf-nav-item a svg{width:clamp(20px,3vw,28px);height:clamp(20px,3vw,28px);transition:stroke 0.3s ease;}
.pf-nav-item:nth-child(1) a{transition-delay:0.00s;}
.pf-nav-item:nth-child(2) a{transition-delay:0.06s;}
.pf-nav-item:nth-child(3) a{transition-delay:0.12s;}
.pf-nav-item:nth-child(4) a{transition-delay:0.18s;}
.pf-nav-item:nth-child(5) a{transition-delay:0.24s;}
#portfolio-root.nav-active .pf-nav-item{pointer-events:all;}
#portfolio-root.nav-active .pf-nav-item a{color:#fff !important;border-color:transparent !important;background:transparent !important;transform:scale(1);}
#portfolio-root.nav-active .pf-nav-item a:hover{color:#c9a84c !important;transform:scale(1.12);letter-spacing:0.25em;font-weight:900;text-decoration:none !important;}
.pf-panel{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.5s ease;background:rgba(8,6,4,0.88) !important;backdrop-filter:blur(12px);}
.pf-panel.open{opacity:1;pointer-events:all;}
.pf-panel-inner{max-width:680px;width:90vw;max-height:85vh;height:auto;padding:3rem;border:none !important;background:transparent !important;position:relative;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;}
.pf-panel-inner h2{font-family:"Poppins",sans-serif;font-size:1.4rem;font-weight:600;letter-spacing:0.3em;color:#c9a84c !important;margin-bottom:1.5rem;text-transform:uppercase;}
.pf-panel-inner p,.pf-panel-inner li{font-family:"Poppins",sans-serif;font-size:1.15rem;line-height:1.8;color:rgba(255,255,255,0.9) !important;}
.pf-panel-inner ul{list-style:none !important;padding:0;}
.pf-panel-inner li{padding:0.4rem 0;border-bottom:1px solid rgba(201,168,76,0.1) !important;}
.pf-panel-inner li:last-child{border-bottom:none !important;}
.pf-panel-close{position:fixed;top:1.5rem;right:1.75rem;font-family:"Poppins",sans-serif;font-size:1.5rem;color:rgba(255,255,255,0.5) !important;cursor:pointer;line-height:1;transition:color 0.3s;z-index:30;}
.pf-panel-close:hover{color:#ffffff !important;}
#pf-social{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:6;display:flex;align-items:center;gap:1.5rem;}
.pf-social-link{color:rgba(255,255,255,0.35);transition:color 0.3s ease,transform 0.3s ease;display:flex;align-items:center;}
.pf-social-link:hover{color:#c9a84c !important;transform:translateY(-2px);}

/* Bookings panel scrolls at the panel level so scrollbar sits at screen edge */
#pf-panel-bookings{align-items:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;}
#pf-panel-bookings .pf-panel-inner{max-height:none;overflow-y:visible;margin:2rem auto;}

@media(max-width:600px){
  #pf-logo{width:clamp(110px,45vw,200px);}
  .pf-subtitle{font-size:0.65rem !important;letter-spacing:0.25em;}
  .pf-nav-item a{padding:0.6rem 0.8rem;}
  .pf-nav-item a svg{width:18px !important;height:18px !important;}
  .pf-nav-item a span{font-size:0.5rem !important;letter-spacing:0.15em;}
  .pf-panel-inner{padding:1.25rem !important;width:92vw !important;max-height:85vh !important;}
  .pf-panel-inner h2{font-size:1rem !important;letter-spacing:0.2em;margin-bottom:1rem;}
  .pf-panel-inner p,.pf-panel-inner li{font-size:0.88rem !important;line-height:1.65;}
  .pf-panel-close{top:1rem;right:1rem;}
  #pf-social{gap:1rem;bottom:1.5rem;}
  #pf-social svg{width:15px !important;height:15px !important;}
  #pf-panel-dates .pf-panel-inner li{padding:0.85rem 0;font-size:0.78rem !important;}
  #pf-panel-dates .pf-panel-inner li span{line-height:1.5;}
  #pf-panel-bookings .pf-panel-inner{max-height:none !important;margin:1rem auto;}
}
}