/*
Theme Name: GranGota_Theme
Author: lypaza/grm
Description: Тема для сайта grangota.ru.
Version: 1.0
Text Domain: grangota
*/

@charset "utf-8";

/* Ваши кастомные стили, переопределяющие стили родительской темы */
body {
  font-size: 16px;
}

@media (min-width: 2000px) {
  body {
    font-size: 18px;
  }
}

@media (min-width: 2560px) {
  body {
    font-size: 20px;
  }
}

@media (min-width: 3100px) {
  body {
    font-size: 25px;
  }
}

@media (min-width: 3839px) {
  body {
    font-size: 30px;
  }
}

body {
    margin: 0;
    /* scrollbar-gutter: stable; */
    
}

* {
    box-sizing: border-box;
}

a {
    text-decoration: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

li {
    list-style-type: none;
}
  
ul {
    margin: 0;
    padding: 0;
}

section.block {
    position: relative;
    width: 100%;
    height: auto;
}

section.block > *:not(.swiper.firstscreen_slider),
.footer_wrp .footer {
    --pad_horiz: 22em;
    --pad_vertic: 10.5em;
    padding: var(--pad_vertic) var(--pad_horiz);
    box-sizing: border-box;
}

/* body main > *:first-child {
    margin-top: var(--h_header);
} */

body main > *.block:first-child > *:first-child:not(:is(.politics_wrp, .about_main_wrp)) {
    padding-top: calc(var(--pad_vertic) + var(--h_header));
    box-sizing: border-box;
}
 
/* _____________________CUSTOM______________________ */

:root {

    --GnpG5_clr_gold: #B88B66;
    --GnpG5_clr_gold_light: #D09F76;
    --GnpG5_clr_background: #0D2931;
    --GnpG5_clr_river: #83BDCD;
    --GnpG5_clr_pure_wht: #FFFFFF;
    --GnpG5_clr_pure_wht_hx: #FFFFFF1A;
    --GnpG5_clr_pure_wht_hx_hvr: #FFFFFF26;
    --GnpG5_clr_light_grey: #F5F6F8;
    --GnpG5_clr_pure_black: #212121;
    --GnpG5_clr_grey: #464646;
    --GnpG5_clr_background_hdr: #0D293159; 

    --GnpG5_font1: "Unbounded", sans-serif;
    --GnpG5_font2: "Montserrat", sans-serif;
    /* --GnpG5_font2: "Gotham Pro", sans-serif; */
    /* --GnpG5_font2: "Manrope", sans-serif; */
    --GnpG5_font_alt: "Roboto", sans-serif;

}

img, svg {
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;

    border-style: none;
    display: block;
}

img, svg {
    user-select: none;
}

a, 
button, 
div, 
input {
    -webkit-tap-highlight-color: transparent;
}

input:focus, 
button:focus {
    outline: none;
}

.h1 {
    margin: 0;
    font-family: var(--GnpG5_font1);
    font-size: 4em;
    font-weight: 300;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
}

.h2 {
    margin: 0;
    font-family: var(--GnpG5_font1);
    font-size: 3em;
    font-weight: 400;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
}

.h3 {
    margin: 0;
    font-family: var(--GnpG5_font1);
    font-size: 1.5em;
    font-weight: 300;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
}

.txt {
    font-family: var(--GnpG5_font1);
    font-size: 1em;
    font-weight: 450;
    line-height: 1;
    color: var(--GnpG5_clr_pure_wht);
}

.txt_h {
    font-family: var(--GnpG5_font2);
    font-size: 1.75em;
    font-weight: 450;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
}

.txt_m {
    font-family: var(--GnpG5_font2);
    font-size: 1.25em;
    font-weight: 400;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
}

.txt_l {
    font-family: var(--GnpG5_font2);
    font-size: 1em;
    font-weight: 400;
    line-height: 140%;
    color: var(--GnpG5_clr_pure_wht);
}

.btn_frm {
    all: unset;
    padding: 1.45em 2.4em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: var(--GnpG5_clr_gold);

    font-family: var(--GnpG5_font2);
    font-size: 1.2em;
    font-weight: 700;
    line-height: 120%;
    color: var(--GnpG5_clr_pure_wht);
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;

    transition: .3s all;

    width: stretch;
}

.btn_frm:hover {
    background-color: var(--GnpG5_clr_gold_light);
}

.btn_frm:active {
    background-color: var(--GnpG5_clr_gold_light);
}

.btn_frm.mob {
    padding: 1em 3em;
    font-size: .875em;
}

.btn_chng_sldr {
    padding: 1.16em .925em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: var(--GnpG5_clr_pure_wht_hx);
    border: 1px solid var(--GnpG5_clr_pure_wht_hx);
    backdrop-filter: blur(10px);


    font-family: var(--GnpG5_font2);
    font-size: 1.25em;
    font-weight: 700;
    line-height: 120%;
    text-align: center;
    text-transform: uppercase;
    color: var(--GnpG5_clr_pure_wht);
    cursor: pointer;

    transition: .3s all;
}

.btn_chng_sldr:hover {
    background-color: var(--GnpG5_clr_pure_wht_hx_hvr);
}

.btn_chng_sldr.active {
    background-color: var(--GnpG5_clr_pure_wht);
    color: var(--GnpG5_clr_pure_black);
    pointer-events: none;
}

.ld_wrp:has(.images_item.end_switchImg) .btn_chng_sldr,
.ld_wrp:has(.images_item.start_switchImg) .btn_chng_sldr {
    pointer-events: none;
}

.btn_chng_sldr.mob {
    padding: 1em 3em;
    font-size: .875em;
}

.btn_lnk {
    display: flex;
    height: max-content;
    flex-direction: row;
    justify-content: center;
    gap: .75em;
    cursor: pointer;

    > .btn_lnk-svg {
        position: relative;
        max-width: 3.25em;
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        padding: 1em;
        border-radius: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: center;
        border: 1px solid #FFFFFF1A;
        background-color: var(--GnpG5_clr_pure_wht_hx);
        color: var(--GnpG5_clr_pure_wht);
    
        transition: .3s all;
    }

    > .btn_lnk-txt {
        align-self: center;

        font-family: var(--GnpG5_font2);
        font-size: 1.125em;
        font-weight: 500;
        color: var(--GnpG5_clr_pure_wht);

        text-transform: uppercase;
        text-align: center;
    }
}

.btn_lnk:hover {
    > .btn_lnk-svg {
        background-color: var(--GnpG5_clr_pure_wht);
        color: var(--GnpG5_clr_pure_black);
    }
}

.ld_text .txt_m {
    opacity: 1;
    transition: .2s opacity;
}

/* @media screen and (min-width: 1921px) {
    body {
        font-size: calc(16px + 0.3vw); 
    }
} */
@media screen and (max-width: 1620px) {
    body {
        font-size: 14px;
    }
}
@media screen and (max-width: 1200px) {
    body {
        font-size: 10px;
    }
}
@media screen and (max-width: 981px) {
    body {
        font-size: 3vw;
    }

    body main > *:first-child {
        /* margin-top: var(--h_header); */
        margin-top: 0;
    }

    section.block > *:not(.swiper.firstscreen_slider),
    .footer_wrp .footer {
        --pad_horiz: 1.626em;
        --pad_vertic: 5.5836em;
        padding: var(--pad_vertic) var(--pad_horiz);
        box-sizing: border-box;
    }

    .footer_wrp .footer {
        padding: var(--pad_horiz) var(--pad_horiz) var(--pad_vertic) var(--pad_horiz);
    }

    .h1 {font-size: 2.2764em;}
    .h2 {font-size: 3em;}
    .h3 {font-size: 1.5em;}

    .txt   {font-size: .9756em;}
    .txt_h {font-size: 1.626em;}
    .txt_m {font-size: 1.1382em;}
    .txt_l {font-size: .9756em;}

    .btn_frm {
        padding: 1.45em 1.4em;
        font-size: 1.1382em;
    }

    .btn_chng_sldr {
        padding: 1em 1.9em;
        font-size: 1.1382em;
        font-weight: 700;
        line-height: 120%;
        white-space: nowrap;
    }
}