:root{--ivory:#faf6f1;--blush:#ebd3cb;--rose:#c9a39a;--cocoa:#3a2b27;--gold:#b08d57;--muted:#75655e;--line:rgba(176,141,87,.38);--serif:'EB Garamond',Georgia,serif;--sans:'Jost',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ivory);color:var(--cocoa);font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,figure:focus-visible{outline:2px solid var(--cocoa);outline-offset:6px}::selection{background:var(--blush)}.container{max-width:1280px;width:calc(100% - 128px);margin-inline:auto}.section-space{padding-block:126px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.22em;line-height:1.8}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:66px;line-height:1.02;letter-spacing:-.035em}em{font-weight:400}p{line-height:1.8}.skip-link{position:fixed;top:8px;left:8px;z-index:20;background:var(--cocoa);color:var(--ivory);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}.demo-bar{min-height:32px;background:#eee5dc;display:flex;justify-content:center;align-items:center;gap:25px;padding:7px 20px;font-size:10px;letter-spacing:.035em}.demo-bar a{border-bottom:1px solid #9b8072;line-height:1.5}.demo-bar a span{margin-left:5px}.site-header{height:114px;width:calc(100% - 128px);max-width:1280px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:5}.logo{display:inline-flex;flex-direction:column;align-items:center}.logo>span{font-family:var(--serif);font-style:italic;font-size:43px;line-height:1}.logo small{font-size:8px;letter-spacing:.36em;margin-top:8px;padding-left:5px}.site-header nav{display:flex;gap:40px;font-size:12px}.site-header nav a{position:relative;padding-block:8px}.site-header nav a:after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:right .25s}.site-header nav a:hover:after{right:0}.header-book{border:1px solid var(--line);padding:12px 25px;font-size:12px;display:flex;gap:30px;transition:background .25s}.header-book:hover{background:var(--blush)}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:35px;padding-top:64px;padding-bottom:102px;min-height:716px}.hero-copy{padding-top:30px;position:relative;z-index:2}.hero h1{font-size:clamp(78px,7.3vw,108px);line-height:.89;letter-spacing:-.045em;margin-top:25px}.line{display:block;animation:line-in 1s both}.line:nth-child(2){animation-delay:.14s}.line:nth-child(3){animation-delay:.28s}.hero h1 em{color:#956b60}.hero-spark{width:47px;height:47px;margin-left:45px;vertical-align:middle;stroke:var(--gold);stroke-width:.8;fill:none}.hero-description{margin-top:29px;font-size:14px;color:var(--muted);line-height:1.85}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;font-size:12px;letter-spacing:.035em;min-height:50px;padding:15px 25px;border:1px solid var(--cocoa);transition:background .25s,transform .25s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--cocoa);color:var(--ivory)}.button-dark:hover{background:#5b4038}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:12px;border-bottom:1px solid var(--gold);padding-block:6px}.text-link span{transition:transform .25s}.text-link:hover span{transform:translate(3px,-2px)}.hero-location{display:flex;gap:10px;align-items:center;font-size:10px;letter-spacing:.06em;margin-top:29px;color:var(--muted)}.tiny-diamond{width:5px;height:5px;background:var(--gold);transform:rotate(45deg)}.hero-art{position:relative;width:100%;max-width:510px;height:542px;justify-self:end;margin-right:15px}.hero-arch{position:absolute;inset:14px 20px 0 28px;border-radius:999px 999px 0 0;overflow:hidden;background:var(--blush)}.hero-arch img{object-position:center 53%;animation:slow-zoom 18s ease-in-out infinite alternate}.arch-outline{position:absolute;inset:0 3px 17px 13px;border:1px solid var(--gold);border-radius:999px 999px 0 0;opacity:.6}.hero-circle{position:absolute;bottom:19px;left:-66px;width:158px;height:158px;border:7px solid var(--ivory);border-radius:50%;overflow:hidden}.hero-circle img{object-position:center 48%}.vertical-note{position:absolute;right:-15px;top:166px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.23em}.hero-caption{position:absolute;right:-24px;bottom:43px;display:flex;align-items:center;gap:13px;background:var(--ivory);padding:17px 20px}.caption-rule{width:26px;height:1px;background:var(--gold)}.hero-caption p{font-family:var(--serif);font-size:20px;line-height:1.1}.hero-caption small{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.1em;margin-top:7px;color:var(--muted)}.image-index{position:absolute;bottom:-27px;right:20px;font-size:8px;letter-spacing:.16em;color:var(--muted)}.scroll-note{position:absolute;bottom:27px;left:0;display:flex;align-items:center;gap:13px;font-size:8px;letter-spacing:.2em;color:var(--muted)}.scroll-note span{font-size:20px;color:var(--gold)}.marquee{overflow:hidden;border-block:1px solid var(--line);background:#f0e6df;padding:21px 0}.marquee-track{display:flex;width:max-content;animation:marquee 42s linear infinite}.marquee-track>span{white-space:nowrap;font-family:var(--serif);font-size:28px;font-style:italic;display:flex;align-items:center;gap:35px;padding-right:35px}.marquee i{font-style:normal;font-size:13px;color:var(--gold)}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-images{height:568px;position:relative}.about-main{width:70%;height:490px;border-radius:999px 999px 0 0;overflow:hidden}.about-detail{position:absolute;right:0;bottom:13px;width:49%;height:305px;border:8px solid var(--ivory);overflow:hidden}.about-detail img{object-position:45% 60%}.picture-note{position:absolute;bottom:0;left:0;font-family:var(--serif);font-style:italic;font-size:19px;color:var(--muted)}.about-copy h2{margin:22px 0 26px}.about-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:16px;max-width:420px}.stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.stats strong{font-family:var(--serif);font-size:35px;font-weight:400;white-space:nowrap;letter-spacing:-.04em}.stats strong em{font-size:24px}.stats span{display:block;font-size:7px;letter-spacing:.12em;margin-top:7px}.image-hover img{transition:transform 1.3s}.image-hover:hover img{transform:scale(1.045)}.services{background:#f2e9e3}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:60px}.section-heading h2{margin-top:18px}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted);padding-bottom:7px}.service-menu{display:grid;grid-template-columns:1fr 1fr;column-gap:82px;row-gap:30px}.service>div{display:flex;align-items:baseline;gap:12px}.service h3{font-size:27px;white-space:nowrap}.dots{flex:1;border-bottom:1px dotted #bda99b;min-width:8px}.price{white-space:nowrap;font-family:var(--serif);font-size:25px}.price small{font:9px var(--sans);margin-right:3px}.service>p{font-size:11px;margin-top:5px;color:var(--muted)}.menu-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:47px;padding-top:24px;border-top:1px solid var(--line)}.menu-foot>p{font-size:11px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:260px 170px 265px 200px;gap:20px}.gallery-item{position:relative;overflow:hidden;background:var(--blush)}.gallery-item img{transition:transform 1s,filter .5s}.gallery-item:after{content:'';position:absolute;inset:13px;border:1px solid rgba(250,246,241,.8);opacity:0;transition:opacity .4s;pointer-events:none}.gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:13px;padding:46px 24px 25px;background:linear-gradient(transparent,rgba(58,43,39,.72));font-family:var(--serif);font-size:25px;color:var(--ivory);transform:translateY(12px);opacity:0;transition:opacity .4s,transform .4s}.gallery-item figcaption span{font-family:var(--sans);font-size:9px;letter-spacing:.1em}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.045)}.gallery-item:hover:after,.gallery-item:focus-visible:after,.gallery-item:hover figcaption,.gallery-item:focus-visible figcaption{opacity:1;transform:none}.g1{grid-area:1/1/3/5}.g2{grid-area:1/5/2/9}.g3{grid-area:1/9/2/13}.g4{grid-area:2/5/4/9}.g5{grid-area:2/9/4/13}.g6{grid-area:3/1/5/5}.g7{grid-area:4/5/5/13}.g7 img{object-position:center 48%}.gallery-note{text-align:right;margin-top:23px;color:var(--muted);font-family:var(--serif);font-style:italic;font-size:22px}.color-story{height:600px;position:relative;overflow:hidden;background:var(--cocoa);color:var(--ivory)}.color-story>img{position:absolute;object-position:center 45%}.color-overlay{position:absolute;inset:0;background:rgba(35,26,21,.58)}.color-copy{position:relative;max-width:1280px;width:calc(100% - 128px);margin:0 auto;padding-top:94px}.color-copy h2{font-size:78px;margin-top:22px;line-height:1.02}.color-copy>p:last-child{font-size:13px;margin-top:24px;color:#f1e4d9}.color-index{position:absolute;bottom:35px;right:64px;font-size:8px;letter-spacing:.2em}.testimonials-heading{text-align:center}.testimonials-heading h2{margin-top:17px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:52px}.quote{border-top:1px solid var(--line);padding-top:17px}.quote-mark{font-family:var(--serif);font-size:67px;line-height:1;color:#9b7568}.quote blockquote{font-family:var(--serif);font-size:29px;font-style:italic;line-height:1.25;margin:0 0 30px}.quote figcaption{font-size:12px}.quote figcaption span{display:block;margin-top:5px;font-size:7px;letter-spacing:.2em;color:var(--muted)}.booking{background:var(--blush);position:relative;text-align:center;overflow:hidden}.booking:before,.booking:after{content:'';position:absolute;top:60px;bottom:-140px;width:370px;border:1px solid rgba(176,141,87,.32);border-radius:999px 999px 0 0;pointer-events:none}.booking:before{left:-250px}.booking:after{right:-250px}.booking-spark{stroke:var(--gold);stroke-width:.8;fill:none;width:37px;height:37px;margin-bottom:27px}.booking h2{font-size:90px;margin-top:22px}.booking-inner>p:not(.eyebrow){font-size:14px;margin-top:20px}.booking .button{margin-top:30px;gap:18px}.button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.booking-details{display:flex;justify-content:center;gap:28px;margin-top:35px;font-size:10px;color:#644f47}.booking-details span+span{border-left:1px solid #bc9d8d;padding-left:28px}.site-footer{padding-top:58px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:45px}.footer-top>p{font-size:12px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:22px;font-size:9px;color:var(--muted)}.footer-bottom a{color:var(--cocoa)}.reveal{transition:opacity .85s,transform .85s}.js-motion .reveal:not(.is-visible){opacity:0;transform:translateY(24px)}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes slow-zoom{from{transform:scale(1)}to{transform:scale(1.055)}}@keyframes line-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.g7 img{object-position:center 64%}
@media(min-width:1441px){.hero{gap:70px}.hero-art{margin-right:22px}}
@media(max-width:1100px){.container,.site-header{width:calc(100% - 72px)}.hero{gap:20px}.hero h1{font-size:82px}.hero-art{height:490px;margin-right:10px}.hero-circle{left:-30px;width:135px;height:135px}.hero-caption{right:-15px;padding:15px}.hero-spark{width:35px;margin-left:20px}.about{gap:50px}.about-images{height:500px}.about-main{height:420px}.about-detail{height:270px}h2{font-size:58px}.service-menu{column-gap:40px}.service h3{font-size:24px}.color-copy{width:calc(100% - 72px)}.quotes{gap:26px}.quote blockquote{font-size:27px}}
@media(max-width:760px){html{scroll-padding-top:16px}.container,.site-header{width:calc(100% - 40px)}.section-space{padding-block:76px}.demo-bar{padding:8px 14px;gap:3px;flex-wrap:wrap;font-size:8px;line-height:1.4}.demo-bar a{margin-left:8px}.site-header{height:91px}.logo>span{font-size:35px}.logo small{font-size:6px;margin-top:5px}.header-book{padding:10px 14px;gap:15px;font-size:11px;margin-left:auto;margin-right:19px;order:1}.menu-toggle{display:flex;gap:8px;align-items:center;background:none;border:0;padding:12px 0;font-size:10px;order:2}.menu-toggle i{display:block;width:17px;height:9px;border-block:1px solid currentColor;transition:transform .25s}.menu-toggle[aria-expanded=true] i{transform:rotate(-45deg)}.site-header nav{display:none;position:absolute;top:90px;left:-20px;right:-20px;background:var(--ivory);padding:24px;box-shadow:0 10px 15px #3a2b2708;border-bottom:1px solid var(--line);gap:24px;justify-content:center;font-size:12px}.site-header nav.is-open{display:flex}.hero{padding-top:39px;padding-bottom:70px;display:flex;flex-direction:column;gap:34px;min-height:0}.hero-copy{padding-top:0}.eyebrow{font-size:8px;letter-spacing:.19em}.hero h1{font-size:75px;line-height:.91;margin-top:20px;letter-spacing:-.05em}.hero h1 .line:nth-child(2),.hero h1 .line:nth-child(3){display:inline}.hero h1 .line:nth-child(2):after{content:' '}.hero-spark{width:29px;height:29px;margin-left:14px}.hero-description{font-size:12px;margin-top:22px}.hero-actions{gap:25px;margin-top:23px}.button{font-size:11px;min-height:48px;padding:14px 21px;gap:25px}.text-link{font-size:11px;gap:14px}.hero-location{margin-top:22px;font-size:9px}.hero-art{height:408px;max-width:400px;width:calc(100% - 14px);margin-right:0;align-self:center}.hero-arch{inset:12px 14px 0 23px}.arch-outline{inset:0 0 14px 10px}.vertical-note{font-size:6px;right:-9px;top:140px}.hero-circle{left:-8px;bottom:19px;width:112px;height:112px;border-width:5px}.hero-caption{right:-5px;bottom:35px;padding:13px 14px;gap:9px}.hero-caption p{font-size:17px}.hero-caption small{font-size:8px}.caption-rule{width:17px}.image-index{font-size:6px;bottom:-22px;right:15px}.scroll-note{bottom:15px;font-size:7px;gap:8px}.scroll-note span{font-size:17px}.marquee{padding-block:16px}.marquee-track>span{font-size:23px;gap:23px;padding-right:23px}.marquee i{font-size:10px}.about{display:flex;flex-direction:column;gap:42px}.about-images{width:100%;height:435px;max-width:440px}.about-main{height:370px;width:72%}.about-detail{width:48%;height:245px;bottom:13px;border-width:6px}.picture-note{font-size:17px;bottom:-2px}.about-copy{width:100%}h2{font-size:49px}.about-copy h2{margin-top:17px;margin-bottom:20px}.about-copy>p:not(.eyebrow){font-size:12px}.stats{gap:8px;margin-top:28px}.stats strong{font-size:30px}.stats strong em{font-size:21px}.stats span{font-size:6px;letter-spacing:.06em;line-height:1.6}.section-heading{display:block;margin-bottom:36px}.section-heading>p{margin-top:22px;font-size:12px}.section-heading h2{margin-top:15px}.service-menu{grid-template-columns:1fr;gap:24px}.service:nth-child(1){order:1}.service:nth-child(3){order:2}.service:nth-child(5){order:3}.service:nth-child(7){order:4}.service:nth-child(2){order:5}.service:nth-child(4){order:6}.service:nth-child(6){order:7}.service:nth-child(8){order:8}.service h3{font-size:25px}.price{font-size:24px}.service>p{font-size:11px}.menu-foot{display:block;margin-top:33px;padding-top:20px}.menu-foot>p{font-size:10px}.menu-foot>a{margin-top:13px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 185px 225px 210px;gap:12px}.g1{grid-area:1/1/3/2}.g2{grid-area:1/2/2/3}.g3{grid-area:2/2/3/3}.g4{grid-area:3/1/4/2}.g5{grid-area:3/2/4/3}.g6{grid-area:4/1/5/2}.g7{grid-area:4/2/5/3}.gallery-item figcaption{padding:30px 13px 15px;font-size:18px;gap:6px;opacity:1;transform:none}.gallery-item figcaption span{font-size:7px}.gallery-item:after{inset:7px}.gallery-note{font-size:18px;text-align:left;line-height:1.5;margin-top:20px}.color-story{height:490px}.color-copy{width:calc(100% - 40px);padding-top:85px}.color-copy h2{font-size:54px;margin-top:23px}.color-copy>p:last-child{font-size:11px;margin-top:25px}.color-story>img{object-position:57% center}.color-index{right:20px;bottom:25px;font-size:6px;letter-spacing:.12em}.quotes{grid-template-columns:1fr;gap:32px;margin-top:37px}.quote{padding-top:12px}.quote-mark{font-size:57px}.quote blockquote{font-size:29px;margin-bottom:20px}.quote figcaption{font-size:11px}.quote figcaption span{font-size:6px}.booking h2{font-size:66px}.booking-inner>p:not(.eyebrow){font-size:12px}.booking-details{flex-direction:column;gap:8px;margin-top:27px;font-size:10px}.booking-details span+span{border:0;padding:0}.booking:before{left:-320px}.booking:after{right:-320px}.footer-top{flex-wrap:wrap;gap:26px;padding-bottom:28px}.footer-top>p{font-size:10px}.footer-top>.text-link{width:max-content}.site-footer{padding-top:40px}.footer-bottom{display:block;font-size:8px;padding-top:20px}.footer-bottom a{display:inline-block;margin-top:12px}.booking-spark{margin-bottom:24px}}
@media(max-width:760px){.hero h1{position:relative}.hero-spark{position:absolute;right:8px;top:78px;width:23px;height:23px;margin:0}}
@media(max-width:374px){.hero h1{font-size:66px}.hero-actions{gap:16px}.hero-art{height:370px}.header-book{margin-right:12px}.service h3{font-size:23px}.price{font-size:22px}h2{font-size:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.is-visible){opacity:1;transform:none}.marquee-track{width:100%}.marquee-track>span{white-space:normal;flex-wrap:wrap;justify-content:center;gap:12px;font-size:21px;padding:0 20px}.marquee-track>span+span{display:none}}

/* Shared language switch in the demo notice. */
.demo-bar .language-switch{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:10px;letter-spacing:.08em}.demo-bar .language-switch a{border:0;margin:0;padding:3px 2px;color:var(--muted)}.demo-bar .language-switch a[aria-current="page"]{color:var(--cocoa);font-weight:500;border-bottom:1px solid var(--gold)}.demo-bar .language-switch a:hover{color:var(--cocoa)}.demo-bar .language-switch span{color:var(--rose)}
@media(max-width:760px){.demo-bar .language-switch{margin-left:8px;font-size:8px}}
