@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap');
:root{--wine:#380e1c;--deep:#210810;--cream:#faf5eb;--gold:#d3ae67;--ink:#32252a;--muted:#7c6d69;--line:#d9c8aa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{width:100%;object-fit:cover;display:block}h1,h2,h3,.brand,.display{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.05;margin:0 0 22px}h1{font-size:clamp(48px,6vw,90px)}h2{font-size:clamp(38px,4.4vw,64px)}h3{font-size:32px}p{margin:0 0 22px}header,footer,.velvet,#menu{background-color:var(--wine);background-image:radial-gradient(ellipse at 12% 10%,#831e3c55,transparent 46%),repeating-linear-gradient(115deg,#ffffff02 0px,#00000006 2px,transparent 4px),linear-gradient(130deg,#260911,#56142a 45%,#250810);color:var(--cream)}header{height:105px;display:flex;align-items:center;gap:30px;padding:0 5%;border-bottom:1px solid #b8905055;position:sticky;top:0;z-index:20;box-shadow:0 4px 24px #21081025}.brand{font-size:27px;letter-spacing:3px;white-space:nowrap;color:#f2dba3;margin:0;line-height:1.2;text-shadow:0 1px 1px #000,0 0 18px #d3ae6720}.brand small{display:block;font:8px Manrope,sans-serif;letter-spacing:3.8px;margin-top:8px;text-align:center}.crest{display:block;text-align:center;font-size:20px;line-height:16px;margin-bottom:5px}nav{display:flex;gap:26px;margin-left:auto;font-size:12px}nav a:hover,nav a.active{color:#efcc80}.tools{display:flex;align-items:center;gap:16px}.tools button{background:none;border:0;color:#eed6a5;padding:10px}.gold{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:14px 28px;background:linear-gradient(110deg,#a9752d,#e7c47b 22%,#fff1bb 49%,#d7ac5c 70%,#b28239);color:#301216;border:1px solid #f6dba1;border-radius:2px;box-shadow:inset 0 0 0 3px #e8c77e66,inset 0 1px #fff6d8,0 4px 12px #13030820;font-size:12px;font-weight:700;letter-spacing:1px;position:relative;overflow:hidden}.gold:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#fff9 50%,transparent 70%);transform:translateX(-150%);transition:transform .8s}.gold:hover:after{transform:translateX(150%)}.small{min-height:42px;padding:10px 18px;font-size:10px}.outline{display:inline-flex;justify-content:center;padding:13px 24px;border:1px solid var(--line);font-size:12px;letter-spacing:.7px;min-height:50px}.outline:hover{border-color:#9c7135;background:#d3ae6712}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:3px;color:#a37b42;margin-bottom:23px;display:block}.hero{position:relative;min-height:650px;display:flex;align-items:center;padding:80px 8%;color:white;background:#241216}.hero>img{position:absolute;inset:0;height:100%;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#13090fd9,#13090f45 65%,#13090f12),linear-gradient(0deg,#13090f55,transparent 55%)}.heroContent{position:relative;z-index:1;max-width:650px}.hero .eyebrow{color:#efcf8c}.hero p{max-width:400px;color:#f7f0e6}.hero .outline{margin-left:12px;color:white;border-color:#ffffff60}.hero .scroll{position:absolute;bottom:24px;right:6%;z-index:1;font-size:10px;letter-spacing:3px}.bookingStrip{max-width:1100px;position:relative;margin:-38px auto 0;z-index:2;background:#fffcf5;box-shadow:0 16px 60px #321c1514;padding:24px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:18px;border:1px solid #d5bb88}.bookingStrip label{font-size:10px;letter-spacing:1px;text-transform:uppercase}.bookingStrip input,.bookingStrip select{border:0;border-bottom:1px solid var(--line);background:transparent;padding:8px 0;width:100%;color:var(--ink);font-size:14px;min-height:40px}.section{max-width:1200px;margin:auto;padding:100px 40px}.center{text-align:center;max-width:700px;margin:auto auto 50px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split>img{height:520px}.split .copy{max-width:460px}.textLink{font-size:12px;border-bottom:1px solid #b89657;padding-bottom:6px;display:inline-block;margin:6px 18px 6px 0}.signature{font-family:'Cormorant Garamond',serif;font-size:30px;color:#a27b42;font-style:italic}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.card{background:#fffaf0;border:1px solid #dac7a338}.card>a>img,.card>img{height:280px;transition:filter .4s}.card:hover img{filter:brightness(1.04)}.card .inner{padding:26px}.card h3{font-size:31px;margin-bottom:12px}.card p{font-size:13px;color:var(--muted)}.wideBand{padding:80px 8%;text-align:center}.wideBand .eyebrow{color:#dcb972}.wideBand h2{max-width:800px;margin:0 auto 25px}.wideBand p{max-width:560px;margin:0 auto 28px;color:#e1ced0}.editorial{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.editorial img{height:450px}.editorial .tile{position:relative}.tile .overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#180710dd);color:white;padding:70px 30px 25px}.overlay h3{margin:0}.pageHead{padding:65px 6% 50px;text-align:center;background:#f2e9da;border-bottom:1px solid #ddcbb0}.pageHead h1{font-size:64px}.pageHead p{max-width:620px;margin:auto;color:var(--muted)}.pageHero{height:420px}.roomLayout{display:grid;grid-template-columns:1.7fr 1fr;gap:50px}.bookingCard{padding:32px;border:1px solid var(--line);background:#fffaf2;align-self:start;position:sticky;top:130px}.bookingCard .gold,.bookingCard .outline{width:100%;margin:6px 0}.facilities{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:25px 0;margin-bottom:30px;border-block:1px solid var(--line)}.facilities span{font-size:13px}.filter{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:30px}.filter button{padding:10px 23px;border:1px solid var(--line);background:transparent;border-radius:30px;color:var(--wine)}.filter button.selected{background:var(--wine);color:#fff1d4}.gallery{columns:3;column-gap:20px}.gallery button{display:block;position:relative;width:100%;margin:0 0 20px;border:0;padding:0;background:var(--wine);color:white;break-inside:avoid}.gallery img{height:auto}.gallery span{position:absolute;bottom:12px;right:12px;background:#240b15c9;padding:4px 12px;border-radius:20px;font-size:12px}.faq{max-width:800px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-size:23px;font-family:'Cormorant Garamond',serif}.faq details p{margin:18px 0 0;color:var(--muted)}.contactGrid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contactGrid a:not(.gold):not(.outline){text-decoration:underline;text-underline-offset:5px}.contactForm{display:grid;gap:15px}.contactForm label{display:grid;gap:7px;font-size:12px}.contactForm input,.contactForm textarea,.contactForm select{padding:13px;background:#fffaf2;border:1px solid var(--line);color:var(--ink);width:100%}.note{font-size:11px;color:var(--muted);line-height:1.7}.bookingFull{max-width:750px;margin:auto}.bookingFull .bookingStrip{margin:0;grid-template-columns:1fr 1fr;box-shadow:none}.bookingFull .bookingStrip .gold{grid-column:1/-1}.bookingFull .alternatives{margin-top:35px;padding:35px;background:#f2e9da;text-align:center}.bookingBlue{background:#003b95;color:white;display:inline-block;padding:14px 30px;border-radius:3px;font-size:13px}.miniPhotos{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.miniPhotos img{height:220px}footer{padding:65px 7% 30px;border-top:1px solid #cfac6b}.footerGrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px}footer .brand{display:inline-block;margin-bottom:25px}footer p,footer a{font-size:12px;color:#e1cfd1}footer h3{font-size:25px;color:#e6c584}footer .links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.copyright{border-top:1px solid #c8a46c44;margin-top:40px;padding-top:24px;font-size:10px;display:flex;justify-content:space-between;color:#bca5a9}.mobileBar{display:none}#menu{position:fixed;inset:105px 0 0;z-index:25;padding:40px 8%;overflow:auto}#menu .menuLinks{display:grid;grid-template-columns:1fr 1fr;gap:15px;max-width:900px;margin:auto}#menu .menuLinks a{font-family:'Cormorant Garamond',serif;font-size:35px;padding:8px;border-bottom:1px solid #d3ae6740}#menu[hidden]{display:none}dialog{max-width:95vw;max-height:94vh;border:1px solid var(--gold);background:var(--deep);color:var(--cream);padding:15px}dialog::backdrop{background:#12060ee8}dialog img{max-height:77vh;max-width:85vw;object-fit:contain}.close{position:absolute;right:20px;top:20px;background:var(--wine);color:white;border:1px solid var(--gold);width:42px;height:42px;font-size:25px}dialog p{margin:12px 0 0;font-size:12px}.skip{position:fixed;top:-100px;z-index:50;background:white;padding:15px}.skip:focus{top:10px}.rule{width:60px;border:0;border-top:1px solid var(--gold);margin:25px 0}.back{display:inline-block;margin-bottom:24px;font-size:12px}.infoRow{display:flex;gap:35px;flex-wrap:wrap;margin-top:25px;font-size:12px}.reveal{animation:appear .6s ease both}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1050px){nav{display:none}.tools{margin-left:auto}.cards{grid-template-columns:1fr 1fr}.split{gap:35px}.section{padding:70px 30px}.bookingStrip{margin:0;max-width:none}.hero{min-height:580px}.footerGrid{gap:25px}}@media(max-width:650px){body{font-size:14px;padding-bottom:75px}header{height:85px;padding:0 18px;gap:10px}.brand{font-size:21px;letter-spacing:2.3px}.brand small{font-size:7px;letter-spacing:2px}.tools{gap:2px}.tools .gold{display:none}.hero{min-height:570px;padding:70px 25px;align-items:flex-end}.hero:after{background:linear-gradient(0deg,#190810ee,transparent 95%)}.hero h1{font-size:57px}.hero p{font-size:13px}.hero .scroll{display:none}.hero .gold,.hero .outline{font-size:10px;padding:13px 17px;min-height:48px}.hero .outline{margin-left:5px}.bookingStrip{grid-template-columns:1fr 1fr;padding:22px;gap:15px}.bookingStrip .gold{padding:12px;font-size:10px}.section{padding:60px 22px}.split,.cards,.contactGrid,.roomLayout{grid-template-columns:1fr}.split{gap:32px}.split>img{height:360px}.center{margin-bottom:30px}.cards{gap:25px}.card>a>img{height:290px}.editorial{grid-template-columns:1fr}.editorial img{height:350px}.pageHead{padding:45px 25px}.pageHead h1{font-size:48px}.pageHero{height:300px}.gallery{columns:2;column-gap:12px}.gallery button{margin-bottom:12px}.bookingCard{position:static}.wideBand{padding:60px 24px}.footerGrid{grid-template-columns:1fr;gap:30px}footer{padding:45px 25px}.copyright{display:block}.copyright span{display:block;margin-bottom:10px}.mobileBar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--wine);padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:20px;align-items:center;z-index:30;border-top:1px solid #d3ae67;color:var(--cream)}.mobileBar>a:first-child{padding:0 12px;font-size:12px}.mobileBar .gold{flex:1;min-height:45px;font-size:10px;padding:10px}#menu{top:85px;padding:25px 25px 100px}#menu .menuLinks{grid-template-columns:1fr;gap:0}#menu .menuLinks a{font-size:27px}.miniPhotos img{height:160px}.contactGrid{gap:30px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

[hidden]{display:none!important}

/* Bordeaux velvet collection */
:root{--wine:#4d1028;--deep:#210811;--cream:#fff4da;--ink:#fff0d3;--muted:#dfc6bc;--line:#b78b46;--gold:#edc875}
body{background:#310918 url('assets/bordeaux-velvet.png') center top/1500px auto repeat;color:var(--cream)}
header,footer,.velvet,#menu,.pageHead{background-image:linear-gradient(90deg,#29051250,#5e102330,#24051180),url('assets/bordeaux-velvet.png');background-size:cover;background-position:center}
header{border-bottom:3px double #e1b45f;box-shadow:0 5px 30px #100007aa;height:116px}
.brand{font-weight:600;font-size:30px;letter-spacing:3px}
.brand,.hero h1,.pageHead h1,h2,h3,.signature{color:#f0cb76;background:linear-gradient(172deg,#fff8d5 5%,#e9c470 28%,#a76e20 42%,#fff3bb 48%,#e3b757 65%,#fff0ad 82%,#b17d31);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 1px #160309) drop-shadow(0 0 10px #e9ba471c)}
h1,h2,h3{font-weight:500}
.brand small{color:#f3db9c;-webkit-text-fill-color:#f3db9c}
.crest{font-size:28px;text-shadow:0 0 14px #ffe5a488}
.eyebrow{color:#f4d48a;font-weight:600}
nav{font-size:12px}nav a{color:#f2dfc2}
.hero{margin:28px;min-height:620px;padding:65px 5%;border:1px solid #f2cb77;outline:1px solid #b58b4b;outline-offset:6px;background:linear-gradient(90deg,#26061122,#5a102a11),url('assets/bordeaux-velvet.png') center/cover;box-shadow:0 20px 50px #12040b80,inset 0 0 45px #1a030c55}
.hero>img{left:48%;top:22px;width:calc(52% - 22px);height:calc(100% - 44px);border:4px double #edc16c;object-position:57% center;box-shadow:0 0 0 7px #20081175,0 12px 40px #16030a}
.hero:after{pointer-events:none;background:linear-gradient(90deg,transparent 40%,#30091455 48%,transparent 66%);inset:0}
.heroContent{max-width:48%;padding-right:30px}
.hero h1{font-size:clamp(48px,5vw,73px);line-height:1.03}
.hero p{color:#f5e1cc;font-size:14px}
.hero .outline{margin:14px 0 0;display:table;color:#f4dca5;border-color:#d7aa58;background:#2b071960}
.hero .scroll{bottom:30px;color:#ffe3aa;right:5%}
.gold{background:linear-gradient(120deg,#875018 0%,#e6b750 18%,#fff5c3 36%,#c79236 49%,#f8d57b 63%,#fff4bb 77%,#b57e24 100%);border:1px solid #fff0b3;box-shadow:inset 0 0 0 3px #8b591e66,inset 0 2px 2px #ffffe3,0 2px 0 #73431a,0 5px 22px #e0a83e35;color:#30100e;text-shadow:0 1px #fff2b880;letter-spacing:1.2px}
.gold:after{animation:goldSweep 9s ease-in-out infinite}
@keyframes goldSweep{0%,65%{transform:translateX(-160%)}85%,100%{transform:translateX(160%)}}
.bookingStrip{margin:45px auto 0;background:linear-gradient(120deg,#360919ee,#671d35dd),url('assets/bordeaux-velvet.png') center/cover;border:3px double #e2b969;box-shadow:0 14px 45px #14050c88;color:#f6dfab}
.bookingStrip input,.bookingStrip select{color:#fff0d0;color-scheme:dark}
.bookingStrip option{background:#3d0c20}
.section{position:relative}
.section>.center:before,.pageHead:before,.wideBand:before{content:'✦';display:block;text-align:center;color:#ffe4a0;font-size:22px;margin-bottom:20px;text-shadow:0 0 16px #eab85a}
.split>img,.pageHero,.miniPhotos img{border:4px double #d6ac5d;padding:5px;background:#2e0715;box-shadow:0 16px 40px #17030c77}
.card,.bookingCard{background:linear-gradient(145deg,#681a35b8,#290613eb),url('assets/bordeaux-velvet.png') center/cover;border:1px solid #ce9e50;box-shadow:0 10px 28px #18030b80,inset 0 0 0 5px #ab7b2e15}
.card>a>img{border-bottom:3px double #d2a251;padding:6px}
.card .inner{padding:28px}.card p{color:#e9d0c0}
.outline,.textLink{color:#f4d38a;border-color:#c79e54}
.outline:hover{background:#eec57518}
.pageHead{border-block:3px double #d7ae63;padding:65px 6%;position:relative}
.pageHead p{color:#f0d4c3}
.pageHead h1{font-size:68px}
.wideBand{border-block:3px double #cda35c;box-shadow:inset 0 0 65px #1c030b88;padding:85px 8%}
.wideBand p{color:#f1d9c5}
.editorial .tile{border:3px double #d6ad60;padding:5px;background:#2e0817;box-shadow:0 12px 35px #17040b88}
.tile .overlay{background:linear-gradient(transparent,#33091a 60%);padding-top:90px}
.gallery button{border:3px double #d7ab5d;padding:5px;box-shadow:0 8px 25px #16040b66}
.filter button{color:#f2d393;border-radius:0;background:#350a1a99}
.filter button.selected{background:linear-gradient(120deg,#ad7930,#f9e3a1,#c29447);color:#2b0815;border-color:#ffe1a1}
.contactForm input,.contactForm textarea,.contactForm select{background:#270614b8;color:#fff0d8;border-color:#b28746;color-scheme:dark}
.bookingFull .alternatives{background:#4c1127a6;border:1px solid #b99050}
.note,.faq details p{color:#dcbfb2}
.footerGrid h3{font-size:30px}footer{border-top:3px double #e4be72}
.mobileBar{background:#390b1c url('assets/bordeaux-velvet.png') center/cover;border-top:3px double #edc87c}
#menu{top:116px}
@media(max-width:1050px){.heroContent{max-width:51%}.hero h1{font-size:56px}.hero>img{left:50%;width:calc(50% - 22px)}.bookingStrip{margin:30px}}
@media(max-width:650px){
header{height:92px;padding:0 16px}.brand{font-size:22px}.crest{font-size:24px}
.hero{margin:17px 14px;padding:29px 23px 340px;min-height:0;display:block}
.heroContent{max-width:none;padding:0;text-align:center}.hero h1{font-size:46px;line-height:1.03;margin-bottom:20px}
.hero p{font-size:13px}.hero .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:18px}
.hero .outline{display:inline-flex;margin:10px 0 0}.hero .gold{display:flex;margin:auto;max-width:260px}
.hero>img{inset:auto 14px 14px;width:calc(100% - 28px);height:300px;object-position:55% 40%}
.hero:after{display:none}
.bookingStrip{margin:30px 14px 0;padding:20px 16px}.pageHead h1{font-size:48px}
.section{padding:55px 22px}.wideBand{padding:60px 24px}
#menu{top:92px}.bookingFull .bookingStrip{margin:0}
}
@media(prefers-reduced-motion:reduce){.gold:after{animation:none}}
.brand{text-shadow:none;display:block}

/* Polished presentation and touch navigation */
body{padding:22px;background-size:1500px auto}
header{height:auto;min-height:150px;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;padding:22px 6% 12px;border:3px double #e9bf68;border-radius:22px 22px 0 0;position:sticky;top:0;background-position:50% 45%}
header:before,header:after{content:'';position:absolute;top:5px;left:5px;width:110px;height:110px;background:url('assets/gold-botanical.svg') center/contain no-repeat;pointer-events:none}
header:after{left:auto;right:5px;transform:scaleX(-1)}
header>.brand{grid-column:2;grid-row:1;text-align:center;font-size:36px;letter-spacing:4px}
header .crest{display:none}
header .tools{grid-column:3;grid-row:1;justify-self:end;margin:0;gap:8px}
header nav{grid-column:1/-1;grid-row:2;margin:0;justify-content:center;gap:14px;display:flex}
nav a{min-height:48px;min-width:110px;padding:7px 20px;display:flex;align-items:center;justify-content:center;border:1px solid #b8883c80;border-radius:5px;font:600 25px/1.2 'Cormorant Garamond',Georgia,serif;letter-spacing:.3px;color:#f4d58b;text-shadow:0 1px 1px #0c0206;background:linear-gradient(130deg,#761e3b40,#23051166);box-shadow:inset 0 1px #ffe2a520;transition:background .2s,box-shadow .2s}
nav a:hover,nav a.active{color:#fff0bd;background:#9b4f3340;box-shadow:inset 0 0 0 1px #ebbf70,0 0 14px #efbb4b22}
.tools button{min-height:48px;min-width:44px;font-size:16px}
#menuToggle{font-size:24px}
#menu{top:160px}#menu .menuLinks a{min-height:56px;padding:12px 16px;color:#f6d996;border:1px solid #b88a4680;border-radius:6px;background:#35081655}
#content{border-inline:1px solid #ba8f4a}
.hero{margin:14px;min-height:580px;border-radius:9px}.heroContent{max-width:48%}
.hero h1{font-size:clamp(46px,4.7vw,66px)}
.hero .gold{font-size:14px;min-height:56px}.hero .outline{min-height:52px;font-size:14px}
.gold{border-radius:5px;font-size:14px;min-height:54px;border:3px double #ffedaa;box-shadow:inset 0 0 0 1px #8c5d25,inset 0 2px 2px #fff6cc,0 3px 0 #734718,0 6px 18px #12030870}
.gold>span{font-size:19px}.gold.small{font-size:12px;min-height:48px}
.section{background:#fff7e8;color:#42252a;max-width:none;padding:80px max(5%,calc((100% - 1120px)/2));border-block:1px solid #d8bc83}
.section h1,.section h2,.section h3{background:none;-webkit-text-fill-color:initial;color:#61223a;filter:none}
.section .eyebrow,.section .signature{color:#99661c;background:none;-webkit-text-fill-color:initial;filter:none}
.section .textLink,.section .outline{color:#794a19}
.section .note,.section .faq details p{color:#77605b}
.section .card{background:#fffaf0;border:3px double #c29751;border-radius:9px;overflow:hidden;box-shadow:0 10px 25px #59211a16}
.section .card .inner{padding:25px}
.section .card h3{font-size:32px}
.section .card p{color:#6c5550}
.section .card .textLink{min-height:48px;display:inline-flex;align-items:center;font-size:14px}
.section .card img{padding:5px}
.section .bookingCard{background:#f5e8cf;color:#42252a;box-shadow:0 8px 24px #4b211714}
.section .bookingStrip{color:#f5deb1}.section .bookingStrip .note{color:#e8cfb8}
.section .bookingFull .alternatives{background:#f0e0c2;border:1px solid #be9452}
.section .filter button{background:#fff9ee;color:#693046;min-height:48px;font-size:14px}
.section .filter button.selected{background:linear-gradient(110deg,#b68437,#f9e2a5,#c29950);color:#35131d}
.section .contactForm input,.section .contactForm select,.section .contactForm textarea{background:#fffdf8;color:#42252a;color-scheme:light;min-height:48px;font-size:16px}
.section .tile h3{background:linear-gradient(170deg,#fff1c4,#d4a551,#fff0b1);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.section .tile .eyebrow{color:#f3cf87}
.section .tile{border-radius:9px;overflow:hidden}
.split>img,.miniPhotos img,.pageHero{border-radius:8px}
.bookingStrip{margin:22px auto 30px}
.pageHead{border-bottom:3px double #e9bf68}
footer{position:relative;border:3px double #e9bf68;border-radius:0 0 22px 22px}
footer:after{content:'';position:absolute;right:8px;bottom:8px;width:120px;height:120px;background:url('assets/gold-botanical.svg') center/contain no-repeat;transform:rotate(180deg);pointer-events:none}
footer .links a,footer .textLink{min-height:44px;display:flex;align-items:center;font-size:14px}
footer .links{gap:2px 12px}.copyright{padding-right:80px}
.styledPhoto{position:relative;margin:0;overflow:hidden}.styledPhoto img{height:100%;object-fit:cover}.styledPhoto figcaption{position:absolute;bottom:10px;left:10px;right:10px;font:10px/1.5 Manrope,sans-serif;color:#fff0d6;background:#320918d9;padding:5px 9px;border:1px solid #d6ac60;border-radius:3px}
.split>.styledPhoto{height:520px;border:4px double #c89b4f;padding:5px;border-radius:8px;background:#350b1a}
.card .styledPhoto{height:280px}
.styledPhoto.pageHero{height:420px}
.socialDock{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:28px 22px;background:#310818 url('assets/bordeaux-velvet.png') center/cover;border-block:3px double #d7ab60}
.socialDock a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;min-width:135px;padding:12px 20px;border:1px solid #d5ac5f;border-radius:5px;font:600 18px 'Cormorant Garamond',serif;color:#ffe3a0;background:#2a061660}
.socialDock a:hover{background:#a3682b44}.socialDock .play{color:#fff0bd}
@media(max-width:1100px){header>.brand{grid-column:1/3;justify-self:start;font-size:28px}header{padding:20px 3% 12px}header:before,header:after{opacity:.35;width:70px;height:70px}nav a{font-size:23px;min-width:0;padding:10px 18px}.section{padding:60px 28px}.heroContent{max-width:51%}}
@media(max-width:650px){
body{padding:8px 8px 78px}header{min-height:0;padding:18px 10px 10px;gap:12px;border-radius:14px 14px 0 0}
header>.brand{font-size:23px;letter-spacing:2px;grid-column:1/3}header .brand small{font-size:7px;letter-spacing:2px}
header .tools{gap:0}header .tools button{padding:7px;min-width:38px}
header:before{display:none}header:after{width:65px;height:65px;opacity:.35}
header nav{gap:7px;display:grid;grid-template-columns:repeat(3,1fr);width:100%}
nav a{font-size:21px;min-height:50px;padding:8px 5px;text-align:center;white-space:normal}
nav a[href="#contact"]{display:none}
#menu{top:145px;padding:20px 20px 100px}
.hero{margin:12px 7px;padding:30px 17px 295px}.heroContent{max-width:none}
.hero h1{font-size:43px}.hero>img{height:260px}
.hero .gold{font-size:13px;min-height:54px}.hero .outline{font-size:13px}
.section{padding:48px 18px}.section h2{font-size:39px}
.split>.styledPhoto{height:350px}.styledPhoto.pageHero{height:300px}
.bookingStrip{margin:22px 8px;padding:20px 13px;gap:14px}.bookingStrip .gold{font-size:11px}
.socialDock{padding:24px 14px;gap:9px}.socialDock a{flex:1 1 42%;min-width:0;font-size:19px;min-height:52px}
footer{border-radius:0 0 14px 14px;padding:36px 20px}
.mobileBar{left:0;right:0}.mobileBar .gold{font-size:13px;min-height:50px}.mobileBar>a:first-child{font-size:14px}
}
.tile>.styledPhoto{height:450px}.tile>.styledPhoto figcaption{top:10px;bottom:auto;right:auto;max-width:90%}
.gallery .styledPhoto img{height:auto}.gallery .styledPhoto figcaption{font-size:9px;left:4px;right:4px;bottom:4px;padding:3px 6px}
.socialDock{margin-bottom:40px}
@media(max-width:650px){.tile>.styledPhoto{height:350px}.bookingStrip input,.bookingStrip select{font-size:16px}.styledPhoto figcaption{font-size:9px}#menu{top:161px}}
/* Four-language selector */
#lang{width:112px;min-height:46px;padding:8px;color:#f3d78d;border:1px solid #b99350;border-radius:5px;background:#3c101d;font:15px system-ui,sans-serif;cursor:pointer}#lang option{background:#3c101d;color:#fff6df}html[lang=km] body,html[lang=km] h1,html[lang=km] h2,html[lang=km] h3,html[lang=km] nav a{font-family:'Noto Sans Khmer','Khmer OS',system-ui,sans-serif;line-height:1.65}html[lang=km] h1{font-size:clamp(30px,4vw,56px)}@media(max-width:650px){#lang{width:97px;font-size:14px}.tools{gap:7px}}
/* Full-width photographic opening, framed in velvet and gold. */
.hero.heroSlideshow{overflow:hidden;min-height:680px;padding:85px 7% 120px;background:#280b16}
.heroSlides,.heroSlide{position:absolute;inset:0}
.heroSlide{opacity:0;transition:opacity 1.5s ease;pointer-events:none}
.heroSlide.active{opacity:1}
.heroSlide img{height:100%;width:100%;object-fit:cover;object-position:center;transform:scale(1.025);transition:transform 8s linear}
.heroSlide.active img{transform:scale(1.085)}
.hero.heroSlideshow:after{display:block;background:linear-gradient(90deg,rgba(29,5,15,.86),rgba(29,5,15,.53) 48%,rgba(29,5,15,.12)),linear-gradient(0deg,rgba(20,4,10,.65),transparent 35%);z-index:0}
.heroSlideshow .heroContent{max-width:650px;width:65%;padding:0;z-index:1}
.heroSlideshow .heroContent p{max-width:450px}
.heroSlideshow .scroll{display:none}
.slideControls{position:absolute;bottom:28px;left:7%;display:flex;align-items:center;gap:10px;z-index:3;color:#ffe5a3}
.slideControls button{height:48px;min-width:48px;border:1px solid #dfb768;background:#350c20c9;color:#ffe5a3;font-size:25px;border-radius:50%;line-height:1}
.slideControls button:hover{background:#693047}.slideCount{font-size:12px;letter-spacing:2px;min-width:70px;text-align:center}
.slideDisclosure{position:absolute;right:20px;bottom:32px;z-index:2;font-size:11px!important;color:#fff3dd!important;background:#240711bd;padding:4px 10px;margin:0}
@media(max-width:650px){.hero.heroSlideshow{padding:95px 25px 145px;min-height:690px;margin:12px 7px}.heroSlideshow .heroContent{width:100%;max-width:none;text-align:left}.heroSlideshow .heroContent h1{font-size:46px}.heroSlideshow .heroContent .gold{margin:0;display:inline-flex}.heroSlideshow .heroContent .outline{display:table;margin:12px 0 0}.hero.heroSlideshow:after{background:linear-gradient(0deg,#200810ec,#20081075 70%,#20081044)}.heroSlide img{object-position:60% center}.slideControls{left:25px;bottom:55px}.slideDisclosure{bottom:14px;left:25px;right:auto;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.heroSlide,.heroSlide img{transition:none;transform:none!important}}

/* Soft gold controls and responsive film stories */
.gold{border-radius:16px!important;background:linear-gradient(155deg,#f6df9c 0%,#d5ae62 40%,#bb8b38 76%,#e6c779 100%)!important;color:#30111b!important;border:1px solid #f3d58c!important;box-shadow:inset 0 2px 1px #fff5cc99,inset 0 -3px 3px #79511c55,0 5px 0 #79552b,0 9px 20px #10030945;min-height:48px;transition:transform .18s,box-shadow .18s}
.gold:hover{transform:translateY(-2px);box-shadow:inset 0 2px 1px #fff5ccaa,0 6px 0 #79552b,0 12px 24px #10030955}.gold:active{transform:translateY(3px);box-shadow:inset 0 2px 3px #79511c55,0 1px 0 #79552b}.outline,.platformLink{border-radius:14px;min-height:48px}.quickActions{display:flex;flex-wrap:wrap;gap:16px;margin:24px 0}.quickActions a{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 24px;text-decoration:none}.contactActions{padding-bottom:0}.contactGrid a[href^="tel:"],.contactGrid a[href^="mailto:"]{display:inline-block;padding:10px 0;overflow-wrap:anywhere}.videoStory{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}.videoStoryCopy h2{font-size:clamp(32px,4vw,56px)}.videoFrame{min-width:0}.videoFrame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#1b080e;border:1px solid #bd9755;border-radius:22px;box-shadow:0 18px 50px #10030966}.videoFrame .note{margin-top:12px}a:focus-visible,button:focus-visible,video:focus-visible{outline:3px solid #f5d991;outline-offset:5px}.mobileBar{gap:12px;padding-bottom:max(14px,env(safe-area-inset-bottom))}@media(max-width:760px){.videoStory{grid-template-columns:1fr;gap:24px}.quickActions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quickActions a{padding:14px 12px;font-size:15px}.videoFrame video{border-radius:16px}.mobileBar a{border-radius:14px;min-height:48px}}
@media(prefers-reduced-motion:reduce){.gold{transition:none}.gold:hover{transform:none}}

.conversation{text-align:center;border-top:1px solid #bd975566;border-bottom:1px solid #bd975566}.conversation h2{font-size:clamp(34px,4.5vw,64px);max-width:850px;margin:20px auto}.conversation p{max-width:650px;margin:20px auto}.conversation .quickActions{justify-content:center}.feedbackGrid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px}.feedbackCard{padding:32px;border:1px solid #bd975577;border-radius:24px;background:linear-gradient(140deg,#4b1525,#230b14);box-shadow:0 18px 40px #10030944}.feedbackCard h2{font-size:36px}.feedbackCard>a{margin:12px 12px 12px 0}.concierge{position:fixed;right:24px;bottom:24px;z-index:90}.concierge>button{font-size:14px;padding:14px 22px;cursor:pointer}.concierge [hidden]{display:none!important}#conciergePanel{position:absolute;bottom:76px;right:0;width:min(340px,calc(100vw - 32px));padding:24px;border:1px solid #d5ae62;border-radius:24px;background:linear-gradient(145deg,#4b1728,#210912);box-shadow:0 20px 70px #0009;max-height:70vh;overflow:auto}.conciergeHeading{display:flex;justify-content:space-between;align-items:center;font-family:Georgia,serif;font-size:24px;color:#e7ca89}.conciergeHeading button{background:none;color:#f4d89d;border:0;font-size:30px;min-width:44px;min-height:44px;cursor:pointer}#conciergePanel>a{display:flex;align-items:center;justify-content:center;margin-top:10px;min-height:48px;text-decoration:none}@media(max-width:760px){.concierge{right:16px;bottom:calc(92px + env(safe-area-inset-bottom))}.concierge>button{font-size:13px;padding:12px 18px}.feedbackGrid{grid-template-columns:1fr}.feedbackCard{padding:24px}.conversation .quickActions{grid-template-columns:1fr}}

.exploreGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}.exploreCard{position:relative;display:block;aspect-ratio:1.25;overflow:hidden;border-radius:22px;border:1px solid #caa45e88;isolation:isolate;box-shadow:0 12px 30px #10030944}.exploreCard:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,#230911ed);z-index:-1}.exploreCard img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:-2;transition:transform .5s}.exploreCard:hover img{transform:scale(1.04)}.exploreNumber{position:absolute;top:18px;left:20px;color:#fff1c8;font-size:13px;letter-spacing:.15em;background:#280c1a88;border-radius:30px;padding:7px 12px}.exploreLabel{position:absolute;left:24px;right:24px;bottom:24px;font-family:Georgia,serif;font-size:clamp(22px,2.2vw,32px);color:#f3d797;display:flex;align-items:center;justify-content:space-between;gap:10px}@media(max-width:760px){.exploreGrid{grid-template-columns:repeat(2,1fr);gap:14px}.exploreCard{aspect-ratio:.9;border-radius:16px}.exploreLabel{left:14px;right:14px;bottom:18px;font-size:22px}.exploreNumber{left:14px;top:14px}}@media(prefers-reduced-motion:reduce){.exploreCard img{transition:none}}

.offerAmount{display:block;font-family:Georgia,serif;font-size:92px;line-height:1.1;color:#edcf8c;text-shadow:0 2px 0 #74431a;margin:0 0 20px}.offerAmount span{font-size:40px}.offerSection>.note,.nearby>.note{margin-top:24px}.nearby .feedbackCard{padding:26px}.offerSection h2,.nearby h2{margin-bottom:30px}

.mapSection{padding-bottom:0}.mapSection iframe{width:100%;height:340px;border:1px solid #bd9755;border-radius:22px;background:#260d17}.videoStoryCopy>.outline{margin:12px 10px 12px 0}

/* Immediate, stable activation on touch and mouse */
html{scroll-behavior:auto}#content.reveal{animation:none}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:rgba(237,200,117,.25)}.gold:after,.exploreCard:after,.hero:after{pointer-events:none}.gold:hover,.gold:active{transform:none}.textLink{min-height:44px;display:inline-flex;align-items:center}.filter button,#menuToggle{min-width:48px;min-height:48px}#menu{z-index:80}#menu .menuLinks a{border-radius:14px}@media(hover:none){.gold:after{display:none}.exploreCard:hover img{transform:none}.gold:hover{box-shadow:inset 0 2px 1px #fff5cc99,inset 0 -3px 3px #79511c55,0 5px 0 #79552b,0 9px 20px #10030945}}

.halloweenFilm{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:clamp(24px,4vw,64px);align-items:center;border-radius:24px;margin-block:32px}.halloweenFilm .quickActions{display:flex;flex-wrap:wrap;gap:12px}.halloweenFilm .quickActions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px}.halloweenFilm video{display:block;width:100%;aspect-ratio:16/9;border-radius:18px;background:#12080b}.halloweenFilm .videoStoryCopy h2{color:#e8c987}@media(max-width:800px){.halloweenFilm{grid-template-columns:1fr}.halloweenFilm .quickActions a{flex:1 1 190px}}

/* Campaign frames and paired, one-tap actions */
.campaignSection{padding-top:70px}.campaignHeading{max-width:760px;margin-bottom:32px}.campaignGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.campaignCard{min-width:0;overflow:hidden;border:1px solid #bc955c88;border-radius:24px;background:linear-gradient(135deg,#4b1727,#240c16);box-shadow:0 18px 44px #10030955}.campaignPicture{position:relative;overflow:hidden}.campaignZoom{display:block;border:0;padding:0;margin:0;width:100%;background:#200b14;cursor:zoom-in}.campaignZoom img{display:block;width:100%;aspect-ratio:1.96;object-fit:cover}.campaignPlaque{position:absolute;left:18px;bottom:16px;padding:12px 18px;border:1px solid #dbba76;border-radius:8px;background:#230d18ed;color:#f5d99d;font-family:Georgia,serif;letter-spacing:.12em;font-size:21px;pointer-events:none;box-shadow:0 4px 18px #0005}.campaignPlaque small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.2em;margin-top:5px}.campaignCardBody{padding:22px}.campaignCardBody h3{font-size:28px;color:#efd395;margin:0 0 18px}.campaignActions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.campaignActions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;margin:0;padding:12px 14px;border-radius:18px;text-align:center;font-size:15px;line-height:1.25}.campaignSection>.note{margin-top:24px}.campaignZoom:focus-visible{outline:3px solid #f9d891;outline-offset:-5px}.mobileBar a{gap:8px;min-height:52px;border-radius:18px}.campaignActions a:focus-visible{outline:3px solid #fff0b8;outline-offset:4px}@media(max-width:700px){.campaignGrid{grid-template-columns:1fr;gap:22px}.campaignCardBody{padding:18px}.campaignCardBody h3{font-size:26px}.campaignActions a{font-size:14px}.campaignSection{padding-top:45px}.campaignPlaque{font-size:18px;left:12px;bottom:12px}.mobileBar a{font-size:14px}}@media(max-width:360px){.campaignActions{grid-template-columns:1fr}}
