/* Client style overrides */
:root {
    --text: #000000;
    --muted: #737373;
    --link: #484848;
    --link-hover: #000000;
    --accent: rgba(72, 72, 72, 0.45);
    --accent-solid: #484848;
    --accent-text: #ffffff;
    --lightbox-overlay: rgba(72, 72, 72, 0.92);
    --lightbox-meta: rgba(72, 72, 72, 0.68);
    --primary: var(--text);
    --primary-hover: var(--panel);
    --button: var(--text);
    --button-border: var(--text);
    --button-text: var(--panel);
    --button-hover-border: var(--text);
    --button-hover-text: var(--text);
    --element: #000000;
    --border: rgba(0, 0, 0, 0.45);
    --line: rgba(0, 0, 0, 0.45);
    --form-background: transparent;
    --form-border-width: 0 0 1px;
    --form-text: #000000;
    --form-muted: rgba(0, 0, 0, 0.68);
    --form-placeholder: rgba(0, 0, 0, 0.56);
    --sale-badge-radius: 999px;
    --badge-bg: #ffefb4;
    --font-main: 'Noto Sans', sans-serif;
    --font-card-product-size: 1rem;
    --font-header: 'GFS Didot', serif;
    --font-h1: 'Caveat', cursive;
}

body, input, button, select, textarea, table { font-family: var(--font-main); }
body, p, li, .page-content, .post-content, .product-description, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description), :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > p, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > blockquote, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > ul > li, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > ol > li { font-size: 16px; line-height: 1.75; text-align: left; }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-header); }
.card .shortcode-media-card__title, .gallery-page__card span, .shortcode-product-card:not(.shortcode-media-card) .shortcode-product-card__content h3, .shortcode-page-embed__content h2, .shortcode-post-card__content h3, .shortcode-post-category__content h2, .shortcode-product-category__content h2, .product-bundle-card h3, .product-bundle-item__details strong, .cart-product-title-link { font-size: var(--font-card-product-size); }
.media-card-info-overlay .card .shortcode-media-card__title, .media-card-info-below .custom-footer-column .card .shortcode-media-card__title, .gallery-page__card--has-image span { text-shadow: 0 1px 4px rgba(0, 0, 0, 0.30); }
@media (max-width: 700px) { .media-card-info-overlay .blog-index .blog-grid .shortcode-media-card__title { text-shadow: none; } }
h1, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > h1 { font-family: 'Caveat', cursive; font-size: 3rem; }
h2, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > h2 { font-family: 'Caveat', cursive; font-size: 2.7rem; }
h3, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > h3 { font-family: 'Caveat', cursive; font-size: 2.5rem; }
h4, :is(.product-full-description, .product-excerpt, .page-excerpt, .post-excerpt, .post-content, .page-content, .intro_text, .vision_text, .booking-page__description, .event-page__description) > h4 { font-family: 'Caveat', cursive; font-size: 2.25rem; }
.homepage-hero__content h1, .shortcode-hero__content h1 { color: #ffffff; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35); }
.homepage-hero__content p, .shortcode-hero__content p { color: #ffffff; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35); }
.shortcode-accordion-item summary, .shortcode-tabs__button { font-family: var(--font-main); font-size: 16px; font-weight: 700; font-style: normal; line-height: 1.75; }
a:hover, a:focus { color: var(--link-hover); }
input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="image"]), select, textarea { border-style: solid; border-width: var(--form-border-width, 0 0 1px); }
html { color-scheme: light; }
body, .header, .cms-menu-wrap-header, .cms-menu-wrap-header .cms-submenu { background-color: var(--bg); color: var(--text); }
hr, fieldset, table, th, td { border-color: var(--line); }
input:not([type="checkbox"]):not([type="radio"]):not([type="color"]), select, textarea { background-color: var(--form-background); border-color: var(--line); color: var(--form-text); }
input::placeholder, textarea::placeholder { color: var(--form-placeholder); opacity: 1; }
.frontend-form-field-label .muted { color: var(--form-muted); }
input[type="checkbox"], input[type="radio"] { accent-color: var(--form-text); }
select option { background: var(--panel); color: var(--form-text); }
.shortcode-surface .social-links--buttons .shortcode-social-button { background: var(--shortcode-surface-button-background, var(--button)); border-color: var(--shortcode-surface-button-border, var(--button-border, var(--text))); color: var(--shortcode-surface-button-text, var(--button-text, var(--text))); }
.shortcode-surface .social-links--buttons .shortcode-social-button:hover, .shortcode-surface .social-links--buttons .shortcode-social-button:focus { background: var(--shortcode-surface-button-hover-background, var(--primary-hover)); border-color: var(--shortcode-surface-button-hover-border, var(--button-hover-border, var(--primary-hover))); color: var(--shortcode-surface-button-hover-text, var(--button-hover-text, var(--bg))); }
