/* ============================================================================
   HOTEL PETALUMA · INNER PAGES · hp-style.css
   ----------------------------------------------------------------------------
   One stylesheet for: Dining, Events, Neighborhood, Gift Cards, Contact.
   Load it on every inner page, AFTER bootstrap.css:
     <link rel="stylesheet" href="css/hp-style.css">   (adjust the path)

   Bootstrap 3, plain CSS. No JavaScript, no :where(), clamp(), min(), max(),
   calc() or rem. Fonts come from the theme's own @font-face (local
   font1.woff2 = "Jost", font2.woff2 = "Cormorant Garamond").

   HOW THIS FILE IS ORGANISED
   1. COMMON CSS (small, on purpose): only the basic text styles that are
      the same on every page.
        .hp-innerpage-cmn-page       page wrapper: colours, body font, size
        .hp-innerpage-cmn-label      small gold text above a title
        .hp-innerpage-cmn-title      section title (h2)
        .hp-innerpage-cmn-paragraph  normal paragraph
        .hp-innerpage-cmn-rv         scroll fade-in (needs hp-innerpage-reveal.js)
   2. PAGE CSS: everything else, one block per page, between
      "<PAGE> PAGE CSS START" and "<PAGE> PAGE CSS END".
      Every rule starts with the page's wrapper class, for example
        .hp-dining-page .hp-dining-figure { … }
      so a change there can never affect another page.

   PAGE WRAPPER
     <div class="hp-innerpage-cmn-page hp-dining-page"> … </div>
   ========================================================================== */


/* ============================================================================
   COMMON CSS START
   Basic text styles shared by every inner page. Change with care:
   a change here affects all pages.
   ========================================================================== */

/* ---------- PAGE BASE: colours + body font ---------- */
.hp-innerpage-cmn-page {
  --ground: #F6F3EE;
  --ground-2: #EBE5DC;
  --ground-3: #1C1917;
  --ink: #24201E;
  --ink-soft: #4B4341;
  --accent: #8F6F3A;
  --line: rgba(36, 32, 30, .15);
  --display: "Cormorant Garamond", Georgia, serif;
  --sans: "Jost", -apple-system, "Segoe UI", sans-serif;
  --ease: cubic-bezier(.16, 1, .3, 1);
  background: var(--ground);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

/* ---------- LABEL: small gold text above a title ---------- */
.hp-innerpage-cmn-label {
  margin: 0 0 20.8px;
  font-family: var(--sans);
  font-size: 11.2px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--accent);
}

/* ---------- TITLE: section heading (h2) ---------- */
.hp-innerpage-cmn-title {
  margin: 0;
  font-family: var(--display);
  font-size: 54.4px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: normal;
  text-transform: none;
  color: inherit;
}

/* ---------- PARAGRAPH ---------- */
.hp-innerpage-cmn-paragraph {
  margin: 0;
  max-width: 64ch;
  color: var(--ink-soft);
}

/* ---------- TEXT SIZES ON SMALLER / LARGER SCREENS ---------- */
@media (min-width: 1524px) {
  .hp-innerpage-cmn-page {
    font-size: 1.05vw;
  }
}
@media (min-width: 1600px) {
  .hp-innerpage-cmn-page {
    font-size: 16.8px;
  }
}
@media (max-width: 1359px) {
  .hp-innerpage-cmn-title {
    font-size: 4vw;
  }
}
@media (max-width: 799px) {
  .hp-innerpage-cmn-title {
    font-size: 32px;
  }
}

/* ---------- SCROLL FADE-IN (same as the client's .rv reveal) ----------
   Works with js/hp-innerpage-reveal.js:
   - the script adds -ready to every .hp-innerpage-cmn-rv (hidden, 22px lower)
   - when the block scrolls into view it adds -visible (fades up in 0.9s)
   Without JavaScript nothing is hidden. -d1 / -d2 = small delay, as in the
   original (90ms / 180ms), used for the 2nd and 3rd item in a row. */
.hp-innerpage-cmn-rv.hp-innerpage-cmn-rv-ready {
  opacity: 0;
  transform: translateY(22px);
}

.hp-innerpage-cmn-rv.hp-innerpage-cmn-rv-ready.hp-innerpage-cmn-rv-visible {
  opacity: 1;
  transform: none;
  transition: opacity .9s var(--ease), transform .9s var(--ease);
}

.hp-innerpage-cmn-rv-d1.hp-innerpage-cmn-rv-ready.hp-innerpage-cmn-rv-visible {
  transition-delay: 90ms;
}

.hp-innerpage-cmn-rv-d2.hp-innerpage-cmn-rv-ready.hp-innerpage-cmn-rv-visible {
  transition-delay: 180ms;
}

@media (prefers-reduced-motion: reduce) {
  .hp-innerpage-cmn-rv.hp-innerpage-cmn-rv-ready {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ============================================================================
   COMMON CSS END
   ========================================================================== */


/* ============================================================================
   DINING PAGE CSS START  ·  <div class="hp-innerpage-cmn-page hp-dining-page">
   ========================================================================== */

/* ---------- BASIC RESETS (remove Bootstrap 3 defaults) ---------- */
.hp-dining-page .hp-dining-crumb-link,
.hp-dining-page .hp-dining-link,
.hp-dining-page .hp-dining-crumb-link:hover,
.hp-dining-page .hp-dining-crumb-link:focus {
  color: inherit;
  text-decoration: none;
}

.hp-dining-page .hp-dining-btn,
.hp-dining-page .hp-dining-btn:hover,
.hp-dining-page .hp-dining-link:hover,
.hp-dining-page .hp-dining-btn:focus,
.hp-dining-page .hp-dining-link:focus {
  text-decoration: none;
}

.hp-dining-page .hp-dining-crumb-link:focus-visible,
.hp-dining-page .hp-dining-btn:focus-visible,
.hp-dining-page .hp-dining-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-dining-page .hp-dining-split-img,
.hp-dining-page .hp-dining-gallery-img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

.hp-dining-page .hp-dining-figure {
  margin: 0;
}

/* ---------- BOOTSTRAP 3 OVERRIDES ---------- */
.hp-dining-page .hp-dining-wrap {
  width: auto;
  max-width: 1288px;
  padding-left: 24px;
  padding-right: 24px;
}

/* ---------- SECTIONS ---------- */
.hp-dining-page .hp-dining-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

.hp-dining-page .hp-dining-section.hp-dining-section-tight {
  padding-top: 88px;
  padding-bottom: 88px;
}

.hp-dining-page .hp-dining-section.hp-dining-section-flush {
  padding-top: 0;
}

.hp-dining-page .hp-dining-dark {
  --ink: #F1EDE4;
  --ink-soft: #B4ABA0;
  --line: rgba(241, 237, 228, .16);
  --accent: #C9A96B;
  background: var(--ground-3);
  color: #F1EDE4;
}

.hp-dining-page .hp-dining-alt {
  background: var(--ground-2);
}

/* ---------- TYPE ---------- */
.hp-dining-page .hp-dining-paragraph-next {
  margin-top: 19.2px;
}

.hp-dining-page .hp-dining-lede {
  margin: 0;
  max-width: 56ch;
  font-size: 20px;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* ---------- BREADCRUMB ---------- */
.hp-dining-page .hp-dining-crumb {
  padding-top: 25.6px;
  padding-bottom: 25.6px;
  font-size: 11.2px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-dining-page .hp-dining-crumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hp-dining-page .hp-dining-crumb-item::after {
  content: "·";
  margin-left: 9.6px;
  opacity: .5;
}

.hp-dining-page .hp-dining-crumb-item:last-child::after {
  content: "";
}

/* ---------- THE SHUCKERY: SPLIT ---------- */
.hp-dining-page .hp-dining-split {
  display: flex;
  align-items: center;
}

.hp-dining-page .hp-dining-split-text {
  flex: 1.05 1 0%;
  min-width: 0;
}

.hp-dining-page .hp-dining-split-media {
  flex: .95 1 0%;
  min-width: 0;
  margin-left: 6vw;
}
@media (min-width: 1600px) {
  .hp-dining-page .hp-dining-split-media {
    margin-left: 96px;
  }
}
.hp-dining-page .hp-dining-split-img {
  width: 100%;
  object-fit: cover;
  background: var(--ground-2);
}

.hp-dining-page .hp-dining-facts {
  max-width: 576px;
  margin: 28.8px 0 35.2px;
  padding: 0;
  list-style: none;
  font-size: 14.72px;
  color: var(--ink-soft);
}

.hp-dining-page .hp-dining-facts-item {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.hp-dining-page .hp-dining-facts-value {
  font-weight: 400;
  color: var(--ink);
}

/* ---------- BUTTONS ---------- */
.hp-dining-page .hp-dining-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 8px;
}

.hp-dining-page .hp-dining-btn {
  display: inline-block;
  min-height: 44px;
  padding: 16.8px 35.2px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: none;
  color: inherit;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.hp-dining-page .hp-dining-btn:hover,
.hp-dining-page .hp-dining-btn:focus {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-dining-page .hp-dining-dark .hp-dining-btn:hover,
.hp-dining-page .hp-dining-dark .hp-dining-btn:focus {
  background: #F1EDE4;
  color: var(--ground-3);
  border-color: #F1EDE4;
}

.hp-dining-page .hp-dining-btn.hp-dining-btn-solid {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-dining-page .hp-dining-btn.hp-dining-btn-solid:hover,
.hp-dining-page .hp-dining-btn.hp-dining-btn-solid:focus {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}

.hp-dining-page .hp-dining-link {
  display: inline-block;
  min-height: 24px;
  padding-bottom: 6.4px;
  border-bottom: 1px solid var(--line);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  transition: border-color .3s var(--ease), color .3s var(--ease);
}

.hp-dining-page .hp-dining-link:hover,
.hp-dining-page .hp-dining-link:focus {
  border-color: var(--accent);
  color: var(--accent);
}

/* ---------- THE SHUCKERY: GALLERY ---------- */
.hp-dining-page .hp-dining-gallery-wrap {
  margin-top: 64px;
}

.hp-dining-page .hp-dining-gallery {
  margin-left: -21px;
  margin-right: -21px;
  margin-bottom: -42px;
}

.hp-dining-page .hp-dining-gallery-col {
  padding-left: 21px;
  padding-right: 21px;
  margin-bottom: 42px;
}

.hp-dining-page .hp-dining-gallery-img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

/* ---------- COMING SOON: CARDS ---------- */
.hp-dining-page .hp-dining-head {
  margin-bottom: 64px;
}

.hp-dining-page .hp-dining-cards {
  margin-left: -24px;
  margin-right: -24px;
}

.hp-dining-page .hp-dining-cards-col {
  padding-left: 24px;
  padding-right: 24px;
}

.hp-dining-page .hp-dining-card {
  display: block;
}

.hp-dining-page .hp-dining-card-title {
  margin: 22.4px 0 8.8px;
  font-family: var(--display);
  font-size: 28px;
  font-weight: 300;
  line-height: 1.2;
  color: inherit;
}

.hp-dining-page .hp-dining-card-text {
  margin: 0;
  max-width: 64ch;
  font-size: 15.52px;
  color: var(--ink-soft);
}

.hp-dining-page .hp-dining-spec {
  margin: 16px 0 0;
  padding-top: 16px;
  max-width: 64ch;
  border-top: 1px solid var(--line);
  font-size: 15.52px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-dining-page .hp-dining-spec-value {
  font-weight: 500;
  color: var(--accent);
}

/* ---------- NOTES ---------- */
.hp-dining-page .hp-dining-note {
  margin: 48px 0 0;
  max-width: 72ch;
  font-size: 14.4px;
  color: var(--ink-soft);
}

.hp-dining-page .hp-dining-note.hp-dining-note-flush {
  margin-top: 0;
}
@media (max-width: 1199px) {
  .hp-dining-page .hp-dining-section {
    padding-top: 124px;
    padding-bottom: 124px;
  }

  .hp-dining-page .hp-dining-section.hp-dining-section-tight {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .hp-dining-page .hp-dining-gallery-wrap {
    margin-top: 56px;
  }

  .hp-dining-page .hp-dining-gallery {
    margin-left: -17px;
    margin-right: -17px;
    margin-bottom: -34px;
  }

  .hp-dining-page .hp-dining-gallery-col {
    padding-left: 17px;
    padding-right: 17px;
    margin-bottom: 34px;
  }

  .hp-dining-page .hp-dining-head {
    margin-bottom: 56px;
  }

  .hp-dining-page .hp-dining-cards {
    margin-left: -20px;
    margin-right: -20px;
  }

  .hp-dining-page .hp-dining-cards-col {
    padding-left: 20px;
    padding-right: 20px;
  }

  .hp-dining-page .hp-dining-note {
    margin-top: 44px;
  }
}
@media (max-width: 991px) {
  .hp-dining-page .hp-dining-section {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .hp-dining-page .hp-dining-section.hp-dining-section-tight {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .hp-dining-page .hp-dining-split {
    display: block;
  }

  .hp-dining-page .hp-dining-split-media {
    margin-left: 0;
    margin-top: 48px;
  }

  .hp-dining-page .hp-dining-gallery-wrap {
    margin-top: 46px;
  }

  .hp-dining-page .hp-dining-gallery {
    margin-left: -14px;
    margin-right: -14px;
    margin-bottom: -28px;
  }

  .hp-dining-page .hp-dining-gallery-col {
    padding-left: 14px;
    padding-right: 14px;
    margin-bottom: 28px;
  }

  .hp-dining-page .hp-dining-head {
    margin-bottom: 46px;
  }

  .hp-dining-page .hp-dining-cards-col + .hp-dining-cards-col {
    margin-top: 32px;
  }

  .hp-dining-page .hp-dining-note {
    margin-top: 36px;
  }
}
@media (max-width: 767px) {
  .hp-dining-page .hp-dining-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .hp-dining-page .hp-dining-section.hp-dining-section-tight {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .hp-dining-page .hp-dining-split-media {
    margin-top: 42px;
  }

  .hp-dining-page .hp-dining-gallery-wrap {
    margin-top: 40px;
  }

  .hp-dining-page .hp-dining-gallery {
    margin-left: -12px;
    margin-right: -12px;
    margin-bottom: -24px;
  }

  .hp-dining-page .hp-dining-gallery-col {
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 24px;
  }

  .hp-dining-page .hp-dining-head {
    margin-bottom: 40px;
  }

  .hp-dining-page .hp-dining-cards-col + .hp-dining-cards-col {
    margin-top: 29px;
  }

  .hp-dining-page .hp-dining-note {
    margin-top: 32px;
  }
}
@media (max-width: 480px) {
  .hp-dining-page .hp-dining-wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hp-dining-page .hp-dining-section {
    padding-top: 58px;
    padding-bottom: 58px;
  }

  .hp-dining-page .hp-dining-section.hp-dining-section-tight {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .hp-dining-page .hp-dining-split-media {
    margin-top: 40px;
  }
}

/* ---------- FONT SIZES (exactly as the original) ---------- */
@media (max-width: 1399px) {
  .hp-dining-page .hp-dining-card-title {
    font-size: 2vw;
  }
}
@media (max-width: 1332px) {
  .hp-dining-page .hp-dining-lede {
    font-size: 1.5vw;
  }
}
@media (max-width: 1119px) {
  .hp-dining-page .hp-dining-lede {
    font-size: 16.8px;
  }
}
@media (max-width: 999px) {
  .hp-dining-page .hp-dining-card-title {
    font-size: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hp-dining-page .hp-dining-btn,
  .hp-dining-page .hp-dining-link {
    transition: none;
  }
}

/* ============================================================================
   DINING PAGE CSS END
   ========================================================================== */


/* ============================================================================
   EVENTS PAGE CSS START  ·  <div class="hp-innerpage-cmn-page hp-events-page">
   ========================================================================== */

/* ---------- BASIC RESETS (remove Bootstrap 3 defaults) ---------- */
.hp-events-page .hp-events-crumb-link,
.hp-events-page .hp-events-link,
.hp-events-page .hp-events-crumb-link:hover,
.hp-events-page .hp-events-crumb-link:focus {
  color: inherit;
  text-decoration: none;
}

.hp-events-page .hp-events-btn,
.hp-events-page .hp-events-btn:hover,
.hp-events-page .hp-events-link:hover,
.hp-events-page .hp-events-btn:focus,
.hp-events-page .hp-events-link:focus {
  text-decoration: none;
}

.hp-events-page .hp-events-crumb-link:focus-visible,
.hp-events-page .hp-events-btn:focus-visible,
.hp-events-page .hp-events-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-events-page .hp-events-offer-meta,
.hp-events-page .hp-events-offer-text,
.hp-events-page .hp-events-offer-fine {
  margin: 0;
}

.hp-events-page .hp-events-split-img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

.hp-events-page .hp-events-spectable {
  background: none;
}

.hp-events-page .hp-events-field-label {
  max-width: none;
}

/* ---------- BOOTSTRAP 3 OVERRIDES ---------- */
.hp-events-page .hp-events-wrap {
  width: auto;
  max-width: 1288px;
  padding-left: 24px;
  padding-right: 24px;
}

.hp-events-page .hp-events-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ---------- SECTIONS ---------- */
.hp-events-page .hp-events-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

.hp-events-page .hp-events-section.hp-events-section-tight {
  padding-top: 88px;
  padding-bottom: 88px;
}

.hp-events-page .hp-events-section.hp-events-section-flush {
  padding-top: 0;
}

.hp-events-page .hp-events-dark {
  --ink: #F1EDE4;
  --ink-soft: #B4ABA0;
  --line: rgba(241, 237, 228, .16);
  --accent: #C9A96B;
  background: var(--ground-3);
  color: #F1EDE4;
}

.hp-events-page .hp-events-alt {
  background: var(--ground-2);
}

/* ---------- TYPE ---------- */
.hp-events-page .hp-events-paragraph-next {
  margin-top: 19.2px;
}

.hp-events-page .hp-events-paragraph-intro {
  margin-top: 16px;
}

.hp-events-page .hp-events-lede {
  margin: 0;
  max-width: 56ch;
  font-size: 20px;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* ---------- BREADCRUMB ---------- */
.hp-events-page .hp-events-crumb {
  padding-top: 25.6px;
  padding-bottom: 25.6px;
  font-size: 11.2px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-events-page .hp-events-crumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hp-events-page .hp-events-crumb-item::after {
  content: "·";
  margin-left: 9.6px;
  opacity: .5;
}

.hp-events-page .hp-events-crumb-item:last-child::after {
  content: "";
}

/* ---------- SPLIT: text + photo side by side ---------- */
.hp-events-page .hp-events-split {
  display: flex;
  align-items: center;
  gap: 6vw;
}

.hp-events-page .hp-events-split-text {
  flex: 1.05 1 0%;
  min-width: 0;
}

.hp-events-page .hp-events-split-media {
  flex: .95 1 0%;
  min-width: 0;
}

.hp-events-page .hp-events-split-flip .hp-events-split-text {
  flex: .95 1 0%;
  order: 2;
}

.hp-events-page .hp-events-split-flip .hp-events-split-media {
  flex: 1.05 1 0%;
}

.hp-events-page .hp-events-split-img {
  width: 100%;
  object-fit: cover;
  background: var(--ground-2);
}

/* ---------- BUTTONS + LINKS ---------- */
.hp-events-page .hp-events-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}

.hp-events-page .hp-events-btn {
  display: inline-block;
  min-height: 44px;
  padding: 16.8px 35.2px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: none;
  color: inherit;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.hp-events-page .hp-events-btn:hover,
.hp-events-page .hp-events-btn:focus {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-events-page .hp-events-btn.hp-events-btn-solid {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-events-page .hp-events-btn.hp-events-btn-solid:hover,
.hp-events-page .hp-events-btn.hp-events-btn-solid:focus {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}

.hp-events-page .hp-events-link {
  display: inline-block;
  min-height: 24px;
  padding-bottom: 6.4px;
  border-bottom: 1px solid var(--line);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  transition: border-color .3s var(--ease), color .3s var(--ease);
}

.hp-events-page .hp-events-link:hover,
.hp-events-page .hp-events-link:focus {
  border-color: var(--accent);
  color: var(--accent);
}

/* ---------- SPECIFICATIONS TABLE ---------- */
.hp-events-page .hp-events-spectable {
  width: 100%;
  margin-top: 32px;
  border-collapse: collapse;
  font-size: 14.72px;
}

.hp-events-page .hp-events-spectable-label,
.hp-events-page .hp-events-spectable-value {
  padding: 14.4px 16px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.hp-events-page .hp-events-spectable-label {
  width: 45%;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-events-page .hp-events-spectable-value {
  color: var(--ink);
}

/* ---------- OCCASIONS: 3 CARDS ---------- */
.hp-events-page .hp-events-head {
  margin-bottom: 64px;
}

.hp-events-page .hp-events-offers {
  display: flex;
  flex-wrap: wrap;
  margin-left: -20.8px;
  margin-right: -20.8px;
  margin-bottom: -41.6px;
}

.hp-events-page .hp-events-offers::before,
.hp-events-page .hp-events-offers::after {
  display: none;
}

.hp-events-page .hp-events-offers-col {
  display: flex;
  float: none;
  padding-left: 20.8px;
  padding-right: 20.8px;
  margin-bottom: 41.6px;
}

.hp-events-page .hp-events-offer {
  display: flex;
  flex-direction: column;
  gap: 13.6px;
  width: 100%;
  padding: 41.6px;
  border: 1px solid var(--line);
  background: var(--ground);
}

.hp-events-page .hp-events-offer-meta,
.hp-events-page .hp-events-offer-text,
.hp-events-page .hp-events-offer-fine {
  flex: 1;
  max-width: 64ch;
  font-size: 15.2px;
  color: var(--ink-soft);
}

.hp-events-page .hp-events-offer-meta {
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
}

.hp-events-page .hp-events-offer-title {
  margin: 0 0 2.4px;
  font-family: var(--display);
  font-size: 28px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.2;
  color: inherit;
}

.hp-events-page .hp-events-offer-fine {
  font-size: 12.48px;
  letter-spacing: .02em;
  opacity: .85;
}

/* ---------- WHAT'S INCLUDED: FACTS LIST ---------- */
.hp-events-page .hp-events-facts {
  max-width: 576px;
  margin: 28.8px 0 35.2px;
  padding: 0;
  list-style: none;
  font-size: 14.72px;
  color: var(--ink-soft);
}

.hp-events-page .hp-events-facts-item {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.hp-events-page .hp-events-facts-value {
  font-weight: 400;
  color: var(--ink);
}

/* ---------- ENQUIRY FORM ---------- */
.hp-events-page .hp-events-form {
  max-width: 729.6px;
  margin: 40px -12.8px 0;
}

.hp-events-page .hp-events-field {
  padding-left: 12.8px;
  padding-right: 12.8px;
  margin-bottom: 25.6px;
}

.hp-events-page .hp-events-field:last-child {
  margin-bottom: 0;
}

.hp-events-page .hp-events-field-label {
  display: block;
  margin: 0 0 8px;
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-events-page .hp-events-input,
.hp-events-page .hp-events-input,
.hp-events-page .hp-events-textarea,
.hp-events-page .hp-events-input:focus,
.hp-events-page .hp-events-input:focus,
.hp-events-page .hp-events-textarea:focus,
.hp-events-page .hp-events-input:active,
.hp-events-page .hp-events-textarea:active {
  display: block;
  width: 100% !important;
  height: auto !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 12px 3.2px !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  background: none;
  font-family: var(--sans);
  font-size: 16px;
  font-weight: 300;
  line-height: normal;
  color: var(--ink);
  transition: border-color .3s var(--ease);
}

.hp-events-page .hp-events-textarea,
.hp-events-page .hp-events-textarea:focus,
.hp-events-page .hp-events-textarea:active {
  display: inline-block;
  vertical-align: baseline;
  min-height: 128px !important;
  resize: vertical;
}

.hp-events-page .hp-events-input:focus,
.hp-events-page .hp-events-input:focus,
.hp-events-page .hp-events-textarea:focus {
  border-bottom-color: var(--accent) !important;
}

.hp-events-page .hp-events-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--ground) inset !important;
  -webkit-text-fill-color: var(--ink);
}

.hp-events-page .hp-events-trap {
  position: absolute;
  left: -9999px;
}
@media (min-width: 1600px) {
  .hp-events-page .hp-events-split {
    gap: 96px;
  }
}
@media (max-width: 1454px) {
  .hp-events-page .hp-events-section {
    padding-top: 11vw;
    padding-bottom: 11vw;
  }
}
@media (max-width: 1399px) {
  .hp-events-page .hp-events-offer-title {
    font-size: 2vw;
  }
}
@media (max-width: 1386px) {
  .hp-events-page .hp-events-offers {
    margin-left: -1.5vw;
    margin-right: -1.5vw;
    margin-bottom: -3vw;
  }

  .hp-events-page .hp-events-offers-col {
    padding-left: 1.5vw;
    padding-right: 1.5vw;
    margin-bottom: 3vw;
  }

  .hp-events-page .hp-events-offer {
    padding: 3vw;
  }
}
@media (max-width: 1332px) {
  .hp-events-page .hp-events-lede {
    font-size: 1.5vw;
  }
}
@media (max-width: 1279px) {
  .hp-events-page .hp-events-head {
    margin-bottom: 5vw;
  }
}
@media (max-width: 1257px) {
  .hp-events-page .hp-events-section.hp-events-section-tight {
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
}
@media (max-width: 1119px) {
  .hp-events-page .hp-events-lede {
    font-size: 16.8px;
  }
}
@media (max-width: 999px) {
  .hp-events-page .hp-events-offer-title {
    font-size: 20px;
  }
}
@media (max-width: 991px) {
  .hp-events-page .hp-events-split {
    flex-direction: column;
    align-items: stretch;
  }

  .hp-events-page .hp-events-split-text,
  .hp-events-page .hp-events-split-media,
  .hp-events-page .hp-events-split-flip .hp-events-split-text,
  .hp-events-page .hp-events-split-flip .hp-events-split-media {
    flex: none;
    order: 0;
  }
}
@media (max-width: 959px) {
  .hp-events-page .hp-events-offer {
    padding: 28.8px;
  }
}
@media (max-width: 799px) {
  .hp-events-page .hp-events-head {
    margin-bottom: 40px;
  }

  .hp-events-page .hp-events-offers {
    margin-left: -12px;
    margin-right: -12px;
    margin-bottom: -24px;
  }

  .hp-events-page .hp-events-offers-col {
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 24px;
  }
}
@media (max-width: 727px) {
  .hp-events-page .hp-events-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media (max-width: 685px) {
  .hp-events-page .hp-events-section.hp-events-section-tight {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (max-width: 666px) {
  .hp-events-page .hp-events-split {
    gap: 40px;
  }
}
@media (max-width: 560px) {
  .hp-events-page .hp-events-wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hp-events-page .hp-events-section {
    padding-top: 13vw;
    padding-bottom: 13vw;
  }
}
@media (max-width: 430px) {
  .hp-events-page .hp-events-section {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.hp-events-page .hp-events-section.hp-events-section-flush {
  padding-top: 0;
}
@media (prefers-reduced-motion: reduce) {
  .hp-events-page .hp-events-btn,
  .hp-events-page .hp-events-link {
    transition: none;
  }
}

/* ============================================================================
   EVENTS PAGE CSS END
   ========================================================================== */


/* ============================================================================
   NEIGHBORHOOD PAGE CSS START  ·  <div class="hp-innerpage-cmn-page hp-neighborhood-page">
   ========================================================================== */

/* ---------- BASIC RESETS (remove Bootstrap 3 defaults) ---------- */
.hp-neighborhood-page .hp-neighborhood-crumb-link,
.hp-neighborhood-page .hp-neighborhood-link,
.hp-neighborhood-page .hp-neighborhood-crumb-link:hover,
.hp-neighborhood-page .hp-neighborhood-crumb-link:focus {
  color: inherit;
  text-decoration: none;
}

.hp-neighborhood-page .hp-neighborhood-btn,
.hp-neighborhood-page .hp-neighborhood-btn:hover,
.hp-neighborhood-page .hp-neighborhood-link:hover,
.hp-neighborhood-page .hp-neighborhood-btn:focus,
.hp-neighborhood-page .hp-neighborhood-link:focus {
  text-decoration: none;
}

.hp-neighborhood-page .hp-neighborhood-crumb-link:focus-visible,
.hp-neighborhood-page .hp-neighborhood-btn:focus-visible,
.hp-neighborhood-page .hp-neighborhood-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-neighborhood-page .hp-neighborhood-offer-meta,
.hp-neighborhood-page .hp-neighborhood-offer-text {
  margin: 0;
}

.hp-neighborhood-page .hp-neighborhood-split-img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

/* ---------- BOOTSTRAP 3 OVERRIDES ---------- */
.hp-neighborhood-page .hp-neighborhood-wrap {
  width: auto;
  max-width: 1288px;
  padding-left: 24px;
  padding-right: 24px;
}

/* ---------- SECTIONS ---------- */
.hp-neighborhood-page .hp-neighborhood-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

.hp-neighborhood-page .hp-neighborhood-section.hp-neighborhood-section-tight {
  padding-top: 88px;
  padding-bottom: 88px;
}

.hp-neighborhood-page .hp-neighborhood-section.hp-neighborhood-section-flush {
  padding-top: 0;
}

.hp-neighborhood-page .hp-neighborhood-dark {
  --ink: #F1EDE4;
  --ink-soft: #B4ABA0;
  --line: rgba(241, 237, 228, .16);
  --accent: #C9A96B;
  background: var(--ground-3);
  color: #F1EDE4;
}

.hp-neighborhood-page .hp-neighborhood-alt {
  background: var(--ground-2);
}

/* ---------- TYPE ---------- */
.hp-neighborhood-page .hp-neighborhood-label {
  max-width: 64ch;
}

.hp-neighborhood-page .hp-neighborhood-paragraph-next {
  margin-top: 19.2px;
}

.hp-neighborhood-page .hp-neighborhood-paragraph-small {
  margin-top: 16px;
  font-size: 13.6px;
}

.hp-neighborhood-page .hp-neighborhood-link.hp-neighborhood-link-spaced {
  margin-top: 28.8px;
}

.hp-neighborhood-page .hp-neighborhood-lede {
  margin: 0;
  max-width: 56ch;
  font-size: 20px;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* ---------- BREADCRUMB ---------- */
.hp-neighborhood-page .hp-neighborhood-crumb {
  padding-top: 25.6px;
  padding-bottom: 25.6px;
  font-size: 11.2px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-neighborhood-page .hp-neighborhood-crumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hp-neighborhood-page .hp-neighborhood-crumb-item::after {
  content: "·";
  margin-left: 9.6px;
  opacity: .5;
}

.hp-neighborhood-page .hp-neighborhood-crumb-item:last-child::after {
  content: "";
}

/* ---------- SPLIT: text + photo side by side ---------- */
.hp-neighborhood-page .hp-neighborhood-split {
  display: flex;
  align-items: center;
  gap: 6vw;
}

.hp-neighborhood-page .hp-neighborhood-split-text {
  flex: 1.05 1 0%;
  min-width: 0;
}

.hp-neighborhood-page .hp-neighborhood-split-media {
  flex: .95 1 0%;
  min-width: 0;
}

.hp-neighborhood-page .hp-neighborhood-split-flip .hp-neighborhood-split-text {
  flex: .95 1 0%;
  order: 2;
}

.hp-neighborhood-page .hp-neighborhood-split-flip .hp-neighborhood-split-media {
  flex: 1.05 1 0%;
}

.hp-neighborhood-page .hp-neighborhood-split-img {
  width: 100%;
  object-fit: cover;
  background: var(--ground-2);
}

/* ---------- BUTTONS + LINKS ---------- */
.hp-neighborhood-page .hp-neighborhood-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}

.hp-neighborhood-page .hp-neighborhood-btn {
  display: inline-block;
  min-height: 44px;
  padding: 16.8px 35.2px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: none;
  color: inherit;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.hp-neighborhood-page .hp-neighborhood-btn:hover,
.hp-neighborhood-page .hp-neighborhood-btn:focus {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-neighborhood-page .hp-neighborhood-dark .hp-neighborhood-btn:hover,
.hp-neighborhood-page .hp-neighborhood-dark .hp-neighborhood-btn:focus {
  background: #F1EDE4;
  color: var(--ground-3);
  border-color: #F1EDE4;
}

.hp-neighborhood-page .hp-neighborhood-btn.hp-neighborhood-btn-solid {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-neighborhood-page .hp-neighborhood-btn.hp-neighborhood-btn-solid:hover,
.hp-neighborhood-page .hp-neighborhood-btn.hp-neighborhood-btn-solid:focus {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}

.hp-neighborhood-page .hp-neighborhood-link {
  display: inline-block;
  min-height: 24px;
  padding-bottom: 6.4px;
  border-bottom: 1px solid var(--line);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  transition: border-color .3s var(--ease), color .3s var(--ease);
}

.hp-neighborhood-page .hp-neighborhood-link:hover,
.hp-neighborhood-page .hp-neighborhood-link:focus {
  border-color: var(--accent);
  color: var(--accent);
}

/* ---------- DAY TRIPS: 3 CARDS ---------- */
.hp-neighborhood-page .hp-neighborhood-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  margin-bottom: 64px;
}

.hp-neighborhood-page .hp-neighborhood-offers {
  display: flex;
  flex-wrap: wrap;
  margin-left: -20.8px;
  margin-right: -20.8px;
  margin-bottom: -41.6px;
}

.hp-neighborhood-page .hp-neighborhood-offers::before,
.hp-neighborhood-page .hp-neighborhood-offers::after {
  display: none;
}

.hp-neighborhood-page .hp-neighborhood-offers-col {
  display: flex;
  float: none;
  padding-left: 20.8px;
  padding-right: 20.8px;
  margin-bottom: 41.6px;
}

.hp-neighborhood-page .hp-neighborhood-offer {
  display: flex;
  flex-direction: column;
  gap: 13.6px;
  width: 100%;
  padding: 41.6px;
  border: 1px solid var(--line);
  background: var(--ground);
}

.hp-neighborhood-page .hp-neighborhood-offer-meta,
.hp-neighborhood-page .hp-neighborhood-offer-text {
  flex: 1;
  max-width: 64ch;
  font-size: 15.2px;
  color: var(--ink-soft);
}

.hp-neighborhood-page .hp-neighborhood-offer-meta {
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
}

.hp-neighborhood-page .hp-neighborhood-offer-title {
  margin: 0 0 2.4px;
  font-family: var(--display);
  font-size: 28px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.2;
  color: inherit;
}

/* ---------- FACTS LISTS ---------- */
.hp-neighborhood-page .hp-neighborhood-facts {
  max-width: 576px;
  margin: 28.8px 0 35.2px;
  padding: 0;
  list-style: none;
  font-size: 14.72px;
  color: var(--ink-soft);
}

.hp-neighborhood-page .hp-neighborhood-facts-item {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.hp-neighborhood-page .hp-neighborhood-facts.hp-neighborhood-facts-wide {
  max-width: none;
}

.hp-neighborhood-page .hp-neighborhood-facts-value {
  font-weight: 400;
  color: var(--ink);
}
@media (min-width: 1600px) {
  .hp-neighborhood-page .hp-neighborhood-split {
    gap: 96px;
  }
}
@media (max-width: 1454px) {
  .hp-neighborhood-page .hp-neighborhood-section {
    padding-top: 11vw;
    padding-bottom: 11vw;
  }
}
@media (max-width: 1399px) {
  .hp-neighborhood-page .hp-neighborhood-offer-title {
    font-size: 2vw;
  }
}
@media (max-width: 1386px) {
  .hp-neighborhood-page .hp-neighborhood-offers {
    margin-left: -1.5vw;
    margin-right: -1.5vw;
    margin-bottom: -3vw;
  }

  .hp-neighborhood-page .hp-neighborhood-offers-col {
    padding-left: 1.5vw;
    padding-right: 1.5vw;
    margin-bottom: 3vw;
  }

  .hp-neighborhood-page .hp-neighborhood-offer {
    padding: 3vw;
  }
}
@media (max-width: 1332px) {
  .hp-neighborhood-page .hp-neighborhood-lede {
    font-size: 1.5vw;
  }
}
@media (max-width: 1279px) {
  .hp-neighborhood-page .hp-neighborhood-head {
    margin-bottom: 5vw;
  }
}
@media (max-width: 1257px) {
  .hp-neighborhood-page .hp-neighborhood-section.hp-neighborhood-section-tight {
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
}
@media (max-width: 1119px) {
  .hp-neighborhood-page .hp-neighborhood-lede {
    font-size: 16.8px;
  }
}
@media (max-width: 999px) {
  .hp-neighborhood-page .hp-neighborhood-offer-title {
    font-size: 20px;
  }
}
@media (max-width: 991px) {
  .hp-neighborhood-page .hp-neighborhood-split {
    flex-direction: column;
    align-items: stretch;
  }

  .hp-neighborhood-page .hp-neighborhood-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .hp-neighborhood-page .hp-neighborhood-split-text,
  .hp-neighborhood-page .hp-neighborhood-split-media,
  .hp-neighborhood-page .hp-neighborhood-split-flip .hp-neighborhood-split-text,
  .hp-neighborhood-page .hp-neighborhood-split-flip .hp-neighborhood-split-media {
    flex: none;
    order: 0;
  }
}
@media (max-width: 959px) {
  .hp-neighborhood-page .hp-neighborhood-offer {
    padding: 28.8px;
  }
}
@media (max-width: 799px) {
  .hp-neighborhood-page .hp-neighborhood-head {
    margin-bottom: 40px;
  }

  .hp-neighborhood-page .hp-neighborhood-offers {
    margin-left: -12px;
    margin-right: -12px;
    margin-bottom: -24px;
  }

  .hp-neighborhood-page .hp-neighborhood-offers-col {
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 24px;
  }
}
@media (max-width: 727px) {
  .hp-neighborhood-page .hp-neighborhood-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media (max-width: 685px) {
  .hp-neighborhood-page .hp-neighborhood-section.hp-neighborhood-section-tight {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (max-width: 666px) {
  .hp-neighborhood-page .hp-neighborhood-split {
    gap: 40px;
  }
}
@media (max-width: 560px) {
  .hp-neighborhood-page .hp-neighborhood-wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hp-neighborhood-page .hp-neighborhood-section {
    padding-top: 13vw;
    padding-bottom: 13vw;
  }
}
@media (max-width: 430px) {
  .hp-neighborhood-page .hp-neighborhood-section {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.hp-neighborhood-page .hp-neighborhood-section.hp-neighborhood-section-flush {
  padding-top: 0;
}
@media (prefers-reduced-motion: reduce) {
  .hp-neighborhood-page .hp-neighborhood-btn,
  .hp-neighborhood-page .hp-neighborhood-link {
    transition: none;
  }
}

/* ============================================================================
   NEIGHBORHOOD PAGE CSS END
   ========================================================================== */


/* ============================================================================
   GIFT CARDS PAGE CSS START  ·  <div class="hp-innerpage-cmn-page hp-gifts-page">
   ========================================================================== */

/* ---------- BASIC RESETS (remove Bootstrap 3 defaults) ---------- */
.hp-gifts-page .hp-gifts-crumb-link,
.hp-gifts-page .hp-gifts-tel,
.hp-gifts-page .hp-gifts-link,
.hp-gifts-page .hp-gifts-crumb-link:hover,
.hp-gifts-page .hp-gifts-crumb-link:focus {
  color: inherit;
  text-decoration: none;
}

.hp-gifts-page .hp-gifts-btn,
.hp-gifts-page .hp-gifts-tel:hover,
.hp-gifts-page .hp-gifts-link:hover,
.hp-gifts-page .hp-gifts-btn:hover,
.hp-gifts-page .hp-gifts-tel:focus,
.hp-gifts-page .hp-gifts-link:focus,
.hp-gifts-page .hp-gifts-btn:focus {
  text-decoration: none;
}

.hp-gifts-page .hp-gifts-crumb-link:focus-visible,
.hp-gifts-page .hp-gifts-tel:focus-visible,
.hp-gifts-page .hp-gifts-link:focus-visible,
.hp-gifts-page .hp-gifts-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-gifts-page .hp-gifts-split-img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

.hp-gifts-page .hp-gifts-field-label {
  max-width: none;
}

/* ---------- BOOTSTRAP 3 OVERRIDES ---------- */
.hp-gifts-page .hp-gifts-wrap {
  width: auto;
  max-width: 1288px;
  padding-left: 24px;
  padding-right: 24px;
}

/* ---------- SECTIONS ---------- */
.hp-gifts-page .hp-gifts-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

.hp-gifts-page .hp-gifts-section.hp-gifts-section-tight {
  padding-top: 88px;
  padding-bottom: 88px;
}

.hp-gifts-page .hp-gifts-dark {
  --ink: #F1EDE4;
  --ink-soft: #B4ABA0;
  --line: rgba(241, 237, 228, .16);
  --accent: #C9A96B;
  background: var(--ground-3);
  color: #F1EDE4;
}

.hp-gifts-page .hp-gifts-alt {
  background: var(--ground-2);
}

/* ---------- TYPE ---------- */
.hp-gifts-page .hp-gifts-paragraph-next {
  margin-top: 19.2px;
}

.hp-gifts-page .hp-gifts-paragraph-intro {
  margin-top: 16px;
}

.hp-gifts-page .hp-gifts-link.hp-gifts-link-plain {
  padding: 0;
  border: 0;
}

.hp-gifts-page .hp-gifts-tel {
  display: inline-block;
  margin-top: 25.6px;
  font-family: var(--display);
  font-size: 25.6px;
  font-weight: 300;
}

.hp-gifts-page .hp-gifts-tel:hover,
.hp-gifts-page .hp-gifts-tel:focus {
  color: var(--accent);
}

/* ---------- BREADCRUMB ---------- */
.hp-gifts-page .hp-gifts-crumb {
  padding-top: 25.6px;
  padding-bottom: 25.6px;
  font-size: 11.2px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-gifts-page .hp-gifts-crumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hp-gifts-page .hp-gifts-crumb-item::after {
  content: "·";
  margin-left: 9.6px;
  opacity: .5;
}

.hp-gifts-page .hp-gifts-crumb-item:last-child::after {
  content: "";
}

/* ---------- SPLIT: text + photo side by side ---------- */
.hp-gifts-page .hp-gifts-split {
  display: flex;
  align-items: center;
  gap: 6vw;
}

.hp-gifts-page .hp-gifts-split-text {
  flex: 1.05 1 0%;
  min-width: 0;
}

.hp-gifts-page .hp-gifts-split-media {
  flex: .95 1 0%;
  min-width: 0;
}

.hp-gifts-page .hp-gifts-split-flip .hp-gifts-split-text {
  flex: .95 1 0%;
  order: 2;
}

.hp-gifts-page .hp-gifts-split-flip .hp-gifts-split-media {
  flex: 1.05 1 0%;
}

.hp-gifts-page .hp-gifts-split-img {
  width: 100%;
  object-fit: cover;
  background: var(--ground-2);
}

/* ---------- BUTTONS + LINKS ---------- */
.hp-gifts-page .hp-gifts-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}

.hp-gifts-page .hp-gifts-btn {
  display: inline-block;
  min-height: 44px;
  padding: 16.8px 35.2px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: none;
  color: inherit;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.hp-gifts-page .hp-gifts-btn:hover,
.hp-gifts-page .hp-gifts-btn:focus {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-gifts-page .hp-gifts-dark .hp-gifts-btn:hover,
.hp-gifts-page .hp-gifts-dark .hp-gifts-btn:focus {
  background: #F1EDE4;
  color: var(--ground-3);
  border-color: #F1EDE4;
}

.hp-gifts-page .hp-gifts-btn.hp-gifts-btn-solid {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-gifts-page .hp-gifts-btn.hp-gifts-btn-solid:hover,
.hp-gifts-page .hp-gifts-btn.hp-gifts-btn-solid:focus {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}

.hp-gifts-page .hp-gifts-link {
  display: inline-block;
  min-height: 24px;
  padding-bottom: 6.4px;
  border-bottom: 1px solid var(--line);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  transition: border-color .3s var(--ease), color .3s var(--ease);
}

.hp-gifts-page .hp-gifts-link:hover,
.hp-gifts-page .hp-gifts-link:focus {
  border-color: var(--accent);
  color: var(--accent);
}

/* ---------- FACTS LISTS ---------- */
.hp-gifts-page .hp-gifts-facts {
  max-width: 576px;
  margin: 28.8px 0 35.2px;
  padding: 0;
  list-style: none;
  font-size: 14.72px;
  color: var(--ink-soft);
}

.hp-gifts-page .hp-gifts-facts-item {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.hp-gifts-page .hp-gifts-facts.hp-gifts-facts-first {
  margin-top: 25.6px;
}

.hp-gifts-page .hp-gifts-facts-value {
  font-weight: 400;
  color: var(--ink);
}

/* ---------- MESSAGE FORM ---------- */
.hp-gifts-page .hp-gifts-form {
  max-width: 729.6px;
  margin: 40px -12.8px 0;
}

.hp-gifts-page .hp-gifts-field {
  padding-left: 12.8px;
  padding-right: 12.8px;
  margin-bottom: 25.6px;
}

.hp-gifts-page .hp-gifts-field:last-child {
  margin-bottom: 0;
}

.hp-gifts-page .hp-gifts-field-label {
  display: block;
  margin: 0 0 8px;
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-gifts-page .hp-gifts-input,
.hp-gifts-page .hp-gifts-input,
.hp-gifts-page .hp-gifts-textarea,
.hp-gifts-page .hp-gifts-input:focus,
.hp-gifts-page .hp-gifts-input:focus,
.hp-gifts-page .hp-gifts-textarea:focus,
.hp-gifts-page .hp-gifts-input:active,
.hp-gifts-page .hp-gifts-textarea:active {
  display: block;
  width: 100% !important;
  height: auto !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 12px 3.2px !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  background: none;
  font-family: var(--sans);
  font-size: 16px;
  font-weight: 300;
  line-height: normal;
  color: var(--ink);
  transition: border-color .3s var(--ease);
}

.hp-gifts-page .hp-gifts-textarea,
.hp-gifts-page .hp-gifts-textarea:focus,
.hp-gifts-page .hp-gifts-textarea:active {
  display: inline-block;
  vertical-align: baseline;
  min-height: 128px !important;
  resize: vertical;
}

.hp-gifts-page .hp-gifts-input:focus,
.hp-gifts-page .hp-gifts-input:focus,
.hp-gifts-page .hp-gifts-textarea:focus {
  border-bottom-color: var(--accent) !important;
}

.hp-gifts-page .hp-gifts-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--ground) inset !important;
  -webkit-text-fill-color: var(--ink);
}

.hp-gifts-page .hp-gifts-trap {
  position: absolute;
  left: -9999px;
}

/* ---------- FAQ (no JavaScript: native details / summary) ---------- */
.hp-gifts-page .hp-gifts-acc {
  max-width: 896px;
  margin-top: 40px;
  border-top: 1px solid var(--line);
}

.hp-gifts-page .hp-gifts-acc-q {
  position: relative;
  display: block;
  min-height: 44px;
  padding: 22.4px 40px 22.4px 0;
  border-bottom: 1px solid var(--line);
  font-family: var(--display);
  font-size: 19.2px;
  font-weight: 300;
  line-height: 1.2;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.hp-gifts-page .hp-gifts-acc-q::-webkit-details-marker {
  display: none;
}

.hp-gifts-page .hp-gifts-acc-q::after {
  content: "+";
  position: absolute;
  right: 6.4px;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--sans);
  font-weight: 300;
  color: var(--accent);
}

.hp-gifts-page .hp-gifts-acc-item[open] .hp-gifts-acc-q::after {
  content: "–";
}

.hp-gifts-page .hp-gifts-acc-q:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-gifts-page .hp-gifts-acc-a {
  padding: 6.4px 0 25.6px;
  border-bottom: 1px solid var(--line);
}
@media (min-width: 1600px) {
  .hp-gifts-page .hp-gifts-split {
    gap: 96px;
  }
}
@media (max-width: 1454px) {
  .hp-gifts-page .hp-gifts-section {
    padding-top: 11vw;
    padding-bottom: 11vw;
  }
}
@media (max-width: 1257px) {
  .hp-gifts-page .hp-gifts-section.hp-gifts-section-tight {
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
}
@media (max-width: 991px) {
  .hp-gifts-page .hp-gifts-split {
    flex-direction: column;
    align-items: stretch;
  }

  .hp-gifts-page .hp-gifts-split-text,
  .hp-gifts-page .hp-gifts-split-media,
  .hp-gifts-page .hp-gifts-split-flip .hp-gifts-split-text,
  .hp-gifts-page .hp-gifts-split-flip .hp-gifts-split-media {
    flex: none;
    order: 0;
  }
}
@media (max-width: 727px) {
  .hp-gifts-page .hp-gifts-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media (max-width: 685px) {
  .hp-gifts-page .hp-gifts-section.hp-gifts-section-tight {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (max-width: 666px) {
  .hp-gifts-page .hp-gifts-split {
    gap: 40px;
  }
}
@media (max-width: 560px) {
  .hp-gifts-page .hp-gifts-wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hp-gifts-page .hp-gifts-section {
    padding-top: 13vw;
    padding-bottom: 13vw;
  }
}
@media (max-width: 430px) {
  .hp-gifts-page .hp-gifts-section {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hp-gifts-page .hp-gifts-btn,
  .hp-gifts-page .hp-gifts-link {
    transition: none;
  }
}

/* ============================================================================
   GIFT CARDS PAGE CSS END
   ========================================================================== */


/* ============================================================================
   CONTACT PAGE CSS START  ·  <div class="hp-innerpage-cmn-page hp-contact-page">
   ========================================================================== */

/* ---------- BASIC RESETS (remove Bootstrap 3 defaults) ---------- */
.hp-contact-page .hp-contact-crumb-link,
.hp-contact-page .hp-contact-tel,
.hp-contact-page .hp-contact-link,
.hp-contact-page .hp-contact-crumb-link:hover,
.hp-contact-page .hp-contact-crumb-link:focus {
  color: inherit;
  text-decoration: none;
}

.hp-contact-page .hp-contact-btn,
.hp-contact-page .hp-contact-tel:hover,
.hp-contact-page .hp-contact-link:hover,
.hp-contact-page .hp-contact-btn:hover,
.hp-contact-page .hp-contact-tel:focus,
.hp-contact-page .hp-contact-link:focus,
.hp-contact-page .hp-contact-btn:focus {
  text-decoration: none;
}

.hp-contact-page .hp-contact-crumb-link:focus-visible,
.hp-contact-page .hp-contact-tel:focus-visible,
.hp-contact-page .hp-contact-link:focus-visible,
.hp-contact-page .hp-contact-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-contact-page .hp-contact-split-img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

.hp-contact-page .hp-contact-field-label {
  max-width: none;
}

/* ---------- BOOTSTRAP 3 OVERRIDES ---------- */
.hp-contact-page .hp-contact-wrap {
  width: auto;
  max-width: 1288px;
  padding-left: 24px;
  padding-right: 24px;
}

/* ---------- SECTIONS ---------- */
.hp-contact-page .hp-contact-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

.hp-contact-page .hp-contact-section.hp-contact-section-tight {
  padding-top: 88px;
  padding-bottom: 88px;
}

.hp-contact-page .hp-contact-dark {
  --ink: #F1EDE4;
  --ink-soft: #B4ABA0;
  --line: rgba(241, 237, 228, .16);
  --accent: #C9A96B;
  background: var(--ground-3);
  color: #F1EDE4;
}

.hp-contact-page .hp-contact-alt {
  background: var(--ground-2);
}

/* ---------- TYPE ---------- */
.hp-contact-page .hp-contact-paragraph-next {
  margin-top: 19.2px;
}

.hp-contact-page .hp-contact-paragraph-intro {
  margin-top: 16px;
}

.hp-contact-page .hp-contact-link.hp-contact-link-plain {
  padding: 0;
  border: 0;
}

.hp-contact-page .hp-contact-tel {
  display: inline-block;
  margin-top: 25.6px;
  font-family: var(--display);
  font-size: 25.6px;
  font-weight: 300;
}

.hp-contact-page .hp-contact-tel:hover,
.hp-contact-page .hp-contact-tel:focus {
  color: var(--accent);
}

/* ---------- BREADCRUMB ---------- */
.hp-contact-page .hp-contact-crumb {
  padding-top: 25.6px;
  padding-bottom: 25.6px;
  font-size: 11.2px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-contact-page .hp-contact-crumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hp-contact-page .hp-contact-crumb-item::after {
  content: "·";
  margin-left: 9.6px;
  opacity: .5;
}

.hp-contact-page .hp-contact-crumb-item:last-child::after {
  content: "";
}

/* ---------- SPLIT: text + photo side by side ---------- */
.hp-contact-page .hp-contact-split {
  display: flex;
  align-items: center;
  gap: 6vw;
}

.hp-contact-page .hp-contact-split-text {
  flex: 1.05 1 0%;
  min-width: 0;
}

.hp-contact-page .hp-contact-split-media {
  flex: .95 1 0%;
  min-width: 0;
}

.hp-contact-page .hp-contact-split-flip .hp-contact-split-text {
  flex: .95 1 0%;
  order: 2;
}

.hp-contact-page .hp-contact-split-flip .hp-contact-split-media {
  flex: 1.05 1 0%;
}

.hp-contact-page .hp-contact-split-img {
  width: 100%;
  object-fit: cover;
  background: var(--ground-2);
}

/* ---------- BUTTONS + LINKS ---------- */
.hp-contact-page .hp-contact-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}

.hp-contact-page .hp-contact-btn {
  display: inline-block;
  min-height: 44px;
  padding: 16.8px 35.2px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: none;
  color: inherit;
  font-family: var(--sans);
  font-size: 11.2px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.hp-contact-page .hp-contact-btn:hover,
.hp-contact-page .hp-contact-btn:focus {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-contact-page .hp-contact-dark .hp-contact-btn:hover,
.hp-contact-page .hp-contact-dark .hp-contact-btn:focus {
  background: #F1EDE4;
  color: var(--ground-3);
  border-color: #F1EDE4;
}

.hp-contact-page .hp-contact-btn.hp-contact-btn-solid {
  background: var(--ink);
  color: var(--ground);
  border-color: var(--ink);
}

.hp-contact-page .hp-contact-btn.hp-contact-btn-solid:hover,
.hp-contact-page .hp-contact-btn.hp-contact-btn-solid:focus {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}

.hp-contact-page .hp-contact-link {
  display: inline-block;
  min-height: 24px;
  padding-bottom: 6.4px;
  border-bottom: 1px solid var(--line);
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  transition: border-color .3s var(--ease), color .3s var(--ease);
}

.hp-contact-page .hp-contact-link:hover,
.hp-contact-page .hp-contact-link:focus {
  border-color: var(--accent);
  color: var(--accent);
}

/* ---------- FACTS LISTS ---------- */
.hp-contact-page .hp-contact-facts {
  max-width: 576px;
  margin: 28.8px 0 35.2px;
  padding: 0;
  list-style: none;
  font-size: 14.72px;
  color: var(--ink-soft);
}

.hp-contact-page .hp-contact-facts-item {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.hp-contact-page .hp-contact-facts.hp-contact-facts-first {
  margin-top: 25.6px;
}

.hp-contact-page .hp-contact-facts-value {
  font-weight: 400;
  color: var(--ink);
}

/* ---------- MESSAGE FORM ---------- */
.hp-contact-page .hp-contact-form {
  max-width: 729.6px;
  margin: 40px -12.8px 0;
}

.hp-contact-page .hp-contact-field {
  padding-left: 12.8px;
  padding-right: 12.8px;
  margin-bottom: 25.6px;
}

.hp-contact-page .hp-contact-field:last-child {
  margin-bottom: 0;
}

.hp-contact-page .hp-contact-field-label {
  display: block;
  margin: 0 0 8px;
  font-size: 11.2px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

.hp-contact-page .hp-contact-input,
.hp-contact-page .hp-contact-input,
.hp-contact-page .hp-contact-textarea,
.hp-contact-page .hp-contact-input:focus,
.hp-contact-page .hp-contact-input:focus,
.hp-contact-page .hp-contact-textarea:focus,
.hp-contact-page .hp-contact-input:active,
.hp-contact-page .hp-contact-textarea:active {
  display: block;
  width: 100% !important;
  height: auto !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 12px 3.2px !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  background: none;
  font-family: var(--sans);
  font-size: 16px;
  font-weight: 300;
  line-height: normal;
  color: var(--ink);
  transition: border-color .3s var(--ease);
}

.hp-contact-page .hp-contact-textarea,
.hp-contact-page .hp-contact-textarea:focus,
.hp-contact-page .hp-contact-textarea:active {
  display: inline-block;
  vertical-align: baseline;
  min-height: 128px !important;
  resize: vertical;
}

.hp-contact-page .hp-contact-input:focus,
.hp-contact-page .hp-contact-input:focus,
.hp-contact-page .hp-contact-textarea:focus {
  border-bottom-color: var(--accent) !important;
}

.hp-contact-page .hp-contact-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--ground) inset !important;
  -webkit-text-fill-color: var(--ink);
}

.hp-contact-page .hp-contact-trap {
  position: absolute;
  left: -9999px;
}

/* ---------- FAQ (no JavaScript: native details / summary) ---------- */
.hp-contact-page .hp-contact-acc {
  max-width: 896px;
  margin-top: 40px;
  border-top: 1px solid var(--line);
}

.hp-contact-page .hp-contact-acc-q {
  position: relative;
  display: block;
  min-height: 44px;
  padding: 22.4px 40px 22.4px 0;
  border-bottom: 1px solid var(--line);
  font-family: var(--display);
  font-size: 19.2px;
  font-weight: 300;
  line-height: 1.2;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.hp-contact-page .hp-contact-acc-q::-webkit-details-marker {
  display: none;
}

.hp-contact-page .hp-contact-acc-q::after {
  content: "+";
  position: absolute;
  right: 6.4px;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--sans);
  font-weight: 300;
  color: var(--accent);
}

.hp-contact-page .hp-contact-acc-item[open] .hp-contact-acc-q::after {
  content: "–";
}

.hp-contact-page .hp-contact-acc-q:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.hp-contact-page .hp-contact-acc-a {
  padding: 6.4px 0 25.6px;
  border-bottom: 1px solid var(--line);
}
@media (min-width: 1600px) {
  .hp-contact-page .hp-contact-split {
    gap: 96px;
  }
}
@media (max-width: 1454px) {
  .hp-contact-page .hp-contact-section {
    padding-top: 11vw;
    padding-bottom: 11vw;
  }
}
@media (max-width: 1257px) {
  .hp-contact-page .hp-contact-section.hp-contact-section-tight {
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
}
@media (max-width: 991px) {
  .hp-contact-page .hp-contact-split {
    flex-direction: column;
    align-items: stretch;
  }

  .hp-contact-page .hp-contact-split-text,
  .hp-contact-page .hp-contact-split-media,
  .hp-contact-page .hp-contact-split-flip .hp-contact-split-text,
  .hp-contact-page .hp-contact-split-flip .hp-contact-split-media {
    flex: none;
    order: 0;
  }
}
@media (max-width: 727px) {
  .hp-contact-page .hp-contact-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media (max-width: 685px) {
  .hp-contact-page .hp-contact-section.hp-contact-section-tight {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (max-width: 666px) {
  .hp-contact-page .hp-contact-split {
    gap: 40px;
  }
}
@media (max-width: 560px) {
  .hp-contact-page .hp-contact-wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hp-contact-page .hp-contact-section {
    padding-top: 13vw;
    padding-bottom: 13vw;
  }
}
@media (max-width: 430px) {
  .hp-contact-page .hp-contact-section {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hp-contact-page .hp-contact-btn,
  .hp-contact-page .hp-contact-link {
    transition: none;
  }
}

/* ============================================================================
   CONTACT PAGE CSS END
   ========================================================================== */
