/* Palace theme: opulent, warm and dark.
   Builds on _base/base.css. Signature pieces: classical capitals (Cinzel) with wide tracking,
   ornamental scroll dividers, gold hairline frames inside cards and photos, a centred crest
   header with diamond separators, right-aligned hero captions and a damask texture on the
   tinted bands. Colours only come from the tokens, so the light presets work too. */

.ws-theme-palace{--head-weight:500;--head-track:.045em;--head-case:uppercase;--wrap:1180px;--shadow:0 26px 50px -30px rgba(0,0,0,.8);
  --orn:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M60 5l6 7-6 7-6-7z' fill='%23000'/%3E%3Cpath d='M48 12c-7 0-9-6-16-6-4.5 0-7 2.7-7 6s2.5 6 7 6c4 0 5.5-2.6 4-4.6M72 12c7 0 9-6 16-6 4.5 0 7 2.7 7 6s-2.5 6-7 6c-4 0-5.5-2.6-4-4.6M4 12h18M98 12h18'/%3E%3C/svg%3E")}
.ws-theme-palace h1,.ws-theme-palace h2{line-height:1.12}
.ws-theme-palace :is(h1,h2) em{font-style:normal;color:var(--secondary-text)}
.ws-theme-palace h3{letter-spacing:.06em}
.ws-theme-palace .ws-head h2,.ws-theme-palace .ws-about h2,.ws-theme-palace .ws-split__copy h2,.ws-theme-palace .ws-richtext h2{font-size:clamp(27px,3.2vw,40px)}
.ws-theme-palace .ws-eyebrow{letter-spacing:.28em;font-size:11.5px;color:var(--secondary-text)}
.ws-theme-palace .ws-eyebrow--mark::before{width:22px;height:1px;background:currentColor}

/* Ornamental divider above centred headings and the welcome text */
.ws-theme-palace .ws-divider,.ws-theme-palace .ws-richtext.ws-align--center .ws-richtext__inner::before{display:block;content:"";width:120px;height:24px;background:var(--secondary);-webkit-mask:var(--orn) center/contain no-repeat;mask:var(--orn) center/contain no-repeat;opacity:.9}
.ws-theme-palace .ws-divider i{display:none}
.ws-theme-palace .ws-richtext.ws-align--center .ws-prose{font-size:17.5px;line-height:1.75}

/* Damask texture on the tinted bands */
.ws-theme-palace :is(section,footer).ws-tone--tint{border-color:color-mix(in srgb,var(--secondary) 18%,transparent);background-image:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--secondary) 7%,transparent) 0 2px,transparent 2.5px),radial-gradient(circle at 0 0,color-mix(in srgb,var(--secondary) 5%,transparent) 0 1.2px,transparent 1.7px);background-size:36px 36px,18px 18px}

/* Buttons: small capitals, sharp corners, gold outline for the ghost style */
.ws-theme-palace .ws-btn{text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;font-weight:700;padding:1.15em 1.9em}
.ws-theme-palace .ws-btn--sm{padding:.95em 1.4em;font-size:11.5px}
.ws-theme-palace .ws-btn--ghost{box-shadow:inset 0 0 0 1px var(--secondary);color:var(--secondary-text)}
.ws-theme-palace .ws-btn:hover{box-shadow:0 12px 26px -14px #000}
.ws-theme-palace .ws-link{text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;color:var(--secondary-text)}

/* ---------- Crest header ---------- */
.ws-theme-palace .ws-topbar{font-size:12.5px;letter-spacing:.04em}
.ws-theme-palace .ws-header{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 94%,#000),var(--bg));backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid color-mix(in srgb,var(--secondary) 22%,transparent)}
.ws-theme-palace .ws-header.is-scrolled{border-color:color-mix(in srgb,var(--secondary) 30%,transparent)}
.ws-theme-palace .ws-logo__text b{font-family:var(--display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:24px;color:var(--secondary-text)}
.ws-theme-palace .ws-logo__text small{letter-spacing:.32em}
.ws-theme-palace .ws-header--centered .ws-logo__img{height:64px}
.ws-theme-palace .ws-header--centered .ws-header__bar{padding-block:16px 4px}
.ws-theme-palace .ws-header__links a{text-transform:uppercase;letter-spacing:.2em;font-size:12.5px;font-weight:700;padding:12px 18px;color:color-mix(in srgb,var(--fg) 75%,transparent)}
.ws-theme-palace .ws-header__links a:hover,.ws-theme-palace .ws-header__links a.is-active{color:var(--primary-text)}
.ws-theme-palace .ws-header__links a::after{left:50%;right:auto;width:5px;height:5px;bottom:2px;border-radius:0;background:var(--primary);transform:translateX(-50%) rotate(45deg) scale(0)}
.ws-theme-palace .ws-header__links a:hover::after,.ws-theme-palace .ws-header__links a.is-active::after{transform:translateX(-50%) rotate(45deg) scale(1)}
@media (min-width:1081px){
  .ws-theme-palace .ws-header__links li+li{position:relative}
  .ws-theme-palace .ws-header__links li+li::before{content:"";position:absolute;left:-2px;top:50%;width:4px;height:4px;background:color-mix(in srgb,var(--secondary) 55%,transparent);transform:translateY(-50%) rotate(45deg)}
}

/* ---------- Hero: framed, caption on the right ---------- */
.ws-theme-palace .ws-hero::before{content:"";position:absolute;z-index:3;inset:16px;border:1px solid color-mix(in srgb,var(--secondary) 45%,transparent);pointer-events:none}
.ws-theme-palace .ws-hero--slider .ws-slide::after{background:linear-gradient(270deg,color-mix(in srgb,#000 min(100%,calc(var(--ov) + 20%)),transparent) 0%,color-mix(in srgb,#000 var(--ov),transparent) 45%,color-mix(in srgb,#000 calc(var(--ov) * .2),transparent) 100%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 40%)}
.ws-theme-palace .ws-hero--slider .ws-slide__inner{margin-left:auto;text-align:right;justify-items:end}
.ws-theme-palace .ws-hero--slider .ws-slide__ctas{justify-content:flex-end}
.ws-theme-palace .ws-hero--slider .ws-hero__ui-row{flex-direction:row-reverse}
.ws-theme-palace .ws-hero--slider .ws-hero__arrows{margin-left:0;margin-right:auto}
.ws-theme-palace .ws-slide .ws-slide__title{font-weight:500!important;letter-spacing:.06em;font-size:clamp(32px,4.4vw,58px)!important;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.ws-theme-palace .ws-hero .ws-eyebrow{color:var(--secondary)}
.ws-theme-palace .ws-slide .ws-slide__title em{color:var(--secondary)}
.ws-theme-palace .ws-slide p{font-size:17px}
.ws-theme-palace .ws-hero__arrows button{border-radius:50%;border-color:color-mix(in srgb,var(--secondary) 55%,transparent)}
.ws-theme-palace .ws-hero__dots button{width:9px;height:9px;border-radius:50%}
.ws-theme-palace .ws-hero__dots i{border-radius:50%}
@media (max-width:860px){
  .ws-theme-palace .ws-hero::before{inset:10px}
  .ws-theme-palace .ws-hero--slider .ws-slide::after{background:linear-gradient(0deg,color-mix(in srgb,#000 min(100%,calc(var(--ov) + 25%)),transparent),color-mix(in srgb,#000 calc(var(--ov) * .8),transparent))}
  .ws-theme-palace .ws-hero--slider .ws-slide__inner{margin-left:0;text-align:left;justify-items:start}
  .ws-theme-palace .ws-hero--slider .ws-slide__ctas{justify-content:flex-start}
}

/* ---------- Framed cards and photos ---------- */
.ws-theme-palace :is(.ws-feature,.ws-dish,.ws-dcard,.ws-review,.ws-proofcard,.ws-step,.ws-hourssec__card,.ws-strip__grid,.ws-form,.ws-faq__item){background:var(--tint);border:1px solid var(--line);outline:1px solid color-mix(in srgb,var(--secondary) 22%,transparent);outline-offset:-7px;box-shadow:var(--shadow)}
.ws-theme-palace .ws-tone--tint :is(.ws-feature,.ws-dish,.ws-dcard,.ws-review,.ws-proofcard,.ws-step,.ws-form,.ws-faq__item){background:var(--bg)}
.ws-theme-palace :is(.ws-feature,.ws-proofcard,.ws-step){text-align:center;justify-items:center}
.ws-theme-palace .ws-feature__icon{background:none;color:var(--secondary-text);position:relative;margin:6px 0 10px}
.ws-theme-palace .ws-feature__icon::before{content:"";position:absolute;inset:4px;border:1px solid color-mix(in srgb,var(--secondary) 70%,transparent);transform:rotate(45deg)}
.ws-theme-palace :is(.ws-feature,.ws-step) h3{font-size:17px;letter-spacing:.08em}
.ws-theme-palace :is(.ws-dish__img,.ws-dcard__img,.ws-split__media,.ws-about__media .ws-img,.ws-book__img,.ws-hourssec__media,.ws-gallery__item,.ws-offer__img){border-radius:var(--radius);box-shadow:0 0 0 1px color-mix(in srgb,var(--secondary) 40%,transparent),0 22px 40px -26px #000}
.ws-theme-palace .ws-about__img2{border-color:var(--bg)}
.ws-theme-palace .ws-dish h3,.ws-theme-palace .ws-dcard h3{font-family:var(--display);font-weight:600;letter-spacing:.04em;font-size:16.5px;text-transform:uppercase}
.ws-theme-palace .ws-price{color:var(--secondary-text)}
.ws-theme-palace .ws-add{border-color:var(--secondary);color:var(--secondary-text);background:transparent}
.ws-theme-palace .ws-add:hover{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.ws-theme-palace .ws-tag{background:color-mix(in srgb,var(--secondary) 22%,transparent);color:var(--fg)}
.ws-theme-palace .ws-tag--new{background:var(--primary);color:var(--on-primary)}
.ws-theme-palace .ws-cat{background:transparent;border-color:color-mix(in srgb,var(--secondary) 35%,transparent);border-radius:var(--radius)}
.ws-theme-palace .ws-cat span{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;font-size:14px}
.ws-theme-palace .ws-tabs{background:transparent;border:1px solid var(--line)}

/* Printed menu: capitals, gold leaders */
.ws-theme-palace .ws-mitem{border-bottom:0;padding:14px 0}
.ws-theme-palace .ws-mitem h3{font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:16px}
.ws-theme-palace .ws-mitem__dots{border-bottom:1px dotted color-mix(in srgb,var(--secondary) 60%,transparent)}
.ws-theme-palace .ws-mitem .ws-price{color:var(--secondary-text);font-family:var(--display);font-size:17px}

/* Story, stats, seal */
.ws-theme-palace .ws-stat b{font-weight:500;color:var(--secondary-text)}
.ws-theme-palace .ws-seal{background:var(--primary);color:var(--on-primary);box-shadow:0 0 0 6px var(--bg),0 0 0 7px color-mix(in srgb,var(--secondary) 50%,transparent)}
.ws-theme-palace .ws-prose blockquote{border-left-color:var(--secondary);font-family:var(--display);letter-spacing:.02em}
.ws-theme-palace .ws-reviews__num b{font-weight:500;color:var(--secondary-text)}
.ws-theme-palace .ws-proofcard__big{font-weight:500;color:var(--secondary-text)}
.ws-theme-palace .ws-review blockquote{font-style:italic}

/* Call to action, image band, offers */
.ws-theme-palace .ws-cta{border-radius:var(--radius);background:linear-gradient(135deg,var(--primary),var(--primary-deep));outline:1px solid color-mix(in srgb,var(--on-primary) 30%,transparent);outline-offset:-10px}
.ws-theme-palace .ws-cta::before{display:none}
.ws-theme-palace .ws-band h2{letter-spacing:.06em}
.ws-theme-palace .ws-band__inner::before{content:"";width:120px;height:24px;background:var(--secondary);-webkit-mask:var(--orn) center/contain no-repeat;mask:var(--orn) center/contain no-repeat}
.ws-theme-palace .ws-offer{border-radius:var(--radius);outline:1px solid color-mix(in srgb,currentColor 25%,transparent);outline-offset:-9px}

/* Forms and contact */
.ws-theme-palace .ws-field input,.ws-theme-palace .ws-field select,.ws-theme-palace .ws-field textarea{background:var(--bg);border-color:var(--line)}
.ws-theme-palace .ws-field label,.ws-theme-palace .ws-field .ws-label{text-transform:uppercase;letter-spacing:.14em;font-size:11.5px;color:var(--muted)}
.ws-theme-palace .ws-contact__item{border-top:1px solid color-mix(in srgb,var(--secondary) 45%,transparent)}
.ws-theme-palace .ws-contact__item h3{font-size:15px;letter-spacing:.1em}
.ws-theme-palace .ws-map{filter:grayscale(.4) brightness(.8)}
.ws-theme-palace .ws-faq__item summary{font-family:var(--display);letter-spacing:.04em;font-weight:600}

/* Banner */
.ws-theme-palace .ws-banner h1{font-weight:500!important;letter-spacing:.06em}
.ws-theme-palace .ws-banner:not(.has-image){background-image:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--primary) 16%,transparent),transparent 70%)}

/* ---------- Footer: a shade darker than the page ---------- */
.ws-theme-palace .ws-footer.ws-tone--default{background:var(--tint);border-top:1px solid color-mix(in srgb,var(--secondary) 22%,transparent)}
.ws-theme-palace .ws-footer h3{color:var(--secondary-text);letter-spacing:.22em;font-family:var(--display)}
.ws-theme-palace .ws-footer .ws-logo__img{height:80px}

/* Mobile action bar */
.ws-theme-palace .ws-orderbar__bar{border-top-color:color-mix(in srgb,var(--secondary) 35%,transparent)}
