/*
Theme Name: Sydney Child
Author: DT
Description: Sydney Child Theme
Version: 1.0
Template: sydney

This is the child theme for Sydney theme, generated with Generate Child Theme plugin by catchthemes.
*/

/* --------------------------------------------------------
   HEADER HEIGHT & LOGO SIZING (Sydney Header Footer Blocks)
   -------------------------------------------------------- */

/* Base SHFB header: flexible height + breathing room (desktop default) */
header.shfb.shfb-header {
    height: auto !important;
    min-height: 140px !important;   /* adjust: 120–160px to taste */
    padding-top: 20px;
    padding-bottom: 20px;
}

/* Desktop & larger tablets: logo column auto width, menu takes remaining space */
@media (min-width: 768px) {
    header.shfb-header
    .shfb-row.shfb-cols-2.shfb-cols-layout-equal-desktop.shfb-cols-layout-equal-tablet {
        grid-template-columns: auto 1fr !important;  /* logo | menu */
        align-items: center;
    }

    /* Ensure the logo column has room and doesn’t collapse */
    header.shfb-header .shfb-column.shfb-column-1 {
        min-width: 220px;    /* adjust 200–280px as you like */
        justify-content: flex-start;
    }
}

/* Default (desktop) logo sizing in SHFB header */
header.shfb-header .site-branding img.site-logo {
    width: auto;
    height: auto;
    max-height: 120px;        /* desktop cap: 100–140px usually looks good */
}

/* ============================
   TABLET / MOBILE LOGO SIZES
   ============================ */

/* Tablet: 768px–1024px – logo ~80px high */
@media (min-width: 768px) and (max-width: 1024px) {
    header.shfb-header .site-branding img.site-logo {
        height: 80px !important;   /* tablet size */
        width: auto !important;
        max-width: none !important;
    }
}

/* Normal mobile: 481px–767px – logo ~60px high */
@media (min-width: 481px) and (max-width: 767px) {
    header.shfb-header.shfb-mobile .site-branding img.site-logo {
        height: 60px !important;   /* regular mobile size */
        width: auto !important;
        max-width: none !important;
    }
}

/* Small phones: ≤ 480px – keep logo a bit smaller but consistent */
@media (max-width: 480px) {
    header.shfb-header.shfb-mobile .shfb-column.shfb-column-1 .site-branding img.site-logo,
    header.shfb-header.shfb-mobile .shfb-component-logo .site-branding img.site-logo,
    header.shfb-header.shfb-mobile .site-branding img.site-logo {
        height: 50px !important;   /* adjust 45–55px to taste */
        width: auto !important;
        max-width: none !important;
    }
}


/* =========================================
   MOBILE HEADER (<= 767px): height + layout
   ========================================= */

@media (max-width: 767px) {

    /* Give the mobile header some height and padding */
    header.shfb-header.shfb-mobile {
        height: auto !important;
        min-height: 110px !important;  /* adjust 90–120 */
        padding-top: 10px;
        padding-bottom: 10px;
        align-items: center;
    }

    /* Keep logo column comfortable */
    header.shfb-header.shfb-mobile .shfb-column.shfb-column-1 {
        min-width: 180px;              /* tweak as needed */
    }
}

/* --------------------------------------------------------
   GLOBAL LOGO BEHAVIOUR (Sydney fallback / other areas)
   -------------------------------------------------------- */

/* Classic Sydney logo container (if used anywhere else) */
.site-header .logo {
    width: auto;
    height: auto;
    margin: 20px 0;                    /* vertical spacing around logo */
    float: left;
}

/* Sticky header: slightly tighter spacing */
.site-header.float-header .logo {
    margin: 10px 0;
}

/* Generic logo image sizing (non-SHFB areas) */
.site-logo,
.custom-logo-link img {
    max-height: 120px;
    width: auto;
    height: auto;
}

/* Hide title/tagline if they crowd the logo */
.site-branding .site-title,
.site-branding .site-description {
    display: none;
}

/* Remove the SHFB search icon (desktop + mobile) */
.shfb-component-search {
    display: none !important;
}

/* Make Elementor image-carousel images shrink to fit screen height */
.elementor-widget-image-carousel .swiper-slide img {
    width: auto;               /* keep aspect ratio */
    max-width: 100%;           /* don't overflow horizontally */
    height: auto;
    max-height: calc(100vh - 160px);  /* 160px ≈ header + dots; tweak this */
    object-fit: contain;       /* show whole image, no cropping */
}

@media (min-height: 745px) {
    .elementor-widget-image-carousel .swiper-slide img {
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: calc(100vh - 160px);
        object-fit: contain;
    }
}


/* White space above carosel*/
.page-wrap {
    padding-top: 10px !important;
}

.sydney-dropdown.main-navigation {
    padding: 10px 20px;
}

/* Larger desktop menu font */
.sydney-dropdown-ul > li > a.sydney-dropdown-link {
    font-size: 32px;   /* change to whatever size you like */
    font-weight: 600;  /* optional: keeps it bold */
}

/* Hover only; let active/current fall back to the base color */
.sydney-dropdown-ul > li > a.sydney-dropdown-link:hover,
.sydney-dropdown-ul > li > a.sydney-dropdown-link:focus-visible {
    color: #ff6a13;
}
