.elementor-kit-5{--e-global-color-primary:#B9884A;--e-global-color-secondary:#BDCED0;--e-global-color-text:#F2F1ED;--e-global-color-accent:#54727A;--e-global-color-tvink:#1D1D1D;--e-global-color-tvink2:#272727;--e-global-color-tvember:#B9884A;--e-global-color-tvsage:#BDCED0;--e-global-color-tvbody:#D6D5CD;--e-global-color-tvsurface:#2F2E2B;--e-global-color-tvraised:#3A3936;--e-global-color-tvslated:#3E545B;--e-global-typography-primary-font-family:"Lugrasimo";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Diphylleia";--e-global-typography-secondary-font-weight:800;--e-global-typography-text-font-family:"Averia Serif Libre";--e-global-typography-text-font-size:19px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Averia Serif Libre";--e-global-typography-accent-font-weight:400;background-color:#1D1D1D;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#BDCED0;color:#1A1917;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#A3B8BB;color:#1A1917;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#BDCED0;}.elementor-kit-5 h1{color:#F2F1ED;font-family:"UnZialish", Sans-serif;font-size:52px;font-weight:400;}.elementor-kit-5 h2{color:#F2F1ED;font-family:"UnZialish", Sans-serif;font-size:36px;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --gg-brand-primary:#B9884A; --gg-brand-secondary:#BDCED0; --gg-brand-accent:#54727A; --gg-brand-text:#F2F1ED; --gg-brand-background:#fefaf7; --gg-brand-font-body:EB Garamond; --gg-brand-font-heading:Barlow Condensed; }
/* Start custom CSS */@font-face{font-family:'UnZialish';src:url('/wp-content/uploads/fonts/UnZialish.ttf') format('truetype');font-display:swap;}.tv-logo-blend img{mix-blend-mode:lighten;}.gg-forms__submit{background:#BDCED0;color:#1D1D1D;border:none;font-family:"Barlow Condensed",sans-serif;font-weight:600;letter-spacing:.5px;font-size:17px}.gg-forms__submit:hover{background:#F2F1ED;color:#1D1D1D}:root{--gg-color-surface:#2E302B;--gg-color-surface-raised:#383B34;--gg-color-primary-soft:#3A4A4E;--gg-color-muted-soft:#33352F;--gg-color-neutral-soft:#33352F;--gg-color-text-inverse:#1D1D1D;--gg-color-overlay:rgba(0,0,0,.6);}.fc .fc-col-header-cell, .fc .fc-col-header, .fc thead, .fc .fc-scrollgrid-section-header td, .fc .fc-scrollgrid-section-header th{background:#2E302B!important;}.fc .fc-col-header-cell-cushion{color:#F2F1ED!important;}.fc .fc-daygrid-day-number{color:#D6D5CD;}.fc .fc-button{background:#54727A;border-color:#4A4D44;color:#F2F1ED}.fc .fc-button:hover{background:#BDCED0;border-color:#BDCED0;color:#1D1D1D}.fc .fc-button-primary:not(:disabled).fc-button-active{background:#BDCED0;color:#1D1D1D}a:hover{color:#D8E3E4}.elementor-button:hover{background-color:#F2F1ED;color:#1D1D1D}


/* package-shop centering: default auto-fill+1fr leaves ghost tracks when only a few packages exist, pinning cards left */
.elementor .gg-booking-package-shop { --gg-grid-justify: center; }
/* === GG dark-surface tokens (managed) === */
/* The plugin hardcodes --gg-color-surface:#fff with no --gg-brand-* slot, so a
   dark palette lands cream --gg-color-text on white panels. Re-point the whole
   surface family at the brand's dark tones and every GG panel reads correctly. */
:root{
  --gg-color-surface:#2F2E2B;
  --gg-color-surface-raised:#3A3936;
  --gg-color-muted-soft:#35342F;
  --gg-color-neutral-soft:#32312D;
  --gg-color-primary-soft:#33454A;
}
/* Inputs sit on the dark surface now — make their own text and placeholder follow. */
.gg-forms__input,.gg-forms__textarea,.gg-forms__select,
.gg-booking-field__input,.gg-booking-input{
  background:var(--gg-color-surface);
  color:var(--gg-color-text);
  border-color:var(--gg-color-border);
}
.gg-forms__input::placeholder,.gg-booking-input::placeholder{color:var(--gg-color-text-muted);opacity:1}
/* Stripe's card iframe cannot inherit — give it the same surface. */
.gg-booking-package-modal__card,#gg-booking-package-card-element{
  background:var(--gg-color-surface);
  border-color:var(--gg-color-border);
}
/* The slate price on a dark card measured 2.9:1 — reads as disabled. Use the gold. */
.gg-booking-package-card__price{color:var(--gg-color-accent)}
/* Required asterisk measured 2.7:1 on dark. */
.gg-forms__required-mark{color:#E08585}
/* === end GG dark-surface tokens === */
/* === TV header account (managed) === */
/* Nothing in the header may widen the page. The pill was allotted 8% and
   wanted 171px, which pushed the document 32px wide and produced a
   horizontal scrollbar on every page. */
.elementor-location-header .elementor-container{max-width:100%}
.elementor-location-header .elementor-column{min-width:0}
.gg-booking-login-account,
.gg-booking-login-account__button{max-width:100%;min-width:0}
.gg-booking-login-account__name{max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* The burger takes over at 1024px (nav.dropdown = 'tablet'), so the pill
   stands down there and the account links appear inside the burger instead. */
@media (max-width:1024px){
  .tv-header-account{display:none !important}
}
/* ...and above it, those same menu items would be a duplicate of the pill. */
@media (min-width:1025px){
  .tv-account-item{display:none !important}
}
/* Give the folded-in items a visible break from the site links. */
.tv-account-item--first{border-top:1px solid var(--gg-color-border,#4A4D44);margin-top:.5rem;padding-top:.5rem}
/* === end TV header account === */
/* === TV account menu styling (managed) === */
/* The account rows are a different KIND of link from the site's nav — a rule
   plus a quiet section label separates them without adding another button. */
.tv-account-item--first{
  border-top:1px solid var(--gg-color-border,#4A4D44);
  margin-top:.9rem;
  padding-top:.2rem;
}
.tv-account-item--first::before{
  content:"Account";
  display:block;
  font-family:var(--gg-type-heading,inherit);
  font-size:.68rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gg-color-text-muted,#B8BBAE);
  padding:.85rem 0 .15rem;
  /* The dropdown's inset lives on the <a>, not the <li> this ::before hangs
     off, so the label has to be indented explicitly to line up with the links. */
  padding-left:20px;
}
/* Brand gold marks them as "yours" rather than "the site's". */
.tv-account-item > a{color:var(--gg-color-accent,#B9884A) !important}
.tv-account-item > a:hover{color:var(--gg-color-text,#F2F1ED) !important}
/* === end TV account menu styling === */

/* === TV anchor offset (2026-08-16) ===
   In-page anchors landed past their heading: the browser computes the jump
   before webfonts and images above have settled, so the target has moved by
   the time it stops. scroll-margin-top makes the landing deliberate rather
   than a race — it stops short and leaves the heading in view. Applies to any
   anchored section, so future anchors inherit it. tv-anchor-offset */
.elementor-top-section[id]{scroll-margin-top:96px}
/* === end TV anchor offset === *//* End custom CSS */