:root{--nav-forest:#172c26;--nav-forest-deep:#10221d;--nav-ivory:#f4eee2;--nav-terracotta:#bd6f55;--nav-rose:#d7aaa0;--nav-brass:#c8a66a;--nav-muted:#9caea5;--nav-line:rgba(244,238,226,.16)}
.site-header{position:fixed;top:0;left:0;z-index:10000;width:100%;color:var(--nav-ivory)}
.nav-announcement{position:relative;z-index:10002;width:100%;height:30px;background:var(--nav-terracotta);color:var(--nav-ivory)}
.nav-announcement-inner{display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 80px),1400px);height:100%;margin:0 auto;font-size:8px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.main-navigation{position:relative;z-index:10002;width:100%;background:rgba(23,44,38,.96);border-bottom:1px solid rgba(244,238,226,.12);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav-container{display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 80px),1400px);height:86px;margin:0 auto}
.brand{display:flex;align-items:center;gap:14px;position:relative;z-index:10005;color:var(--nav-ivory);text-decoration:none}
.brand-symbol{display:flex;align-items:center;justify-content:center;position:relative;width:38px;height:38px;border:1px solid rgba(244,238,226,.55);border-radius:50%}
.brand-symbol span:first-child{position:absolute;width:17px;height:1px;background:var(--nav-brass);transform:rotate(45deg)}
.brand-symbol span:last-child{position:absolute;width:17px;height:1px;background:var(--nav-brass);transform:rotate(-45deg)}
.brand-text{display:flex;flex-direction:column;gap:2px}
.brand-text strong{font-family:var(--font-display,"Cormorant Garamond",serif);font-size:20px;font-weight:600;line-height:.9;letter-spacing:.1em}
.brand-text small{color:var(--nav-muted);font-size:7px;font-weight:500;letter-spacing:.23em;text-transform:uppercase}
.desktop-navigation{display:flex;align-items:center;gap:58px}
.desktop-navigation-links{display:flex;align-items:center;gap:40px}
.nav-link{position:relative;color:rgba(244,238,226,.72);font-size:9px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;transition:color .3s ease}
.nav-link:after{content:"";position:absolute;left:0;bottom:-9px;width:0;height:1px;background:var(--nav-rose);transition:width .35s ease}
.nav-link:hover{color:var(--nav-ivory)}
.nav-link:hover:after{width:100%}
.nav-link.is-active{color:var(--nav-ivory)}
.nav-link.is-active:after{width:100%}
.nav-enquiry{display:flex;align-items:center;gap:16px;padding:12px 4px 12px 18px;border-left:1px solid var(--nav-line);color:var(--nav-ivory);font-size:9px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.nav-enquiry-arrow{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid rgba(244,238,226,.35);border-radius:50%;font-size:14px;transition:background .3s ease,color .3s ease,border-color .3s ease}
.nav-enquiry:hover .nav-enquiry-arrow,.nav-enquiry.is-active .nav-enquiry-arrow{background:var(--nav-rose);border-color:var(--nav-rose);color:var(--nav-forest-deep)}
.mobile-menu-toggle{display:none;position:relative;z-index:10005;align-items:center;justify-content:center;width:76px;height:42px;padding:0;border:1px solid rgba(244,238,226,.35);background:var(--nav-forest);color:var(--nav-ivory);cursor:pointer}
.mobile-toggle-line{position:absolute;left:15px;width:22px;height:1px;background:var(--nav-ivory);transition:transform .35s ease,top .35s ease}
.mobile-toggle-line:first-child{top:14px}
.mobile-toggle-line:nth-child(2){top:21px}
.mobile-toggle-label{margin-left:26px;font-size:7px;font-weight:500;letter-spacing:.15em}
.mobile-menu-toggle.is-active .mobile-toggle-line:first-child{top:18px;transform:rotate(45deg)}
.mobile-menu-toggle.is-active .mobile-toggle-line:nth-child(2){top:18px;transform:rotate(-45deg)}
.mobile-navigation{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10001;display:block;visibility:hidden;opacity:0;pointer-events:none;overflow:hidden;background:var(--nav-forest-deep);transition:visibility 0s linear .65s,opacity .3s ease}
.mobile-navigation.is-open{visibility:visible;opacity:1;pointer-events:auto;transition:visibility 0s linear 0s,opacity .3s ease}
.mobile-navigation-background{position:absolute;inset:0;background:var(--nav-forest-deep);transform:translateY(-100%);transition:transform .65s cubic-bezier(.77,0,.18,1)}
.mobile-navigation.is-open .mobile-navigation-background{transform:translateY(0)}
.mobile-navigation-inner{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between;width:100%;height:100%;box-sizing:border-box;padding:125px 28px 30px;opacity:0;transform:translateY(25px);transition:opacity .4s ease,transform .5s ease}
.mobile-navigation.is-open .mobile-navigation-inner{opacity:1;transform:translateY(0);transition-delay:.25s}
.mobile-navigation-top{display:flex;align-items:center;justify-content:space-between;color:var(--nav-muted);font-size:8px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.mobile-navigation-links{display:flex;flex-direction:column;width:100%;margin:auto 0}
.mobile-nav-link{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:12px;width:100%;box-sizing:border-box;padding:17px 0;border-bottom:1px solid var(--nav-line);color:var(--nav-ivory);text-decoration:none}
.mobile-nav-link span{color:var(--nav-brass);font-size:8px;letter-spacing:.12em}
.mobile-nav-link strong{font-family:var(--font-display,"Cormorant Garamond",serif);font-size:clamp(45px,14vw,74px);font-weight:500;line-height:.85}
.mobile-nav-link em{font-family:var(--font-body,"Inter",sans-serif);font-size:18px;font-style:normal;text-align:right;transition:transform .3s ease}
.mobile-nav-link:hover em{transform:translate(4px,-4px)}
.mobile-nav-link.is-active strong,.mobile-nav-link.is-active em{color:var(--nav-rose)}
.mobile-nav-link-contact{color:var(--nav-rose)}
.mobile-navigation-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;width:100%}
.mobile-navigation-socials{display:flex;gap:20px}
.mobile-navigation-socials a{color:var(--nav-ivory);font-size:8px;letter-spacing:.13em;text-transform:uppercase;text-decoration:none}
.mobile-navigation-location{display:flex;flex-direction:column;align-items:flex-end;gap:5px;color:var(--nav-muted);font-size:7px;letter-spacing:.13em;text-transform:uppercase}
body.menu-open{overflow:hidden}
@media(max-width:900px){.nav-announcement-inner{width:calc(100% - 48px)}.nav-container{width:calc(100% - 48px)}.desktop-navigation{gap:28px}.desktop-navigation-links{gap:25px}}
@media(max-width:767px){.nav-announcement{height:27px}.nav-announcement-inner{width:calc(100% - 40px);font-size:7px}.nav-announcement-inner span:last-child{display:none}.nav-container{width:calc(100% - 40px);height:72px}.desktop-navigation{display:none}.mobile-menu-toggle{display:flex}.brand-symbol{width:34px;height:34px}.brand-text strong{font-size:18px}.brand-text small{font-size:6px}.mobile-navigation-inner{padding:115px 22px 24px}.mobile-nav-link{grid-template-columns:27px 1fr 24px;padding:15px 0}.mobile-nav-link strong{font-size:clamp(42px,15vw,68px)}.mobile-navigation-bottom{align-items:flex-start;flex-direction:column}.mobile-navigation-location{align-items:flex-start}}
@media(max-width:420px){.mobile-navigation-inner{padding-top:105px}.mobile-nav-link strong{font-size:42px}.mobile-navigation-socials{gap:14px}.mobile-menu-toggle{width:70px}}


.site-footer{position:relative;overflow:hidden;background:var(--nav-terracotta);color:var(--nav-ivory)}
.footer-main{width:min(calc(100% - 80px),1400px);margin:0 auto;padding:130px 0 105px}
.footer-top{display:flex;align-items:center;justify-content:space-between}
.footer-label{font-size:8px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.footer-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(244,238,226,.6);border-radius:50%}
.footer-mark span:first-child{position:absolute;width:20px;height:1px;background:var(--nav-ivory);transform:rotate(45deg)}
.footer-mark span:last-child{position:absolute;width:20px;height:1px;background:var(--nav-ivory);transform:rotate(-45deg)}
.footer-heading{max-width:900px;margin-top:75px}
.footer-heading p{font-family:var(--font-display);font-size:clamp(70px,9vw,145px);font-weight:500;line-height:.82;letter-spacing:-.035em}
.footer-heading em{color:var(--nav-forest-deep);font-style:italic}
.footer-contact{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:80px;margin-top:100px;padding-top:35px;border-top:1px solid rgba(244,238,226,.28)}
.footer-contact-copy{max-width:390px}
.footer-contact-copy span{font-size:8px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.footer-contact-copy p{margin-top:18px;color:rgba(244,238,226,.75);font-size:12px;font-weight:300;line-height:1.8}
.footer-contact-link{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid rgba(244,238,226,.5);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.footer-contact-link strong{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(244,238,226,.55);border-radius:50%;font-size:17px;font-weight:400;transition:background .3s ease,color .3s ease,transform .3s ease}
.footer-contact-link:hover strong{background:var(--nav-forest-deep);color:var(--nav-ivory);transform:translate(3px,-3px)}
.footer-navigation{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:50px;padding:70px max(40px,calc((100vw - 1400px) / 2)) 65px;background:var(--nav-forest-deep)}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand-symbol{display:flex;align-items:center;justify-content:center;position:relative;width:38px;height:38px;border:1px solid rgba(244,238,226,.45);border-radius:50%}
.footer-brand-symbol span:first-child{position:absolute;width:17px;height:1px;background:var(--nav-brass);transform:rotate(45deg)}
.footer-brand-symbol span:last-child{position:absolute;width:17px;height:1px;background:var(--nav-brass);transform:rotate(-45deg)}
.footer-brand div:last-child{display:flex;flex-direction:column;gap:3px}
.footer-brand strong{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:.9;letter-spacing:.1em}
.footer-brand span{color:var(--nav-muted);font-size:7px;letter-spacing:.2em;text-transform:uppercase}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-column-label{margin-bottom:9px;color:var(--nav-brass);font-size:7px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.footer-column a,.footer-column p{color:rgba(244,238,226,.7);font-size:9px;font-weight:400;letter-spacing:.08em;transition:color .3s ease}
.footer-column a:hover{color:var(--nav-ivory)}
.footer-location p{line-height:1.4}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;width:min(calc(100% - 80px),1400px);min-height:62px;margin:0 auto;color:rgba(244,238,226,.48);font-size:7px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.footer-bottom a{color:var(--nav-ivory);transition:color .3s ease}
.footer-bottom a:hover{color:var(--nav-rose)}
@media(max-width:900px){.footer-main{width:calc(100% - 48px);padding:100px 0 85px}.footer-navigation{padding:60px 48px;grid-template-columns:1.5fr 1fr 1fr}.footer-location{grid-column:2}.footer-bottom{width:calc(100% - 48px)}}
@media(max-width:767px){.footer-main{width:calc(100% - 40px);padding:80px 0 70px}.footer-heading{margin-top:55px}.footer-heading p{font-size:clamp(62px,18vw,100px)}.footer-contact{grid-template-columns:1fr;gap:45px;margin-top:70px}.footer-navigation{grid-template-columns:1fr 1fr;gap:55px 30px;padding:55px 20px}.footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px;width:calc(100% - 40px);padding:22px 0}.footer-bottom span:nth-child(2){display:none}.footer-bottom a{margin-top:8px}}
@media(max-width:420px){.footer-navigation{grid-template-columns:1fr}.footer-location{grid-column:auto}.footer-heading p{font-size:60px}}