:root{--black:#090909;--soft-black:#11110f;--gold:#d8ae55;--gold-light:#f3d895;--cream:#f3ecdf;--white:#faf8f2;--line:#2d2b26;--font-sans:"Manrope",sans-serif;--font-impact:"Anton","Arial Narrow",sans-serif;--font-editorial:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--font-sans),sans-serif}body.modalOpen{overflow:hidden}[hidden]{display:none!important}button,input,select{font:inherit}button,a{color:inherit}a{text-decoration:none}.conceptBar{height:25px;display:grid;place-items:center;background:var(--gold);color:var(--black);font-size:9px;font-weight:800;letter-spacing:.19em}.topNav{height:86px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#090909ed;backdrop-filter:blur(16px);position:sticky;top:0;z-index:30}.logo{display:flex;align-items:center;gap:9px}.logoStar{font-size:31px;color:var(--gold);line-height:1}.logo b{display:block;font:400 31px/1 var(--font-impact);letter-spacing:.08em}.logo small{display:block;margin-top:5px;font-size:7px;font-weight:700;letter-spacing:.47em;color:var(--gold-light)}.navLinks{display:flex;align-items:center;gap:34px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.navLinks>a:hover{color:var(--gold)}.menuButton{display:none;width:44px;height:44px;border:0;background:none}.menuButton span{display:block;width:25px;height:1px;background:var(--gold);margin:7px auto}
.goldButton,.outlineButton{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 21px;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.11em;cursor:pointer}.goldButton{background:var(--gold);color:var(--black)}.goldButton:hover{background:var(--gold-light)}.goldButton.compact{padding:13px 17px}.outlineButton{border:1px solid #68604f;background:transparent;color:var(--white)}.outlineButton span{color:var(--gold);font-size:9px;margin-left:8px}
.hero{display:grid;grid-template-columns:52% 48%;min-height:calc(100vh - 111px)}.heroCopy{padding:7vw 5vw 4vw;display:flex;flex-direction:column;justify-content:center;position:relative;background:radial-gradient(circle at 20% 30%,#2c2415 0,transparent 32%),var(--black)}.kicker,.eyebrow{color:var(--gold);font-size:9px;font-weight:800;letter-spacing:.25em}.kicker span{display:inline-block;width:35px;height:1px;background:var(--gold);vertical-align:middle;margin-right:11px}.hero h1{margin:24px 0 28px;font:400 clamp(70px,9.2vw,150px)/.78 var(--font-impact);letter-spacing:-.02em}.hero h1 span,.hero h1 strong,.hero h1 em{display:block}.hero h1 strong{color:transparent;-webkit-text-stroke:1px var(--gold);font-weight:400}.hero h1 em{font:600 italic .74em/.9 var(--font-editorial);color:var(--gold-light);letter-spacing:-.05em}.heroText{max-width:520px;color:#c2bbaa;font-size:16px;line-height:1.65}.heroButtons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.heroProof{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:6vh;padding-top:18px;max-width:620px}.heroProof div{border-right:1px solid var(--line);padding:0 16px}.heroProof div:first-child{padding-left:0}.heroProof div:last-child{border:0}.heroProof b,.heroProof span{display:block}.heroProof b{font:400 19px var(--font-impact);letter-spacing:.05em}.heroProof span{color:#827b6d;font-size:7px;letter-spacing:.2em;margin-top:5px}.heroImage{min-height:690px;position:relative;overflow:hidden;background:linear-gradient(90deg,#09090960,transparent 30%),url('/star-hero.png') center/cover no-repeat,#19150d}.giantStar{position:absolute;left:24px;top:32px;writing-mode:vertical-rl;transform:rotate(180deg);font:400 clamp(72px,8vw,130px)/1 var(--font-impact);color:transparent;-webkit-text-stroke:1px #d8ae5555;letter-spacing:.03em;white-space:nowrap}.imageLabel{position:absolute;bottom:21px;left:24px;right:24px;display:flex;justify-content:space-between;padding-top:13px;border-top:1px solid #ffffff6b;font-size:8px;letter-spacing:.22em}.seal{position:absolute;right:26px;top:28px;width:104px;height:104px;border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:7px;background:#090909a8;backdrop-filter:blur(8px)}.seal span{color:var(--gold);font-size:25px}.seal b{font:400 12px/1.1 var(--font-impact);letter-spacing:.08em}
.ticker{overflow:hidden;background:var(--gold);color:var(--black);padding:14px 0;white-space:nowrap}.ticker div{font:400 21px var(--font-impact);letter-spacing:.12em;text-align:center}.ticker span{font-size:12px;margin:0 20px}.services{background:var(--cream);color:var(--black);padding:9vw 5vw}.sectionHeading{display:grid;grid-template-columns:22% 48% 30%;align-items:end;margin-bottom:65px}.sectionHeading h2,.showcaseCopy h2,.visit h2,.finalCta h2,.bookingModal h2{font:400 clamp(58px,7vw,105px)/.84 var(--font-impact);margin:0}.sectionHeading h2 i,.showcaseCopy h2 i,.visit h2 i,.finalCta h2 i,.bookingModal h2 i{font-family:var(--font-editorial);font-weight:600;color:#9a7023}.sectionHeading>p:last-child{font-size:13px;line-height:1.8;color:#665f52}.serviceGrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #b4aa98}.serviceGrid article{padding:25px 22px 30px;min-height:365px;border-right:1px solid #b4aa98;display:flex;flex-direction:column}.serviceGrid article:first-child{border-left:1px solid #b4aa98}.serviceGrid article>span{font:400 15px var(--font-impact);color:#9a7023}.serviceIcon{margin:30px 0;color:#9a7023;font-size:25px}.serviceGrid h3{font:400 31px/1.05 var(--font-impact);text-transform:uppercase;letter-spacing:.02em}.serviceGrid p{font-size:12px;line-height:1.7;color:#6c6457}.serviceGrid button{margin-top:auto;border:0;border-top:1px solid #b4aa98;padding:15px 0 0;background:none;text-align:left;font-size:8px;font-weight:800;letter-spacing:.15em;cursor:pointer}.serviceGrid button b{float:right;color:#9a7023;font-size:16px}
.showcase{display:grid;grid-template-columns:64% 36%;min-height:780px}.showcaseImage{background:linear-gradient(0deg,#09090960,transparent 30%),url('/star-gallery.png') center/cover no-repeat,#18150e;position:relative}.showcaseImage>div{position:absolute;left:32px;bottom:27px;font:400 clamp(58px,7vw,110px)/.79 var(--font-impact);color:#fff}.showcaseImage b{color:var(--gold)}.showcaseCopy{padding:7vw 4.5vw;display:flex;flex-direction:column;justify-content:center;background:var(--soft-black)}.showcaseCopy h2{font-size:clamp(65px,7vw,106px);margin:35px 0}.showcaseCopy>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#a9a293}.miniStats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-top:1px solid var(--line)}.miniStats div{padding-top:20px}.miniStats strong,.miniStats span{display:block}.miniStats strong{font:400 29px var(--font-impact);color:var(--gold)}.miniStats span{font-size:7px;letter-spacing:.16em;color:#776f62}
.visit{padding:9vw 5vw;background:#efe6d7;color:var(--black)}.visitTitle{display:flex;justify-content:space-between;align-items:start;gap:40px}.visitTitle h2{text-align:right}.visitCards{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #a99e8c}.visitCards article{padding:30px;border-right:1px solid #a99e8c;min-height:270px}.visitCards article:first-child{border-left:1px solid #a99e8c}.visitCards article>span{font-size:8px;letter-spacing:.22em;color:#8a661f}.visitCards h3{font:400 34px/1.04 var(--font-impact);text-transform:uppercase;margin:45px 0 12px}.visitCards p{font-size:12px;color:#756c5f}.visitCards a,.visitCards button{display:block;border:0;border-top:1px solid #a99e8c;background:none;width:100%;padding:15px 0 0;margin-top:30px;text-align:left;font-size:8px;font-weight:800;letter-spacing:.15em;cursor:pointer}.finalCta{text-align:center;padding:10vw 5vw;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,#312812,transparent 50%),var(--black)}.ctaStar{position:absolute;font-size:500px;color:#d8ae550a;left:50%;top:50%;transform:translate(-50%,-50%)}.finalCta>p{font-size:9px;letter-spacing:.25em;color:var(--gold)}.finalCta h2{position:relative;font-size:clamp(75px,10vw,150px);margin:30px 0}.finalCta .goldButton{position:relative}
footer{padding:60px 5vw 90px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:40px}.footerLogo{font-size:inherit}footer>p{font-size:12px;color:#8c8476}footer>div{display:flex;gap:22px;font-size:8px;font-weight:800;letter-spacing:.15em}footer>div button{border:0;background:none;font:inherit;letter-spacing:inherit;color:var(--gold);cursor:pointer}footer>small{grid-column:1/-1;color:#5c574f;font-size:8px}.mobileActions{display:none}
.modalBackdrop{position:fixed;inset:0;background:#000c;z-index:100;display:grid;place-items:center;padding:20px}.bookingModal{width:min(720px,100%);max-height:92vh;overflow:auto;background:var(--cream);color:var(--black);padding:50px;position:relative;border:1px solid var(--gold)}.closeButton{position:absolute;right:18px;top:12px;border:0;background:none;font-size:35px;cursor:pointer}.bookingModal h2{font-size:70px;margin:25px 0 35px}.bookingModal form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.bookingModal label{font-size:8px;font-weight:800;letter-spacing:.15em}.bookingModal input,.bookingModal select{display:block;width:100%;border:0;border-bottom:1px solid #9c927f;background:transparent;padding:13px 0;outline:0}.bookingModal form .goldButton{grid-column:1/-1}.demoNote{font-size:8px;color:#766e61;margin:25px 0 0}.success{text-align:center;padding:20px}.success>span{font-size:60px;color:#9a7023}.success h3{font:400 42px var(--font-impact)}.success p{font-size:12px;line-height:1.7}.success .outlineButton{color:var(--black);border-color:#9c927f;margin-top:20px}
@media(max-width:950px){.menuButton{display:block}.navLinks{display:none;position:absolute;top:86px;left:0;right:0;background:var(--black);padding:28px 5vw;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.navLinks.open{display:flex}.hero{grid-template-columns:1fr}.heroCopy{min-height:700px;padding:12vw 7vw}.heroImage{min-height:750px}.sectionHeading{grid-template-columns:1fr;gap:30px}.serviceGrid{grid-template-columns:1fr 1fr}.showcase{grid-template-columns:1fr}.showcaseImage{min-height:680px}.visitTitle{display:block}.visitTitle h2{text-align:left;margin-top:35px}.visitCards{grid-template-columns:1fr}.visitCards article{border-left:1px solid #a99e8c;border-bottom:1px solid #a99e8c}footer{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.conceptBar{font-size:7px}.topNav{height:74px}.navLinks{top:74px}.logo b{font-size:27px}.heroCopy{min-height:640px;padding:18vw 6vw 12vw}.hero h1{font-size:76px}.heroText{font-size:14px}.heroButtons{align-items:stretch;flex-direction:column}.heroButtons>*{width:100%}.heroProof{grid-template-columns:1fr 1fr}.heroProof div{margin-bottom:14px}.heroProof div:nth-child(2){border:0}.heroImage{min-height:510px}.seal{width:84px;height:84px}.ticker div{text-align:left}.services,.visit{padding:20vw 6vw}.sectionHeading h2,.visit h2{font-size:59px}.serviceGrid{grid-template-columns:1fr}.serviceGrid article{border-left:1px solid #b4aa98;border-bottom:1px solid #b4aa98;min-height:290px}.showcaseImage{min-height:450px}.showcaseImage>div{font-size:56px;left:18px}.showcaseCopy{padding:20vw 7vw}.showcaseCopy h2{font-size:72px}.visitCards article{min-height:235px;padding:25px}.finalCta{padding:24vw 6vw}.finalCta h2{font-size:72px}footer{grid-template-columns:1fr;padding-bottom:110px}.footerLogo{grid-column:1/-1}footer>div{flex-wrap:wrap}.mobileActions{display:grid;grid-template-columns:1fr 1fr 1.2fr;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--black);border-top:1px solid var(--gold)}.mobileActions a,.mobileActions button{padding:16px 8px;text-align:center;border:0;border-right:1px solid var(--line);background:none;color:white;text-transform:uppercase;font-size:8px;font-weight:800;letter-spacing:.1em}.mobileActions button{background:var(--gold);color:var(--black)}.bookingModal{padding:42px 24px}.bookingModal h2{font-size:52px}.bookingModal form{grid-template-columns:1fr}.bookingModal form .goldButton{grid-column:1}.modalBackdrop{padding:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
