/*
Theme Name: KAU Interiors Theme V2
Theme URI: https://olliewp.com
Description: A child theme built on Ollie WP.
Author: Susanne Eneroth
Author URI: https://www.pinkdogmedia.se/
Template:     ollie
Version: 1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Text Domain: ollie-child
*/

/* ===========================
   OLLIE 1.5.x SPECIFIKA FIXES
   =========================== */


@import url('responsive-fixes.css');

html, body {
    overflow-x: hidden;
    max-width: 100%;
}

/* Fix: Innehåll får padding, inte blocken själva */
/* Fix: Innehåll får padding, inte blocken själva – endast på inner-gruppen */
@media (max-width: 1280px) {
    .footer-inner {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
}

/* Smooth scroll för alla anchor-länkar */
html {
    scroll-behavior: smooth;
}

/* ===========================
   FIXED HEADER
   =========================== */

/* Make header fixed */
.site-header {
    position: fixed !important;
    top: 0;
    width: 100%;
    z-index: 1000;
    transition: background-color 0.3s ease;
    background-color: transparent !important;
}

/* Make header fixed */
.site-header-kundcase {
    position: fixed !important;
    top: 0;
    width: 100%;
    z-index: 1000;
    transition: background-color 0.3s ease;
    background-color: transparent !important;
    color: #000 !important;
}

/* Keep inner content transparent */
.site-header-inner,
.site-header > *,
.site-header .wp-block-group,
.site-header .wp-block-columns,
.site-header .wp-block-column {
    background-color: transparent !important;
    transition: none !important;
}

/* Desktop navigation - white text (högre specificitet) */
.site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation-item a,
.site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) * {
    color: white !important;
    transition: color 0.3s ease;
}

/* Desktop navigation - svart text kundcase */
.site-header .kundcase .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation-item a,
.site-header .kundcase .wp-block-navigation:not(.wp-block-navigation__responsive-container) * {
    color: black !important;
}


/* MODIFIERAD MÖRKA SCROLL-REGEL - KÖR BARA PÅ DESKTOP */
@media (min-width: 783px) { 
    .site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation-item a,
    .site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) * {
        color: #252525 !important;
    }
}

/* White background when scrolled */
.site-header.scrolled {
    background-color: #f8f6f5 !important;
}


/* Desktop navigation - white text */
@media (min-width: 783px) {
    .site-header nav *,
    .site-header nav a,
    .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) *,
    .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) a {
        color: white !important;
        transition: color 0.3s ease;
    }

    /* #252525 text when scrolled */
    .site-header.scrolled nav *,
    .site-header.scrolled nav a,
    .site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) *,
    .site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) a {
        color: #252525 !important;
    }
}

/* Hamburger menu - vit text alltid (mobil) */
body .wp-block-navigation__responsive-container,
body .wp-block-navigation__responsive-container *,
body .wp-block-navigation__responsive-container a,
body .wp-block-navigation__responsive-container .wp-block-navigation-item a {
    color: #ffffff !important;
}

/* Svart bakgrund i hamburgermenyn */
/* body .wp-block-navigation__responsive-container,
body .wp-block-navigation__responsive-container.is-menu-open,
body .wp-block-navigation__responsive-container .wp-block-navigation__responsive-dialog {
    background-color: #000000 !important;
} */

/* Admin bar */
body.admin-bar .site-header {
    top: 32px;
}

@media screen and (max-width: 782px) {
    body.admin-bar .site-header {
        top: 46px;
    }
}

/* ===========================
   HERO COVER FULL HEIGHT
   =========================== */

.wp-block-cover.hero-cover {
    height: auto !important;
    min-height: 100vh !important;
}

/* Modern mobile: dynamic viewport */
@supports (height: 100dvh) {
    .wp-block-cover.hero-cover {
        min-height: 100dvh !important;
    }
}

/* Safari safe viewport */
@supports (height: 100svh) {
    .wp-block-cover.hero-cover {
        min-height: 100svh !important;
    }
}

/* Older iOS fallback */
@supports not (height: 100dvh) {
    .wp-block-cover.hero-cover {
        min-height: -webkit-fill-available !important;
    }
}

/* ===========================
   LOGO SWAP ON SCROLL
   =========================== */

/* Light logo visible by default */
.logo-light {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.7s ease;
    width: 110px !important;
}

/* Dark logo hidden */
.logo-dark {
    opacity: 0;
    visibility: hidden;
    display: none;
    width: 110px !important;
}

/* When scrolled, swap logos */
.site-header.scrolled .logo-light {
    opacity: 0;
    visibility: hidden;
    display: none;
    width: 110px !important;
}

.site-header.scrolled .logo-dark {
    opacity: 1;
    visibility: visible;
    display: block;
    width: 110px !important;
}

/* ===========================
   NAVIGATION LINKS
   =========================== */

/* Remove underline from all navigation links */
.wp-block-navigation a {
    text-decoration: none !important;
}

.wp-block-navigation a:hover,
.wp-block-navigation a:focus,
.wp-block-navigation a:active {
    text-decoration: none !important;
}

/* Current page link */
.wp-block-navigation .current-menu-item a,
.wp-block-navigation .current_page_item a {
    text-decoration: none !important;
}

/* NAVBAR KONTAKT KNAPP - Högsta specificitet */
.site-header .wp-block-buttons .wp-block-button__link[href*="kontakt"],
.site-header a.wp-block-button__link[href*="kontakt"] {
    color: white !important;
    background-color: #530000 !important;
    border: 1px solid rgba(255, 255, 255, 0.7) !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* NAVBAR KONTAKT HOVER */
.site-header .wp-block-buttons .wp-block-button__link[href*="kontakt"]:hover,
.site-header a.wp-block-button__link[href*="kontakt"]:hover {
    background-color: #7a0000 !important;
    border: 1px solid #ffffff !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    color: white !important;
    text-decoration: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
}

/* SCROLLED STATE */
.site-header.scrolled .wp-block-buttons .wp-block-button__link[href*="kontakt"],
.site-header.scrolled a.wp-block-button__link[href*="kontakt"] {
    border: 1px solid #530000 !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    background-color: #530000 !important;
    color: white !important;
    text-decoration: none !important;
}

.site-header.scrolled .wp-block-buttons .wp-block-button__link[href*="kontakt"]:hover,
.site-header.scrolled a.wp-block-button__link[href*="kontakt"]:hover {
    background-color: #7a0000 !important;
    border: 1px solid #530000 !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    text-decoration: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
}

/* ===========================
   GLOBAL BUTTON STYLES
   =========================== */

/* GENERISK KNAPP FIX: Överrida inline styles för alla standard wp-element-buttons */
a.wp-block-button__link.wp-element-button,
.wp-block-button__link.wp-element-button {
    background-color: #530000 !important;
    color: white !important;
    border-color: #530000 !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    font-family: 'Jost', sans-serif !important;
    transition: all 0.3s ease !important;
}

/* GENERISK KNAPP FIX: Hover */
a.wp-block-button__link.wp-element-button:hover,
.wp-block-button__link.wp-element-button:hover {
    background-color: #7a0000 !important;
    border-color: #7a0000 !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    color: white !important;
}

/* PRIMARY BUTTON STYLE - Mörkröd */
body .wp-block-button.is-style-primary .wp-block-button__link,
body .wp-block-button .wp-block-button__link.primary-button,
.wp-block-button.is-style-primary .wp-block-button__link,
.wp-block-button__link.primary-button {
    color: white !important;
    background-color: #530000 !important;
    border: 1px solid #530000 !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    text-decoration: none !important;
    padding: 12px 24px !important;
    transition: all 0.3s ease !important;
}

/* PRIMARY HOVER */
body .wp-block-button.is-style-primary .wp-block-button__link:hover,
body .wp-block-button .wp-block-button__link.primary-button:hover,
.wp-block-button.is-style-primary .wp-block-button__link:hover,
.wp-block-button__link.primary-button:hover,
a.wp-block-button__link.primary-button:hover {
    background-color: #7a0000 !important;
    border-color: #7a0000 !important;
    border-radius: 5px !important;  /* Lagt till */
    color: white !important;
    text-decoration: none !important;
}

/* SECONDARY BUTTON STYLE - Mörkröd utan border */
body .wp-block-button.is-style-secondary .wp-block-button__link,
body .wp-block-button .wp-block-button__link.secondary-button,
.wp-block-button.is-style-secondary .wp-block-button__link,
.wp-block-button__link.secondary-button {
    color: white !important;
    background-color: #530000 !important;
    border: none !important;
    border-radius: 5px !important;  /* Ändrat till !important */
    text-decoration: none !important;
    padding: 12px 24px !important;
    transition: all 0.3s ease !important;
}

/* SECONDARY HOVER */
body .wp-block-button.is-style-secondary .wp-block-button__link:hover,
body .wp-block-button .wp-block-button__link.secondary-button:hover,
.wp-block-button.is-style-secondary .wp-block-button__link:hover,
.wp-block-button__link.secondary-button:hover,
a.wp-block-button__link.secondary-button:hover {
    background-color: #7a0000 !important;
    border-radius: 5px !important;  /* Lagt till */
    color: white !important;
    text-decoration: none !important;
}

/* ===========================
   REMOVE UNDERLINE FROM ALL BUTTONS GLOBALLY
   =========================== */

/* All buttons - alla states */
.wp-block-button__link,
a.wp-block-button__link,
.wp-element-button {
    text-decoration: none !important;
    border-radius: 5px !important;  /* Ändrat till !important */
}

.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button__link:active,
a.wp-block-button__link:hover,
a.wp-block-button__link:focus,
a.wp-block-button__link:active,
.wp-element-button:hover,
.wp-element-button:focus,
.wp-element-button:active {
    text-decoration: none !important;
    border-radius: 5px !important;  /* Lagt till */
}

/* Extra säkerhet för links med has-link-color */
.has-link-color.wp-block-button__link,
a.has-link-color.wp-block-button__link {
    text-decoration: none !important;
    border-radius: 5px !important;  /* Lagt till */
}
/* Extra säkerhet för links med has-link-color */
.has-link-color.wp-block-button__link,
a.has-link-color.wp-block-button__link {
    text-decoration: none !important;
}

/* Standard: vänsterställt på mobil */
.center-desktop {
  text-align: left;
}

/* Från 768px och uppåt */
@media (min-width: 768px) {
  .center-desktop {
    text-align: center;
  }
}

/* ===========================
   STARTSIDA - GRIDS
   =========================== */

/* Grid Startsida */
.custom-grid-layout {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 1rem !important;
    align-items: center !important;
}

/* Portfolio-grid */
.custom-grid-layout-portfolio {
    grid-template-columns: 2.9fr 1fr 2fr !important;
    gap: 4rem !important;
    align-items: center !important;
    padding-top: 20px !important;
    padding-bottom: 0px !important;
}

.custom-grid-layout-portfolio hr,
.custom-grid-layout-portfolio .short-light-line {
    width: 100% !important;
    grid-column: 1 / -1;
}

.line-bottom {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.line-bottom .wp-block-separator {
    margin-top: auto;
    margin-bottom: 0.5em;
    width: 35%;
    height: 0;
    background: none;
    border: none;
    border-top: 1px solid #444444;
}

.custom-grid-layout-portfolio .line-bottom .wp-block-separator {
    width: 100% !important;
}

.portfolio-button {
    margin-top: 50px !important;
}

/* Startsida - responsiv */
@media (max-width: 1024px) {
    .custom-grid-layout {
        grid-template-columns: 1fr 1fr !important;
        gap: 2rem !important;
    }

    .portfolio-button {
        margin-top: 30px !important;
    }

    .custom-grid-layout-portfolio {
        grid-template-columns: 1fr 1fr !important;
        gap: 2rem !important;
    }
}

@media (max-width: 768px) {
    .custom-grid-layout {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
        display: grid !important;
        grid-template-rows: auto auto !important;
        gap: 1.5rem 1rem !important;
    }

    .custom-grid-layout .wp-block-buttons,
    .custom-grid-layout .line-bottom {
        justify-content: center !important;
        align-items: center !important;
    }

    .custom-grid-layout .line-bottom .wp-block-separator {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Bild - tar upp båda kolumnerna, rad 1 */
    .custom-grid-layout > .wp-block-image {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .custom-grid-layout > .wp-block-image img {
        width: 100% !important;
        height: auto !important;
    }

    /* Text - vänster kolumn, rad 2 */
    .custom-grid-layout > .wp-block-group.has-global-padding {
        grid-column: 1 !important;
        grid-row: 2 !important;
        padding-left: 0 !important;
        margin-left: 20px !important;
        text-align: left !important;
        align-self: center !important;
    }

    /* Knapp - höger kolumn, rad 2 */
    .custom-grid-layout > .svg-scroll-btn {
        grid-column: 2 !important;
        grid-row: 2 !important;
        margin: 0 20px 0 0 !important;
        width: 70px !important;
        height: 70px !important;
        align-self: center !important;
        justify-self: end !important;
    }

    .custom-grid-layout > .svg-scroll-btn svg {
        width: 70px !important;
        height: 70px !important;
    }

    .custom-grid-layout h3 {
        font-size: 24px !important;
        margin-bottom: 0.5rem !important;
    }

    .custom-grid-layout p {
        font-size: 16px !important;
        margin-bottom: 0.25rem !important;
    }

    .portfolio-button {
        margin-top: 20px !important;
    }

    .custom-grid-layout-portfolio {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }

    .custom-grid-layout-portfolio hr,
    .custom-grid-layout-portfolio .short-light-line {
        grid-column: 1 !important;
    }

    .custom-grid-layout-portfolio .wp-block-buttons,
    .custom-grid-layout-portfolio .line-bottom {
        justify-content: center !important;
        align-items: center !important;
    }

    .custom-grid-layout-portfolio .line-bottom .wp-block-separator {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ===========================
   MEET KAU BLOCK - STARTSIDA
   =========================== */

.wp-block-group.meet-kau-block,
.wp-block-group[class*="meet-kau"] {
    max-width: 1250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.wp-block-group.meet-kau-block .wp-block-group__inner-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.wp-block-group.meet-kau-block .wp-block-columns {
    max-width: 100% !important;
}

.wp-block-gallery.kau-gallery-carousel {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 1rem;
    scrollbar-width: none;
}

.wp-block-gallery.kau-gallery-carousel::-webkit-scrollbar {
    display: none;
}

.wp-block-gallery.kau-gallery-carousel .wp-block-image {
    flex: 0 0 auto;
    scroll-snap-align: start;
    width: 100%;
}

.meet-kau-columns {
    display: grid !important;
    grid-template-columns: 0.7fr 1fr !important;
    gap: 30px !important;
}

.meet-kau-columns .wp-block-column:last-child {
    display: block !important;
}

.meet-kau-columns .wp-block-column:last-child > .wp-block-image:nth-of-type(1),
.meet-kau-columns .wp-block-column:last-child > .wp-block-image:nth-of-type(2),
.meet-kau-columns .wp-block-column:last-child > .wp-block-image:nth-of-type(3) {
    display: inline-block !important;
    width: calc(33.33% - 7px) !important;
    vertical-align: top !important;
    margin-right: 10px !important;
    margin-bottom: 20px !important;
}

.meet-kau-columns .wp-block-column:last-child > .wp-block-image:nth-of-type(3) {
    margin-right: 0 !important;
}

.meet-kau-columns .wp-block-column:last-child .wp-block-image {
    margin: 0 !important;
    padding: 0 !important;
}

.meet-kau-columns .wp-block-column:last-child .wp-block-image img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}

.meet-kau-columns .wp-block-column:last-child .wp-block-image figure {
    margin: 0 !important;
    padding: 0 !important;
}

.meet-kau-columns .wp-block-column:last-child > .wp-block-heading,
.meet-kau-columns .wp-block-column:last-child > .wp-block-paragraph,
.meet-kau-columns .wp-block-column:last-child > .wp-block-buttons {
    width: 100% !important;
    clear: both !important;
    margin-top: 20px !important;
}

.meet-kau-block .line-bottom .wp-block-separator.short-light-line {
    margin-bottom: 2rem !important;
}

.meet-kau-block .grid-bottom-margin {
    margin-bottom: 90px;
}

@media (max-width: 768px) {
    .meet-kau-columns {
        grid-template-columns: 1fr !important;
    }

    .meet-kau-columns .wp-block-column:last-child > .wp-block-image {
        width: 100% !important;
        display: block !important;
        margin-right: 0 !important;
    }

    .meet-kau-block .line-bottom h2 {
        margin-bottom: 1.5rem !important;
    }

    .meet-kau-block .line-bottom.is-layout-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }

    .meet-kau-block .line-bottom .wp-block-group p,
    .meet-kau-block .line-bottom .wp-block-group h2 {
        text-align: center !important;
    }

    .meet-kau-block .line-bottom .wp-block-separator {
        grid-column: 1 !important;
        grid-row: 2 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 60% !important;
    }

    .meet-kau-columns {
        flex-direction: column !important;
    }

    .meet-kau-columns .wp-block-column .wp-block-image {
        width: 100% !important;
        margin: 0 !important;
    }

    .meet-kau-columns .wp-block-column .wp-block-image img {
        width: 100% !important;
        height: auto !important;
    }

    .meet-kau-columns .wp-block-column:last-child h3,
    .meet-kau-columns .wp-block-column:last-child p {
        text-align: center !important;
    }

    .meet-kau-columns .kau-gallery-carousel .wp-block-image:nth-child(2),
    .meet-kau-columns .kau-gallery-carousel .wp-block-image:nth-child(3),
    .meet-kau-columns .kau-gallery-carousel .wp-block-image:nth-child(4) {
        display: none !important;
    }
}

/* ===========================
   STORIES SECTION - FULLWIDTH
   =========================== */

.stories-section-outer {
    width: 100% !important;
    max-width: none !important;
    background-color: #ffffff;
    padding: 60px 25px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.stories-section-outer.wp-block-group,
.stories-section-outer.is-layout-constrained,
.stories-section-outer.is-layout-flow {
    max-width: none !important;
}

.stories-section-outer > .wp-block-group__inner-container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
}

.stories-grid-row-1.wp-block-columns {
    display: grid !important;
    grid-template-columns: 1.5fr 1fr 1fr !important;
    gap: 1.5rem !important;
    margin: 0 0 1.5rem 0 !important;
    width: 100% !important;
    max-width: none !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}

.stories-grid-row-1 > .wp-block-column {
    flex-basis: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.stories-grid-row-2.wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1.5fr !important;
    gap: 1.5rem !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}

.stories-grid-row-2 > .wp-block-column {
    flex-basis: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.stories-grid-row-1 figure.wp-block-image,
.stories-grid-row-2 figure.wp-block-image {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    flex: 1 !important;
}

.stories-grid-row-1 .wp-block-image img,
.stories-grid-row-2 .wp-block-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.stories-grid-row-1 .wp-block-column:nth-child(1) figure.wp-block-image,
.stories-grid-row-1 .wp-block-column:nth-child(2) figure.wp-block-image {
    height: 100% !important;
    min-height: 600px !important;
}

.stories-grid-row-1 .wp-block-column:nth-child(3) {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
}

.stories-grid-row-1 .wp-block-column:nth-child(3) figure.wp-block-image {
    flex: 1 !important;
    min-height: 292px !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(1) figure.wp-block-image,
.stories-grid-row-2 .wp-block-column:nth-child(2) figure.wp-block-image {
    height: 100% !important;
    min-height: 500px !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(3) {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 3rem !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(3) h2,
.stories-grid-row-2 .wp-block-column:nth-child(3) h3 {
    margin-bottom: 1.5rem !important;
    font-size: clamp(32px, 4vw, 52px) !important;
    line-height: 1.2 !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(3) p {
    margin-bottom: 2rem !important;
    line-height: 1.6 !important;
    font-size: 18px !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(3) figure.wp-block-image {
    max-width: 300px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    flex: 0 !important;
    margin-top: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

.stories-grid-row-2 .wp-block-column:nth-child(3) .wp-block-image img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
}

.stories-section-outer.alignfull {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 60px 25px !important;
    box-sizing: border-box !important;
}

@media (max-width: 768px) {
    .stories-section-outer {
        padding: 40px 0 !important;
    }

    .stories-grid-row-1.wp-block-columns,
    .stories-grid-row-2.wp-block-columns {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
        padding: 0 !important;
    }

    .stories-grid-row-1 figure.wp-block-image,
    .stories-grid-row-2 figure.wp-block-image {
        min-height: 400px !important;
        height: 400px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    .stories-grid-row-1 .wp-block-image img,
    .stories-grid-row-2 .wp-block-image img {
        height: 100% !important;
        object-fit: cover !important;
    }

    .stories-grid-row-1 .wp-block-column:nth-child(3) {
        flex-direction: column !important;
        gap: 1.5rem !important;
    }

    .stories-grid-row-2 .wp-block-column:nth-child(3) {
        padding: 2rem 20px !important;
        text-align: center !important;
        min-height: auto !important;
    }

    .stories-grid-row-2 .wp-block-column:nth-child(3) h2,
    .stories-grid-row-2 .wp-block-column:nth-child(3) h3 {
        font-size: clamp(28px, 6vw, 40px) !important;
    }

    .stories-grid-row-2 .wp-block-column:nth-child(3) figure.wp-block-image {
        margin: 2rem auto 0 !important;
        width: auto !important;
        height: auto !important;
    }

    .stories-grid-row-2 .wp-block-column:nth-child(3) .wp-block-image img {
        height: auto !important;
    }
}

/* ===========================
   GRACE SECTION - FULLWIDTH
   =========================== */

.grace-section-outer {
    position: relative !important;
    z-index: 1 !important;
}

.grace-section-outer.alignfull {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
   
}

.grace-section-inner {
    max-width: 1245px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

.grace-section-inner.is-layout-constrained,
.grace-section-inner.wp-block-group {
    max-width: 1245px !important;
}

.grace-columns.wp-block-columns {
    display: grid !important;
    grid-template-columns: 1.2fr 0.8fr !important;
    gap: 10rem !important;
    align-items: start !important;
    max-width: none !important;
    width: 100% !important;
}

.grace-columns > .wp-block-column {
    flex-basis: auto !important;
    max-width: none !important;
    width: 100% !important;
}

.grace-columns h2 {
    margin-bottom: 12px;
}

.grace-columns .wp-block-separator {
    width: 180px !important;
    margin-left: 0 !important;
}

.grace-columns .short-light-line-grace {
    margin-top: 0 !important;
    color:#444444;
}

.grace-columns .wp-block-column:last-child {
    position: relative !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.grace-columns .wp-block-column:last-child figure {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 !important;
    max-width: 500px !important;
}

.grace-columns > .wp-block-column:last-child::before {
    content: '' !important;
    position: absolute !important;
    top: 35px !important;
    left: 100px !important;
    right: -20px !important;
    bottom: -20px !important;
    background-color: white !important;
    z-index: 0 !important;
}

.grace-columns > .wp-block-column:last-child img {
    width: 100% !important;
    max-height: 540px !important;
    object-fit: contain !important;
    display: block !important;
}

/* Knapparna närmare varandra */
.grace-columns .own-col {
    gap: 4px !important;
}

@media (max-width: 768px) {
    .grace-section-outer.alignfull {
        padding: 60px 0 !important;
    }

    .grace-columns.wp-block-columns {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    .grace-columns .wp-block-column:first-child {
        text-align: center !important;
        padding: 0 25px !important;
    }

    .grace-columns .wp-block-separator {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .grace-columns .wp-block-column:first-child .wp-block-buttons {
        justify-content: center !important;
    }

    .grace-columns .wp-block-column:last-child {
        padding: 0 12px !important;
        justify-content: center !important;
    }

    .grace-columns .wp-block-column:last-child::before {
        display: none !important;
    }

    .grace-columns .wp-block-column:last-child figure {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .grace-columns .wp-block-column:last-child img {
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        height: auto !important;
        object-fit: cover !important;
        display: block !important;
    }
}

/* ===========================
   LENS SECTION
   =========================== */

.lens-section-wrapper {
    background-color: transparent !important;
    text-align: center !important;
    padding: 160px 20px 10px 20px !important;
    margin-top: -100px !important;
    margin-bottom: -90px !important; /* Flyttar fyra små bilder */
    position: relative !important;
    z-index: 10 !important;
}

.lens-section-wrapper > p {
    font-size: 14px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: #6b6b6b !important;
    margin-bottom: 2rem !important;
}

.lens-images-grid {
    display: flex !important;
    justify-content: center !important;
    gap: 1.5rem !important;
    flex-wrap: nowrap !important;
}

.lens-images-grid figure.wp-block-image {
    width: 240px !important;
    height: 160px !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;

}

.lens-images-grid img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.craft-celebration-cover.wp-block-cover {
    min-height: 600px !important;
    padding: 160px 20px 80px 20px !important;
    position: relative !important;
    z-index: 5 !important;
}

.craft-celebration-cover h2 {
    color: white !important;
    margin-bottom: 1.5rem !important;
    max-width: 800px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.craft-celebration-cover h2 em {
    font-style: italic !important;
}

.craft-celebration-cover p {
    color: white !important;
    margin-bottom: 2.5rem !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media (max-width: 768px) {
    .lens-section-wrapper {
        padding: 100px 20px 100px 20px !important;
        margin-top: -50px !important;
        margin-bottom: -200px !important;
    }

    .lens-section-wrapper > p {
        margin-bottom: 1.5rem !important;
    }

    .lens-images-grid {
        gap: 1rem !important;
    }

    .lens-images-grid figure.wp-block-image:nth-child(n+3) {
        display: none !important;
    }

    .lens-images-grid figure.wp-block-image {
        width: 160px !important;
        height: 110px !important;
    }

    .craft-celebration-cover.wp-block-cover {
        padding: 120px 20px 60px 20px !important;
        min-height: 500px !important;
    }
}

/* ===========================
   FOOTER
   =========================== */

footer .wp-block-column > .wp-block-group,
.site-footer .wp-block-column > .wp-block-group {
    justify-content: flex-start !important;
    gap: 8px !important;
}

.footer-newsletter input[type="email"] {
    width: 100% !important;
    padding: 12px !important;
    border: 1px solid #6b6b6b !important;
    margin-bottom: 1rem !important;
    font-family: Jost, sans-serif !important;
    font-size: 16px !important;
    letter-spacing: 1em;
    color: #444444 !important;
}

.footer-newsletter input[type="email"]::placeholder {
    color: #999999 !important;
    opacity: 1 !important;
}

.footer-newsletter input[type="email"]:focus {
    outline: none !important;
    border-color: #6b6b6b !important;
}

.footer-newsletter .wpforms-field-label,
.wpforms-container .wpforms-field-label {
    font-family: Jost, sans-serif !important;
    font-size: 20px !important;
    color: #6b6b6b !important;
}

#wpforms-606 .wpforms-field-label {
    color: #969696 !important;
    font-weight: 500;
}

.wpforms-required-label {
    color: #858585 !important;
}

#wpforms-606 .wpforms-field-medium {
    min-width: min(390px, 100%); /* Blir aldrig bredare än parent */
    background-color: #f8f6f5 !important;
    border-top-color: #f8f6f5 !important;
    border-right-color: #f8f6f5 !important;
    border-left-color: #f8f6f5 !important;
}

.wpforms-submit-container {
    margin-top: 1rem !important;
    text-align: center !important;
}

.wpforms-submit-container br {
    display: none !important;
}

button.wpforms-submit,
#wpforms-submit-606 {
    width: 100% !important;
    background-color: #530000 !important; /* Ändrad färg */
    border: 1px solid #530000 !important; /* Ändrad kantlinje */
    border-radius: 5px !important;
    color: white !important; /* Ändrad till vit text */
    padding: 15px 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    font-family: 'Jost', sans-serif !important;
    line-height: 1 !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.wpforms-field {
    padding: 0 !important;
}

.wpforms-submit-container {
    margin-top: 0 !important;
    padding: 0 !important;
}

button.wpforms-submit,
#wpforms-submit-606 {
    box-sizing: border-box !important;
    margin: 1rem 0 0 0 !important;
}

@media (max-width: 768px) {
    .footer-wrapper {
        padding: 40px 0 !important;
    }

    .footer-inner {
        padding: 25px !important;
    }

    .footer-inner .wp-block-columns {
        display: flex !important;
        flex-direction: column !important;
        gap: 2rem !important;
    }

    .footer-inner .wp-block-column {
        text-align: left !important;
        align-items: flex-start !important;
    }

    .footer-inner .wp-block-site-logo {
        text-align: left !important;
    }

    .footer-inner .has-small-font-size,
    .footer-inner p.has-small-font-size {
        text-align: left !important;
    }

    .footer-inner .wp-block-social-links {
        justify-content: flex-start !important;
    }

    .footer-inner .wp-block-columns p {
        text-align: left !important;
        font-size: 16px !important;
    }

    .footer-newsletter h3,
    .footer-newsletter .wp-block-heading {
        font-size: 24px !important;
        text-align: left !important;
    }

    .footer-newsletter p {
        font-size: 16px !important;
        text-align: left !important;
    }

    .footer-newsletter .wpforms-container {
        text-align: left !important;
    }
}

/* ===========================
   HAMBURGER MENU
   =========================== */

/* Hamburger knapp - maximal specificitet */
.site-header button.wp-block-navigation__responsive-container-open,
header button.wp-block-navigation__responsive-container-open,
.wp-block-navigation button.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
    background-color: #530000 !important;
    background: #530000 !important;
    border: 1px solid #530000 !important;
    border-radius: 5px !important;
    padding: 4px !important;
}

/* Hover */
.site-header button.wp-block-navigation__responsive-container-open:hover,
header button.wp-block-navigation__responsive-container-open:hover {
    background-color: #7a0000 !important;
    background: #7a0000 !important;
    border: 1px solid #7a0000 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Hamburger-ikonens streck */
.wp-block-navigation__responsive-container-open svg {
    fill: white !important;
}

/* Mobilmeny - Container positioning och layout (upp till 1024px) */
@media (max-width: 1024px) {
    
    .wp-block-navigation__responsive-container {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 50px !important;
        width: auto !important;
        height: 100vh !important;
        margin: 0 !important;
        padding: 0 !important;
        background-color: #000000 !important;
    }

    .wp-block-navigation__responsive-dialog {
        background-color: #000000 !important;
        height: 100vh !important;
        max-height: none !important;
        transform: translateX(100%) !important;
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .is-menu-open .wp-block-navigation__responsive-dialog {
        transform: translateX(0) !important;
    }

    /* Force samma animation för alla storlekar */
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
        transform: translateX(0) !important;
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-dialog {
        transform: translateX(100%) !important;
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .wp-block-navigation__responsive-container-content {
        padding: 80px 40px !important;
    }

    /* ALLA länkar i hamburgermenyn är vita - inklusive dropdown - ALLA selectors */
    .wp-block-navigation__responsive-container *,
    .wp-block-navigation__responsive-container a,
    .wp-block-navigation__responsive-container.is-menu-open *,
    .wp-block-navigation__responsive-container.is-menu-open a,
    .wp-block-navigation__responsive-container-content *,
    .wp-block-navigation__responsive-container-content a,
    .wp-block-navigation__responsive-dialog *,
    .wp-block-navigation__responsive-dialog a,
    .wp-block-navigation__responsive-container .wp-block-navigation-item a,
    .wp-block-navigation__responsive-container .wp-block-navigation-item__label,
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container a,
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item__label,
    .wp-block-navigation__responsive-container .wp-block-navigation__item__content a,
    .site-header .wp-block-navigation__responsive-container *,
    .site-header .wp-block-navigation__responsive-container a,
    .site-header.scrolled .wp-block-navigation__responsive-container *,
    .site-header.scrolled .wp-block-navigation__responsive-container a {
        color: #ffffff !important;
    }

    /* Dropdown i hamburgermenyn - svart bakgrund */
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container {
        background-color: #000000 !important;
        color: #ffffff !important;
    }

    .wp-block-navigation__responsive-container-close {
        position: absolute !important;
        top: 20px !important;
        right: 20px !important;
        z-index: 999 !important;
        border-radius: 0 !important;
        background-color: transparent !important;
    }

    .wp-block-navigation__responsive-container-close svg {
        fill: #ffffff !important;
    }

    .wp-block-navigation__item__content a {
        color: #ffffff !important;
    }

    header .wp-block-buttons {
        display: none !important;
    }
}

/* Visa hamburger från 782px och nedåt */
@media (min-width: 600px) and (max-width: 1024px) {
    .wp-block-navigation__responsive-container-open {
        display: flex !important;
    }

     /* Fixa clickability för hamburgerknappen */
    .site-header button.wp-block-navigation__responsive-container-open,
    header button.wp-block-navigation__responsive-container-open {
        position: relative !important;
        z-index: 9999 !important;
        pointer-events: auto !important;
        color: #ffffff !important;
    }

    .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__container {
        display: none !important;
    }
}


/* ===========================
   STANDARD PAGE
   =========================== */

.wp-block-group .wp-block-buttons .wp-block-button__link {
    transition: all 0.3s ease;
}

.wp-block-group .wp-block-buttons .wp-block-button__link:hover {
    background-color: #7a0000; /* Ändrad hover-färg */
    box-shadow: 0 4px 12px rgba(41, 41, 41, 0.282);
}

.wp-block-cover::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100px;
    background: linear-gradient(to bottom, transparent, rgba(248, 246, 245, 0.3));
    pointer-events: none;
}

@media (max-width: 768px) {
    .wp-block-cover[style*="min-height:400px"] {
        min-height: 300px !important;
    }
}

.wp-block-button__link:focus {
    outline: 2px solid #252525;
    outline-offset: 2px;
}

/* ===========================
   RESPONSIVE MENU - ALL BREAKPOINTS (600px-1024px)
   Consolidated rules for consistent styling
   =========================== */

/* Base rule: Hamburgermenyn ska ALLTID ha vit text - ALLA selectors */
body .wp-block-navigation__responsive-container *,
body .wp-block-navigation__responsive-container a,
body .wp-block-navigation__responsive-container.is-menu-open *,
body .wp-block-navigation__responsive-container.is-menu-open a,
body.scrolled .wp-block-navigation__responsive-container *,
body.scrolled .wp-block-navigation__responsive-container a,
.site-header .wp-block-navigation__responsive-container *,
.site-header .wp-block-navigation__responsive-container a,
.site-header.scrolled .wp-block-navigation__responsive-container *,
.site-header.scrolled .wp-block-navigation__responsive-container a,
.wp-block-navigation__responsive-container *,
.wp-block-navigation__responsive-container a,
.wp-block-navigation__responsive-container-content *,
.wp-block-navigation__responsive-container-content a,
.wp-block-navigation__responsive-dialog *,
.wp-block-navigation__responsive-dialog a,
.wp-block-navigation__responsive-container .wp-block-navigation-item a,
.wp-block-navigation__responsive-container .wp-block-navigation-item__label,
.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container a,
.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item__label,
.wp-block-navigation__responsive-container .wp-block-navigation__item__content a {
    color: #ffffff !important;
}

/* Extended rule for 600px-1024px where hamburger is shown */
@media (min-width: 600px) and (max-width: 1024px) {
    /* Force vit text med högsta specificitet */
    .site-header .wp-block-navigation__responsive-container *,
    .site-header .wp-block-navigation__responsive-container a,
    .site-header.scrolled .wp-block-navigation__responsive-container *,
    .site-header.scrolled .wp-block-navigation__responsive-container a,
    .wp-block-navigation__responsive-container *,
    .wp-block-navigation__responsive-container a,
    .wp-block-navigation__responsive-container.is-menu-open *,
    .wp-block-navigation__responsive-container.is-menu-open a,
    .wp-block-navigation__responsive-container-content *,
    .wp-block-navigation__responsive-container-content a,
    .wp-block-navigation__responsive-dialog *,
    .wp-block-navigation__responsive-dialog a,
    .wp-block-navigation__responsive-container .wp-block-navigation-item a,
    .wp-block-navigation__responsive-container .wp-block-navigation-item__label,
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container a,
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item__label,
    .wp-block-navigation__responsive-container .wp-block-navigation__item__content a {
        color: #ffffff !important;
    }
    
    /* Svart bakgrund */
    .wp-block-navigation__responsive-container,
    .wp-block-navigation__responsive-container.is-menu-open,
    .wp-block-navigation__responsive-dialog {
        background-color: #000000 !important;
    }
    
    /* Dropdown bakgrund */
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container {
        background-color: #000000 !important;
        color: #ffffff !important;
    }
    
    /* Close button vit */
    .wp-block-navigation__responsive-container-close svg {
        fill: #ffffff !important;
    }
}

/* Dölj kontaktknappen ENDAST i hamburgermenyn */
.wp-block-navigation__responsive-container .wp-block-buttons {
    display: none !important;
}

/* ===========================
   WPFORMS STYLING
   =========================== */

.wpforms-container,
.wpforms-field-label,
.wpforms-field input,
.wpforms-field textarea,
.wpforms-field select {
    font-family: 'Jost', sans-serif !important;
}

.wpforms-field {
    width: 100% !important;
    margin-bottom: 32px !important;
}

.wpforms-field input[type="text"],
.wpforms-field input[type="email"],
.wpforms-field input[type="tel"],
.wpforms-field input[type="url"],
.wpforms-field input[type="number"],
.wpforms-field input[type="date"],
.wpforms-field select,
.wpforms-field textarea {
    border: none !important;
    border-bottom: 1px solid #2f2f2f !important;
    border-radius: 0 !important;
    padding: 12px 0 !important;
    font-size: 1rem !important;
    color: #444444 !important;
    background: transparent !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.3s ease;
    margin: 0 !important;
}

.wpforms-field input::placeholder,
.wpforms-field textarea::placeholder {
    color: #9a9a9a !important;
    font-style: normal !important;
}

.wpforms-field input:focus,
.wpforms-field textarea:focus,
.wpforms-field select:focus {
    border-bottom-color: #252525 !important;
    outline: none !important;
    box-shadow: none !important;
}

.wpforms-field-label {
    font-size: 1rem !important;
    font-weight: 400 !important;
    color: #6b6b6b !important;
    margin-bottom: 8px !important;
    display: block !important;
    width: 100% !important;
}

.wpforms-required-label {
    color: #252525 !important;
}

.wpforms-field textarea {
    min-height: 150px !important;
    resize: vertical;
    padding-top: 12px !important;
}

button.wpforms-submit,
#wpforms-submit-606,
#wpforms-submit-753 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 100% !important;
    background: #530000 !important; /* Ändrad färg */
    color: white !important; /* Ändrad till vit text */
    border: 1px solid #530000 !important; /* Ändrad kantlinje */
    border-radius: 5px !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 3px !important;
    line-height: 16px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    padding: 15px 20px !important;
    margin-top: 16px !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    transition: background 0.3s ease !important;
}

button.wpforms-submit:hover,
#wpforms-submit-606:hover,
#wpforms-submit-753:hover {
    background: #7a0000 !important; /* Ändrad hover-färg */
    color: white !important; /* Ändrad till vit text */
    border: 1px solid #7a0000 !important; /* Ändrad hover-kantlinje */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

.wpforms-submit-container {
    margin-top: 24px !important;
}

.wpforms-container {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.wpforms-field-container {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.wpforms-field-name,
.wpforms-field-email,
.wpforms-field-text,
.wpforms-field-textarea {
    max-width: 100% !important;
    width: 100% !important;
}

@media (max-width: 768px) {
    .wpforms-submit {
        padding: 16px 24px !important;
    }
}

/* ===========================
   OM OSS
   =========================== */

.about-image-section {
    margin-top: -390px !important;
    z-index: 10;
    position: relative;
}

.about-image-section .wp-block-column:first-child img {
    clip-path: inset(0 0 100px 0) !important;
}

.about-overlap-image img {
    clip-path: inset(0 0 100px 0) !important;
}

.about-image-section .wp-block-columns {
    gap: 15px !important;
    align-items: flex-start !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important;
    transform: translateX(25px) !important;
}

.about-image-section .wp-block-column:first-child {
    flex: 0 0 auto;
    max-width: 500px;
}

.about-image-section .wp-block-column:last-child {
    flex: 0 0 auto;
    width: auto;
}

.vertical-name {
    writing-mode: vertical-lr !important;
    font-family: 'Jost', sans-serif;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 8px;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}

.about-meet-kau-block .short-light-line {
    width: 190px;
}

div.wp-block-cover.about-hero {
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

div.wp-block-cover.about-hero .wp-block-cover__inner-container {
    padding-top: 250px !important;
    width: 100%;
}

.about-image-section .wp-block-column:first-child {
    flex: 0 0 500px !important;
    width: 500px !important;
    max-width: 500px !important;
}

.about-image-section .wp-block-columns {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
}


/* Fixa columns layout och höjd */
.consultation-form-section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    align-items: stretch !important;
}

.consultation-form-section > .wp-block-column {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* Mittenkolumnen tar mer plats */
.consultation-form-section > .wp-block-column:nth-child(2) {
    flex: 2;
}

/* Bildkolumnerna */
.consultation-form-section > .wp-block-column:first-child,
.consultation-form-section > .wp-block-column:last-child {
    flex: 1;
}

/* Bilderna fyller hela höjden */
.consultation-form-section .wp-block-image {
    height: 100%;
    display: flex;
}

.consultation-form-section .wp-block-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Dölj bildkolumner vid 1024px och lägg till padding på mittenkolumn */
@media (max-width: 1024px) {
    .consultation-form-section > .wp-block-column:first-child,
    .consultation-form-section > .wp-block-column:last-child {
        display: none !important;
    }

    .consultation-form-section > .wp-block-column:nth-child(2) {
        flex: 1 !important;
        width: 100% !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
}

@media (max-width: 1024px) {
    .consultation-form-section > .wp-block-column:first-child,
    .consultation-form-section > .wp-block-column:last-child {
        display: none !important;
    }

    .consultation-form-section > .wp-block-column:nth-child(2) {
        flex: 1 !important;
        width: 100% !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
    }

    div.wp-block-cover.about-hero .wp-block-cover__inner-container {
        padding-top: 180px !important;
        width: 100%;
    }

    .about-image-section {
        margin-top: -450px !important; /* Behåll samma */
    }

    .about-image-section .wp-block-columns {
        max-width: 580px !important; /* Mindre bild istället för calc(100vw - 50px) */
        padding: 0 25px !important;
    }

    .about-image-section .wp-block-column:first-child {
        flex: 0 0 auto;
        max-width: 580px !important; /* Mindre bild */
        width: 100% !important;
    }

    .about-image-section .wp-block-column:first-child img {
        clip-path: inset(0 0 50px 0) !important;
    }
}

@media (max-width: 768px) {
    .about-image-section {
        margin-top: -150px !important;
    }

    .about-image-section .wp-block-columns {
        flex-direction: column !important;
        align-items: center !important;
        transform: translateX(0) !important;
        max-width: 480px !important;
        padding: 0 25px !important;
    }

    .about-image-section .wp-block-column:first-child {
        max-width: none !important;
        width: 100% !important;
    }

    .about-image-section .wp-block-column:first-child img {
        clip-path: inset(0 0 40px 0) !important;
    }

    .about-image-section .wp-block-column:last-child {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .about-image-section {
        margin-top: -180px !important;
    }

        .about-image-section .wp-block-columns {
        flex-direction: column !important;
        align-items: center !important;
        transform: translateX(0) !important;
        max-width: 320px !important;
        padding: 0 25px !important;
    }

    .about-image-section .wp-block-column:first-child {
        max-width: none !important;
        width: 100% !important;
    }

    .about-image-section .wp-block-column:first-child img {
        clip-path: inset(0 0 30px 0) !important;
    }
}

.wp-block-columns.about-stats {
    display: grid !important;
    grid-template-columns: 2fr 1fr !important;
    gap: 32px !important;
}

@media (max-width: 768px) {
    .wp-block-columns.about-stats {
        grid-template-columns: 1fr !important;
    }
}


/* ===========================
   SEPARATOR FIX
   =========================== */

.wp-block-column .wp-block-separator {
    margin-inline-start: 0;
    margin-inline-end: 0;
    width: 100%;
}

/* ===========================
   MÖT KAU BLOCK - OM OSS
   =========================== */

.about-meet-kau-block {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 25px;
    padding-right: 25px;
    box-sizing: border-box;
}

.mot-kau-grid.alignfull {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.mot-kau-grid .wp-block-column > .wp-block-group.has-global-padding {
    padding: 0 !important;
}

@media (max-width: 768px) {
    .mot-kau-grid .wp-block-columns {
        flex-direction: column !important;
        gap: 32px !important;
    }

    .mot-kau-grid .wp-block-column {
        width: 100% !important;
    }
}

/* Kadence Tabs - Complete Custom Styling */

/* Override WordPress/Ollie content width för tabs-blocket */
.wp-block-kadence-tabs {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}

.wp-block-kadence-tabs.alignnone {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ta bort Kadence's default border runt hela blocket */
.kt-tabs-wrap {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Horisontell layout - tabs till vänster, innehåll till höger */
.kt-tabs-wrap.kt-tabs-layout-vtabs {
    display: flex !important;
    flex-direction: row !important;
    gap: 3rem !important;
    align-items: flex-start !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Ta bort default list-styling och borders */
.kt-tabs-title-list {
    list-style: none;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: none !important;
    background: transparent !important;
    width: 380px !important;
    flex-shrink: 0 !important;
}

/* Tab-items - ta bort Kadence's blå ramar */
.kt-tabs-title-list .kt-title-item {
    margin: 0;
    border: none !important;
    border-bottom: 1px solid #e5e5e5 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Tab-länkarna - override alla Kadence-stilar */
.kt-tabs-title-list .kt-title-item a.kt-tab-title {
    display: block;
    text-align: left;
    padding: 1rem 0 !important;
    text-decoration: none;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: #999 !important;
    transition: color 0.3s ease;
    position: relative;
}

/* Ta bort pseudo-elements från Kadence */
.kt-tabs-title-list .kt-title-item a.kt-tab-title::before,
.kt-tabs-title-list .kt-title-item a.kt-tab-title::after {
    display: none !important;
    content: none !important;
}

/* Aktiv tab */
.kt-tabs-title-list .kt-tab-title-active a.kt-tab-title,
.kt-tabs-title-list .kt-title-item.kt-tab-title-active a.kt-tab-title {
    color: #333 !important;
    font-weight: 500;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Hover state */
.kt-tabs-title-list .kt-title-item a.kt-tab-title:hover {
    color: #333 !important;
    background: transparent !important;
}

/* Tab-text span */
.kt-tabs-title-list .kt-title-text {
    background: transparent !important;
    border: none !important;
}

/* Dölj accordion-titlar i desktop */
.kt-tabs-accordion-title {
    display: none;
}

/* Tab-innehåll wrap */
.kt-tabs-content-wrap {
    flex: 1 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    max-width: none !important;
}

/* Tab inner content */
.kt-tab-inner-content {
    animation: fadeIn 0.4s ease;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

.kt-tab-inner-content-inner {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

.wp-block-kadence-tab {
    max-width: none !important;
    padding: 0 !important;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Responsiv: Tablet - lägg till padding */
@media (max-width: 1280px) {
    .kt-tabs-wrap.kt-tabs-layout-vtabs {
        padding: 0 2rem !important;
    }
}

/* Mobil: Accordion */
@media (max-width: 850px) {
    .kt-tabs-wrap.kt-tabs-layout-vtabs {
        flex-direction: column;
        padding: 0 1.5rem !important;
    }

    ul.kt-tabs-title-list {
        display: none;
    }

    .kt-tabs-accordion-title {
        display: block;
        margin-bottom: 0;
        border: none !important;
        border-bottom: 1px solid #e5e5e5 !important;
        background: transparent !important;
    }

    .kt-tabs-accordion-title a.kt-tab-title {
        display: block;
        padding: 1rem 0 !important;
        text-decoration: none;
        color: #999 !important;
        text-transform: uppercase;
        letter-spacing: 0.15em;
        font-size: 0.875rem;
        background: transparent !important;
        border: none !important;
    }

    .kt-tabs-accordion-title.kt-tab-title-active a.kt-tab-title {
        color: #333 !important;
        font-weight: 500;
        background: transparent !important;
    }

    .kt-tab-inner-content {
        margin-bottom: 2rem;
        padding-top: 2rem !important;
    }
}

/* Ta bort gap, använd margin istället */
.kt-tabs-wrap.kt-tabs-layout-vtabs {
    display: flex !important;
    flex-direction: row !important;
    gap: 0 !important; /* Ta bort gap */
    align-items: flex-start !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Lägg margin-right på tabs-listan istället */
ul.kt-tabs-title-list {
    list-style: none;
    padding: 0 !important;
    margin: 0 !important;
    margin-right: 5rem !important; /* Gap endast till vänster om content */
    display: flex;
    flex-direction: column;
    gap: 0;
    border: none !important;
    background: transparent !important;
    width: 280px !important;
    flex-shrink: 0 !important;
}

/* Content wrap utan margin */
.kt-tabs-content-wrap {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Force tabs att fortsätta fungera även på tablet-storlek */
@media (max-width: 1024px) and (min-width: 851px) {
    /* Behåll horisontell layout längre */
    .kt-tabs-wrap.kt-tabs-layout-vtabs {
        flex-direction: row !important;
    }

    ul.kt-tabs-title-list {
        display: flex !important;
    }

    .kt-tabs-accordion-title {
        display: none !important;
    }
}

/* Fixa clickability vid responsive */
.kt-tabs-title-list {
    position: relative;
    z-index: 10 !important;
}

.kt-tabs-title-list .kt-tab-title {
    position: relative;
    z-index: 10 !important;
    pointer-events: auto !important;
}

/* Ta bort eventuella overlay-element */
.kt-tabs-wrap::before,
.kt-tabs-wrap::after {
    pointer-events: none !important;
}

/* Endast group-block som är parent/sibling till tabs */
.wp-block-group:has(.kt-tabs-wrap) {
    pointer-events: none !important;
}

.wp-block-group:has(.kt-tabs-wrap) * {
    pointer-events: auto !important;
}

/* Alternativt: om group är högre upp i hierarkin */
.wp-block-group .kt-tabs-wrap {
    pointer-events: auto !important;
}

.wp-block-group .kt-tabs-title-list {
    pointer-events: auto !important;
    position: relative;
    z-index: 100 !important;
}

.tabs-container { z-index: 1; }


/* ==== Bakgrundsfärg sidor ====*/

/* Ljusgrå bakgrund för kontaktsidan */
body.page-id-1052 {
    background-color: #F8F6F5 !important;
}


/* ===========================
   KONTAKTFORMULÄR KOLUMNER - ENDAST för kontaktformuläret
   =========================== */

/* Force bilden att matcha formulärets höjd - BARA för alignwide columns */
body.page-id-1052 .wp-block-columns.alignwide {
    display: flex !important;
    align-items: stretch !important;
    column-gap: 2rem !important;
}

body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column {
    display: flex !important;
    flex: 1 1 0 !important;
    width: 50% !important;
    max-width: 50% !important;
}

/* Ta bort alla constraints från figure och img - BARA i alignwide columns */
body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column figure.wp-block-image {
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    width: 100% !important;
    display: flex !important;
}

body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column figure.wp-block-image img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* Ta bort width-begränsning från group-blocket - BARA i alignwide columns */
body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column > .wp-block-group {
    box-sizing: border-box !important;
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Se till att wpforms tar full bredd - BARA i alignwide columns */
body.page-id-1052 .wp-block-columns.alignwide .wpforms-container {
    max-width: none !important;
    width: 100% !important;
}

/* Wrappa kolumner vid 1024px - BARA alignwide columns */
@media (max-width: 1024px) {
    body.page-id-1052 .wp-block-columns.alignwide {
        flex-wrap: wrap !important;
        flex-direction: column-reverse !important;
    }

    body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    /* Bilden ska inte längre vara 100% höjd */
    body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column figure.wp-block-image {
        height: auto !important;
    }

    body.page-id-1052 .wp-block-columns.alignwide > .wp-block-column figure.wp-block-image img {
        height: auto !important;
    }
}

/* När scrollad - svarta länkar ENDAST i desktop */
@media (min-width: 783px) {
    .site-header.scrolled .wp-block-navigation .wp-block-navigation-item a {
        color: #252525 !important;
    }
}

/* Override WordPress core rule för hamburgermenyn */
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open *,
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open a,
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a {
    color: white !important;
}

/* Dölj kontaktknappen ENDAST i hamburgermenyn */
.wp-block-navigation__responsive-container .wp-block-buttons {
    display: none !important;
}

/* ===========================
   DROPDOWN MENU STYLING
   =========================== */

/* Ta bort rundade hörn och borders */
.wp-block-navigation .wp-block-navigation__submenu-container {
    border-radius: 0 !important;
    border-bottom: 1px solid #252525 !important;
    background-color: #252525 !important;
    padding-top: 0 !important;
    margin-top: 8px !important;
    
}

/* Animation */
.wp-block-navigation__submenu-container {
    transition: opacity 0.2s ease, transform 0.2s ease !important;
    transform: translateY(-8px);
}

/* När synlig */
.wp-block-navigation-item:hover .wp-block-navigation__submenu-container {
    transform: translateY(0) !important;
    min-width: 307px !important;
}

/* Vit textfärg i dropdown */
.wp-block-navigation__submenu-container a,
.wp-block-navigation__submenu-container .wp-block-navigation-item__label {
    color: white !important;
    letter-spacing: 2px !important;
    min-width: 307px !important;
}

.wp-block-navigation__submenu-container a.wp-block-navigation-item__content span {
    color: #ffffff !important;
}

/* Border mellan länkar */
.wp-block-navigation__submenu-container .wp-block-navigation-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 0 !important;
    min-width: 307px !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item:last-child {
    border-bottom: none !important;
    min-width: 307px !important;
}

/* Padding på länkar */
.wp-block-navigation__submenu-container .wp-block-navigation-item a {
    padding: 16px 24px !important;
    display: block !important;
    width: 100% !important;
}

/* Hover - mörkröd bakgrund */
.wp-block-navigation__submenu-container .wp-block-navigation-item:hover {
    background-color: #530000 !important; /* KORRIGERING: Använd mörkröd hover-färg */
    border-radius: 0 !important;
}

.wp-block-navigation__submenu-container a:hover,
.wp-block-navigation__submenu-container a:hover .wp-block-navigation-item__label {
    color: white !important; /* KORRIGERING: Vit textfärg på mörkröd bakgrund */
}

/* Force synlig vid hover */
.wp-block-navigation-item:hover > .wp-block-navigation__submenu-container {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    width: auto !important;
}

/* Ta bort underline från huvudlänk */
.wp-block-navigation-item.has-child > button,
.wp-block-navigation-item.has-child .wp-block-navigation-item__content {
    text-decoration: none !important;
}

/* Dropdown-länkar ska ALLTID vara vita, även när scrollat */
.site-header.scrolled .wp-block-navigation__submenu-container a,
.site-header.scrolled .wp-block-navigation__submenu-container .wp-block-navigation-item__label {
    color: white !important;
}

.kundcase .site-header.scrolled .wp-block-navigation__submenu-container a,
.kundcase .site-header.scrolled .wp-block-navigation__submenu-container .wp-block-navigation-item__label {
    color: white !important;
}

.kundcase-page .site-header .wp-block-navigation__submenu-container a,
.kundcase-page .site-header .wp-block-navigation__submenu-container span {
    color: white !important;
}

.svg-scroll-btn {
  display: block;
  margin: 24px auto 0 !important; /* Eller margin-top: 5rem; margin-left: 0; */
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none !important;
  width: 90px;
  height: 90px;
}

.svg-scroll-btn circle {
  transition: fill 0.3s ease;
}

.svg-scroll-btn path {
  transition: stroke 0.3s ease;
}

.svg-scroll-btn:hover circle {
  fill: #530000;
}

a.svg-scroll-btn:hover circle {
  fill: #530000;
  color: rgba(255, 255, 255, 0.7);
}

.svg-scroll-btn:hover path {
  stroke: rgba(255, 255, 255, 0.7);
}

.svg-scroll-btn path {
  stroke: white !important;
}

.svg-scroll-btn:hover {
  transform: translateY(3px);
}


.svg-scroll-btn-right {
  display: block;
  margin: 0px 0 0 0 !important;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none !important;
  width: 90px;
  height: 90px;
}
.svg-scroll-btn-right circle {
  transition: fill 0.3s ease;
}
.svg-scroll-btn-right path {
  transition: stroke 0.3s ease;
}
.svg-scroll-btn-right:hover circle {
  fill: #7a0000;
}
.svg-scroll-btn-right:hover path {
  stroke: #000;
}
.svg-scroll-btn-right:hover {
  transform: translateY(3px);
}

a.svg-scroll-btn-right:hover circle {
  fill: #7a0000;
  color: #fff(255, 255, 255, 0.7);
}

.svg-scroll-btn-right:hover path {
  stroke: #fff;
}

/* Separator på Om oss sidan och footer */

.short-separator-section {
    width: 200px;
}

.separator-footer-color {
    color: #252525;
}


/* CTA kolumner tjänster */
.cta-three-columns {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
}

.cta-three-columns > .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
}

/* Endast bildkolumnerna får 6/5 aspect ratio */
.cta-three-columns > .wp-block-column:first-child .wp-block-image,
.cta-three-columns > .wp-block-column:last-child .wp-block-image,
.cta-three-columns > .wp-block-column:first-child figure,
.cta-three-columns > .wp-block-column:last-child figure {
    flex: 1 !important;
    aspect-ratio: 6/5 !important;
}

.cta-three-columns img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important; /* Desktop: centrera */
}

/* Öka padding på den vita CTA-boxen */
.cta-three-columns > .wp-block-column:nth-child(2) .wp-block-group {
    padding-top: 95px !important;
    padding-bottom: 95px !important;
}


/* Responsive - ändra focal point */
@media (max-width: 768px) {
    .cta-three-columns {
        grid-template-columns: 1fr !important;
    }
    
    /* Bilderna behåller 6/5 aspect ratio men ändrar focal point */
    .cta-three-columns img {
        object-position: center center !important; /* Fokusera på toppen av bilden */
    }
}


.testimonial-header {
    justify-content: space-between !important;
    column-gap: 0 !important;
}

.testimonial-header .wp-block-kadence-icon {
    gap: 0 !important;
}

.testimonial-header .wp-block-kadence-single-icon {
    margin: 0 !important;
}



/* Ta bort underline och lägg till färgändring på hover för inläggsrubriker */
.wp-block-post-title a {
    text-decoration: none !important;
}

.wp-block-post-title a:hover {
    color: #6b6b6b !important;
    text-decoration: none !important;
}

/* Hover färg för kategorier och taggar */
.wp-block-post-terms a:hover {
    color: #6b6b6b !important;
    text-decoration: none !important;
}


/* ===========================
   BLOG/ARCHIVE/SINGLE POST NAVBAR
   =========================== */

/* Navbar på inläggssidor OCH arkivsida - mörk text ENDAST desktop */
@media (min-width: 783px) {
    body.single-post .site-header .wp-block-navigation .wp-block-navigation-item a,
    body.single-post .site-header .wp-block-navigation *,
    body.blog .site-header .wp-block-navigation .wp-block-navigation-item a,
    body.blog .site-header .wp-block-navigation *,
    body.archive .site-header .wp-block-navigation .wp-block-navigation-item a,
    body.archive .site-header .wp-block-navigation * {
        color: #252525 !important;
    }
    
    /* Dropdown på desktop - INTE i responsive container */
    body.single-post .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container,
    body.blog .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container,
    body.archive .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container {
        background-color: #252525 !important;
    }
    
    body.single-post .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a,
    body.blog .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a,
    body.archive .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a {
        color: white !important;
    }
    
    body.single-post .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover,
    body.blog .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover,
    body.archive .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover {
        background-color: #530000 !important;
    }
}

/* Fix: mobile menu on posts/blog/archive should have white links */
@media (max-width: 1024px) {
    body.single-post .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item a,
    body.single-post .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item__label,
    body.blog .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item a,
    body.blog .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item__label,
    body.archive .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item a,
    body.archive .site-header .wp-block-navigation__responsive-container .wp-block-navigation-item__label {
        color: #ffffff !important;
        background-color: #000;
    }
}


/* Logo swap - visa dark logo på inläggssidor OCH arkivsida */
body.single-post .logo-light,
body.blog .logo-light,
body.archive .logo-light {
    opacity: 0;
    visibility: hidden;
    display: none;
    width: 110px !important;
}

body.single-post .logo-dark,
body.blog .logo-dark,
body.archive .logo-dark {
    opacity: 1;
    visibility: visible;
    display: block;
    width: 110px !important;
}

/* Kontaktknappen på inläggssidor OCH arkivsida */
body.single-post .site-header .wp-block-buttons .wp-block-button__link[href*="kontakt"],
body.single-post .site-header a.wp-block-button__link[href*="kontakt"],
body.blog .site-header .wp-block-buttons .wp-block-button__link[href*="kontakt"],
body.blog .site-header a.wp-block-button__link[href*="kontakt"],
body.archive .site-header .wp-block-buttons .wp-block-button__link[href*="kontakt"],
body.archive .site-header a.wp-block-button__link[href*="kontakt"] {
    border: 1px solid #530000 !important;
}

/* Override: Hamburger på inläggssidor ska ha VIT text */
@media (max-width: 782px) {
    body.single-post .wp-block-navigation__responsive-container *,
    body.single-post .wp-block-navigation__responsive-container a,
    body.blog .wp-block-navigation__responsive-container *,
    body.blog .wp-block-navigation__responsive-container a,
    body.archive .wp-block-navigation__responsive-container *,
    body.archive .wp-block-navigation__responsive-container a {
        color: #ffffff !important;
    }
}

/* Visa undermenyer direkt i hamburgermenyn - ingen dropdown */
@media (max-width: 1024px) {
    /* Dölj dropdown-pilen */
    .wp-block-navigation__responsive-container .wp-block-navigation-item__content .wp-block-navigation__submenu-icon {
        display: none !important;
    }
    
    /* Visa undermenyn direkt - ingen dropdown */
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        position: static !important;
        box-shadow: none !important;
        border: none !important;
        background: transparent !important;
        padding-left: 1.5rem !important;
        margin-top: 0.5rem !important;
    }
    
    /* Indentera undermenyns länkar */
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a {
        padding-left: 1rem !important;
        font-size: 0.9em !important;
    }
    
    /* Ta bort border på undermeny-items */
    .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item {
        border-bottom: none !important;
    }

}

/* ===========================
   BLOG POST STYLING
   =========================== */

/* Comment form - remove rounded corners */
#comment,
textarea#comment,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    border-radius: 0 !important;
}

/* Submit buttons - remove rounded corners */
.form-submit *,
.form-submit button,
.form-submit input[type="submit"],
.form-submit .wp-block-button__link {
    border-radius: 5px !important;
}

/* Post titles */
body.single-post h1.wp-block-post-title {
    font-size: clamp(32px, 5vw, 48px) !important;
}

body.single-post h2.wp-block-post-title {
    font-size: 1.5rem !important;
}

@media (max-width: 768px) {
    body.single-post h1.wp-block-post-title {
        font-size: clamp(28px, 6vw, 36px) !important;
    }
}

/* Featured images - maintain aspect ratio */
/* .wp-block-post-featured-image {
    aspect-ratio: 16/9 !important;
}

.wp-block-post-featured-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
} */


/* Desktop dropdown - alltid vit text */
.site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container *,
.site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a,
.site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container *,
.site-header.scrolled .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a {
    color: #ffffff !important;
}



/* Mobile menu fix */

@media (max-width: 1024px) {

    .site-header .wp-block-navigation__responsive-container.is-menu-open {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        z-index: 9999 !important;
        background-color: #000000 !important;
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
        mix-blend-mode: normal !important;
    }

    .site-header .wp-block-navigation__responsive-container.is-menu-open 
    .wp-block-navigation__responsive-dialog {
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        background: transparent !important;
        max-height: 100vh !important;
        overflow-y: auto !important;
    }

    .site-header .wp-block-navigation__responsive-container.is-menu-open 
    .wp-block-navigation__container {
        display: block !important;
    }

    .site-header .wp-block-navigation__responsive-container.is-menu-open,
    .site-header .wp-block-navigation__responsive-container.is-menu-open * {
        color: #ffffff !important;
        opacity: 1 !important;
        visibility: visible !important;
        text-shadow: none !important;
        filter: none !important;
        mix-blend-mode: normal !important;
    }
}

/* Mobilmeny: ta bort Ollies dropdown-stilar helt och gör allt svart */
@media (max-width: 1024px) {

  /* Undermenyn – ta bort rundade hörn, borders och shadows */
  .site-header .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container,
  .site-header .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item,
  .site-header .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
      background-color: #000 !important;
      border: none !important;
      border-radius: 0 !important;
      box-shadow: none !important;
  }

  /* Ta bort standard-ikonernas pseudo-element (ger klammern) */
  .site-header .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container::before,
  .site-header .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container::after {
      content: none !important;
  }

  /* Pil-ikon: vit */
  .site-header .wp-block-navigation__responsive-container 
  .wp-block-navigation-item__content .wp-block-navigation__submenu-icon svg {
      fill: #ffffff !important;
  }
}



/* Margin för kundcase cover bild */

/* Mobil – allt under 500 */
@media (max-width: 500px) {
    .post-cover-hero {
        margin-top: 110px !important;
    }
}

/* Mobil – allt under tablet */
@media (max-width: 767px) {
    .post-cover-hero {
        margin-top: 115px !important;
    }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
    .post-cover-hero {
        margin-top: 120px !important;
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .post-cover-hero {
        margin-top: 140px !important;
    }
}


/* Dölj header på kundcase genom att targeting kategorilänken */
.taxonomy-category a[href*="category/kundcase"] {
    display: none !important;
}

.taxonomy-category a[href*="category/kundcase"] ~ * {
    display: none !important;
}

.taxonomy-category:has(a[href*="category/kundcase"]) {
    display: none !important;
}

.taxonomy-category:has(a[href*="category/kundcase"]) ~ * {
    display: none !important;
}

/* Dölj bara den specifika container-gruppen med margin-top */
.wp-block-group.alignfull.has-global-padding:has(.taxonomy-category a[href*="category/kundcase"]) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ta bort margin från entry-content på kundcase */
body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 0 !important;
}

/* Margin för kundcase cover bild - responsivt */
/* Tablet */
@media (min-width: 320px) and (max-width: 500px) {
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content > .wp-block-group:first-child {
        margin-top: 25px !important;
        padding-top: 0 !important;
    }

    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 15px !important;
    }
}

/* Mobil – allt under tablet */
@media (max-width: 767px) {
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content > .wp-block-group:first-child {
        margin-top: 35px !important;
        padding-top: 0 !important;
    }

    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 15px !important;
    }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content > .wp-block-group:first-child {
        margin-top: 15px !important;
        padding-top: 0 !important;
    }

    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 15px !important;
    }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 900px) {
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content > .wp-block-group:first-child {
        margin-top: 25px !important;
        padding-top: 0 !important;
    }

    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 15px !important;
    }
}


/* Desktop - ta bort ALLT utrymme */
@media (min-width: 1024px) {
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content > .wp-block-group:first-child {
        margin-top: 15px !important;
        padding-top: 0 !important;
    }
    
    /* Ta även bort padding/margin från post-content */
    body:has(.taxonomy-category a[href*="category/kundcase"]) .wp-block-post-content {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    
    /* Ta bort padding från entry-content */
    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    body:has(.taxonomy-category a[href*="category/kundcase"]) .entry-content.wp-block-post-content {
    margin-top: 15px !important;
}
}



/* Visa relaterade kundcase bara på kundcase-inlägg */
body.single-post:not(.is-kundcase) .kundcase-relaterat {
    display: none;
}


/* Dölj datumet i query-loopen längst ner på kundcase-inlägg */
body.single-post.is-kundcase .kundcase-relaterat .wp-block-post-date {
    display: none;
}

/* Gör bilderna i kundcase-relaterat-loop fyrkantiga */
.kundcase-relaterat .wp-block-post-featured-image img {
    width: 100%;
    aspect-ratio: 1 / 1;   /* gör bilden kvadratisk */
    object-fit: cover;     /* fyller rutan utan att förvränga */
    height: auto;
}



/* Tar bort vit gradient i nederkant av Cover blocks */
.wp-block-cover::after,
.wp-block-cover::before {
    display: none !important;
}

.wp-block-cover__inner-container::before,
.wp-block-cover__inner-container::after {
    display: none !important;
}


.shorter-line {
    max-width: 150px !important;
    margin-top: 8px !important;
}


/* Filterknappar på portfoliosidan */
body .wp-block-button.portfolio-filters > .wp-block-button__link,
body .wp-block-button.portfolio-filters .wp-block-button__link {
    background-color: transparent !important;
    color: #252525 !important;
    border: 1px solid #252525 !important;
    border-radius: 0 !important;
    padding: 8px 16px !important;
}

/* Hover på filterknappar */
body .wp-block-button.portfolio-filters > .wp-block-button__link:hover,
body .wp-block-button.portfolio-filters .wp-block-button__link:hover {
    background-color: #252525 !important;
    color: #ffffff !important;
    border-color: #252525 !important;
}

.wp-block-query .wp-block-post-featured-image {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}



/* Vit border på burgundy-knappar */
a.wp-block-button__link.has-custom-burgundy-background-color.has-custom-vit-border-color {
    border-color: #ffffff !important;
}

/* Om du vill vara extra säker att alla sidor får vit border */
a.wp-block-button__link.has-custom-vit-border-color {
    border-color: #ffffff !important;
}

/* Låser bildstorlek i tjänster-sektionen */
.services-grid .wp-block-column .wp-block-image img {
    width: 100% !important;
    height: 350px !important;
    object-fit: cover !important;
    object-position: center !important;
}

@media (max-width: 768px) {
    .services-grid .wp-block-column .wp-block-image img {
        height: 250px !important;
    }
}

/* Knappar outlined */
body .wp-block-button.outline-button > .wp-block-button__link,
body .wp-block-button.outline-button .wp-block-button__link {
    background-color: #d4cdca !important;
    color: #252525 !important;
    border: 1px solid #252525 !important;
    border-radius: 5px !important;
    padding: 16px 32px !important;
}

/* Hover på outlines knappar */
body .wp-block-button.outline-button > .wp-block-button__link:hover,
body .wp-block-button.outline-button .wp-block-button__link:hover {
    background-color: #530000 !important;
    color: #ffffff !important;
    border-color: #530000 !important;
}

/* Move hero label heading down on mobile */
@media (max-width: 768px) {
    .wp-block-cover.hero-cover .has-text-align-center.has-base-color {
        margin-top: 40px !important;
    }
}

@media (max-width: 500px) {
    .wp-block-cover.hero-cover .has-text-align-center.has-base-color {
        margin-top: 60px !important;
    }
}


/* Dölj SVG-knapp på startsidan */

.editor-styles-wrapper .hide-in-editor {
    display: none !important;
}

/* Fix av responsiveness */

/* Centrera knappar i kolumner när de stackas vertikalt */
/* @media (max-width: 1024px) {
  .wp-block-columns {
    text-align: center;
  }
  
  .wp-block-column .wp-block-button {
    margin-left: auto;
    margin-right: auto;
  }
  
  .wp-block-column .wp-block-buttons {
    justify-content: center;
  }
} */

/* Responsiva bugfixar startsida */

/* hero rubrik startsida */
@media (max-width: 768px) {
    .wp-block-cover h1 {
      font-size: clamp(2rem, 6vw, 4.5rem);
      line-height: 1.05;
      /* max-width: 14ch; */
      overflow-wrap: anywhere;
      hyphens: auto;
    }
}

/* Portfolio-knapp: desktop = höger */
/* Desktop: höger */
body .wp-block-buttons.portfolio-button-right.is-layout-flex {
  justify-content: flex-end !important;
}

/* <=1024: vänster */
@media (max-width: 1024px) {
  body .wp-block-buttons.portfolio-button-right.is-layout-flex {
    justify-content: flex-start !important;
  }
}

/* <=768: centrerad */
@media (max-width: 768px) {
  body .wp-block-buttons.portfolio-button-left.is-layout-flex {
    justify-content: center !important;
    margin-top: 40px !important; /* overrides inline margin-top:0 */
  }
   body .wp-block-buttons.portfolio-button-right.is-layout-flex {
    justify-content: center !important;
  }
}


/* -------
1024–769: fixa “tom rad” från mittenkolumnen och visa divider 
------ */
@media (max-width: 1024px) {
  .custom-grid-layout-portfolio { overflow-x: hidden; }

  .custom-grid-layout-portfolio > * {
    min-width: 0;
    min-height: 0;
  }

  .custom-grid-layout-portfolio .line-bottom {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    align-self: start;
  }

  .custom-grid-layout-portfolio hr.wp-block-separator.short-light-line {
    width: 220px !important;
    max-width: 70% !important;
    margin: 12px 0 !important;

    height: 0 !important;
    background: none !important;
    border: 0 !important;
    border-top: 1px solid #6b6b6b !important;
    opacity: 1 !important;
  }

  .custom-grid-layout-portfolio .wp-block-buttons.portfolio-button-right {
    margin-top: 0 !important;
    align-self: start;
  }
}

@media (max-width: 768px) {
  .custom-grid-layout-portfolio p,
  .custom-grid-layout-portfolio h2.wp-block-heading {
    text-align: center !important;
  }

  .custom-grid-layout-portfolio hr.wp-block-separator.short-light-line {
    margin: 16px auto !important;
  }

  .custom-grid-layout-portfolio .wp-block-buttons.portfolio-button-right {
    justify-content: center !important;
  }
}

@media (max-width: 1024px) {
  .custom-grid-layout-portfolio .wp-block-buttons.portfolio-button-right {
    margin-top: -32px !important;
  }
}


/* När kolumnerna stackar: för siffran närmare texten */
@media (max-width: 768px) {
  .about-stats .wp-block-column + .wp-block-column {
    margin-top: 0 !important; /* tar bort “radavstånd” mellan kolumner */
  }

  .about-stats .wp-block-column p.has-text-align-right {
    margin-top: 8px !important;   /* justera: 0–12px */
    margin-bottom: 0 !important;
    text-align: left !important;  /* valfritt: ofta bättre på mobil */
  }
}

@media (max-width: 768px) {
  .about-stats.wp-block-columns {
    row-gap: 12px !important;
  }
}




/* Instagram Button - Override plugin's ID selector */
#sb_instagram .sbi_follow_btn a,
#sb_instagram .sbi_follow_btn.sbi_custom a {
    border-radius: 5px !important;
    margin-top: 0 !important;
}

/* Extra säkerhet med dubbel ID-specificitet om det behövs */
#sb_instagram #sb_instagram .sbi_follow_btn a {
    border-radius: 5px !important;
}

/* Nuclear fix för Load More-knappen */
#sb_instagram #sbi_load,
#sb_instagram .sbi_load_btn {
    display: block !important;
    text-align: left !important;
    margin: 0 0 16px 0 !important;
    float: none !important;
    width: fit-content !important;
}

#sb_instagram #sbi_load .sbi_load_btn {
    margin-left: 0 !important;
    margin-bottom: 12px !important;
}
.sbi_follow_btn sbi_custom {
    margin-left: -5px !important;
}


/* Konsekvent "ruta" per slide */
.kb-gallery-type-fluidcarousel .kb-gallery-carousel-item .kb-gallery-image-contain{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}


.kb-gallery-type-fluidcarousel {
  margin-right: 0px !important;
  height: auto !important;
  max-width: 100vw !important;
  overflow: hidden !important;
}



.process-content {
  padding-left: 50px !important;
  padding-right: 0px !important;
}

@media (max-width: 780px) {
  .process-content {
    padding-top: 0px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.process-section {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (max-width: 780px) {
  .process-section {
    padding-top: 0px; /* ändra till det du vill ha */
  }
}


.what-section {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

@media (max-width: 780px) {
  .what-section {
    padding-bottom: 50px !important /* ändra till det du vill ha */
  }
}

.grace-columns .own-col .wp-block-column {
    flex: 0 0 auto !important;
    width: auto !important;
}

.own-col.button-row-narrow {
    gap: 24px !important;
}

/* Inlägg som inte wrappar */
.wp-block-post-template.columns-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.nav-dark-text {
    color: #000 !important;
}

/* Kundcase: mörk navigationstext */
.kundcase-page .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation-item a,
.kundcase-page .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) * {
    color: #111111 !important;
}

/* Kundcase: byt till svart logga */
.kundcase-page .site-header .custom-logo,
.kundcase-page .site-header .wp-block-site-logo img {
    content: url('/wp-content/uploads/2026/03/logotyp_KAU_svart.png') !important;
}

/* Dölj featured image på enskilda kundcase-sidor */
body.single-kundcase .wp-block-post-featured-image {
    display: none !important;
}

/* Men visa den i query-loopen längst ner */
body.single-kundcase .wp-block-query .wp-block-post-featured-image {
    display: block !important;
}


div#wpforms-753 {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 720px !important;
  width: 100% !important;
}

div#wpforms-753 .wpforms-submit-container {
  text-align: center;
}


.consultation-form-section > .wp-block-column:first-child,
.consultation-form-section > .wp-block-column:last-child {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    overflow: hidden;
}

.consultation-form-section > .wp-block-column:nth-child(2) {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}

@media (max-width: 1024px) {
    .consultation-form-section > .wp-block-column:first-child,
    .consultation-form-section > .wp-block-column:last-child {
        display: none !important;
    }

    .consultation-form-section {
        justify-content: center !important;
    }

    .consultation-form-section > .wp-block-column:nth-child(2) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
}


.kundcase-page .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container a,
.kundcase-page .site-header .wp-block-navigation:not(.wp-block-navigation__responsive-container) .wp-block-navigation__submenu-container * {
    color: white !important;
}


.wp-block-navigation__responsive-container .wp-block-navigation-item__content {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}