/* Start custom CSS */@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd58jD-iNM8.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_v86KnTOig.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Frank Ruhl Libre';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYWqVNRVGEQ.woff2) format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
@font-face {
  font-family: 'Frank Ruhl Libre';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYWqXNRU.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Sergei Palace — contemporary Jerusalem editorial direction.
   Scoped to the existing homepage; all content remains native Elementor. */
body:has(.sp26-design) {
 --palace-paper:#f2eee5; --palace-ink:#20343a; --palace-brass:#94734b;
 --palace-line:rgba(32,52,58,.24); --palace-muted:#5b625d;
 background:var(--palace-paper);
}
body:has(.sp26-design) .elementor.elementor-8 { background:var(--palace-paper); color:var(--palace-ink); overflow:clip; }
body:has(.sp26-design) .elementor.elementor-8 *, body:has(.sp26-design) .elementor.elementor-8 *::before, body:has(.sp26-design) .elementor.elementor-8 *::after { box-sizing:border-box; }
body:has(.sp26-design) .elementor.elementor-8 ::selection { background:#bda17c; color:#172e33; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-bg-ivory,.sp-bg-mist) { background:var(--palace-paper); background-image:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-section { padding:120px 0; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-section-shell,.sp-editorial-shell,.sp-lower-shell,.sp-rooms-wide-shell,.sp-faq-shell,.sp-contact-shell) { width:88%; max-width:1440px; margin:0 auto; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-section-shell,.sp-editorial-shell) { display:flex; flex-direction:row; align-items:center; gap:8%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-copy { padding:0; align-items:flex-start; gap:0; direction:rtl; text-align:right; }
body:has(.sp26-design) .elementor.elementor-8 .sp-copy:where(:not(.elementor-element-36b7431d)) { width:46%; flex:0 0 46%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hebrew-kicker { font:400 clamp(15px,1.35vw,20.25px)/1.35 Heebo,sans-serif; color:var(--palace-ink); margin:0 0 20px; width:100%; text-align:right; }
body:has(.sp26-design) .elementor.elementor-8 .sp-display-title { font:400 clamp(48px,5.2vw,88px)/.95 'Cormorant Garamond',Georgia,serif; color:var(--palace-ink); letter-spacing:-.045em; text-transform:none; text-align:right; direction:ltr; margin:0; width:100%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-display-title em { font-weight:400; color:var(--palace-brass); }
body:has(.sp26-design) .elementor.elementor-8 .sp-hebrew-body { font:300 17px/1.85 Heebo,sans-serif; color:var(--palace-muted); margin:30px 0 0; max-width:550px; text-align:right; direction:rtl; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-title-stack,.sp-lower-title-group) { display:flex; flex-direction:column; align-items:flex-start; padding:0; gap:0; width:100%; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-rule,.sp-ornate-rule) { display:none; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link) { background:none; color:var(--palace-ink); border:0; border-bottom:1px solid var(--palace-ink); border-radius:0; padding:12px 0; margin:24px 0 0; font:400 14px/1.5 Heebo,sans-serif; width:fit-content; transition:color .2s ease,border-color .2s ease; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link):hover { color:var(--palace-brass); border-color:var(--palace-brass); }
body:has(.sp26-design) .elementor.elementor-8 :is(a,button,input,textarea,summary):focus-visible { outline:2px solid #ac814f; outline-offset:5px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-image-frame { border-radius:0; box-shadow:none; }
/* Masthead and panoramic frontispiece. */
body:has(.sp26-design) .elementor.elementor-8 .sp-hero { display:flex; flex-direction:column; gap:0; position:relative; min-height:0; height:auto; padding:16px 3% 0; background:var(--palace-paper); overflow:hidden; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-content { position:relative; inset:auto; order:0; width:100%; height:auto; transform:none; padding:0 0 28px; gap:0; display:flex; flex-direction:column; color:var(--palace-ink); z-index:2; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-title { font:400 clamp(70px,14.05vw,240px)/.88 'Cormorant Garamond',Georgia,serif; letter-spacing:-.055em; text-align:center; direction:ltr; color:var(--palace-ink); width:100%; max-width:none; text-shadow:none; margin:18px 0 24px; white-space:nowrap; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-rule { display:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-meta { width:100%; display:flex; flex-direction:row; align-items:center; justify-content:space-between; padding:0 2px; gap:20px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-meta-text { font:400 12px/1.6 Heebo,sans-serif; color:var(--palace-ink); text-shadow:none; letter-spacing:.03em; width:auto; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-photo { order:1; position:relative; inset:auto; display:block; width:100%; height:clamp(440px,38vw,630px); object-fit:cover; object-position:center 56%; filter:saturate(.76); transform:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-overlay { display:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero { aspect-ratio:auto; justify-content:flex-start; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-hero-content,.sp-hero-photo) { flex-shrink:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero-title { filter:none; }
body:has(.sp26-design) .site-main > .page-header { display:none; }
body:has(.sp26-design) > .site-footer { display:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-hero::after { content:'A different rhythm. A Jerusalem original.'; position:absolute; bottom:32px; left:6%; color:#fff9ee; font:italic 400 clamp(23px,2.3vw,38px)/1 'Cormorant Garamond',serif; text-shadow:0 2px 18px #000; letter-spacing:-.015em; pointer-events:none; direction:ltr; text-align:left; z-index:2; }
/* Courtyard story: an architectural arch, restrained floating detail. */
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-2658b7db { padding-top:145px; padding-bottom:145px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-story-media { width:46%; flex:0 0 46%; padding:0 50px 50px 0; position:relative; height:auto; aspect-ratio:auto; }
body:has(.sp26-design) .elementor.elementor-8 .sp-story-main { position:relative; inset:auto; width:100%; height:610px; object-fit:cover; object-position:center top; border-radius:280px 280px 0 0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-story-detail { position:absolute; width:37%; height:270px; right:0; bottom:0; left:auto; top:auto; border:8px solid var(--palace-paper); object-fit:cover; box-shadow:none; transform:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-features { margin-top:36px; padding-top:24px; border-top:1px solid var(--palace-line); width:100%; gap:8px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-feature { gap:8px; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-feature > div { width:32px; height:32px; background-size:contain; opacity:.8; }
body:has(.sp26-design) .elementor.elementor-8 .sp-feature-label { font:400 11px/1.5 Heebo,sans-serif; color:var(--palace-ink); }
/* Rooms: cinematic gallery, visible next room, captions outside the photograph. */
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 { background:#20343a; color:var(--palace-paper); padding:100px 0 85px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-wide-shell { gap:52px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-intro { display:flex; flex-direction:row; direction:rtl; justify-content:space-between; align-items:flex-end; gap:8%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-title-group { width:54%; align-items:flex-start; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-body-group { width:38%; padding:0 0 8px; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 :is(.sp-display-title,.sp-hebrew-kicker,.sp-link-cta) { color:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 .sp-hebrew-body { color:#c9d0ca; margin:0; font-size:16px; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 .sp-link-cta { border-color:#bdc5be; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel { width:100%; overflow:visible; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-stage { gap:26px; padding:0; overflow-x:auto; scroll-snap-type:x mandatory; align-items:start; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-slide { flex:0 0 78%; min-width:0; height:auto; position:relative; padding:0; background:transparent; overflow:hidden; scroll-snap-align:start; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-image { width:100%; height:clamp(350px,38vw,570px); object-fit:cover; filter:saturate(.82); }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-caption { position:relative; inset:auto; padding:24px 0 6px; background:none; color:var(--palace-paper); display:flex; flex-direction:row; justify-content:space-between; align-items:center; width:100%; text-shadow:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-name { font:400 38px/1.1 'Cormorant Garamond',Georgia,serif; letter-spacing:-.02em; color:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-subtitle { font:300 14px/1.5 Heebo,sans-serif; color:#d0d4ce; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-1e2667c7 { margin-top:26px; padding-top:24px; border-top:1px solid #718080; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-outline-arrow,.sp-carousel-arrow) { border-radius:50%; width:52px; height:52px; padding:0; font-size:24px; color:var(--palace-ink); border:1px solid var(--palace-ink); background:transparent; transition:background .2s,color .2s,transform .2s; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-outline-arrow,.sp-carousel-arrow):hover { background:var(--palace-ink); color:var(--palace-paper); transform:translateY(-2px); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 .sp-outline-arrow { color:var(--palace-paper); border-color:#8e9b98; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 .sp-outline-arrow:hover { color:var(--palace-ink); background:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-carousel-count,.sp-offers-counter) { font:400 12px/1.5 Heebo,sans-serif; letter-spacing:.14em; }
body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-count { color:var(--palace-paper); }
/* Dining: a generous magazine spread. */
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-58480709 { padding:145px 0 165px; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-6321abad { flex-direction:row-reverse; }
body:has(.sp26-design) .elementor.elementor-8 .sp-media { width:46%; flex:0 0 46%; padding:0; position:relative; }
body:has(.sp26-design) .elementor.elementor-8 .sp-dining-image { height:620px; width:100%; object-fit:cover; }
body:has(.sp26-design) .elementor.elementor-8 .sp-dining-detail { width:48%; height:230px; border:8px solid var(--palace-paper); right:auto; left:-12%; top:auto; bottom:-60px; object-fit:cover; box-shadow:none; transform:none; }
/* Offers: editorial cards, quiet typography and a staggered image rhythm. */
body:has(.sp26-design) .elementor.elementor-8 .sp-offers-section { background:#e7e1d5; padding:100px 0 80px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-lower-heading-row { direction:rtl; display:flex; flex-direction:row; justify-content:space-between; align-items:flex-end; gap:9%; margin:0 0 56px; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-lower-heading-row .sp-lower-title-group { width:54%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-lower-intro { width:37%; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-lower-intro .sp-hebrew-body { font-size:16px; margin:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offers-track { gap:30px; align-items:flex-start; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-card { flex:0 0 calc((100% - 60px)/3); min-width:0; border:0; border-radius:0; box-shadow:none; background:transparent; overflow:hidden; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-card:nth-child(2) { margin-top:70px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-image { width:100%; object-fit:cover; border-radius:0; filter:saturate(.8); transition:filter .5s; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-card:hover .sp-offer-image { filter:saturate(1); }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-copy { padding:23px 0 0; background:none; gap:12px; border-top:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-card-title { font:400 29px/1.2 Heebo,sans-serif; color:var(--palace-ink); margin:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-small-copy { font:300 15px/1.8 Heebo,sans-serif; color:var(--palace-muted); }
body:has(.sp26-design) .elementor.elementor-8 .sp-card-link { font-size:13px; margin-top:4px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-offer-controls { margin-top:42px; padding-top:20px; border-top:1px solid var(--palace-line); }
/* Events: an immersive photograph with a readable paper panel. */
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-76dba05f { padding:0; background:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-b893fa0 { width:100%; max-width:none; position:relative; min-height:800px; padding:80px 6%; justify-content:flex-end; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-2bd971c1 { position:absolute; inset:0; width:100%; height:100%; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-2bd971c1 .sp-editorial-photo { width:100%; height:100%; object-fit:cover; object-position:center; filter:brightness(.72) saturate(.7); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d { position:relative; z-index:1; padding:46px; background:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d .sp-display-title { font-size:clamp(50px,5.3vw,82px); }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d .sp-hebrew-body { font-size:16px; margin-top:24px; }
/* Jerusalem and heritage. */
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-4501a08b { background:#e9e3d8; padding:110px 0; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-5a62c765 { gap:7%; direction:ltr; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-1da850af { flex:0 0 36%; width:36%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-location-media { flex:0 0 57%; width:57%; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-map-canvas { background:transparent; box-shadow:none; border-radius:0; overflow:hidden; }
body:has(.sp26-design) .elementor.elementor-8 .sp-map-canvas .sp-illustrated-map-image { border-radius:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-map-marker { font-size:14px; color:#29434b; font-weight:600; }
body:has(.sp26-design) .elementor.elementor-8 .elementor-element-4d658e63 { padding:140px 0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-media { width:46%; flex:0 0 46%; padding:0 0 90px 45px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-media .sp-editorial-photo { width:100%; height:490px; object-fit:cover; }
body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-detail { width:42%; height:280px; position:absolute; left:0; bottom:0; right:auto; top:auto; object-fit:cover; border:8px solid var(--palace-paper); box-shadow:none; transform:none; }
/* Enquiry: oversized invitation and clean, clearly labelled form. */
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-section { padding:100px 0; background:#20343a; color:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-shell { flex-direction:row; direction:rtl; align-items:center; gap:10%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-copy { width:48%; flex:0 0 48%; padding:0; gap:24px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-title { font:400 clamp(48px,5.2vw,88px)/.95 'Cormorant Garamond',Georgia,serif; letter-spacing:-.045em; text-transform:none; color:var(--palace-paper); direction:ltr; text-align:right; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-title em { color:#c4aa82; font-weight:400; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-text { color:#cbd1c9; font:300 16px/1.9 Heebo,sans-serif; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-copy > .sp-contact-text:first-child { font:400 17.25px/1.4 Heebo,sans-serif; color:var(--palace-paper); }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-actions { width:42%; flex:0 0 42%; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-form { gap:22px; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-form-label { color:#e7e4dc; font-size:12px; font-weight:400; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-form-input,.sp-form-textarea) { background:transparent; border:0; border-bottom:1px solid #84918e; border-radius:0; color:#fffdf4; padding:10px 0; font:300 16px/1.5 Heebo,sans-serif; box-shadow:none; }
body:has(.sp26-design) .elementor.elementor-8 .sp-form-input { min-height:48px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-form-textarea { min-height:100px; resize:vertical; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-form-input,.sp-form-textarea)::placeholder { color:#adb9b2; }
body:has(.sp26-design) .elementor.elementor-8 .sp-form-submit { background:var(--palace-paper); color:var(--palace-ink); border:1px solid var(--palace-paper); border-radius:0; padding:17px 28px; font:400 14px/1.5 Heebo,sans-serif; margin-top:6px; width:100%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-form-submit:hover { background:#d8c6aa; border-color:#d8c6aa; }
body:has(.sp26-design) .elementor.elementor-8 .sp-contact-email { color:var(--palace-paper); font:300 13px/1.5 Heebo,sans-serif; margin-top:20px; }
/* Useful information and a spacious colophon. */
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-shell { gap:10%; align-items:flex-start; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-heading { width:33%; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-column { width:57%; padding:0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-item { border:0; border-bottom:1px solid var(--palace-line); border-radius:0; background:transparent; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-header { padding:23px 0; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-question { font:400 18px/1.55 Heebo,sans-serif; color:var(--palace-ink); }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-icon-text { color:var(--palace-brass); font-size:27px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-faq-answer-wrap { padding:0 0 24px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-section { background:#e7e1d5; padding:70px 0 26px; border-top:1px solid var(--palace-line); }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-row { gap:8%; padding-bottom:55px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-brand { width:42%; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-logo { width:310px; max-width:100%; margin-bottom:14px; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-label { color:var(--palace-ink); font:400 22px/1.4 Heebo,sans-serif; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-link { color:var(--palace-ink); font:300 14px/1.7 Heebo,sans-serif; }
body:has(.sp26-design) .elementor.elementor-8 .sp-footer-bottom { padding-top:20px; border-color:var(--palace-line); }
body:has(.sp26-design) .elementor.elementor-8 .sp-muted-copy { color:var(--palace-muted); font-size:11px; }
/* Header is scoped to the homepage, including Elementor previews. */
body:has(.sp26-design) .sp-header-root { background:var(--palace-paper); border-bottom:1px solid var(--palace-line); box-shadow:none; }
body:has(.sp26-design) .sp-header-shell { width:94%; max-width:none; min-height:78px; padding:12px 0; }
body:has(.sp26-design) .sp-header-logo { width:188px; }
body:has(.sp26-design) .sp-header-booking { background:var(--palace-ink); border:1px solid var(--palace-ink); color:var(--palace-paper); padding:13px 23px; font:400 12px/1.5 Heebo,sans-serif; }
body:has(.sp26-design) .sp-header-toggle { color:var(--palace-ink); }
body:has(.sp26-design) .sp-header-language { font-size:11px; }
body:has(.sp26-design) .sp-header-panel { background:var(--palace-paper); border:1px solid var(--palace-line); box-shadow:0 25px 50px #20343a18; padding:35px; }
body:has(.sp26-design) .sp-header-nav-link { font:400 26px/1.5 Heebo,sans-serif; color:var(--palace-ink); border-color:var(--palace-line); }
/* Tablet: preserve composition without compressed columns. */
@media (max-width:1024px) {
 body:has(.sp26-design) .elementor.elementor-8 .sp-section { padding:85px 0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hebrew-body { font-size:16px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-story-main { height:530px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-story-detail { height:210px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-features { grid-template-columns:repeat(3,1fr); row-gap:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-dining-image { height:520px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-b893fa0 { min-height:690px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d { padding:32px; }
 
}
@media (max-width:767px) {
 body:has(.sp26-design) .elementor.elementor-8 .sp-section { padding:70px 0; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-section-shell,.sp-editorial-shell,.sp-lower-shell,.sp-rooms-wide-shell,.sp-faq-shell,.sp-contact-shell) { width:88%; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-section-shell,.sp-editorial-shell,.sp-contact-shell) { flex-direction:column; gap:40px; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-copy,.sp-media,.sp-story-media,.sp-heritage-media,.sp-location-media,.sp-contact-copy,.sp-contact-actions) { width:100%; flex-basis:auto; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hebrew-kicker { font-size:16.5px; margin-bottom:13px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-display-title { font-size:clamp(49px,13.5vw,80px); line-height:.98; letter-spacing:-.04em; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hebrew-body { font-size:16px; line-height:1.85; margin-top:23px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero { padding:12px 5% 0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero-content { padding-bottom:21px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero-title { font-size:18.7vw; line-height:.79; white-space:normal; max-width:100%; margin:15px 0 22px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero-meta { flex-direction:column; gap:5px; align-items:center; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero-meta-text { font-size:10px; letter-spacing:.02em; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero-photo { height:450px; object-position:51% center; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-hero::after { left:10%; right:10%; bottom:26px; font-size:26px; line-height:1.05; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-568f8914 { flex-direction:column; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-story-media { padding:0 28px 34px 0; margin-top:10px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-story-main { height:440px; border-radius:180px 180px 0 0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-story-detail { width:40%; height:190px; border-width:6px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-features { grid-template-columns:repeat(5,1fr); gap:7px; margin-top:28px; padding-top:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-feature-label { font-size:10px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-feature > div { width:28px; height:28px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-91c6a01 { padding:65px 0 48px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-intro { flex-direction:column; gap:24px; align-items:stretch; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-rooms-title-group,.sp-rooms-body-group) { width:100%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-rooms-wide-shell { gap:34px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-slide { flex-basis:90%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-stage { gap:16px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-image { height:310px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-caption { flex-direction:column; align-items:flex-end; gap:8px; padding:18px 0 0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-name { font-size:33px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-carousel-subtitle { font-size:13px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-58480709 { padding:72px 0 100px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-6321abad { flex-direction:column; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-dining-image { height:420px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-dining-detail { width:48%; height:175px; left:-5%; bottom:-40px; border-width:6px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offers-section { padding:65px 0 48px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-lower-heading-row { flex-direction:column; gap:24px; margin-bottom:35px; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-lower-heading-row .sp-lower-title-group,.sp-lower-intro) { width:100%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offers-track { gap:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offer-card { flex-basis:86%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offer-card:nth-child(2) { margin-top:0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offer-copy { gap:12px; padding-top:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-offer-controls { margin-top:30px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-76dba05f { padding:0; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-b893fa0 { width:100%; padding:320px 6% 45px; min-height:0; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-2bd971c1 { height:440px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d { padding:28px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-36b7431d .sp-display-title { font-size:53px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-4501a08b { padding:65px 0; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-1da850af { width:100%; flex-basis:auto; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-map-canvas { min-height:0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-map-marker { font-size:11px; }
 body:has(.sp26-design) .elementor.elementor-8 .elementor-element-44bc7c57 { flex-direction:column; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-media { padding:0 0 60px 24px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-media .sp-editorial-photo { height:370px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-heritage-detail { width:43%; height:210px; border-width:6px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-contact-section { padding:70px 0; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-contact-title { font-size:clamp(49px,13.5vw,80px); line-height:.98; letter-spacing:-.04em; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-contact-copy { gap:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-contact-form { gap:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-form-row { flex-direction:column; gap:20px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-form-row .sp-form-field { width:100%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-faq-shell { flex-direction:column; gap:32px; }
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-faq-heading,.sp-faq-column) { width:100%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-faq-question { font-size:16px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-faq-header { padding:20px 0; gap:15px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-footer-section { padding:50px 0 24px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-footer-row { gap:32px; padding-bottom:35px; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-footer-brand { width:100%; }
 body:has(.sp26-design) .elementor.elementor-8 .sp-footer-logo { width:260px; }
 body:has(.sp26-design) .sp-header-shell { width:90%; min-height:70px; padding:12px 0; grid-template-columns:1fr auto 1fr; }
 body:has(.sp26-design) .sp-header-logo { width:138px; }
 body:has(.sp26-design) .sp-header-booking { padding:11px 9px; font-size:10px; white-space:nowrap; }
 body:has(.sp26-design) .sp-header-languages { display:none; }
 body:has(.sp26-design) .sp-header-toggle { width:34px; height:34px; }
 body:has(.sp26-design) .sp-header-panel { width:100%; padding:25px; }
}
/* A single opening gesture. The rest of the page stays readable while scrolling. */
@keyframes palace-masthead { from { opacity:.25; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:no-preference) {
 body:has(.sp26-design):not(.elementor-editor-active) .elementor.elementor-8 .sp-hero-title { animation:palace-masthead 950ms cubic-bezier(.2,.65,.3,1) both; }
}
@media (prefers-reduced-motion:reduce) {
 body:has(.sp26-design) .elementor.elementor-8 *, body:has(.sp26-design) .elementor.elementor-8 *::before, body:has(.sp26-design) .elementor.elementor-8 *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* One gold rule per text CTA, shortening toward its centre on hover/focus. */
body:has(.sp26-design) .elementor.elementor-8 .e-button-base { text-decoration:none!important; }
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link) {
 position:relative; border:0!important; text-decoration:none!important; box-shadow:none;
}
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link)::after {
 content:''; position:absolute; inset-inline:0; bottom:0; height:1px; width:100%;
 background:#b08a57; border:0; pointer-events:none; transform:scaleX(1); transform-origin:50% 50%;
 transition:transform .3s cubic-bezier(.22,.68,.3,1);
}
body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link):is(:hover,:focus-visible)::after { transform:scaleX(.74); }
@media(prefers-reduced-motion:reduce) {
 body:has(.sp26-design) .elementor.elementor-8 :is(.sp-link-cta,.sp-card-link)::after { transition:none; }
}
/* Suppress stale cached markup after removing the native feature row. */
body:has(.sp26-design) .elementor.elementor-8 .sp-features { display:none!important; }/* End custom CSS */