.elementor-kit-9{--e-global-color-primary:#0D2B4E;--e-global-color-secondary:#B8924A;--e-global-color-text:#1A1612;--e-global-color-accent:#2A6090;--e-global-color-77a834e:#FFFFFF;--e-global-color-01c4d84:#000000;--e-global-color-d4061cc:#070F1E;--e-global-color-75949ef:#FFFFFF66;--e-global-color-9bce9af:#FFFFFF99;--e-global-color-85c78a4:#AFC4D4;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Cormorant Garamond";--e-global-typography-accent-font-weight:500;color:#1A1A2E;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:400;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:#1A1111;font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:1.5em;border-radius:4px 4px 4px 4px;padding:14px 32px 14px 32px;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.site-header{background-color:#0A0707;padding-inline-end:0px;padding-inline-start:0px;}.elementor-kit-9 h1{color:#0D2B4E;font-family:"Cormorant Garamond", Sans-serif;font-size:72px;font-weight:300;line-height:1em;}.elementor-kit-9 h2{color:#0D2B4E;font-family:"Cormorant Garamond", Sans-serif;font-size:52px;font-weight:300;line-height:1.1em;}.elementor-kit-9 h3{color:#0D2B4E;font-family:"Cormorant Garamond", Sans-serif;font-size:36px;font-weight:400;line-height:1.2em;}.elementor-kit-9 h4{color:#0D2B4E;font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:500;line-height:1.4em;}.elementor-kit-9 h5{color:#0D2B4E;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:500;line-height:1.4em;}.elementor-kit-9 h6{color:#0D2B4E;font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:500;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================================================
   YACHTS GREECE — CUSTOM CSS (cleaned & deduplicated)
   Updated: April 2026
============================================================================ */

/* ============================================================================
   1. YACHT GALLERY (single yacht page)
============================================================================ */
.yg-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.yg-gallery-grid img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 6px;
    display: block;
}

.yg-gallery-item {
    display: block;
    overflow: hidden;
    border-radius: 6px;
}

@media (max-width: 768px) {
    .yg-gallery-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    .yg-gallery-grid { grid-template-columns: 1fr; }
}

/* ============================================================================
   2. YACHT SPECS TABLE (single yacht page)
============================================================================ */
.yg-specs-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
}

.yg-spec-label {
    color: #888;
    padding: 10px 16px 10px 16px;
    border-bottom: 0.5px solid #e8e3da;
    width: 45%;
    font-weight: 400;
}

.yg-spec-value {
    font-weight: 500;
    color: #1A1612;
    padding: 10px 0 10px 16px;
    border-bottom: 0.5px solid #e8e3da;
}

/* ============================================================================
   3. FEATURED YACHTS (homepage)
============================================================================ */
.yg-featured-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.yg-featured-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 0.5px solid #e8e3da;
    transition: transform 0.2s;
}

.yg-featured-card:hover { transform: translateY(-4px); }

.yg-featured-img-wrap img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
    display: block;
}

.yg-featured-body { padding: 20px; }

.yg-featured-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-weight: 400;
    margin: 0 0 8px;
}

.yg-featured-title a {
    color: #0D2B4E;
    text-decoration: none;
}

.yg-featured-meta {
    color: #888;
    font-size: 13px;
    margin: 0 0 8px;
}

.yg-featured-price {
    color: #B8924A;
    font-size: 20px;
    font-family: 'Cormorant Garamond', serif;
    margin: 0 0 16px;
}

.yg-featured-btn {
    display: inline-block;
    background: #B8924A;
    color: #fff;
    padding: 8px 20px;
    border-radius: 6px;
    font-size: 13px;
    text-decoration: none;
}

@media (max-width: 768px) {
    .yg-featured-grid { grid-template-columns: 1fr; }
}

/* ============================================================================
   4. ELEMENTOR LOOP ITEMS (generic — used in single yacht "Similar yachts")
   IMPORTANT: scoped to NOT break the yacht list (.yfs-results) which has its own rules below.
============================================================================ */
.elementor-loop-item:not(.yfs-results .yacht-card-wrap *) {
    display: flex;
    flex-direction: column;
}

.elementor-loop-item .e-con {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.elementor-loop-item .elementor-widget-button {
    margin-top: auto;
}

/* ============================================================================
   5. YACHTS FOR SALE PAGE — LAYOUT
============================================================================ */
.yfs-wrapper {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 32px;
    max-width: 1400px;
    margin: 32px auto;
    padding: 0 24px;
}

.yfs-filters {
    position: sticky;
    top: 100px;
    align-self: start;
}

.yfs-filters h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 18px;
    color: #0D2B4E;
    margin: 24px 0 8px;
    font-weight: 500;
}

.yfs-filters h3:first-child {
    margin-top: 0;
}

.yfs-results .yacht-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch;
}

@media (max-width: 1024px) {
    .yfs-wrapper {
        grid-template-columns: 1fr;
    }
    .yfs-filters {
        position: static;
    }
    .yfs-results .yacht-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .yfs-results .yacht-cards-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================================
   6. YACHTS FOR SALE PAGE — CARD STRUCTURE
============================================================================ */
.yfs-results .yacht-card-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 0.5px solid #e8e3da;
    transition: transform 0.2s;
}

.yfs-results .yacht-card-wrap:hover {
    transform: translateY(-4px);
}

.yfs-results .yacht-card-wrap > .elementor {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.yfs-results .yacht-card-wrap > .elementor > .e-con {
    flex: 1;
    display: flex !important;
    flex-direction: column !important;
}

.yfs-results .yacht-card-wrap > .elementor > .e-con > .e-con-inner {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.yfs-results .yacht-card-wrap .elementor-widget-button {
    margin-top: auto;
}

.yfs-results .yacht-card-wrap .elementor-widget-theme-post-title h1,
.yfs-results .yacht-card-wrap .elementor-widget-heading h2 {
    font-size: 22px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}

/* ============================================================================
   7. YACHTS FOR SALE PAGE — IMAGE (single source of truth)
============================================================================ */
.yfs-results .yacht-card-wrap .elementor-widget-theme-post-featured-image {
    aspect-ratio: 3 / 2;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.yfs-results .yacht-card-wrap .elementor-widget-theme-post-featured-image > .elementor-widget-container,
.yfs-results .yacht-card-wrap .elementor-widget-theme-post-featured-image a {
    display: block;
    width: 100%;
    height: 100%;
}

.yfs-results .yacht-card-wrap .elementor-widget-theme-post-featured-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    aspect-ratio: auto !important;
    display: block !important;
}

/* ============================================================================
   8. YACHTS FOR SALE PAGE — VIEW YACHT BUTTON
============================================================================ */
.yfs-results .yacht-card-wrap .elementor-button,
.yfs-results .yacht-card-wrap a.elementor-button-link,
.yfs-results .yacht-card-wrap .elementor-widget-button .elementor-button {
    background-color: #0D2B4E !important;
    color: #fff !important;
    border: 1px solid #0D2B4E !important;
    letter-spacing: 2px !important;
    font-size: 12px !important;
    padding: 10px 16px !important;
    white-space: nowrap !important;
    transition: background-color 0.2s, border-color 0.2s !important;
}

.yfs-results .yacht-card-wrap .elementor-button:hover,
.yfs-results .yacht-card-wrap a.elementor-button-link:hover,
.yfs-results .yacht-card-wrap .elementor-widget-button .elementor-button:hover {
    background-color: #B8924A !important;
    border-color: #B8924A !important;
    color: #fff !important;
}

.yfs-results .yacht-card-wrap .elementor-button-text {
    letter-spacing: 2px !important;
}

/* ============================================================================
   9. FILTER FORM — STRUCTURE
============================================================================ */
.yg-filter-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}

.yg-filter-group {
    width: 100%;
}

.yg-filter-group label {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 16px;
    color: #0D2B4E;
    margin-bottom: 6px;
    font-weight: 500;
}

.yg-filter-form select,
.yg-filter-form input[type="number"],
.yg-filter-form input[type="search"] {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #d4cdc1;
    border-radius: 4px;
    background: #fff;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    color: #1A1612;
    box-sizing: border-box;
}

.yg-filter-form select:focus,
.yg-filter-form input:focus {
    outline: none;
    border-color: #0D2B4E;
}

.yg-range-inputs {
    display: flex;
    align-items: center;
    gap: 8px;
}

.yg-range-inputs input {
    flex: 1;
    min-width: 0;
}

.yg-range-inputs > span {
    color: #888;
    flex: 0 0 auto;
}

/* ============================================================================
   10. FILTER FORM — BUTTONS
============================================================================ */
.yg-filter-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    margin-top: 8px;
}

.yfs-wrapper .yg-filter-actions .yg-btn-apply,
.yfs-wrapper .yg-filter-actions .yg-btn-reset {
    display: block !important;
    width: 100% !important;
    padding: 12px 12px !important;
    box-sizing: border-box !important;
    border-radius: 4px !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 12px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    text-decoration: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s !important;
}

.yfs-wrapper .yg-filter-actions .yg-btn-apply {
    background-color: #0D2B4E !important;
    color: #fff !important;
    border: 1px solid #0D2B4E !important;
}

.yfs-wrapper .yg-filter-actions .yg-btn-apply:hover {
    background-color: #B8924A !important;
    border-color: #B8924A !important;
    color: #fff !important;
}

.yfs-wrapper .yg-filter-actions .yg-btn-reset {
    background: transparent !important;
    color: #0D2B4E !important;
    border: 1px solid #0D2B4E !important;
}

.yfs-wrapper .yg-filter-actions .yg-btn-reset:hover {
    background-color: #B8924A !important;
    color: #fff !important;
    border-color: #B8924A !important;
}

/* ============================================================================
   11. COUNTS & PAGINATION
============================================================================ */
.yg-counts {
    color: #888;
    font-size: 14px;
    margin-bottom: 16px;
    font-family: 'DM Sans', sans-serif;
}

.yg-pager {
    margin-top: 32px;
    text-align: center;
}

.yg-pager .page-numbers {
    display: inline-block;
    padding: 8px 14px;
    margin: 0 2px;
    color: #0D2B4E;
    text-decoration: none;
    border: 1px solid #d4cdc1;
    border-radius: 4px;
    font-size: 14px;
    transition: all 0.2s;
    font-family: 'DM Sans', sans-serif;
}

.yg-pager .page-numbers:hover {
    background: #B8924A;
    color: #fff;
    border-color: #B8924A;
}

.yg-pager .page-numbers.current {
    background: #0D2B4E;
    color: #fff;
    border-color: #0D2B4E;
}

.yg-no-results {
    padding: 24px;
    background: #f5f1ea;
    border-radius: 6px;
    text-align: center;
    color: #888;
}

.yg-no-results a {
    color: #0D2B4E;
    text-decoration: underline;
}

/* ============================================================================
   12. EMPTY STATE (no results found)
============================================================================ */
.yg-empty-state {
    grid-column: 1 / -1;
    text-align: center;
    padding: 24px;
    max-width: 600px;
    margin: 24px auto;
}

.yg-empty-illustration {
    margin-bottom: 32px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(13, 43, 78, 0.15);
}

.yg-empty-illustration svg {
    display: block;
    width: 100%;
    height: auto;
}

.yg-empty-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 32px;
    font-weight: 400;
    color: #0D2B4E;
    margin: 0 0 16px;
    line-height: 1.2;
}

.yg-empty-text {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    color: #666;
    line-height: 1.6;
    margin: 0 0 32px;
}

.yg-empty-cta,
.yg-empty-cta:hover,
.yg-empty-cta:focus,
.yg-empty-cta:visited {
    display: inline-block;
    background: #0D2B4E;
    color: #fff;
    padding: 14px 32px;
    border-radius: 4px;
    text-decoration: none !important;
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-family: 'DM Sans', sans-serif;
    transition: background 0.2s, color 0.2s;
}

.yg-empty-cta:hover {
    background: #B8924A;
    color: #fff;
}

@media (max-width: 600px) {
    .yg-empty-title {
        font-size: 24px;
    }
    .yg-empty-text {
        font-size: 14px;
    }
}
/* === Featured yachts button — homepage === */
.yg-featured-btn {
    background: #B8924A !important;
    color: #fff !important;
    padding: 8px 20px;
    border-radius: 6px;
    font-size: 13px;
    text-decoration: none;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5);
    transition: background 0.25s ease;
}

.yg-featured-btn:hover,
.yg-featured-btn:focus {
    background: #0D2B4E !important;
    color: #fff !important;
    text-decoration: none;
}
/* === Super Deals — full width grid (no sidebar) === */
.yfs-wrapper.yfs-no-sidebar {
    grid-template-columns: 1fr;
    max-width: 1400px;
}

.yfs-wrapper.yfs-no-sidebar .yfs-results .yacht-cards-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    max-width: 1100px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .yfs-wrapper.yfs-no-sidebar .yfs-results .yacht-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .yfs-wrapper.yfs-no-sidebar .yfs-results .yacht-cards-grid {
        grid-template-columns: 1fr;
        max-width: 360px;
    }
}

/* Center counts text under hero title */
.yfs-wrapper.yfs-no-sidebar .yg-counts {
    text-align: center;
    margin-bottom: 32px;
}
/* === Force visibility for Elementor lightbox arrows === */
.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    visibility: visible !important;
    opacity: 1 !important;
    width: 50px !important;
    height: 50px !important;
    background: rgba(0, 0, 0, 0.5) !important;
    color: #fff !important;
    font-size: 28px !important;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;
    transition: background 0.2s;
}

.elementor-lightbox .elementor-swiper-button:hover {
    background: rgba(0, 0, 0, 0.8) !important;
}

.elementor-lightbox .elementor-swiper-button-prev {
    left: 20px;
}

.elementor-lightbox .elementor-swiper-button-next {
    right: 20px;
}

/* Arrow icons (using ::before with unicode triangles) */
.elementor-lightbox .elementor-swiper-button-prev::before {
    content: "‹";
    font-size: 36px;
    line-height: 1;
}

.elementor-lightbox .elementor-swiper-button-next::before {
    content: "›";
    font-size: 36px;
    line-height: 1;
}

/* Hide on single-image slides */
.elementor-lightbox .swiper-button-disabled,
.elementor-lightbox .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3 !important;
    cursor: not-allowed;
}
/* ============================================================================
   DISPLAY CONTROLS (layout switcher + scroll toggle)
   ============================================================================ */
.yg-display-group {
    margin-bottom: 8px;
}

.yg-display-group > label {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 16px;
    color: #0D2B4E;
    margin-bottom: 8px;
    font-weight: 500;
}

.yg-layout-switcher {
    display: flex;
    gap: 6px;
    margin-bottom: 10px;
    flex-wrap: nowrap;
    width: 100%;
}

.yg-layout-btn {
    flex: 1 1 0;
    min-width: 0;
}
.yg-layout-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 4px;
    background: #fff;
    border: 1px solid #d4cdc1;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
    min-height: 32px;
}

.yg-layout-btn:hover {
    border-color: #B8924A;
    background: #f5f1ea;
}

.yg-layout-btn.yg-layout-active {
    background: #0D2B4E;
    border-color: #0D2B4E;
}

.yg-layout-btn.yg-layout-active:hover {
    background: #B8924A;
    border-color: #B8924A;
}

/* The vertical bar icons inside the buttons */
.yg-col-icon {
    display: block;
    width: 3px;
    height: 14px;
    background: #888;
    border-radius: 1px;
    transition: background 0.2s;
}

.yg-layout-btn:hover .yg-col-icon {
    background: #0D2B4E;
}

.yg-layout-btn.yg-layout-active .yg-col-icon {
    background: #fff;
}

.yg-layout-btn.yg-layout-active:hover .yg-col-icon {
    background: #fff;
}

/* === Scroll mode toggle (Pages / Infinite) === */
.yg-scroll-toggle {
    display: flex;
    border: 1px solid #d4cdc1;
    border-radius: 4px;
    overflow: hidden;
}

.yg-scroll-btn {
    flex: 1;
    padding: 8px 12px;
    background: #fff;
    border: none;
    cursor: pointer;
    font-size: 11px;
    font-family: 'DM Sans', sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #888;
    transition: all 0.2s;
}

.yg-scroll-btn:not(:last-child) {
    border-right: 1px solid #d4cdc1;
}

.yg-scroll-btn:hover {
    background: #f5f1ea;
    color: #0D2B4E;
}

.yg-scroll-btn.yg-scroll-active {
    background: #0D2B4E;
    color: #fff;
}

.yg-scroll-btn.yg-scroll-active:hover {
    background: #B8924A;
}

/* ============================================================================
   GRID LAYOUT VARIATIONS (1/2/3/4 columns)
   ============================================================================ */
.yfs-results .yacht-cards-grid[data-layout="1"] {
    grid-template-columns: 1fr;
    max-width: 720px;
    margin: 0 auto;
}

.yfs-results .yacht-cards-grid[data-layout="2"] {
    grid-template-columns: repeat(2, 1fr);
}

.yfs-results .yacht-cards-grid[data-layout="3"] {
    grid-template-columns: repeat(3, 1fr);
}

.yfs-results .yacht-cards-grid[data-layout="4"] {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

/* Smaller cards in 4-col layout */
.yfs-results .yacht-cards-grid[data-layout="4"] .yacht-card-wrap .elementor-widget-theme-post-title h1,
.yfs-results .yacht-cards-grid[data-layout="4"] .yacht-card-wrap .elementor-widget-heading h2 {
    font-size: 18px !important;
}

/* In 1-col layout, the card becomes more horizontal-friendly */
.yfs-results .yacht-cards-grid[data-layout="1"] .yacht-card-wrap {
    max-width: 100%;
}

/* Responsive overrides — collapse multi-column layouts on small screens */
@media (max-width: 1024px) {
    .yfs-results .yacht-cards-grid[data-layout="3"],
    .yfs-results .yacht-cards-grid[data-layout="4"] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .yfs-results .yacht-cards-grid[data-layout="2"],
    .yfs-results .yacht-cards-grid[data-layout="3"],
    .yfs-results .yacht-cards-grid[data-layout="4"] {
        grid-template-columns: 1fr;
    }
}

/* ============================================================================
   INFINITE SCROLL SENTINEL
   ============================================================================ */
.yg-infinite-sentinel {
    grid-column: 1 / -1;
    text-align: center;
    padding: 32px 16px;
    margin-top: 16px;
}

.yg-infinite-loader {
    color: #888;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.yg-infinite-sentinel.yg-loading .yg-infinite-loader::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid #d4cdc1;
    border-top-color: #B8924A;
    border-radius: 50%;
    animation: yg-spin 0.8s linear infinite;
    margin-right: 10px;
    vertical-align: middle;
}

.yg-infinite-sentinel.yg-end .yg-infinite-loader {
    color: #0D2B4E;
    font-style: italic;
}

.yg-infinite-sentinel.yg-error .yg-infinite-loader {
    color: #C0392B;
}

@keyframes yg-spin {
    to { transform: rotate(360deg); }
}
/* ============================================================================
   LIST VIEW LAYOUT (data-layout="list")
   ============================================================================ */

/* Override grid → single column for list mode */
.yfs-results .yacht-cards-grid[data-layout="list"] {
    grid-template-columns: 1fr;
    gap: 12px;
}

/* List row container */
.yfs-results .yacht-cards-grid[data-layout="list"] .yacht-card-wrap {
    border: none;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    overflow: visible;
    transform: none !important;
}

/* The actual horizontal row */
.yg-list-row {
    display: grid;
    grid-template-columns: 140px 2fr 1fr 0.7fr 0.7fr 1.2fr 1.2fr auto;
    gap: 16px;
    align-items: center;
    padding: 12px 16px;
    background: #fff;
    border: 0.5px solid #e8e3da;
    border-radius: 8px;
    text-decoration: none !important;
    color: inherit !important;
    transition: all 0.2s ease;
}

.yg-list-row:hover {
    border-color: #B8924A;
    box-shadow: 0 4px 16px rgba(13, 43, 78, 0.08);
    transform: translateY(-2px);
    text-decoration: none !important;
}

/* Sale yachts have fewer columns */
.yfs-results .yacht-cards-grid[data-layout="list"][data-status="for-sale"] .yg-list-row {
    grid-template-columns: 140px 2.5fr 1.2fr 1fr 1.2fr auto;
}

/* Thumbnail */
.yg-list-thumb {
    width: 140px;
    height: 90px;
    overflow: hidden;
    border-radius: 4px;
    background: #f5f1ea;
}

.yg-list-thumb-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
}

.yg-list-thumb-empty {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #0D2B4E 0%, #1a4275 100%);
}

/* Name column */
.yg-list-name {
    min-width: 0;
}

.yg-list-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 20px;
    color: #0D2B4E;
    margin: 0 0 4px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.yg-list-year {
    font-size: 13px;
    color: #888;
    font-family: 'DM Sans', sans-serif;
}

/* Spec columns */
.yg-list-spec {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    text-decoration: none !important;
}

.yg-list-spec-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #888;
    font-family: 'DM Sans', sans-serif;
    text-decoration: none !important;
}

.yg-list-spec-value {
    font-size: 14px;
    color: #1A1612;
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    text-decoration: none !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Price values stand out */
.yg-list-price .yg-list-spec-value {
    color: #B8924A;
    font-weight: 600;
}

.yg-list-spec-value small {
    font-size: 11px;
    color: #888;
    font-weight: 400;
    margin-left: 2px;
}

/* CTA button */
.yg-list-cta {
    text-decoration: none !important;
}

.yg-list-cta-btn {
    display: inline-block;
    padding: 8px 16px;
    background: #0D2B4E;
    color: #fff !important;
    border-radius: 4px;
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-family: 'DM Sans', sans-serif;
    white-space: nowrap;
    transition: background 0.2s;
    text-decoration: none !important;
}

.yg-list-row:hover .yg-list-cta-btn {
    background: #B8924A;
}

/* List view button icon (horizontal lines) */
.yg-row-icon {
    display: block;
    width: 14px;
    height: 2px;
    background: #888;
    margin: 1px 0;
    border-radius: 1px;
    transition: background 0.2s;
}

.yg-layout-list-btn {
    flex-direction: column;
    gap: 0;
}

.yg-layout-btn:hover .yg-row-icon {
    background: #0D2B4E;
}

.yg-layout-btn.yg-layout-active .yg-row-icon {
    background: #fff;
}

/* Responsive — collapse to vertical card on small screens */
@media (max-width: 900px) {
    .yg-list-row,
    .yfs-results .yacht-cards-grid[data-layout="list"][data-status="for-sale"] .yg-list-row {
        grid-template-columns: 100px 1fr;
        gap: 12px;
        padding: 12px;
    }

    .yg-list-thumb { width: 100px; height: 70px; }

    .yg-list-spec,
    .yg-list-cta {
        grid-column: 2;
    }

    .yg-list-spec {
        flex-direction: row;
        align-items: baseline;
        gap: 8px;
    }

    .yg-list-spec-label::after {
        content: ':';
    }

    .yg-list-cta-btn {
        margin-top: 6px;
    }
}

@media (max-width: 480px) {
    .yg-list-row,
    .yfs-results .yacht-cards-grid[data-layout="list"][data-status="for-sale"] .yg-list-row {
        grid-template-columns: 1fr;
    }

    .yg-list-thumb {
        width: 100%;
        height: 160px;
    }

    .yg-list-spec,
    .yg-list-cta {
        grid-column: 1;
    }
}
/* === Override list row grid: ευρύτερη στήλη για name === */
.yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-row {
    grid-template-columns: 110px 2.5fr 1.1fr 0.7fr 0.7fr 1.1fr 1.1fr auto !important;
    gap: 12px !important;
    padding: 10px 14px !important;
}

.yfs-results .yacht-cards-grid[data-layout="list"][data-status="for-sale"] .yg-list-row {
    grid-template-columns: 110px 3fr 1.2fr 1fr 1.2fr auto !important;
}

.yg-list-thumb {
    width: 110px !important;
    height: 75px !important;
}

.yg-list-title {
    font-size: 18px !important;
    white-space: normal !important;  /* Allow wrapping for long names */
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
    max-height: 2.4em;  /* 2 lines max */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* Smaller season labels */
.yg-list-spec-label {
    font-size: 10px !important;
    letter-spacing: 0.5px !important;
}

.yg-list-spec-value {
    font-size: 13px !important;
}

.yg-list-cta-btn {
    padding: 8px 14px !important;
    font-size: 10px !important;
    letter-spacing: 1px !important;
}

/* === Larger viewport — restore comfortable spacing === */
@media (min-width: 1400px) {
    .yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-row {
        grid-template-columns: 130px 3fr 1.1fr 0.7fr 0.7fr 1.1fr 1.1fr auto !important;
        padding: 12px 18px !important;
    }
    .yg-list-thumb {
        width: 130px !important;
        height: 85px !important;
    }
    .yg-list-title {
        font-size: 20px !important;
    }
}
/* === LIST VIEW — final cleanup overrides === */

/* Layout switcher: 5 ίσα buttons σε μία σειρά */
.yfs-filters .yg-layout-switcher {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 4px !important;
    width: 100% !important;
}

.yfs-filters .yg-layout-btn {
    flex: none !important;
    min-width: 0 !important;
    padding: 8px 2px !important;
    min-height: 36px !important;
}

/* Smaller column icons για να χωράνε */
.yg-col-icon {
    width: 2px !important;
    height: 12px !important;
}

.yg-row-icon {
    width: 12px !important;
    height: 2px !important;
}

/* Pages/Infinite buttons επίσης σε μία γραμμή */
.yfs-filters .yg-scroll-toggle {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
}

.yfs-filters .yg-scroll-btn {
    padding: 8px 8px !important;
    font-size: 10px !important;
    letter-spacing: 0.5px !important;
}

/* === LIST ROW: title overlap fix === */
/* Reset thumb width to match grid column */
.yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-thumb {
    width: 100% !important;
    height: 80px !important;
    max-width: 110px !important;
}

/* Force grid alignment — kill any inherited positioning issues */
.yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-row {
    align-items: center !important;
    position: relative !important;
}

/* Title needs proper container — reset inherited Elementor styles */
.yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-name {
    position: relative !important;
    overflow: hidden;
    padding-left: 0;
}

.yfs-results .yacht-cards-grid[data-layout="list"] .yg-list-title {
    position: static !important;
    padding: 0 !important;
    margin: 0 0 4px 0 !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    max-height: none;
    -webkit-line-clamp: unset;
    display: block;
    white-space: normal !important;
    overflow: visible !important;
}

.yg-list-year {
    display: block;
    margin-top: 2px;
}

/* Make sure the row anchor doesn't have stray text styles */
.yg-list-row,
.yg-list-row * {
    text-decoration: none !important;
}
.yg-faq {
    max-width: 900px;
    margin: 32px auto;
    padding: 0 24px;
    font-family: 'DM Sans', sans-serif;
}
 
.yg-faq-category {
    margin-bottom: 48px;
}
 
.yg-faq-category-title {
    font-family: 'Cormorant Garamond', serif;
    color: #0D2B4E;
    border-bottom: 2px solid #B8924A;
    padding-bottom: 8px;
    margin-bottom: 24px;
    font-size: 28px;
    font-weight: 500;
}
 
.yg-faq-item {
    background: #fff;
    border: 0.5px solid #e8e3da;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 12px;
    transition: border-color 0.2s, box-shadow 0.2s;
}
 
.yg-faq-item:hover {
    border-color: #B8924A;
    box-shadow: 0 4px 16px rgba(13, 43, 78, 0.08);
}
 
.yg-faq-question {
    color: #0D2B4E;
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 8px;
    font-family: 'Cormorant Garamond', serif;
}
 
.yg-faq-answer p {
    color: #1A1612;
    line-height: 1.6;
    margin: 0;
    font-size: 14px;
}/* End custom CSS */