@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

:root {
    --text-color-primary: #023867;
    --title-color: #003967;
    --text-color-secondary: #e5ddd2;
    --gold: #b2916a;

    --white: #fff;

    --duration: 30s;
    --space: 5px;
    --gap: 0;
}

.subtitle {
    font-size: 2.8rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    color: var(--text-color-primary);
    opacity: 0.8;
}
.subtitle-smaller {
    font-size: 1.6rem;
    font-weight: 400;
    font-family: "Inter", sans-serif;
    color: var(--text-color-primary);
}
.title {
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 7rem;
    color: var(--title-color);
}
.title-smaller {
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 6rem;
    color: var(--title-color);
}
.title-larger {
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 9rem;
    color: var(--title-color);
}
.txt {
    font-size: 1.7rem;
    color: var(--text-color-primary);
    line-height: 1.25;
}
p:not([class]) {
    font-size: 1.7rem;
    color: var(--text-color-primary);
    line-height: 1.25;
}

.btnn {
    padding: 1rem 5rem;
    border-radius: 10rem;
    font-size: 2.4rem;
    font-weight: 600;
    font-family: "Inter", sans-serif;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    display: inline-block;
}

.btnn.btn_primary {
    background-color: var(--text-color-primary);
    color: #fff;
    text-transform: none;
}

.btnn.btn_secondary {
    background-color: transparent;
    border: 1px solid var(--text-color-primary);
    font-size: 1.6rem;
    color: var(--text-color-primary);
    padding: 1rem;
}
.btnn.btn_secondary:hover {
    border: 1px solid var(--text-color-primary);
    color: var(--text-color-primary);
}

.btnn.btn_gold {
    color: var(--gold);
    border: 1px solid var(--gold);
    text-transform: none;
}
.btnn.btn_gold:hover,
.btnn.btn_gold:focus,
.btnn.btn_gold:active,
.btnn.btn_gold:visited,
.btnn.btn_gold:checked {
    color: var(--gold) !important;
    border: 1px solid var(--gold) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
/* ---------------------------------------  */

body {
    font-family: "DM Sans", sans-serif !important;
    font-size: 2rem;
    color: var(--text-color-primary);
    -webkit-font-smoothing: antialiased;
}

header .navbar {
    padding: 0 3rem;
    background-color: #e5ddd2;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

header .navbar .offcanvas-body {
    display: flex;
    justify-content: center;
    align-items: center;
}

header .navbar .navbar-nav {
    margin: 0 auto;
}

header .navbar .navbar-nav .nav-item:not(:last-child) {
    margin-right: 3rem;
}

header .navbar .navbar-nav li a {
    color: var(--text-color-primary);
    font-size: 1.8rem;
    font-weight: 600;
}

header .navbar .navbar-nav .nav-item:not(:last-child) .dropdown-toggle::after {
    display: none;
}

header .navbar .navbar-nav .nav-item .dropdown-toggle::after {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

header
    .navbar
    .navbar-nav
    .nav-item
    .dropdown-toggle[aria-expanded="true"]::after {
    transform: rotate(180deg);
}

header .navbar .navbar-nav .dropdown-menu[data-bs-popper] {
    top: 6.1rem;
    padding: 3rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    border: none;
    border-radius: 0;
    transition: 0.5s;
    opacity: 1;
}

header .navbar .navbar-nav .dropdown-menu[data-bs-popper]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(229, 221, 210, 0.6) 60%,
        rgba(229, 221, 210, 1) 100%
    );
    z-index: -1;
}

header .navbar .offcanvas-body div a {
    font-family: "Poppins", sans-serif;
    background-color: var(--text-color-primary);
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1rem 3rem;
    border-radius: 99px;
    color: var(--white);
}

header .navbar .offcanvas-body .dropdown-item.active,
.dropdown-item:active,
header .navbar .offcanvas-body .dropdown-item.active,
.dropdown-item:focus,
header .navbar .offcanvas-body .dropdown-item.active,
.dropdown-item:hover {
    background-color: transparent !important;
}

.hero {
    position: relative;
    min-height: 100dvh;
    overflow: hidden;
}

.hero video,
.hero iframe,
.ukus-jahorine iframe,
.aktivni-izazov iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    z-index: -12;
}

.hero iframe,
.ukus-jahorine iframe,
.aktivni-izazov iframe {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.hero > img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: linear-gradient(
        180deg,
        rgba(229, 221, 210, 0) 2.2%,
        #e5ddd2 42.08%
    );
}

.hero .overlay {
    position: absolute;
    inset: 0;
    background-color: #000;
    opacity: 11%;
    z-index: 1;
}
.hero .content-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    text-align: center;
}

.hero .content-wrapper h4 {
    font-size: 1.8rem;
    color: var(--text-color-secondary);
    font-family: "Inter", sans-serif;
    letter-spacing: 0.25rem;
    font-weight: 300;
}
.hero .content-wrapper h1 {
    font-size: 9rem;
    font-weight: 600;
    font-family: "Playfair Display", sans-serif;
    color: var(--text-color-secondary);
    margin: 1rem 0 3rem 0;
}
.hero .content-wrapper p {
    font-family: "Inter", sans-serif;
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.25;
    color: var(--text-color-secondary);
}

.booking {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 7.5rem 0 5rem 0;
    background: linear-gradient(
        0deg,
        rgba(229, 221, 210, 1) 65%,
        rgba(229, 221, 210, 0.03) 100%
    );
    z-index: 2;
}

.booking::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url("../images/main-bg.webp");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 65%;
    opacity: 0.1;
}

.booking form {
    display: grid;
    position: relative;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    z-index: 1;
    padding-top: 3rem;
    align-items: center;
}
.booking form > div {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.booking form div div {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.booking form div div:not(.dropdown) h4 {
    margin-bottom: 0;
    text-transform: uppercase;
    font-family: "Inter", sans-serif;
    font-size: 1.6rem;
    font-weight: bold;
}

.booking form input {
    border: none;
    border-bottom: 1px solid var(--text-color-primary);
    width: 100%;
    padding-bottom: 0.5rem;
    font-size: 1.6rem;
    color: var(--text-color-primary);
    background-color: transparent;
}

.booking form input:focus {
    outline: none;
}

.ui-datepicker .ui-datepicker-header {
    background-color: var(--text-color-secondary);
    color: #fff;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    color: #fff;
}

.ui-state-active,
.ui-widget-content .ui-state-active {
    border: 1px solid var(--text-color-primary);
    background: var(--text-color-primary);
}

/* custom dropdown  */

.wrapper-dropdown {
    position: relative;
    display: inline-block;
    min-width: 231.5px;
    width: 100% !important;
    max-width: 483px;
    text-align: left;
    padding-bottom: 0.5rem;
    color: #fff;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    justify-content: space-between;
    border-bottom: 1px solid var(--text-color-primary);
}

.scrollable-menu {
    height: auto;
    max-height: 200px;
    overflow-x: hidden;
}

.arrow {
    float: right;
    rotate: 180deg;
    color: var(--text-color-primary);
}

.selected-display {
    font-size: 1.6rem;
    color: var(--text-color-primary);
}

.booking svg {
    transition: all 0.3s;
}

.wrapper-dropdown::before {
    position: absolute;
    top: 50%;
    right: 16px;

    margin-top: -2px;

    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #fff transparent;
}

.rotated {
    transform: rotate(-180deg);
}

.wrapper-dropdown .dropdown {
    transition: 0.3s;
    position: absolute;
    top: 120%;
    right: 0;
    left: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 99;
    box-shadow: inherit;
    background: inherit;
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0;
    visibility: hidden;
}

.wrapper-dropdown .dropdown li {
    padding: 0 15px;
    line-height: 45px;
    overflow: hidden;
    font-size: 1.4rem;
}

.wrapper-dropdown .dropdown li:last-child {
    border-bottom: none;
}

.booking .dropdown {
    padding: 0.5rem !important;
}

.wrapper-dropdown .dropdown li:hover {
    background-color: var(--text-color-secondary);
    color: #000;
}

.wrapper-dropdown.active .dropdown {
    opacity: 1;
    visibility: visible;
    background-color: var(--text-color-primary);
}

.accommodation {
    position: relative;
    background: linear-gradient(
        to right,
        #e5ddd2 45%,
        rgba(229, 221, 210, 0) 71%
    );
    padding: 7.5rem 0;
}

.accommodation::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-image: url("../images/main-bg.webp");
    background-size: cover;
    background-repeat: no-repeat;
    width: 50%;
    height: 100%;
    z-index: 1;
    opacity: 0.1;
    background-position: center;
}
.accommodation::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    background-image: url("../images/room.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    width: 50%;
    height: 100%;
    z-index: -1;
}

.accommodation .content-wrapper {
    position: relative;
    z-index: 2;
    padding: 20px;
}
.accommodation .content-wrapper .title {
    margin-bottom: 1.5rem;
}
.accommodation .content-wrapper .txt {
    margin-bottom: 3rem;
}

.accommodation h1 {
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 6rem;
}

.villa-termag {
    position: relative;
    padding: 13.5rem 0;
    overflow: hidden;
}

.bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1;
}

.bg.center {
    background-position: center;
}

.cardd {
    padding: 4rem;
    max-width: 84rem;
    position: relative;
    background: linear-gradient(
        to right,
        rgba(248, 246, 248, 0.6) 0%,
        rgba(248, 246, 248, 1) 100%
    );
    z-index: 10;
    box-shadow: 2px 4px 16px rgba(0, 0, 0, 0.3);
}

.cardd::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-image: url("../images/main-bg.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
    opacity: 0.2;
}

.cardd h2,
.cardd h1 {
    font-size: 5rem;
    color: var(--title-color);
    font-family: "Playfair Display", serif;
    font-weight: 600;
    margin-bottom: 1.5rem;
}

.cardd .btnn {
    margin-top: 3rem;
}

.villa-termag div img {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
    max-width: 100%;
}

.wellness-spa {
    position: relative;
    padding: 10rem 0;
    overflow: hidden;
}

.wellness-spa .cardd {
    margin-left: auto;
    background: linear-gradient(
        to left,
        rgba(248, 246, 248, 0.6) 0%,
        rgba(248, 246, 248, 1) 100%
    );
}
.ukus-jahorine {
    overflow: hidden;
}
.ukus-jahorine video {
    position: absolute;
    inset: 0;
    width: 100%;
}
.ukus-jahorine .cardd {
    background: linear-gradient(
        to left,
        rgba(248, 246, 248, 0.6) 0%,
        rgba(248, 246, 248, 1) 100%
    );
}

.abonos {
    position: relative;
    min-height: 120rem;
}

.konf-sala {
    padding: 0;
    min-height: 110rem;
}

.konf-sala .cardd {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.aktivni-izazov {
    overflow: hidden;
    min-height: 100rem;
}
.aktivni-izazov video {
    position: absolute;
    inset: 0;
    width: 100%;
}

.skijanje {
    padding: 30rem 0;
}

.skijanje div img:first-child {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 8%;
    max-width: 44rem;
    z-index: 4;
}
.skijanje div img:nth-child(2) {
    position: absolute;
    top: 10%;
    left: 15%;
    max-width: 70rem;
    z-index: 3;
}
.skijanje div img:last-child {
    position: absolute;
    bottom: 10%;
    left: 18%;
    max-width: 70rem;
    z-index: 2;
}
.special {
    position: relative;
    padding: 10rem 0;
    overflow: hidden;
}
.special .title-smaller {
    margin-bottom: 1.5rem;
}

.special .title-smaller + .txt {
    margin-bottom: 5rem;
}

.special .card {
    background-color: #f8f6f6;
    border: none;
    box-shadow: 4px 4px 16px rgba(0, 0, 0, 0.2);
}

.special .card h5 {
    font-size: 3.2rem;
    font-family: "Playfair Display", serif;
    color: var(--gold);
    text-align: center;
}
.special .card .txt {
    text-align: center;
}
.special .card .card-body {
    text-align: center;
    padding: 3rem;
    min-height: 400px;
}
.special .card .card-download {
    text-align: center;
    padding: 3rem;
    min-height: 200px;
}

.special .card .card-body .btnn,
.special .card .card-download .btnn {
    margin-top: 1.5rem;
}

.special .card .card-download-masage{
    text-align: center;
    padding: 3rem;
    min-height: 275px;
}

.special .card .card-body-masage {
    text-align: center;
    padding: 3rem;
    min-height: 563px;
}

.special .card .card-body-mas .btnn {
    margin-top: 1.5rem;
}

.special .row:not(:last-child) {
    margin-bottom: 3rem;
}
.special .row .col-lg-12 .col-lg-7 {
    position: relative;
}
.special .row .col-lg-12 .col-lg-7,
.special .row .col-lg-12 .col-lg-7 > * {
    margin-top: 0;
}
.special .row .col-lg-12 .col-lg-7 .bg {
    background-position: center;
    z-index: 1;
}

.special .col-lg-12 .card {
    padding-bottom: 0;
}

.special .row .col-lg-12 .card .col-lg-5 {
    padding: 5rem;
}

.special .row .col-lg-12 .card .col-lg-5 h5,
.special .row .col-lg-12 .card .col-lg-5 div,
.special .row .col-lg-12 .card .col-lg-5 .txt {
    text-align: left;
}

.special .row .col-lg-12 .card .col-lg-5 a {
    margin-top: 3rem;
}

.socials {
    position: relative;
    padding: 2rem 0;
}

.socials .wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10rem;
}
.socials img {
    max-width: 75%;
}

footer {
    background-color: #e8edf3;
    padding-top: 10rem;
}

footer .col-lg-2:first-of-type > div {
    margin-top: 4rem;
}

footer .col-lg-2:first-of-type h4,
footer .col-lg-2:first-of-type p,
footer .col-lg-2:first-of-type a {
    font-family: "Nunito Sans", sans-serif;
}

footer .col-lg-2:first-of-type h4 {
    font-size: 1.5rem;
    font-weight: bold;
    color: #454e58;
    text-transform: uppercase;
}

footer .col-lg-2:first-of-type p {
    color: #747a85;
    font-size: 1.5rem;
}

footer .col-lg-2:first-of-type div > a {
    color: #747a85;
    font-weight: bold;
    font-size: 1.5rem;
    border: 1px solid #747a85;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    width: 100%;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    margin-top: 2rem;
}

footer h5 {
    font-size: 1.5rem;
    text-transform: uppercase;
    margin-bottom: 0;
}

footer h2 {
    font-size: 3.6rem;
    color: #9da1a8;
    font-weight: bold;
    font-family: "Playfair Display", serif;
    text-transform: uppercase;
    margin-bottom: 5rem;
}

footer .cta-wrapper {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 3rem;
}

footer .cta-wrapper p {
    color: #747a85;
    font-size: 1.5rem;
    text-transform: uppercase;
    margin-bottom: 0;
}
footer .cta-wrapper p a {
    font-weight: bold;
    font-size: 2.2rem;
    color: #575d65;
    text-decoration: none;
    display: block;
    text-transform: lowercase;
}

footer .cta-links {
    border-top: 2px solid #fff;
    padding-top: 2rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 1rem;
}

footer .cta-links img {
    margin-right: 0.5rem;
}

footer .cta-links a {
    font-size: 1.6rem;
    font-weight: bold;
    font-family: "Nunito Sans", sans-serif;
    color: #2d343e;
    text-decoration: none;
}

.weather {
    position: relative;
    padding: 10rem 0;
}

.weather .bg {
    opacity: 0.2;
}

.weather .wrapper {
    text-align: center;
}

.weather .wrapper > p {
    margin: 5rem auto;
    max-width: 75%;
}

.weather .weather-cards {
    display: flex;
    justify-content: center;
    align-items: center;
}

.weather .weather-cards .weather-card {
    position: relative;
    font-family: "Montserrat", sans-serif;
    text-align: left;
    color: #fff;
}

.weather .weather-cards .weather-card .bg {
    border-radius: 3rem;
}

.weather .weather-cards .weather-card:first-of-type {
    min-height: 66rem;
    min-width: 50rem;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 3rem 3rem 7.5rem 3rem;
}

.weather .weather-cards .weather-card:first-of-type::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 3rem;
}

.weather .weather-cards .weather-card:first-of-type div + div {
    position: relative;
    z-index: 2;
}

.weather .weather-cards .weather-card:first-of-type h3 {
    font-weight: 700;
    font-size: 3.7rem;
}

.weather .weather-cards .weather-card:first-of-type .date {
    font-size: 2.2rem;
    font-weight: 600;
}

.weather .weather-cards .weather-card:first-of-type .date + p {
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 1rem;
}

.weather .weather-cards .weather-card:first-of-type h4 {
    font-weight: 700;
    font-size: 5rem;
}
.weather .weather-cards .weather-card:first-of-type h5 {
    font-size: 3rem;
    font-weight: bold;
}

.weather .weather-cards .weather-card:last-of-type {
    background-color: rgba(178, 145, 106, 0.58);
    padding: 4rem;
    border-top-right-radius: 3rem;
    border-bottom-right-radius: 3rem;
}

.weather .weather-cards .weather-card:last-of-type div:not(.row) div {
    display: flex;
    justify-content: space-between;
}

.weather .weather-cards .weather-card:last-of-type div div h5 {
    font-size: 2.8rem;
    font-weight: bold;
}

.weather .weather-cards .weather-card:last-of-type div div h5 + p {
    font-size: 2.8rem;
    font-weight: 500;
}

.weather .weather-cards .weather-card:last-of-type .row div {
    padding: 0;
}

.weather .weather-cards .weather-card:last-of-type .row div div {
    background-color: var(--text-color-primary);
    padding: 2rem 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 5px;
    transition-duration: 0.3s;
}

.weather .weather-cards .weather-card:last-of-type .row div div:hover {
    background-color: #fff;
}

.weather .weather-cards .weather-card:last-of-type .row div div:hover h6,
.weather .weather-cards .weather-card:last-of-type .row div div:hover p {
    color: #000;
}
.weather .weather-cards .weather-card:last-of-type .row div div:hover img {
    filter: brightness(1);
}

.weather .weather-cards .weather-card:last-of-type .row {
    margin: 4rem 0;
}

.weather .weather-cards .weather-card:last-of-type .row div div img {
    max-height: 5rem;
}

.weather .weather-cards .weather-card:last-of-type .row div div h6 {
    font-size: 2rem;
    margin: 1rem 0;
}

.weather .weather-cards .weather-card:last-of-type .row div div p {
    font-size: 2rem;
    font-weight: 700;
}

.weather .weather-cards .weather-card:last-of-type .location {
    display: flex;
    justify-content: center;
    align-items: center;
}

.weather .weather-cards .weather-card:last-of-type .location p {
    background-color: var(--text-color-primary);
    padding: 1rem 2rem;
    border-radius: 10rem;
    max-width: fit-content;
    font-size: 1.8rem;
}

.wellness-spa ol li,
.konf-sala ol li {
    color: var(--title-color);
    font-size: 2rem;
}

.career {
    position: relative;
    min-height: 100dvh;
    overflow: hidden;
}

.career .bg {
    background-position: center;
}

.career video {
    position: absolute;
    inset: 0;
    width: 100%;
}

.career h4 {
    color: #e5ddd2;
    font-size: 1.8rem;
    letter-spacing: 0.25rem;
    font-family: "Inter", sans-serif;
    font-weight: 300;
}

.career .content-wrapper {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.career .overlay {
    position: absolute;
    inset: 0;
    background-color: #000;
    opacity: 11%;
    z-index: 1;
}

.career .content-wrapper h1 {
    font-size: 9rem;
    color: #f2eaea;
    font-family: "Playfair Display", serif;
    font-weight: 600;
}

.career .content-wrapper p {
    font-size: 2rem;
    margin-top: 2rem;
    color: #f2eaea;
    max-width: 75%;
}
.downloads {
    padding: 5rem 5rem 10rem 5rem;

}

.gallery-intro {
    padding: 15rem 0 10rem 0;
}

.gallery-intro h1,
.gallery-intro p {
    color: #001b3d;
}

.gallery .gallery-wrapper {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}

.gallery-wrapper img {
    width: 250px; /* Željena širina slike */
    height: 250px; /* Željena visina slike */
    object-fit: cover; /* Da bi se uklopila u kvadrat */
}
.massage-smaller {
    text-align: center;
    margin: 4rem 0 4rem 0;
    font-family: "Playfair Display", sans-serif;
    font-size: 6rem;
    font-weight: 600;
    color: var(--title-color);
}
.pills-wrapper .nav button {
    border-style: solid;
    border-color: var(--text-color-primary);
}

.full-width-iframe {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.full-width-iframe iframe {
    display: block;
    width: 100%;
    height: 500px; /* Možete prilagoditi visinu prema potrebi */
    border: none;
}

.interactive-walk {
    background-color: #e5ddd2;
}

.team-building .content-wrapper {
    z-index: 1;
}

.tb-activities h5 {
    margin-bottom: 2rem;
}

.tb-activities .col-lg-6 .card {
    min-height: 53rem;
}

.tb-activities .col-lg-4 .card {
    min-height: 58rem;
}

.reference p a {
    color: var(--text-color-primary);
}

.reference .cardd {
    max-width: 100%;
}

.sponsors .wrapper {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    align-items: center;
    justify-content: center;
}
.sponsors .wrapper a {
    text-align: center;
    width: 100%;
    margin: 0 auto;
}

.empty {
    padding: 8rem 0;
}

.economic {
    position: relative;
    padding: 7.5rem 0;
}
.economic .bg {
    opacity: 0.2;
}
.economic .title {
    margin: 1rem 0 1.5rem 0;
}

.economic .economic-slider {
    margin-top: 3rem;
}

.arrow-section {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
    padding-top: 3rem;
}

.arrow-section div {
    max-width: 85%;
}

.arrow-section h3 {
    font-size: 4rem;
    color: var(--text-color-primary);
    font-family: "Playfair Display", serif;
}

.experience {
    position: relative;
    padding: 12.5rem 0 10rem 0;
}

.experience .bg {
    opacity: 0.2;
}

.experience > img {
    position: absolute;
    bottom: 5%;
    left: 0;
}

.experience h2 {
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 6rem;
    color: var(--gold);
    margin-bottom: 3rem;
}

.experience p {
    margin-bottom: 5rem;
}

.experience figure {
    position: relative;
    box-shadow: 1px 17px 22.4px 0px rgba(0, 0, 0, 0.25);
}

.experience figure figcaption {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
    font-family: "Playfair Display", serif;
    width: 100%;
}
.apartman {
    position: relative;
    padding: 10rem 0;
}

.apartman .bg {
    opacity: 0.2;
}

.apartman h4 {
    font-size: 2.8rem;
    color: var(--text-color-primary);
    letter-spacing: 0.025rem;
    margin: 2rem 0 1rem 0;
}
.apartman h2 {
    font-family: "Playfair Display", sans-serif;
    font-size: 6rem;
    font-weight: 600;
    color: var(--title-color);
    margin-bottom: 2rem;
}
.apartman h2 span {
    color: var(--gold);
}

.apartman .txt {
    max-width: 75%;
}

.apartman .btnn {
    margin-top: 3rem;
}

.apartman .btnn img {
    margin-left: 2rem;
}

.apartman-2 {
    padding: 7.5rem 0;
    background-color: rgba(229, 221, 210, 1);
}

.apartman-2 .bg {
    z-index: 0;
}

.apartman-2 .content-wrapper > *,
.apartman-2 img {
    position: relative;
    z-index: 3;
}

.apartman .col-lg-5 img {
    min-height: 100%;
}

.apartman img[alt="dekoracija"] {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.wellness-spa.reversed {
    padding: 15rem 0;
    background-color: rgba(229, 221, 210, 1);
}

.wellness-spa.reversed img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.villa-termag.villa-termag-b {
    background-color: rgba(229, 221, 210, 1);
}
.villa-termag ul li {
    font-size: 2rem;
    color: var(--text-color-primary);
}

.career .btn-wrapper {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 1.5rem;
    margin-top: 4rem;
}

.detox .content-wrapper h1 {
    font-weight: 300;
}

.detox-services {
    background-color: #e5ddd2;
    z-index: -1;
}

.cardd-2 {
    background: linear-gradient(
        90deg,
        #e5ddd2 18%,
        rgba(229, 221, 210, 0.6) 100%
    );
}

.nutrition::after {
    background-image: url("../images/ishrana-bg.png");
}

.spa-hero .content-wrapper {
    width: 100%;
}

.spa-hero .content-wrapper h4,
.spa-hero .content-wrapper h1,
.spa-hero .content-wrapper p {
    color: var(--text-color-primary);
}

.spa-hero .content-wrapper a {
    margin-top: 3rem;
}

/* marquee */

.marquee {
    display: flex;
    overflow: hidden;
    user-select: none;
    gap: var(--gap);
}

.marquee__group {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: var(--gap);
    min-width: 100%;
    animation: scroll var(--duration) linear infinite;
}

.marquee__group2 {
    animation: scroll2 var(--duration) linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .marquee__group {
        animation-play-state: paused;
    }
}

.marquee__group img {
    max-width: clamp(10rem, 1rem + 28vmin, 20rem);
    aspect-ratio: 1;
    object-fit: cover;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}
@keyframes scroll2 {
    100% {
        transform: translateX(0);
    }

    0% {
        transform: translateX(-100%);
    }
}

.get-to-know::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #ffffff, #ffffff),
        linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.37),
            rgba(255, 255, 255, 0.37)
        );
    opacity: 0.1;
}

.get-to-know h2,
.get-to-know .container > p {
    text-align: center;
}

.get-to-know .cardd {
    padding: 3rem;
    text-align: center;
}
.get-to-know .cardd h3 {
    color: var(--gold);
    font-size: 4rem;
}

.get-to-know .container > * {
    z-index: 2;
    position: relative;
}

.get-to-know .row {
    row-gap: 3rem;
}

.accommodation2::after {
    background-image: url("../images/smestaj-bg.jpg");
}

.ski-offers {
    background-color: #e5ddd2;
    z-index: 1;
}
.ski-offers h2,
.ski-offers .container > p {
    text-align: center;
}
.ski-offers h2 {
    color: var(--gold);
}
.ski-offers .card {
    z-index: 2;
    position: relative;
    min-height: 63rem;
}

.ski-offers .col-lg-6 img {
    max-height: 36rem;
}

.ski-offers .col-lg-6 .card {
    min-height: 68.5rem;
}

.ski-offers .col-lg-4 img {
    max-height: 23.9rem;
}

.ski-offers .col-lg-4 .card {
    min-height: 55rem;
}

.ski-offers .col-md-6 .card img {
    max-height: 36rem;
}

.centered {
    position: relative;
    padding: 10rem 0;
}

.centered .cardd {
    max-width: 99rem;
    margin: 0 auto;
}

.ski-pass-hero {
    padding: 15rem 0;
}

.ski-pass-hero::after {
    background-image: url("../images/ski-pass-bg.png");
    transform: rotateY(180deg);
}

.how-to-buy-ski-pass {
    padding: 20rem 0;
}

.ski-info.reversed img {
    max-width: 80rem;
    top: 40%;
}

.registration h3 {
    font-size: 4.2rem;
    color: var(--text-color-primary);
}

.registration img[alt="zamak termag"] {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: -1;
}

.registration .row.row-2 {
    row-gap: 2rem;
    margin: 3rem 0 5rem 0;
}

.registration .row div div {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.registration .row div div p {
    font-family: "Montserrat", sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 0;
    color: var(--text-color-primary);
}
.registration ul li {
    color: var(--text-color-primary);
    font-size: 2rem;
}
.registration .btn-wrapper {
    margin-top: 3rem;
    text-align: center;
}
.race .row .col-lg-4,
.race .row .col-md-3,
.race .row .col-sm-4 {
    padding: 0;
}
.registration-2 h2 {
    color: var(--gold);
}
.registration-2 .title-smaller + .txt {
    margin-bottom: 1rem;
}
.registration-2 ul {
    display: inline-block;
}

.registration-2 ul li {
    max-width: fit-content;
}

.unforgetable-experience figure img {
    max-height: 28rem;
    width: 100%;
    object-fit: cover;
}

.hiking {
    overflow: hidden;
    padding: 13rem 0;
}

.hiking video {
    max-width: 50%;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
}

.hiking::after {
    background: unset;
}
.alpinizam {
    overflow: hidden;
}
.alpinizam video {
    position: absolute;
    z-index: -1;
    inset: 0;
}

.career::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
}

.packages img[alt="zamak termag"] {
    top: 40%;
}

.packages .nav-tabs {
    border: none;
    display: flex;
    justify-content: center;
    margin-bottom: 5rem;
    gap: 4rem;
}
.packages .nav-tabs .nav-link {
    padding: 1rem 3rem;
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    font-size: 2.4rem;
    background-color: transparent;
    color: var(--text-color-primary);
    border-radius: 10rem;
}

.packages h2 {
    color: var(--gold);
}

.packages .nav-tabs .nav-link.active {
    background-color: var(--text-color-primary);
    color: #fff;
    border: 1px solid var(--text-color-primary);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

.packages .porodicni-paket {
    padding-top: 10rem;
}

.packages-2 {
    background-color: #e5ddd2;
    z-index: 1;
}
.career-2 .content-wrapper h1 {
    color: var(--gold);
}
.py-20 {
    padding: 20rem 0;
}

/* animations */

header .navbar .navbar-nav .dropdown-menu {
    transform: scaleY(0);
    transform-origin: top;
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

header
    .navbar
    .navbar-nav
    .dropdown-toggle[aria-expanded="true"]
    + .dropdown-menu {
    transform: scaleY(1);
    opacity: 1;
}

/* datepicker  */

.ui-datepicker {
    font-size: 1.2em;
}

.ui-datepicker .ui-datepicker-header {
    padding: 0.5em;
    background-color: transparent;
}

.ui-datepicker table {
    margin: 0.5em 0;
}

.ui-datepicker td .ui-state-default {
    padding: 0.6em 0.8em;
}

.ui-datepicker {
    width: 300px;
}

.ui-datepicker .ui-datepicker-title {
    color: #000;
}

.lastline {
    font-size: 1.6rem;
    text-align: center;
    padding: 2rem 0;
    margin: 3rem 0 0 0;
    background-color: #888;
    color: #fff;
}

.lastline a {
    color: #fff;
}

.job-full .row {
    row-gap: 2rem;
}

.job-full .cardd {
    max-width: unset;
}

.job-full label {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.job-full input,
.job-full select,
.job-full textarea {
    width: 100%;
    min-height: 4rem;
    border-radius: 0.5rem;
    padding-left: 1rem;
    outline: none;
    resize: none;
    border: none;
    font-size: 1.5rem;
}

.job-full textarea {
    padding-top: 1rem;
}

.job-full .dropzone {
    position: relative;
    background-color: #fff;
    padding: 2rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.job-full .dropzone span {
    color: #2563eb;
    cursor: pointer;
}

.job-full .dropzone p {
    color: #4b5563;
    font-size: 12px;
}

.job-full .dz-default {
    display: none;
}

.job-full .uploaded-files {
    list-style: none;
    padding-left: 0;
}

.job-full .uploaded-files li {
    width: 100%;
    border: 1px solid #60a5fa;
    border-radius: 5px;
    background-color: #eff6ff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    margin-bottom: 5px;
}

.job-full .uploaded-files li div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.job-full .uploaded-files li p {
    font-size: 1.6rem;
    margin-bottom: 0;
}

.job-full .uploaded-files li button {
    background-color: transparent;
    border: none;
}
.file-upload-area {
    border: 2px dashed #ccc;
    border-radius: 5px;
    text-align: center;
    padding: 20px;
    cursor: pointer;
    background-color: #f9f9f9;
    transition: border-color 0.3s ease-in-out;
}

.file-upload-area:hover {
    border-color: var(--text-color-primary);
}

.file-upload-area p {
    margin: 10px 0;
    color: #666;
}

.file-upload-area span {
    color: var(--text-color-primary);
    text-decoration: none;
    font-weight: bold;
}

.file-max-size {
    font-size: 1.5rem;
    color: #999;
}
.testimonials {
    position: relative;
    padding: 10rem 0;
}

.testimonials .testimonials-slider {
    max-width: 56rem;
    margin: 0 auto;
}

.testimonials .testimonials-wrapper {
    text-align: center;
}

.testimonials .testimonials-wrapper p {
    position: relative;
    color: #b2916a;
    font-size: 1.6rem;
}

.testimonials .testimonials-wrapper p::before {
    content: url("../images/quote.svg");
    position: absolute;
    left: -4rem;
    top: 0;
}

.testimonials .testimonials-wrapper p::after {
    content: url("../images/quote.svg");
    position: absolute;
    right: -4rem;
    bottom: -2rem;
    transform: rotate(180deg);
}

.testimonials .testimonials-wrapper .testimonials-top {
    box-shadow: 0 10px 21px #e6394626;
    padding: 8rem;
    border-radius: 12px;
    background-color: #fff;
    position: relative;
}

.testimonials .testimonials-wrapper .testimonials-top img {
    position: absolute;
    width: 84px;
    height: 84px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #b56576;
    position: absolute;
    bottom: -45px;
    left: 50%;
    transform: translateX(-50%);
}

.testimonials .testimonials-wrapper .testimonials-bottom {
    background-color: #fff;
    padding: 7.5rem 0;
    position: relative;
    top: -1rem;
    z-index: -1;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
}

.testimonials .testimonials-wrapper .testimonials-bottom i {
    font-size: 16px;
    color: #ffdc84;
}

.testimonials .testimonials-wrapper .testimonials-bottom h4 {
    font-size: 16px;
    font-weight: bold;
    margin-top: 5px;
}

.testimonials .testimonials-wrapper .testimonials-bottom h5 {
    font-size: 16px;
    font-weight: 500;
}

.testimonials .testimonials-slider .slick-dots {
    bottom: 30px;
}
.testimonials .testimonials-slider .slick-dots li button:before {
    content: "";
    width: 70px;
    height: 4px;
    background: linear-gradient(to right, #b56576, #6d597a);
}
.testimonials .testimonials-slider .slick-dots li {
    width: 70px;
    height: 4px;
}

.hsnpk h4:last-of-type {
    margin-top: 10rem;
}

.hsnpk .row {
    row-gap: 3rem;
}

.hsnpk .row .col-lg-6 .card {
    min-height: 64rem;
}

@media only screen and (max-width: 1600px) {
    .hero .content-wrapper p,
    .career .content-wrapper p,
    .txt {
        font-size: 1.7rem;
    }
    .subtitle {
        font-size: 2.4rem;
    }
    .title {
        font-size: 5.5rem;
    }
    .btnn {
        font-size: 2rem;
    }
    .skijanje div img {
        display: none;
    }
    .aktivni-izazov video {
        width: unset;
    }
    .weather .wrapper {
        padding-top: 5rem;
    }
    .sponsors .wrapper {
        grid-template-columns: repeat(6, 1fr);
        row-gap: 3rem;
    }
    .arrow-section h3 {
        font-size: 3.2rem;
    }
    .wellness-spa ol li,
    .konf-sala ol li {
        font-size: 1.7rem;
    }
    .cardd h2,
    .cardd h1 {
        font-size: 5rem;
    }
    header .offcanvas-body img {
        position: absolute;
        top: 0;
        left: 5%;
    }
    .offcanvas-header .btn-close {
        position: absolute;
        top: 3.5%;
        right: 5%;
        font-size: 2rem;
        color: var(--text-color-primary);
    }

    header .navbar .offcanvas-body {
        display: block;
    }
}

@media only screen and (max-width: 1399px) {
    header .navbar .navbar-nav {
        padding-left: 3rem;
        margin-top: 5rem;
        margin-bottom: 2rem;
    }

    header .navbar .offcanvas-body div a {
        margin-left: 3rem;
    }
}

@media only screen and (max-width: 1199px) {
    .gallery-intro {
        padding: 7.5rem 0 3.5rem 0;
    }
    .career .content-wrapper h1 {
        font-size: 6.5rem;
    }
    .special .card h5 {
        font-size: 3rem;
    }
    .img-gallery {
        max-width: 100%;
        height: auto;
    }
    .tb-activities .col-lg-6 .card {
        min-height: 55rem;
    }
    .tb-activities .col-lg-4 .card {
        min-height: 60rem;
    }
    .career .content-wrapper {
        top: 45%;
    }
    .sponsors .wrapper {
        align-items: end;
    }
    .sponsors .wrapper a img {
        max-width: 75%;
    }
    .experience figure figcaption {
        font-size: 2.4rem;
    }
    .apartman h2,
    .title-smaller,
    .experience h2,
    .accommodation h1 {
        font-size: 4.5rem;
    }
    .registration .row div div p {
        font-size: 1.6rem;
    }
    .ski-pass-hero {
        padding: 0;
    }
    .title {
        font-size: 5rem;
    }
    .hero .content-wrapper h1 {
        font-size: 5rem;
    }
    .hero .content-wrapper h4 {
        font-size: 1.5rem;
    }
    .booking {
        position: relative;
        background: linear-gradient(
            0deg,
            rgba(229, 221, 210, 1) 100%,
            rgba(229, 221, 210, 0.03) 100%
        );
    }
    .hero video,
    .career video {
        min-height: 100%;
        width: 100vw;
        height: 100vh;
        object-fit: cover;
        object-position: center center;
    }
    .hero .content-wrapper {
        top: 60%;
    }
    .get-to-know .cardd h3 {
        font-size: 3rem;
    }
    .booking.empty {
        display: none;
    }

    header .navbar .navbar-nav .nav-item:not(:last-child) {
        margin-right: 0;
    }
    header .navbar .navbar-nav .dropdown-menu[data-bs-popper]::before {
        background: #fff;
    }

    header .navbar .offcanvas-body div a {
        margin-left: 3rem;
    }
    section {
        overflow: hidden;
    }
}

@media only screen and (max-width: 991px) {
    .hero {
        min-height: 35dvh;
    }
    .booking {
        padding: 1.5rem 0 4rem 0;
    }
    .booking form {
        grid-template-columns: repeat(2, 1fr);
    }
    .booking form > div:last-child {
        grid-column: 1 / -1;
        margin-top: 2rem;
    }
    .booking form > div:last-child button {
        max-width: fit-content;
        margin: 0 auto;
        padding: 1rem 5rem;
    }
    .accommodation {
        background: #e5ddd2;
    }
    .accommodation::after {
        display: none;
    }
    .ukus-jahorine video {
        width: unset;
    }
    .img-gallery {
        max-width: 100%;
        height: auto;
    }
    .abonos {
        min-height: 60rem;
    }
    .skijanje {
        padding: 10rem 0;
    }
    .aktivni-izazov {
        min-height: 70rem;
    }
    .special .bg {
        display: none;
    }
    .special .row {
        row-gap: 3rem;
    }
    footer .row {
        row-gap: 5rem;
    }
    footer .col-lg-6 {
        order: 3;
    }
    footer .col-lg-2:first-of-type div > a {
        max-width: fit-content;
        padding: 1rem 3rem;
    }
    .weather .weather-cards {
        flex-direction: column;
    }
    .weather .weather-cards .weather-card:first-of-type {
        width: 100%;
        min-height: 50rem;
    }
    .weather .weather-cards .weather-card:last-of-type {
        width: 100%;
    }
    .career {
        min-height: 39dvh;
    }
    .gallery {
        padding-bottom: 5rem;
    }
    .gallery .gallery-wrapper {
        grid-template-columns: repeat(5, 1fr);
    }
    .title-larger {
        font-size: 6rem;
    }
    .apartman .col-lg-5 img {
        display: none;
    }
    .apartman-2 .row:last-child {
        row-gap: 3rem;
    }
    .wellness-spa.reversed {
        padding: 8rem 0;
    }
    .wellness-spa.reversed img {
        position: absolute;
        inset: 0;
        z-index: 2;
        transform: translateY(0);
    }
    .villa-termag div img {
        position: absolute;
        z-index: 1;
        inset: 0;
        transform: translateY(0);
        width: 100%;
    }
    .career .content-wrapper {
        top: 50%;
    }

    .packages .nav-tabs .nav-link {
        font-size: 1.6rem;
    }
    .registration h3 {
        font-size: 3rem;
    }
    .packages img {
        max-width: 5.5rem;
        max-height: 5.5rem;
    }
    .packages .row div div p {
        font-size: 1.4rem;
    }
    .aktivni-izazov video,
    .ukus-jahorine video {
        height: 100%;
    }
    .get-to-know .cardd h3 {
        font-size: 2.4rem;
        margin-bottom: 1.5rem;
    }
    .ski-offers .col-md-6 .card {
        min-height: 65rem;
    }
    .ski-pass-hero {
        padding: 12rem 0 5rem 0;
    }
    .ski-info img {
        display: none;
    }
    .registration .row div div p {
        font-size: 1.4rem;
    }
    .unforgetable-experience figure img {
        max-height: 23rem;
    }
    header .navbar .navbar-nav {
        margin-top: 10rem;
    }
    .hero .overlay {
        display: none;
    }
}

@media only screen and (max-width: 769px) {
    .hero {
        min-height: 90dvh;
    }
    .hero .content-wrapper h4 {
        font-size: 1.4rem;
    }
    .accommodation {
        padding: 5rem 0;
    }
    .img-gallery {
        max-width: 100%;
        height: auto;
    }
    .villa-termag {
        padding: 5rem 0;
    }
    .txt {
        font-size: 1.6rem;
    }
    .cardd h2,
    .cardd h1 {
        font-size: 3.5rem;
    }
    .btnn {
        font-size: 1.6rem;
    }
    .cardd {
        padding: 7.5rem;
    }
    .konf-sala {
        min-height: 75rem;
    }
    .hero .content-wrapper {
        min-width: 85%;
    }
    .apartman {
        overflow: hidden;
    }
    .title {
        font-size: 4rem;
    }
    .career {
        min-height: unset;
        padding: 30rem 0;
    }
    .gallery .gallery-wrapper {
        grid-template-columns: repeat(4, 1fr);
    }
    .ski-pass-hero {
        padding: 12.5rem 0;
    }
    .how-to-buy-ski-pass {
        padding: 7.5rem 0;
    }
    .weather .weather-cards {
        row-gap: 3rem;
    }
    .konf-sala {
        min-height: unset;
        padding: 5rem 2.5rem;
    }
    .konf-sala .cardd {
        position: relative;
        transform: unset;
    }
    .container,
    .container-fluid {
        padding: 0 2rem;
    }
    .title-larger {
        font-size: 4rem;
    }
    .weather .wrapper > p {
        margin: 2rem 0;
        max-width: 100%;
    }
    .weather .wrapper {
        padding: 0;
    }
    .gallery-intro {
        padding: 12.5rem 0 5rem 0;
    }
    .organic-facts {
        padding: 12.5rem 0 5rem 0;
    }
    .packages img {
        max-width: 4rem;
        max-height: 4rem;
    }

    .eco {
        padding: 12.5rem 0 5rem 0;
    }

    .snow-height,
    .ski-centar,
    .ski-skola {
        padding: 12.5rem 0 5rem 0;
    }
    .special .col-md-6 img {
        max-width: 4rem;
        max-height: 4rem;
    }
    .experience {
        overflow: hidden;
    }
    .weather .wrapper > p,
    .career .content-wrapper p,
    .apartman .txt {
        max-width: 100%;
    }

    .hero iframe {
        width: 1920px;
        height: 931px;
    }
}

@media only screen and (max-width: 480px) {
    header .navbar {
        padding: 0 1rem 0 0;
    }
    .img-gallery {
        max-width: 100%;
        height: auto;
    }
    .hero {
        min-height: 100dvh;
    }
    .hero .content-wrapper p,
    .career .content-wrapper p,
    .txt {
        font-size: 1.5rem;
    }
    .booking form {
        grid-template-columns: repeat(1, 1fr);
    }
    .wrapper-dropdown.active .dropdown {
        z-index: 30;
    }
    .gallery-intro{
        margin-top: 70px;
    }
    .accommodation .content-wrapper {
        z-index: 1;
    }
    .cardd h2,
    .cardd h1 {
        font-size: 3rem;
    }
    .abonos {
        min-height: 28rem;
    }
    .cardd {
        padding: 4rem;
    }
    .socials .wrapper {
        gap: 7rem;
    }
    .weather .weather-cards .weather-card:last-of-type .row {
        row-gap: 2rem;
    }
    .weather .weather-cards .weather-card:first-of-type {
        min-width: unset;
    }
    .weather .weather-cards .weather-card:first-of-type h4 {
        margin: 1.5rem 0;
        font-size: 4rem;
    }
    .weather .weather-cards .weather-card:last-of-type div div h5 + p,
    .weather .weather-cards .weather-card:last-of-type div div h5 {
        font-size: 2rem;
    }
    .weather .weather-cards .weather-card:last-of-type .row div div p {
        font-size: 1.8rem;
    }
    .weather .weather-cards .weather-card:last-of-type .row div div h6 {
        font-size: 1.5rem;
        margin-top: 1.5rem;
    }
    .weather .weather-cards .weather-card:last-of-type .row div {
        padding-right: calc(var(--bs-gutter-x) * 0.5);
        padding-left: calc(var(--bs-gutter-x) * 0.5);
    }
    .weather .weather-cards .weather-card:last-of-type .row div div {
        padding: 2rem 0;
    }
    .weather .weather-cards .weather-card {
        border-radius: 2rem;
    }
    .wellness-spa ol li,
    .konf-sala ol li {
        font-size: 1.5rem;
    }
    footer .col-lg-2 img {
        max-width: 35%;
    }
    footer h2 {
        font-size: 2.4rem;
    }
    footer .cta-wrapper p a {
        font-size: 1.8rem;
    }
    footer .cta-wrapper {
        gap: 3rem;
    }
    .gallery .gallery-wrapper {
        grid-template-columns: repeat(3, 1fr);
    }
    .gallery-intro {
        padding: 5rem 0;
    }
    .career .content-wrapper h1 {
        font-size: 4rem;
    }
    .tb-activities .col-lg-6 .card,
    .tb-activities .col-lg-4 .card {
        min-height: unset;
    }
    .special .card h5 {
        font-size: 2.4rem;
    }
    .career {
        padding: 35rem 0;
    }
    .career h4 {
        font-size: 1.4rem;
    }
    .sponsors .wrapper {
        grid-template-columns: repeat(5, 1fr);
        align-items: center;
    }

    .wellness-spa {
        padding: 5rem 0;
    }
    .apartmants {
        padding: 30rem 0;
    }
    .apartman,
    .apartman-2 {
        padding: 3.5rem 0;
    }
    .arrow-section {
        grid-template-columns: repeat(1, 1fr);
        gap: 3rem;
    }
    .arrow-section div {
        max-width: 100%;
    }
    .arrow-section h3 {
        font-size: 2.4rem;
    }
    .economic {
        padding: 3rem 0;
    }
    .title {
        font-size: 3.6rem;
        text-align: left;
    }
    .txt {
        text-align: left;
    }
    .apartman h2,
    .title-smaller,
    .experience h2,
    .accommodation h1 {
        font-size: 3.2rem;
        margin-bottom: 1.5rem;
    }
    .experience {
        padding: 5rem 0;
    }
    .apartman h4 {
        font-size: 1.8rem;
    }
    .team-building,
    .svadbe,
    .hotel-rooms,
    .vt {
        padding: 25rem 0;
    }
    .wellness-spa.reversed {
        padding: 5rem 0;
    }
    .wellness-spa.reversed img,
    .villa-termag div img {
        height: 100%;
    }
    .packages .nav-tabs {
        flex-wrap: nowrap;
        overflow: auto;
        justify-content: start;
    }
    .packages .nav-tabs::-webkit-scrollbar {
        display: none;
    }
    .packages .nav-tabs .nav-link {
        flex: 0 0 auto;
    }
    .special {
        padding: 3rem 0 5rem 0;
    }
    .career .btn-wrapper {
        flex-direction: column;
        align-items: start;
    }
    .experience figure figcaption {
        font-size: 2rem;
    }
    .special h2 {
        text-align: left;
    }

    .special .title-smaller + .txt {
        text-align: left;
    }
    .subtitle {
        font-size: 1.8rem;
    }
    .ski-offers .col-md-6 img {
        max-width: unset;
        max-height: unset;
    }
    .ski-offers .col-md-6 .card {
        min-height: unset;
    }
    .registration ul li {
        font-size: 1.5rem;
    }

    .special .text-center {
        text-align: left !important;
    }
    .bicklizam {
        padding: 20rem 0;
    }
    footer {
        padding: 5rem 0 0 0;
    }
    footer .col-lg-2 {
        display: grid;
        grid-template-columns: 150px 1fr;
    }
    footer .col-lg-2:first-of-type > div {
        margin-top: 0;
    }
    footer .col-lg-2 img {
        max-width: 70%;
    }

    /* testing  */

    .villa-termag,
    .wellness-spa {
        padding: 15rem 0 5rem 0;
    }

    .cardd {
        padding: 3rem;
    }

    .villa-termag video,
    .wellness-spa video {
        height: 50%;
    }

    .vt-1 {
        margin-top: 3rem;
    }

    .vt-1 div img {
        display: none;
    }

    .cardd {
        margin-top: 15rem;
    }

    .ukus-jahorine video,
    .wellness-spa video {
        height: 37%;
        width: 100%;
    }

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

    .wrapper-dropdown {
        min-width: unset;
    }

    .booking form div div:not(.dropdown) h4,
    .selected-display,
    .booking form input {
        font-size: 1.4rem;
    }

    section:not(.career) .bg {
        max-height: 300px;
        background-position: center;
    }

    .abonos {
        margin-bottom: 3rem;
    }

    .villa-termag video,
    .wellness-spa video {
        height: unset;
    }

    .villa-termag:has(video) .cardd,
    .wellness-spa:has(video) .cardd {
        margin-top: 8rem;
    }

    .villa-termag video,
    .wellness-spa video,
    .villa-termag .bg,
    .wellness-spa .bg,
    .villa-termag iframe,
    .wellness-spa iframe {
        width: 96.35%;
        margin: 0 auto;
    }

    .special .row .col-lg-12 .card .col-lg-5 h5,
    .special .row .col-lg-12 .card .col-lg-5 div,
    .special .row .col-lg-12 .card .col-lg-5 .txt {
        text-align: center;
    }

    .testimonials .testimonials-wrapper .testimonials-top {
        padding: 5rem;
    }

    section.testimonials .bg {
        max-height: unset;
    }

    .ukus-jahorine iframe,
    .aktivni-izazov iframe {
        position: absolute;
        transform: translate(0);
        left: 0;
        top: 0;
        min-height: 300px;
    }
}

@media only screen and (min-width: 1399px) {
    .navbar .offcanvas-body img {
        display: none;
    }
}
