/* =========================================================
   AZM-METAL V14
   FINAL PROFESSIONAL VISUAL SYSTEM
   ========================================================= */

:root {
    --azm14-orange: #f47a1f;
    --azm14-orange-dark: #cf5d0c;
    --azm14-orange-pale: #fff0e3;

    --azm14-black: #0c151b;
    --azm14-black-2: #131e25;

    --azm14-text: #10181e;
    --azm14-muted: #687178;

    --azm14-bg: #f8f5f0;
    --azm14-white: #ffffff;

    --azm14-border: #e7e1da;

    --azm14-shadow:
        0 15px 40px rgba(15, 24, 30, .07);

    --azm14-shadow-hover:
        0 22px 54px rgba(15, 24, 30, .13);

    --azm-copper: #f47a1f !important;
    --azm-copper-dark: #cf5d0c !important;
}


/* =========================================================
   BASE
   ========================================================= */

html,
body {
    background:
        var(--azm14-bg);
}

body {
    color:
        var(--azm14-text);

    -webkit-font-smoothing:
        antialiased;
}


.azm-v14-shell {
    width:
        min(
            1420px,
            calc(100% - 80px)
        );

    margin:
        0 auto;
}


.azm-v14-line {
    display:
        block;

    width:
        42px;

    height:
        3px;

    margin-bottom:
        15px;

    background:
        var(--azm14-orange);
}


.azm-v14-eyebrow {
    color:
        var(--azm14-orange);

    font-size:
        11px;

    line-height:
        1.4;

    font-weight:
        850;

    letter-spacing:
        .14em;

    text-transform:
        uppercase;
}


.azm-v14-button {
    min-height:
        52px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        10px;

    padding:
        0 25px;

    color:
        #fff !important;

    background:
        var(--azm14-orange);

    border:
        1px solid
        var(--azm14-orange);

    text-decoration:
        none !important;

    font-size:
        11px;

    font-weight:
        850;

    letter-spacing:
        .07em;

    text-transform:
        uppercase;

    box-shadow:
        0 10px 24px rgba(244,122,31,.20);

    transition:
        transform .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}


.azm-v14-button:hover {
    color:
        #fff !important;

    background:
        var(--azm14-orange-dark);

    transform:
        translateY(-2px);

    box-shadow:
        0 15px 30px rgba(244,122,31,.26);
}


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

.site-header {
    background:
        #fff !important;

    border-bottom:
        1px solid rgba(15,24,30,.055) !important;

    box-shadow:
        0 3px 20px rgba(15,24,30,.03) !important;
}


.site-header nav a {
    color:
        #172127 !important;

    font-weight:
        800 !important;

    letter-spacing:
        .065em;
}


.site-header .nav-contact {
    color:
        #fff !important;

    background:
        #111a20 !important;

    border-color:
        #111a20 !important;

    box-shadow:
        inset 0 -3px 0
        var(--azm14-orange) !important;
}


.site-header .nav-contact:hover {
    background:
        #202b32 !important;
}


.lang-current:hover {
    border-color:
        var(--azm14-orange) !important;
}


/* =========================================================
   HERO
   ========================================================= */

.azm-v14-hero {
    position:
        relative;

    min-height:
        580px;

    display:
        flex;

    align-items:
        center;

    isolation:
        isolate;

    overflow:
        hidden;

    background:
        var(--azm14-black);
}


.azm-v14-hero::before {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    z-index:
        -2;

    background-image:
        url('/site/templates/assets/img/nove-stroje.jpg');

    background-size:
        cover;

    background-position:
        center 48%;

    transform:
        scale(1.015);
}


.azm-v14-hero::after {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    z-index:
        -1;

    background:
        linear-gradient(
            90deg,
            rgba(6,14,19,.97) 0%,
            rgba(6,14,19,.86) 36%,
            rgba(6,14,19,.39) 66%,
            rgba(6,14,19,.09) 100%
        );
}


.azm-v14-hero-copy {
    width:
        min(690px, 59%);

    padding:
        90px 0 110px;
}


.azm-v14-hero h1 {
    max-width:
        680px;

    margin:
        17px 0 22px;

    color:
        #fff;

    font-size:
        clamp(48px, 5vw, 76px);

    font-weight:
        760;

    line-height:
        .98;

    letter-spacing:
        -.053em;
}


.azm-v14-hero p {
    max-width:
        600px;

    margin:
        0 0 32px;

    color:
        rgba(255,255,255,.79);

    font-size:
        16px;

    line-height:
        1.68;
}


/* =========================================================
   3 CATEGORY CARDS
   ========================================================= */

.azm-v14-main-categories {
    position:
        relative;

    z-index:
        4;

    padding:
        0 0 68px;

    background:
        var(--azm14-bg);
}


.azm-v14-category-grid {
    display:
        grid;

    grid-template-columns:
        repeat(3, minmax(0,1fr));

    gap:
        20px;

    transform:
        translateY(-34px);

    margin-bottom:
        -34px;
}


.azm-v14-category-card {
    position:
        relative;

    min-height:
        345px;

    display:
        block;

    overflow:
        hidden;

    background:
        var(--azm14-black);

    border:
        7px solid #fff;

    border-radius:
        10px;

    box-shadow:
        var(--azm14-shadow);

    text-decoration:
        none !important;

    transition:
        transform .23s ease,
        box-shadow .23s ease;
}


.azm-v14-category-card:hover {
    transform:
        translateY(-5px);

    box-shadow:
        var(--azm14-shadow-hover);
}


.azm-v14-category-card img {
    position:
        absolute;

    inset:
        0;

    width:
        100%;

    height:
        100%;

    object-fit:
        cover;

    filter:
        saturate(.94)
        contrast(1.02)
        brightness(.98);

    transition:
        transform .45s ease,
        filter .45s ease;
}


.azm-v14-category-card:hover img {
    transform:
        scale(1.028);

    filter:
        saturate(1.04)
        brightness(1.02);
}


.azm-v14-category-overlay {
    position:
        absolute;

    inset:
        0;

    background:
        linear-gradient(
            180deg,
            rgba(6,13,18,0) 28%,
            rgba(6,13,18,.13) 48%,
            rgba(6,13,18,.94) 100%
        );
}


.azm-v14-category-copy {
    position:
        absolute;

    left:
        27px;

    right:
        27px;

    bottom:
        26px;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        flex-start;
}


.azm-v14-category-copy i {
    width:
        38px;

    height:
        2px;

    margin-bottom:
        14px;

    background:
        var(--azm14-orange);

    font-style:
        normal;
}


.azm-v14-category-copy strong {
    color:
        #fff;

    font-size:
        clamp(24px,2vw,31px);

    line-height:
        1.06;

    letter-spacing:
        -.028em;
}


.azm-v14-category-copy > span:last-child {
    margin-top:
        13px;

    color:
        #ff9c51;

    font-size:
        10px;

    line-height:
        1.3;

    font-weight:
        850;

    letter-spacing:
        .075em;

    text-transform:
        uppercase;
}


/* =========================================================
   SHARED SECTIONS
   ========================================================= */

.azm-v14-section {
    padding:
        82px 0;
}


.azm-v14-section-heading {
    display:
        grid;

    grid-template-columns:
        minmax(0,1.1fr)
        minmax(330px,.9fr);

    gap:
        72px;

    align-items:
        end;

    margin-bottom:
        38px;
}


.azm-v14-section-heading h2,
.azm-v14-offer-head h2 {
    margin:
        9px 0 0;

    color:
        var(--azm14-text);

    font-size:
        clamp(34px,3vw,48px);

    line-height:
        1.02;

    letter-spacing:
        -.043em;
}


.azm-v14-section-heading > p {
    margin:
        0;

    color:
        var(--azm14-muted);

    font-size:
        15px;

    line-height:
        1.67;
}


/* =========================================================
   WHY
   ========================================================= */

.azm-v14-why {
    background:
        #fff;
}


.azm-v14-benefits {
    display:
        grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:
        20px;
}


.azm-v14-benefit {
    min-height:
        215px;

    padding:
        30px;

    background:
        #fff;

    border:
        1px solid
        var(--azm14-border);

    border-radius:
        9px;

    box-shadow:
        0 13px 34px rgba(15,24,30,.055);
}


.azm-v14-benefit-icon {
    width:
        56px;

    height:
        56px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    margin-bottom:
        21px;

    color:
        var(--azm14-orange);

    background:
        var(--azm14-orange-pale);

    border-radius:
        50%;

    font-size:
        25px;
}


.azm-v14-benefit h3 {
    margin:
        0 0 10px;

    color:
        var(--azm14-text);

    font-size:
        20px;

    line-height:
        1.15;
}


.azm-v14-benefit p {
    margin:
        0;

    color:
        var(--azm14-muted);

    font-size:
        14px;

    line-height:
        1.62;
}


/* =========================================================
   OFFER
   ========================================================= */

.azm-v14-offer {
    background:
        var(--azm14-bg);
}


.azm-v14-offer-head {
    display:
        flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap:
        35px;

    margin-bottom:
        38px;
}


.azm-v14-heading-link,
.azm-v14-detail-link {
    color:
        var(--azm14-orange-dark) !important;

    font-size:
        10px;

    font-weight:
        850;

    letter-spacing:
        .075em;

    text-transform:
        uppercase;

    text-decoration:
        none !important;
}


.azm-v14-product-grid {
    display:
        grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:
        22px;
}


.azm-v14-product {
    min-height:
        330px;

    display:
        grid;

    grid-template-columns:
        minmax(230px,45%)
        1fr;

    overflow:
        hidden;

    background:
        #fff;

    border:
        1px solid
        var(--azm14-border);

    border-radius:
        9px;

    box-shadow:
        var(--azm14-shadow);
}


.azm-v14-product-image {
    min-height:
        330px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    padding:
        22px;

    background:
        #f4f1ec;
}


.azm-v14-product-image img {
    width:
        100%;

    max-width:
        330px;

    max-height:
        275px;

    object-fit:
        contain;
}


.azm-v14-product-content {
    display:
        flex;

    flex-direction:
        column;

    align-items:
        flex-start;

    justify-content:
        center;

    padding:
        31px;
}


.azm-v14-product-badge {
    margin-bottom:
        9px;

    padding:
        5px 8px;

    color:
        #fff;

    background:
        #2e383e;

    border-radius:
        3px;

    font-size:
        9px;

    font-weight:
        850;

    letter-spacing:
        .06em;

    text-transform:
        uppercase;
}


.azm-v14-product-badge.is-new {
    background:
        var(--azm14-orange);
}


.azm-v14-product h3 {
    margin:
        0 0 9px;

    color:
        var(--azm14-text);

    font-size:
        26px;

    line-height:
        1.08;

    letter-spacing:
        -.035em;
}


.azm-v14-product p {
    margin:
        0 0 20px;

    color:
        var(--azm14-muted);

    font-size:
        14px;

    line-height:
        1.57;
}


.azm-v14-detail-link {
    margin-top:
        auto;

    padding-top:
        3px;
}


/* =========================================================
   MAKERS - AFTER OFFER
   ========================================================= */

.azm-v14-makers {
    background:
        #fff;
}


.azm-v14-maker-grid {
    display:
        grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:
        20px;
}


.azm-v14-maker-card {
    min-height:
        175px;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    gap:
        14px;

    padding:
        28px;

    background:
        #fff;

    border:
        1px solid
        var(--azm14-border);

    border-radius:
        8px;

    box-shadow:
        0 10px 28px rgba(15,24,30,.045);
}


.azm-v14-maker-card img {
    max-width:
        72%;

    max-height:
        82px;

    width:
        auto;

    height:
        auto;

    object-fit:
        contain;
}


.azm-v14-maker-card > span {
    color:
        #616a70;

    font-size:
        10px;

    font-weight:
        750;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;
}


/* =========================================================
   PHOTO CONTACT BAND
   ========================================================= */

.azm-v14-footer-cta {
    position:
        relative;

    isolation:
        isolate;

    overflow:
        hidden;

    padding:
        72px 0;

    background:
        var(--azm14-black);

    color:
        #fff;

    border-top:
        2px solid
        var(--azm14-orange);
}


.azm-v14-footer-cta::before {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    z-index:
        -2;

    background-image:
        url('/site/templates/assets/img/nove-stroje.jpg');

    background-size:
        cover;

    background-position:
        center 65%;
}


.azm-v14-footer-cta::after {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    z-index:
        -1;

    background:
        linear-gradient(
            90deg,
            rgba(6,14,19,.98) 0%,
            rgba(6,14,19,.92) 53%,
            rgba(6,14,19,.48) 100%
        );
}


.azm-v14-footer-cta-layout {
    display:
        grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:
        65px;

    align-items:
        center;
}


.azm-v14-footer-cta h2 {
    margin:
        9px 0 12px;

    color:
        #fff;

    font-size:
        clamp(34px,3.5vw,52px);

    line-height:
        1.02;

    letter-spacing:
        -.043em;
}


.azm-v14-footer-cta p {
    max-width:
        720px;

    margin:
        0;

    color:
        rgba(255,255,255,.76);

    font-size:
        14px;

    line-height:
        1.65;
}


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

.azm-v14-footer {
    padding:
        58px 0 0;

    color:
        rgba(255,255,255,.67);

    background:
        #091218;

    border: 0 !important;
}


.azm-v14-footer-grid {
    display:
        grid;

    grid-template-columns:
        1.2fr .8fr 1fr 1.15fr;

    gap:
        55px;

    align-items:
        start;
}


.azm-v14-footer-logo {
    display:
        inline-block;
}


.azm-v14-footer-logo img {
    width:
        150px;

    height:
        auto;

    filter:
        brightness(0)
        invert(1);

    opacity:
        .9;
}


.azm-v14-footer-brand p {
    max-width:
        245px;

    margin:
        20px 0 0;

    color:
        rgba(255,255,255,.58);

    font-size:
        13px;

    line-height:
        1.6;
}


.azm-v14-footer-title {
    display:
        block;

    margin-bottom:
        17px;

    color:
        #fff;

    font-size:
        12px;

    font-weight:
        800;

    letter-spacing:
        .06em;

    text-transform:
        uppercase;
}


.azm-v14-footer-nav {
    display:
        flex;

    flex-direction:
        column;

    gap:
        10px;
}


.azm-v14-footer a {
    color:
        rgba(255,255,255,.67) !important;

    text-decoration:
        none !important;
}


.azm-v14-footer a:hover {
    color:
        var(--azm14-orange) !important;
}


.azm-v14-footer-contact {
    display:
        flex;

    flex-direction:
        column;

    gap:
        5px;

    font-size:
        13px;

    line-height:
        1.5;
}


.azm-v14-footer-contact strong {
    color:
        #fff;
}


.azm-v14-footer-right {
    display:
        flex;

    flex-direction:
        column;

    align-items:
        flex-start;

    gap:
        10px;
}


.azm-v14-contact-row {
    display:
        flex;

    align-items:
        center;

    gap:
        10px;

    font-size:
        13px;
}


.azm-v14-contact-icon {
    width:
        24px;

    color:
        var(--azm14-orange);

    font-size:
        17px;

    text-align:
        center;
}


.azm-v14-footer-language {
    margin-top:
        13px;
}


.azm-v14-footer .lang-menu {
    margin:
        0;
}


.azm-v14-footer .lang-current {
    color:
        #fff !important;

    background:
        transparent !important;

    border-color:
        rgba(255,255,255,.35) !important;
}


.azm-v14-footer-bottom {
    margin-top:
        45px;

    min-height:
        68px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        25px;

    border-top:
        1px solid rgba(255,255,255,.09);

    color:
        rgba(255,255,255,.43);

    font-size:
        11px;
}


/* =========================================================
   INNER PAGES
   ========================================================= */

.page-hero,
.internal-hero,
.azm-page-hero {
    background-color:
        var(--azm14-black) !important;

    border-bottom:
        2px solid
        var(--azm14-orange) !important;
}


.product-card,
.machine-card,
.offer-card,
.content-card,
.contact-card,
.contact-form,
.filter-card,
.specs-card {
    border:
        1px solid
        var(--azm14-border) !important;

    border-left-width:
        1px !important;

    border-radius:
        8px !important;

    box-shadow:
        0 12px 34px
        rgba(15,24,30,.055) !important;
}


button[type="submit"],
input[type="submit"],
.btn-primary,
.button-primary {
    color:
        #fff !important;

    background:
        var(--azm14-orange) !important;

    border-color:
        var(--azm14-orange) !important;
}


button[type="submit"]:hover,
input[type="submit"]:hover,
.btn-primary:hover,
.button-primary:hover {
    background:
        var(--azm14-orange-dark) !important;

    border-color:
        var(--azm14-orange-dark) !important;
}


input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
textarea,
select {
    border-color:
        #ddd6ce !important;
}


input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color:
        var(--azm14-orange) !important;

    outline:
        none !important;

    box-shadow:
        0 0 0 3px
        rgba(244,122,31,.12) !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {

    .azm-v14-shell {
        width:
            calc(100% - 48px);
    }

    .azm-v14-product {
        grid-template-columns:
            1fr;
    }

    .azm-v14-product-image {
        min-height:
            245px;
    }

    .azm-v14-footer-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


@media (max-width: 820px) {

    .azm-v14-shell {
        width:
            calc(100% - 32px);
    }

    .azm-v14-hero {
        min-height:
            540px;
    }

    .azm-v14-hero-copy {
        width:
            100%;

        padding:
            72px 0 95px;
    }

    .azm-v14-hero::after {
        background:
            rgba(6,14,19,.74);
    }

    .azm-v14-category-grid,
    .azm-v14-benefits,
    .azm-v14-product-grid,
    .azm-v14-maker-grid {
        grid-template-columns:
            1fr;
    }

    .azm-v14-category-grid {
        transform:
            translateY(-25px);

        margin-bottom:
            -25px;
    }

    .azm-v14-category-card {
        min-height:
            350px;
    }

    .azm-v14-section-heading,
    .azm-v14-footer-cta-layout {
        grid-template-columns:
            1fr;

        gap:
            24px;
    }

    .azm-v14-offer-head {
        align-items:
            flex-start;

        flex-direction:
            column;
    }

}


@media (max-width: 620px) {

    .azm-v14-section {
        padding:
            60px 0;
    }

    .azm-v14-hero h1 {
        font-size:
            43px;
    }

    .azm-v14-category-card {
        min-height:
            300px;

        border-width:
            5px;
    }

    .azm-v14-category-copy {
        left:
            22px;

        right:
            22px;

        bottom:
            22px;
    }

    .azm-v14-benefit {
        min-height:
            0;
    }

    .azm-v14-footer-grid {
        grid-template-columns:
            1fr;

        gap:
            34px;
    }

    .azm-v14-footer-bottom {
        align-items:
            flex-start;

        flex-direction:
            column;

        justify-content:
            center;

        padding:
            20px 0;
    }

}


/* =========================================================
   FOOTER LOGO FIX
   Stejne originalni logo jako v hlavicce
   ========================================================= */

.azm-v14-footer-logo {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
}

.azm-v14-footer-logo img {
    display: block !important;

    width: auto !important;
    height: 58px !important;

    max-width: 220px !important;
    max-height: none !important;

    object-fit: contain !important;
    object-position: left center !important;

    filter: none !important;
    opacity: 1 !important;

    background: transparent !important;

    padding: 0 !important;
    margin: 0 !important;
}

@media (max-width: 620px) {

    .azm-v14-footer-logo img {
        height: 52px !important;
        max-width: 200px !important;
    }

}
