*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#eee8f2;color:#35223f;font:15px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #855891;outline-offset:4px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(28px,3.5vw,49px);line-height:1.3;letter-spacing:.015em;font-weight:500}h3{font-weight:400}[hidden]{display:none!important}.skip{position:absolute;top:-90px}.skip:focus{top:0;z-index:99;padding:20px;background:white}.demo{background:#21152e;color:#fff;display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:.1em;padding:9px 25px}header{position:sticky;top:0;z-index:5;background:#faf7fc;display:flex;align-items:center;justify-content:space-between;padding:18px 28px;gap:25px}.logo{font:24px Georgia,serif;letter-spacing:.25em}nav{display:flex;gap:25px}nav a,.outline,.eyebrow,.line-button,.white-button,.solid{font-size:11px;letter-spacing:.13em}.outline{border:1px solid;padding:10px 25px;white-space:nowrap}#nav-toggle{display:none}.hero{height:calc(100svh - 105px);min-height:560px;max-height:950px;position:relative;background:#21152e}.hero>img{height:100%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#1a102510,#1a102500 30%,#1a1025bb)}.hero-caption{position:absolute;inset:auto 5% 35px;color:#ead6b5;z-index:1;text-align:center}.hero-caption>p{font-size:12px;letter-spacing:.3em;margin-bottom:20px}.hero h1{font:clamp(48px,11vw,165px)/1 Georgia,serif;letter-spacing:.12em;margin:0 0 40px}.hero-caption>div{display:flex;justify-content:space-between;color:white;font-size:10px;letter-spacing:.15em}.intro{text-align:center;max-width:1050px;margin:auto;padding:110px 35px 120px}.eyebrow{margin-bottom:25px}.intro h2{color:#795581}.intro>p:not(.eyebrow){max-width:810px;margin:20px auto;line-height:1.9}.line-button{display:inline-block;border-bottom:1px solid #795581;padding:15px 0 6px;margin-top:12px}.section-heading{text-align:center;padding:30px 20px 50px}.section-heading h2{margin-bottom:15px;color:#795581}.space-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:0 30px}.space-grid article{height:620px;position:relative;overflow:hidden}.space-grid img{height:100%;transition:transform .7s}.space-grid article:hover img{transform:scale(1.025)}.space-grid article:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#1a1025bb)}.space-grid article>div{position:absolute;bottom:45px;left:25px;right:25px;text-align:center;color:white;z-index:1}.space-grid h3{font:48px Georgia,serif;margin:15px 0 22px}.space-grid p{font-size:9px;letter-spacing:.2em}.white-button{padding:12px 22px;border:1px solid #fff;color:#fff}.menu-section{display:grid;grid-template-columns:1fr 1fr;margin-top:120px;background:#2c1939;color:#f4edf5}.menu-image img{height:100%;min-height:760px}.menu-copy{padding:70px 55px}.menu-copy h2{color:#e6cda1;font-size:38px}.filters{display:flex;gap:25px;margin:35px 0 15px;flex-wrap:wrap}.filters button{color:#ddd0e6;font-size:10px;padding:9px 0;border-bottom:1px solid transparent;letter-spacing:.1em}.filters button[aria-pressed=true]{border-color:#e6cda1;color:#e6cda1}.menu-list article{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff30;padding:18px 0}.menu-list h3{font:24px Georgia,serif;margin-bottom:8px}.menu-list p{font-size:12px;margin:0;color:#d9cde1}.small{font-size:11px;line-height:1.7;opacity:.8}.menu-copy .small{margin-top:30px}.occasion{position:relative;min-height:620px;margin:100px 30px}.occasion img{position:absolute;height:100%}.occasion:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#21152eee,#21152e30)}.occasion>div{position:relative;z-index:1;color:white;padding:110px 7%;max-width:700px}.occasion h2{color:#e6cda1}.occasion p{max-width:420px}.occasion button{margin-top:25px}.gallery-section{padding:0 30px 100px}.gallery{display:grid;grid-template-columns:1fr .8fr 1fr;gap:20px}.gallery button{padding:0;position:relative;text-align:left}.gallery img{height:410px}.gallery span{display:block;font-size:10px;letter-spacing:.15em;padding-top:15px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:85px 10%;background:#e3d8e9}.visit h2{color:#795581;font-size:50px}.visit h3{font:30px Georgia,serif}.visit details{border-top:1px solid #b7a3bf;padding:15px 0}.visit summary{cursor:pointer}.visit details p{font-size:13px;padding-top:15px}footer{text-align:center;background:#21152e;color:#f4edf5;padding:75px 25px 40px}footer .logo{font-size:38px;letter-spacing:.25em}footer>p{margin-top:30px}footer>div{display:flex;justify-content:center;gap:35px;font-size:10px;letter-spacing:.12em}footer .small{margin-top:40px}dialog{border:0;width:550px;max-width:94vw;max-height:92dvh;padding:35px;background:#eee8f2;color:#35223f}dialog::backdrop{background:#1a1025b8;backdrop-filter:blur(4px)}dialog h2{font-size:34px;color:#795581}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-head button,#lightbox>button{font-size:30px;padding:0 8px}.dialog-head p{margin:0;font-size:9px}form{display:grid;gap:17px}label{font-size:12px;display:block}input,select,textarea{display:block;width:100%;border:1px solid #ad96b8;background:#faf7fc;padding:11px;margin-top:6px;border-radius:0;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.solid{background:#35223f;color:white;border:1px solid #35223f;padding:16px 20px;width:100%;margin-top:8px}.result:empty{display:none}.result{border-top:1px solid #b7a3bf;padding-top:18px;font-size:14px}#space img{height:250px;margin:20px 0}#lightbox{width:1050px;background:#21152e;color:white;padding:20px}#lightbox>button{display:block;margin-left:auto;color:white}#lightbox img{max-height:72dvh;object-fit:contain}#lightbox p{margin:15px 0 0}body:has(dialog[open]){overflow:hidden}
@media(max-width:1050px){nav{gap:15px}nav a{font-size:9px}.logo{font-size:20px;letter-spacing:.18em}header{gap:15px;padding:15px 20px}.outline{padding:10px 15px;font-size:10px}.space-grid article{height:510px}.menu-copy{padding:45px 30px}.menu-copy h2{font-size:32px}.visit{gap:45px;padding:70px 6%}.gallery img{height:320px}}
@media(max-width:750px){#nav-toggle{display:block;margin-left:auto;font-size:10px}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px;background:#faf7fc;flex-direction:column;border-top:1px solid #ccc}nav.open{display:flex}nav a{font-size:12px;padding:8px 0}.demo{padding:8px 12px;font-size:8px}.demo span{display:none}.hero{height:72svh;min-height:470px}.hero-caption{bottom:30px}.hero h1{font-size:10vw;letter-spacing:.08em}.hero-caption>div span{max-width:180px;text-align:left;line-height:1.8}.hero-caption>p{font-size:10px}.intro{padding:70px 24px}.intro h2{font-size:30px}.intro p{font-size:14px}.space-grid{gap:15px;padding:0 15px}.space-grid article{height:430px}.space-grid h3{font-size:34px}.space-grid article>div{left:15px;right:15px;bottom:30px}.white-button{font-size:9px;padding:12px}.menu-section{grid-template-columns:1fr;margin-top:70px}.menu-image img{height:400px;min-height:0}.menu-copy{padding:45px 25px}.occasion{margin:60px 15px;min-height:540px}.occasion>div{padding:90px 30px}.gallery-section{padding:0 15px 60px}.gallery{gap:12px;grid-template-columns:1fr 1fr}.gallery button:last-child{grid-column:1/-1}.gallery img{height:270px}.visit{grid-template-columns:1fr;gap:40px;padding:60px 25px}.visit h2{font-size:42px}footer .logo{font-size:28px}footer>div{flex-direction:column;gap:20px}.section-heading{padding-bottom:30px}dialog{padding:25px}dialog h2{font-size:29px}}
@media(max-width:480px){header{padding:14px 12px;gap:10px}.logo{font-size:16px;letter-spacing:.13em}.outline{font-size:8px;padding:10px}.space-grid{grid-template-columns:1fr;gap:20px}.space-grid article{height:480px}.space-grid h3{font-size:42px}.section-heading h2{font-size:27px}.gallery img{height:220px}.gallery button:last-child img{height:280px}.hero-caption>p{letter-spacing:.2em}.hero-caption>div{font-size:8px}.form-row{gap:12px}.menu-copy h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.space-grid img{transition:none}}

/* Distinct showcase brand identity. */
h1,h2,h3,.logo,.hero h1,.space-grid h3,.menu-list h3,.visit h3{font-family:"Helvetica Neue",Arial,sans-serif}.hero h1{font-weight:200;letter-spacing:.1em}.logo{font-weight:300}h2{font-weight:300}.space-grid h3{font-weight:300}
