.single-post > .post-title {
    color: #426571 ;
}

.content-wrapper .select2-container .select2-selection--single .select2-selection__rendered, .select2-container .select2-selection--single .select2-selection__rendered {
padding: 5px 5px 5px 5px !important;
    padding-top: 5px !important;
    padding-right: 5px !important;
    padding-bottom: 5px !important;
		padding-left: 8px !important;
}

/* Common base style for all buttons */
.forminator-ui.forminator-design--default 
.forminator-button-submit,
.forminator-ui.forminator-design--default 
.forminator-button-next,
.forminator-ui.forminator-design--default 
.forminator-button-previous,
.forminator-ui.forminator-design--default 
.forminator-button-back {
    font-size: 16px;
    font-family: inherit;
    font-weight: 500;
    background-color: #426571 !important;
    color: #fff;
    border: none;
    border-radius: 10px !important;
    padding: 12px 24px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    text-align: center;
    transition: all 0.3s ease;
}

/* Hover effect */
.forminator-ui.forminator-design--default 
.forminator-button-submit:hover,
.forminator-ui.forminator-design--default 
.forminator-button-next:hover,
.forminator-ui.forminator-design--default 
.forminator-button-previous:hover,
.forminator-ui.forminator-design--default 
.forminator-button-back:hover {
    background-color: #344f58 !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3) !important;
}

ul > li:before {
    content: none !important;
    display: none !important;
}

/* Reduce textarea height on the horse request form */
textarea.forminator-textarea {
  height: 100px !important;
  min-height: 100px !important;
}

.forminator-ui .select2-selection__placeholder {
  color: #a3a3a3 !important;
}

.forminator-ui#forminator-module-301.forminator-design--default .forminator-select2 + .forminator-select .selection .select2-selection--single[role="combobox"] .select2-selection__rendered {
    color: #adadad !important;
}


.select2-selection__arrow:before {
	display: none;
}



.forminator-ui#forminator-module-3421.forminator-design--default select.forminator-select2 + .forminator-select .selection .select2-selection--multiple[role="combobox"] .select2-selection__placeholder {
color: #999;
}

.forminator-ui#forminator-module-440.forminator-design--default .forminator-repeater-field {
    background: rgba(248, 248, 248, 0.1) !important;
    box-shadow: inset 0px 0px 0px rgba(221, 221, 221, 0.5) !important;
	border: 1px solid !important;
	border-color: #e9e9e9 !important;
}

.forminator-ui#forminator-module-440.forminator-design--default .forminator-label {
    font-size: 15px !important;
    font-family: inherit;
    font-weight: 700;
}

.forminator-ui#forminator-module-440.forminator-design--default .forminator-select2 + .forminator-select .selection .select2-selection--single[role="combobox"] {
    border-color: #adadad !important;
    background-color: #FFFFFF !important;
}

.forminator-ui#forminator-module-440.forminator-design--default .forminator-pagination-steps .forminator-break:before {
    background-color: #426571 !important;
}

.body-container button:not(.customize-partial-edit-shortcut-button), .body-container input[type="reset"] {
    --button-border-width: 0px !important;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-button {
    padding: 15px !important;
}

.forminator-ui#forminator-module-921.forminator-design--default .forminator-button-submit {
    font-size: 16px !important;
    font-weight: 600 !important;
}

.footer {
    background-color: #426571;
}

h4, .editor-styles-wrapper .block-editor-block-list__layout h4, body .elementor-widget-heading h4.elementor-heading-title, .woocommerce .comment-reply-title, .woocommerce-Reviews-title {
    font-family: "Roboto", Sans-serif;
    font-size: 26px;
    font-weight: 600;
    color: #5D5D5D !important;
}

.pac-container {
  z-index: 2147483647 !important;
}

.forminator-ui#forminator-module-1287.forminator-design--default .forminator-select2 + .forminator-select .selection .select2-selection--multiple[role="combobox"] .select2-selection__rendered {
    color: #999;
}


/* Default buttons (Button 2 & 3) */
.pum-content .custom-button {
  background-color: white;
  color: #426571;
  border: 1px solid #426571;
  padding: 12px 24px;
  border-radius: 10px;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
  margin: 10px;
  font-size: 16px;
}

.pum-content .custom-button:hover {
  background-color: #426571;
  color: white;
}

/* Special style for Button 1 */
.pum-content .custom-button-primary {
  background-color: #426571;
  color: white;
  border: 1px solid #426571;
}

.pum-content .custom-button-primary:hover {
  background-color: #2f4c5a;
  color: white;
}

/* Target breadcrumb links inside Elementor text widgets */
.elementor-widget-text-editor .elementor-widget-container > span a {
  color: #426571 !important;
	font-weight: 600;
	line-height: 0.8 !important;
  font-size: 12px;
  text-decoration: none;
}

.elementor-widget-text-editor .elementor-widget-container > span a:hover {
  color: #426571 !important; /* Use your preferred hover color */
  text-decoration: underline;
}

/* Target the last breadcrumb (current page) */
.elementor-widget-text-editor .elementor-widget-container .breadcrumb_last {
  color: #426571;
	line-height: 0.8 !important;
  font-weight: 600;
  font-size: 12px;
}

body.page-id-1357 ul > li::before {
  content: none !important;
  display: none !important;
}

.forminator-ui#forminator-module-1356.forminator-design--default select.forminator-select2 + .forminator-select .selection .select2-selection--multiple[role="combobox"] .select2-selection__placeholder {
    color: #9fa19f;
	  padding-left: 0 !important;
  position: relative !important;
}

.ur-submit-button {
  background-color: #426571 !important;  /* Normal state */
  color: #fff !important;                /* Text color */
}

/* Hover effect */
.ur-submit-button:hover {
  background-color: #273b42 !important;  /* Hover state */
  color: #fff !important;
}

.access-message {
  max-width: 600px;
  margin: 60px auto;
  padding: 30px;
  background-color: #f8f9fa;
  border: 1px solid #ddd;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.04);
  font-family: "Segoe UI", sans-serif;
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
}

.access-message a {
  color: #426571;
  text-decoration: underline;
  font-weight: bold;
  transition: color 0.2s;
}

.access-message a:hover {
  color: #304851;
}

.company-data {
  max-width: 1140px;
  font-family: "Segoe UI", sans-serif;
}

.company-data h2 {
  font-size: 24px;
  margin-bottom: 10px;
  color: #333;
}

.company-data p {
  margin: 8px 0;
  font-size: 16px;
  color: #555;
}

.company-data strong {
  color: #000;
}

.company-balance {
  max-width: 1140px;

  padding: 20px;
  font-family: "Segoe UI", sans-serif;
  text-align: center;
}

.company-balance h3 {
  font-size: 22px;
  margin-bottom: 10px;
  color: #2e7d6b;
}

.company-balance p {
  font-size: 20px;
  color: #1b4f44;
  font-weight: bold;
}

.company-logout {
  max-width: 1140px;
  text-align: center;
}

.logout-button {
  display: inline-block;
	padding: 10px 16px;
  color: #426571;
	border: 1px solid #426571;
  text-decoration: none;
  border-radius: 10px;
  font-size: 14px;
  transition: background 0.2s;
}

.logout-button:hover {
  background: #426571;
}

.header .main-menu > li > a {
    letter-spacing: 0.2em !important;
}		

body.user-registration-page #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-membership_page_user-registration-login-forms #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-membership_page_user-registration-login-forms .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button {
color: #fff !important;
    background: #426571;
}

body.user-registration-page #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-membership_page_user-registration-login-forms #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button, body.user-registration-membership_page_user-registration-login-forms .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid>div .user-registration-Button:hover {
color: #fff;
    background: #35525b !important;
}

body.user-registration-error ul > li::before {
  content: none !important;
  display: none !important;
}

body.user-registration ul > li::before {
  content: none !important;
  display: none !important;
}

.price-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 40px;
  margin-top: 10px;
}

.price-item {
  font-size: 16px;
  color: #555;
}

.company-data p,
.company-data div,
.company-balance,
.company-logout {
  word-wrap: break-word;
  word-break: break-word;
  overflow-wrap: break-word;
}

.company-data a {
  word-break: break-all;
  text-decoration: underline;
  color: #426571;
}

/* Container for all breadcrumb links */
.elementor-shortcode a {
  color: #426571;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.elementor-shortcode a:hover {
  color: #f14f44;
  text-decoration: underline;
}

/* The current page (last item) */
.elementor-shortcode .breadcrumb_last {
  color: #333;
  font-weight: 600;
  font-size: 14px;
}

#transport-result-box {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

#transport-result-box table {
  min-width: 600px;
  width: 100%;
  border-collapse: collapse;
}


#transport-result-box {
  font-family: Arial, sans-serif;
  max-width: 1400px;
  margin: 2rem auto;
  padding: 1.5rem;
  background: #fafafa;
  border: 0px solid #ddd;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}

@media only screen and (min-width: 500px) {
    .paypal-button-container {
        min-width: 500px;
        max-width: 100% !important;
    }
}

.forminator-ui.forminator-custom-form[data-design=default] select.forminator-select2+.forminator-select .selection span[role=combobox] .select2-selection__clear {
    display: none;
}

.content-wrapper .select2-container .select2-selection--single, .select2-container .select2-selection--single {
    border-radius: 4px;
}

.content-wrapper .select2-container .select2-selection--multiple, .select2-container .select2-selection--multiple {
    border-radius: 4px;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-input {
    border-radius: 4px;
}

.select2-selection__placeholder:before {
	display: none;
}

.select2-selection__selections:before {
	display: none;
}

li.select2-selection__choice:before {
	display: none;
}

.select2-container .select2-selection--multiple .select2-selection__placeholder {
  padding-left: 5px !important;
  margin-left: 0 !important;
  color: #999 !important;
  display: inline-block; /* makes padding actually apply */
}

.transporter-list ul li a {
    text-decoration: none;
    color: #426571;
}

.transporter-list ul li a:hover {
    color: #426571;
    text-decoration: underline;
}

.content-wrapper .select2-container .select2-selection--single, .select2-container .select2-selection--single {
    border-radius: 4px !important;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-input {
    border-radius: 4px !important;
}

.fullwidth-button {
    display: block !important;
    width: 100% !important;
    text-align: center;
}


/* === HORSE ARCHIVE === */

/* Main archive grid */
.horse-archive-grid {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Card layout */
.horse-card {
    display: flex;
    width: 100%;
    height: 260px;
    border: 1px solid #ddd;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.horse-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.horse-card a {
    display: flex;
    flex-direction: row;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

.horse-card a:hover {
    text-decoration: none;
    color: inherit;
}

/* Image block with wrapper for overlay */
.horse-image {
    width: 347px !important;
    height: 260px !important;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
}

.horse-image-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
}

.horse-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
    border-radius: 0;
}

/* SOLD badge overlay */
.sold-overlay {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(255, 0, 0, 0.85);
    color: #fff;
    font-weight: bold;
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
    text-transform: uppercase;
    z-index: 2;
    pointer-events: none;
}

.horse-info {
    flex: 1 1 auto !important;
    width: auto !important;
    padding: 20px 25px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.horse-info h3 {
    margin: 5px 25px 25px 25px;
    font-size: 22px;
    color: #333;
}

.horse-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 15px;
}

.horse-title {
    font-size: 22px;
    font-weight: 600;
    margin: 0;
    color: #333;
    flex-grow: 1;
}

.edit-link {
    font-size: 14px;
    color: #0073aa;
    text-decoration: none;
    white-space: nowrap;
    margin-left: 15px;
}

.edit-link:hover {
    text-decoration: underline;
}

.horse-meta {
    display: grid;
    line-height: 1.2em;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 20px;
    list-style: none;
    padding: 0;
    margin: 20px 0 20px 0;
}

.horse-meta li::before {
    content: none !important;
    display: none !important;
}

.horse-meta li {
    font-size: 15px;
    color: #555;
}

.horse-price {
    font-size: 23px;
    color: #426571;
    font-weight: bold;
    text-align: right;
    margin-top: auto;
    margin-right: 25px;
    margin-bottom: 10px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .horse-card,
    .horse-card a {
        flex-direction: column;
        height: auto;
        width: 100%;
    }

    .horse-image {
        width: 100% !important;
        height: auto !important;
    }

    .horse-image-wrapper {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
    }

    .horse-image-wrapper img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }

    .horse-info {
        width: 100%;
        padding: 20px;
    }

    .horse-meta {
        grid-template-columns: 1fr;
    }

    .horse-price {
			font-size: 19px !important; 
        text-align: right;
        margin-top: 10px;
			  margin-bottom: 10px !important;
        margin-right: 25px;
    }

    .user-horse-dashboard-wrap .horse-controls-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .user-horse-dashboard-wrap .horse-action-buttons {
        margin-top: 10px;
    }
}

@media (max-width: 1100px) {
    .horse-info h3 {
        font-size: 20px !important;
    }

    .horse-meta li {
        font-size: 14px !important;
    }

    .horse-price {
        font-size: 22px !important;
    }
}

@media (max-width: 950px) {
    .horse-info h3 {
        font-size: 18px !important;
    }

    .horse-meta li {
        font-size: 13px !important;
    }

    .horse-price {
        font-size: 19px !important;
    }
}

@media (max-width: 768px) {
    .horse-info h3 {
        font-size: 22px !important;
    }

    .horse-meta li {
        font-size: 16px !important;
        line-height: 1.4em;
    }

    .horse-price {
        font-size: 22px !important;
    }
}

/* Scoped card style */
.user-horse-dashboard-wrap .horse-card {
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

/* HS pagination: single row, no borders */
.hs-pagination { margin: 20px 0; text-align: center; }
.hs-pagination .page-numbers {
  display: flex;
  flex-wrap: nowrap;      /* keep in one row */
  justify-content: center;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.hs-pagination .page-numbers li { display: block; }

/* kill theme button styles */
.hs-pagination .page-numbers a,
.hs-pagination .page-numbers span {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  line-height: 1.2;
  min-width: auto;
  height: auto;
  color: inherit;         /* use text color */
  text-decoration: none;
}

/* active + hover states (simple text) */
.hs-pagination .page-numbers .current { font-weight: 700; text-decoration: underline; }
.hs-pagination .page-numbers a:hover   { text-decoration: underline; }


/* === CONTROLS SECTION === */
.user-horse-dashboard-wrap .horse-controls-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 15px 25px;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 10px 10px;
    background: #f9f9f9;
    font-size: 14px;
    margin-top: 0;
    margin-bottom: 30px;
    flex-wrap: wrap;
}



.user-horse-dashboard-wrap .status-toggle-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
    flex-grow: 1;
}




/* Action buttons (right aligned) */
.user-horse-dashboard-wrap .horse-action-buttons {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}


.user-horse-dashboard-wrap .horse-controls-row a.edit-button,
.user-horse-dashboard-wrap .horse-controls-row a.delete-button {
    font-size: 12px;
    font-weight: 500;
    color: #0073aa;
    text-decoration: none;
    padding: 1px 8px;
    border: 1px solid #0073aa;
    border-radius: 3px;
    transition: background-color 0.2s;
}

.user-horse-dashboard-wrap .horse-controls-row a.delete-button {
    color: #a00;
    border-color: #a00;
}

.user-horse-dashboard-wrap .horse-controls-row a.edit-button:hover {
    background-color: #0073aa;
    color: #fff;
}

.user-horse-dashboard-wrap .horse-controls-row a.delete-button:hover {
    background-color: #a00;
    color: #fff;
}

/* Status lines and labels */
.user-horse-dashboard-wrap .status-line {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.user-horse-dashboard-wrap .status-label {
    font-weight: 500;
}

/* Status color classes */
.user-horse-dashboard-wrap .status-label.status-unpublished {
    color: #c00;
}

.user-horse-dashboard-wrap .status-label.status-published {
    color: #2b9e44;
}

.user-horse-dashboard-wrap .status-label.status-under-review {
    color: #0073aa;
}

.user-horse-dashboard-wrap .status-label.status-rejected {
    color: #cc7a00;
}

.user-horse-dashboard-wrap .status-label.status-sold {
    color: #0073aa;
}

/* Mini status action buttons */
.user-horse-dashboard-wrap .status-action {
    font-size: 12px;
    color: #0073aa;
    text-decoration: none;
    border: 1px solid #0073aa;
    padding: 6px 10px;
    border-radius: 3px;
    background-color: #f2f9ff;
    display: inline-block;
    line-height: 1.2em;
    font-weight: 500;
    transition: background-color 0.2s, color 0.2s;
}

.user-horse-dashboard-wrap .status-action:hover {
    background-color: #0073aa;
    color: #fff;
}


/* Final alignments */
.user-horse-dashboard-wrap .horse-footer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 25px;
    margin-top: auto;
}

.user-horse-dashboard-wrap .horse-archive-grid {
    gap: 0px;
}

.user-horse-dashboard-wrap .status-label.status-under-review {
    color: #28a745; /* light green */
}

.user-horse-dashboard-wrap .status-action[href*="change_status=Under%20review"],
.user-horse-dashboard-wrap .status-action[href*="change_status=Published"] {
    border-color: #28a745;
    color: #28a745;
}

.user-horse-dashboard-wrap .status-action[href*="change_status=Under%20review"]:hover,
.user-horse-dashboard-wrap .status-action[href*="change_status=Published"]:hover {
    background-color: #28a745;
    color: #fff;
}

.user-horse-dashboard-wrap .status-action[href*="change_status=Unpublished"] {
    border-color: #c00;
    color: #c00;
}

.user-horse-dashboard-wrap .status-action[href*="change_status=Unpublished"]:hover {
    background-color: #c00;
    color: #fff;
}

.user-horse-dashboard-wrap .horse-controls-row a.preview-button {
    font-size: 12px;
    font-weight: 500;
    color: #0073aa;
    text-decoration: none;
    padding: 1px 8px;
    border: 1px solid #0073aa;
    border-radius: 3px;
    transition: background-color 0.2s;
}

.user-horse-dashboard-wrap .horse-controls-row a.preview-button:hover {
    background-color: #0073aa;
    color: #fff;
}

@media (max-width: 768px) {
  .user-horse-dashboard-wrap .horse-controls-row {
    flex-direction: column;
    gap: 10px;
    padding: 12px 15px;
    margin-bottom: 20px;
  }

  .user-horse-dashboard-wrap .status-toggle-row {
    gap: 15px;
  }

  .user-horse-dashboard-wrap .horse-action-buttons {
    gap: 8px;
		justify-content: flex-end;
    width: 100%;
  }

  .user-horse-dashboard-wrap .status-line {
    gap: 3px !important;
  }
}

/* === SINGLE HORSE PAGE === */

/* Only for outer page layout, not horse_details */
.page-horse-layout {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 20px;
    box-sizing: border-box;
}

.page-horse-layout .horse-main-column {
    flex: 1;
    min-width: 0;
}

.page-horse-layout .horse-sidebar-column {
    flex: 0 0 250px;
}

.page-horse-layout.no-sidebar .horse-main-column {
  flex: 0 1 960px;            /* shrinkable, target width 960px */
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}



/* Optional: make columns stack on smaller screens */
@media (max-width: 900px) {
    .page-horse-layout {
        flex-direction: column;
    }
}

.single-horse-wrapper {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.single-horse-wrapper hr {
    border: none;
    border-top: 1px solid #ccc;
    margin: 0px 0;
    height: 0;
}

/* BLOCK 1: Title and Price */
.horse-title-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.horse-title-row .title-left {
    flex: 1 1 60%;
}
.horse-title-row h2 {
    margin: 0;
    font-size: 28px;
}
.horse-title-row small {
    display: block;
    color: #666;
    margin-top: 4px;
    font-size: 14px;
}
.price-right span {
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    background: #426571;
    padding: 8px 16px;
    border-radius: 6px;
    display: inline-block;
}

/* BLOCK 2: Image Layout */
.horse-images-grid {
  display: flex;
  gap: 20px;
  align-items: stretch;
}

.main-photo {
  flex: 1 1 100%;

}

.main-photo img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  object-fit: contain;
  display: block;
}

/* Side gallery defaults */
.side-gallery {
  flex: 0 0 160px;           /* reserve 160px only when it actually shows */
  max-height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border-radius: 5px;
  scrollbar-width: none;      /* Firefox */
  -ms-overflow-style: none;   /* IE 10+ */
}
.side-gallery::-webkit-scrollbar { display: none; }

/* If the gallery exists but has no element children, hide it */
.side-gallery:empty,
.side-gallery:not(:has(>*)) {
  display: none;
  flex: 0 0 0;
}

/* (Optional) also handle the case when the gallery element doesn't exist at all */
.horse-images-grid:not(:has(.side-gallery)) .main-photo {
  flex: 1 1 100%;
  max-width: 100%;
}


/* BLOCK 3: Horse Details */
.horse-details-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 10px 40px;
    margin-bottom: 20px;
	  margin-top: 10px;
}
.horse-details-grid > div {
    font-size: 16px;
}

/* BLOCK 4: Characteristics */
.horse-characteristics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 10px 20px;
    font-size: 15px;
    margin-bottom: 0px;
}
.char-item {
    display: flex;
    align-items: center;
}
.char-item .check-icon {
    color: green;
    margin-right: 6px;
    font-weight: bold;
}

/* BLOCK 5: Description */
.horse-description {
    padding: 10px 0 0;
    font-size: 15px;
    margin-bottom: 20px;
}

/* BLOCK 6: Seller & Location */
.horse-seller-location {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* force 2 columns */
    gap: 15px;
    padding: 15px;
    background: #f4f9f6;
    border-radius: 8px;
    font-size: 18px;
}

/* Right-align second column */
.horse-seller-location .right-align {
    text-align: right;
}

@media (max-width: 768px) {
  .horse-seller-location {
    grid-template-columns: 1fr; /* switch to one column */
  }

  .horse-seller-location .right-align {
    text-align: left; /* override right alignment */
  }
}

/* === BLOCK 7: Video Gallery (updated to match YouTube preview) === */

/* Uploaded video player gallery (MP4 files) */
.horse-uploaded-video-gallery {
  display: grid;
  gap: 15px;
  margin-top: 10px;
  margin-bottom: 30px;
}
.horse-uploaded-video-gallery.count-1 { grid-template-columns: 1fr; }
.horse-uploaded-video-gallery.count-2 { grid-template-columns: repeat(2, 1fr); }
.horse-uploaded-video-gallery.count-3 { grid-template-columns: repeat(3, 1fr); }

@media (max-width: 900px) { .horse-uploaded-video-gallery.count-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .horse-uploaded-video-gallery { grid-template-columns: 1fr !important; } }

/* Preview container */
.horse-uploaded-video-gallery .horse-video {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
  background: #000;
  cursor: pointer;
}
.horse-uploaded-video-gallery .horse-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 8px;
  background: #000;
  pointer-events: none;
}

/* ===== Circle play button for UPLOADED videos ===== */
.horse-uploaded-video-gallery .horse-video .play-overlay{
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 50px; height: 50px;
  border-radius: 50%;
  background: #426571;               /* brand blue */
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 18px rgba(0,0,0,.3);
  opacity: 1; z-index: 2; border: 0; cursor: pointer;
  /* HIDE any text/icon inside the element (e.g., "▶") */
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
  text-shadow: none !important;
}
.horse-uploaded-video-gallery .horse-video .play-overlay::before{
  content:"";
  width:0; height:0;
  border-left: 15px solid #fff;        /* white triangle */
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  margin-left: 6px;                     /* optical centering */
}

/* --- YouTube thumbnail gallery --- */
.horse-embed-video-gallery {
  display: grid; gap: 15px; margin-top: 10px; margin-bottom: 50px;
}
.horse-embed-video-gallery.count-1 { grid-template-columns: 1fr; }
.horse-embed-video-gallery.count-2 { grid-template-columns: repeat(2, 1fr); }
.horse-embed-video-gallery.count-3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 900px) { .horse-embed-video-gallery.count-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .horse-embed-video-gallery { grid-template-columns: 1fr !important; } }

.video-thumb-link { position: relative; overflow: hidden; border-radius: 8px; aspect-ratio: 16/9; background:#000; width:100%; }
.video-thumb-link img { width:100%; height:100%; object-fit:cover; display:block; border-radius:8px; }
.video-preview-wrapper { position: relative; width:100%; height:100%; display:block; }

/* ===== Same circle play button for YT thumbs ===== */
.video-preview-wrapper .play-button{
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 50px; height: 50px;
  border-radius: 50%;
  background: #426571;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 18px rgba(0,0,0,.3);
  pointer-events: none;                 /* keep whole thumb clickable if it’s a link */
  /* hide any text character it may contain */
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
  text-shadow: none !important;
}
.video-preview-wrapper .play-button::before{
  content:"";
  width:0; height:0;
  border-left: 15px solid #fff;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  margin-left: 6px;
}

/* Video thumb frame: keeps perfect 16:9, crops bars */
.horse-uploaded-video-gallery .horse-video .thumb-wrap{
  position: relative;
  aspect-ratio: 16 / 9;          /* modern browsers */
  overflow: hidden;
  background: #000;              /* fill while loading */
  border-radius: 10px;           /* keep your rounded corners */
}

/* Fallback if some browsers lack aspect-ratio */
@supports not (aspect-ratio: 16 / 9){
  .horse-uploaded-video-gallery .horse-video .thumb-wrap::before{
    content: "";
    display: block;
    padding-top: 56.25%;         /* 16:9 */
  }
  .horse-uploaded-video-gallery .horse-video .thumb-wrap > *{
    position: absolute; inset: 0;
  }
}

/* The actual image/video fits and crops (removes letterboxing) */
.horse-uploaded-video-gallery .horse-video .thumb-wrap img,
.horse-uploaded-video-gallery .horse-video .thumb-wrap video{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;             /* key line */
  object-position: center;
}

/* ==================== Popup (lightbox) ==================== */
.hs-video-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}
.hs-video-lightbox.is-open {
  display: block;
}

.hs-vb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.9);
}

.hs-vb-dialog {
  position: absolute;
  inset: 0;
  display: flex;                 /* robust centering for all content */
  align-items: center;           /* vertical center */
  justify-content: center;       /* horizontal center */
  padding: 24px;
}
/* Ensure video lightbox has no extra padding around media */
#hsVideoLightbox .hs-vb-dialog { padding: 0 !important; }

/* Lightbox content container should shrink to the media */
.hs-vb-body {
  display: inline-block;
  background: transparent;    /* avoid black canvas around video */
  padding: 0;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
  position: relative;
  justify-self: center;       /* prevent grid stretch */
  align-self: center;         /* center vertically within grid */
}

.hs-vb-body video {
  display: block;
  width: auto;
  height: auto;
  max-width: 96vw;
  max-height: 90vh;
  object-fit: contain;
  background: #000;
}

/* Close button centered horizontally */
.hs-vb-close {
  position: absolute;
  top: 12px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  background: transparent;
  color: #fff;
  border: 0;
  font-size: 32px;
  cursor: pointer;
  line-height: 1;
  padding: 4px 8px;
}

/* ==================== Buttons on small screens ==================== */
@media (max-width: 600px) {
  .horse-uploaded-video-gallery .horse-video .play-overlay,
  .video-preview-wrapper .play-button {
    width: 72px;
    height: 72px;
  }
  .horse-uploaded-video-gallery .horse-video .play-overlay::before,
  .video-preview-wrapper .play-button::before {
    border-left: 22px solid #fff;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    margin-left: 5px;
  }
}

/* ==================== Lightbox media wrapper ==================== */
/* Desktop: still wide, not forced 16:9 */
/* Shrink-to-fit media: let the video define size within viewport constraints */
#hsVideoLightbox .hs-vb-body .hs-vb-media {
  display: inline-block !important;
  /* Let content define size; keep within viewport */
  width: auto !important;
  height: auto !important;
  max-width: 96vw !important;
  max-height: 86vh !important;
}

#hsVideoLightbox .hs-vb-body .hs-vb-media iframe,
#hsVideoLightbox .hs-vb-body .hs-vb-media video{
  /* Allow JS to set exact px size; otherwise shrink-to-fit content */
  width: auto;
  height: auto;
  max-width: 96vw;
  max-height: 86vh;
  display: block;
  object-fit: contain;
  background: #000;
}

/* Ensure YouTube iframes keep 16:9 and expand nicely */
#hsVideoLightbox .hs-vb-body .hs-vb-media iframe{
  aspect-ratio: 16 / 9;
}


/* Mobile: let media use all height, keep aspect ratio */
@media (max-width: 640px) {
  #hsVideoLightbox .hs-vb-dialog {
    padding: 8px;
  }
  #hsVideoLightbox .hs-vb-body .hs-vb-media {
    width: auto;           /* let content define width on mobile too */
    max-width: 100vw;
    height: auto;
    max-height: 86vh;      /* leave room for close button */
  }
  #hsVideoLightbox .hs-vb-body .hs-vb-media iframe,
  #hsVideoLightbox .hs-vb-body .hs-vb-media video {
    width: auto;
    height: auto;
    object-fit: contain;   /* show full vertical frame */
    background: #000;      /* avoid white gaps */
    display: block;
  }
}


/* Force 2 columns on wide screens, regardless of count */
.horse-uploaded-video-gallery,
.horse-embed-video-gallery {
  grid-template-columns: repeat(2, 1fr) !important;
}

/* Collapse responsively */
@media (max-width: 900px){
  .horse-uploaded-video-gallery,
  .horse-embed-video-gallery {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px){
  .horse-uploaded-video-gallery,
  .horse-embed-video-gallery {
    grid-template-columns: 1fr !important;
  }
}

/* anchor for abs child is already set on .horse-video */
.horse-uploaded-video-gallery .horse-video .play-overlay,
.video-preview-wrapper .play-button{
  padding: 0;                 /* kill inherited button padding */
  box-sizing: content-box;    /* width/height exclude padding/border */
  width: 50px;
  height: 50px;
  min-width: 50px;
  min-height: 50px;
  max-width: 50px;
  max-height: 50px;
  aspect-ratio: 1 / 1;        /* belt & suspenders: keep it square */
  border-radius: 50%;
}


/* Fancybox gallery controls */
.fancybox__container {
    z-index: 9999;
}
.fancybox__toolbar,
.fancybox__nav {
    opacity: 1 !important;
}
.fancybox__nav .fancybox__button,
.fancybox__toolbar .fancybox__button {
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    border-radius: 4px;
    padding: 8px;
    font-size: 20px;
}
.fancybox__button--close {
    position: absolute;
    top: 10px;
    right: 10px;
}

/* === Pedigree (3 generations) – aligned connectors + corner labels === */

.pedigree-section { margin: 40px 0 80px; }

.pedigree3{
  /* Adjust these two to taste */
  --col-gap: 84px;          /* space between columns */
  --row-gap: 28px;          /* vertical space between right boxes */

  --line: 1px;              /* connector thickness */
  --line-color: #000;

  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(4, minmax(56px, auto));
  column-gap: var(--col-gap);
  row-gap: var(--row-gap);
  align-items: center;
  position: relative;
}

.pedigree3 .node{
  position: relative;
  border: 1px solid #2b2b2b;
  border-radius: 10px;
  background: #fff;
  padding: 12px 16px;
  text-align: center;
  font-size: 15px;
  line-height: 1.25;
}

/* Tiny label in top-right corner of each box */
.pedigree3 .node .node-tag{
  position: absolute;
  top: -10px;
  right: 10px;
  background: #fff;
  padding: 1px 6px;
  font-size: 11px;
  color: #4b5563;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  pointer-events: none;
}

/* Left column (parents) span two rows each */
.pedigree3 .sire { grid-column: 1; grid-row: 1 / span 2; }
.pedigree3 .dam  { grid-column: 1; grid-row: 3 / span 2; }

/* Right column (grandparents) */
.pedigree3 .sire-sire { grid-column: 2; grid-row: 1; }
.pedigree3 .sire-dam  { grid-column: 2; grid-row: 2; }
.pedigree3 .dam-sire  { grid-column: 2; grid-row: 3; }
.pedigree3 .dam-dam   { grid-column: 2; grid-row: 4; }

/* ------------------ Connectors ------------------ */
/* We meet at the exact center of the inter-column gap to avoid misalignment */
.pedigree3 .sire::after,
.pedigree3 .dam::after{
  /* parent -> right (to gap center) */
  content: "";
  position: absolute;
  top: 50%;
  right: calc(-1 * var(--col-gap) / 2 - 1px);
  width: calc(var(--col-gap) / 2 - var(--line) + 1px);  /* stop 1px before the center line */
  height: var(--line);
  background: var(--line-color);
  transform: translateY(-50%);
}

/* grandparents -> left (to gap center) */
.pedigree3 .sire-sire::before,
.pedigree3 .sire-dam::before,
.pedigree3 .dam-sire::before,
.pedigree3 .dam-dam::before{
  content: "";
  position: absolute;
  top: 50%;
  left: calc(-1 * var(--col-gap) / 2 + var(--line)); /* start 1px after the center line */
  width: calc(var(--col-gap) / 2 - var(--line));
  height: var(--line);
  background: var(--line-color);
  transform: translateY(-50%);
}

/* Vertical joiners */
.pedigree3 .sire::before,
.pedigree3 .dam::before{
  content: "";
  position: absolute;
  right: calc(-1 * var(--col-gap) / 2 - (var(--line) / 2 + 2px));
  width: var(--line);
  background: var(--line-color);

  /* span from midpoint of top child to midpoint of bottom child */
  top: -50%;    /* start 1/4 down the parent's height (aligns with upper child) */
  height: 200%; /* span half the parent box height, reaching lower child */
}

/* Empty cells: keep connectors visible, just fade the box */
.pedigree3 .node.is-empty { opacity: .55; }
/* (Removed the display:none rule so ::before/::after stay visible) */

/* Tighten on small screens */
@media (max-width: 680px){
  .pedigree3{
    --col-gap: 56px;
    --row-gap: 20px;
    grid-template-rows: repeat(4, minmax(52px, auto));
  }
  .pedigree3 .node{ font-size: 14px; padding: 10px 12px; }
  .pedigree3 .node .node-tag{ right: 8px; font-size: 10px; }
}



/* SELLER CONTACT INFO STYLES */
.seller-contact-info {
    background-color: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 30px;
    max-width: 100%;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
    font-size: 15px;
    color: #333;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.seller-contact-info h3 {
    font-size: 18px;
    margin-top: 0;
    margin-bottom: 15px;
    color: #222;
    border-bottom: 1px solid #ccc;
    padding-bottom: 6px;
}

.seller-contact-info ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.seller-contact-info li {
    margin-bottom: 12px;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding-left: 0;
    margin-left: 0;
}

.seller-contact-info a {
    color: #000;
    text-decoration: none;
}

.seller-contact-info a:hover {
    color: #000; 
    text-decoration: none;
}

.seller-contact-info li .icon-envelope,
.seller-contact-info li .icon-phone,
.seller-contact-info li .icon-location {
    font-size: 18px;
    line-height: 1;
}

.seller-contact-info .seller-name {
    font-weight: bold;
    font-size: 17px;
    margin-bottom: 15px;
    color: #426571;
    display: block;
    padding-left: 0;
    margin-left: 0;
}

@media (max-width: 900px) {
  .page-horse-layout {
    flex-direction: column;
  }

  .page-horse-layout .horse-main-column,
  .page-horse-layout .horse-sidebar-column {
    flex: 1 1 100%;
    max-width: 100%;
  }
}


@media (max-width: 768px) {
  /* Layout: Stack columns */
  .page-horse-layout {
    flex-direction: column;
    padding: 20px 15px;
  }

  .page-horse-layout .horse-main-column,
  .page-horse-layout .horse-sidebar-column,
  .single-horse-wrapper,
  .horse-title-row,
  .horse-details-grid,
  .horse-characteristics-grid,
  .horse-description,
  .horse-seller-location,
  .horse-embed-video-gallery,
  .seller-contact-info {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  /* Title row */
  .horse-title-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .horse-title-row h2 {
    font-size: 22px;
  }

  .price-right span {
    font-size: 20px;
    padding: 6px 12px;
  }

  /* Image block */
  .horse-images-grid {
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }

  .main-photo {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .main-photo img {
    width: 100%;
    height: auto;
    object-fit: contain;
    max-width: none; /* override global img max-width */
  }


  .side-gallery {
		flex: 0 0 90px !important;
		width: 100% !important;
    max-width: 100% !important;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 10px;
    padding-top: 10px;
    height: auto !important;
    max-height: none !important;
    align-items: center;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .side-gallery::-webkit-scrollbar {
    display: none;
  }

  .side-gallery img {
    height: 90px;
    width: auto;
    max-width: none; /* prevent global rule from squishing it */
  }

  /* Grids become 1 column */
  .horse-details-grid,
  .horse-characteristics-grid,
  .horse-seller-location,
  .horse-embed-video-gallery {
    grid-template-columns: 1fr !important;
  }

  /* Description block */
  .horse-description {
    font-size: 14px;
    line-height: 1.5;
  }

/* Seller block (mobile adjustments) */

  .seller-contact-info {
    padding: 20px;
    font-size: 14px;
    margin-top: 0px;     /* decreased top margin */
    margin-bottom: 0px;  /* increased bottom margin */
  }

  .seller-contact-info h3 {
    font-size: 16px;
    margin-bottom: 12px;
  }

  .seller-contact-info li {
    font-size: 14px;
    gap: 6px;
  }

  .seller-contact-info li .icon-envelope,
  .seller-contact-info li .icon-phone,
  .seller-contact-info li .icon-location {
    font-size: 16px;
  }

  .seller-contact-info .seller-name {
    font-size: 16px;
    margin-bottom: 12px;
  }
}



/* === HORSE FILTER FORM === */

.horse-filter-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  padding: 0px;
  border-radius: 10px;
  margin-bottom: 30px;
}

.horse-filter-form select,
.horse-filter-form input[type="number"] {
  width: 100%;
  padding: 8px 10px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background-color: #fff;
  box-sizing: border-box;
}

.horse-filter-form select[multiple] {
  height: auto;
  min-height: 100px;
}

.horse-filter-form button[type="submit"] {
  grid-column: span 2;
  padding: 10px 20px;
  background-color: #426571;
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.horse-filter-form button[type="submit"]:hover {
  background-color: #35555f;
}

.horse-filter-form select[multiple] {
  height: auto; /* remove fixed height */
  min-height: unset;
  width: 100%;
}

.horse-filter-form select {
    width: 100%;
    min-width: 180px;
}

.select2-container--default .select2-selection--multiple {
    border-radius: 6px;
    border: 1px solid #ccc;
    padding: 4px;
    min-height: 40px;
}

/* Consolidated in the block below (single source of truth) */

.select2-container .select2-search--inline .select2-search__field {
  margin: 0px 6px 6px 0;   /* top right bottom left */
  padding: 4px 6px;
  font-size: 16px;
  min-height: 27px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #426571; /* light green/gray background */
  color: #fff; /* text color */
}

.select2-selection__choice {
  background-color: #426571 !important; /* light background */
  color: #fff !important;               /* visible text */
  border: 1px solid #a8d5ba;
  font-size: 14px;
  padding: 3px 8px !important;
  margin: 3px 4px 3px 0;
  border-radius: 5px;
}

.select2-selection__choice__remove {
  color: #666 !important;
	font-size: 0.8em !important;
  margin-left: 6px;
  font-weight: bold;
  cursor: pointer;
}

.select2-selection__choice__remove:hover {
  color: #e74c3c !important;
}

/* hide by default */
.select2-selection__choice__remove {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease;
}

/* show when hovering the choice container */
.select2-selection__choice:hover .select2-selection__choice__remove {
  opacity: 1;
  visibility: visible;
}

/* === ACF Frontend Form Styling === */

/* === ACF Frontend Form Styling === */

.acf-form {
  background: #f8f8f8;
  padding: 30px;
  border-radius: 10px;
  max-width: 800px;
  margin: 0 auto 40px auto;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  font-family: "Segoe UI", sans-serif;
}

.acf-form h3 {
  font-size: 24px;
  margin-bottom: 20px;
  color: #333;
}

/* field box + spacing */
.acf-field {
  margin-bottom: 0;            /* keep margin reset */
  padding-bottom: 25px;        /* vertical rhythm */
}

/* labels */
.acf-label label {
  font-weight: 600;
  font-size: 14px;
  display: block;
  margin-bottom: 0;
  color: #333;
}

/* top margin for the label row (final rule wins) */
.acf-field > .acf-label {
  margin: 15px 0 0 !important;
}

/* inputs */
.acf-input input[type="text"],
.acf-input input[type="number"],
.acf-input input[type="email"],
.acf-input select,
.acf-input textarea {
  width: 100%;
  padding: 10px 14px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
  transition: border-color 0.2s ease;
}

.acf-input input:focus,
.acf-input textarea:focus,
.acf-input select:focus {
  border-color: #426571;
  outline: none;
}

/* choices */
.acf-input .acf-checkbox-list,
.acf-input .acf-radio-list {
  padding-left: 0;
}

.acf-input .acf-checkbox-list li,
.acf-input .acf-radio-list li {
  list-style: none;
  margin-bottom: 8px;
}

.acf-input .acf-checkbox-list input,
.acf-input .acf-radio-list input {
  margin-right: 6px;
}

/* submit row */
.acf-form-submit {
  text-align: left;
  margin-top: 30px;
}

/* Match Frontend Admin Submit button with Forminator style */
.fea-submit-button {
  font-size: 16px !important;
  font-family: inherit !important;
  font-weight: 500 !important;
  background-color: #426571 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  margin-top: 55px !important;
}

.fea-submit-button:hover {
  background-color: #344f58 !important;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3) !important;
}

/* optional disabled state parity */
.fea-submit-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none !important;
}

/* keep utility ACF buttons visually smaller */
button.acf-button,
button.edit-password,
button.cancel-edit {
  background-color: #426571 !important;
  color: #fff !important;
  border: none !important;
  padding: 3px 20px !important;
  font-size: 12px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
  box-shadow: none !important;
  display: inline-block;
  margin: 5px 5px 5px 0;
}

button.acf-button:hover,
button.edit-password:hover,
button.cancel-edit:hover {
  background-color: #2f4c53 !important;
}

/* Form layout cleanup */
.acf-fields > .acf-field {
  padding: 0 !important;
  border-top: none !important;
}

/* Hide group labels for specific groups */
.acf-field-group[data-name="photos_group"] > .acf-label,
.acf-field-group[data-name="height_original"] > .acf-label,
.acf-field-group[data-name="horse_characteristics"] > .acf-label,
.acf-field-group[data-name="price_original"] > .acf-label {
  display: none;
}

/* Remove inner borders */
.acf-fields.-border {
  border: none !important;
}

/* Make ACF URL fields look like normal inputs */
.acf-input input[type="url"] {
  width: 100%;
  padding: 10px 14px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
  transition: border-color 0.2s ease;
  box-shadow: none;
}
.acf-input input[type="url"]:focus {
  border-color: #426571;
  outline: none;
}

/* Normalize URL field wrapper */
.acf-field-url .acf-url {
  display: flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: 0;
  padding: 0;
  box-shadow: none;
}
.acf-field-url .acf-url .acf-input-wrap { flex: 1 1 auto; }
.acf-field-url .acf-url .acf-input-wrap input[type="url"] {
  width: 100%;
  padding: 10px 14px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
  transition: border-color 0.2s ease;
}

/* Style the action buttons (Open / Clear) */
.acf-field-url .acf-url .acf-actions .button {
  background-color: #426571 !important;
  color: #fff !important;
  border: none !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
  box-shadow: none !important;
}
.acf-field-url .acf-url .acf-actions .button:hover {
  background-color: #2f4c53 !important;
}

/* Optional: tighten spacing under URL fields like other fields */
.acf-field-url {
  padding-bottom: 25px;
}

/* Slightly bolder labels globally */
.acf-field .acf-label label {
  font-size: 13px !important;
  font-family: inherit;
  font-weight: 700 !important;
}

/* =========================================================
   NEW: White outline buttons for media "Add image/file" etc.
   ========================================================= */

/* Target only the 'Add' buttons in uploader contexts */
/* Unified style for "Add image/file/gallery" buttons */
.acf-uploads .button {
  background: #fff !important;
  color: #426571 !important;
  border: 1px solid #426571 !important;
  padding: 2px 14px !important;   /* smaller paddings */
  font-size: 14px !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}

.acf-uploads .button:hover {
  background: #426571 !important;
  color: #fff !important;
  border-color: #426571 !important;
	text-decoration: none !important;
}


/* Removed empty submit override; submit uses .fea-submit-button */


/* =========================================================
   NEW: Nicer placeholders / tiles for images & files
   ========================================================= */

/* Image field placeholder */
.acf-field-image .acf-image-uploader .acf-placeholder,
.acf-field-image .acf-image-uploader:not(.has-value) .image-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 140px;
  background: #fafafa;
  border: 2px dashed #d9e2e6;
  border-radius: 10px;
  color: #9aa9af;
  font-size: 14px;
  text-align: center;
  padding: 16px;
}

/* File field placeholder box */
.acf-field-file .acf-file-uploader .file-wrap:not(.has-value),
.acf-field-file .acf-file-uploader .acf-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100px;
  background: #fafafa;
  border: 2px dashed #d9e2e6;
  border-radius: 10px;
  color: #9aa9af;
  font-size: 13px;
  padding: 12px;
  text-align: center;
}

/* Gallery drop target style */
.acf-field-gallery .acf-gallery .acf-drop-target,
.acf-field-gallery .acf-gallery .acf-drop-target .acf-placeholder {
  background: #fafafa;
  border: 2px dashed #d9e2e6;
  border-radius: 10px;
  color: #9aa9af;
}

/* Gallery attachment tile look */
.acf-field-gallery .acf-gallery-attachments .acf-gallery-attachment {
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}

/* Ensure thumbs fill tile nicely */
.acf-field-gallery .acf-gallery-attachment .thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Make the gallery grid breathe a bit */
.acf-field-gallery .acf-gallery-attachments {
  gap: 10px;
}

/* If gallery shows generic icon span, make it centered */
.acf-field-gallery .acf-gallery-attachment .thumbnail .centered,
.acf-field-gallery .acf-gallery-attachment .acf-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #9aa9af;
}

/* Hide dashed border once image/file is present */
.acf-field-image .acf-image-uploader.has-value .acf-placeholder,
.acf-field-file  .acf-file-uploader .has-value .acf-placeholder {
  display: none !important;
}

.acf-image-uploader .image-wrap img {
    width: 640px !important;
    height: 480px !important;
    object-fit: cover !important; /* keeps aspect ratio but crops if necessary */
    border-radius: 25px;

    display: block;
    background: #f1f1f1;
    margin: 0;
    padding: 0;
}

a.acf-icon.-pencil.dark {
    display: none !important;
}

.fea-uploads .fea-uploads-attachment {
    background: #eaeaea !important;
}

/* === USER REQUESTS STYLING === */
.user-horse-dashboard-wrap .user-request-block {
    display: flex;
    flex-direction: column;
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    padding: 25px;
    margin-bottom: 40px;
    min-height: 280px;
}

.user-horse-dashboard-wrap .user-request-block h3 {
    margin: 0 0 20px;
    font-size: 22px;
    color: #333;
}

.user-horse-dashboard-wrap .request-info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 40px;
    row-gap: 6px;
    margin-bottom: 15px;
}

.user-horse-dashboard-wrap .request-info-grid div {
    font-size: 15px;
    color: #555;
}

.user-horse-dashboard-wrap .user-request-block strong {
    font-weight: 600;
    color: #333;
}

/* === Matches & Updated Row === */
.horse-footer .matches-updated-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    font-size: 15px;
    color: #333;
    padding: 8px 20px;
    flex-wrap: nowrap;          /* prevent wrapping */
    justify-content: flex-start;/* align everything to the left */
    overflow-x: auto;           /* prevent overflow breaking the layout */
}

.matches-item,
.updated-item {
    white-space: nowrap; /* prevents text wrapping */
}

.horse-footer .matches-item a {
    text-decoration: underline;
    margin-left: 5px;
}

.horse-footer .updated-item {
    font-size: 14px;
    color: #666;
}

.matches-updated-row {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 15px;
    color: #333;
    padding: 10px 20px;
}

.matches-item,
.updated-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.matches-item a {
    text-decoration: underline;
}

.my-request-block .horse-footer {
    display: flex;
    justify-content: flex-start; /* aligns to the left */
    align-items: center;
    padding-right: 0;
    margin-top: 0;
}

/* Matches label */
.my-request-block .matches-item strong {
    font-weight: 600;
    color: #426571;
    font-size: 17px;
    text-transform: none; /* or 'uppercase' */
}

/* Matches number/link */
.my-request-block .matches-item a {
    font-weight: 600;
    color: #426571;
    font-size: 17px;
}

/* Updated label */
.my-request-block .updated-item strong {
    font-weight: 500;
    color: #888;
    font-size: 11px;
    text-transform: none;
}

/* Updated date */
.my-request-block .updated-item {
    color: #555;
    font-size: 11px;
    font-style: italic;
}

/* === Bottom Row === */
.user-horse-dashboard-wrap .request-bottom-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    background: #f9f9f9;
    padding: 10px 20px;
    border-top: 1px solid #ddd;
    border-radius: 0 0 10px 10px;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 0;
}

/* Bottom row left section */
.user-horse-dashboard-wrap .request-bottom-row .request-toggles {
    display: flex;
    flex-direction: row;
    gap: 20px;
    flex-wrap: wrap;
    font-size: 14px;
}

/* Status labels */
.user-horse-dashboard-wrap .status-label-enabled {
    color: #2b9e44;
    font-weight: 600;
}

.user-horse-dashboard-wrap .status-label-disabled {
    color: #c00;
    font-weight: 600;
}

/* Toggle buttons */
.user-horse-dashboard-wrap .status-action {
    font-size: 12px;
    text-decoration: none;
    padding: 4px 8px;
    border: 1px solid #0073aa;
    border-radius: 3px;
    background-color: #f2f9ff;
    display: inline-block;
    font-weight: 500;
    transition: background-color 0.2s, color 0.2s;
    margin-left: 5px;
}

/* Enable button - Green */
.user-horse-dashboard-wrap .status-action.status-enable {
    background-color: #e6f4ea;
    border-color: #28a745;
    color: #28a745;
}

.user-horse-dashboard-wrap .status-action.status-enable:hover {
    background-color: #28a745;
    color: #fff;
}

/* Disable button - Red */
.user-horse-dashboard-wrap .status-action.status-disable {
    background-color: #fdecea;
    border-color: #dc3545;
    color: #dc3545;
}

.user-horse-dashboard-wrap .status-action.status-disable:hover {
    background-color: #dc3545;
    color: #fff;
}

/* Buttons row inside requests only */
.user-horse-dashboard-wrap .request-bottom-row .horse-controls-row {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    padding: 0;
    border: none;
    background: transparent;
}

.user-horse-dashboard-wrap .request-bottom-row .horse-controls-row a.preview-button,
.user-horse-dashboard-wrap .request-bottom-row .horse-controls-row a.delete-button {
    font-size: 16px;
    padding: 6px 10px;
    border-radius: 3px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    line-height: 1;
}

.user-horse-dashboard-wrap .request-bottom-row .horse-controls-row a.preview-button::before {
    content: "\270E"; /* pencil icon */
}

.user-horse-dashboard-wrap .request-bottom-row .horse-controls-row a.delete-button::before {
    content: "\2716"; /* cross icon */
}

/* Notification method */
.horse-dashboard-block li.notify-method {
	  font-size: 12px;
    font-weight: 500;
	margin-top: 15px;
	margin-left: 8px;
}

/* Contact email */
.horse-dashboard-block li.contact-email {
		  font-size: 12px;
    font-weight: 500;
		margin-top: 15px;
	margin-left: 8px;
}

/* Contact phone */
.horse-dashboard-block li.contact-phone {
		  font-size: 12px;
    font-weight: 500;
		margin-top: 15px;
	margin-left: 8px;
}

/* === Height fix only (no layout changes) === */
.user-horse-dashboard-wrap .user-request-block,
.user-horse-dashboard-wrap .horse-dashboard-block,
.user-horse-dashboard-wrap .horse-card,
.user-horse-dashboard-wrap .horse-info {
  min-height: unset !important;
  height: auto !important;
}



/* Responsive tweaks */
@media (max-width: 768px) {
  .horse-dashboard-block li.notify-method {
    font-size: 12px !important;   
    margin-top: 15px !important;  /* adjust spacing */
    margin-left: 0 !important;    /* remove left margin */
  }
	

  .horse-dashboard-block li.contact-email,
  .horse-dashboard-block li.contact-phone {
    font-size: 12px !important;   
    margin-top: 0px !important;  /* adjust spacing */
    margin-left: 0 !important;    /* remove left margin */
  }
	
}

@media (max-width: 768px) {
    .user-horse-dashboard-wrap .user-request-block {
        padding: 20px;
    }

	
    .user-horse-dashboard-wrap .request-info-grid {
        grid-template-columns: 1fr;
    }

    .user-horse-dashboard-wrap .request-bottom-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        padding: 12px 15px;
    }

.user-horse-dashboard-wrap.horse-archive-grid {
    gap: 30px;
}

.user-horse-dashboard-wrap .horse-dashboard-block {
    display: flex;
    flex-direction: column;
    gap: 0;
}

	
    .user-horse-dashboard-wrap .request-bottom-row .horse-controls-row {
        justify-content: flex-start;
    }

    .user-horse-dashboard-wrap .request-bottom-row .request-toggles {
        flex-direction: column;
        gap: 10px;
    }
}

/* Upgrade message styles */
.seller-upgrade-text {
    font-size: 17px;
	  font-weight: 400;
    color: #444;
    margin-top: 10px;
	  line-height: 1.4em;
	  text-align: center;
}

.seller-upgrade-text .seller-upgrade-link {
    color: #426571;
    text-decoration: underline;
    font-weight: 600;
    transition: color 0.2s ease;
}

.seller-upgrade-text .seller-upgrade-link:hover {
    color: #005f8d;
}

@media (max-width: 600px) {
  .matches-updated-row {
    display: block;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;
  }

  .matches-updated-row .matches-item {
    display: block;
    background: #ddfbce;           /* highlight */
    border: 1px solid #ffeeba;
    padding: 6px 10px;
    border-radius: 4px;
    margin-bottom: 6px;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;
  }

  .matches-updated-row .updated-item {
    display: block;
    font-size: 0.9em;
		line-height: 0.9em;
    color: #555;
    max-width: 100%;
    overflow-wrap: break-word;
    white-space: normal;
  }

  /* Ensure the number link doesn't force a new line, but still wraps if needed */
  .matches-updated-row .matches-item a {
    display: inline;
    white-space: normal;
  }
}




/* === Login Form Styling === */
.login-box {
  max-width: 400px;
  margin: 30px auto;
  padding: 30px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

/* Inner form (remove card-in-card look) */
.login-box form#loginform {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

/* Input fields */
.login-box form#loginform input[type="text"],
.login-box form#loginform input[type="password"],
.login-box form#loginform input[type="email"] {
  width: 100%;
  padding: 10px 12px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 6px;
  margin-bottom: 16px;
  box-sizing: border-box;
}

/* Login button */
.login-box form#loginform input[type="submit"] {
  width: 100%;
  background-color: #426571;
  color: #fff;
  padding: 12px;
  font-size: 14px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.login-box form#loginform input[type="submit"]:hover {
  background-color: #35535d;
}

/* Reset password link (between login & socials) */
.login-box .login-reset-link {
  text-align: center;
  margin: 12px 0 10px;
  font-size: 13px;
}
.login-box .login-reset-link a {
  color: #426571;
  text-decoration: none;
}
.login-box .login-reset-link a:hover {
  text-decoration: underline;
}

/* Social buttons wrapper */
.login-box .custom-social-login {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: stretch;
  margin: 8px 0 0;
}

/* Force Nextend containers full width */
.login-box .custom-social-login .nsl-container,
.login-box .custom-social-login .nsl-container .nsl-container-buttons {
  width: 100% !important;
}

/* Common style for all social buttons */
.login-box .custom-social-login .nsl-button {
  width: 100% !important;
  padding: 6px !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  border: none !important;
  font-weight: bold !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}

/* Google button */
.login-box .custom-social-login .nsl-button-google {
  background: #fff !important;
  color: #444 !important;
  border: 1px solid #ddd !important;
}

/* Facebook button */
.login-box .custom-social-login .nsl-button-facebook {
  background: #4267B2 !important;
  color: #fff !important;
  border: 1px solid #4267B2 !important;
}

#nsl-custom-login-form-1 .nsl-container-embedded-login-layout-below {
    clear: both;
    padding: 0px 0 0 !important;
}

/* === Force Nextend buttons to match the "Login" button === */

/* Make the container + buttons expand full width */
.login-box #nsl-custom-login-form-1 .nsl-container,
.login-box #nsl-custom-login-form-1 .nsl-container .nsl-container-buttons {
  width: 100% !important;
  display: block !important;
}

/* Make the anchor fill the row */
.login-box #nsl-custom-login-form-1 .nsl-container .nsl-container-buttons a {
  display: flex !important;
  width: 100% !important;
  text-decoration: none !important;
}

/* Core button sizing to match your submit button */
.login-box #nsl-custom-login-form-1 .nsl-button {
  padding: 5px !important;        /* height */
  font-size: 14px !important;      /* text size */
  border-radius: 6px !important;   /* radius */
  border: none !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}

/* Kill plugin label spacing that breaks centering/height */
.login-box #nsl-custom-login-form-1 .nsl-button-label-container {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  white-space: normal !important;
}

/* Keep icons aligned */
.login-box #nsl-custom-login-form-1 .nsl-button-svg-container {
  display: inline-flex !important;
  align-items: center !important;
}

/* Provider colors (override inline/light skin) */
.login-box #nsl-custom-login-form-1 .nsl-button-google {
  background: #fff !important;
  color: #444 !important;
  border: 1px solid #ddd !important;
}
.login-box #nsl-custom-login-form-1 .nsl-button-facebook {
  background: #4267B2 !important;
  color: #fff !important;
  border: 1px solid #4267B2 !important;
}

/* Tighter space between Login and Google */
.login-box .login-reset-link { margin: 12px 0 8px; }

/* Make the grid items stretch full width */
.login-box #nsl-custom-login-form-1 .nsl-container .nsl-container-buttons {
  justify-items: stretch !important;   /* stretch grid children */
}

/* Anchor should stretch, not shrink */
.login-box #nsl-custom-login-form-1 .nsl-container .nsl-container-buttons a {
  display: block !important;           /* <- was flex; block makes it fill the grid cell */
  width: 100% !important;
  max-width: 100% !important;
  text-decoration: none !important;
  justify-self: stretch !important;    /* belt & suspenders */
}

/* Do flex on the button itself */
.login-box #nsl-custom-login-form-1 .nsl-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 6px !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  border: none !important;
  box-sizing: border-box !important;
}

/* Make any Nextend block inside .login-box stretch full width */
.login-box [id^="nsl-custom-"] .nsl-container,
.login-box [id^="nsl-custom-"] .nsl-container .nsl-container-buttons { width: 100% !important; }

.login-box [id^="nsl-custom-"] .nsl-container .nsl-container-buttons a { 
  display: block !important; 
  width: 100% !important; 
  max-width: 100% !important; 
}

.login-box [id^="nsl-custom-"] .nsl-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 6px !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  border: none !important;
  box-sizing: border-box !important;
}



/* Works for both login and registration forms */
.login-box .custom-social-login .nsl-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 6px !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  border: none !important;
  font-weight: bold !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}
.login-box .custom-social-login .nsl-button-google {
  background: #fff !important;
  color: #444 !important;
  border: 1px solid #ddd !important;
}
.login-box .custom-social-login .nsl-button-facebook {
  background: #4267B2 !important;
  color: #fff !important;
  border: 1px solid #4267B2 !important;
}

/* Reset any list/icon side-effects and style rows nicely */
/* Removed empty placeholder rule for .seller-contact-info */

.seller-contact-info .seller-name {
  font-weight: 700;
  margin: 6px 0 10px;
}

.seller-contact-info .seller-line {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.4;
  margin: 6px 0;
}

/* Ensure no theme icon font pseudo-elements sneak in */
.seller-contact-info [class^="icon-"]::before,
.seller-contact-info [class*=" icon-"]::before,
.seller-contact-info .seller-line::before,
.seller-contact-info .seller-line::marker {
  content: none !important;
}

/* Emoji icon sizing */
.seller-contact-info .sc-icon {
  display: inline-block;
  width: 1.1em;
  text-align: center;
}

/* ===== HORSES.SALE – Filter UI ===== */
.hs-filter{
  display:inline-flex !important; gap:10px !important; align-items:center !important;
  flex-wrap:wrap; margin:0 !important; padding:0 !important; vertical-align:middle; max-width:100%;
}
.hs-filter .hs-filter__label{font-weight:600 !important; white-space:nowrap !important; margin-right:6px !important;}
.hs-filter .hs-filter__select{
  -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important;
  height:40px !important; line-height:40px !important; padding:0 12px !important;
  background:#fff !important; border:1px solid #d0d7de !important; border-radius:8px !important;
  box-shadow:none !important; outline:none !important; text-decoration:none !important; border-bottom:none !important;
}
.hs-filter .hs-filter__select:focus{border-color:#7aa7ff !important; box-shadow:0 0 0 3px rgba(122,167,255,.25) !important;}
.hs-filter .hs-filter__btn{
  height:40px !important; padding:0 14px !important; background:#0a66c2 !important; color:#fff !important;
  border:1px solid #0a66c2 !important; border-radius:8px !important; font-weight:600 !important; line-height:1 !important;
  box-shadow:none !important; outline:none !important; cursor:pointer !important; transition:transform .02s ease, filter .15s ease !important;
}
.hs-filter .hs-filter__btn:hover{filter:brightness(1.05) !important;}
.hs-filter .hs-filter__btn:active{transform:translateY(1px) !important;}
@media (max-width:600px){ .hs-filter{gap:8px !important;} .hs-filter .hs-filter__select{min-width:140px !important;} }

/* === Footer nav widget: force horizontal === */
/* Footer nav widget — spacing + centering */
.footer .widget_nav_menu .menu-footer-menu-container > ul#menu-footer-menu.menu{
  display: flex !important;
  flex-wrap: wrap;                 /* wrap on small screens */
  justify-content: center;         /* center the whole list */
  align-items: center;
  gap: 18px 22px;                  /* row/column gaps */
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}

/* Fallback spacing for themes/browsers that ignore flex gap */
.footer .widget_nav_menu .menu > li + li{
  margin-left: 22px !important;
}

.footer .widget_nav_menu .menu > li{
  display: inline-flex !important;
  width: auto !important;
  float: none !important;
  margin: 0;
  padding: 0;
}

.footer .widget_nav_menu .menu > li > a{
  display: inline-block;
  text-decoration: none;
  line-height: 1.4;
}



/* Ensure footer widgets are in a single row */
.footer .footer-widgets {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;        /* prevent line breaks */
  justify-content: space-between; /* spread widgets in one line */
  align-items: center;
}

/* Allow each widget (including nav_menu) to shrink/grow */
.footer .footer-widgets .widget {
  flex: 1 1 auto;    /* let them share space */
  min-width: auto;
}

/* Special tweak for nav_menu widget */
.footer .widget_nav_menu {
  flex: 2 1 auto;    /* give menu more space than others */
  text-align: center; /* center links inside */
}

/* 1. Hide the 3rd widget completely */
.footer .footer-widgets #block-9 {
  display: none !important;
}

/* 2. Make the language selector narrower */
.footer .footer-widgets #icl_lang_sel_widget-2 {
  flex: 0 0 150px !important;  /* fixed width of ~150px */
  max-width: 150px !important;
}

/* 3. Remove top margin from footer widgets */
.footer .footer-widgets {
  margin-top: 0 !important;
}

/* Align footer menu widget to the right */
.footer .footer-widgets {
  justify-content: flex-start;  /* start row layout */
}

.footer .footer-widgets #nav_menu-2 {
  margin-left: auto !important;  /* pushes menu to the far right */
  text-align: right;             /* align its inner content right */
}

    .footer-widgets {
        padding: 0px 25px 30px !important;
    }

/* ========= Mobile footer layout ========= */
@media (max-width: 768px) {
	
	.footer-widgets>.widget {
    margin: 20px 20px 0;
}

  /* Stack widgets vertically and remove the right-push */
  .footer .footer-widgets{
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 12px;                 /* space between widgets */
  }

  /* Order: menu first, language second */
  .footer .footer-widgets #nav_menu-2 { 
    order: 1;
    margin-left: 0 !important; /* cancel desktop “push right” */
    text-align: left;
  }
  .footer .footer-widgets #icl_lang_sel_widget-2 { 
    order: 2;
    flex: 0 0 auto !important;
    max-width: 100% !important; /* full width on mobile */
  }

  /* Make the menu vertical */
  .footer .widget_nav_menu .menu-footer-menu-container > ul#menu-footer-menu.menu{
    display: block !important;   /* override desktop flex */
    margin-left: 25px !important;
    padding: 0 !important;
  }
  .footer .widget_nav_menu .menu > li{
    display: block !important;
    width: 100% !important;
    float: none !important;
  }
  .footer .widget_nav_menu .menu > li + li{
    margin-left: 0 !important;   /* cancel horizontal spacing */
  }
  .footer .widget_nav_menu .menu > li::after{
    content: none !important;    /* ensure no separators */
  }
}

/* === WPML footer switcher (button) === */
.footer #icl_lang_sel_widget-2 
.wpml-ls-sidebars-sidebar-footer-style1.wpml-ls.wpml-ls-legacy-dropdown 
a.wpml-ls-item-toggle {
  background-color: #4e7887 !important;   /* BG */
  color: #ffffff !important;              /* Text */
  border: 1px solid #294751 !important;   /* Border */
  border-radius: 7px !important;          /* Radius */
  padding: 6px 10px !important;
  line-height: 1.3 !important;
	font-size: 14px !important;
  box-shadow: none !important;
}

/* Hover/focus */
.footer #icl_lang_sel_widget-2 
.wpml-ls-sidebars-sidebar-footer-style1.wpml-ls.wpml-ls-legacy-dropdown 
a.wpml-ls-item-toggle:hover,
.footer #icl_lang_sel_widget-2 
.wpml-ls-sidebars-sidebar-footer-style1.wpml-ls.wpml-ls-legacy-dropdown 
a.wpml-ls-item-toggle:focus {
  background-color: #4e7887 !important;
  color: #ffffff !important;
  border-color: #94a3b8 !important;
}

/* === Dropdown panel & items === */
/* PANEL */
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu{
  background-color:#e8f4ec !important;
  border:1px solid #cbd5e1 !important;
  border-radius:0 !important;
  overflow:hidden;
}

/* ITEMS (anchors control text & background) */
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li{background:transparent !important;}

.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a,
.footer .footer-widgets #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a,
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a.wpml-ls-link{
  display:block !important;
  padding:8px 10px !important;
  background-color:#e8f4ec !important;
  color:#4e7887 !important;
  text-decoration:none !important;
  border:0 !important;
  box-shadow:none !important;
		font-size: 13px !important;
}

/* Ensure inner spans inherit the color */
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a span{color:inherit !important;}

/* HOVER */
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a:hover,
.footer #icl_lang_sel_widget-2 .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li a:focus{
  background-color:#b6dcd3 !important;
  color:#355e6b !important;
}

/* Language switcher wrapper */
.wpml-ls-legacy-dropdown,
.wpml-ls-legacy-dropdown a,
.wpml-ls-legacy-dropdown ul {
    position: relative;
    z-index: 9999; /* Higher than other elements */
}

/* Dropdown menu */
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
    position: absolute;
    z-index: 9999 !important;
}

    .footer-section.footer-section-bottom {
        padding-left: 220px;
        padding-right: 220px;
    }

@media (max-width: 768px) {
    .footer-section.footer-section-bottom {
        padding-left: 40px;
        padding-right: 40px;
    }
}
	
.footer-section {
    position: static;
}


/* Seller language switcher: segmented bar */
.seller-lang-switcher {
  display: inline-flex;                 /* sit neatly inline if needed */
  align-items: center;
  gap: 4px;                             /* tiny gaps – looks like segments */
  padding: 4px;
  margin: 0;
	margin-bottom: 15px;
  list-style: none;
  background: #F0F0F0;                  /* slate-100/200 vibe */
  border: 1px solid #e2e8f0;            /* light border */
  border-radius: 15px;                /* full pill */
	 max-width: 400px;
}

.seller-lang-switcher.full-width {
  max-width: none;
  width: 100%;
}

/* Each item */
.seller-lang-switcher li {
  margin: 0;
  padding: 0;
}

/* The buttons */
.seller-lang-switcher a {
  display: block;
  padding: 8px 14px;
  border-radius: 15px;
  text-decoration: none;
  font-weight: 600;
  line-height: 1;
  color: #334155;                       /* slate-700 */
  border: 1px solid transparent;
  transition: background .15s ease, color .15s ease, border-color .15s ease, transform .05s ease;
}

/* Hover / focus */
.seller-lang-switcher a:hover,
.seller-lang-switcher a:focus-visible {
  background: #e2e8f0;                  /* slate-200 */
  border-color: #cbd5e1;                /* slate-300 */
  outline: none;
}

/* Active/current language */
.seller-lang-switcher li.current a {
  background: #426571;                  /* sky-500 */
  color: #fff;
  border-color: #426571;
}

/* Optional: subtle press effect */
.seller-lang-switcher a:active {
  transform: translateY(1px);
}

/* Responsive tightening (optional) */
@media (max-width: 480px) {
  .seller-lang-switcher a {
    padding: 7px 10px;
    font-weight: 600;
  }
}

/* Style the Manage Videos link like a WP button (scoped) */
.hs-manage-videos-cta .button {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid #2271b1;
	 border-color: #426571;
  background: #fff;      
  color: #426571 !important;
  text-decoration: none !important;
  line-height: 1.5;
  font-weight: 500;
}
.hs-manage-videos-cta .button:hover {
  background: #426571;
  border-color: #426571;
	color: #fff !important;
}
.hs-manage-videos-cta .button-secondary {
  background: #f6f7f7;
  color: #1d2327 !important;
  border-color: #c3c4c7;
}
.hs-manage-videos-cta .button-secondary:hover {
  background: #f0f0f1;
  border-color: #8c8f94;
}

/************************************
 * HORSE VIDEOS ADMIN — LAYOUT
 ************************************/
.hs-hv-wrap { margin: 20px 0; }
.hs-hv-wrap .hs-hv-section-title { margin: 20px 0 10px; font-size: 22px; line-height: 1.25; }
.hs-hv-wrap .hs-hv-horse-title { margin: 16px 0 8px; font-size: 18px; line-height: 1.25; }
.hs-hv-wrap .hs-hv-empty { opacity: 0.7; margin: 6px 0 16px; }

/* Responsive grid */
.hs-hv-wrap .hs-hv-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}

/************************************
 * CARD
 ************************************/
.hs-hv-wrap .hs-hv-card {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.04);
  display: flex;
  flex-direction: column;
}

/* Clickable thumbnail */
.hs-hv-wrap .hs-hv-thumb {
  position: relative;
  display: block;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  width: 100%;
  background: #fff !important;
  border: none !important;
  box-shadow: none !important;
}

.body-container .hs-hv-wrap button {
  --button-border-width: 0 !important;
  --button-border-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none;
}

/* Thumb image */
.hs-hv-wrap .hs-hv-thumb img {
  display: block;
  width: 100%;
  height: 180px;
  object-fit: cover;
  background: #000;
}

/* Remove play icon if any */
.hs-hv-wrap .hs-hv-play { display: none !important; }

/* Meta (links only) */
.hs-hv-wrap .hs-hv-meta {
  padding: 10px 25px 6px;
  gap: 8px;
  display: flex;
  flex-direction: column;
}

/* Link row: "video link" + Copy */
.hs-hv-wrap .hs-hv-linkrow {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.hs-hv-wrap .hs-hv-link {
  font-size: 13px;
  text-decoration: underline;
  word-break: break-all;
}
.hs-hv-wrap .hs-hv-copy {
  font-size: 12px;
  line-height: 1;
  padding: 6px 10px;
  border-radius: 6px;
  background: #e5e7eb;
  cursor: pointer;
}
.hs-hv-wrap .hs-hv-copy:hover { background: #d1d5db; }

/* Copy button — enforce look across themes/builders */
.hs-hv-wrap .hs-hv-meta .hs-hv-linkrow .hs-hv-copy,
.body-container .hs-hv-wrap .hs-hv-meta .hs-hv-linkrow .hs-hv-copy {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: #e5e7eb !important;
  color: #111 !important;
  border: 0 !important;
  border-radius: 6px !important;
  padding: 3px 10px !important;
  cursor: pointer !important;
  font: inherit !important;
  line-height: 1 !important;
  box-shadow: none !important;
  text-decoration: none !important;
	font-size: 13px !important;
}
.hs-hv-wrap .hs-hv-meta .hs-hv-linkrow .hs-hv-copy:hover {
  background: #d1d5db !important;
}


/* Hide source label entirely just in case */
.hs-hv-wrap .hs-hv-source { display: none !important; }

/************************************
 * ACTIONS (Settings + Delete)
 ************************************/
.hs-hv-wrap .hs-hv-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 8px 25px 12px;
}

/* Settings (link as button) */
.hs-hv-wrap .hs-hv-actions .hs-hv-settings {
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  color: #426571 !important;
  border-style: solid;
	border-width: 1px; 
	border-color: #426571;
  border-radius: 8px;
  padding: 8px 12px;
  cursor: pointer;
  font: inherit;
  line-height: 1.2;
  text-decoration: none;
	font-size: 13px !important;
}
.hs-hv-wrap .hs-hv-actions .hs-hv-settings:hover { background: #426571; color: #fff !important; }

/* Delete — higher specificity + !important to beat theme styles */
.hs-hv-wrap .hs-hv-card .hs-hv-actions .hs-hv-delete {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: #fff !important;
  color: #ef4444 !important;
  border-radius: 8px !important;
	border-style: solid !important;
	border-width: 1px !important; 
	border-color: #ef4444 !important;
  padding: 8px 12px !important;
	margin-left: 10px !important;
  cursor: pointer !important;
  font: inherit !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  box-shadow: none !important;
	font-size: 13px !important;
}
.hs-hv-wrap .hs-hv-card .hs-hv-actions .hs-hv-delete:hover {
  background: #ef4444  !important; color: #fff !important;
}

/************************************
 * LIGHTBOX (unchanged)
 ************************************/
.hs-hv-lightbox { position: fixed; inset: 0; z-index: 9999; display: grid; grid-template-rows: 1fr; }
.hs-hv-lightbox[hidden] { display: none; }
.hs-hv-lightbox .hs-hv-lb-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.8); }
.hs-hv-lightbox .hs-hv-lb-dialog { position: relative; margin: auto; max-width: min(96vw, 1100px); width: 96vw; }
.hs-hv-lightbox .hs-hv-lb-body { position: relative; background: #000; border-radius: 10px; box-shadow: 0 12px 40px rgba(0,0,0,0.6); padding: 0; overflow: hidden; }
.hs-hv-lightbox .hs-hv-lb-body video { display: block; width: 100%; height: auto; max-height: 78vh; background: #000; }
.hs-hv-lightbox .hs-hv-lb-close { position: absolute; top: -36px; right: 0; background: #fff; color: #111; border: 0; border-radius: 6px; padding: 6px 10px; cursor: pointer; }


/* ======= HS Video Single ======= */
.hs-vs1-wrap{max-width:1100px;margin:14px auto;padding:0 8px}
.hs-vs1-meta{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:10px;font-size:14px;color:#333}
.hs-vs1-meta strong{font-weight:600;margin-right:6px}
.hs-vs1-player video{width:100%;max-height:80vh;background:#000;border-radius:10px;display:block}
.hs-vs1-error{padding:10px 12px;border:1px solid #fee2e2;background:#fef2f2;color:#991b1b;border-radius:8px}

.hs-vs1-link {
line-height: 1.4em;	
	margin-bottom: 20px;
}

/* ======= HS Video Preview (same look) ======= */
.hs-vp-wrap{max-width:1100px;margin:14px auto;padding:0 8px}
.hs-vp-meta{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:10px;font-size:14px;color:#333}
.hs-vp-meta strong{font-weight:600;margin-right:6px}
.hs-vp-player video{width:100%;max-height:80vh;background:#000;border-radius:10px;display:block}
.hs-vp-error{padding:10px 12px;border:1px solid #fee2e2;background:#fef2f2;color:#991b1b;border-radius:8px}

/* ======= Access controls + secondary link (from earlier) ======= */
.hs-vac-wrap{max-width:800px;margin:14px 0;padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fafafa}
.hs-vac-block{display:flex;align-items:center;gap:10px;margin:10px 0}
.hs-vac-block strong{min-width:230px;font-weight:600;color:#222}
.hs-vac-ttl{height:36px;border:1px solid #d1d5db;border-radius:8px;padding:0 10px}
.hs-vac-status{font-size:13px;color:#555}
.hs-vsl-wrap{margin:12px 0}
.hs-vsl-wrap a{display:inline-block;word-break:break-all;color:#2563eb;text-decoration:underline}

/* =========================
   STATUS ROW + LABELS
   ========================= */


.user-horse-dashboard-wrap .status-label.status-unpublished { color: #c00 !important; }
.user-horse-dashboard-wrap .status-label.status-published   { color: #2b9e44 !important; }
.user-horse-dashboard-wrap .status-label.status-under-review{ color: #0073aa !important; }
.user-horse-dashboard-wrap .status-label.status-rejected    { color: #cc7a00 !important; }
.user-horse-dashboard-wrap .status-label.status-sold        { color: #0073aa !important; }

/* =========================
   BUTTONS (dedicated classes)
   ========================= */
.user-horse-dashboard-wrap .hsva-btn {
  -webkit-appearance: none !important;
  appearance: none !important;
  font-size: 12px !important;
  text-decoration: none !important;
  padding: 6px 10px !important;
  border-radius: 3px !important;
  display: inline-block !important;
  line-height: 1.2em !important;
  font-weight: 500 !important;
  transition: background-color 0.2s, color 0.2s, opacity 0.2s !important;
  cursor: pointer !important;
  border: 1px solid transparent !important; /* prevent theme borders */
}

/* Primary (Enable / Apply / Link) */
.user-horse-dashboard-wrap .hsva-btn--enable,
.user-horse-dashboard-wrap .hsva-btn--apply,
.user-horse-dashboard-wrap .hsva-btn--link {
  color: #00aa06 !important;
  border-color: #00aa06 !important;
  background-color: #f2f9ff !important;
}
.user-horse-dashboard-wrap .hsva-btn--enable:hover,
.user-horse-dashboard-wrap .hsva-btn--apply:hover,
.user-horse-dashboard-wrap .hsva-btn--link:hover {
  background-color: #00aa06 !important;
  color: #fff !important;
}

/* Danger (Disable) */
.user-horse-dashboard-wrap .hsva-btn--disable {
  color: #c00 !important;
  border-color: #c00 !important;
  background-color: #ffecec !important;
}
.user-horse-dashboard-wrap .hsva-btn--disable:hover {
  background-color: #c00 !important;
  color: #fff !important;
}

/* Link-styled button specifics */
.user-horse-dashboard-wrap .hsva-btn--link {
  word-break: break-all !important;
}

/* Disabled button state */
.user-horse-dashboard-wrap .hsva-btn:disabled {
  opacity: 0.6 !important;
  cursor: not-allowed !important;
}

/* =========================
   TTL (same row, smaller input, dim when inactive)
   ========================= */
.user-horse-dashboard-wrap .hsva-ttl {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: 12px !important; /* keep it separated from the toggle group */
}

.user-horse-dashboard-wrap .hsva-ttl-label {
  font-size: 12px !important;
  color: #666 !important;
}

.user-horse-dashboard-wrap .hsva-ttl-input {
  width: 50px !important;        /* narrower */
  padding: 2px 4px !important;   /* smaller padding = less height */
  font-size: 12px !important;
  line-height: 1.2em !important;
  height: 29px !important;       /* force smaller height */
  border: 1px solid #ccd0d4 !important;
  border-radius: 3px !important;
}

/* Dim the whole TTL block when not active */
.user-horse-dashboard-wrap .hsva-ttl.is-disabled .hsva-ttl-label,
.user-horse-dashboard-wrap .hsva-ttl.is-disabled .hsva-ttl-input,
.user-horse-dashboard-wrap .hsva-ttl.is-disabled .hsva-btn {
  opacity: 0.6 !important;
}

/* =========================
   TOOLTIP (CSS-only) for Secure Video Link
   ========================= */
.user-horse-dashboard-wrap .hsva-tooltip {
  position: relative !important;
  display: inline-block !important;
}
.user-horse-dashboard-wrap .hsva-tooltip[data-tip]:hover::after {
  content: attr(data-tip) !important;
  position: absolute !important;
  z-index: 2 !important;
  top: 100% !important;
  left: 0 !important;
  margin-top: 6px !important;
  white-space: nowrap !important;
  background: #222 !important;
  color: #fff !important;
  padding: 6px 8px !important;
  border-radius: 3px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.2) !important;
}

/* Inline explanatory notes */
.user-horse-dashboard-wrap .hsva-note {
  font-size: 13px !important;
  color: #666 !important;
  font-style: italic !important;
  margin-left: 6px !important;
}

.user-horse-dashboard-wrap .hsva-note2 {
  font-size: 13px !important;
  color: #666 !important;
  font-style: italic !important;
  margin-left: 6px !important;
}

/* Smartphones: stack notes below controls */
@media (max-width: 600px) {
  .user-horse-dashboard-wrap .hsva-note {
    display: block !important;
    margin: 4px 0 0 0 !important;  /* top margin only */
    font-size: 12px !important;    /* slightly larger for readability */
    line-height: 1.2 !important;
		margin-bottom: 30px !important;
		margin-top: 0px !important;
  }
	
	  .user-horse-dashboard-wrap .hsva-note2 {
    display: block !important;
    margin: 4px 0 0 0 !important;  /* top margin only */
    font-size: 12px !important;    /* slightly larger for readability */
    line-height: 1.2 !important;
		margin-bottom: 0px !important;
		margin-top: 0px !important;
  }
}

/* Download Frame button */
.hs-dlframe-btn {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  background: #fff;
  color: #426571 !important;
  border: 1px solid #426571;
  border-radius: 8px;
  padding: 8px 14px;
  font: inherit;
  line-height: 1.2;
  text-decoration: none;
	font-size: 18px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.hs-dlframe-btn:hover {
  background: #426571;
  color: #fff !important;
}

.hs-dlframe-btn:active {
  transform: translateY(1px);
}

/* Wrapper and hint */
.hs-dlframe-wrap {
  margin-top: 12px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.hs-dlframe-hint {
  font-size: 12px;
  color: #7a8a92;
}

.hs-dlframe-toast {
  width: 100%;
  font-size: 13px;
  padding-top: 4px;
  color: #0b5;
}

hs-dlframe::part(button) {
  font-size: 14px;
  padding: 10px 16px; /* bigger button */
  border-radius: 8px;
}

.login-box #nsl-custom-login-form-1 .nsl-container .nsl-container-buttons a {
    margin-top: 10px !important;
}

.login-box .custom-social-login {
    margin: 20px 0 0;
}

/* Copy button for HS Video (matches other HS button patterns) */
.user-horse-dashboard-wrap .hsva-copy-btn {
  background-color: #ffffff !important;
  color: #426571 !important;
  border: 1px solid #426571 !important;
  padding: 6px 8px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  font-size: 14px !important;
  line-height: 1 !important;
  text-decoration: none !important;
}
.user-horse-dashboard-wrap .hsva-copy-btn:hover,
.user-horse-dashboard-wrap .hsva-copy-btn:focus {
  background-color: #426571 !important;
  color: #ffffff !important;
}

/* Hover underline + accessible focus ring for copy button */
.user-horse-dashboard-wrap .hsva-copy-btn:hover {
  text-decoration: underline !important;
}
.user-horse-dashboard-wrap .hsva-copy-btn:focus-visible {
  outline: 3px solid rgba(66,101,113,0.25) !important;
  outline-offset: 2px !important;
}
