*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{scroll-behavior:smooth}body{--tw-bg-opacity:1;background-color:rgb(251 245 234/var(--tw-bg-opacity,1));font-family:Jost,sans-serif;--tw-text-opacity:1;color:rgb(43 26 19/var(--tw-text-opacity,1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{font-family:Cinzel,serif}.ornament-divider{margin-top:1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem}.ornament-divider .line{height:1px;width:3.5rem;background-color:rgba(201,162,39,.7)}.ornament-divider.center{justify-content:center}.gold-frame{border-radius:1.25rem;border-width:1px;border-color:rgba(201,162,39,.4)}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;border-radius:.375rem;border-width:1px;border-color:rgba(201,162,39,.6);--tw-bg-opacity:1;background-color:rgb(59 10 16/var(--tw-bg-opacity,1));padding:.75rem 1.5rem;font-family:Jost,sans-serif;font-size:.875rem;line-height:1.25rem;letter-spacing:.025em;--tw-text-opacity:1;color:rgb(228 196 104/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn-primary:hover{--tw-bg-opacity:1;background-color:rgb(74 15 22/var(--tw-bg-opacity,1))}.btn-gold{display:inline-flex;align-items:center;gap:.5rem;border-radius:.375rem;--tw-bg-opacity:1;background-color:rgb(201 162 39/var(--tw-bg-opacity,1));padding:.75rem 1.5rem;font-family:Jost,sans-serif;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(43 6 11/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn-gold:hover{--tw-bg-opacity:1;background-color:rgb(228 196 104/var(--tw-bg-opacity,1))}.info-card{border-radius:1.25rem;border-width:1px;border-color:rgba(201,162,39,.4);display:flex;flex-direction:column;gap:.75rem;background-color:hsla(39,59%,91%,.6);padding:1.5rem}.form-input{width:100%;border-radius:.375rem;border-width:1px;border-color:rgba(201,162,39,.4);background-color:transparent;padding:.75rem 1rem;font-family:Jost,sans-serif;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(43 26 19/var(--tw-text-opacity,1))}.form-input::-moz-placeholder{color:rgba(74,46,34,.5)}.form-input::placeholder{color:rgba(74,46,34,.5)}.form-input:focus{--tw-border-opacity:1;border-color:rgb(201 162 39/var(--tw-border-opacity,1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:rgba(201,162,39,.6)}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-bottom-0\.5{bottom:-.125rem}.-bottom-10{bottom:-2.5rem}.-bottom-\[5px\]{bottom:-5px}.-left-6{left:-1.5rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.top-0{top:0}.z-10{z-index:10}.z-30{z-index:30}.mx-auto{margin-left:auto;margin-right:auto}.-mt-0\.5{margin-top:-.125rem}.-mt-1{margin-top:-.25rem}.-mt-10{margin-top:-2.5rem}.-mt-px{margin-top:-1px}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-11{height:2.75rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[380px\]{height:380px}.h-\[7px\]{height:7px}.h-full{height:100%}.h-px{height:1px}.min-h-\[280px\]{min-height:280px}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[7px\]{width:7px}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.max-w-\[1400px\]{max-width:1400px}.max-w-md{max-width:28rem}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate:45deg}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-gold-500\/15>:not([hidden])~:not([hidden]){border-color:rgba(201,162,39,.15)}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-gold-500\/20{border-color:rgba(201,162,39,.2)}.border-gold-500\/30{border-color:rgba(201,162,39,.3)}.border-gold-500\/50{border-color:rgba(201,162,39,.5)}.border-green-600\/40{border-color:rgba(22,163,74,.4)}.border-red-600\/40{border-color:rgba(220,38,38,.4)}.bg-cream-100\/60{background-color:hsla(39,59%,91%,.6)}.bg-cream-50{--tw-bg-opacity:1;background-color:rgb(251 245 234/var(--tw-bg-opacity,1))}.bg-gold-500\/60{background-color:rgba(201,162,39,.6)}.bg-green-600\/10{background-color:rgba(22,163,74,.1)}.bg-maroon-800{--tw-bg-opacity:1;background-color:rgb(74 15 22/var(--tw-bg-opacity,1))}.bg-maroon-900{--tw-bg-opacity:1;background-color:rgb(59 10 16/var(--tw-bg-opacity,1))}.bg-maroon-950{--tw-bg-opacity:1;background-color:rgb(43 6 11/var(--tw-bg-opacity,1))}.bg-red-600\/10{background-color:rgba(220,38,38,.1)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-6{padding:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-3{padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.pt-1{padding-top:.25rem}.text-center{text-align:center}.font-display{font-family:Cinzel,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[15px\]{font-size:15px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.1em\]{letter-spacing:.1em}.tracking-\[0\.25em\]{letter-spacing:.25em}.tracking-\[0\.28em\]{letter-spacing:.28em}.tracking-wide{letter-spacing:.025em}.text-cream-100{--tw-text-opacity:1;color:rgb(246 237 220/var(--tw-text-opacity,1))}.text-cream-100\/50{color:hsla(39,59%,91%,.5)}.text-cream-100\/70{color:hsla(39,59%,91%,.7)}.text-cream-100\/80{color:hsla(39,59%,91%,.8)}.text-cream-100\/85{color:hsla(39,59%,91%,.85)}.text-cream-50{--tw-text-opacity:1;color:rgb(251 245 234/var(--tw-text-opacity,1))}.text-gold-400{--tw-text-opacity:1;color:rgb(228 196 104/var(--tw-text-opacity,1))}.text-gold-500{--tw-text-opacity:1;color:rgb(201 162 39/var(--tw-text-opacity,1))}.text-gold-500\/10{color:rgba(201,162,39,.1)}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-ink-700{--tw-text-opacity:1;color:rgb(74 46 34/var(--tw-text-opacity,1))}.text-ink-700\/80{color:rgba(74,46,34,.8)}.text-ink-900{--tw-text-opacity:1;color:rgb(43 26 19/var(--tw-text-opacity,1))}.text-maroon-800{--tw-text-opacity:1;color:rgb(74 15 22/var(--tw-text-opacity,1))}.text-maroon-900{--tw-text-opacity:1;color:rgb(59 10 16/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.opacity-90{opacity:.9}.brightness-0{--tw-brightness:brightness(0)}.brightness-0,.grayscale-\[15\%\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale-\[15\%\]{--tw-grayscale:grayscale(15%)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-gold-500:hover{--tw-bg-opacity:1;background-color:rgb(201 162 39/var(--tw-bg-opacity,1))}.hover\:text-gold-400:hover{--tw-text-opacity:1;color:rgb(228 196 104/var(--tw-text-opacity,1))}.hover\:text-maroon-800:hover{--tw-text-opacity:1;color:rgb(74 15 22/var(--tw-text-opacity,1))}.hover\:text-maroon-950:hover{--tw-text-opacity:1;color:rgb(43 6 11/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:block{display:block}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (min-width:768px){.md\:-mt-14{margin-top:-3.5rem}.md\:mt-20{margin-top:5rem}.md\:h-14{height:3.5rem}.md\:h-72{height:18rem}.md\:h-80{height:20rem}.md\:h-\[440px\]{height:440px}.md\:min-h-\[420px\]{min-height:420px}.md\:w-80{width:20rem}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[44\%_56\%\]{grid-template-columns:44% 56%}.md\:flex-row{flex-direction:row}.md\:gap-3{gap:.75rem}.md\:bg-transparent{background-color:transparent}.md\:p-10{padding:2.5rem}.md\:p-8{padding:2rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-14{padding-left:3.5rem;padding-right:3.5rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-4{padding-top:1rem;padding-bottom:1rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-\[11px\]{font-size:11px}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Compact view — makes the whole site render ~90% scale, like browser zoomed to 90% */
html{font-size:90%}

/* Height utilities used by the updated logo lockups (not present in the original purged build) */
.h-12{height:3rem}
.h-14{height:3.5rem}
.h-28{height:7rem}
.h-32{height:8rem}
@media (min-width:768px){
  .md\:h-14{height:3.5rem}
  .md\:h-16{height:4rem}
  .md\:h-20{height:5rem}
}

/* --- Header: top info bar + navbar layout (added for header.php edit) --- */
.hdr-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:1.5rem;padding-top:.5rem;padding-bottom:.5rem}
.hdr-nav-grid{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:1rem}
.hdr-social-icon{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:9999px;border:1px solid rgba(228,196,104,.35);color:#e4c468;transition:background-color .2s,color .2s}
.hdr-social-icon:hover{background-color:rgba(228,196,104,.15)}
.justify-self-end{justify-self:end}
@media (max-width:1023px){.hdr-nav-grid{grid-template-columns:auto 1fr}}

/* --- Contact page: hero corner ornaments + info-card spacing (added for contact.php edit) --- */
.w-28{width:7rem}
.text-gold-500\/70{color:rgba(201,162,39,.7)}
.mt-8{margin-top:2rem}
@media (min-width:768px){
  .md\:block{display:block}
  .md\:mt-12{margin-top:3rem}
}
/* Gradient overlay utilities used by the hero sections (pre-existing
   classes in the templates that were missing from this compiled build) */
.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}
.from-cream-50\/15{--tw-gradient-from:rgba(251,245,234,.15) var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,245,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.via-transparent{--tw-gradient-to:rgba(0,0,0,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),transparent var(--tw-gradient-via-position),var(--tw-gradient-to)}
.to-cream-50\/25{--tw-gradient-to:rgba(251,245,234,.25) var(--tw-gradient-to-position)}

/* --- Contact page hero height (arbitrary values missing from purged build) --- */
.h-\[400px\]{height:400px}
@media (min-width:768px){
  .md\:h-\[500px\]{height:500px}
}

/* --- Contact hero: subtle vignette so heading/paragraph stay readable
   over busy parts of the photo (added for contact.php edit) --- */
.hero-text-scrim{background:radial-gradient(ellipse 70% 80% at center, rgba(15,6,6,.55) 0%, rgba(15,6,6,.15) 55%, rgba(15,6,6,0) 80%)}
.hero-text-shadow{text-shadow:0 2px 10px rgba(0,0,0,.55),0 1px 2px rgba(0,0,0,.5)}

/* --- inset-0 utility (missing from purged build; needed by the hero
   overlay layers in header.php/contact.php) --- */
.inset-0{top:0;right:0;bottom:0;left:0}

/* --- Mobile menu: lock background scroll while the panel is open --- */
html.menu-open-lock,body.menu-open-lock{overflow:hidden}

/* --- Hero: min-height (grows with content instead of clipping/cramming),
   generous vertical padding, and white heading/paragraph text --- */
.min-h-\[420px\]{min-height:420px}
.py-16{padding-top:4rem;padding-bottom:4rem}
.text-white{color:#fff}
.text-white\/90{color:rgba(255,255,255,.9)}
@media (min-width:768px){
  .md\:min-h-\[520px\]{min-height:520px}
}

/* --- Mobile menu: overlay panel, not part of the sticky header's normal
   flow (prevents the "opening the menu scrolls the page down" bug that
   happens when a sticky element's own box height suddenly grows) --- */
.mobile-menu-fullscreen{position:fixed;inset:0;z-index:100;background:#FBF5EA;display:flex;flex-direction:column}
.mobile-menu-fullscreen.hidden{display:none}
.mobile-menu-scroll{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}

/* --- Hero: ornamental wave divider with animated gold glow --- */
.hero-wave-divider{bottom:-1px}
@keyframes heroGoldGlow{
  0%,100%{filter:drop-shadow(0 0 2px rgba(201,162,39,.5)) drop-shadow(0 0 0 rgba(228,196,104,0))}
  50%{filter:drop-shadow(0 0 6px rgba(201,162,39,.95)) drop-shadow(0 0 12px rgba(228,196,104,.55))}
}
.hero-wave-line,.hero-wave-ornament{animation:heroGoldGlow 3s ease-in-out infinite}
.hero-wave-ornament{animation-delay:.4s}

/* --- md:h-24 (missing from purged build; used by the hero wave divider) --- */
@media (min-width:768px){.md\:h-24{height:6rem}}

/* --- Mobile menu links: text nudged down ~6px for better optical
   centering within each row (was perfectly symmetric py-3.5) --- */
.mobile-menu-link-pad{padding-top:1.25rem;padding-bottom:.5rem}

/* --- Facade photo: top padding + golden border with bottom-rounded
   corners (added per client request) --- */
.facade-img-wrap{padding-top:1.25rem}
@media (min-width:768px){.facade-img-wrap{padding-top:2rem}}
.facade-img{border:2px solid #C9A227;border-bottom-left-radius:1rem;border-bottom-right-radius:1rem}

/* --- Map section: same gold-frame card feel as "Send Us a Message",
   padding on left/right/bottom only (map sits flush at the top) --- */
.map-frame-pad{padding-left:1rem;padding-right:1rem;padding-bottom:1rem}
@media (min-width:768px){.map-frame-pad{padding-left:1.25rem;padding-right:1.25rem;padding-bottom:1.25rem}}
.map-frame-radius{border-radius:1.25rem}

/* --- WhatsApp link in the Phone card (missing utilities) --- */
.inline-flex{display:inline-flex}
.gap-1\.5{gap:.375rem}

/* --- Hero height, reduced 40px both breakpoints --- */
.min-h-\[380px\]{min-height:380px}
@media (min-width:768px){.md\:min-h-\[480px\]{min-height:480px}}

/* --- Gallery page: grid utilities + tile/lightbox styling --- */
.aspect-\[4\/3\]{aspect-ratio:4/3}
.border-dashed{border-style:dashed}
.mb-8{margin-bottom:2rem}
.pb-16{padding-bottom:4rem}
.max-w-2xl{max-width:42rem}
.rounded-2xl{border-radius:1rem}
.inset-x-0{left:0;right:0}
@media (min-width:768px){
  .md\:gap-6{gap:1.5rem}
  .md\:mb-12{margin-bottom:3rem}
  .md\:pb-24{padding-bottom:6rem}
}
@media (min-width:1024px){
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}

.gallery-tile{cursor:pointer;display:block;width:100%;text-align:left;background:#000}
.gallery-tile-img{transition:transform .5s ease}
.gallery-tile:hover .gallery-tile-img{transform:scale(1.06)}
.gallery-tile-caption{background:linear-gradient(to top,rgba(20,8,8,.75),rgba(20,8,8,0))}
.gallery-lightbox{position:fixed;inset:0;z-index:200;background:rgba(10,4,4,.97);display:flex;align-items:center;justify-content:center;padding:0}
.gallery-lightbox.hidden{display:none}
.gallery-lightbox-figure{width:100vw;height:100vh;max-width:100vw;max-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;margin:0}
.gallery-lightbox-figure img{max-width:98vw;max-height:90vh;width:auto;height:auto;border-radius:.5rem;border:1px solid #C9A227;object-fit:contain}
.gallery-lightbox-figure figcaption{font-size:1.05rem}
.gallery-lightbox-close{position:absolute;top:1.25rem;right:1.25rem;color:#F6EDDC;width:2.75rem;height:2.75rem;border-radius:9999px;border:1px solid rgba(228,196,104,.4);display:flex;align-items:center;justify-content:center;transition:background-color .2s}
.gallery-lightbox-close:hover{background-color:rgba(228,196,104,.15)}

/* --- Gallery: thicker borders (thumbnail + lightbox), slide nav arrows --- */
.gallery-tile-border{border:1px solid #C9A227}
.gallery-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);color:#F6EDDC;width:3rem;height:3rem;border-radius:9999px;border:1px solid rgba(228,196,104,.4);display:flex;align-items:center;justify-content:center;background-color:rgba(20,8,8,.35);transition:background-color .2s}
.gallery-lightbox-nav:hover{background-color:rgba(228,196,104,.2)}
.gallery-lightbox-prev{left:1rem}
.gallery-lightbox-next{right:1rem}
@media (min-width:768px){
  .gallery-lightbox-prev{left:1.5rem}
  .gallery-lightbox-next{right:1.5rem}
}

/* --- Gallery: category filter tab bar (matches reference: pill "All"
   + plain-text tabs) --- */
.gallery-filter-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.75rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(201,162,39,.25)}
.gallery-filter-btn{font-family:'Jost',sans-serif;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:#4A2E22;padding:.55rem 1rem;border-radius:9999px;transition:background-color .2s,color .2s}
.gallery-filter-btn:hover{color:#2b060b}
.gallery-filter-btn.active{background-color:#2b060b;color:#fff}

/* --- Fix: .gallery-tile's own display:block was overriding .hidden
   (same specificity, later in source order) — this wins reliably --- */
.gallery-tile.hidden{display:none}

/* --- Fix: grid-cols-2 (mobile default) was missing entirely — this is
   why the gallery never actually showed 2 photos per row on mobile --- */
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}

/* --- Gallery grid: 4-per-row on desktop --- */
@media (min-width:768px){.md\:gap-5{gap:1.25rem}}

/* --- Gallery grid columns: authoritative rule (ID specificity) to avoid
   any conflict with other grid-cols-* utility class ordering elsewhere
   in this stylesheet — 2 per row on mobile, 4 per row on desktop --- */
#gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1024px){#gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* --- Utilities for new pages (coming soon sections) --- */
.max-w-xl{max-width:36rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
@media (min-width:768px){.md\:py-28{padding-top:7rem;padding-bottom:7rem}}

/* --- Coming-soon pages: spacing/sizing utilities --- */
.py-24{padding-top:6rem;padding-bottom:6rem}
.w-11{width:2.75rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
@media (min-width:768px){
  .md\:py-32{padding-top:8rem;padding-bottom:8rem}
  .md\:w-14{width:3.5rem}
}

/* --- Header fine-tune: shorter header, smaller/lower menu text, logo
   nudged up slightly (client-requested micro adjustments) --- */
.hdr-nav-row{padding-top:9.5px;padding-bottom:9.5px}
@media (min-width:768px){.hdr-nav-row{padding-top:13.5px;padding-bottom:13.5px}}
.hdr-logo-shift{transform:translateY(-5px)}
.hdr-menu-shift-down{padding-top:10px}
.hdr-book-btn{padding:9.5px 22px}

/* ================= Rooms page: carousel, featured room, amenities ================= */

/* --- Room type carousel (horizontal scroll, 1 / 2 / 4 cards visible) --- */
.room-carousel{display:flex;gap:1.25rem;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:.25rem .25rem 1rem}
.room-carousel::-webkit-scrollbar{display:none}
.room-carousel-card{flex:0 0 auto;width:78vw}
.aspect-room-card{aspect-ratio:4/3}
.room-carousel-nav{position:absolute;top:38%;transform:translateY(-50%);z-index:10;width:2.5rem;height:2.5rem;border-radius:9999px;background:#FBF5EA;border:1px solid rgba(201,162,39,.4);color:#7A2E1F;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(43,6,11,.12);transition:background-color .2s}
.room-carousel-nav:hover{background-color:#F3E7C9}
.room-carousel-prev{left:-.5rem}
.room-carousel-next{right:-.5rem}
@media (min-width:640px){
  .room-carousel-card{width:calc(50% - .625rem)}
  .room-carousel-prev{left:-1.25rem}
  .room-carousel-next{right:-1.25rem}
}
@media (min-width:1024px){
  .room-carousel-card{width:calc(33.333% - 1rem)}
}

/* --- Featured room: decorative side panel + vertical text --- */
.room-side-panel{width:3.25rem}
.room-side-text{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.15em}

/* --- Room amenities icon badge --- */
.room-amenity-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:9999px;background:#FBF5EA;border:1px solid rgba(201,162,39,.35);color:#C9A227}

/* --- Featured room thumbnail nav buttons --- */
.featured-thumb-nav{flex:0 0 auto;width:2rem;height:2rem;border-radius:9999px;border:1px solid rgba(201,162,39,.4);display:flex;align-items:center;justify-content:center;color:#7A2E1F;transition:background-color .2s}
.featured-thumb-nav:hover{background-color:rgba(201,162,39,.12)}
.featured-thumb-btn{transition:border-color .2s;cursor:pointer}

/* --- A few utility classes this page needed that weren't in the purged build --- */
.pt-12{padding-top:3rem}
.pb-4{padding-bottom:1rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-14{padding-top:3.5rem;padding-bottom:3.5rem}
.mb-10{margin-bottom:2.5rem}
.mt-10{margin-top:2.5rem}
.mt-6{margin-top:1.5rem}
.mt-7{margin-top:1.75rem}
.p-5{padding:1.25rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.gap-1{gap:.25rem}
.gap-x-6{column-gap:1.5rem}
.gap-y-3{row-gap:.75rem}
.flex-1{flex:1 1 0%}
.border-2{border-width:2px}
.border-y{border-top-width:1px;border-bottom-width:1px}
.rounded-lg{border-radius:.5rem}
.italic{font-style:italic}
.leading-snug{line-height:1.375}
.text-left{text-align:left}
.w-16{width:4rem}
.w-20{width:5rem}
.h-14{height:3.5rem}
.h-16{height:4rem}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (min-width:768px){
  .md\:pt-16{padding-top:4rem}
  .md\:py-20{padding-top:5rem;padding-bottom:5rem}
  .md\:gap-4{gap:1rem}
  .md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}
  .md\:w-20{width:5rem}
  .md\:h-16{height:4rem}
  .md\:grid-cols-\[44\%_56\%\]{grid-template-columns:44% 56%}
}
@media (min-width:640px){
  .sm\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}
}
@media (min-width:640px){.sm\:flex{display:flex}}

/* --- Featured room mirror effect: flip grid direction to swap image/
   details columns without duplicating markup --- */
@media (min-width:768px){
  .md\:\[direction\:rtl\]{direction:rtl}
  .md\:\[direction\:ltr\]{direction:ltr}
}
