/* ==========================================================================
   CFTV Embed Mode Styles
   ==========================================================================

   PURPOSE:
   This stylesheet is loaded ONLY when the old WP site is viewed inside an
   iframe on the new static site (triggered by ?cftv_embed=1 URL param).
   It re-brands the WP pages to visually match the new CFTV static site
   so the transition between the two sites is not jarring for users.

   HOW IT GETS LOADED:
   The PHP code in functions.php checks for ?cftv_embed=1 and enqueues this
   CSS file with priority 999 (loads last, so it overrides theme styles).

   NEW SITE REFERENCE:
   All colors, fonts, and styling values below are taken from the new static
   site at: https://cftv-design-xdd70.kinsta.page/

   STRUCTURE OF THIS FILE:
   1. Google Fonts import (new site fonts)
   2. CSS variables (new site color palette)
   3. Hide header/footer/admin bar (CSS fallback, PHP already removes them)
   4. Typography overrides (body text, headings)
   5. Links and buttons
   6. Form inputs
   7. WooCommerce-specific styles
   8. Tables
   9. Blocksy theme variable overrides
   10. Layout adjustments for iframe
   ========================================================================== */


/* ==========================================================================
   1. GOOGLE FONTS — Import the same fonts the new static site uses

   - Barlow Condensed: Used for headings (h1-h6) and button labels
   - Karla: Used for body text, paragraphs, form labels
   - DM Serif Display: Used for hero/display text (large decorative headings)
   - DM Serif Text: Used for taglines and pull quotes
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@300;400;500;600;700&family=DM+Serif+Display&family=DM+Serif+Text:ital@0;1&family=Karla:wght@300;400;500;600;700&display=swap');


/* ==========================================================================
   2. CSS CUSTOM PROPERTIES — New site color palette

   All colors are prefixed with --cftv- to avoid conflicts with the Blocksy
   theme's own CSS variables. These match the :root variables on the new site.

   Color meanings:
   - dusk (#3d3454)      = Deep purple, used for dark backgrounds
   - plum (#644b62)      = Warm purple, used for section backgrounds
   - poppy (#dd8b88)     = Soft coral/pink, used for accents
   - cirrus (#bdc8d2)    = Light blue-gray, used for light backgrounds
   - clay (#a8886c)      = Warm tan, used for subtle accents
   - graphite (#1d292e)  = Near-black, used for heading text
   - fog (#dbdcdd)       = Light gray, used for borders
   - sand (#e5cec3)      = Warm beige, used for table headers/backgrounds
   - dark-pine (#164154) = Dark teal, used for links and secondary elements
   - pine (#415e68)      = Medium teal, used for body text color
   - primary (#C54337)   = Red-orange, used for CTA buttons and hover states
   ========================================================================== */
:root {
    --cftv-color-dusk: #3d3454;
    --cftv-color-plum: #644b62;
    --cftv-color-poppy: #dd8b88;
    --cftv-color-cirrus: #bdc8d2;
    --cftv-color-clay: #a8886c;
    --cftv-color-graphite: #1d292e;
    --cftv-color-fog: #dbdcdd;
    --cftv-color-sand: #e5cec3;
    --cftv-color-dark-pine: #164154;
    --cftv-color-pine: #415e68;
    --cftv-color-primary: #C54337;
    --cftv-color-body: #415e68;
    --cftv-font-heading: 'Barlow Condensed', sans-serif;
    --cftv-font-body: 'Karla', sans-serif;
    --cftv-font-display: 'DM Serif Display', serif;
    --cftv-font-tagline: 'DM Serif Text', serif;
}


/* ==========================================================================
   3. HEADER (SHOW CART ONLY), FOOTER, AND ADMIN BAR

   The header stays in the DOM so the WooCommerce cart icon remains visible
   and functional inside the iframe. All other header elements (logo, nav,
   menus, buttons, search, etc.) are hidden via CSS. Only .ct-header-cart
   is shown.

   The footer is fully hidden (removed via PHP + CSS fallback).
   ========================================================================== */

/* Hide header rows that don't contain the cart (top bar, bottom bar, etc.) */
body.cftv-embed .ct-header [data-row="top"],
body.cftv-embed .ct-header [data-row="bottom"] {
    display: none !important;
}

/* Hide ALL items inside header data-items containers */
body.cftv-embed .ct-header [data-row="middle"] .site-branding,
body.cftv-embed .ct-header [data-row="middle"] .menu-container,
body.cftv-embed .ct-header [data-row="middle"] nav,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-search,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-cta,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-socials,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-text,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-button,
body.cftv-embed .ct-header [data-row="middle"] .site-logo-container,
body.cftv-embed .ct-header [data-row="middle"] .ct-header-account,
body.cftv-embed .follow-section {
    display: none !important;
}

/* Also hide start and middle columns entirely, keep only end column */
body.cftv-embed .ct-header [data-row="middle"] [data-column="start"],
body.cftv-embed .ct-header [data-row="middle"] [data-column="middle"] {
    display: none !important;
}

/* Show the cart icon */
body.cftv-embed .ct-header [data-row="middle"] .ct-header-cart {
    display: flex !important;
    margin-right: 27px !important;
}

/* Align cart to the right */
body.cftv-embed .ct-header [data-row="middle"] .ct-container,
body.cftv-embed .ct-header [data-row="middle"] .ct-container-fluid {
    display: flex !important;
    justify-content: flex-end !important;
}

body.cftv-embed .ct-header [data-row="middle"] [data-column="end"] {
    margin-left: auto !important;
    flex: 0 0 auto !important;
    width: auto !important;
    display: flex !important;
    justify-content: flex-end !important;
}

body.cftv-embed .ct-header [data-row="middle"] [data-column="end"] [data-items] {
    justify-content: flex-end !important;
}

/* Cart dropdown — white background with readable text */
body.cftv-embed .ct-header-cart .ct-cart-content {
    background-color: #ffffff !important;
    color: #333333 !important;
}

body.cftv-embed .ct-header-cart .ct-cart-content * {
    color: #333333 !important;
}

body.cftv-embed .ct-header-cart .ct-cart-content a {
    color: var(--cftv-color-primary, #C54337) !important;
}

body.cftv-embed .ct-header-cart .ct-cart-content .woocommerce-mini-cart-item .remove {
    color: #999999 !important;
}

body.cftv-embed .ct-header-cart .ct-cart-content .woocommerce-mini-cart__total {
    color: #333333 !important;
    border-top: 1px solid #e0e0e0 !important;
}

/* Cart dropdown buttons — white text on red buttons */
body.cftv-embed .ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons a,
body.cftv-embed .ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button,
body.cftv-embed .ct-header-cart .ct-cart-content a.button {
    color: #ffffff !important;
}

/* Minimal header styling — remove background/borders/shadow */
body.cftv-embed .ct-header {
    box-shadow: none !important;
    border: none !important;
}

body.cftv-embed .ct-header [data-row*="middle"] {
    --theme-box-shadow: none !important;
    box-shadow: none !important;
}

/* Hide mobile header elements */
body.cftv-embed .ct-header [data-device="mobile"] .ct-trigger,
body.cftv-embed .ct-header [data-device="mobile"] .site-branding,
body.cftv-embed .ct-header [data-device="mobile"] nav,
body.cftv-embed .ct-header [data-device="mobile"] .menu-container {
    display: none !important;
}

/* Hide all possible footer elements */
body.cftv-embed > #main-container > footer,         /* Direct child site footer */
body.cftv-embed .ct-footer,                         /* Blocksy footer class */
body.cftv-embed .site-footer,                       /* Common WP theme footer class */
body.cftv-embed #footer,                            /* Generic footer ID */
body.cftv-embed .footer-placements,                 /* Blocksy footer placements wrapper */
/* Hide the mobile slide-out drawer/menu canvas */
body.cftv-embed .ct-drawer-canvas {
    display: none !important;
}

/* Reduce the space that the header pushes content down */
body.cftv-embed main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.cftv-embed #main-container {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Hide the WP admin bar and remove its 32px top margin when embedded */
body.cftv-embed.admin-bar {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.cftv-embed #wpadminbar {
    display: none !important;
}

/* The admin bar also adds margin-top to <html> — remove it */
html.cftv-embed-html {
    margin-top: 0 !important;
}

/* Hide breadcrumbs — not needed inside an iframe */
body.cftv-embed .ct-breadcrumbs,
body.cftv-embed .woocommerce-breadcrumb {
    display: none !important;
}


/* ==========================================================================
   4. TYPOGRAPHY — Match the new site's font choices

   New site uses:
   - Body text:  Karla (sans-serif), 15px, line-height 28px, weight 400
   - Headings:   Barlow Condensed (sans-serif), weight 600, tight line-height
   - Colors:     Body text is "pine" teal (#415e68), headings are "graphite" (#1d292e)
   ========================================================================== */

/* Base body text */
body.cftv-embed {
    font-family: var(--cftv-font-body) !important;
    font-size: 15px;
    line-height: 28px;
    font-weight: 400;
    color: var(--cftv-color-graphite);
    background-color: #ffffff;
    overflow-x: hidden;
}

/* Headings (h1 through h6) — Barlow Condensed, bold, tight spacing */
body.cftv-embed h1,
body.cftv-embed h2,
body.cftv-embed h3,
body.cftv-embed h4,
body.cftv-embed h5,
body.cftv-embed h6 {
    font-family: var(--cftv-font-heading) !important;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.3px;
    color: var(--cftv-color-graphite);
}

/* Heading sizes — matching new site's scale */
body.cftv-embed h1 { font-size: 42px; }
body.cftv-embed h2 { font-size: 36px; }
body.cftv-embed h3 { font-size: 28px; }
body.cftv-embed h4 { font-size: 22px; }
body.cftv-embed h5 { font-size: 18px; }
body.cftv-embed h6 { font-size: 16px; }

/* All other text elements — ensure Karla font is applied everywhere */
body.cftv-embed p,
body.cftv-embed li,
body.cftv-embed span,
body.cftv-embed td,
body.cftv-embed th {
    font-family: var(--cftv-font-body) !important;
    color: var(--cftv-color-graphite);
}

/* Form labels — darker color for readability */
body.cftv-embed label,
body.cftv-embed .form-row label,
body.cftv-embed .woocommerce-form-row label,
body.cftv-embed .wc-block-components-text-input label {
    font-family: var(--cftv-font-body) !important;
    color: var(--cftv-color-graphite) !important;
}

/* Page/product titles */
body.cftv-embed .ct-page-title,
body.cftv-embed .entry-title,
body.cftv-embed .product_title {
    font-family: var(--cftv-font-heading) !important;
    color: var(--cftv-color-graphite);
    font-weight: 600;
}
body.cftv-embed .cftv-embed-product-title {
    margin: -20px 0px 20px -20px !important;
    font-family: var(--cftv-font-heading) !important;
    color: var(--cftv-color-graphite) !important;
    font-weight: 600 !important;
    font-size: 2rem !important;
    text-transform: uppercase !important;
    
    padding: 0 20px !important;
} 


/* ==========================================================================
   5. LINKS AND BUTTONS

   New site style:
   - Links: dark-pine teal (#164154), hover to primary red (#C54337)
   - Buttons: primary red background, white text, NO border-radius (square),
     Barlow Condensed font, uppercase, hover slightly lighter red (#d45549)
   ========================================================================== */

/* Links */
body.cftv-embed a {
    color: var(--cftv-color-dark-pine);
    transition: color 0.3s ease;
}

body.cftv-embed a:hover,
body.cftv-embed a:focus {
    color: var(--cftv-color-primary);
}

/* Buttons — targets all common WP/WooCommerce/Blocksy button classes */
body.cftv-embed .wp-element-button,
body.cftv-embed .wp-block-button__link,
body.cftv-embed button[type="submit"],
body.cftv-embed input[type="submit"],
body.cftv-embed .button,
body.cftv-embed .btn,
body.cftv-embed .ct-button,
body.cftv-embed .wc-block-components-button,
body.cftv-embed .checkout-button,
body.cftv-embed .single_add_to_cart_button,
body.cftv-embed .added_to_cart {
    background-color: var(--cftv-color-primary) !important;  /* Red #C54337 */
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;                             /* Square corners — matches new site */
    font-family: var(--cftv-font-heading) !important;        /* Barlow Condensed */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 18px 28px 20px 28px !important;
    transition: background-color 0.3s ease;
    cursor: pointer;
}
.kt-blocks-accordion-header {
    padding: 20px !important;
}
body.cftv-embed .button span{
    color: #ffffff !important;
}
/* Button hover state — slightly lighter red */
body.cftv-embed .wp-element-button:hover,
body.cftv-embed .wp-block-button__link:hover,
body.cftv-embed button[type="submit"]:hover,
body.cftv-embed input[type="submit"]:hover,
body.cftv-embed .button:hover,
body.cftv-embed .btn:hover,
body.cftv-embed .ct-button:hover,
body.cftv-embed .wc-block-components-button:hover,
body.cftv-embed .checkout-button:hover,
body.cftv-embed .single_add_to_cart_button:hover,
body.cftv-embed .added_to_cart:hover {
    background-color: #d45549 !important;
}


/* ==========================================================================
   6. FORM INPUTS

   New site style: square corners, light gray border, Karla font,
   focus state with dark-pine border and subtle shadow
   ========================================================================== */
body.cftv-embed input[type="text"],
body.cftv-embed input[type="email"],
body.cftv-embed input[type="tel"],
body.cftv-embed input[type="number"],
body.cftv-embed input[type="password"],
body.cftv-embed input[type="search"],
body.cftv-embed input[type="url"],
body.cftv-embed input[type="date"],
body.cftv-embed textarea,
body.cftv-embed select,
body.cftv-embed .select2-container .select2-selection {
    font-family: var(--cftv-font-body) !important;
    border: 1px solid var(--cftv-color-fog) !important;      /* Light gray border */
    border-radius: 0 !important;                              /* Square corners */
    padding: 10px 14px;
    color: var(--cftv-color-graphite);
    background-color: #ffffff;
    transition: border-color 0.3s ease;
}

/* Fix select dropdown text getting cut off — ensure enough height and line-height */
body.cftv-embed select {
    height: auto !important;
    max-height: none !important;
    min-height: 48px !important;
    line-height: 1.6 !important;
    padding: 10px 35px 10px 14px !important;
    font-size: 15px !important;
    overflow: visible !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box !important;
    background-image: none !important;
}

/* WooCommerce Bookings — start/end time selects */
body.cftv-embed .wc-bookings-date-picker select,
body.cftv-embed .wc_bookings_field_start_date select,
body.cftv-embed .wc_bookings_field_end_date select,
body.cftv-embed .wc-bookings-start-time select,
body.cftv-embed .wc-bookings-end-time select,
body.cftv-embed #wc_bookings_field_start_date select,
body.cftv-embed #wc_bookings_field_duration select,
body.cftv-embed .wc-bookings-booking-form select,
body.cftv-embed .block-picker select {
    height: auto !important;
    max-height: none !important;
    min-height: 48px !important;
    line-height: 1.6 !important;
    padding: 10px 35px 10px 14px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
}

/* Select2 dropdown (WooCommerce uses this for country/state selects) */
body.cftv-embed .select2-container .select2-selection--single {
    height: auto !important;
    min-height: 44px;
    display: flex !important;
    align-items: center;
    padding: 8px 14px !important;
}

body.cftv-embed .select2-container .select2-selection__rendered {
    line-height: 1.4 !important;
    padding: 0 !important;
    color: var(--cftv-color-graphite) !important;
    overflow: visible !important;
}

body.cftv-embed .select2-container .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
}

/* Input focus state — teal border with subtle glow */
body.cftv-embed input:focus,
body.cftv-embed textarea:focus,
body.cftv-embed select:focus {
    border-color: var(--cftv-color-dark-pine) !important;     /* Dark teal border on focus */
    outline: none;
    box-shadow: 0 0 0 2px rgba(22, 65, 84, 0.1);             /* Subtle teal glow */
}


/* ==========================================================================
   7. WOOCOMMERCE-SPECIFIC STYLES

   Styles for WooCommerce notices (success, info, error messages),
   product prices, and other WooCommerce elements to match new branding.
   ========================================================================== */

/* Success and info notices — teal accent */
body.cftv-embed .woocommerce-message,
body.cftv-embed .woocommerce-info {
    border-top-color: var(--cftv-color-dark-pine) !important;
    background-color: rgba(22, 65, 84, 0.05);                /* Very light teal background */
    font-family: var(--cftv-font-body) !important;
}

/* Error notices — red accent */
body.cftv-embed .woocommerce-error {
    border-top-color: var(--cftv-color-primary) !important;
}

/* Notice icons */
body.cftv-embed .woocommerce-message::before,
body.cftv-embed .woocommerce-info::before {
    color: var(--cftv-color-dark-pine) !important;
}

/* Product prices */
body.cftv-embed .price,
body.cftv-embed .woocommerce-Price-amount {
    color: var(--cftv-color-graphite) !important;
    font-family: var(--cftv-font-body) !important;
    font-weight: 600;
}


/* ==========================================================================
   8. TABLES — Cart, checkout order summary, booking details, etc.
   ========================================================================== */
body.cftv-embed table {
    border-collapse: collapse;
    font-family: var(--cftv-font-body) !important;
}

/* Table headers */
body.cftv-embed table th {
    background-color: var(--cftv-color-fog) !important;       /* Light gray — subtle, not heavy */
    color: var(--cftv-color-graphite);
    font-family: var(--cftv-font-heading) !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.5px;
}

/* Table cells — consistent padding and border color */
body.cftv-embed table td,
body.cftv-embed table th {
    border-color: var(--cftv-color-fog) !important;
    padding: 12px 16px;
}

/* --- WooCommerce cart & checkout table fixes --- */

/* Cart totals and checkout order review table */
body.cftv-embed .cart_totals table th,
body.cftv-embed .woocommerce-checkout-review-order-table th,
body.cftv-embed .woocommerce-checkout-review-order-table tfoot th,
body.cftv-embed .woocommerce-checkout-review-order-table tfoot td {
    background-color: transparent !important;
    font-family: var(--cftv-font-body) !important;
    font-weight: 600;
    font-size: 14px;
    text-transform: none;
    letter-spacing: normal;
    padding: 10px 16px;
    vertical-align: middle;
}

/* Subtotal and Total rows — clean look */
body.cftv-embed .cart_totals table td,
body.cftv-embed .woocommerce-checkout-review-order-table tfoot td {
    padding: 10px 16px;
    vertical-align: middle;
}

/* Order review table header row (PRODUCT / SUBTOTAL) */
body.cftv-embed .woocommerce-checkout-review-order-table thead th {
    background-color: var(--cftv-color-fog) !important;
    padding: 10px 16px;
}

/* Order review table product rows */
body.cftv-embed .woocommerce-checkout-review-order-table tbody td {
    padding: 12px 16px;
    vertical-align: top;
}

/* Remove heavy borders between subtotal/total rows */
body.cftv-embed .cart_totals table tr,
body.cftv-embed .woocommerce-checkout-review-order-table tfoot tr {
    border-color: var(--cftv-color-fog) !important;
}

/* Cart table product name and meta */
body.cftv-embed .woocommerce-cart-form table th {
    background-color: var(--cftv-color-fog) !important;
    padding: 10px 16px;
}


/* ==========================================================================
   9. BLOCKSY THEME VARIABLE OVERRIDES

   Blocksy uses its own CSS custom properties (--theme-*) for colors and
   styling throughout the theme. We override these so that ANY Blocksy
   component we haven't specifically targeted above still uses the new
   branding colors. This is a catch-all that handles edge cases.
   ========================================================================== */
body.cftv-embed {
    /* Text colors */
    --theme-text-color: var(--cftv-color-graphite) !important;
    --theme-link-initial-color: var(--cftv-color-dark-pine) !important;
    --theme-link-hover-color: var(--cftv-color-primary) !important;

    /* Button colors and shape */
    --theme-button-background-initial-color: var(--cftv-color-primary) !important;
    --theme-button-background-hover-color: #d45549 !important;
    --theme-button-text-initial-color: #ffffff !important;
    --theme-button-text-hover-color: #ffffff !important;
    --theme-button-border-radius: 0 !important;

    /* Heading colors */
    --theme-heading-1-color: var(--cftv-color-graphite) !important;
    --theme-heading-2-color: var(--cftv-color-graphite) !important;
    --theme-heading-3-color: var(--cftv-color-graphite) !important;
    --theme-heading-4-color: var(--cftv-color-graphite) !important;
    --theme-heading-5-color: var(--cftv-color-graphite) !important;

    /* Blocksy global palette — maps to new site colors */
    --theme-palette-color-1: var(--cftv-color-primary) !important;    /* Primary accent */
    --theme-palette-color-2: var(--cftv-color-dark-pine) !important;  /* Secondary */
    --theme-palette-color-3: var(--cftv-color-graphite) !important;   /* Dark text */
    --theme-palette-color-4: var(--cftv-color-sand) !important;       /* Light background */
    --theme-palette-color-5: var(--cftv-color-cirrus) !important;     /* Lighter background */
}


/* ==========================================================================
   10. LAYOUT ADJUSTMENTS FOR IFRAME

   Small tweaks to make content look good inside an iframe:
   - Add some top padding since header is removed
   - Enable smooth scrolling within the iframe
   ========================================================================== */

/* Add a bit of top padding to content area since header is gone */
body.cftv-embed .entry-content,
body.cftv-embed .ct-container {
    padding-top: 20px;
}

/* Smooth scrolling for anchor links within the iframe */
body.cftv-embed {
    scroll-behavior: smooth;
}
body.cftv-embed.page-id-13378  .wp-block-kadence-column  .kt-inside-inner-col {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
} 
.kt-inside-inner-col {

}
/* ==========================================================================
   11. EVENT TICKETS PLUGIN — Preserve native styling

   The broad overrides above (buttons, headings, fonts, tables) break the
   Event Tickets plugin's ticket form. These rules reset the plugin's
   elements back to their original styling so the ticket block looks the
   same in the iframe as on the direct site.
   ========================================================================== */

/*
 * Scope out ALL Event Tickets elements from the embed overrides.
 * We use higher specificity (body.cftv-embed.cftv-embed) so these
 * rules beat the broad selectors above, then set properties to
 * 'inherit' or 'initial' so the plugin's own CSS takes effect.
 */

/* --- Buttons: "Get Tickets", "Checkout Now", plus/minus --- */
body.cftv-embed.cftv-embed .tribe-common button,
body.cftv-embed.cftv-embed .tribe-common input[type="submit"],
body.cftv-embed.cftv-embed .tribe-common .button,
body.cftv-embed.cftv-embed .tribe-tickets button,
body.cftv-embed.cftv-embed .tribe-tickets input[type="submit"],
body.cftv-embed.cftv-embed .tribe-tickets .button,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper button,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper input[type="submit"],
body.cftv-embed.cftv-embed .tribe-dialog__wrapper .button,
body.cftv-embed.cftv-embed .event-tickets button,
body.cftv-embed.cftv-embed .event-tickets input[type="submit"],
body.cftv-embed.cftv-embed .event-tickets .button {
    all: initial !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

/* Let the plugin styles cascade onto buttons by re-applying tribe classes */
body.cftv-embed.cftv-embed .tribe-common-c-btn.tribe-common-c-btn--small {
    position: relative !important;
    background-color: #c54337 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    font-family: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 1.62 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    padding: 11px 14px !important;
    display: inline-block !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease !important;
}

body.cftv-embed.cftv-embed .tribe-common-c-btn.tribe-common-c-btn--small:hover {
    background-color: #c54337 !important;
}

/* "Save and View Cart" — underlined text link */
body.cftv-embed.cftv-embed .tribe-common-c-btn-link.tribe-common-c-btn--small {
    background-color: transparent !important;
    color: var(--tec-color-accent-primary, #334aff) !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 1.62 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-decoration: underline !important;
    padding: 11px 20px !important;
    display: inline-block !important;
}

body.cftv-embed.cftv-embed .tribe-common-c-btn-link.tribe-common-c-btn--small:hover {
    background-color: transparent !important;
    color: var(--tec-color-accent-primary-hover, #334affcc) !important;
}

/* Plus/minus quantity buttons */
body.cftv-embed.cftv-embed .tribe-tickets__tickets-item-quantity-add,
body.cftv-embed.cftv-embed .tribe-tickets__tickets-item-quantity-remove,
body.cftv-embed.cftv-embed [class*="tribe-tickets__item__quantity__add"],
body.cftv-embed.cftv-embed [class*="tribe-tickets__item__quantity__remove"] {
    background-color: transparent !important;
    color: var(--tec-color-icon-secondary, #bababa) !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    padding: 0 !important;
    width: 12px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    display: inline-block !important;
    align-self: center !important;
    text-align: center !important;
    line-height: 1 !important;
}

body.cftv-embed.cftv-embed .tribe-tickets__tickets-item-quantity-add:hover,
body.cftv-embed.cftv-embed .tribe-tickets__tickets-item-quantity-remove:hover,
body.cftv-embed.cftv-embed [class*="tribe-tickets__item__quantity__add"]:hover,
body.cftv-embed.cftv-embed [class*="tribe-tickets__item__quantity__remove"]:hover {
    background-color: transparent !important;
    color: var(--tec-color-icon-primary, #5d5d5d) !important;
}

/* Quantity number input */
body.cftv-embed.cftv-embed .tribe-tickets__tickets-item-quantity-number-input,
body.cftv-embed.cftv-embed input[type="number"].tribe-tickets__tickets-item-quantity-number-input {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-height: auto !important;
    height: auto !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-align: center !important;
    color: var(--tec-color-text-primary, #141827) !important;
    -moz-appearance: textfield !important;
    -webkit-appearance: textfield !important;
    appearance: textfield !important;
    box-shadow: none !important;
    width: fit-content !important;
}

/* --- Headings inside Event Tickets --- */
body.cftv-embed.cftv-embed .tribe-tickets h1,
body.cftv-embed.cftv-embed .tribe-tickets h2,
body.cftv-embed.cftv-embed .tribe-tickets h3,
body.cftv-embed.cftv-embed .tribe-tickets h4,
body.cftv-embed.cftv-embed .tribe-tickets h5,
body.cftv-embed.cftv-embed .tribe-tickets h6,
body.cftv-embed.cftv-embed .tribe-common h1,
body.cftv-embed.cftv-embed .tribe-common h2,
body.cftv-embed.cftv-embed .tribe-common h3,
body.cftv-embed.cftv-embed .tribe-common h4,
body.cftv-embed.cftv-embed .tribe-common h5,
body.cftv-embed.cftv-embed .tribe-common h6,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h1,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h2,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h3,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h4,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h5,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper h6,
body.cftv-embed.cftv-embed .event-tickets h1,
body.cftv-embed.cftv-embed .event-tickets h2,
body.cftv-embed.cftv-embed .event-tickets h3,
body.cftv-embed.cftv-embed .event-tickets h4,
body.cftv-embed.cftv-embed .event-tickets h5,
body.cftv-embed.cftv-embed .event-tickets h6 {
    font-family: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif !important;
    font-weight: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: normal !important;
    color: inherit !important;
}

/* --- Text elements inside Event Tickets --- */
body.cftv-embed.cftv-embed .tribe-tickets p,
body.cftv-embed.cftv-embed .tribe-tickets li,
body.cftv-embed.cftv-embed .tribe-tickets span,
body.cftv-embed.cftv-embed .tribe-tickets td,
body.cftv-embed.cftv-embed .tribe-tickets th,
body.cftv-embed.cftv-embed .tribe-tickets label,
body.cftv-embed.cftv-embed .tribe-common p,
body.cftv-embed.cftv-embed .tribe-common span,
body.cftv-embed.cftv-embed .tribe-common label,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper p,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper span,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper label,
body.cftv-embed.cftv-embed .event-tickets p,
body.cftv-embed.cftv-embed .event-tickets span,
body.cftv-embed.cftv-embed .event-tickets label {
    font-family: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif !important;
    color: inherit !important;
}

/* --- Form inputs inside Event Tickets --- */
body.cftv-embed.cftv-embed .tribe-tickets input[type="text"],
body.cftv-embed.cftv-embed .tribe-tickets select,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper input[type="text"],
body.cftv-embed.cftv-embed .tribe-dialog__wrapper select,
body.cftv-embed.cftv-embed .event-tickets input[type="text"],
body.cftv-embed.cftv-embed .event-tickets select {
    border: 1px solid #d5d5d5 !important;
    border-radius: 4px !important;
    padding: 8px 12px !important;
    min-height: auto !important;
    height: auto !important;
    font-size: 14px !important;
    line-height: 1.62 !important;
    background-image: none !important;
}

/* --- Tables inside Event Tickets --- */
body.cftv-embed.cftv-embed .tribe-tickets table th,
body.cftv-embed.cftv-embed .event-tickets table th {
    background-color: transparent !important;
    font-family: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif !important;
    font-weight: 700 !important;
    text-transform: none !important;
    font-size: inherit !important;
    letter-spacing: normal !important;
}

body.cftv-embed.cftv-embed .tribe-tickets table td,
body.cftv-embed.cftv-embed .tribe-tickets table th,
body.cftv-embed.cftv-embed .event-tickets table td,
body.cftv-embed.cftv-embed .event-tickets table th {
    border-color: #d5d5d5 !important;
    padding: 12px 16px !important;
}

/* --- Links inside Event Tickets --- */
body.cftv-embed.cftv-embed .tribe-tickets a,
body.cftv-embed.cftv-embed .tribe-common a,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper a,
body.cftv-embed.cftv-embed .event-tickets a {
    color: var(--tec-color-accent-primary, #334aff) !important;
}

body.cftv-embed.cftv-embed .tribe-tickets a:hover,
body.cftv-embed.cftv-embed .tribe-common a:hover,
body.cftv-embed.cftv-embed .tribe-dialog__wrapper a:hover,
body.cftv-embed.cftv-embed .event-tickets a:hover {
    color: var(--tec-color-accent-primary-hover, #334affcc) !important;
}
body.cftv-embed.term-133 .hero-section{
display:none !important;
}
body.cftv-embed.term-133  .ct-container {
    padding-top: 60px !important;
}
body.cftv-embed  .hero-section{
    display:none !important;
 }
body.cftv-embed .ct-container {
        padding-top: 0px !important;
}

#tribe-tickets__tickets-form .tribe-common-h4.tribe-tickets__tickets-item-quantity{
    max-width: 100px;
    display: flex;
    border: 2px solid #000;
    border-radius: 8px;
    text-align: center;
    padding: 0px 15px;
    margin: 20px 0;
}

body.cftv-embed #mc_embed_signup .button{
    line-height: 6px;
}
body.cftv-embed .ct-share-box.is-width-constrained{
    display: none;
}
body.cftv-embed.page-id-10810  iframe {
    min-height: 700px !important;
}

body.cftv-embed .button.continue-shopping-btn {
    top: 155px;
}
body.cftv-embed.woocommerce-cart  #coupon_code{
    padding: 27px 24px;
}