.elementor-kit-7{--e-global-color-primary:#002B45;--e-global-color-secondary:#F8F9FA;--e-global-color-text:#001524;--e-global-color-accent:#C9A66B;--e-global-color-53d6909:#FFFFFF;--e-global-color-198f8c9:#C9A66B;--e-global-color-e72e7be:#3E82B3;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Playfair Display";--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:2px;background-color:#F9F7F2;color:var( --e-global-color-text );font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#C9A66B00;font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:#FFFFFF;border-style:solid;border-color:var( --e-global-color-accent );border-radius:12px 12px 12px 12px;padding:15px 35px 15px 35px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-text );border-radius:12px 12px 12px 12px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 a:hover{color:var( --e-global-color-accent );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-7 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-7 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================
   HÅFVERUDS GLOBAL MASTER CSS
   ========================================================== */

/* --- 1. WOOCOMMERCE STANDARDKNAPPAR --- */
.woocommerce div.product .button.single_add_to_cart_button,
.button.wc-forward,
.wc-block-components-button {
    background-color: var(--e-global-color-accent) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 13px 24px !important;
    font-weight: bold !important;
    font-family: var(--e-global-typography-accent-font-family), sans-serif !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: all 0.3s ease !important;
    transform: scale(1) !important;
}

/* --- 2. WOOCOMMERCE KNAPPAR HOVER --- */
.woocommerce div.product .button.single_add_to_cart_button:hover,
.button.wc-forward:hover,
.wc-block-components-button:hover {
    filter: brightness(1.1) !important;
    transform: scale(1.05) !important;
    background-color: var(--e-global-color-accent) !important;
    color: #ffffff !important;
}

/* --- 3. WOOCOMMERCE SURFPLATTSANPASSNING --- */
@media (max-width: 991px) {
    .woocommerce div.product .button.single_add_to_cart_button {
        margin-top: 10px;
    }
}

/* --- 4. WOOCOMMERCE MOBILANPASSNING --- */
@media (max-width: 768px) {
    .woocommerce div.product .button.single_add_to_cart_button {
        margin-top: 0;
    }
}

/* --- 5. WOOCOMMERCE KVANTITETSVÄLJARE --- */
.woocommerce div.product form.cart div.quantity {
    float: left;
    margin: 0 20px 0 0;
}

/* --- 6. PREMIUM EVENT-KORT (ALLA SKÄRMAR) --- */
.hf-premium-events .fooevents-calendar-list-item {
    position: relative !important;
    height: 400px !important;
    background: #001423 !important;
    border: 2px solid rgba(0, 25, 35, 0.9) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding: 25px !important;
    box-sizing: border-box !important;
    transition: all 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    text-decoration: none !important;
}

/* --- 7. PREMIUM EVENT-KORT HOVER DESKTOP --- */
@media (min-width: 1025px) {
    .hf-premium-events .fooevents-calendar-list-item:hover {
        transform: scale(1.06) !important;
        z-index: 10 !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
    }
}

/* --- 8. PREMIUM EVENT-KORT BILD --- */
.hf-premium-events .fooevents-calendar-list-thumb {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    transition: transform 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* --- 9. PREMIUM EVENT-KORT BILD HOVER DESKTOP --- */
@media (min-width: 1025px) {
    .hf-premium-events .fooevents-calendar-list-item:hover .fooevents-calendar-list-thumb {
        transform: scale(1.08) !important;
    }
}

/* --- 10. PREMIUM EVENT-KORT MÖRK GRADIENT --- */
.hf-premium-events .fooevents-calendar-list-item::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background-image: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 80%) !important;
    opacity: 0.85 !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

/* --- 11. PREMIUM EVENT-KORT TAGG --- */
.hf-premium-events .fooevents-calendar-list-item::after {
    content: "Event" !important;
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    background-color: #3e82b3 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 4px 10px !important;
    border-radius: 4px !important;
    z-index: 3 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
}

/* --- 12. PREMIUM EVENT-KORT INNEHÅLL --- */
.hf-premium-events .fooevents-shortcode-title,
.hf-premium-events .fooevents-shortcode-date,
.hf-premium-events .fooevents-calendar-list-item p {
    position: relative !important;
    z-index: 3 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- 13. PREMIUM EVENT-KORT TITELYTA --- */
.hf-premium-events .fooevents-shortcode-title {
    margin-bottom: 5px !important;
}

/* --- 14. PREMIUM EVENT-KORT TITEL STIL --- */
.hf-premium-events .fooevents-shortcode-title h3,
.hf-premium-events .fooevents-shortcode-title a {
    font-family: var(--e-global-typography-primary-font-family), serif !important;
    font-size: 18px !important;
    font-weight: bold !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

/* --- 15. PREMIUM EVENT-KORT KLICKBAR YTA --- */
.hf-premium-events .fooevents-shortcode-title a::after {
    content: "" !important;
    position: absolute !important;
    inset: -300px -25px -25px -25px !important;
    z-index: 4 !important;
}

/* --- 16. PREMIUM EVENT-KORT DATUM --- */
.hf-premium-events .fooevents-shortcode-date {
    font-family: var(--e-global-typography-accent-font-family), sans-serif !important;
    font-size: 13px !important;
    font-weight: bold !important;
    color: var(--e-global-color-accent) !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

/* --- 17. PREMIUM EVENT-KORT DÖLJ ELEMENT --- */
.hf-premium-events .foo-clear,
.hf-premium-events .fooevents-calendar-clearfix,
.hf-premium-events .fooevents-calendar-list-item p:not(.fooevents-shortcode-date),
.hf-premium-events .fooevents-calendar-list-item .button {
    display: none !important;
}

/* --- 18. PREMIUM EVENT-KORT DESKTOP GRID --- */
@media (min-width: 768px) {
    .hf-premium-events .fooevents-calendar-list {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 24px !important;
        padding: 20px 0 !important;
    }
    @media (max-width: 1024px) {
        .hf-premium-events .fooevents-calendar-list {
            grid-template-columns: repeat(2, 1fr) !important;
        }
    }
}

/* --- 19. PREMIUM EVENT-KORT MOBIL KARUSELL --- */
@media (max-width: 767px) {
    .hf-premium-events .fooevents-calendar-list {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth !important;
        -webkit-overflow-scrolling: touch !important;
        padding-top: 15px !important;
        padding-bottom: 25px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100vw !important;
        position: relative !important;
        left: 50% !important;
        right: 50% !important;
        transform: translateX(-50%) !important;
    }
    .hf-premium-events .fooevents-calendar-list::-webkit-scrollbar {
        display: none !important;
    }
    .hf-premium-events .fooevents-calendar-list {
        -ms-overflow-style: none !important;
        scrollbar-width: none !important;
    }
    .hf-premium-events .fooevents-calendar-list-item {
        flex: 0 0 80% !important;
        max-width: 80% !important;
        scroll-snap-align: center !important;
        margin-right: 16px !important;
        margin-left: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }
    .hf-premium-events .fooevents-calendar-list-item:first-child {
        margin-left: 10% !important;
    }
    .hf-premium-events .fooevents-calendar-list-item:last-child {
        margin-right: 10% !important;
    }
}

/* --- 20. MANUELLA BEHÅLLARE MOBIL KARUSELL --- */
@media (max-width: 767px) {
    .hf-mobil-karusell {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth !important;
        -webkit-overflow-scrolling: touch !important;
        padding-top: 15px !important;
        padding-bottom: 25px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100vw !important;
        position: relative !important;
        left: 50% !important;
        right: 50% !important;
        transform: translateX(-50%) !important;
    }
    .hf-mobil-karusell::-webkit-scrollbar {
        display: none !important;
    }
    .hf-mobil-karusell {
        -ms-overflow-style: none !important;
        scrollbar-width: none !important;
    }
    .hf-mobil-karusell > .e-con-inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        padding: 0 !important;
    }
    .hf-mobil-karusell > .e-con-inner > .e-child,
    .hf-mobil-karusell > .e-child {
        flex: 0 0 80% !important;
        max-width: 80% !important;
        scroll-snap-align: center !important;
        margin-right: 16px !important;
        margin-left: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }
    .hf-mobil-karusell > .e-con-inner > .e-child:first-child,
    .hf-mobil-karusell > .e-child:first-child {
        margin-left: 10% !important;
    }
    .hf-mobil-karusell > .e-con-inner > .e-child:last-child,
    .hf-mobil-karusell > .e-child:last-child {
        margin-right: 10% !important;
    }
}

/* --- 21. MOBILMENY POPUP BILD & LOGOTYP --- */
.hf-mobilmeny-popup .elementor-widget-image,
.hf-mobilmeny-popup .elementor-image {
    padding: 30px 25px 15px 25px !important;
}

/* --- 22. MOBILMENY POPUP LÄNKAR --- */
.hf-mobilmeny-popup .elementor-nav-menu--main a,
.hf-mobilmeny-popup .elementor-icon-list-item a,
.hf-mobilmeny-popup .elementor-icon-list-text {
    padding: 16px 25px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    transition: all 0.25s ease !important;
    font-size: clamp(16px, 4.8vw, 22px) !important;
}

/* --- 23. MOBILMENY POPUP LÄNKAR AKTIVT & HOVER --- */
.hf-mobilmeny-popup .elementor-nav-menu--main a:active,
.hf-mobilmeny-popup .elementor-nav-menu--main a:hover,
.hf-mobilmeny-popup .elementor-icon-list-item a:active,
.hf-mobilmeny-popup .elementor-icon-list-item a:hover {
    color: var(--e-global-color-accent) !important;
    background-color: rgba(255, 255, 255, 0.03) !important;
    padding-left: 32px !important;
}

/* --- 24. MOBILMENY POPUP ALLA KNAPPAR (ÅTGÄRDER) --- */
.hf-mobilmeny-popup .elementor-button {
    padding: 12px 15px !important;
    border: 1px solid var(--e-global-color-accent) !important;
}

/* --- 25. MOBILMENY POPUP JUBILEUMSKNAPP SPECIAL --- */
.hf-mobilmeny-popup a[href*="jubileum"] {
    background-color: var(--e-global-color-accent);
    color: var(--e-global-color-text) !important;
}

/* --- 26. MOBILMENY POPUP KNAPPAR HOVER & AKTIVT --- */
.hf-mobilmeny-popup .elementor-button:active,
.hf-mobilmeny-popup .elementor-button:hover {
    background-color: var(--e-global-color-accent) !important;
    color: var(--e-global-color-text) !important;
    transform: scale(0.98) !important;
    box-shadow: 0 4px 15px rgba(201, 166, 107, 0.25) !important;
}

/* --- 27. MOBILMENY POPUP SOCIALA MEDIER & FOOTER --- */
.hf-mobilmeny-popup .elementor-social-icon {
    background-color: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    transition: all 0.3s ease !important;
}
.hf-mobilmeny-popup .elementor-social-icon:hover {
    border-color: var(--e-global-color-accent) !important;
    color: var(--e-global-color-accent) !important;
}

/* --- 29. GRID-TILL-FLEXBOX BRYGGA FÖR MANUELLA RUTNÄT --- */
@media (max-width: 767px) {
    .hf-mobil-karusell.e-grid,
    .hf-mobil-karusell .e-grid,
    .hf-mobil-karusell .e-con-inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        grid-template-columns: none !important;
        grid-template-rows: none !important;
    }
}

/* --- 30. MANUELLA KORT DESIGN --- */
.hf-mobil-karusell > .e-con-inner > .e-child,
.hf-mobil-karusell > .e-child {
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    border: 2px solid #000 !important; 
    border-radius: 12px !important;
    position: relative;
    overflow: hidden;
    z-index: 1;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

/* --- 31. MANUELLA KORT HOVER ZOOM --- */
.hf-mobil-karusell > .e-con-inner > .e-child:hover,
.hf-mobil-karusell > .e-child:hover {
    transform: scale(1.06) !important; 
    z-index: 10;
    border-color: var(--e-global-color-accent) !important;
    box-shadow: 0 20px 40px rgba(0, 43, 69, 0.25) !important;
}

/* --- 32. MANUELLA KORT RUBRIK STANDARD --- */
.hf-mobil-karusell .elementor-heading-title {
    min-height: 2.5em; 
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: transform 0.3s ease, color 0.3s ease;
}

/* --- 33. MANUELLA KORT RUBRIK HOVER --- */
.hf-mobil-karusell > .e-con-inner > .e-child:hover .elementor-heading-title,
.hf-mobil-karusell > .e-child:hover .elementor-heading-title {
    transform: translateY(-3px);
    color: #fff !important;
}

/* --- 34. MANUELLA KORT KNAPP HOVER --- */
.hf-mobil-karusell > .e-con-inner > .e-child:hover .elementor-button,
.hf-mobil-karusell > .e-child:hover .elementor-button {
    background-color: var(--e-global-color-accent) !important;
    border-color: var(--e-global-color-accent) !important;
    color: #ffffff !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    transform: translateY(-2px);
    transition: all 0.3s ease !important;
}

/* --- 35. MANUELLA KORT NYHETSRAD --- */
.hf-mobil-karusell .nyhets-rad {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: background 0.4s ease;
}
.hf-mobil-karusell > .e-con-inner > .e-child:hover .nyhets-rad,
.hf-mobil-karusell > .e-child:hover .nyhets-rad {
    background-color: rgba(0, 43, 69, 0.95) !important;
}

/* --- 36. MANUELLA KORT MÖRK GRADIENT OVERLAY --- */
.hf-mobil-karusell > .e-con-inner > .e-child::before,
.hf-mobil-karusell > .e-child::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 80%) !important;
    opacity: 0.8 !important;
    transition: all 0.4s ease !important;
    z-index: -1;
}
.hf-mobil-karusell > .e-con-inner > .e-child:hover::before,
.hf-mobil-karusell > .e-child:hover::before {
    opacity: 0.95 !important;
    background-image: linear-gradient(180deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,1) 100%) !important;
}

/* --- 37. AKUT SÄKERHETS-RESET FÖR STARTSIDANS HERO --- */
/* Nollställer margin/padding-top för startsidan och video-heros så att de inte skjuts ner av menyspacern */
.home .elementor-location-header + div,
.front-page .elementor-location-header + div,
.hero-under-header .elementor-location-header + div,
.home #content,
.front-page #content,
.hero-under-header #content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}/* End custom CSS */