:root{--color-bg: #f8f5f0;--color-bg-deep: #0f0f0e;--color-bg-warm: #f0ebe4;--color-bg-elevated: #ffffff;--color-bg-card: #ffffff;--color-bg-card-hover: #f5f0ea;--color-bg-subtle: #ece7e0;--color-cream: #f5f0ea;--color-text: #1e1e1c;--color-text-muted: rgba(30, 30, 28, .8);--color-text-subtle: rgba(30, 30, 28, .7);--color-cream-muted: rgba(30, 30, 28, .75);--color-cream-subtle: rgba(30, 30, 28, .65);--color-gold: #1e1e1c;--color-gold-hover: #3a3a38;--color-gold-subtle: rgba(30, 30, 28, .08);--color-border: rgba(30, 30, 28, .1);--color-border-hover: rgba(30, 30, 28, .2);--color-light: #f5f0ea;--color-light-muted: rgba(245, 240, 234, .85);--color-light-subtle: rgba(245, 240, 234, .65);--font-serif: "freight-big-pro", Georgia, "Times New Roman", serif;--font-sans: "Alata", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs: clamp(.7rem, .65rem + .25vw, .8rem);--text-sm: clamp(.8rem, .75rem + .25vw, .9rem);--text-base: clamp(.9rem, .85rem + .25vw, 1rem);--text-lg: clamp(1rem, .9rem + .5vw, 1.2rem);--text-xl: clamp(1.2rem, 1rem + 1vw, 1.6rem);--text-2xl: clamp(1.5rem, 1.2rem + 1.5vw, 2.2rem);--text-3xl: clamp(2rem, 1.5rem + 2.5vw, 3.2rem);--text-4xl: clamp(2.5rem, 1.8rem + 3.5vw, 4.5rem);--text-hero: clamp(2rem, 1.5rem + 3vw, 4rem);--text-display: clamp(4rem, 2rem + 8vw, 8rem);--space-xs: clamp(.5rem, .4rem + .5vw, .75rem);--space-sm: clamp(.75rem, .6rem + .75vw, 1.25rem);--space-md: clamp(1.5rem, 1rem + 2.5vw, 3rem);--space-lg: clamp(2.5rem, 1.5rem + 4vw, 4.5rem);--space-xl: clamp(6rem, 4rem + 8vw, 10rem);--space-section: clamp(8rem, 5rem + 10vw, 14rem);--container-max: 1400px;--container-narrow: 900px;--container-text: 700px;--gutter: clamp(1.5rem, 1rem + 2vw, 4rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .2s;--duration-base: .4s;--duration-slow: .8s;--duration-slower: 1.2s;--z-base: 1;--z-header: 100;--z-overlay: 200;--z-modal: 300}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:300;line-height:1.7;color:var(--color-text);background-color:var(--color-bg);overflow-x:hidden}img,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover:not(.btn){color:var(--color-gold)}a.btn:hover,.btn:hover,a.btn.btn--small:hover,a.btn.btn--pinterest:hover{color:#fff!important}.link-hover{position:relative;display:inline}.link-hover:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:currentColor;transition:width var(--duration-base) var(--ease-out)}.link-hover:hover:after{width:100%}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}ul,ol{list-style:none}::selection{background:var(--color-gold);color:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:300;line-height:1.15;letter-spacing:.02em;text-transform:uppercase}h1 em,h2 em,h3 em,h4 em{text-transform:lowercase;font-style:italic;font-weight:300}h1{font-size:var(--text-hero)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}.label{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold)}.body-lg{font-size:var(--text-lg);line-height:1.8;color:var(--color-cream-muted)}.body-sm{font-size:var(--text-sm);color:var(--color-cream-muted)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--gutter)}.container--narrow{max-width:var(--container-narrow)}.container--text{max-width:var(--container-text)}.section{padding:var(--space-section) 0}.section--tight{padding:var(--space-lg) 0}.section--compact{padding:var(--space-md) 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:400;letter-spacing:.2em;text-transform:uppercase;padding:1rem 2.5rem;min-height:48px;min-width:48px;border:1px solid var(--color-text);color:var(--color-text);background:transparent;transition:color var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.btn:before{content:"";position:absolute;inset:0;background:var(--color-text);transform:translateY(100%);transition:transform var(--duration-base) var(--ease-out);will-change:transform;z-index:-1}.btn:hover{color:#fff}.btn:hover:before{transform:translateY(0)}.btn span{position:relative;z-index:1}.btn--gold{border-color:var(--color-gold);color:var(--color-gold)}.btn--gold:before{background:var(--color-gold)}.btn--gold:hover{color:var(--color-bg)}.btn--outline{background:transparent;border:1px solid var(--color-text);color:var(--color-text)}.btn--outline:hover{background:var(--color-text);color:var(--color-bg)}.investment__ctas{display:flex;gap:1rem;flex-wrap:wrap}.story-cta .btn,.dark-section .btn,[style*=bg-deep] .btn{border-color:var(--color-light);color:var(--color-light)}.story-cta .btn:before,.dark-section .btn:before{background:var(--color-light)}.story-cta .btn:hover,.dark-section .btn:hover{color:var(--color-bg-deep)}.story-cta .btn--gold,.dark-section .btn--gold{border-color:var(--color-light);color:var(--color-light)}.story-cta .btn--gold:before,.dark-section .btn--gold:before{background:var(--color-light)}.story-cta .btn--gold:hover,.dark-section .btn--gold:hover{color:var(--color-bg-deep)}.btn--filled{background:var(--color-cream);color:var(--color-bg);border-color:var(--color-cream)}.btn--filled:before{background:var(--color-bg);transform:translateY(-100%)}.btn--filled:hover{color:var(--color-cream)}.btn--filled:hover:before{transform:translateY(0)}.btn--light{border-color:var(--color-light);color:var(--color-light)}.btn--light:before{background:var(--color-light)}.btn--light:hover{color:var(--color-bg-deep)}.divider{width:60px;height:1px;background:var(--color-gold);margin:var(--space-md) 0}.divider--center{margin-left:auto;margin-right:auto}.divider--wide{width:100%;background:var(--color-border)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{opacity:0;transform:translateY(30px);transition:opacity var(--duration-slower) var(--ease-out),transform var(--duration-slower) var(--ease-out);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal--delay-1{transition-delay:.1s}.reveal--delay-2{transition-delay:.2s}.reveal--delay-3{transition-delay:.3s}.reveal--delay-4{transition-delay:.4s}.reveal--delay-5{transition-delay:.5s}.reveal--delay-6{transition-delay:.6s}.reveal--hero{opacity:0;transform:translateY(25px);transition:opacity 1.8s var(--ease-out),transform 1.8s var(--ease-out);transition-delay:.5s;will-change:opacity,transform}.reveal--hero.is-visible{opacity:1;transform:translateY(0)}.reveal--scale{opacity:0;transform:scale(.97);will-change:opacity,transform}.reveal--scale.is-visible{opacity:1;transform:scale(1)}.reveal--slide-left{opacity:0;transform:translate(-40px);transition:opacity var(--duration-slower) var(--ease-out),transform var(--duration-slower) var(--ease-out);will-change:opacity,transform}.reveal--slide-left.is-visible{opacity:1;transform:translate(0)}.reveal--slide-right{opacity:0;transform:translate(40px);transition:opacity var(--duration-slower) var(--ease-out),transform var(--duration-slower) var(--ease-out);will-change:opacity,transform}.reveal--slide-right.is-visible{opacity:1;transform:translate(0)}.reveal--clip{opacity:1;clip-path:inset(100% 0 0 0);transition:clip-path 1.2s var(--ease-out);will-change:clip-path}.reveal--clip.is-visible{clip-path:inset(0% 0 0 0)}.reveal--stagger{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out);will-change:opacity,transform}.reveal--stagger.is-visible{opacity:1;transform:translateY(0)}.reveal--stagger:nth-child(1){transition-delay:.1s}.reveal--stagger:nth-child(2){transition-delay:.2s}.reveal--stagger:nth-child(3){transition-delay:.3s}.reveal--stagger:nth-child(4){transition-delay:.4s}.reveal--stagger:nth-child(5){transition-delay:.5s}.gallery__col.reveal{transform:translateY(60px)}.gallery__col.reveal.is-visible{transform:translateY(0)}.img-hover-container{overflow:hidden;position:relative}.img-hover-container img{transition:transform var(--duration-slow) var(--ease-out);will-change:transform}.img-hover-container:hover img{transform:scale(1.04)}.img-reveal{opacity:0;transition:opacity .6s var(--ease-out)}.img-reveal.is-loaded{opacity:1}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-lg) 0}input,textarea,select{font-family:var(--font-sans);font-size:max(var(--text-base),16px);color:var(--color-text);background:transparent;border:1px solid var(--color-border);padding:1rem 1.25rem;min-height:48px;width:100%;border-radius:0;-webkit-appearance:none;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--color-text);box-shadow:0 0 0 1px var(--color-text)}input::placeholder,textarea::placeholder{color:var(--color-cream-subtle)}label{font-size:var(--text-sm);letter-spacing:.05em;color:var(--color-cream-muted);display:block;margin-bottom:.5rem}.skip-link{position:absolute;top:-100%;left:50%;transform:translate(-50%);background:var(--color-gold);color:var(--color-bg);padding:.5rem 1.5rem;z-index:999;font-size:var(--text-sm)}.skip-link:focus{top:.5rem}@media(hover:hover){.footer__nav a,.footer__contact a,.stories__info h3,.portfolio__info h2{position:relative}}html,body{max-width:100vw}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-cream-subtle)}:target{scroll-margin-top:100px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.reveal--hero,.reveal--scale{opacity:1;transform:none}html{scroll-behavior:auto}}@media(pointer:coarse){a,button,[role=button],input[type=submit]{min-height:44px;min-width:44px}.testimonials__dot{width:10px;height:10px;padding:8px;background-clip:content-box}}@media(max-width:480px){.container{padding-left:1.5rem;padding-right:1.5rem}h1{font-size:clamp(1.8rem,1.2rem + 3vw,3rem);word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}h2{font-size:clamp(1.6rem,1.2rem + 2.5vw,2.5rem)}.btn{padding:.9rem 1.8rem;width:100%;justify-content:center}}.hero__bg img,.gallery__item img,.services__image img,.ig-feed__item img,.pe-entry__image img{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.footer__nav a,.footer__contact a{position:relative;display:inline}.footer__nav a:after,.footer__contact a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:currentColor;transition:width var(--duration-base) var(--ease-out)}.footer__nav a:hover:after,.footer__contact a:hover:after{width:100%}.cb[data-astro-cid-37fxchfa]{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--color-bg-deep, #0f0f0e);border-top:1px solid rgba(248,245,240,.08);padding:1.5rem;transform:translateY(100%);transition:transform .4s ease}.cb[data-astro-cid-37fxchfa].is-visible{transform:translateY(0)}.cb[data-astro-cid-37fxchfa].is-hidden{display:none}.cb__inner[data-astro-cid-37fxchfa]{max-width:900px;margin:0 auto}.cb__main[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:1.5rem}.cb__title[data-astro-cid-37fxchfa]{font-family:var(--font-serif, "freight-big-pro", serif);font-size:1.15rem;font-weight:400;color:var(--color-light, #f8f5f0);margin:0 0 .35rem;white-space:nowrap}.cb__text[data-astro-cid-37fxchfa]{font-family:var(--font-body, "Nunito Sans", sans-serif);font-size:.8rem;font-weight:300;line-height:1.55;color:#f8f5f099;margin:0;flex:1}.cb__buttons[data-astro-cid-37fxchfa]{display:flex;gap:.5rem;flex-shrink:0}.cb__btn[data-astro-cid-37fxchfa]{font-family:var(--font-sans, "Alata", sans-serif);font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;padding:.7rem 1.25rem;border:1px solid rgba(248,245,240,.3);cursor:pointer;transition:all .25s ease;white-space:nowrap;background:transparent;color:#f8f5f08c}.cb__link[data-astro-cid-37fxchfa]{color:#f8f5f0d9;text-decoration:underline;text-underline-offset:2px;transition:color .2s ease}.cb__link[data-astro-cid-37fxchfa]:hover{color:var(--color-light, #f8f5f0)}.cb__btn[data-astro-cid-37fxchfa]:hover{border-color:#f8f5f099;color:#f8f5f0d9}.cb__btn--accept[data-astro-cid-37fxchfa]{background:var(--color-light, #f8f5f0);color:var(--color-bg-deep, #0f0f0e);border-color:var(--color-light, #f8f5f0)}.cb__btn--accept[data-astro-cid-37fxchfa]:hover{background:#f8f5f0e0;color:var(--color-bg-deep, #0f0f0e)}.cb__btn--save[data-astro-cid-37fxchfa]{background:var(--color-light, #f8f5f0);color:var(--color-bg-deep, #0f0f0e);border-color:var(--color-light, #f8f5f0)}.cb__btn--save[data-astro-cid-37fxchfa]:hover{background:#f8f5f0e0;color:var(--color-bg-deep, #0f0f0e)}.cb__details[data-astro-cid-37fxchfa]{max-height:0;overflow:hidden;transition:max-height .35s ease,margin .35s ease;margin-top:0}.cb__details[data-astro-cid-37fxchfa].is-open{max-height:400px;margin-top:1.25rem}.cb__category[data-astro-cid-37fxchfa]{border-top:1px solid rgba(248,245,240,.06);padding:.85rem 0}.cb__cat-header[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.cb__cat-name[data-astro-cid-37fxchfa]{font-family:var(--font-sans, "Alata", sans-serif);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#f8f5f0d9;margin:0 0 .15rem}.cb__cat-desc[data-astro-cid-37fxchfa]{font-family:var(--font-body, "Nunito Sans", sans-serif);font-size:.72rem;font-weight:300;color:#f8f5f066;margin:0;line-height:1.4}.cb__toggle[data-astro-cid-37fxchfa]{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.cb__toggle[data-astro-cid-37fxchfa] input[data-astro-cid-37fxchfa]{opacity:0;width:0;height:0}.cb__slider[data-astro-cid-37fxchfa]{position:absolute;cursor:pointer;inset:0;background:#f8f5f026;border-radius:22px;transition:background .25s ease}.cb__slider[data-astro-cid-37fxchfa]:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background:#f8f5f080;border-radius:50%;transition:transform .25s ease,background .25s ease}.cb__toggle[data-astro-cid-37fxchfa] input[data-astro-cid-37fxchfa]:checked+.cb__slider[data-astro-cid-37fxchfa]{background:#f8f5f04d}.cb__toggle[data-astro-cid-37fxchfa] input[data-astro-cid-37fxchfa]:checked+.cb__slider[data-astro-cid-37fxchfa]:before{transform:translate(18px);background:var(--color-light, #f8f5f0)}.cb__toggle--locked[data-astro-cid-37fxchfa]{opacity:.45;pointer-events:none}.cb__save-wrap[data-astro-cid-37fxchfa]{padding-top:.85rem;display:flex;justify-content:flex-end}@media(max-width:640px){.cb[data-astro-cid-37fxchfa]{padding:1.25rem 1rem}.cb__main[data-astro-cid-37fxchfa]{flex-direction:column;text-align:center;gap:.75rem}.cb__buttons[data-astro-cid-37fxchfa]{width:100%;justify-content:center;flex-wrap:wrap}.cb__title[data-astro-cid-37fxchfa]{display:none}}.booking-popup[data-astro-cid-37fxchfa]{position:fixed;bottom:1.5rem;right:1.5rem;z-index:900;background:var(--color-bg, #f8f5f0);border:1px solid rgba(30,30,28,.12);box-shadow:0 8px 32px #0000001f;padding:1.75rem 2rem;max-width:280px;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;pointer-events:none}.booking-popup[data-astro-cid-37fxchfa].is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.booking-popup[data-astro-cid-37fxchfa].is-hidden{display:none}.booking-popup__close[data-astro-cid-37fxchfa]{position:absolute;top:.5rem;right:.75rem;background:none;border:none;font-size:1.4rem;color:#1e1e1c73;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s ease}.booking-popup__close[data-astro-cid-37fxchfa]:hover{color:#1e1e1ccc}.booking-popup__title[data-astro-cid-37fxchfa]{font-family:var(--font-serif, "freight-big-pro", serif);font-size:1.5rem;font-weight:400;font-style:italic;letter-spacing:.08em;margin:0 0 .35rem}.booking-popup__sub[data-astro-cid-37fxchfa]{font-family:var(--font-serif, "freight-big-pro", serif);font-size:.9rem;font-weight:300;font-style:italic;color:#1e1e1cb3;margin:0 0 1.25rem}.booking-popup__sub[data-astro-cid-37fxchfa] em[data-astro-cid-37fxchfa]{font-style:italic}.booking-popup__btn[data-astro-cid-37fxchfa]{display:block;font-family:var(--font-sans, "Alata", sans-serif);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;padding:.8rem 1.5rem;border:1px solid var(--color-text, #1e1e1c);color:var(--color-text, #1e1e1c);text-decoration:none;transition:background .3s ease,color .3s ease}.booking-popup__btn[data-astro-cid-37fxchfa]:hover{background:var(--color-text, #1e1e1c);color:var(--color-light, #f8f5f0)}@media(max-width:480px){.booking-popup[data-astro-cid-37fxchfa]{bottom:1rem;right:1rem;max-width:220px;padding:1.25rem 1.5rem}.booking-popup__title[data-astro-cid-37fxchfa]{font-size:1.25rem}.booking-popup__sub[data-astro-cid-37fxchfa]{font-size:.8rem;margin-bottom:1rem}.booking-popup__btn[data-astro-cid-37fxchfa]{padding:.7rem 1.2rem;font-size:.6rem}}:root{--color-bg:#f8f5f0;--color-text:#0f0f0e;--color-light:#faf8f5}[data-astro-cid-37fxchfa],[data-astro-cid-37fxchfa]:before,[data-astro-cid-37fxchfa]:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito Sans,system-ui,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6}img[data-astro-cid-37fxchfa]{max-width:100%;height:auto;display:block}.hero[data-astro-cid-37fxchfa]{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero__bg[data-astro-cid-37fxchfa]{position:absolute;inset:0}.hero__bg[data-astro-cid-37fxchfa] img[data-astro-cid-37fxchfa]{width:100%;height:100%;object-fit:cover}.hero__overlay[data-astro-cid-37fxchfa]{position:absolute;inset:0;background:#0f0f0e26}.hero__content[data-astro-cid-37fxchfa]{position:relative;z-index:1;text-align:center;color:var(--color-light)}.site-header[data-astro-cid-37fxchfa]{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 2rem}.header__logo-img[data-astro-cid-37fxchfa]{height:40px;width:auto}@font-face{font-family:Nunito Sans;src:url(/fonts/nunito-sans-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/nunito-sans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Clash Display;src:url(/fonts/clash-display-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:freight-big-pro;font-display:swap}
