:root {
    --main-page-content-background-color: #f9f9f9;
    /*Brand colors*/
    --brand-primary-color: #041627;
    --brand-secondary-color: #1A2B3C;
    --brand-text-color: #FDCB9F;

    /*Header*/
    --main-header-bg-color: var(--brand-primary-color);
    --main-header-menu-bg-color: var(--brand-secondary-color);
    --main-header-font-color-hover: var(--brand-text-color);

    /* Menu */

}

.pageTopbar {
    background-color: var(--brand-primary-color);
}

.pageHeader .logo {
    display: flex;
    align-items: center;
}

.headerButtons .button_container {
    gap: 24px;
}

.searchStrip input {
    background-color: var(--main-header-menu-bg-color);
    border: 1px solid var(--main-header-menu-bg-color) !important;
    color: var(--main-header-font-color-hover);
}

.newelement-navbar-button {
    background-color: var(--main-header-menu-bg-color);
    border: unset;
}

.headerButtons .header-button {
    margin-left: unset;
}

.headerButtons .header-button span {
    text-transform: uppercase;
    font-size: 10px;
}

.headerButtons .button_container a {
    color: #fff;
}

.designPlus .headerButtons .button_container a > svg.icon {
    width: 22px;
    height: 22px;
}

div.cart > div.wrapper {
    padding: unset;
}

/* Menu */
.mainNavBar .navbar-nav > .nav-item:hover a {
    color: #fff;
}

.nav-link.dropdown-toggle {
    display: flex;
    align-items: center;
    gap: 5px;
}

.mainNavBar .nav-item.dropdown.show > .nav-link {
    color: var(--brand-text-color);
    border-bottom: 1px solid var(--brand-text-color);
}

.navbar-dark .navbar-nav .dropdown-menu .nav-link {
    color: #fff;
    display: flex;
    gap: 5px;
}

.navbar .dropdown-menu {
    background-color: var(--brand-secondary-color);
}

.navbar-dark .navbar-nav .dropdown-menu .nav-link:hover {
    color: var(--brand-text-color);
}

.mainNavBar .dropdown-menu .nav-item:not(.nav-item-sub) .nav-link {
    font-size: 15px;
    font-weight: 600;
    color: var(--brand-text-color);
}

.mainNavBar .dropdown-menu .nav-item.nav-item-more:not(.nav-item-sub) .nav-link {
    font-size: 13px;
    font-weight: 500;
    color: var(--brand-text-color);
}

#simpleHamburgerMenu .dropdown-menu.show {
    overflow-y: auto;
}

/*Breadcrumbs*/
.pageCrumbs {
    background-color: #fff;
}

/* Responsive */
@media (max-width: 991px) {
    .pageHeader .logo,
    .headerButtons .button_container {
        justify-content: center !important;
    }
}

/* =========================================================
   Container overrides — DesignPlus → alg-land
   ---------------------------------------------------------
   DesignPlus's style.css (lines 1793-1826) caps Bootstrap's
   .container at max-width 1200px and adds a 1px transparent
   border-bottom (a margin-collapse hack). The alg-land
   landing-page design is 1280px wide, so we widen it here
   and drop the border hack.
   ========================================================= */
.container {
    border-bottom: none;
}

@media (min-width: 576px) {
    .container {
        max-width: 100%;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 100%;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 1280px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1280px;
    }
}

/* =========================================================
   Ålgård Landbrukssenter — standalone landing page
   All rules scoped to .algard-page to prevent leakage.
   Naming: BEM with `algard-` prefix on every block.
   ========================================================= */

/* ---------- Scope + reset ------------------------------- */
.algard-page {
    --algard-navy: #041627;
    --algard-navy-2: #1A2B3C;
    --algard-orange: #7B5734;
    --algard-orange-2: #6A4A2C;
    --algard-peach: #FDCB9F;
    --algard-peach-2: #F0B27F;
    --algard-logo-mark: #CDA176;
    --algard-gray-bg: #F9F9F9;
    --algard-gray-line: rgba(196, 198, 205, 0.3);
    --algard-text: #1A1C1C;
    --algard-text-muted: #44474C;
    --algard-white: #FFFFFF;
    --algard-max-width: 1280px;

    font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--algard-text);
    background: var(--algard-gray-bg);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

.algard-page,
.algard-page *,
.algard-page *::before,
.algard-page *::after {
    box-sizing: border-box;
}

section.container.algard-page {
    padding: 0px;
}

/* :where() keeps these rules scoped but with zero added specificity,
   so block-level styles like .algard-btn.algard-btn--white can win without !important. */
:where(.algard-page) * {
    margin: 0;
    padding: 0;
}

:where(.algard-page) a {
    color: inherit;
    text-decoration: none;
}

:where(.algard-page) img {
    max-width: 100%;
    display: block;
}

:where(.algard-page) button {
    font: inherit;
    cursor: pointer;
    background: none;
    border: none;
}

:where(.algard-page) ul,
:where(.algard-page) ol {
    list-style: none;
}

/* ---------- Page wrapper (max-width container) ---------- */
.algard-page__inner {
    max-width: var(--algard-max-width);
    margin: 0 auto;
    background: var(--algard-white);
    overflow: hidden;
}

/* ---------- Container + section utilities --------------- */
.algard-container {
    width: 100%;
    padding: 0 32px;
}

.algard-section {
    padding: 46px 0;
    background: var(--algard-gray-bg);
}

/* ---------- Eyebrow shared block ------------------------ */
.algard-eyebrow {
    display: inline-block;
    letter-spacing: 0.32em;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 20px;
    color: var(--algard-peach);
}

/* ---------- Button block -------------------------------- */
.algard-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 32px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border-radius: 4px;
    transition: transform .15s ease, background .15s ease, color .15s ease;
}

.algard-btn:hover {
    transform: translateY(-1px);
}

.algard-btn.algard-btn--orange {
    background: var(--algard-orange);
    color: var(--algard-white);
}

.algard-btn.algard-btn--orange:hover {
    background: var(--algard-orange-2);
}

.algard-btn.algard-btn--white {
    background: var(--algard-white);
    color: var(--algard-navy);
}

.algard-btn.algard-btn--white:hover {
    background: #F2F2F2;
}

.algard-btn.algard-btn--navy {
    background: var(--algard-navy);
    color: var(--algard-white);
    height: 60px;
}

.algard-btn.algard-btn--navy:hover {
    background: var(--algard-navy-2);
}

.algard-btn.algard-btn--peach {
    background: var(--algard-peach);
    color: var(--algard-navy);
    height: 76px;
    padding: 0 40px;
    font-size: 15px;
}

.algard-btn.algard-btn--peach:hover {
    background: var(--algard-peach-2);
}

/* ---------- Hero --------------------------------------- */
.algard-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 600px;
    color: var(--algard-white);
}

.algard-hero__panel {
    position: relative;
    padding: 0 64px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

/* Solid base color fallback — visible when <img> is missing */
.algard-hero__panel::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
}

.algard-hero__panel--newholland::before {
    background: var(--algard-navy);
}

.algard-hero__panel--caseih::before {
    background: #330000;
}

/* The actual photo (loaded as <img>) */
.algard-page .algard-hero__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    opacity: 0.5;
}

/* Linear gradient overlay (matches Figma paint0/paint1_linear) */
.algard-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}

.algard-hero__overlay--left {
    background: linear-gradient(90deg, rgba(4, 22, 39, 0.6) 0%, rgba(4, 22, 39, 0) 100%);
}

.algard-hero__overlay--right {
    background: linear-gradient(270deg, rgba(51, 0, 0, 0.6) 0%, rgba(51, 0, 0, 0) 100%);
}

.algard-hero__content {
    position: relative;
    z-index: 3;
    max-width: 480px;
}

.algard-hero__content--right {
    margin-left: auto;
    text-align: right;
}

.algard-hero .algard-hero__title {
    font-size: 45px;
    font-weight: 700;
    line-height: 1.04;
    margin-bottom: 20px;
    letter-spacing: -0.015em;
    text-transform: uppercase;
}

.algard-hero .algard-hero__lead {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 32px;
    max-width: 400px;
    opacity: 0.9;
}

.algard-hero__content--right .algard-hero__lead {
    margin-left: auto;
}

/* Hero buttons match Figma widths */
.algard-hero__panel--newholland .algard-btn {
    min-width: 226px;
}

.algard-hero__panel--caseih .algard-btn {
    min-width: 170px;
}

/* ---------- Tile grids --------------------------------- */
.algard-tiles {
    display: grid;
    gap: 24px;
}

.algard-tiles--4 {
    grid-template-columns: repeat(4, 1fr);
}

/* Service tiles: 3 EQUAL columns, NOT 1:2:2 */
.algard-tiles--3 {
    grid-template-columns: repeat(3, 1fr);
}

.algard-tile {
    position: relative;
    aspect-ratio: 286 / 214.5;
    border-radius: 4px;
    overflow: hidden;
    color: var(--algard-white);
    display: flex;
    align-items: flex-end;
    padding: 20px;
    isolation: isolate;
    transition: transform .2s ease;
}

.algard-tile:hover {
    transform: translateY(-2px);
}

.algard-tile::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
}

.algard-tile::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(4, 22, 39, 0.4);
}

.algard-tile__label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.algard-tile--varonn::before {
    background: url('/static/algard/img/cat-varonn.jpg') center/cover no-repeat,
    linear-gradient(160deg, #B5A468 0%, #8FA34A 50%, #5C7A38 100%);
}

.algard-tile--slatt::before {
    background: url('/static/algard/img/cat-slatteutstyr.jpg') center/cover no-repeat,
    linear-gradient(160deg, #6B8A4E 0%, #4A6B32 50%, #2A3F1A 100%);
}

.algard-tile--tresking::before {
    background: url('/static/algard/img/cat-tresking.jpg') center/cover no-repeat,
    linear-gradient(160deg, #C4A847 0%, #7A8C3D 50%, #3F4F25 100%);
}

.algard-tile--vinter::before {
    background: url('/static/algard/img/cat-vintersesong.jpg') center/cover no-repeat,
    linear-gradient(160deg, #C4D0A8 0%, #7A8E68 50%, #4A5C42 100%);
}

/* Service tiles: 16:9 aspect, denser overlay (0.6) */
.algard-tile--service {
    aspect-ratio: 389.33 / 218.98;
}

.algard-tile--service::after {
    background: rgba(4, 22, 39, 0.6);
}

.algard-tile--reservedeler {
    align-items: center;
    justify-content: center;
}

.algard-tile--reservedeler::before {
    background: url('/static/algard/img/service-reservedeler.jpg') center/cover no-repeat,
    linear-gradient(135deg, #8E9296 0%, #6E7378 100%);
}

.algard-tile--reservedeler::after {
    background: none;
}

.algard-tile--bruktmarked::before {
    background: url('/static/algard/img/service-bruktmarked.jpg') center/cover no-repeat,
    linear-gradient(160deg, #4A6B38 0%, #2D4A28 50%, #1A2E15 100%);
}

.algard-tile--finansiering::before {
    background: url('/static/algard/img/service-finansiering.jpg') center/cover no-repeat,
    linear-gradient(160deg, #2A3D5A 0%, #1A2740 100%);
}

/* ---------- Booking ------------------------------------ */
.algard-booking {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: var(--algard-white);
    min-height: 633px;
}

.algard-booking__text {
    padding: 80px;
    align-self: center;
    width: 100%;
}

.algard-booking .algard-booking__title {
    font-size: 32px;
    line-height: 1.2;
    margin-bottom: 20px;
    color: var(--algard-navy);
    font-weight: 700;
}

.algard-booking .algard-booking__lead {
    color: var(--algard-text-muted);
    font-size: 14px;
    line-height: 1.65;
    margin-bottom: 28px;
}

.algard-booking__image {
    position: relative;
    min-height: 633px;
    overflow: hidden;
}

/* The actual photo (loaded as <img>) */
.algard-booking .algard-booking__photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.algard-booking__text .algard-btn {
    min-width: 288px;
}

/* Fallback gradient — visible when <img> is missing */
.algard-booking__image--mechanic {
    background: linear-gradient(180deg, #B85942 0%, #6B3D2E 50%, #2A1F1A 100%);
}

.algard-booking__image--robot {
    background: linear-gradient(180deg, #C4D49A 0%, #6B8A4A 50%, #2D3F1F 100%);
}

/* ---------- Features list ------------------------------ */
.algard-page .algard-features {
    margin-bottom: 32px;
    margin-left: unset;
}

.algard-features__item {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 14px;
    color: var(--algard-text);
    padding: 8px 0;
}

.algard-features__icon {
    color: var(--algard-orange);
    flex-shrink: 0;
}

/* ---------- Dark CTA ----------------------------------- */
.algard-cta {
    position: relative;
    color: var(--algard-white);
    isolation: isolate;
    overflow: hidden;
    height: 500px;
}

.algard-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: url('/static/algard/img/cta-verksted.jpg') center/cover no-repeat,
    linear-gradient(180deg, #2A3848 0%, #14202F 100%);
}

.algard-cta::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(4, 22, 39, 0.8);
}

.algard-cta__inner {
    padding: 80px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 64px;
    align-items: center;
    height: 100%;
}

.algard-cta .algard-cta__title {
    font-size: 36px;
    line-height: 1.2;
    margin-bottom: 18px;
    letter-spacing: -0.01em;
    font-weight: 700;
}

.algard-cta .algard-cta__lead {
    font-size: 14px;
    line-height: 1.6;
    max-width: 600px;
    margin-bottom: 28px;
    opacity: 0.8;
}

.algard-cta__action .algard-btn {
    min-width: 222px;
}

/* ---------- Chips -------------------------------------- */
.algard-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.algard-chips__item {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 0 18px;
    height: 37px;
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    letter-spacing: 0.12em;
    font-weight: 600;
    color: var(--algard-white);
}

/* ---------- Brands ------------------------------------- */
.algard-page.container.algard-brands {
    background: var(--algard-gray-bg);
    padding: 64px 0 80px;
}

.algard-brands .algard-brands__title {
    text-align: center;
    font-size: 24px;
    color: var(--algard-navy);
    margin-bottom: 56px;
    position: relative;
    padding-bottom: 20px;
    font-weight: 700;
}

.algard-brands .algard-brands__title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: var(--algard-orange);
}

.algard-brands__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    max-width: 1216px;
    margin: 0 auto;
}

.algard-brands__cell {
    background: var(--algard-white);
    border: 1px solid var(--algard-gray-line);
    border-radius: 4px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.16em;
    color: var(--algard-text-muted);
    transition: border-color .15s ease, color .15s ease;
    overflow: hidden;
    padding: 12px 20px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.algard-brands__cell:hover {
    border-color: var(--algard-orange);
    color: var(--algard-navy);
}

.algard-brands__logo {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: grayscale(0.2);
    transition: filter .15s ease;
}

.algard-brands__cell img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.algard-brands__cell:hover .algard-brands__logo {
    filter: grayscale(0);
}

/* If the image is broken/missing, the <img>'s alt text shows
   in browsers automatically. Style the alt text to match the placeholder. */
.algard-brands__logo[alt]:not([src]),
.algard-brands__logo[src=""] {
    display: none;
}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 1024px) {
    .algard-tiles--4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .algard-tiles--3 {
        grid-template-columns: 1fr;
    }

    .algard-hero__panel {
        padding: 40px 32px;
    }

    .algard-hero .algard-hero__title {
        font-size: 40px;
    }

    .algard-booking__text {
        padding: 48px 32px;
    }

    .algard-cta__inner {
        grid-template-columns: 1fr;
    }

    .algard-cta__action {
        justify-self: start;
    }

    .algard-brands__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .algard-hero {
        grid-template-columns: 1fr;
        height: auto;
    }

    .algard-hero__panel {
        min-height: 360px;
        padding: 32px 24px;
    }

    .algard-hero__content--right {
        text-align: left;
        margin-left: 0;
    }

    .algard-hero__content--right .algard-hero__lead {
        margin-left: 0;
    }

    .algard-hero .algard-hero__title {
        font-size: 32px;
    }

    .algard-tiles--4 {
        grid-template-columns: 1fr;
    }

    .algard-booking {
        grid-template-columns: 1fr;
    }

    .algard-booking--reverse .algard-booking__image {
        order: 1;
    }

    .algard-booking__text {
        padding: 40px 24px;
    }

    .algard-booking .algard-booking__title {
        font-size: 26px;
    }

    .algard-cta {
        height: auto;
    }

    .algard-cta__inner {
        padding: 48px 24px;
    }

    .algard-cta .algard-cta__title {
        font-size: 26px;
    }

    .algard-brands__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
