@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@400;500;600;700&family=Stack+Sans+Headline:wght@400;500;600;700&family=Stack+Sans+Notch:wght@400;500;600;700&display=swap');



/* =========================================================

   ACR – STARTSIDA

   Komplett CSS-fil

   ========================================================= */



:root {

    --night: #002041;

    --stone: #f5f6eb;

    --sky: #115db7;

    --forest: #004a37;

    --radar: #b8f9b4;

    --white: #f5f6eb;



    --content: 1180px;

    --pad: 24px;

    --font-display: "Stack Sans Headline", "Inter Tight", Arial, Helvetica, sans-serif;

    --font-text: "Inter Tight", Arial, Helvetica, sans-serif;

}





/* =========================================================

   RESET / GLOBALT

   ========================================================= */



*,

*::before,

*::after {

    box-sizing: border-box;

}



html {

    scroll-behavior: smooth;

}



html,

body {

    margin: 0;

    padding: 0;

}



body {

    margin: 0;



    background: var(--stone);

    color: var(--night);



    font-family:

        "Inter Tight",

        Arial,

        Helvetica,

        sans-serif;



    font-size: 16px;

    line-height: 1.55;



    -webkit-font-smoothing: antialiased;

    text-rendering: optimizeLegibility;

}



img {

    display: block;

    max-width: 100%;

}



a {

    color: inherit;

}



h1,

h2,

h3,

p {

    margin-top: 0;

}



.container {

    width: min(

        var(--content),

        calc(100% - (var(--pad) * 2))

    );



    margin-inline: auto;

}





/* =========================================================

   UMBRACO WRAPPERS

   ========================================================= */



.umb-block-grid__layout-container,

.umb-block-grid__layout-item {

    width: 100% !important;

    max-width: none !important;



    margin: 0 !important;

    padding: 0 !important;

}





/* =========================================================

   HEADER

   ========================================================= */



.site-header {

    position: absolute !important;



    top: 0;

    left: 0;

    right: 0;



    z-index: 1000;



    width: 100%;



    color: #f5f6eb;



    background:

        linear-gradient(

            180deg,

            rgba(0, 0, 0, .78) 0%,

            rgba(0, 0, 0, .35) 55%,

            rgba(0, 0, 0, 0) 100%

        ) !important;

}





.header-top {

    position: relative;



    z-index: 3;

}





.header-top-inner,

.header-nav-inner {

    width:

        min(

            var(--content),

            calc(100% - (var(--pad) * 2))

        ) !important;



    max-width:

        var(--content) !important;



    margin-inline:

        auto !important;

}





.header-top-inner {

    min-height: 78px;



    display: flex;



    align-items: center;



    justify-content: space-between;

}





/* =========================================================

   LOGO

   ========================================================= */



.logo {

    position: relative;



    z-index: 5;



    display: block;

}





.logo-img {

    width: 110px !important;



    height: auto !important;



    filter:

        brightness(0)

        invert(1);

}





/* =========================================================

   DÖLJ SÖK / SPRÅK / EXTRA CTA

   ========================================================= */



.header-actions > .service-read-more,

.header-search,

.langsw,

.mobile-lang {

    display: none !important;

}





/* =========================================================

   MOBIL MENYKNAPP

   ========================================================= */



.menu-btn {

    display: flex;



    align-items: center;

    justify-content: center;



    width: 44px;

    height: 44px;



    padding: 0;



    border: 0;



    background: transparent;



    color: #f5f6eb;



    font-size: 27px;

}





/* =========================================================

   DESKTOPNAV DOLD PÅ MOBIL

   ========================================================= */



.header-nav-row {

    display: none;

}





/* =========================================================

   MOBILNAV

   ========================================================= */



.mobile-nav {

    position: absolute;



    top: 78px;

    left: 0;

    right: 0;



    z-index: 1001;



    background:

        rgba(0, 22, 44, .98);



    color: #f5f6eb;

}





.mobile-nav[hidden] {

    display: none !important;

}





.mobile-nav-inner {

    display: flex;



    flex-direction: column;



    padding:

        16px var(--pad) 28px;

}





.mobile-nav-inner a {

    padding:

        12px 0;



    border-bottom:

        1px solid

        rgba(245,246,235, .13);



    color: #f5f6eb;



    text-decoration: none;

}





/* =========================================================

   DROPDOWN

   Viktigt: gamla dropdowns får inte ligga öppna i headern.

   ========================================================= */



.site-header .dropdown-menu,

.site-header .flyout-menu {

    display: block !important;



    position: absolute !important;



    margin: 0 !important;

    padding: 10px 0 !important;



    opacity: 0 !important;



    visibility: hidden !important;



    pointer-events: none !important;



    background:

        rgba(0, 32, 65, .98) !important;



    box-shadow:

        0 16px 35px

        rgba(0, 0, 0, .22) !important;



    transform:

        translateY(8px) !important;



    transition:

        opacity .2s ease,

        visibility .2s ease,

        transform .2s ease !important;

}





.site-header .dropdown-menu {

    top: 100% !important;



    left: 0 !important;



    width: 280px !important;



    z-index: 1100 !important;

}





.site-header .flyout-menu {

    top: 0 !important;



    left: 100% !important;



    width: 260px !important;



    z-index: 1200 !important;

}





.site-header

.nav-item:hover

> .dropdown-menu,



.site-header

.nav-item:focus-within

> .dropdown-menu {

    opacity: 1 !important;



    visibility: visible !important;



    pointer-events: auto !important;



    transform:

        translateY(0) !important;

}





.site-header

.dropdown-item:hover

> .flyout-menu,



.site-header

.dropdown-item:focus-within

> .flyout-menu {

    opacity: 1 !important;



    visibility: visible !important;



    pointer-events: auto !important;



    transform:

        none !important;

}





.site-header .dropdown-item {

    position: relative !important;

}





.site-header .dropdown-link,

.site-header .flyout-link {

    display: block !important;



    padding:

        10px 18px !important;



    color:

        #f5f6eb !important;



    font-size:

        14px !important;



    line-height:

        1.3 !important;



    text-decoration:

        none !important;

}





.site-header .dropdown-link:hover,

.site-header .flyout-link:hover {

    color:

        var(--radar) !important;

}





/* =========================================================

   HERO

   ========================================================= */



[data-content-element-type-alias="heroBlock"] {

    position: relative;



    width: 100%;



    margin: 0 !important;

    padding: 0 !important;

}





.hero-bg {

    position: relative !important;



    width: 100% !important;



    height: 78svh !important;



    min-height: 610px !important;

    max-height: 820px !important;



    margin: 0 !important;

    padding: 0 !important;



    overflow: hidden !important;



    background:

        #000 !important;



    color:

        #f5f6eb;

}





/* =========================================================

   HERO MEDIA / SLIDER

   ========================================================= */



.hero-bg__media,

.hero-bg__slider {

    position: absolute !important;



    inset: 0 !important;



    width: 100% !important;

    height: 100% !important;



    min-height: 100% !important;



    overflow: hidden !important;

}





.hero-bg__slide,

[data-hero-slide] {

    position: absolute !important;



    inset: 0 !important;



    width: 100% !important;

    height: 100% !important;



    min-height: 100% !important;



    opacity: 0;



    z-index: 0;



    pointer-events: none;



    transition:

        opacity 1.7s ease-in-out !important;

}





.hero-bg__slide.is-active,

[data-hero-slide].is-active {

    opacity: 1 !important;



    z-index: 1;

}





.hero-bg__image,

[data-hero-slide] img {

    position: absolute !important;



    inset: 0 !important;



    width: 100% !important;

    height: 100% !important;



    min-height: 100% !important;



    object-fit:

        cover !important;



    object-position:

        center center !important;



    transform:

        none !important;

}





/* =========================================================

   HERO OVERLAY

   Mörk/svart – inte blå

   ========================================================= */



.hero-bg__shade {

    position: absolute !important;



    inset: 0 !important;



    z-index: 2 !important;



    width: 100% !important;

    height: 100% !important;



    pointer-events: none;



    background:

        linear-gradient(
            180deg,
            rgba(0, 32, 65, .30) 0%,
            rgba(0, 32, 65, .30) 50%,
            rgba(0, 32, 65, .30) 100%
        ) !important;

}





/* =========================================================

   HERO CONTENT

   ========================================================= */



.hero-bg__content {

    position: relative !important;



    z-index: 4 !important;



    width: 100% !important;

    height: 100% !important;



    min-height: 100% !important;



    display: flex !important;



    align-items: center !important;



    justify-content: center !important;



    padding:

        120px var(--pad) 110px !important;



    text-align:

        center !important;

}





.hero-bg__card {

    width: 100% !important;



    max-width:

        960px !important;



    margin:

        0 auto !important;



    padding:

        0 !important;



    background:

        transparent !important;



    box-shadow:

        none !important;

}





/* =========================================================

   HERO RUBRIK

   Mer luft än tidigare

   ========================================================= */



.hero-bg__card h1 {

    max-width:

        940px !important;



    margin:

        0 auto 22px !important;



    color:

        #f5f6eb !important;



    font-size:

        clamp(28px, 4vw, 36px) !important;



    line-height:

        1.08 !important;



    font-weight:

        500 !important;



    letter-spacing:

        -.012em !important;

}





/* =========================================================

   HERO BRÖDTEXT

   ========================================================= */



.hero-bg__card p,

.hero-bg__card .hero-lead,

.hero-bg__card .hero-lead p {

    max-width:

        760px !important;



    margin:

        0 auto !important;



    color:

        rgba(245,246,235,

            .96

        ) !important;



    font-size:

        16px !important;



    line-height:

        1.55 !important;



    font-weight:

        400 !important;

}





/* =========================================================

   HERO CTA

   ========================================================= */



.acr-hero-cta {

    position:

        absolute !important;



    left:

        50% !important;



    bottom:

        38px !important;



    z-index:

        6 !important;



    transform:

        translateX(-50%) !important;



    color:

        #f5f6eb !important;



    font-size:

        13px !important;



    font-weight:

        600 !important;



    line-height:

        1.2 !important;



    text-decoration:

        none !important;



    text-align:

        center !important;



    white-space:

        nowrap;

}





.acr-hero-cta::after {

    content:

        "⌄";



    display:

        block;



    margin-top:

        6px;



    font-size:

        28px;



    line-height:

        .65;

}





/* =========================================================

   TRE HUVUDPUFFAR

   ========================================================= */



.acr-sketch-entries {

    width:

        100%;



    margin:

        0 !important;



    padding:

        88px var(--pad) 106px !important;



    background:

        var(--stone) !important;

}





.acr-sketch-entries__grid {

    width:

        min(

            var(--content),

            100%

        ) !important;



    max-width:

        var(--content) !important;



    margin:

        0 auto !important;



    display:

        grid !important;



    grid-template-columns:

        1fr !important;



    gap:

        24px !important;

}





/* =========================================================

   HUVUDPUFF

   ========================================================= */



.acr-entry {

    position:

        relative !important;



    min-height:

        350px !important;



    overflow:

        hidden !important;



    display:

        flex !important;



    align-items:

        center !important;



    justify-content:

        center !important;



    color:

        #f5f6eb !important;



    background:

        #111 !important;



    text-decoration:

        none !important;

}





.acr-entry > img {

    position:

        absolute !important;



    inset:

        0 !important;



    width:

        100% !important;



    height:

        100% !important;



    object-fit:

        cover !important;



    transition:

        transform .55s ease;

}





.acr-entry::after {

    content:

        "";



    position:

        absolute;



    inset:

        0;



    z-index:

        1;



    background:

        linear-gradient(
            180deg,
            rgba(17, 93, 183, .48) 0%,
            rgba(0, 55, 116, .55) 48%,
            rgba(0, 27, 58, .88) 100%
        );

}





.acr-entry__content {

    position:

        relative !important;



    z-index:

        2 !important;



    width:

        min(

            88%,

            310px

        ) !important;



    padding:

        28px 16px !important;



    text-align:

        center !important;

}





.acr-entry__content h2 {

    margin:

        0 0 12px !important;



    color:

        #f5f6eb !important;



    font-size:

        clamp(19px, 3.33vw, 22px) !important;



    line-height:

        1.05 !important;



    font-weight:

        600 !important;



    letter-spacing:

        -.012em !important;



    text-transform:

        uppercase !important;

}





.acr-entry__desc {

    margin:

        0 auto 25px !important;



    max-width:

        275px !important;



    color:

        rgba(245,246,235,

            .94

        ) !important;



    font-size:

        13px !important;



    line-height:

        1.45 !important;

}





.acr-entry__content span {

    display:

        inline-block !important;



    padding-bottom:

        4px !important;



    border-bottom:

        1px solid

        rgba(245,246,235,

            .85

        ) !important;



    color:

        #f5f6eb !important;



    font-size:

        11px !important;



    line-height:

        1 !important;



    font-weight:

        700 !important;



    text-transform:

        uppercase !important;



    letter-spacing:

        .04em !important;

}





.acr-entry:hover > img {

    transform:

        scale(1.035);

}





/* =========================================================
   UMBRACO – BEHÅLL INNEHÅLLSSEKTIONER
   Dölj endast ursprunglig tjänstelista, som ersätts av
   de nya tjänstepuffarna. Bli flygledare förblir synlig.
   ========================================================= */

/* Dölj den äldre tjänstelistan enbart på startsidan, aldrig på ServicePage. */
body.acr-home-composed:not(:has(.acr-service-page))
[data-content-element-type-alias="serviceListing"],
body.acr-home-composed:not(:has(.acr-service-page)) .services-listing-section {
    display: none !important;
}


/* =========================================================

   LATEST NEWS

   Samma visuella språk som de tre puffarna.

   ========================================================= */



body .news-listing-section {

    width:

        100% !important;



    margin:

        0 !important;



    padding:

        96px var(--pad) 112px !important;



    background:

        var(--stone) !important;

}





body .news-listing-container {

    width:

        min(

            var(--content),

            100%

        ) !important;



    max-width:

        var(--content) !important;



    margin:

        0 auto !important;



    padding:

        0 !important;

}





/* =========================================================

   NEWS RUBRIK

   ========================================================= */



body .news-listing-title {

    margin:

        0 0 46px !important;



    padding:

        0 !important;



    color:

        var(--night) !important;



    font-size:

        clamp(24px, 2.33vw, 28px) !important;



    line-height:

        1.05 !important;



    font-weight:

        500 !important;



    letter-spacing:

        -.012em !important;



    text-align:

        left !important;

}





/* =========================================================

   NEWS GRID

   ========================================================= */



body .news-grid {

    display:

        grid !important;



    grid-template-columns:

        1fr !important;



    gap:

        24px !important;



    margin:

        0 !important;



    padding:

        0 !important;

}





/* =========================================================

   NEWS CARD

   ========================================================= */



body .news-card {

    position:

        relative !important;



    min-width:

        0 !important;



    min-height:

        350px !important;



    margin:

        0 !important;



    padding:

        0 !important;



    overflow:

        hidden !important;



    background:

        var(--night) !important;



    box-shadow:

        none !important;

}





/* =========================================================

   NEWS IMAGE

   ========================================================= */



body .news-card-image-link {

    position:

        absolute !important;



    inset:

        0 !important;



    z-index:

        1 !important;



    display:

        block !important;



    width:

        100% !important;



    height:

        100% !important;



    margin:

        0 !important;



    padding:

        0 !important;



    overflow:

        hidden !important;



    background:

        var(--night) !important;

}





body .news-card-image,

body .news-card-placeholder {

    position:

        absolute !important;



    inset:

        0 !important;



    display:

        block !important;



    width:

        100% !important;



    height:

        100% !important;



    min-height:

        100% !important;



    max-width:

        none !important;



    aspect-ratio:

        auto !important;



    object-fit:

        cover !important;



    opacity:

        1 !important;



    visibility:

        visible !important;



    transition:

        transform .55s ease !important;

}





/* =========================================================

   NEWS OVERLAY

   ========================================================= */



body .news-card::after {

    content:

        "";



    position:

        absolute;



    inset:

        0;



    z-index:

        2;



    pointer-events:

        none;



    background:

        linear-gradient(
            180deg,
            rgba(17, 93, 183, .48) 0%,
            rgba(0, 55, 116, .55) 48%,
            rgba(0, 27, 58, .88) 100%
        );

}





/* =========================================================

   NEWS TEXT OVANPÅ BILD

   ========================================================= */



body .news-card-content {

    position:

        absolute !important;



    left:

        0 !important;



    right:

        0 !important;



    bottom:

        0 !important;



    z-index:

        3 !important;



    display:

        flex !important;



    flex-direction:

        column !important;



    align-items:

        flex-start !important;



    width:

        100% !important;



    margin:

        0 !important;



    padding:

        28px !important;



    color:

        #f5f6eb !important;



    background:

        transparent !important;

}





/* =========================================================

   NEWS DATUM

   ========================================================= */



body .news-card-date {

    order:

        1;



    margin:

        0 0 8px !important;



    color:

        rgba(245,246,235,

            .78

        ) !important;



    font-size:

        11px !important;



    line-height:

        1.2 !important;



    font-weight:

        500 !important;

}





/* =========================================================

   NEWS RUBRIK I KORT

   ========================================================= */



body .news-card-content h3 {

    order:

        2;



    max-width:

        95% !important;



    margin:

        0 0 18px !important;



    color:

        #f5f6eb !important;



    font-size:

        18px !important;



    line-height:

        1.14 !important;



    font-weight:

        500 !important;



    letter-spacing:

        -.008em !important;

}





body .news-card-content h3 a {

    color:

        #f5f6eb !important;



    text-decoration:

        none !important;

}





/* =========================================================

   NEWS LÄS MER

   ========================================================= */



body .news-read-more {

    order:

        3;



    display:

        inline-block !important;



    min-height:

        0 !important;



    margin:

        0 !important;



    padding:

        0 0 4px !important;



    border:

        0 !important;



    border-bottom:

        1px solid

        rgba(245,246,235,

            .85

        ) !important;



    border-radius:

        0 !important;



    background:

        transparent !important;



    color:

        #f5f6eb !important;



    font-size:

        14px !important;



    line-height:

        1 !important;



    font-weight:

        600 !important;



    text-decoration:

        none !important;

}





body .news-read-more::after {

    content:

        " ↗";

}





body .news-card:hover

.news-card-image {

    transform:

        scale(1.035) !important;

}





/* =========================================================

   FOOTER

   ========================================================= */



.footer {

    width:

        100%;



    margin:

        0;



    padding:

        76px var(--pad) 86px;



    background:

        var(--night);



    color:

        #f5f6eb;

}





.footer-grid {

    width:

        min(

            var(--content),

            100%

        ) !important;



    max-width:

        var(--content) !important;



    margin:

        0 auto !important;



    display:

        grid;



    grid-template-columns:

        1fr;



    gap:

        42px;

}





.footer-col h3 {

    margin:

        0 0 16px;



    color:

        var(--radar);



    font-size:

        14px;



    font-weight:

        500;

}





.footer-menu ul {

    list-style:

        none;



    margin:

        0;



    padding:

        0;

}





.footer-menu li {

    margin-bottom:

        7px;

}





.footer a {

    color:

        #f5f6eb;



    text-decoration:

        none;

}





.footer a:hover {

    color:

        var(--radar);

}





.footer-address,

.footer-contact-line,

.footer-copy {

    color:

        rgba(245,246,235,

            .80

        );



    font-size:

        13px;



    line-height:

        1.55;

}





/* =========================================================

   TABLET

   ========================================================= */



@media (min-width: 700px) {



    :root {

        --pad:

            40px;

    }





    .acr-sketch-entries__grid {

        grid-template-columns:

            repeat(

                3,

                minmax(0, 1fr)

            ) !important;



        gap:

            30px !important;

    }





    .acr-entry {

        min-height:

            330px !important;

    }





    body .news-grid {

        grid-template-columns:

            repeat(

                3,

                minmax(0, 1fr)

            ) !important;



        gap:

            30px !important;

    }





    body .news-card {

        min-height:

            330px !important;

    }





    .footer-grid {

        grid-template-columns:

            repeat(

                2,

                1fr

            );

    }



}





/* =========================================================

   DESKTOP

   ========================================================= */



@media (min-width: 1000px) {



    :root {

        --pad:

            64px;

    }





    /* ---------------------------------------------------------

       HEADER

       --------------------------------------------------------- */



    .header-top-inner {

        min-height:

            82px;

    }





    .logo-img {

        width:

            110px !important;

    }





    .menu-btn {

        display:

            none !important;

    }





    .header-nav-row {

        display:

            block !important;



        position:

            absolute !important;



        top:

            0 !important;



        left:

            0 !important;



        right:

            0 !important;



        z-index:

            4 !important;



        pointer-events:

            none;

    }





    .header-nav-inner {

        height:

            82px !important;



        display:

            flex !important;



        align-items:

            center !important;



        justify-content:

            flex-end !important;

    }





    .site-header .nav {

        display:

            flex !important;



        align-items:

            center !important;



        gap:

            34px !important;



        margin:

            0 !important;



        padding:

            0 !important;



        pointer-events:

            auto;

    }





    .site-header .nav-item {

        position:

            relative !important;



        margin:

            0 !important;



        padding:

            0 !important;

    }





    .site-header .nav-link {

        display:

            flex !important;



        align-items:

            center !important;



        min-height:

            82px !important;



        margin:

            0 !important;



        padding:

            0 !important;



        color:

            #f5f6eb !important;



        font-size:

            13px !important;



        line-height:

            1 !important;



        font-weight:

            600 !important;



        letter-spacing:

            .015em !important;



        text-transform:

            uppercase !important;



        text-decoration:

            none !important;



        white-space:

            nowrap !important;

    }





    .site-header .nav-link:hover {

        color:

            var(--radar) !important;

    }





    /* Menyalternativ döljs inte utifrån sin position. */


    /* ---------------------------------------------------------

       HERO

       --------------------------------------------------------- */



    .hero-bg {

        height:

            78vh !important;



        min-height:

            650px !important;



        max-height:

            820px !important;

    }





    .hero-bg__content {

        padding:

            125px var(--pad) 115px !important;

    }





    .hero-bg__card h1 {

        font-size:

            clamp(28px, 4vw, 36px) !important;



        line-height:

            1.08 !important;



        letter-spacing:

            -.012em !important;

    }





    .hero-bg__card p,

    .hero-bg__card .hero-lead,

    .hero-bg__card .hero-lead p {

        font-size:

            16px !important;



        line-height:

            1.55 !important;

    }





    /* ---------------------------------------------------------

       PUFFAR

       --------------------------------------------------------- */



    .acr-sketch-entries {

        padding:

            94px var(--pad) 112px !important;

    }





    .acr-sketch-entries__grid {

        grid-template-columns:

            repeat(

                3,

                minmax(0, 1fr)

            ) !important;



        gap:

            48px !important;

    }





    .acr-entry {

        min-height:

            350px !important;

    }





    /* ---------------------------------------------------------

       NEWS

       --------------------------------------------------------- */



    body .news-listing-section {

        padding:

            100px var(--pad) 120px !important;

    }





    body .news-grid {

        grid-template-columns:

            repeat(

                3,

                minmax(0, 1fr)

            ) !important;



        gap:

            48px !important;

    }





    body .news-card {

        min-height:

            350px !important;

    }





    /* ---------------------------------------------------------

       FOOTER

       --------------------------------------------------------- */



    .footer {

        padding:

            82px var(--pad) 90px;

    }





    .footer-grid {

        grid-template-columns:

            1fr

            1fr

            1fr

            1.45fr;



        gap:

            58px;

    }



}





/* =========================================================

   LARGE DESKTOP

   ========================================================= */



@media (min-width: 1300px) {



    :root {

        --pad:

            80px;

    }





    .header-top-inner,

    .header-nav-inner,

    .acr-sketch-entries__grid,

    body .news-listing-container,

    .footer-grid {

        max-width:

            1180px !important;

    }





    .acr-sketch-entries__grid,

    body .news-grid {

        gap:

            52px !important;

    }





    .acr-entry,

    body .news-card {

        min-height:

            350px !important;

    }



}





/* =========================================================

   MOBIL

   ========================================================= */



@media (max-width: 699px) {



    .hero-bg {

        height:

            78svh !important;



        min-height:

            580px !important;

    }





    .hero-bg__content {

        padding:

            100px 24px 90px !important;

    }





    .hero-bg__card h1 {

        font-size:

            clamp(28px, 4vw, 36px) !important;



        line-height:

            1.08 !important;



        letter-spacing:

            -.008em !important;

    }





    .hero-bg__card p,

    .hero-bg__card .hero-lead,

    .hero-bg__card .hero-lead p {

        max-width:

            520px !important;



        font-size:

            15px !important;



        line-height:

            1.5 !important;

    }





    .acr-sketch-entries {

        padding:

            56px 24px 72px !important;

    }





    .acr-sketch-entries__grid {

        grid-template-columns:

            1fr !important;



        gap:

            22px !important;

    }





    .acr-entry {

        min-height:

            360px !important;

    }





    body .news-listing-section {

        padding:

            70px 24px 80px !important;

    }





    body .news-listing-title {

        margin-bottom:

            34px !important;



        font-size:

            24px !important;

    }





    body .news-grid {

        grid-template-columns:

            1fr !important;



        gap:

            22px !important;

    }





    body .news-card {

        min-height:

            360px !important;

    }



}





/* =========================================================

   REDUCED MOTION

   ========================================================= */



@media (prefers-reduced-motion: reduce) {



    *,

    *::before,

    *::after {

        scroll-behavior:

            auto !important;



        transition-duration:

            .01ms !important;



        animation-duration:

            .01ms !important;



        animation-iteration-count:

            1 !important;

    }



}

/* =========================================================
   MOBILMENY – FIX
   ========================================================= */

@media (max-width: 999px) {
    .site-header .header-top {
        position: relative !important;
        z-index: 1003 !important;
    }

    .site-header .header-top-inner {
        position: relative !important;
        z-index: 1003 !important;
    }

    .site-header .menu-btn {
        position: relative !important;
        z-index: 1005 !important;
        display: flex !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        touch-action: manipulation;
    }

    .site-header .mobile-nav {
        position: absolute !important;
        top: 78px !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 1004 !important;
        width: 100% !important;
        max-height: calc(100vh - 78px) !important;
        overflow-y: auto !important;
        background: rgba(0, 32, 65, .98) !important;
        color: #f5f6eb !important;
    }

    .site-header .mobile-nav[hidden] {
        display: none !important;
    }

    .site-header .mobile-nav:not([hidden]) {
        display: block !important;
    }

    .site-header .mobile-nav-inner {
        width: 100% !important;
        max-width: none !important;
        padding: 18px 24px 30px !important;
    }

    .site-header .mobile-nav-inner a {
        display: block !important;
        padding: 15px 0 !important;
        color: #f5f6eb !important;
        font-size: 16px !important;
        line-height: 1.25 !important;
        letter-spacing: .025em !important;
        text-decoration: none !important;
    }
}


/* =========================================================
   TYPOGRAFI – LUFTIGARE GENOM HELA SIDAN
   ========================================================= */

body {
    letter-spacing: .018em;
}

p,
li,
a,
button,
input,
textarea,
select {
    letter-spacing: .025em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: .012em !important;
}

.site-header .nav-link {
    letter-spacing: .055em !important;
}

.acr-entry__content h2,
body .news-card-content h3,
body .news-listing-title {
    letter-spacing: .018em !important;
}


/* =========================================================
   LÄS MER – STÖRRE OCH LUFTIGARE
   ========================================================= */

.acr-entry__content span,
body .news-read-more {
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .075em !important;
}

.acr-hero-cta {
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: .09em !important;
}

.acr-hero-cta::after {
    content: "⌄" !important;
    margin-top: 12px !important;
    font-size: 48px !important;
    line-height: .55 !important;
    font-weight: 400 !important;
}


/* =========================================================
   MOBILMENY – HIERARKI
   ========================================================= */

@media (max-width: 999px) {

    body.mobile-menu-open {
        overflow: hidden;
    }

    .site-header .mobile-nav {
        position: fixed !important;
        top: 78px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 1004 !important;
        width: 100% !important;
        max-height: none !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        background: rgba(0, 32, 65, .985) !important;
    }

    .site-header .mobile-nav-inner {
        display: block !important;
        width: min(100%, 760px) !important;
        margin: 0 auto !important;
        padding: 22px 24px 42px !important;
    }

    .acr-mobile-tree,
    .acr-mobile-tree ul {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .acr-mobile-tree .nav-item,
    .acr-mobile-tree .dropdown-item {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 1px solid rgba(245,246,235,.12) !important;
    }

    .acr-mobile-tree .nav-link,
    .acr-mobile-tree .dropdown-link,
    .acr-mobile-tree .flyout-link {
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        color: #f5f6eb !important;
        text-decoration: none !important;
        text-transform: none !important;
        white-space: normal !important;
    }

    /* Nivå 1 */
    .acr-mobile-tree > .nav-item > .nav-link {
        padding: 17px 52px 17px 0 !important;
        font-size: 17px !important;
        line-height: 1.2 !important;
        font-weight: 600 !important;
        letter-spacing: .055em !important;
    }

    /* Nivå 2 */
    .acr-mobile-tree .dropdown-menu {
        display: none !important;
        position: static !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 2px 0 12px 18px !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .acr-mobile-tree .nav-item.is-open > .dropdown-menu {
        display: block !important;
    }

    .acr-mobile-tree .dropdown-link {
        padding: 13px 48px 13px 0 !important;
        font-size: 16px !important;
        line-height: 1.3 !important;
        font-weight: 500 !important;
        letter-spacing: .04em !important;
    }

    /* Nivå 3 */
    .acr-mobile-tree .flyout-menu {
        display: none !important;
        position: static !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 2px 0 10px 20px !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .acr-mobile-tree .dropdown-item.is-open > .flyout-menu {
        display: block !important;
    }

    .acr-mobile-tree .flyout-link {
        padding: 11px 0 !important;
        font-size: 15px !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;
        letter-spacing: .035em !important;
        color: rgba(245,246,235,.86) !important;
    }

    .acr-mobile-tree .acr-mobile-toggle {
        position: absolute !important;
        top: 7px !important;
        right: 0 !important;
        z-index: 4 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 42px !important;
        height: 42px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #f5f6eb !important;
        font-family: inherit !important;
        font-size: 27px !important;
        line-height: 1 !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        cursor: pointer !important;
    }

    .acr-mobile-tree .dropdown-item > .acr-mobile-toggle {
        top: 4px !important;
        width: 38px !important;
        height: 38px !important;
        font-size: 23px !important;
    }
}


/* =========================================================
   BRÖDTEXT – STÖRRE
   ========================================================= */

body {
    font-size: 17px;
}

.hero-bg__card p,
.hero-bg__card .hero-lead,
.hero-bg__card .hero-lead p {
    font-size: 17px !important;
    line-height: 1.6 !important;
}

.acr-entry__desc {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

body .news-card-content p {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.footer-address,
.footer-contact-line,
.footer-copy {
    font-size: 15px !important;
    line-height: 1.6 !important;
}

@media (max-width: 699px) {
    .hero-bg__card p,
    .hero-bg__card .hero-lead,
    .hero-bg__card .hero-lead p {
        font-size: 16px !important;
        line-height: 1.55 !important;
    }

    .acr-entry__desc,
    body .news-card-content p {
        font-size: 15px !important;
    }
}


/* =========================================================
   LÄS MER – INGEN UNDERSTRYKNING
   ========================================================= */

.acr-entry,
.acr-entry:hover,
.acr-entry:focus,
.acr-entry:active,
.acr-entry__content span,
.news-card,
.news-card:hover,
.news-card:focus,
.news-card:active,
body .news-read-more,
body .news-read-more:hover,
body .news-read-more:focus,
body .news-read-more:active,
.acr-hero-cta,
.acr-hero-cta:hover,
.acr-hero-cta:focus,
.acr-hero-cta:active {
    text-decoration: none !important;
}


/* =========================================================
   FOOTER – MINDRE LÄNKAR
   ========================================================= */

.footer a,
.footer-menu a {
    font-size: 14px !important;
    line-height: 1.45 !important;
    letter-spacing: .025em !important;
}


/* =========================================================
   LÄS MER – TVINGA BORT ALL UNDERSTRYKNING
   ========================================================= */

.acr-entry,
.acr-entry *,
.acr-entry:hover,
.acr-entry:hover *,
.acr-entry:focus,
.acr-entry:focus *,
.news-card,
.news-card *,
.news-card:hover,
.news-card:hover *,
.news-card:focus,
.news-card:focus *,
.acr-hero-cta,
.acr-hero-cta:hover,
.acr-hero-cta:focus {
    text-decoration: none !important;
    text-decoration-line: none !important;
}

.acr-entry__content span,
.news-read-more,
.acr-hero-cta {
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

.acr-entry__content span::before,
.acr-entry__content span::after,
.news-read-more::before,
.news-read-more::after {
    text-decoration: none !important;
    border-bottom: 0 !important;
}


/* =========================================================
   LATEST NEWS – INGEN UNDERSTRYKNING
   ========================================================= */

.news-listing-section .news-card,
.news-listing-section .news-card *,
.news-listing-section .news-card a,
.news-listing-section .news-card a *,
.news-listing-section .news-card:hover,
.news-listing-section .news-card:hover *,
.news-listing-section .news-card a:hover,
.news-listing-section .news-card a:hover *,
.news-listing-section .news-card a:focus,
.news-listing-section .news-card a:focus *,
.news-listing-section .news-read-more,
.news-listing-section .news-read-more:hover,
.news-listing-section .news-read-more:focus {
    text-decoration: none !important;
    text-decoration-line: none !important;
}

.news-listing-section .news-read-more,
.news-listing-section .news-read-more::before,
.news-listing-section .news-read-more::after {
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
    text-decoration: none !important;
}


/* =========================================================
   LATEST NEWS – TA BORT PIL EFTER "LÄS MER"
   ========================================================= */

.news-listing-section .news-read-more::after,
.news-listing-section a .news-read-more::after {
    content: none !important;
    display: none !important;
}

/* =========================================================
   TJÄNSTEPUFFAR – ALLT INNEHÅLL FRÅN TOPPEN
   ========================================================= */

.acr-entry {
    position: relative !important;
    display: block !important;
}

.acr-entry__content {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;

    padding: 70px 40px 32px !important;

    text-align: left !important;
    transform: none !important;
}

.acr-entry__content h2 {
    margin: 0 0 14px 0 !important;
    padding: 0 !important;

    font-size: 19px !important;
    line-height: 1.08 !important;
}

.acr-entry__desc {
    margin: 0 0 24px 0 !important;
    padding: 0 !important;

    font-size: 16px !important;
    line-height: 1.45 !important;
}

.acr-entry__content span {
    margin: 0 !important;
    padding: 0 !important;
}


/* MOBIL */

@media (max-width: 699px) {

    .acr-entry__content {
        padding: 32px 26px 26px !important;
    }

    .acr-entry__content h2 {
        font-size: 18px !important;
    }

    .acr-entry__desc {
        font-size: 15px !important;
    }
}


/* =========================================================
   TYPOGRAFI – STACK SANS NOTCH + INTER TIGHT
   Spec 02:
   Stack Sans Headline Medium  = H1–H3 och större kampanjrubriker
   Stack Sans Headline Regular = korta ingresser eller displaytext
   Inter Tight Medium       = etiketter, länkar och UI-betoning
   Inter Tight Regular      = brödtext, navigation, knappar, formulär
   ========================================================= */

body {
    font-family: var(--font-text);
    font-weight: 400;
}

h1,
h2,
h3,
.hero-bg__card h1,
.acr-entry__content h2,
body .news-listing-title,
body .news-card-content h3,
body .news-card-content h3 a {
    font-family: var(--font-display) !important;
    font-weight: 500 !important;
}

.hero-bg__card p,
.hero-bg__card .hero-lead,
.hero-bg__card .hero-lead p,
.acr-entry__desc {
    font-family: var(--font-display) !important;
    font-weight: 400 !important;
}

.acr-entry__content span,
body .news-read-more,
.acr-hero-cta,
.news-card-date,
.footer-col h3,
.site-header .nav-link {
    font-family: var(--font-text) !important;
    font-weight: 500 !important;
}

button,
input,
textarea,
select,
.menu-btn,
.footer a,
.footer-menu a,
.site-header .dropdown-link,
.site-header .flyout-link,
.acr-mobile-tree .nav-link,
.acr-mobile-tree .dropdown-link,
.acr-mobile-tree .flyout-link {
    font-family: var(--font-text);
    font-weight: 400;
}



/* =========================================================
   ACR – LAYOUT NÄRMARE STARTSIDESKISSEN
   Typografi utan att skala upp navigation och korttext
   ========================================================= */
:root { --night: #002041; --stone: #f5f6eb; }
body { font-family: "Inter Tight", sans-serif; font-size: 16px; line-height: 1.45; }
body p { font-family: "Inter Tight", sans-serif !important; font-size: 16px !important; line-height: 1.55 !important; font-weight: 400 !important; }
body h1, body h2, body h3 { font-family: "Stack Sans Headline", "Inter Tight", sans-serif !important; font-weight: 600 !important; letter-spacing: 0 !important; }
/* Huvudrubriker i innehåll, medan heron har sin egen proportion */
body [data-content-element-type-alias="introWithCollageBlock"] h2,
body [data-content-element-type-alias="textSectionBlock"] h2,
body .news-listing-title { font-size: 24px !important; line-height: 1.12 !important; }
body .hero-bg__card h1 { font-size: clamp(28px, 4vw, 36px) !important; line-height: 1.1 !important; font-weight: 600 !important; max-width: 900px !important; }
body .hero-bg__card p, body .hero-bg__card .hero-lead, body .hero-bg__card .hero-lead p { font-family: "Inter Tight", sans-serif !important; font-size: 16px !important; line-height: 1.55 !important; max-width: 700px !important; }
/* Natt, 70% transparens (30% opacitet), något mörkare längst ned */
body .hero-bg__shade { background: linear-gradient(180deg, rgba(0,32,65,.30) 0%, rgba(0,32,65,.30) 55%, rgba(0,32,65,.46) 100%) !important; }
/* Bli flygledare: behåll Umbracos innehåll, ge ljus yta och kompakt layout */
body.acr-home-composed [data-content-element-type-alias="introWithCollageBlock"] { display: block !important; background: var(--stone) !important; color: var(--night) !important; }
body.acr-home-composed [data-content-element-type-alias="textSectionBlock"] { display: block !important; }
/* De tre bildpuffarna är mer kompakta i skissen */
body .acr-sketch-entries { padding: 64px var(--pad) 72px !important; }
body .acr-sketch-entries__grid { gap: 22px !important; }
body .acr-entry { min-height: 255px !important; border-radius: 12px !important; }
body .acr-entry__content { width: 100% !important; padding: 35px 24px 24px !important; align-items: center !important; justify-content: center !important; text-align: center !important; top: 0 !important; bottom: 0 !important; }
body .acr-entry__content h2 { font-family: "Stack Sans Headline", sans-serif !important; font-size: 19px !important; font-weight: 600 !important; line-height: 1.1 !important; }
body .acr-entry__desc { font-family: "Inter Tight", sans-serif !important; font-size: 15px !important; line-height: 1.45 !important; margin: 0 auto 18px !important; }
/* Knappar och CTA. Behåll nav och footer i deras egna mindre storlekar. */
body .acr-hero-cta, body .acr-entry__content span, body .news-read-more,
body [data-content-element-type-alias="introWithCollageBlock"] a.service-read-more {
 font-family: "Inter Tight", sans-serif !important; font-size: 16px !important; font-weight: 600 !important; letter-spacing: .05em !important;
}
/* Hero-knapp enligt skiss, utan att ändra textinnehåll i JS */
body .acr-hero-cta { bottom: 50px !important; border-radius: 999px !important; background: var(--stone) !important; color: var(--night) !important; padding: 13px 26px !important; }
body .acr-hero-cta::after { display: none !important; }
@media (max-width: 699px) {
 body .hero-bg__card h1 { font-size: clamp(28px, 4vw, 36px) !important; }
 body .acr-entry { min-height: 280px !important; }
 body .acr-sketch-entries { padding: 44px 24px 56px !important; }
}

/* ================================================================
   ACR – Bli flygledare: två kolumner enligt layoutskissen
   Utgår från faktisk HTML: section.section > .container.why-grid
   ================================================================ */
section.section:has(> .why-grid) {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f5f6eb !important;
    overflow: hidden;
}
section.section > .container.why-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 570px;
    margin: 0 !important;
    padding: 0 !important;
}
section.section > .why-grid > .why-text {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 65px clamp(35px, 6vw, 125px) !important;
    box-sizing: border-box;
}
section.section > .why-grid .why-tagline {
    max-width: 530px;
    margin: 0 0 20px !important;
    font-family: "Stack Sans Headline", sans-serif;
    font-size: 24px !important;
    font-weight: 600;
    line-height: 1.12 !important;
    color: #002041 !important;
}
section.section > .why-grid .why-text .rte {
    width: 100%;
    max-width: 530px;
}
section.section > .why-grid .why-text .rte p {
    margin: 0;
    font-family: "Inter Tight", sans-serif;
    font-size: 16px !important;
    line-height: 1.48 !important;
    color: #002041 !important;
}
section.section > .why-grid .why-text .rte a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 23px !important;
    margin: 28px 4px 0 0 !important;
    background: #002041 !important;
    color: #f5f6eb !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-family: "Inter Tight", sans-serif;
    font-size: 14px !important;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
    box-sizing: border-box;
    transition: background .2s ease;
}
section.section > .why-grid .why-text .rte a:hover {
    background: #115db7 !important;
}
section.section > .why-grid > .why-collage {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    min-height: 570px;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
}
section.section > .why-grid .collage,
section.section > .why-grid .collage--overlap {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}
section.section > .why-grid .collage__img--main {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    box-shadow: none !important;
}
section.section > .why-grid .collage__img--left {
    display: none !important;
}
@media (max-width: 900px) {
    section.section > .container.why-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        min-height: 0;
    }
    section.section > .why-grid > .why-text {
        padding: 55px 30px !important;
    }
    section.section > .why-grid .why-tagline {
        font-size: 21px !important;
    }
    section.section > .why-grid .why-text .rte p {
        font-size: 16px !important;
    }
    section.section > .why-grid > .why-collage {
        height: 420px !important;
        min-height: 420px;
    }
}
@media (max-width: 480px) {
    section.section > .why-grid > .why-text {
        padding: 40px 20px !important;
    }
    section.section > .why-grid .why-tagline {
        font-size: 20px !important;
    }
    section.section > .why-grid .why-text .rte a {
        margin-top: 15px !important;
        font-size: 13px !important;
        padding: 12px 18px !important;
    }
    section.section > .why-grid > .why-collage {
        height: 300px !important;
        min-height: 300px;
    }
}

/* ================================================================
   FIX 2026-10-18: Full bredd på Umbraco-wrappern.
   Undvik att layouten blir en smal grid-cell.
   ================================================================ */
body.acr-home-composed [data-content-element-type-alias="introWithCollageBlock"] {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f5f6eb !important;
}
body.acr-home-composed [data-content-element-type-alias="introWithCollageBlock"] > section.section {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
/* Fullbreddssektion även om .container har äldre maxbreddsregler */
body .section > .container.why-grid,
body .section > .why-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    align-items: stretch !important;
}
body .section > .why-grid > .why-text,
body .section > .why-grid > .why-collage {
    min-width: 0 !important;
    max-width: none !important;
    width: 100% !important;
}
body .section > .why-grid > .why-text {
    padding: 65px clamp(35px, 6vw, 125px) !important;
}
body .section > .why-grid > .why-collage {
    position: relative !important;
    min-height: 570px;
}
body .section > .why-grid .collage__img--main {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
}
@media (max-width: 900px) {
    body .section > .container.why-grid,
    body .section > .why-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    body .section > .why-grid > .why-text {
        padding: 48px 24px !important;
    }
    body .section > .why-grid > .why-collage {
        min-height: 350px;
    }
}

/* =========================================================
   HERO: Befintlig Umbraco-länk "Bli flygledare" som knapp
   Fungerar även utan JavaScript-klass.
   ========================================================= */
body .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
body .hero-bg .hero-bg__card a[href*="/become-atc/"],
body .hero-bg .hero-bg__card a.acr-hero-existing-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 40px !important;
    padding: 10px 22px !important;
    margin: 22px 0 0 !important;
    background: #002041 !important;
    color: #f5f6eb !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-family: "Inter Tight", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: .05em !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    box-sizing: border-box;
}
body .hero-bg .hero-bg__card a[href*="/bli-flygledare/"]:hover,
body .hero-bg .hero-bg__card a[href*="/become-atc/"]:hover,
body .hero-bg .hero-bg__card a.acr-hero-existing-button:hover {
    background: #002041 !important;
    color: #b8f9b4 !important;
}
/* Tidigare automatiskt genererad tjänsteknapp */
body .hero-bg > .acr-hero-cta { display: none !important; }

/* =============================================================
   ACR FAKTA – freeBlock100
   Anpassad till faktisk, platt HTML från Umbracos HTML-redigerare.
   De tomma strukturelementen är syskon, inte nästlade.
   ============================================================= */
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(> .section > .freeblock-100 > .acr-facts-number) {
    background: #002041 !important;
    width: 100%;
}
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(.freeblock-100 > .acr-facts-number) > .section {
    background: #002041 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 430px;
}
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
    position: relative;
    display: grid !important;
    grid-template-columns: 40% 40% 20%;
    grid-template-rows: 26px 154px auto;
    column-gap: 0;
    align-content: start;
    width: min(1200px, calc(100% - 64px)) !important;
    max-width: 1200px !important;
    min-height: 430px;
    margin: 0 auto !important;
    padding: 108px 0 50px !important;
    background: transparent !important;
    color: #f5f6eb;
    box-sizing: border-box;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-inner,
.freeblock-100:has(> .acr-facts-number) > .acr-facts-grid,
.freeblock-100:has(> .acr-facts-number) > .acr-facts-item,
.freeblock-100:has(> .acr-facts-number) > p:empty {
    display: none !important;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
    position: absolute;
    top: 120px;
    left: 13px;
    right: 12px;
    height: 1px;
    background: #b8f9b4;
    margin: 0;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot {
    position: relative;
    z-index: 1;
    grid-row: 1;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: rgba(184,249,180,.25);
    margin: 0;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot::after {
    content: "";
    position: absolute;
    inset: 7.5px;
    background: #b8f9b4;
    border-radius: 50%;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number {
    grid-row: 2;
    align-self: end;
    font-family: "Stack Sans Headline", sans-serif;
    font-size: clamp(65px, 8.9vw, 116px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.045em;
    color: #b8f9b4;
    white-space: nowrap;
    margin: 0 !important;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-description {
    grid-row: 3;
    align-self: start;
    margin: 6px 0 0 !important;
    font-family: "Inter Tight", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #f5f6eb;
}
/* Ordning i det platta DOM-trädet: punkt, siffra, beskrivning x3 */
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(5),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(6),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(7) { grid-column: 1; }
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(9),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(10),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(11) { grid-column: 2; }
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(13),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(14),
.freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(15) { grid-column: 3; }
@media (max-width: 800px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
        grid-template-rows: 26px 110px auto;
        min-height: 350px;
        padding-top: 75px !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-line { top: 87px; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number { font-size: clamp(48px, 9vw, 85px); }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description { font-size: 15px; line-height: 22px; }
}
@media (max-width: 600px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
        grid-template-columns: 30px minmax(0,1fr);
        grid-template-rows: repeat(3, auto auto);
        row-gap: 0;
        min-height: 0;
        padding: 45px 0 55px !important;
    }
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(.freeblock-100 > .acr-facts-number) > .section { min-height: 0; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
        top: 57px;
        left: 12px;
        right: auto;
        bottom: 75px;
        width: 1px;
        height: auto;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot { grid-column: 1 !important; align-self: start; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number { grid-column: 2 !important; align-self: start; font-size: 76px; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description { grid-column: 2 !important; margin: 3px 0 32px !important; font-size: 15px; line-height: 24px; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(5),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(6) { grid-row: 1; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(7) { grid-row: 2; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(9),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(10) { grid-row: 3; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(11) { grid-row: 4; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(13),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(14) { grid-row: 5; }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(15) { grid-row: 6; }
}

/* =============================================================
   ACR FAKTA – SLUTLIG POSITIONERING
   En och samma tredelade grid styr siffror och punkter.
   Linjen går från centrum av punkt 1 till centrum av punkt 3.
   ============================================================= */
@media (min-width: 801px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        transform: none !important;
        width: min(1200px, calc(100% - 64px)) !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(5),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(6),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(7) {
        grid-column: 1;
        justify-self: start;
        text-align: left;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(9),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(10),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(11) {
        grid-column: 2;
        justify-self: center;
        text-align: left;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(13),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-number:nth-of-type(14),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(15) {
        grid-column: 3;
        justify-self: end;
        text-align: left;
    }
    /* Placera punkterna med samma horisontella ankare som siffrorna. */
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(5) {
        justify-self: start;
        transform: none !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(9) {
        justify-self: center;
        transform: none !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot:nth-of-type(13) {
        justify-self: end;
        transform: none !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(15) {
        white-space: nowrap;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
        left: 13px !important;
        right: 13px !important;
        width: auto !important;
        transform: none !important;
    }
}
@media (min-width: 601px) and (max-width: 800px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        transform: none !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
        left: 13px !important;
        right: 13px !important;
        width: auto !important;
    }
}
@media (max-width: 600px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> .acr-facts-number) {
        grid-template-columns: 30px minmax(0, 1fr) !important;
        transform: none !important;
    }
}

/* =============================================================
   ACR – förhindra oavsiktlig horisontell sidscroll
   Behåll vertikal scroll och dropdown-menyer.
   ============================================================= */
html {
    overflow-x: clip;
}
body {
    max-width: 100%;
    overflow-x: clip;
}
.umb-block-grid__layout-container,
.umb-block-grid__layout-item,
.page-content,
main {
    min-width: 0;
    max-width: 100%;
}
.umb-block-grid__layout-item img {
    max-width: 100%;
}

/* ACR – nivå 3 i huvudmenyn: öppna inåt sidan.
   Förhindrar att flyout-menyn ökar dokumentets scrollbredd. */
@media (min-width: 1000px) {
    .site-header .dropdown-item.has-flyout > .flyout-menu {
        left: auto !important;
        right: 100% !important;
        max-width: min(260px, calc(100vw - 24px)) !important;
    }
}

/* =============================================================
   ACR FAKTA – mobil: punkter mitt för respektive siffra
   ============================================================= */
@media (max-width: 600px) {
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-dot {
        align-self: center !important;
        transform: none !important;
    }
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
        top: 83px !important;
        bottom: 112px !important;
    }
}

/* =============================================================
   ACR STARTSIDA – kontaktpuff enligt skiss
   Matchar endast freeBlock100 med länken till /sv/kontakt/.
   ============================================================= */
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(> .section > .freeblock-100 > p a[href="/sv/kontakt/"]) > .section {
    background: #f5f6eb !important;
    padding: clamp(32px, 4vw, 56px) 24px !important;
    margin: 0 !important;
    max-width: none !important;
}
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]) {
    background: #002041 !important;
    border-radius: 24px;
    width: min(1160px, 100%) !important;
    max-width: 1160px !important;
    margin: 0 auto !important;
    padding: clamp(28px, 3.5vw, 44px) clamp(20px, 4vw, 48px) !important;
    box-sizing: border-box;
    text-align: center;
    color: #f5f6eb;
}
.freeblock-100:has(> p a[href="/sv/kontakt/"]) > h2 {
    font-family: "Stack Sans Headline", sans-serif;
    font-size: clamp(20px, 1.98vw, 26px);
    font-weight: 600;
    line-height: 1.15;
    color: #f5f6eb !important;
    margin: 0 0 12px !important;
    text-align: center;
}
.freeblock-100:has(> p a[href="/sv/kontakt/"]) > p {
    font-family: "Inter Tight", sans-serif;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
    color: #f5f6eb !important;
    margin: 0 !important;
    text-align: center;
}
.freeblock-100:has(> p a[href="/sv/kontakt/"]) > p:has(> a[href="/sv/kontakt/"]) {
    margin-top: 20px !important;
}
.freeblock-100:has(> p a[href="/sv/kontakt/"]) a[href="/sv/kontakt/"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 180px !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
    padding: 12px 24px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f5f6eb !important;
    color: #002041 !important;
    font-family: "Inter Tight", sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    white-space: nowrap;
    box-shadow: none !important;
    transform: none !important;
    transition: none !important;
}
.freeblock-100:has(> p a[href="/sv/kontakt/"]) a[href="/sv/kontakt/"]:hover,
.freeblock-100:has(> p a[href="/sv/kontakt/"]) a[href="/sv/kontakt/"]:focus-visible {
    background: #f5f6eb !important;
    color: #002041 !important;
    border-color: transparent !important;
    transform: none !important;
    box-shadow: none !important;
}
@media (max-width: 600px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(> .section > .freeblock-100 > p a[href="/sv/kontakt/"]) > .section {
        padding: 28px 16px !important;
    }
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]) {
        border-radius: 18px;
        padding: 28px 20px !important;
    }
    .freeblock-100:has(> p a[href="/sv/kontakt/"]) > p {
        font-size: 14px;
    }
}

/* =========================================================
   ACR – Flytande meny via Umbraco Site Settings
   floatingMenu: true = fast meny; false = ursprunglig meny.
   Endast desktop, mobilens beteende är oförändrat.
   ========================================================= */
@media (min-width: 1000px) {
    html body .site-header[data-floating-menu="true"] {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 10000 !important;
        background: transparent !important;
        transition: background-color .22s ease, box-shadow .22s ease;
    }

    html body .site-header[data-floating-menu="true"].acr-header-scrolled,
    html body .site-header[data-floating-menu="true"].is-scrolled {
        background: rgba(0, 0, 0, .20) !important; /* 80 % transparens */
        background-image: none !important;
        box-shadow: 0 3px 12px rgba(0, 0, 0, .18);
    }

    html body .site-header[data-floating-menu="true"].acr-header-scrolled .header-top,
    html body .site-header[data-floating-menu="true"].acr-header-scrolled .header-nav-row,
    html body .site-header[data-floating-menu="true"].is-scrolled .header-top,
    html body .site-header[data-floating-menu="true"].is-scrolled .header-nav-row {
        background: transparent !important;
    }

    html body .site-header[data-floating-menu="false"] {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html body .site-header[data-floating-menu="false"].acr-header-scrolled,
    html body .site-header[data-floating-menu="false"].is-scrolled {
        background: transparent !important;
        box-shadow: none !important;
    }
}

/* =============================================================
   ACR – kontaktpanel i två kolumner enligt ACR-Startsida.pdf
   Text vänster, kontaktknapp höger. Mobil: en kolumn.
   ============================================================= */
@media (min-width: 768px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]
    .freeblock-100:has(> p a[href="/sv/kontakt/"]) {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: clamp(32px, 5vw, 90px) !important;
        align-content: center !important;
        align-items: center !important;
        text-align: left !important;
    }

    .freeblock-100:has(> p a[href="/sv/kontakt/"]) > h2,
    .freeblock-100:has(> p a[href="/sv/kontakt/"]) > p:not(:has(> a[href="/sv/kontakt/"])) {
        grid-column: 1 !important;
        text-align: left !important;
        justify-self: stretch !important;
    }

    .freeblock-100:has(> p a[href="/sv/kontakt/"]) > h2 {
        grid-row: 1 !important;
        margin-bottom: 12px !important;
    }

    .freeblock-100:has(> p a[href="/sv/kontakt/"]) > p:has(> a[href="/sv/kontakt/"]) {
        grid-column: 2 !important;
        grid-row: 1 / span 3 !important;
        align-self: center !important;
        justify-self: center !important;
        margin: 0 !important;
        text-align: center !important;
    }
}

@media (max-width: 767px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]
    .freeblock-100:has(> p a[href="/sv/kontakt/"]) {
        display: block !important;
        text-align: center !important;
    }
}

/* =============================================================
   ACR FOOTER – fyra kolumner enligt PDF-skissen
   Endast .acr-footer påverkas.
   ============================================================= */
.acr-footer {
    background: #002041 !important;
    color: #f5f6eb;
    padding: clamp(85px, 8.5vw, 132px) clamp(24px, 4.25vw, 72px) 90px;
}
.acr-footer .acr-footer__grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: clamp(28px, 4vw, 70px);
    row-gap: 38px;
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
.acr-footer .acr-footer__col { min-width: 0; }
.acr-footer .acr-footer__col h3 {
    font-family: "Stack Sans Headline", "Inter Tight", Arial, Helvetica, sans-serif !important;
    margin: 0 0 19px !important;
    color: #b8f9b4 !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase;
}
.acr-footer .acr-footer__col ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.acr-footer .acr-footer__col li,
.acr-footer .acr-footer__col p {
    margin: 0 0 10px !important;
    padding: 0 !important;
}
.acr-footer .acr-footer__col a {
    color: #f5f6eb !important;
    text-decoration: none !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    overflow-wrap: anywhere;
}
.acr-footer .acr-footer__col a:hover,
.acr-footer .acr-footer__col a:focus-visible {
    color: #b8f9b4 !important;
    text-decoration: underline !important;
}
.acr-footer .acr-footer__bottom { display: none !important; }
@media (max-width: 1050px) {
    .acr-footer .acr-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 600px) {
    .acr-footer { padding: 56px 24px 64px; }
    .acr-footer .acr-footer__grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 32px;
    }
    .acr-footer .acr-footer__col h3 { font-size: 15px !important; }
    .acr-footer .acr-footer__col a { font-size: 15px !important; }
}

/* =============================================================
   ACR LINK CARDS – repair for acrLinkCardsSection Block Grid.
   Scoped to this block so hero, facts, contact and footer remain intact.
   ============================================================= */
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] {
    width: 100%;
    min-width: 0;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcards {
    width: 100%;
    padding: clamp(40px, 5vw, 72px) 24px;
    background: #f5f6eb;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcards__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] a.acr-linkcard {
    position: relative !important;
    isolation: isolate;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-width: 0;
    min-height: 0;
    aspect-ratio: 1 / 1;
    overflow: hidden !important;
    border-radius: 16px;
    color: #f5f6eb !important;
    text-decoration: none !important;
    background: #002041;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    z-index: -2;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__overlay {
    position: absolute !important;
    inset: 0 !important;
    display: block;
    background: rgba(0, 32, 65, .70);
    z-index: -1;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__content {
    position: relative;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    width: 100%;
    padding: 28px 22px;
    text-align: center;
    color: #f5f6eb !important;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__title {
    font-family: "Stack Sans Headline", "Inter Tight", sans-serif;
    font-size: 17px;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
    color: #f5f6eb !important;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__description {
    font-size: 15px;
    line-height: 1.5;
    color: #f5f6eb !important;
}
.umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard__cta {
    margin-top: 18px;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 700;
    text-transform: uppercase;
    color: #f5f6eb !important;
}
/* Avoid duplicate cards from the older serviceListing-to-cards JS when the new
   Umbraco card section is populated. Leave the old fallback if it is empty. */
body:has([data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcard)
    .acr-sketch-entries {
    display: none !important;
}
@media (max-width: 900px) {
    .umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] .acr-linkcards__grid {
        grid-template-columns: 1fr !important;
        max-width: 360px;
    }
    .umb-block-grid__layout-item[data-content-element-type-alias="acrLinkCardsSection"] a.acr-linkcard {
        min-height: 0;
        aspect-ratio: 1 / 1;
    }
}

/* =====================================================
   ACR LINK CARDS – confirmed working with rendered Razor HTML
   Kept unscoped because the Block Grid wrapper may differ.
   ===================================================== */
.acr-linkcards {
    background: #f5f6eb;
    padding: 70px 24px;
}
.acr-linkcards__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    max-width: 1140px;
    margin: 0 auto;
}
.acr-linkcard {
    position: relative !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 320px;
    overflow: hidden;
    border-radius: 16px;
    color: #f5f6eb;
    text-decoration: none;
    isolation: isolate;
}
.acr-linkcard__image {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    z-index: -2;
}
.acr-linkcard__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 32, 65, 0.70);
    z-index: -1;
}
.acr-linkcard__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
    padding: 30px;
    width: 100%;
}
.acr-linkcard__title {
    font-size: 17px;
    font-weight: 700;
}
.acr-linkcard__description {
    font-size: 12px;
    line-height: 1.5;
}
.acr-linkcard__cta {
    margin-top: 24px;
    font-size: 12px;
    font-weight: 700;
}
@media (max-width: 900px) {
    .acr-linkcards__grid {
        grid-template-columns: 1fr;
        max-width: 360px;
    }
}

/* ACR footer – no copyright line or divider in the approved sketch */
.acr-footer .acr-footer__bottom,
.acr-footer .footer-copy,
.acr-footer .footer-bottom,
.acr-footer .footer-copyright,
.acr-footer .copyright,
.acr-footer hr {
    display: none !important;
}
.acr-footer .acr-footer__grid {
    border-bottom: 0 !important;
}
.acr-footer .acr-footer__grid::after,
.acr-footer .acr-footer__grid::before {
    border-bottom: 0 !important;
}

/* =========================================================
   ACR – huvudmeny enligt referensbild 2026-10-18
   Desktop: vit Inter Tight, 16px och marinblå toppgradient.
   Behåller flytande menys separata bakgrund efter scroll.
   ========================================================= */
@media (min-width: 1000px) {
    html body .site-header .nav-link {
        font-family: "Stack Sans Headline", "Inter Tight", Arial, Helvetica, sans-serif !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.2 !important;
        letter-spacing: .015em !important;
        text-transform: uppercase !important;
        color: #f5f6eb !important;
    }

    html body .site-header .nav {
        gap: 38px !important;
    }

    /* Toningen ligger i ett eget lager som fortsätter under menyn. */
    html body .site-header,
    html body .site-header[data-floating-menu="true"]:not(.acr-header-scrolled):not(.is-scrolled),
    html body .site-header[data-floating-menu="false"] {
        background: transparent !important;
        box-shadow: none !important;
        isolation: isolate;
        overflow: visible !important;
    }

    html body .site-header::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 190px;
        pointer-events: none;
        z-index: -1;
        background: linear-gradient(to bottom,
            rgba(0, 20, 42, .95) 0%,
            rgba(0, 24, 48, .82) 25%,
            rgba(0, 28, 54, .55) 55%,
            rgba(0, 32, 65, .22) 80%,
            rgba(0, 32, 65, 0) 100%);
    }

    html body .site-header[data-floating-menu="true"].acr-header-scrolled,
    html body .site-header[data-floating-menu="true"].is-scrolled {
        background: rgba(0, 0, 0, .20) !important;
        background-image: none !important;
    }

    html body .site-header[data-floating-menu="true"].acr-header-scrolled::before,
    html body .site-header[data-floating-menu="true"].is-scrolled::before {
        display: none !important;
    }
}

/* =========================================================
   ACR – GENERELL UNDERSIDA (ACR_undersida_generell.pdf)
   Avgränsad till .acr-generic-page för att inte påverka startsidan.
   ========================================================= */
.acr-generic-page {
    background: var(--stone, #f5f6eb);
    color: var(--night, #002041);
}
/* Sidans befintliga heroBlock sköter bakgrundsbild, rubrik och toning. */
.acr-generic-hero-block { width: 100%; }
.acr-generic-main.page-with-sidebar,
.acr-generic-main.page-no-sidebar {
    max-width: 1440px;
    margin: 0 auto;
    padding: 88px clamp(24px, 5.5vw, 90px) 150px;
    align-items: start;
}
.acr-generic-main.page-with-sidebar {
    display: grid;
    grid-template-columns: minmax(170px, 230px) minmax(0, 1fr);
    column-gap: clamp(55px, 7vw, 115px);
}
.acr-generic-main.page-no-sidebar { display: block; }
.acr-generic-main .sub-menu {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
    width: 100%;
    margin: 0;
}
.acr-generic-main .sub-menu ul { list-style: none; padding: 0; margin: 0; }
.acr-generic-main .sub-menu li { border: 0; margin: 0 0 22px; }
.acr-generic-main .sub-menu a {
    display: inline-block;
    padding: 0;
    color: var(--night, #002041);
    font-family: var(--font-text, "Inter Tight", sans-serif);
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
}
.acr-generic-main .sub-menu a:hover,
.acr-generic-main .sub-menu .active > a {
    text-decoration: underline;
    text-underline-offset: 3px;
}
.acr-generic-main .page-content { min-width: 0; }
.acr-generic-main .page-content .sub-page {
    max-width: 950px;
    margin: 0 auto;
    text-align: center;
}
.acr-generic-main .page-content p {
    font-family: var(--font-text, "Inter Tight", sans-serif);
    font-size: 16px;
    line-height: 1.65;
}
@media (max-width: 900px) {
    .acr-generic-main.page-with-sidebar,
    .acr-generic-main.page-no-sidebar { padding: 50px 24px 90px; }
    .acr-generic-main.page-with-sidebar { grid-template-columns: 1fr; gap: 38px; }
    .acr-generic-main .sub-menu ul { display: flex; flex-wrap: wrap; gap: 12px 22px; }
    .acr-generic-main .sub-menu li { margin: 0; }
}

/* Brädvägg i full bredd, efter undersidans innehåll och före footer. */
.acr-generic-page .acr-generic-boardwall {
    position: relative;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 90px 24px;
    --boardwall-overlay: 0.60;
    background-image: linear-gradient(
        rgba(0, 32, 65, var(--boardwall-overlay)),
        rgba(0, 32, 65, var(--boardwall-overlay))
    ), url('/media/2hhh5zmr/img-003.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    isolation: isolate;
}

.acr-generic-boardwall__content { position: relative; z-index: 1; max-width: 1000px; text-align: center; }
.acr-generic-boardwall__content h2 {
    margin: 0;
    color: #f5f6eb;
    font-family: var(--font-display, "Stack Sans Headline", sans-serif);
    font-size: clamp(19px, 1.77vw, 26px);
    line-height: 1.22;
    font-weight: 500;
}
@media (max-width: 900px) {
    .acr-generic-page .acr-generic-boardwall { min-height: 310px; padding: 65px 24px; }
    .acr-generic-boardwall__content h2 br { display: none; }
}

/* Kontaktpanel på undersidans brädvägg – samma utformning som startsidans kontaktpuff. */
.acr-generic-page .acr-generic-boardwall {
    flex-direction: column;
    gap: clamp(45px, 6vw, 90px);
    padding: 90px 24px 70px;
}
.acr-generic-boardwall__contact {
    position: relative;
    z-index: 1;
    width: min(860px, 100%);
    box-sizing: border-box;
    background: #002041;
    border: 2px solid #f5f6eb;
    border-radius: 18px;
    padding: clamp(24px, 3vw, 40px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 32px;
    align-items: center;
    color: #f5f6eb;
}
.acr-generic-boardwall__contact h3 {
    margin: 0 0 8px;
    color: #f5f6eb;
    font: 600 clamp(18px, 1.6vw, 22px)/1.2 "Stack Sans Headline", sans-serif;
}
.acr-generic-boardwall__contact p {
    margin: 0;
    color: #f5f6eb;
    font: 400 15px/1.5 "Inter Tight", sans-serif;
}
.acr-generic-boardwall__contact-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    min-height: 44px;
    box-sizing: border-box;
    padding: 10px 22px;
    border: 0;
    border-radius: 999px;
    background: #f5f6eb;
    color: #002041;
    font-family: "Inter Tight", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: none;
    transition: none;
}
.acr-generic-boardwall__contact-button:hover,
.acr-generic-boardwall__contact-button:focus-visible {
    background: #f5f6eb;
    color: #002041;
    transform: none;
    box-shadow: none;
}
@media (max-width: 767px) {
    .acr-generic-page .acr-generic-boardwall { padding: 65px 20px 50px; }
    .acr-generic-boardwall__contact { grid-template-columns: 1fr; text-align: center; gap: 25px; }
    .acr-generic-boardwall__contact-button { justify-self: center; }
}


/* Bli flygledare – stabilt Block Grid-block, utan rubrikberoende JS */
.acr-atc-page{background:#f5f6eb;color:#002041;font-family:"Inter Tight",sans-serif}
.acr-atc-page *,.acr-atc-page *::before,.acr-atc-page *::after{box-sizing:border-box}
.acr-atc-page h1,.acr-atc-page h2,.acr-atc-page h3{font-family:"Stack Sans Headline",sans-serif;font-weight:600;line-height:1.15}
.acr-atc-page p,.acr-atc-page li{font-family:"Inter Tight",sans-serif;font-size:16px;line-height:1.55}
.acr-atc-container{width:min(1380px,calc(100% - 80px));margin-inline:auto}
.acr-atc-hero{position:relative;min-height:620px;background:#002041;isolation:isolate}
.acr-atc-hero>.hero-bg{position:relative;min-height:620px;isolation:isolate;overflow:hidden}
.acr-atc-hero .hero-bg__media{position:absolute;inset:0;z-index:0;pointer-events:none}
.acr-atc-hero .hero-bg__media img{width:100%;height:100%;object-fit:cover}
.acr-atc-hero .hero-bg__shade{position:absolute;inset:0;z-index:1;pointer-events:none}
.acr-atc-hero .hero-bg__content{position:relative!important;z-index:5!important;min-height:620px;display:flex;align-items:center;justify-content:center}
.acr-atc-hero .hero-bg__card{position:relative;z-index:6;text-align:center;max-width:960px;margin:auto}
.acr-atc-hero .hero-bg__card h1,.acr-atc-hero .hero-bg__card p,.acr-atc-hero .hero-bg__card .hero-lead{color:#f5f6eb!important;opacity:1!important}
.acr-atc-hero .hero-bg__card a{position:relative;z-index:7}
.acr-atc-hero__fallback{min-height:620px;background:linear-gradient(180deg,#34536b,#002041)}
.acr-tc-content{width:100%}
.acr-tc-content h2{font-size:clamp(21px, 1.77vw, 28px);margin:0 0 22px}
.acr-tc-content h3{font-size:clamp(19px, 1.45vw, 23px);margin:0 0 13px}
.acr-tc-intro{display:grid;grid-template-columns:1fr 1fr;min-height:420px}
.acr-tc-intro__media{background:#f5f6eb;min-height:400px}
.acr-tc-intro__media img{display:block;width:100%;height:100%;object-fit:cover}
.acr-tc-intro__text{padding:clamp(45px,5vw,95px);display:flex;flex-direction:column;justify-content:center;text-align:center}
.acr-tc-videos{background:#002041;color:#f5f6eb;padding:85px 0 95px}
.acr-tc-videos h2,.acr-tc-videos p{color:#f5f6eb}
.acr-tc-videos__intro{margin-bottom:40px}
.acr-tc-videos__layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:clamp(25px,4vw,60px);align-items:center}
.acr-tc-videos__player{aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#061b31}
.acr-tc-videos__video{display:block;width:100%;height:100%;object-fit:contain}
.acr-tc-videos__choices{display:grid;gap:12px}
.acr-tc-video-row{display:flex;flex-direction:column;gap:6px;width:100%;padding:22px 26px;border:1px solid rgba(245,246,235,.2);border-radius:12px;background:#12365b;color:#f5f6eb;text-align:left;cursor:pointer;font:inherit}
.acr-tc-video-row strong{font:600 20px/1.25 "Stack Sans Headline",sans-serif}
.acr-tc-video-row span{font-size:16px;line-height:1.4}
.acr-tc-video-row.is-active,.acr-tc-video-row:focus-visible{border-color:#b8f9b4;outline-offset:3px}
.acr-tc-steps{padding:90px 0 40px}
.acr-tc-steps__intro{text-align:center;max-width:900px;margin-bottom:70px}
.acr-tc-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,6vw,100px);align-items:center;margin:0 0 60px}
.acr-tc-step__media{grid-column:1;grid-row:1;background:#f5f6eb;border-radius:16px;overflow:hidden}
.acr-tc-step__media img{display:block;width:100%;aspect-ratio:1200/680;object-fit:cover}
.acr-tc-step__copy{grid-column:2;grid-row:1;min-width:0}
.acr-tc-step--reverse .acr-tc-step__media{grid-column:2}
.acr-tc-step--reverse .acr-tc-step__copy{grid-column:1}
.acr-tc-step__number{display:block;font:600 clamp(64px,7vw,105px)/.95 "Stack Sans Headline",sans-serif;margin-bottom:12px}
.acr-tc-requirements{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,110px);padding-block:55px 100px}
.acr-tc-requirements ul{padding-left:25px;margin:0}
.acr-tc-requirements li{margin-bottom:16px}
.acr-atc-apply{width:min(860px,calc(100% - 80px));margin:0 auto 100px;background:#002041;color:#f5f6eb;border-radius:18px;padding:clamp(24px, 3vw, 40px);display:flex;align-items:center;justify-content:space-between;gap:32px}
.acr-atc-apply__text{max-width:850px}
.acr-atc-apply h2{color:#f5f6eb;font-size:clamp(18px, 1.6vw, 22px);margin:0 0 8px}
.acr-atc-apply p{color:#f5f6eb;margin:0}
.acr-atc-button{display:inline-flex;align-items:center;justify-content:center;min-width:180px;min-height:44px;padding:10px 22px;background:#f5f6eb;color:#002041;text-decoration:none;border-radius:999px;font:700 19px/1 "Inter Tight",sans-serif;white-space:nowrap}
.acr-atc-button:hover,.acr-atc-button:focus-visible{background:#f5f6eb;color:#002041}
@media(max-width:900px){.acr-tc-videos__layout{grid-template-columns:1fr}.acr-tc-intro,.acr-tc-requirements{grid-template-columns:1fr}.acr-tc-intro__media{min-height:260px}.acr-atc-apply{padding:28px}}
@media(max-width:650px){.acr-atc-container,.acr-atc-apply{width:calc(100% - 40px)}.acr-atc-hero,.acr-atc-hero>.hero-bg,.acr-atc-hero .hero-bg__content{min-height:530px}.acr-tc-intro__text{padding:45px 24px}.acr-tc-videos{padding:60px 0}.acr-tc-steps{padding:60px 0 15px}.acr-tc-steps__intro{margin-bottom:40px}.acr-tc-step{grid-template-columns:1fr;gap:20px;margin-bottom:50px}.acr-tc-step__media,.acr-tc-step--reverse .acr-tc-step__media{grid-column:1;grid-row:1}.acr-tc-step__copy,.acr-tc-step--reverse .acr-tc-step__copy{grid-column:1;grid-row:2}.acr-tc-requirements{padding-block:35px 65px}.acr-atc-apply{margin-bottom:65px;flex-direction:column;align-items:flex-start;gap:25px;padding:30px 25px}}

/* WYSIWYG-version: skydda hero-text och CTA mot gradient-overlay */
.acr-atc-page .acr-atc-hero .hero-bg{isolation:isolate}
.acr-atc-page .acr-atc-hero .hero-bg__media{z-index:0;pointer-events:none}
.acr-atc-page .acr-atc-hero .hero-bg__content{position:relative;z-index:2}
.acr-atc-page .acr-atc-hero .hero-bg__card,.acr-atc-page .acr-atc-hero .hero-bg__card *{position:relative;z-index:2}
.acr-atc-page .acr-atc-hero .hero-bg__card h1,.acr-atc-page .acr-atc-hero .hero-bg__card p{color:#f5f6eb}
.acr-atc-page .acr-tc-video-row h3{margin:0;color:inherit;font-size:20px}
.acr-atc-page .acr-tc-video-row p{margin:0;color:inherit;font-size:17px}
.acr-atc-page .acr-tc-video-row{display:flex;cursor:pointer}

/* Bli flygledare: finjustering efter jämförelse med PDF-skissen */
.acr-atc-page .acr-tc-intro__text > .acr-tc-intro__media,
.acr-atc-page .acr-tc-intro__text > .acr-tc-intro__text,
.acr-atc-page .acr-tc-intro__text > .acr-tc-content{display:none!important}
.acr-atc-page .acr-tc-intro__text{background:#f5f6eb}
.acr-atc-page .acr-tc-intro__media{background:#f5f6eb}
.acr-atc-page .acr-atc-apply{display:flex!important;align-items:center;justify-content:space-between;background:#002041;color:#f5f6eb}
.acr-atc-page .acr-atc-apply__text{flex:1;min-width:0}
.acr-atc-page .acr-atc-apply .acr-atc-button{flex-shrink:0}


/* ============================================================
   TRAFFIC CONTROLLER – matchad mot PDF-skissen (1440 px bred)
   Hero: 692px, H1 36px, ingress 20px, CTA 264x58px.
   Header: mörk gradient som tonar ut inom ca 75px.
   Endast presentation – befintliga texter/Umbraco påverkas inte.
   ============================================================ */
.acr-atc-page .acr-atc-hero,
.acr-atc-page .acr-atc-hero > .hero-bg {
    min-height:692px !important;
}
.acr-atc-page .acr-atc-hero > .hero-bg {
    position:relative !important;
    isolation:isolate;
}
.acr-atc-page .acr-atc-hero .hero-bg__media {
    position:absolute !important;
    inset:0;
    z-index:0 !important;
    pointer-events:none;
}
.acr-atc-page .acr-atc-hero .hero-bg__media img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.acr-atc-page .acr-atc-hero .hero-bg__shade {
    position:absolute;
    inset:0;
    z-index:1 !important;
    pointer-events:none;
}
.acr-atc-page .acr-atc-hero .hero-bg__content {
    position:relative !important;
    z-index:3 !important;
    min-height:692px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:120px 24px 74px !important;
}
.acr-atc-page .acr-atc-hero .hero-bg__card {
    position:relative !important;
    z-index:4 !important;
    width:min(100%,900px);
    max-width:900px;
    margin:0 auto;
    padding:0 !important;
    text-align:center;
    background:transparent !important;
    box-shadow:none !important;
}
.acr-atc-page .acr-atc-hero .hero-bg__card h1 {
    color:#f5f6eb !important;
    font-family:"Stack Sans Headline",sans-serif !important;
    font-size:clamp(28px, 4vw, 36px) !important;
    font-weight:700 !important;
    line-height:1.18 !important;
    margin:0 0 31px !important;
    opacity:1 !important;
}
.acr-atc-page .acr-atc-hero .hero-bg__card p,
.acr-atc-page .acr-atc-hero .hero-bg__card .hero-lead {
    color:#f5f6eb !important;
    font-family:"Inter Tight",sans-serif !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.28 !important;
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
    opacity:1 !important;
}
.acr-atc-page .acr-atc-hero .hero-bg__card a[href],
.acr-atc-page .acr-atc-hero .hero-bg__card a[href]:visited {
    position:relative !important;
    z-index:5 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box;
    width:220px !important;
    min-width:0 !important;
    height:44px !important;
    min-height:44px !important;
    margin-top:38px !important;
    padding:0 22px !important;
    border:1px solid #002041 !important;
    border-radius:999px !important;
    background:#002041 !important;
    color:#f5f6eb !important;
    font-family:"Inter Tight",sans-serif !important;
    font-size:14px !important;
    font-weight:600 !important;
    line-height:1.1 !important;
    text-decoration:none !important;
    opacity:1 !important;
}
.acr-atc-page .acr-atc-hero .hero-bg__card a[href]:hover,
.acr-atc-page .acr-atc-hero .hero-bg__card a[href]:focus-visible {
    background:#002041 !important;
    border-color:#002041 !important;
    color:#b8f9b4 !important;
}
/* Skissens navigationsskugga – stark upptill, nästan borta vid 75px. */
html body .site-header::before {
    height:82px !important;
    background:linear-gradient(to bottom,
        rgba(0,23,47,.95) 0%,
        rgba(0,23,47,.77) 43%,
        rgba(0,23,47,.23) 82%,
        rgba(0,23,47,0) 100%) !important;
    pointer-events:none;
}
/* CTA längst ned är separat från hero-knappen. */
.acr-atc-page .acr-atc-apply .acr-atc-button {
    background:#f5f6eb !important;
    color:#002041 !important;
    border-radius:999px !important;
    min-height:44px;
    font-family:"Inter Tight",sans-serif;
    font-size:14px;
}
@media(max-width:650px) {
    .acr-atc-page .acr-atc-hero,
    .acr-atc-page .acr-atc-hero > .hero-bg {min-height:580px !important}
    .acr-atc-page .acr-atc-hero .hero-bg__content {
        min-height:580px !important;
        padding:110px 20px 60px !important;
    }
    .acr-atc-page .acr-atc-hero .hero-bg__card h1 {
        font-size:clamp(28px, 4vw, 36px) !important;
        margin-bottom:22px !important;
    }
    .acr-atc-page .acr-atc-hero .hero-bg__card p,
    .acr-atc-page .acr-atc-hero .hero-bg__card .hero-lead {
        font-size:16px !important;
        line-height:1.4 !important;
    }
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href] {
        width:min(220px,100%) !important;
        margin-top:28px !important;
    }
}

/* Menygradient: tar bort skarp horisontell startkant och mjukar ut fallet. */
@media (min-width:1000px) {
  html body .site-header::before {
    top:-60px !important;
    height:275px !important;
    background:linear-gradient(to bottom,
      rgba(0,22,45,.97) 0%,
      rgba(0,24,49,.94) 22%,
      rgba(0,27,54,.80) 39%,
      rgba(0,29,58,.52) 60%,
      rgba(0,31,62,.20) 79%,
      rgba(0,32,65,0) 100%) !important;
    box-shadow:none !important;
    border:0 !important;
  }
  html body .site-header,
  html body .site-header .header-top,
  html body .site-header .header-nav-row {
    box-shadow:none !important;
    border-top:0 !important;
  }
}

/* Tydligare länkar i TrafficController-sidans WYSIWYG-innehåll */
.acr-atc-page .acr-tc-content a:not(.acr-atc-button) {
    font-family: "Inter Tight", sans-serif;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
}


/* ACR – korrigerad sammanhängande menyskugga (desktop).
   Pseudolagret börjar exakt vid överkanten, utan skarp skarv.
   Menyn ligger ovanför skuggan, som tonar ned över hero-bilden. */
@media (min-width: 1000px) {
  html body .site-header {
    position: absolute;
    isolation: isolate;
    overflow: visible !important;
    background: transparent !important;
  }
  html body .site-header::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 270px !important;
    z-index: -1 !important;
    pointer-events: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: linear-gradient(180deg,
      rgba(0, 20, 42, .94) 0%,
      rgba(0, 22, 45, .88) 16%,
      rgba(0, 25, 50, .70) 35%,
      rgba(0, 28, 56, .42) 58%,
      rgba(0, 30, 60, .15) 80%,
      rgba(0, 32, 65, 0) 100%) !important;
  }
  html body .site-header .header-top,
  html body .site-header .header-nav-row {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  html body .site-header[data-floating-menu="true"].acr-header-scrolled::before,
  html body .site-header[data-floating-menu="true"].is-scrolled::before {
    display: none !important;
  }
}



/* TrafficController – menytoning efter PDF-referensen.
   Ingen separat header-gradient: en enda kort toning på hero-bilden. */
@media (min-width: 1000px) {
  body:has(.acr-atc-page) .site-header,
  body:has(.acr-atc-page) .site-header .header-top,
  body:has(.acr-atc-page) .site-header .header-nav-row {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }
  body:has(.acr-atc-page) .site-header::before,
  body:has(.acr-atc-page) .site-header::after {
    content: none !important;
    display: none !important;
  }
  .acr-atc-page .acr-atc-hero .hero-bg__media {
    position: absolute !important;
    inset: 0 !important;
    overflow: hidden;
  }
  .acr-atc-page .acr-atc-hero .hero-bg__media::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: 112px !important;
    z-index: 5 !important;
    pointer-events: none !important;
    /* Referensbild 2026-10-18: kort mörk topp och jämn uttoning
       genom menyhöjden till genomskinligt vid 112 px. */
    background: linear-gradient(180deg,
      rgba(0,24,48,.88) 0%,
      rgba(0,24,48,.86) 18%,
      rgba(0,24,48,.75) 40%,
      rgba(0,24,48,.55) 63%,
      rgba(0,24,48,.25) 82%,
      rgba(0,24,48,0) 100%) !important;
  }
  .acr-atc-page .acr-atc-hero .hero-bg__content {
    position: relative !important;
    z-index: 10 !important;
  }
}


/* ============================================================
   TJÄNSTER – layout enligt ACR_tjänster.pdf (18 oktober 2026)
   Befintliga block, bilder, rubriker och länkar från Umbraco.
   Avgränsat till .acr-service-page.
   ============================================================ */
.acr-service-page .acr-generic-main.page-no-sidebar,
.acr-service-page .acr-generic-main .page-content,
.acr-service-page .acr-generic-main .sub-page {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
}
.acr-service-page .acr-generic-main {
    background:#f5f6eb !important;
}
/* Det befintliga WYSIWYG/freeblock-blocket är sidans ingress,
   inte en del av heron. */
.acr-service-page .acr-generic-main .section:has(> .freeblock),
.acr-service-page .acr-generic-main .section:has(.freeblock) {
    background:#f5f6eb !important;
    padding:66px 24px 30px !important;
    margin:0 !important;
    border:0 !important;
}
.acr-service-page .acr-generic-main .freeblock,
.acr-service-page .acr-generic-main .freeblock-100 {
    width:100% !important;
    max-width:670px !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:center !important;
    color:#002041 !important;
    font-family:'Inter Tight',sans-serif !important;
    font-size:16px !important;
    line-height:1.55 !important;
}
.acr-service-page .acr-generic-main .freeblock p {
    margin:0 !important;
    font:inherit !important;
    color:inherit !important;
    text-align:center !important;
}
/* Blocket har redan alla sex tjänster – visa dem, skapa inga nya. */
.acr-service-page .services-listing-section {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    background:#f5f6eb !important;
    margin:0 !important;
    padding:16px 28px 80px !important;
}
.acr-service-page .services-listing-container {
    display:block !important;
    max-width:1180px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
}
/* Skissen saknar en extra rubrik mellan ingressen och korten. */
.acr-service-page .services-listing-title {display:none !important;}
.acr-service-page .services-grid {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:22px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}
.acr-service-page .services-grid .service-card {
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:0 !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:1 / 1 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:16px !important;
    background:#002041 !important;
    box-shadow:none !important;
    isolation:isolate !important;
}
.acr-service-page .service-card .service-card-image-link {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    z-index:0 !important;
    overflow:hidden !important;
    opacity:1 !important;
}
.acr-service-page .service-card .service-card-image {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    opacity:1 !important;
}
.acr-service-page .service-card::before {
    content:'' !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:rgba(0,32,65,.70) !important;
    pointer-events:none !important;
}
.acr-service-page .service-card .service-card-content {
    position:relative !important;
    z-index:2 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:28px 22px !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    text-align:center !important;
    color:#f5f6eb !important;
    pointer-events:none !important;
}
.acr-service-page .service-card .service-card-content h3 {
    color:#f5f6eb !important;
    font-family:'Stack Sans Headline',sans-serif !important;
    font-size:17px !important;
    font-weight:600 !important;
    line-height:1.2 !important;
    text-transform:uppercase !important;
    margin:0 0 18px !important;
    padding:0 !important;
}
.acr-service-page .service-card .service-lead {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:5 !important;
    overflow:hidden !important;
    width:100% !important;
    max-height:125px !important;
    color:#f5f6eb !important;
    font-family:'Inter Tight',sans-serif !important;
    font-size:15px !important;
    line-height:1.5 !important;
    font-weight:400 !important;
    margin:0 !important;
    padding:0 !important;
    text-align:center !important;
}
.acr-service-page .service-card .service-lead p {
    display:inline !important;
    color:inherit !important;
    font:inherit !important;
    margin:0 !important;
    padding:0 !important;
}
/* Hela kortet är klickbart genom befintlig bildlänk. */
.acr-service-page .service-card .service-card-image-link {
    z-index:3 !important;
    opacity:0 !important;
}
.acr-service-page .service-card .service-card-image-link img {
    opacity:0 !important;
}
/* Visa bilden separat via CSS? Nej: bilden ska synas, därför läggs
   den i en egen stacking context under klicklänken med :has-stöd. */
.acr-service-page .service-card:has(.service-card-image) {
    background:#002041 !important;
}
.acr-service-page .service-card .service-card-image-link {
    z-index:0 !important;
    opacity:1 !important;
}
.acr-service-page .service-card .service-card-image-link img {
    opacity:1 !important;
}
.acr-service-page .service-card .service-card-content .service-read-more {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    opacity:0 !important;
    z-index:5 !important;
    pointer-events:auto !important;
}
.acr-service-page .service-card:hover .service-card-image {transform:scale(1.04);transition:transform .25s ease;}
.acr-service-page .service-card:focus-within {outline:3px solid #83dbbb;outline-offset:3px;}
/* PDF-skissen visar endast den nedre kontaktpanelen på träbakgrund. */
.acr-service-page .acr-generic-boardwall {
    padding-top:74px !important;
    padding-bottom:74px !important;
}
.acr-service-page .acr-generic-boardwall__content {display:none !important;}
.acr-service-page .acr-generic-boardwall__contact {
    margin-top:0 !important;
}
@media(max-width:900px) {
    .acr-service-page .services-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:600px) {
    .acr-service-page .services-grid {grid-template-columns:1fr !important;gap:22px !important;}
    .acr-service-page .services-listing-section {padding:14px 20px 55px !important;}
    .acr-service-page .services-grid .service-card {height:auto !important;min-height:0 !important;aspect-ratio:1 / 1 !important;}
    .acr-service-page .acr-generic-main .section:has(.freeblock) {padding:44px 20px 25px !important;}
    .acr-service-page .acr-generic-main .freeblock {font-size:15px !important;}
}


/* =========================================================
   HEROHOJD: alla undersidor, oavsett sidmall.
   Startsidan (body.acr-home-composed) behaller originalhojden.
   Laggs sist for att ga fore tidigare hero-regler.
   ========================================================= */
body:not(.acr-home-composed) .hero-bg {
    height: min(48svh, 474px) !important;
    min-height: 360px !important;
    max-height: 474px !important;
}
body:not(.acr-home-composed) .acr-atc-hero,
body:not(.acr-home-composed) .acr-atc-hero > .hero-bg,
body:not(.acr-home-composed) .acr-atc-hero .hero-bg__content,
body:not(.acr-home-composed) .acr-atc-hero__fallback {
    min-height: 360px !important;
    max-height: 474px !important;
}
@media (max-width: 700px) {
    body:not(.acr-home-composed) .hero-bg {
        height: 38svh !important;
        min-height: 280px !important;
        max-height: 420px !important;
    }
    body:not(.acr-home-composed) .acr-atc-hero,
    body:not(.acr-home-composed) .acr-atc-hero > .hero-bg,
    body:not(.acr-home-composed) .acr-atc-hero .hero-bg__content,
    body:not(.acr-home-composed) .acr-atc-hero__fallback {
        min-height: 280px !important;
        max-height: 420px !important;
    }
}


/* =========================================================
   ACR FAKTA – TIDSRESA VID SKROLL (ren CSS)
   Linjen ritas fram från punkt till punkt, och varje siffra
   står på 0 tills linjen når den – då räknar den upp.
   Animationen följer skrollningen (spelas baklänges om man
   skrollar upp). Webbläsare utan stöd, och besökare som valt
   "minska rörelse", ser blocket direkt utan animation.

   OBS: slutvärdena (2007, 19, 200) står i @keyframes
   acr-count-1/2/3 nedan. Ändras siffrorna i Umbraco måste
   de ändras här också.
   ========================================================= */

/* Mobil: mycket längre avstånd mellan stegen, och linjen
   går exakt från första till sista punkten. */
@media (max-width: 600px) {
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(7),
    .freeblock-100:has(> .acr-facts-number) > .acr-facts-description:nth-of-type(11) {
        margin-bottom: 160px !important;
    }
    /* Linjen placeras i rutnätet: från mitten av första siffrans
       rad (rad 1) till mitten av sista siffrans rad (rad 5). */
    .umb-block-grid__layout-item .freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
        grid-column: 1 !important;
        grid-row: 1 / 6 !important;
        top: 38px !important;
        bottom: 38px !important;
        height: auto !important;
    }
}

/* =========================================================
   FAKTA / TIDSLINJE – STABIL VISNING I SAFARI OCH ÖVRIGA
   Den tidigare CSS-räknaren med animation-timeline är borttagen.
   HTML-siffrorna visas direkt; eventuell JS-animation får ändra texten.
   ========================================================= */
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number {
    color: #b8f9b4 !important;
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
    animation-timeline: auto !important;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number::before,
.freeblock-100:has(> .acr-facts-number) > .acr-facts-number::after {
    content: none !important;
    display: none !important;
}
.freeblock-100:has(> .acr-facts-number) > .acr-facts-dot,
.freeblock-100:has(> .acr-facts-number) > .acr-facts-description,
.freeblock-100:has(> .acr-facts-number) > .acr-facts-line {
    animation: none !important;
    animation-timeline: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    translate: none !important;
    scale: none !important;
}

/* =========================================================
   UNDERSIDOR – VÄNSTERSTÄLLD BRÖDTEXT OCH LISTOR
   Endast brödtext (p) och listor (ul/ol/li) i sidinnehållet.
   Gäller inte startsidan eller Bli flygledare. Rubriker och
   allt annat är oförändrat.
   ========================================================= */
.acr-generic-main .page-content .sub-page :is(p, ul, ol, li),
.acr-service-page .acr-generic-main .freeblock :is(p, ul, ol, li) {
    text-align: left !important;
}

/* =========================================================
   CTA-KORT LÄNGST NER – "Redo att ta nästa steg?" (Bli flygledare)
   Mindre brödtext, och centrerad rubrik/text/knapp i mobilformat
   (samma brytpunkt som övriga kontaktpaneler).
   ========================================================= */
.acr-atc-page .acr-atc-apply p {
    font-size: 15px;
}
@media (max-width: 767px) {
    .acr-atc-page .acr-atc-apply {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 22px !important;
    }
    .acr-atc-page .acr-atc-apply__text,
    .acr-atc-page .acr-atc-apply h2,
    .acr-atc-page .acr-atc-apply p {
        text-align: center !important;
    }
    .acr-atc-page .acr-atc-apply p { font-size: 14px; }
}

/* =========================================================
   HERO PÅ BLI FLYGLEDARE – rubriken centrerad
   Rubriken låg fast mot vänster i en ruta som var smalare än
   kortet, så den hamnade snett och hoppade när bredden ändrades.
   ========================================================= */
.acr-atc-page .acr-atc-hero .hero-bg__card h1 {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
}

/* =========================================================
   ALLA STYCKEN (p) I 12 PT
   Gäller all brödtext på hela sajten, utom i header och
   hero-bilder. 12pt motsvarar 16px på skärm.
   (:not(#acr-p) ger regeln företräde framför äldre regler.)
   ========================================================= */
body p:not(#acr-p):not(.site-header *):not(.hero-bg *) {
    font-size: 12pt !important;
}

/* =========================================================
   TJÄNSTEKORT – ENDAST RUBRIK
   Brödtexten i korten på Tjänster-sidan döljs.
   ========================================================= */
.acr-service-page .service-card .service-lead {
    display: none !important;
}
.acr-service-page .service-card .service-card-content h3 {
    margin: 0 !important;
    font-size: clamp(20px, 1.8vw, 24px) !important;
    line-height: 1.15 !important;
}

/* =========================================================
   FOOTER – CENTRERAD TEXT I MOBILLÄGE
   ========================================================= */
@media (max-width: 600px) {
    .acr-footer,
    .acr-footer .acr-footer__col,
    .acr-footer .acr-footer__col :is(h3, p, ul, li, a) {
        text-align: center !important;
    }
    .acr-footer .acr-footer__col {
        justify-items: center;
        align-items: center;
    }
}

/* =========================================================
   BRÄDVÄGGEN – ENDAST KONTAKTPANELEN
   All text på brädväggen döljs utom i kontaktpanelen.
   ========================================================= */
.acr-generic-boardwall__content {
    display: none !important;
}

/* =========================================================
   KONTAKTKORT – SAMMA BRÄDVÄGG SOM BAKGRUND ÖVERALLT
   Startsidans kontaktpuff och "Redo att ta nästa steg?" på
   Bli flygledare får samma träbakgrund och kantlinje som
   kontaktkortet på undersidorna.
   ========================================================= */

/* Startsidan */
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"]:has(> .section > .freeblock-100 > p a[href="/sv/kontakt/"]) > .section {
    background-color: #002041 !important;
    background-image: linear-gradient(rgba(0, 32, 65, .60), rgba(0, 32, 65, .60)), url('/media/2hhh5zmr/img-003.jpg') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: clamp(70px, 8vw, 110px) 24px !important;
}
.umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]) {
    border: 2px solid #f5f6eb !important;
}

/* Bli flygledare */
.acr-atc-page {
    isolation: isolate;
}
.acr-atc-page .acr-atc-apply {
    position: relative !important;
    margin: clamp(70px, 8vw, 110px) auto !important;
    border: 2px solid #f5f6eb !important;
}
.acr-atc-page .acr-atc-apply::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: calc(-1 * clamp(70px, 8vw, 110px));
    bottom: calc(-1 * clamp(70px, 8vw, 110px));
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background-color: #002041;
    background-image: linear-gradient(rgba(0, 32, 65, .60), rgba(0, 32, 65, .60)), url('/media/2hhh5zmr/img-003.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
}

/* =========================================================
   INLEDANDE TEXT PÅ UNDERSIDOR – INTER TIGHT BOLD
   Den första texten i sidinnehållet (direkt under heron) blir
   Inter Tight Bold (700). Gäller bara när texten inte har en
   egen rubrik – inledningar med rubrik (som på startsidan och
   Bli flygledare) är oförändrade.
   ========================================================= */

/* Vanliga undersidor: första stycket när innehållet börjar med text */
.acr-generic-page:not(.acr-atc-page) .acr-generic-main .page-content :is(.sub-page, .freeblock, .freeblock-100) > p:first-child,
.acr-generic-page:not(.acr-atc-page) .acr-generic-main .page-content :is(.sub-page, .freeblock, .freeblock-100) > p:first-child :is(strong, b),
/* Tjänstesidor (ANS-tjänster, Konsulttjänster osv.): första stycket */
.acr-service-detail-page .sub-page .service-text > p:first-child,
.acr-service-detail-page .sub-page .service-text > p:first-child :is(strong, b),
/* Tjänster: ingressen ovanför korten, om den saknar rubrik */
.acr-service-page .acr-generic-main :is(.freeblock, .freeblock-100):not(:has(h1, h2, h3)) > p:first-child,
.acr-service-page .acr-generic-main :is(.freeblock, .freeblock-100):not(:has(h1, h2, h3)) > p:first-child :is(strong, b) {
    font-family: "Inter Tight", Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* =========================================================
   VERSALER ENDAST I HERO
   Rubriker i hero-bilderna: Stack Sans Notch med versaler.
   Övriga rubriker: Stack Sans Headline. Alla andra
   rubriker – i innehåll, kort, kontaktpaneler och footer –
   visas som de är skrivna i Umbraco. Menyer och knappar är
   oförändrade.
   (:not(#acr-case) ger regeln företräde framför äldre regler.)
   ========================================================= */
html body :is(h1, h2, h3, h4, h5, h6, .acr-linkcard__title, .acr-tc-video-row strong, .why-tagline):not(.hero-bg *):not(#acr-case) {
    text-transform: none !important;
}
html body .hero-bg :is(h1, h2, h3):not(#acr-case) {
    font-family: "Stack Sans Notch", "Stack Sans Headline", "Inter Tight", sans-serif !important;
    text-transform: uppercase !important;
}

/* =========================================================
   KNAPPAR – EN GEMENSAM STIL
   Alla knappar: mörkblå (#002041) med beige text. Vid hovring
   blir texten grön, knappen förblir mörkblå.
   Beige knappar (i kontaktkorten) behåller sina färger.
   All knapptext: Stack Sans Notch, versaler.
   (:not(#acr-btn) ger regeln företräde framför äldre regler.)
   ========================================================= */

/* Gemensam form och typografi för alla knappar */
html body :is(
    .acr-buttons a,
    section.section > .why-grid .why-text .rte a,
    .hero-bg .hero-bg__card a.acr-hero-existing-button,
    .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href],
    .freeblock-100 a[href="/sv/kontakt/"],
    .acr-generic-boardwall__contact-button,
    .acr-atc-button
):not(#acr-btn) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 200px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 44px !important;
    padding: 10px 16px !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-family: "Stack Sans Notch", "Stack Sans Headline", "Inter Tight", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transform: none !important;
    transition: color .2s ease !important;
    box-sizing: border-box !important;
}

/* Mörkblå knappar */
html body :is(
    .acr-buttons a,
    section.section > .why-grid .why-text .rte a,
    .hero-bg .hero-bg__card a.acr-hero-existing-button,
    .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href]
):not(#acr-btn),
html body :is(
    .acr-buttons a,
    section.section > .why-grid .why-text .rte a,
    .hero-bg .hero-bg__card a.acr-hero-existing-button,
    .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href]
):not(#acr-btn):is(:visited, :hover, :focus-visible) {
    background: #002041 !important;
    border-color: #002041 !important;
}
html body :is(
    .acr-buttons a,
    section.section > .why-grid .why-text .rte a,
    .hero-bg .hero-bg__card a.acr-hero-existing-button,
    .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href]
):not(#acr-btn) {
    color: #f5f6eb !important;
}
html body :is(
    .acr-buttons a,
    section.section > .why-grid .why-text .rte a,
    .hero-bg .hero-bg__card a.acr-hero-existing-button,
    .hero-bg .hero-bg__card a[href*="/bli-flygledare/"],
    .acr-atc-page .acr-atc-hero .hero-bg__card a[href]
):not(#acr-btn):is(:hover, :focus-visible) {
    color: #b8f9b4 !important;
}

/* Beige knappar i kontaktkorten – behåller sina färger, även vid hovring */
html body :is(
    .freeblock-100 a[href="/sv/kontakt/"],
    .acr-generic-boardwall__contact-button,
    .acr-atc-apply .acr-atc-button
):not(#acr-btn) {
    background: #f5f6eb !important;
    color: #002041 !important;
}

/* Knappar sida vid sida – lika breda, staplas på mobil */
html body p.acr-buttons:not(#acr-btn) {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, 200px) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px 0 0 !important;
    padding: 0 !important;
}
html body p.acr-buttons a:not(#acr-btn) {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}
/* Text direkt efter knapparna, t.ex. "Sista ansökningsdag" */
html body p.acr-buttons + p:not(#acr-btn) {
    margin-top: 18px !important;
    font-size: 15px !important;
}
/* Knapparna radbryts automatiskt när de inte får plats bredvid varandra */

/* =========================================================
   PUFFAR PÅ STARTSIDAN – UTAN NEDERSTA TEXTRADEN
   ========================================================= */
html body .acr-linkcard .acr-linkcard__cta:not(#acr-btn) {
    display: none !important;
}

/* =========================================================
   FLYTANDE MENY – MÖRKBLÅ TONING NÄR MAN SKROLLAR
   Samma mörkblå ton som menyn har över hero-bilden. Toningen
   går ned till 0 % i underkant, så att ingen kant syns.
   ========================================================= */
@media (min-width: 1000px) {
    html body .site-header[data-floating-menu="true"]:is(.acr-header-scrolled, .is-scrolled):not(#acr-menu) {
        background: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }
    html body .site-header[data-floating-menu="true"]:is(.acr-header-scrolled, .is-scrolled):not(#acr-menu)::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: 120px !important;
        z-index: -1 !important;
        pointer-events: none !important;
        border: 0 !important;
        box-shadow: none !important;
        background: linear-gradient(180deg,
            rgba(0, 22, 45, .95) 0%,
            rgba(0, 22, 45, .92) 20%,
            rgba(0, 24, 48, .84) 35%,
            rgba(0, 26, 52, .71) 48%,
            rgba(0, 28, 56, .55) 60%,
            rgba(0, 30, 60, .38) 71%,
            rgba(0, 31, 62, .22) 81%,
            rgba(0, 32, 64, .10) 90%,
            rgba(0, 32, 65, .03) 96%,
            rgba(0, 32, 65, 0) 100%) !important;
    }
}

/* =========================================================
   KONTAKTKORTEN – SAMMA, SMALARE BREDD ÖVERALLT
   "Vill du veta mer om ACR?", "Hittar du inte det du söker?"
   och "Redo att ta nästa steg?": max 680px breda.
   ========================================================= */
html body :is(
    .acr-generic-boardwall__contact,
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]),
    .acr-atc-page .acr-atc-apply
):not(#acr-card) {
    width: min(680px, calc(100% - 40px)) !important;
    max-width: 680px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* =========================================================
   MELLANSTORA SKÄRMAR (surfplatta / litet fönster)
   ========================================================= */

/* Startsidan: text och bild under varandra under 900px
   (en senare regel låste tidigare två kolumner i alla bredder) */
@media (max-width: 900px) {
    html body .section > .why-grid:not(#acr-mid) {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* Bli flygledare: stegen i en kolumn under 900px –
   bild överst, sedan nummer, rubrik och text */
@media (max-width: 900px) {
    html body .acr-atc-page .acr-tc-step:has(> .acr-tc-step__media, > .acr-tc-step__copy):not(#acr-mid) {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 22px !important;
        margin-bottom: 56px !important;
        max-width: 640px;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    html body .acr-atc-page :is(.acr-tc-step__media, .acr-tc-step--reverse .acr-tc-step__media):not(#acr-mid) {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }
    html body .acr-atc-page :is(.acr-tc-step__copy, .acr-tc-step--reverse .acr-tc-step__copy):not(#acr-mid) {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }
}

/* =========================================================
   KONTAKTKORTEN – MINDRE INNEHÅLL
   Mindre luft, rubrik och text i alla tre kontaktkorten.
   ========================================================= */
html body :is(
    .acr-generic-boardwall__contact,
    .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]),
    .acr-atc-page .acr-atc-apply
):not(#acr-card):not(#acr-card2) {
    padding: clamp(26px, 3vw, 36px) clamp(24px, 3.4vw, 44px) !important;
    gap: 24px !important;
    border-radius: 16px !important;
}
html body :is(
    .acr-generic-boardwall__contact,
    .freeblock-100:has(> p a[href="/sv/kontakt/"]),
    .acr-atc-page .acr-atc-apply
) :is(h2, h3):not(#acr-card):not(#acr-card2) {
    font-size: clamp(17px, 1.4vw, 19px) !important;
    line-height: 1.15 !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
}
html body :is(
    .acr-generic-boardwall__contact,
    .freeblock-100:has(> p a[href="/sv/kontakt/"]),
    .acr-atc-page .acr-atc-apply
) p:not(#acr-card):not(#acr-card2) {
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-top: 0 !important;
}
@media (max-width: 767px) {
    html body .freeblock-100:has(> p a[href="/sv/kontakt/"]) > p:has(> a[href="/sv/kontakt/"]):not(#acr-card):not(#acr-card2) {
        margin-top: 24px !important;
    }
}
@media (max-width: 767px) {
    html body :is(
        .acr-generic-boardwall__contact,
        .freeblock-100:has(> p a[href="/sv/kontakt/"]),
        .acr-atc-page .acr-atc-apply
    ) p:not(#acr-card):not(#acr-card2) {
        font-size: 13.5px !important;
    }
}

/* =========================================================
   BLI FLYGLEDARE – KNAPPAR
   ========================================================= */
/* "Läs mer" centrerad under den centrerade introtexten */
html body .acr-atc-page .acr-tc-intro__text p.acr-buttons:not(#acr-btn) {
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Länken i steg 01 ("Gå direkt till ansökan!") blir en knapp */
html body .acr-atc-page .acr-tc-step__text p > a:only-child:not(#acr-btn) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 200px !important;
    max-width: 100% !important;
    min-height: 44px !important;
    margin-top: 6px !important;
    padding: 10px 10px !important;
    border-radius: 999px !important;
    background: #002041 !important;
    color: #f5f6eb !important;
    font-family: "Stack Sans Notch", "Stack Sans Headline", "Inter Tight", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: color .2s ease !important;
    box-sizing: border-box !important;
}
html body .acr-atc-page .acr-tc-step__text p > a:only-child:not(#acr-btn):is(:hover, :focus-visible) {
    color: #b8f9b4 !important;
}

/* =========================================================
   MOBIL – CENTRERADE KNAPPAR OCH TEXTEN OVANFÖR
   Under 768px centreras knapparna och texten som hör till dem.
   ========================================================= */
@media (max-width: 767px) {
    /* Startsidan: "Utbilda dig till flygledare hos ACR." */
    html body section.section > .why-grid > .why-text:not(#acr-mob),
    html body section.section > .why-grid > .why-text :is(h2, h3, p, .why-tagline, .rte):not(#acr-mob) {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Undersidor (t.ex. Karriär): sista avsnittet före knappen –
       rubriken, texten under den och knappen */
    html body .freeblock :is(h2, h3, h4):has(~ p.acr-buttons):not(:has(~ :is(h2, h3, h4) ~ p.acr-buttons)):not(#acr-mob),
    html body .freeblock :is(h2, h3, h4):has(~ p.acr-buttons):not(:has(~ :is(h2, h3, h4) ~ p.acr-buttons)) ~ :is(p, ul, ol, li):not(#acr-mob) {
        text-align: center !important;
    }

    /* Bli flygledare: stegen – nummer, rubrik, text och knapp
       vänsterställda, linjerade med bildens vänsterkant */
    html body .acr-atc-page .acr-tc-step__copy:not(#acr-mob),
    html body .acr-atc-page .acr-tc-step__copy :is(h2, h3, p, .acr-tc-step__number, .acr-tc-step__text):not(#acr-mob) {
        text-align: left !important;
    }

    /* Alla knapprader centreras */
    html body p.acr-buttons:not(#acr-mob):not(#acr-btn) {
        justify-content: center !important;
    }
}

/* Startsidans kontaktkort: samma luft som de andra korten
   (rubrik och text tätt ihop, knappen centrerad bredvid) */
@media (min-width: 768px) {
    html body .umb-block-grid__layout-item[data-content-element-type-alias="freeBlock100"] .freeblock-100:has(> p a[href="/sv/kontakt/"]):not(#acr-card):not(#acr-card2) {
        grid-template-rows: auto auto !important;
        row-gap: 0 !important;
        column-gap: 24px !important;
        align-content: center !important;
    }
    html body .freeblock-100:has(> p a[href="/sv/kontakt/"]) > p:has(> a[href="/sv/kontakt/"]):not(#acr-card):not(#acr-card2) {
        grid-row: 1 / span 2 !important;
        margin: 0 !important;
    }
}




/* MOBILMENY: logga och menyknapp ska ligga kvar ovanför öppet menyfält */
@media (max-width: 999px) {
  body.mobile-menu-open .site-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10000 !important;
  }
  body.mobile-menu-open .site-header .header-top {
    position: relative !important;
    z-index: 1010 !important;
    background: #002041 !important;
  }
  body.mobile-menu-open .site-header .header-top-inner,
  body.mobile-menu-open .site-header .logo,
  body.mobile-menu-open .site-header .menu-btn {
    position: relative !important;
    z-index: 1011 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  body.mobile-menu-open .site-header .mobile-nav {
    position: fixed !important;
    top: 78px !important;
    bottom: 0 !important;
    z-index: 1004 !important;
  }
}
