:root{--navy:#102a36;--navy-2:#173643;--ink:#1d3037;--muted:#68777c;--cream:#f6f4ee;--cream-2:#eeeee8;--gold:#e6ba54;--line:#dfe2dd;--white:#fff;--font-head:'Outfit',sans-serif;--font-body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--font-body);font-size:16px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section-pad{padding:112px 0}.topline{background:var(--navy);color:#dce7e9;font-size:11px;font-weight:700;letter-spacing:.13em}.topline-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topline a:hover{color:var(--gold)}.site-header{position:relative;z-index:20;background:#fff}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:11px;color:var(--navy);font:800 19px/1 var(--font-head);letter-spacing:.08em;white-space:nowrap}.brand img{width:54px;height:54px;object-fit:contain}.brand small{display:block;font-size:11px;letter-spacing:.26em;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:33px;margin-left:auto}.site-header nav a{font-size:13px;font-weight:700;color:#34474d}.site-header nav a:hover,.text-link:hover{color:#bd8a22}.mobile-call,.menu-toggle{display:none!important}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:51px;padding:0 24px;border:1px solid transparent;font:700 12px/1 var(--font-body);text-transform:uppercase;letter-spacing:.11em;transition:transform .2s,background .2s,color .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:17px;line-height:1}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#244755}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover{background:#f0cb72}.button-outline{border-color:rgba(255,255,255,.7);color:#fff}.button-outline:hover{background:#fff;color:var(--navy)}.button-outline svg{width:16px;height:16px;fill:currentColor}.hero{min-height:640px;height:min(700px,calc(100svh - 122px));position:relative;overflow:hidden;background:#132c36;color:#fff}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media{background:#132c36}.hero-media iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100vh;transform:translate(-50%,-50%);border:0;pointer-events:none}.hero-shade{background:linear-gradient(90deg,rgba(9,31,40,.91) 0%,rgba(9,31,40,.78) 31%,rgba(9,31,40,.23) 72%,rgba(9,31,40,.11) 100%),linear-gradient(0deg,rgba(9,31,40,.32),transparent 45%)}.hero-content{position:relative;z-index:1;padding-top:clamp(105px,12vw,176px)}.eyebrow{display:flex;align-items:center;gap:13px;color:#a77922;font:700 11px/1.2 var(--font-body);letter-spacing:.19em;text-transform:uppercase;margin:0 0 26px}.eyebrow.light{color:var(--gold)}.eyebrow-line{height:1px;width:27px;background:currentColor;flex:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-head)}h1{font-size:clamp(58px,7vw,106px);line-height:.99;letter-spacing:-.045em;font-weight:600;margin-bottom:30px}h1 em,h2 em{font-style:normal;color:var(--gold)}.hero-lede{max-width:515px;color:#e4e9e8;font-size:17px;line-height:1.7;margin-bottom:29px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-index{position:absolute;z-index:1;right:max(24px,calc((100vw - 1160px)/2));bottom:37px;display:flex;align-items:center;gap:13px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.18em}.hero-index-line{width:48px;height:1px;background:rgba(255,255,255,.7)}.quickfacts{background:#fff;border-bottom:1px solid var(--line)}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}.facts-grid>div{min-height:120px;display:flex;align-items:center;gap:16px;padding:20px 16px;border-right:1px solid var(--line)}.facts-grid>div:first-child{padding-left:0}.facts-grid>div:last-child{border-right:0}.fact-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #d9ccaf;color:#b4882e;font:25px/1 var(--font-head);flex:none}.facts-grid strong,.facts-grid small{display:block}.facts-grid strong{font:700 15px/1.25 var(--font-head)}.facts-grid small{font-size:12px;color:var(--muted);margin-top:5px}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%;align-items:center}.intro-copy{padding:20px 0}.intro h2,.section-heading h2,.seo-sidebar h2,.faq-grid h2,.contact-copy h2,.location-copy h2{font-size:clamp(40px,4.5vw,62px);line-height:1.08;letter-spacing:-.04em;font-weight:600;margin-bottom:25px}.intro h2 em,.section-heading h2 em,.seo-sidebar h2 em,.faq-grid h2 em{color:#b68b35}.intro-copy>p:not(.eyebrow),.section-heading>p,.seo-sidebar>p:not(.eyebrow),.faq-grid>div:first-child>p:not(.eyebrow){max-width:490px;color:#5e6b6d;line-height:1.9}.text-link{display:inline-flex;align-items:center;gap:23px;border-bottom:1px solid #bca36f;padding-bottom:7px;margin-top:21px;font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.text-link span{font-size:18px}.intro-photo-wrap{position:relative;padding:0 0 34px 32px}.intro-photo-wrap:before{content:'';position:absolute;left:0;bottom:0;width:72%;height:70%;background:#e9ddc3}.intro-photo-wrap>img{position:relative;width:100%;aspect-ratio:1.12;object-fit:cover}.photo-note{position:absolute;right:-23px;bottom:0;background:var(--navy);color:#fff;padding:20px 25px;display:flex;gap:20px;align-items:center;min-width:255px}.photo-note span{font-size:13px;color:var(--gold)}.photo-note p{font-size:12px;line-height:1.45;margin:0}.photo-note strong{font-size:14px}.amenities-section{background:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{width:350px;flex:none;margin-bottom:6px;font-size:14px}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.amenity-grid article{min-height:295px;padding:24px 29px 26px;border-right:1px solid var(--line);display:flex;flex-direction:column}.amenity-grid article:last-child{border-right:0}.amenity-num{color:#aab2ae;font-size:11px;font-weight:700;letter-spacing:.12em}.amenity-symbol{height:95px;display:flex;align-items:center;color:#b88729;font:44px/1 var(--font-head)}.amenity-grid h3{font-size:21px;font-weight:600;line-height:1.2;margin-bottom:10px}.amenity-grid p{color:#68777b;font-size:13px;line-height:1.7;margin:0}.gallery-section{background:var(--cream-2)}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:repeat(2,240px);gap:14px}.gallery-grid figure{position:relative;margin:0;overflow:hidden;background:#d6d6cd}.gallery-grid .gallery-large{grid-row:1/3}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.gallery-grid figure:hover img{transform:scale(1.04)}.gallery-grid figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(6,25,32,.68));color:#fff;padding:36px 20px 16px;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.location-section{background:var(--navy);color:#fff;padding:0}.location-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;min-height:600px}.location-visual{position:relative;min-height:500px;margin-left:calc((min(1160px,100vw - 48px) - 100vw)/2);overflow:hidden}.location-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.location-stamp{position:absolute;bottom:30px;right:30px;background:var(--gold);color:var(--navy);padding:20px 25px;font:700 10px/1.5 var(--font-body);letter-spacing:.13em}.location-stamp strong{font:700 19px/1.2 var(--font-head);letter-spacing:0}.location-copy{padding:100px 10px 100px 12%;align-self:center}.location-copy h2{margin-bottom:26px}.location-copy>p:not(.eyebrow){color:#c9d4d6;line-height:1.9}.address-block{border-top:1px solid #3b535c;border-bottom:1px solid #3b535c;padding:20px 0;margin:28px 0;display:flex;gap:35px;align-items:start}.address-block span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.14em;white-space:nowrap;margin-top:5px}.address-block strong{font:500 17px/1.5 var(--font-head)}.seo-section{background:#fff}.seo-layout{display:grid;grid-template-columns:340px 1fr;gap:11%}.seo-sidebar{position:sticky;top:45px;align-self:start}.seo-sidebar h2{font-size:clamp(39px,4vw,55px)}.seo-body article{padding-bottom:37px;margin-bottom:38px;border-bottom:1px solid var(--line)}.seo-body article:last-child{margin-bottom:0;padding-bottom:0;border:0}.seo-kicker{font-size:10px;font-weight:800;letter-spacing:.17em;color:#a47b2a}.seo-body h3{font-size:27px;line-height:1.25;letter-spacing:-.02em;font-weight:600;margin:13px 0 17px}.seo-body p{color:#5c6a6d;font-size:14px;line-height:1.9;margin-bottom:15px}.seo-body p:last-child{margin-bottom:0}.seo-body a{color:#8c651f;text-decoration:underline;text-underline-offset:3px}.projects-section{background:var(--cream)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.project-card{position:relative;min-height:310px;background:#fff;border:1px solid var(--line);padding:27px 26px;display:flex;flex-direction:column}.project-region{font-size:10px;font-weight:800;letter-spacing:.13em;color:#a47b2a;max-width:210px}.project-no{position:absolute;right:25px;top:21px;color:#d5d8d2;font:600 27px var(--font-head)}.project-card h3{font-size:24px;font-weight:600;line-height:1.2;margin:42px 0 14px}.project-card p{font-size:13px;color:#657377;line-height:1.75}.project-card a{margin-top:auto;padding-top:17px;border-top:1px solid var(--line);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;display:flex;justify-content:space-between}.project-card a:hover{color:#a47b2a}.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:23px 38px 23px 0;font:600 17px/1.4 var(--font-head);position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:4px;top:17px;font:300 30px var(--font-head);color:#a47b2a}.faq-list details[open] summary:after{content:'−'}.faq-list details p{color:#667377;font-size:14px;line-height:1.8;padding-right:35px;margin:0 0 23px}.contact-section{background:#173642;color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%;align-items:start}.contact-copy h2{font-size:clamp(44px,5vw,68px)}.contact-copy>p:not(.eyebrow){max-width:375px;color:#cbd5d6;line-height:1.8}.contact-phone,.contact-address{display:block;padding:20px 0;border-top:1px solid #415862}.contact-phone{margin-top:42px}.contact-phone small,.contact-address small{display:block;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.15em;margin-bottom:9px}.contact-phone strong{font:500 29px var(--font-head)}.contact-phone strong span{font-size:20px}.contact-address span{font-size:14px;line-height:1.6;color:#dce4e3}.form-panel{background:#fff;color:var(--ink);padding:38px 40px;box-shadow:0 20px 55px rgba(4,20,25,.16)}.form-heading{border-bottom:1px solid var(--line);margin-bottom:23px;padding-bottom:20px}.form-heading span{font:700 20px var(--font-head);letter-spacing:.03em}.form-heading p{font-size:13px;color:var(--muted);margin:5px 0 0}.form-panel form{display:grid;gap:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-panel label{display:block;font-size:11px;font-weight:800;letter-spacing:.04em}.form-panel label span{color:#ad761b}.form-panel input,.form-panel select,.form-panel textarea{display:block;width:100%;min-height:45px;border:1px solid #d9dfdb;border-radius:0;background:#fbfcfa;color:var(--ink);padding:10px 12px;margin-top:6px;outline:0;font-size:13px;font-weight:400;letter-spacing:0}.form-panel textarea{min-height:93px;resize:vertical}.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{border-color:#a47b2a;box-shadow:0 0 0 2px #e7cf9e}.form-bottom{display:flex;align-items:center;gap:18px;margin-top:3px}.form-bottom p{font-size:12px;color:var(--muted);margin:0}.form-bottom a{text-decoration:underline}.form-status{font-size:13px;margin:0;min-height:0}.form-status:not(:empty){background:#f2f5f1;padding:10px}.form-status.error{background:#fff1ed;color:#a53920}.footer{background:#0b222c;color:#cbd6d7;padding:65px 0 24px}.footer-top{display:flex;justify-content:space-between;gap:60px;padding-bottom:64px}.footer-brand{color:#fff}.footer-top p{font-size:13px;margin:16px 0 0}.footer-links{display:flex;gap:100px}.footer-links>div{display:flex;flex-direction:column;align-items:start;gap:9px;font-size:13px}.footer-links strong{color:var(--gold);font-size:10px;letter-spacing:.15em;margin-bottom:10px}.footer-links a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #2b4650;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.mobile-sticky{display:none}
@media(max-width:950px){.site-header nav{gap:16px}.header-cta{display:none}.hero{min-height:620px}.facts-grid{grid-template-columns:repeat(2,1fr)}.facts-grid>div:nth-child(2){border-right:0}.facts-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.intro-grid{gap:5%}.amenity-grid{grid-template-columns:repeat(2,1fr)}.amenity-grid article:nth-child(2){border-right:0}.amenity-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.location-copy{padding-left:8%}.seo-layout{grid-template-columns:280px 1fr;gap:7%}.contact-grid{gap:6%}}
@media(max-width:800px){body{padding-bottom:calc(57px + env(safe-area-inset-bottom))}.container{width:min(100% - 36px,540px)}.section-pad{padding:76px 0}.topline-inner{justify-content:center}.topline-inner>span{display:none}.topline{font-size:10px}.header-inner{height:70px}.brand{font-size:16px}.brand img{width:42px;height:42px}.brand small{font-size:9px}.menu-toggle{display:flex!important;flex-direction:column;gap:5px;background:none;border:0;padding:10px;margin-left:auto}.menu-toggle span{width:24px;height:2px;background:var(--navy)}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:15px 18px 24px;box-shadow:0 12px 20px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:11px 8px}.mobile-call{display:block!important}.hero{min-height:600px;height:auto}.hero-media iframe{display:none}.hero-shade{background:linear-gradient(90deg,rgba(8,29,38,.87),rgba(8,29,38,.48)),linear-gradient(0deg,rgba(8,29,38,.4),transparent)}.hero-content{padding-top:105px;padding-bottom:110px}.hero h1{font-size:clamp(55px,12vw,80px)}.hero-lede{font-size:15px}.hero-actions{align-items:start}.hero-actions .button{min-height:48px;justify-content:flex-start;gap:12px}.hero-index{right:18px;bottom:26px}.quickfacts .container{width:100%}.facts-grid>div{padding:18px!important;min-height:98px}.fact-icon{width:35px;height:35px;font-size:21px}.facts-grid strong{font-size:13px}.facts-grid small{font-size:11px}.intro-grid,.location-grid,.seo-layout,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.intro-copy{padding:0}.intro-photo-wrap{padding-left:20px}.photo-note{right:0}.section-heading{display:block}.section-heading>p{width:auto;margin-top:23px}.amenity-grid{grid-template-columns:repeat(2,1fr)}.amenity-grid article{padding:21px;min-height:270px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 170px}.gallery-grid .gallery-large{grid-column:1/3;grid-row:auto}.location-grid{gap:0}.location-visual{margin:0 calc((100vw - min(100% - 36px,540px))/-2);min-height:340px}.location-copy{padding:70px 0}.seo-sidebar{position:static}.seo-sidebar .text-link{margin-top:5px}.seo-body article{margin-bottom:30px;padding-bottom:28px}.project-grid{grid-template-columns:1fr}.project-card{min-height:250px}.project-card h3{margin-top:30px}.faq-grid{gap:22px}.contact-grid{gap:36px}.form-panel{padding:25px 22px}.footer-top{display:block}.footer-links{margin-top:43px;gap:65px}.footer-bottom{font-size:10px}.mobile-sticky{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;height:calc(57px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);z-index:50;box-shadow:0 -4px 15px rgba(0,0,0,.14)}.mobile-sticky a{display:grid;place-items:center;background:var(--navy);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.mobile-sticky a:last-child{background:var(--gold);color:var(--navy)}}
@media(max-width:440px){.hero-actions{flex-direction:column}.hero-actions .button{width:100%;justify-content:flex-start;gap:12px}.facts-grid strong{font-size:12px}.facts-grid small{font-size:10px}.fact-icon{display:none}.amenity-grid{grid-template-columns:1fr}.amenity-grid article{min-height:220px;border-right:0!important;border-bottom:1px solid var(--line)}.amenity-grid article:last-child{border-bottom:0}.amenity-symbol{height:65px}.form-row{grid-template-columns:1fr}.form-bottom{align-items:stretch;flex-direction:column;gap:8px}.footer-links{gap:35px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-media iframe{display:none}}

/* Navigation and map updates */
.header-actions{display:flex;align-items:center;gap:8px}
.button-pay{border-color:#cdd8da;color:var(--navy);background:#fff}
.button-pay:hover{border-color:var(--navy);background:#f5f8f7}
.photo-note{min-width:220px}
.project-card h3{margin-top:35px}
.map-section{padding:70px 0;background:#eaece7}
.map-grid{display:grid;grid-template-columns:280px 1fr;align-items:center;gap:6%}
.map-grid h2{font-size:clamp(38px,4vw,52px);line-height:1.08;letter-spacing:-.04em;font-weight:600;margin-bottom:17px}
.map-grid h2 em{font-style:normal;color:#b68b35}
.map-grid p{color:#5e6b6d;margin-bottom:0}
.map-grid iframe{width:100%;height:340px;border:0;filter:saturate(.85)}
@media(max-width:950px){.header-inner{gap:15px}.site-header nav{gap:12px}.header-actions{gap:6px}.header-actions .button{padding-inline:16px}}
@media(max-width:800px){.header-actions .header-cta{display:none}.header-actions .button-pay{min-height:36px;padding:0 11px;font-size:10px}.map-grid{grid-template-columns:1fr;gap:30px}.map-grid iframe{height:300px}}
@media(max-width:350px){.header-actions .button-pay{display:none}}

/* Guest reviews */
.reviews-section{background:#fff}
.reviews-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}
.reviews-heading h2{font-size:clamp(40px,4.5vw,62px);line-height:1.08;letter-spacing:-.04em;font-weight:600;margin-bottom:15px}
.reviews-heading h2 em{font-style:normal;color:#b68b35}
.reviews-heading p{color:#5e6b6d;font-size:14px;margin:0}
.reviews-heading .button{flex:none}
.reviews-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.review-brand{display:flex;align-items:center;gap:10px;color:var(--navy);font:600 14px/1.2 var(--font-head)}
.review-brand img{width:30px;height:30px;object-fit:contain}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.review-card{border:1px solid var(--line);background:#fafaf7;padding:29px;display:flex;flex-direction:column;min-height:385px}
.review-stars{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#b88729}
.review-stars span:first-child{font-size:18px;letter-spacing:.08em;line-height:1}
.review-stars span:last-child{font-size:11px;font-weight:700;color:#718083}
.review-card blockquote{display:flex;flex-direction:column;flex:1;margin:24px 0 0}
.review-card blockquote p{font-size:14px;line-height:1.8;color:#3f5055;margin:0 0 28px}
.review-card blockquote footer{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font:600 16px/1.3 var(--font-head);color:var(--navy)}
@media(max-width:950px){.review-grid{grid-template-columns:1fr 1fr}.review-card{min-height:0}}
@media(max-width:800px){.reviews-heading{display:block}.reviews-actions{margin-top:25px}.review-grid{grid-template-columns:1fr}.review-card{padding:25px}.review-card blockquote p{margin-bottom:22px}}

.hero-poster{position:absolute;inset:0}.hero-poster img{width:100%;height:100%;object-fit:cover;object-position:center 54%}.hero-media iframe{opacity:0;transition:opacity .6s}.hero-media.video-ready iframe{opacity:1}
