:root {
    color-scheme: light;
}

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    position: relative;
}

html {
    background: #fff;
    color: #000;
}

body,
html {
    max-width: 100vw;
    overflow-x: hidden;
    font-family: 'Forum', serif;
}

html.no-scroll {
    overflow: hidden !important;
}

body.no-scroll {
    overflow: hidden !important;
    touch-action: none;
}

img {
    width: 100%;
    border-radius: 0.2778vw;
}

a {
    text-decoration: none;
}

ul {
    margin-bottom: 0px;
}

ol,
ul {
    padding-left: 0px;
}

/* ========================================
   NAVBAR STYLES
   ======================================== */
.navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    padding: 0 1.11vw;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    height: 4.8vw;
}

.navbar.visible {
    opacity: 1;
    visibility: visible;
}

.navbar-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
}

.navbar-logo img {
    width: 5.28vw; /* 76px at 1440px */
    height: 1.46vw; /* 21px at 1440px */
    border-radius: unset;
}

.navbar-right {
    display: flex;
    align-items: center;
    gap: 7.71vw; /* 111px at 1440px */
}

.nav-links {
    display: flex;
    list-style: none;
    gap: 2.22vw; /* 32 at 1440px */
}

.nav-links li a {
    color: #140E09;
    font-size: 1.111vw; /* 16px at 1440px */
    font-weight: 400;
    font-family: 'Quicksand', sans-serif;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
}

.nav-links li a:hover {
    color: #FFCB23;
}

.nav-icons {
    display: flex;
    align-items: center;
    gap: 1.11vw; /* 16px at 1440px */
}

.nav-icon {
    display: flex;
    align-items: center;
}

.nav-icon img {
    height: 1.389vw; /* 20px at 1440px */
    width: auto; /* 20px at 1440px */
    transition: opacity 0.3s ease;
}

.nav-icon:hover img {
    opacity: 0.7;
}

/* Mobile icons (hidden on desktop) */
.nav-icons-mobile {
    display: none;
}

/* Hamburger button (hidden on desktop) */
.hamburger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
    position: absolute;
    left: 0;
}

.hamburger-line {
    display: block;
    height: 2px;
    background-color: #140E09;
    transition: all 0.3s ease;
}

.hamburger-line-top {
    width: 28px;
}

.hamburger-line-bottom {
    width: 20px;
}

/* Hamburger animation to X */
.hamburger.active .hamburger-line-top {
    transform: rotate(45deg) translate(3px, 3px);
    width: 24px;
}

.hamburger.active .hamburger-line-bottom {
    transform: rotate(-45deg) translate(3px, -3px);
    width: 24px;
}

/* Mobile navigation menu */
.mobile-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    padding: 2.05vw 4.10vw 3.08vw 4.10vw;
    border-radius: 0 0 4px 4px;
    /*box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);*/
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    pointer-events: none;
}

.mobile-nav.active {
    opacity: 1;
    transform: translateY(-1px);
    pointer-events: auto;
}

.mobile-nav-links {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 25px;
}

.mobile-nav-links li a {
    color: #140E09;
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
    display: flex;
    align-items: center;
    gap: 10px;
}

.mobile-nav-links li a:hover {
    color: #FFCB23;
}

.mobile-nav-star {
    display: flex;
    justify-content: center;   /* centar po X */
    align-items: center;
    width: 100%;
}
.mobile-nav-star img{
    width: 20vw;
    border-radius: 0;
}

.navbar,
.offcanvas,
.offcanvas-header,
.offcanvas-body,
.mobile-menu,
.mobile-drawer {
    box-shadow: none !important;
    border-bottom: none !important;
    filter: none !important;
}

/* ========================================
   PRELOADER STYLES
   ======================================== */
.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}

.preloader-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-image: url('/assets/images/Landing_image3840.webp');
    background-size: cover;
    background-position: center;
    z-index: 0;
}

.preloader-background::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
}

.preloader.hidden {
    opacity: 0;
    visibility: hidden;
}

.preloader-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    opacity: 0;
    transition: opacity 0.8s ease;
    cursor: pointer;
    pointer-events: auto;
    z-index: 10000;
}

.preloader-content * {
    cursor: pointer;
    pointer-events: auto;
}

.preloader-content.fade-in {
    opacity: 1;
}

.preloader-content.fade-out {
    opacity: 0;
}

.preloader-logo {
    width: 4.17vw;
    height: auto;
    border-radius: 0;
}

.preloader-phrase {
    font-family: 'Quicksand', sans-serif;
    font-weight: 600;
    font-size: 1.4vw;
    color: #fff;
    margin-top: 0.83vw;
    letter-spacing: 3px;
}

/* Transition text (Step 2) */
.transition-text {
    position: absolute;
    font-weight: 400;
    font-size: 50px;
    line-height: 100%;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    opacity: 0;
    transition: opacity 0.8s ease;
    padding: 0 20px;
}

.transition-text.fade-in {
    opacity: 1;
}

.transition-text.fade-out {
    opacity: 0;
}


/* ========================================
   HERO SECTION & SLIDER
   ======================================== */
.hero-section {
    width: 100%;
    height: calc(100vh - 4.792vw);
    margin-top: 4.792vw;
    position: relative;
    overflow: hidden;
}

.slider-container {
    width: 100%;
    height: 100%;
    position: relative;
    padding: 0 1.111vw; /* 16px at 1440px */
}

.slides-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
}

/* Overlay on slider images */
.slides-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    pointer-events: none;
    z-index: 2;
    border-radius: 0.2778vw;
}

.slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.slide.active {
    opacity: 1;
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;

}

/* Hero text overlay */
.hero-text {
    position: absolute;
    bottom: 6.944vw; /* 100px at 1440px */
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    z-index: 10;
    width: 100%;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.hero-text.visible {
    opacity: 1;
}

.hero-title {
    font-weight: 400;
    font-size: 3.472vw; /* 50px at 1440px */
    line-height: 100%;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 1.389vw; /* 20px at 1440px */
}

.hero-cta {
    display: inline-block;
    font-weight: 400;
    font-size: 1.25vw; /* 18px at 1440px */
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #fff;
    padding-bottom: 0.347vw; /* 5px at 1440px */
    transition: opacity 0.3s ease;
}

.hero-cta:hover {
    opacity: 0.8;
    color: #fff;
}

.hero-cta svg {
    margin-left: 0.556vw; /* 8px at 1440px */
    vertical-align: middle;
}

/* Pagination controls */
.slider-pagination {
    position: absolute;
    bottom: 2.083vw; /* 30px at 1440px */
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 1.042vw; /* 15px at 1440px */
    z-index: 10;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.slider-pagination.visible {
    opacity: 1;
}

.pagination-dot {
    width: 2.778vw; /* 40px at 1440px */
    height: 0.278vw; /* 4px at 1440px */
    border-radius: 0.139vw; /* 2px at 1440px */
    background-color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: background-color 0.3s ease, width 0.3s ease;
}

.pagination-dot:hover {
    background-color: rgba(255, 255, 255, 0.8);
}

.pagination-dot.active {
    background-color: #fff;
    width: 4.167vw; /* 60px at 1440px */
}

/* ========================================
   HERITAGE SECTION
   ======================================== */
.heritage-section {
    min-height: 100vh;   /* umesto 150vh */
    background-color: #fff;
    position: relative;
}


.heritage-container {
    position: relative;  /* umesto sticky */
    top: auto;           /* nije nužno, ali čisto */
    height: 100vh;
    padding: 4.167vw 1.111vw;
    overflow: hidden;
    max-width: 100%;
    width: 100%;
}


/* V-Shape Layout - All elements absolutely positioned */
.heritage-image {
    position: absolute;
    overflow: hidden;
}

.heritage-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*
   V-SHAPE LAYOUT:
   Left arm of V: Image1 (top) -> Image2 (bottom-left)
   Right arm of V: Image4 (top-right) -> Image3 (middle-right)
   Text flows diagonally in the center gap
*/

/* Image 1: Top-left, just below title */
.heritage-img-1 {
    width: 22vw;
    height: 28vw;
    top: 18%;
    left: 1%;
}

/* Image 2: Bottom center-right */
.heritage-img-2 {
    width: 14vw;
    height: 18vw;
    top: 41.127vw; /* 592.234px at 1440px */
    left: 32.6313%;
}

/* Image 4: Top-right corner */
.heritage-img-4 {
    width: 16vw;
    height: 20vw;
    top: 23.319vw; /* 335.797px at 1440px */
    right: 1%;
}

/* Image 3: Below Image 4 */
.heritage-img-3 {
    width: 18vw;
    height: 24vw;
    top: 53.194vw; /* 766px at 1440px */
    right: 26.6143%;
}

/* Title: Top center */
.heritage-title {
    width: 100%;
    position: absolute;
    top: 8%;
    left: 50%;
    transform: translateX(-50%);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #140E09;
    line-height: 1.4;
    text-align: center;
    z-index: 10;
    font-weight: 400;
    font-size: 3.472vw; /* 50px at 1440px */
    line-height: 100%;
    letter-spacing: -1%;
    text-transform: uppercase;
}



/* Description: Center of V, same Y level as Image 2 top */
.heritage-text {
    position: absolute;
    top: 28%;
    left: 33%;
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.25vw; /* 18px at 1440px */
    line-height: 133%;
    letter-spacing: 0;
    color: #140E09;
    max-width: 40%;
    text-align: center;
    z-index: 10;
    margin: auto;
}

/* CTA: Below description */
.heritage-cta {
    /* position: absolute;
    top: 40%;
    left: 54%; */
    display: inline-flex;
    align-items: center;
    margin-top: 1.667vw; /* 24px at 1440px */
    /* gap: 10px; */
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 1.667vw; /* 24px at 1440px */
    line-height: 120%;
    left: 20%;
    letter-spacing: 0;
    color: #140E09;
    text-transform: uppercase;
    padding-bottom: 0.347vw; /* 5px at 1440px */
    transition: color 0.3s ease;
    z-index: 10;
}

.heritage-cta::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #140E09;
    transition: background-color 0.3s ease;
}

.heritage-cta:hover {
    color: #FFCB23;
}

.heritage-cta:hover::after {
    background-color: #FFCB23;
}

.heritage-cta svg path {
    transition: fill 0.3s ease;
}

.heritage-cta:hover svg path {
    fill: #FFCB23;
}

/* Row wrappers - transparent on desktop (children stay absolutely positioned) */
.heritage-images-row-1,
.heritage-images-row-2 {
    display: contents;
    justify-content: space-between;
}

/* Lock final positions after animation completes */
.heritage-section.animation-complete .heritage-container {
    position: relative !important;
    top: auto !important;
    transform: none !important;
}

.heritage-section.animation-complete .heritage-text {
    top: 20% !important;
}

.heritage-section.animation-complete .heritage-cta {
    top: 33% !important;
}

.heritage-section.animation-complete .heritage-img-1 {
    top: calc(95% - 28vw) !important;
}

.heritage-section.animation-complete .heritage-img-2 {
    top: calc(95% - 18vw) !important;
}

.heritage-section.animation-complete .heritage-img-3 {
    top: calc(95% - 24vw) !important;
}

.heritage-section.animation-complete .heritage-img-4 {
    top: calc(95% - 20vw) !important;
}
/* Uvek iznad svega */
.heritage-title{
    /*z-index: 9999;*/
}

/* Dok je heritage pinovan, naslov je fiksiran u vrhu ekrana */
body.heritage-pinned .heritage-title{
    position: fixed !important;
    top: 6vw;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    pointer-events: none;
}

/* Da title ne “preskoči” layout kad pređe u fixed */
body.heritage-pinned .heritage-container{
    padding-top: 8vh;
}


/* ========================================
   SHOWCASE SECTION
   ======================================== */
.showcase-section {
    background-color: #fff;
    padding: 6.944vw 0; /* 100px at 1440px */
    overflow: hidden;
    padding-bottom: 8.056vw; /* 116px at 1440px */
    padding-top: 0;
}

.showcase-container {
    max-width: 100%;
    margin: 0 auto;
    padding-left: 1.111vw; /* 16px at 1440px */
    padding-right: 1.111vw; /* 16px at 1440px */
}

/* Left aligned intro paragraph */
.showcase-intro {
    font-family: 'Quicksand', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 18px at 1440px */
    line-height: 160%;
    color: #140E09;
    max-width: 34.722vw; /* 500px at 1440px */
    text-align: center;
    margin-bottom: 4.167vw; /* 60px at 1440px */
}

/* Staggered Image Carousel */
.showcase-carousel-wrapper {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    margin: 0;
}

.showcase-carousel {
    width: 100%;
    overflow: hidden;
    /* No scroll on desktop */
}

.showcase-track {
    display: flex;
    justify-content: space-between;
    padding-top: 1.389vw; /* 20px at 1440px */
    padding-bottom: 17.361vw; /* 250px at 1440px */
    /* Space for stagger transforms */
    width: 100%;
    align-items: flex-start;
}

.showcase-slide {
    flex-shrink: 0;
    width: 24.444vw; /* 352px at 1440px */
    height: 31.389vw; /* 452px at 1440px */
    overflow: hidden;
}

.showcase-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Hide slides beyond first 3 on desktop */
.showcase-slide:nth-child(n+4) {
    display: none;
}

/* Static stagger positions on desktop */
.showcase-slide:nth-child(1) {
    transform: translateY(16.875vw); /* 243px at 1440px */
}

.showcase-slide:nth-child(2) {
    transform: translateY(0);
}

.showcase-slide:nth-child(3) {
    transform: translateY(8.542vw); /* 123px at 1440px */
}

/* Title and text content below carousel */
.showcase-content {
    text-align: center;
    max-width: 48.611vw; /* 700px at 1440px */
    margin: 0 auto;
    padding-top: 2.778vw; /* 40px at 1440px */
    position: relative;
    /* left: 33%; */
    bottom: -9%;
    margin-top: -11.111vw; /* -160px at 1440px */
}

.showcase-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-style: normal;
    font-size: 3.472vw; /* 50px at 1440px */
    line-height: 100%;
    letter-spacing: -0.01em;
    text-align: center;
    text-transform: uppercase;
    color: #140E09;
    margin-bottom: 1.389vw; /* 20px at 1440px */
}

.showcase-text {
    font-family: 'Quicksand', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 18px at 1440px */
    line-height: 133%;
    letter-spacing: 0;
    color: #140E09;
    text-align: left;
    width:40.97vw;
    margin: 0 auto;
}

/* ========================================
   FEATURE IMAGE SECTION
   ======================================== */
.feature-image-section {
    padding: 0 1.11vw;
}
.feature-image-section1 {
    padding: 0 1.11vw;
}


.feature-image-container {
    max-width: 100%;
    margin: 0 auto;
    /*aspect-ratio: 1408 / 789;*/
    overflow: hidden;
    border-radius: 4px;
}

.feature-image-container img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Feature Image with Form variant */
.feature-image-with-form {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.feature-image-with-form .feature-image-container {
    width: 100%;
    /*padding: 0 2.05vw;*/
}

/* Floating Form Container */
.feature-form-container {
    position: static;
    width: 100%;
    max-width: 100%;
    background: #fff;
    border-radius: 12px;
    box-shadow: none;
    z-index: 10;
    display: flex;
    flex-direction: column;
    gap: 6.15vw;
    opacity: 1;
    pointer-events: auto;
    margin-bottom: 24px;
    padding: 0 2.05vw;

}


.feature-form-container.visible {
    opacity: 1;
    pointer-events: auto;
}

.feature-form-header {
    display: flex;
    flex-direction: column;
    /*gap: 6px;*/
    text-align: center;
}

.feature-form-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 6.15vw;;
    letter-spacing:0;
    text-transform: uppercase;
    color: #140E09;
    margin-bottom: 2.05vw;

}

.feature-form-subtitle {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 3.59vw;
    line-height: 133%;
    color: #140E09;
}

.feature-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    line-height: 133%;
    padding: 0;
}

.feature-form-group input,
.feature-form-group textarea {
    width: 100%;
    padding: 14px 16px;
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    color: #140E09;
    background: #F5F5F5;
    border: 1px solid transparent;
    border-radius: 4px;
    outline: none;
    transition: border-color 0.3s ease;
}

.feature-form-group input::placeholder,
.feature-form-group textarea::placeholder {
    color: #999;
}

.feature-form-group input:focus,
.feature-form-group textarea:focus {
    border-color: #FFCB23;
}

.feature-form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.feature-form-submit {
    width: 100%;
   /* padding: 16px 20px;*/
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 5.13vw;
    line-height: 100%;
    /*text-transform: uppercase;*/
    letter-spacing: 0.05em;
    color: #140E09;
    background: #FFCB23;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    margin-top: 3.08vw;
}

.feature-form-submit:hover {
    background: #e6b620;
}

.feature-form-submit:active {
    transform: scale(0.98);
}

.name-section {
    font-size: 3.59vw;
    margin-top: 17.69vw;
    /*margin-left: 6.41vw;*/
}

.name-section p {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 3.59vw;
    line-height: 133%;
    letter-spacing: 0;
    margin-bottom: 0;
    color: #000000;
}

/* Breadcrumb link hover */
.name-section a {
    position: relative;
    color: #000000;
    text-decoration: none;
    display: inline-block;
    transition: color 0.3s ease;
}

.name-section a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.2em;
    width: 0%;
    height: 1px;
    background: #20417f;
    transition: width 0.3s ease;
}

.name-section a:hover {
    color: #20417f;
}

.name-section a:hover::after {
    width: 100%;
}

/* keyboard accessibility */
.name-section a:focus-visible, .pocetna a:focus-visible{
    outline: 2px solid #20417f;
    outline-offset: 3px;
    border-radius: 2px;
}
.kolekcije{
    color: #140E09;
    font-family:'Forum', serif;
    letter-spacing: -1px;
    text-align: center;
    line-height: 100%;
    font-size: 3.47vw;
    letter-spacing: 0.17vw;

}
.filter-btn svg {
    width: 1.46vw;
    height: 1.46vw;
}
.filter-btn span{
    color: #140E09;
    font-family: 'Quicksand', sans-serif;
    line-height: 133%;
    font-size: 1.11vw;
}
/* Feature Form - Desktop */
@media (min-width: 1025px) {
    .feature-form-container {
        position: absolute;
        top: 8.96vw;
        left: 50%;
        transform: translateX(-50%) translateY(40px);
        max-width: 39.44vw;
        border-radius: 1.11vw;
        box-shadow: 0 10px 60px rgba(0, 0, 0, 0.15);
        padding: 1.67vw;
        gap: 1.67vw;
        opacity: 0;
        pointer-events: none;
        margin-bottom: 0;
    }
    /* Overlay on slider images */
    .slides-wrapper::after {
        border-radius:1.026vw ;
    }


    .feature-form-container.visible {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
        pointer-events: auto;
    }

    .feature-form-header {
        gap: 0.56vw;
    }

    .feature-form-title {
        font-size: 2.22vw;
        margin-bottom: 1.11vw;
    }

    .feature-form-subtitle {
        font-size: 1.11vw;
    }

    .feature-form {
        gap: 1.11vw;
        /*padding: 1.67vw;*/
    }

    .feature-form-group input,
    .feature-form-group textarea {
        padding: 0.83vw 0.90vw;
        font-size: 0.97vw;
        border: 0.069vw solid transparent;
    }

    .feature-form-group textarea {
        min-height: 8.33vw;
    }

    .feature-form-submit {
        padding: 1.25vw 1.67vw;
        font-size: 1.39vw;
        margin-top: 0;
    }

    .name-section {
        font-size: 0.97vw;
        margin: 6vw 0 1.11vw 0;
    }


    .sub-category-container .name-section{
        margin: 6.04vw 0 1.11vw 0;
    }

    .name-section p, .pocetna {
        font-size: 0.97vw;

    }

}
/* ========================================
   RESPONSIVE - TABLET & MOBILE (max-width: 1024px)
   ======================================== */
@media (max-width: 1024px) {
    img{
        border-radius: 1.026vw;
    }
    .navbar {
        height: 13.59vw;
        padding: 0 4.1vw;
    }
    .hero-section{
    height: calc(100vh - 13.59vw);
    margin-top:13.59vw;
    }

    .navbar-container {
        justify-content: center;
        position: relative;
        padding: 0;
        height: 100%;
    }

    .navbar-logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .navbar-logo img {
        width: 19.5vw;
        height: auto;
    }

    .navbar-right {
        display: none;
    }

    .nav-icons-mobile {
        display: flex;
        align-items: center;
        gap: 3.85vw;
        position: absolute;
        right: 0;
    }

    .nav-icons-mobile .nav-icon img {
        border-radius: 0;
    }

    .nav-icons-mobile .nav-icon img[alt="Search"] {
        width: 5.13vw;
        height: auto;
    }

    .nav-icons-mobile .nav-icon img[alt="Favorite"] {
        width: 4.1vw;
        height: auto;
    }

    .hamburger {
        display: flex;
        left: 0px;
    }

    .hamburger-line-top {
        width: 7.2vw;
    }

    .hamburger-line-bottom {
        width: 5.13vw;
    }

    .mobile-nav {
        display: block;
    }

    .mobile-nav-links {
        gap: 3.6vw;
        margin-bottom: 0;

    }

    .mobile-nav-links li a {
        text-transform: none;
        font-size: 4.1vw;
        font-family: 'Quicksand', sans-serif;
        gap: 3.6vw;
        margin-bottom: 0;
    }

    .mobile-nav-star svg {
        width: 20vw;
        height: auto;
    }

    .preloader-logo {
        width: 15.38vw;
        height: auto;
        border-radius: 0;
    }

    .preloader-phrase {
        font-family: 'Quicksand', sans-serif;
        font-weight: 600;
        font-size: 5.13vw;
    }

    .transition-text {
        font-size: 7.18vw;
    }


    .hero-text {
        bottom: 21.282vw;
        width: 100%;
        padding: 0 2.564vw ;
    }

    .hero-title {
        font-size: 8.205vw;
        line-height: 110%;
        letter-spacing: -1px;
        margin-bottom: 4.103vw;
    }

    .hero-cta {
        font-size: 5.128vw;
        text-transform: none;
    }

    .slider-pagination {
        bottom: 5.13vw;
    }

    .pagination-dot {
        width: 7.69vw;
        height: 0.77vw;
    }

    .pagination-dot.active {
        width: 11.54vw;
    }

    /* Heritage Section Mobile */
    .heritage-section {
        min-height: auto;
    }

    .heritage-container {
        position: relative;
        padding: 10.26vw 4.1vw;
        padding-bottom: 0px;
        height: auto;
        min-height: auto;
        display: flex;
        flex-direction: column;
        gap: 8.205vw;
    }

    .heritage-title {
        width: 100%;
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        font-size: 8.21vw;
        max-width: 100%;
        order: 1;
        text-align: center;
        margin-bottom: 0;
    }

    /* Image Row 1: heritage2 (left) + heritage1 (right, offset 80px down) */
    .heritage-images-row-1 {
        display: flex;
        gap: 6.15vw;
        order: 2;
        align-items: flex-start;
    }
    .kolekcije{
        color: #140E09;
        font-family:'Forum', serif;
        text-align: center;
        line-height: 100%;
        font-size: 6.15vw;
        letter-spacing: 0.17vw;
        margin-top: 8.2vw;

    }
    .filter-btn svg{
        width: 5.64vw;
        height: 5.64vw;
    }
    .filter-btn span{
        font-size: 4.10vw;
    }
    .heritage-image {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
    }

    .heritage-img-2 {
        order: 1;
        width: 38.97vw !important;
        height: 48.21vw !important;
        flex-shrink: 0;
    }

    .heritage-img-1 {
        order: 2;
        width: 46.67vw !important;
        height: 61.03vw !important;
        margin-top: 20.51vw;
        flex-shrink: 0;
    }

    .heritage-text {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        font-size: 4.1vw;
        max-width: 100%;
        text-align: center;
        order: 3;
    }

    .heritage-cta {
        text-transform: none;
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        order: 4;
        margin-top: 6.154vw;
        font-size: 5.13vw;
        width: fit-content;
        margin-left: auto;
        text-decoration: none;
        display: flex;
        justify-content: end;
        gap: 1.026vw;
        line-height: 120%;
        margin-right: 6.15vw;
        /*padding-right: 9.74vw;*/
    }

    .heritage-cta::after {
        /*width: calc(100% - 9.74vw);*/
    }
    .heritage-cta svg{
        width: 3.077vw;
        height: auto;
    }

    /* Image Row 2: heritage3 (left) + heritage4 (right, offset 113px down) */
    .heritage-images-row-2 {
        display: flex;
        gap: 6.15vw;
        order: 5;
        align-items: flex-start;
    }

    .heritage-img-3 {
        order: 1;
        width: 45.9vw !important;
        height: 60vw !important;
        flex-shrink: 0;
    }

    .heritage-img-4 {
        order: 2;
        width: 39.74vw !important;
        height: 52.82vw !important;
        margin-top: 28.97vw;
        flex-shrink: 0;
    }

    /* Showcase Section Mobile */
    .showcase-section {
        padding: 8.21vw 4.1vw 15.38vw 4.1vw;
    }
    .showcase-container{
    padding: 0px;
    }
    .showcase-intro {
        font-family: 'Quicksand', sans-serif;
        font-weight: 500;
        font-size: 4.615vw;
        line-height: 133%;
        letter-spacing: 0;
        max-width: 100%;
        margin-bottom: 6.15vw;

    }
    .d-md-none .heritage-cta{
        margin-top: 0;
    }
.showcase-section .heritage-cta{
    left: initial;
    margin-right: 6.15vw;
    margin-bottom: 10.256vw;
}

.slider-container{
    padding: 0px;
}
    .showcase-carousel-wrapper {
        width: 100%;
        margin-bottom: 0px;
    }

    .showcase-carousel {
        overflow-x: auto;
        overflow-y: visible;
        height: 103.59vw;
        padding-top: 0px;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .showcase-carousel::-webkit-scrollbar {
        display: none;
    }

    .showcase-track {
        gap: 6.41vw;
        padding: 0px 0;
        padding-bottom: 0px;
    }

    /* Show all slides on mobile */
    .showcase-slide:nth-child(n+4) {
        display: block;
    }

    .showcase-slide {
        width: 56.41vw;
        height: 71.79vw;
        aspect-ratio: 220 / 280;
        scroll-snap-align: start;
    }

    /* Mobile stagger positions */
    .showcase-slide:nth-child(1) {
        transform: translateY(31.79vw);
    }

    .showcase-slide:nth-child(2) {
        transform: translateY(1.03vw);
    }

    .showcase-slide:nth-child(3) {
        transform: translateY(24.36vw);
    }

    .showcase-slide:nth-child(4) {
        transform: translateY(33.33vw);
    }

    .showcase-content {
        position: relative;
        left: 0;
        bottom: 0;
        padding-top: 0;
        margin-top: 15.38vw;
        max-width: 100%;
    }

    .showcase-title {
        font-family: 'Forum', serif;
        font-weight: 400;
        font-size: 8.21vw;
        line-height: 110%;
        letter-spacing: -1px;
        text-align: center;
        text-transform: uppercase;
        margin-top: 0;
        margin-bottom: 6.15vw;
    }

    .showcase-text {
        font-family: 'Quicksand', sans-serif;
        font-weight: 400;
        font-size: 4.1vw;
        line-height: 133%;
        letter-spacing: 0;
        text-align: left;
        width:100%;
        margin: 0 auto;
    }

    .showcase-track {
        gap: 6.41vw;
        padding: 0px;
    }

    /* Feature Image Section Mobile */
    .feature-image-section {
        padding: 0;
        margin-left: 0px;
        padding-bottom: 8.21vw;
        margin-right: 0px;
    }
    .feature-image-container{
        width: 100%;
        height: auto;
        padding: 0 2.051vw;
    }
    .feature-image-section1 {
        padding: 0;
        margin-left: 0px;
        padding-bottom: 8.21vw;
        margin-right: 0px;
    }
    .feature-image-container1{
        width: 100%;
        height: 153.846vw ;
        padding: 0;
  }
    .feature-image-container1 img {
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .feature-image-container img {
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    /* Feature Form Mobile */
    .feature-image-with-form {
        flex-direction: column-reverse;
    }

    .feature-form-container {
        position: static;
        transform: none !important;
        left: auto;
        top: auto;
        max-width: 100%;
        border-radius: 3.08vw;
        box-shadow: none;
        margin-bottom: 8.21vw;
        opacity: 1;
        pointer-events: auto;
        padding:0 2.05vw ;
        gap:6.154vw;
    }

   /*.feature-form-header {
        gap: 1.54vw;
    }*/



    .feature-form-subtitle {
        font-size: 4.1vw;
        margin-bottom:0 ;
    }

    .feature-form {
        gap: 4.1vw;
    }

    .feature-form-group input,
    .feature-form-group textarea {
        padding: 3.33vw 2.05vw 3.33vw 3.08vw;
        font-size: 3.59vw;
        border-radius: 4px;
        border: 1px solid #E2E2E2;
        background: #fff;
    }

    .feature-form-submit {
        padding: 3.077vw 5.13vw;
        font-size: 5.13vw;
        line-height: 120%;
        margin-top: 2.05vw;
    }

}

/* ========================================
   FOOTER SECTION
   ======================================== */
.site-footer {
    background-color: #fff;
    padding: 0 16px;
    margin-top: 4.17vw;
}

.footer-container {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    flex-direction: column;
}

/* Upper Row: Social + Navigation Columns */
.footer-upper {
    position: relative;
    width: 100%;
    /*min-height: 200px;*/
    display: flex;
}

/*!* Social Icons - Left Column (flex row) *!*/
/*.footer-social {*/
/*    display: flex;*/
/*    align-items: flex-start;*/
/*    flex: 3;*/
/*    flex-direction: column;*/
/*    gap: 16px;*/
/*    padding-left: 0px;*/
/*    min-height: 100%;*/
/*}*/

/*.social-icon {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: center;*/
/*    width: 1.94vw;*/
/*    height: auto;*/
/*    transition: transform 0.25s ease;*/
/*}*/
/*.socials-holder{*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    gap: 1.11vw;*/
/*}*/
/*.social-icon img {*/
/*    width: 1.94vw;*/
/*    border-radius: 0;*/
/*    height: auto;*/
/*    transition: transform 0.25s ease, opacity 0.25s ease;*/

/*}*/

/*.social-icon:hover img {*/
/*    transform: scale(1.08);*/
/*    opacity: 0.85;*/
/*}*/
/* Social Icons - Left Column (flex row) */
.footer-social {
    display: flex;
    align-items: flex-start;
    flex: 3;
    flex-direction: column;
    gap: 16px;
    padding-left: 0px;
    min-height: 100%;
}

.socials-holder{
    display: flex;
    flex-direction: row;
    gap: 1.11vw;
}

.social-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:1.94vw;
    height:1.94vw;                 /* FIX 1: stabilna kutija */
    transition: transform 0.25s ease;
}

/* wrapper koji “seče” sweep u krug */
.social-icon__clip{
    position: relative;            /* FIX 2: anchor za ::after */
    width: 100%;
    height: 100%;
    border-radius: 999px;
    overflow: hidden;              /* FIX 3: nema žutih traka van kruga */

    transition: transform 0.25s ease;
    transform: translateZ(0);
    backface-visibility: hidden;
    will-change: transform;
    transform-origin: center;
}

.social-icon img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;                /* FIX 4: uklanja “baseline” bledenje */
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Light sweep (sad stvarno samo u krugu) */
.social-icon__clip::after{
    content:"";
    position:absolute;
    top:-50%;
    left:-75%;
    width:55%;
    height:200%;
    background: linear-gradient(
            120deg,
            transparent,
            rgba(255,203,35,0.38),
            transparent
    );
    transform: rotate(25deg);
    transition: left 0.45s ease;
    pointer-events:none;
    mix-blend-mode: multiply;
}

/* Hover: skaliraj clip, ne img */
.social-icon:hover .social-icon__clip{
    transform: translateZ(0) scale(1.08);
}

.social-icon:hover .social-icon__clip::after{
    left: 125%;
}

/* Navigation Columns Container - positioned from left edge */
.footer-nav-columns {
   /* position: absolute;
    left: 860px;
    top: 0;
    display: flex;
    gap: 236px;*/
    display: flex;
    flex: 2

;


}

/* Footer Columns */
.footer-column {
    display: flex;
    flex-direction: column;
    width: 50%;
}
.footer-column-ostalo{
    align-items: flex-end;

}

.footer-heading {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 1.39vw;
    line-height: 100%;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #140E09;
    margin-bottom: 1.11vw;
}

.footer-links {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.footer-links li a {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.11vw;
    line-height: 133%;
    color: #201409;
    transition: color 0.3s ease;
}

.footer-links li a:hover {
    color: #FFCB23;
}

/* Lower Row: Logo and Legal */
.footer-lower {
    display: flex;
    justify-content: center;
    align-items: flex-end;
   /* margin-top: 120px;*/
    padding-bottom: 40px;
    padding-left: 0px;
}

.footer-logo img {
    width: 204px;
    height: auto;
}

.footer-legal {
    display: flex;
    gap: 20px;
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #140E09;
}

.footer-legal a {
    color: #140E09;
    transition: color 0.3s ease;
}

.footer-legal a:hover {
    color: #FFCB23;
}

/* Mobile Social Icons - Hidden on desktop */
.footer-social-mobile {
    display: none;
}

.rights-reserved{
    margin-top: auto;
    font-size: 0.97vw;
    font-family:'Quicksand', sans-serif;
    font-weight: 400;
    line-height: 133%;
}
.footer-legal {
display: none;
}
/* =========================
   ORION PRELOADER: Premium glow (logo + halo)
   ========================= */

/* Klikabilni blok */
.preloader-content {
    position: relative; /* bitno za halo */
    transform: translateZ(0);
}

/* Halo iza logo+teksta (suptilno, premium) */
.preloader-content::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 10%;
    width: 18vw;
    height: 18vw;
    transform: translateX(-50%);
    pointer-events: none;

    background: radial-gradient(
            circle,
            rgba(255, 201, 32, 0.22) 0%,
            rgba(255, 201, 32, 0.10) 35%,
            rgba(255, 201, 32, 0.00) 70%
    );

    filter: blur(18px);
    opacity: 0.75;

    transition: opacity 240ms ease, transform 240ms ease, filter 240ms ease;
    animation: orionHaloPulse 2.8s ease-in-out infinite;
}

/* Glow direktno na logo */
.preloader-logo {
    filter:
            drop-shadow(0 0 10px rgba(255, 201, 32, 0.22))
            drop-shadow(0 0 22px rgba(255, 201, 32, 0.10));
    transition: transform 220ms ease, filter 220ms ease;
    will-change: transform, filter;
}

/* Hover/focus: malo “življe” */
.preloader-content:hover .preloader-logo,
.preloader-content:focus-visible .preloader-logo {
    transform: translateY(-1px) scale(1.02);
    filter:
            drop-shadow(0 0 14px rgba(255, 201, 32, 0.30))
            drop-shadow(0 0 30px rgba(255, 201, 32, 0.14));
}

.preloader-content:hover::after,
.preloader-content:focus-visible::after {
    opacity: 0.95;
    filter: blur(20px);
    transform: translateX(-50%) scale(1.04);
}

/* Malo “soft” sjaj i na tekstu (jedva) */
.preloader-phrase {
    text-shadow: 0 0 18px rgba(255, 201, 32, 0.14);
}

/* Pulse animacija (suptilna) */
@keyframes orionHaloPulse {
    0%, 100% {
        transform: translateX(-50%) scale(0.98);
        opacity: 0.70;
        filter: blur(18px);
    }
    50% {
        transform: translateX(-50%) scale(1.04);
        opacity: 0.92;
        filter: blur(20px);
    }
}

/* Mobile: halo veći jer je logo veći */
@media (max-width: 768px) {
    .preloader-content::after {
        width: 60vw;
        height: 60vw;
        top: 5%;
        filter: blur(22px);
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .preloader-content::after {
        animation: none !important;
    }
    .preloader-logo,
    .preloader-content::after {
        transition: none !important;
    }
}


/* Footer - Responsive for screens between 1024px and 1440px */
@media (max-width: 1440px) and (min-width: 1025px) {
    .footer-nav-columns {
       /* left: calc(860px * (100vw / 1440px));
        gap: calc(236px * (100vw / 1440px));*/
    }

    .footer-social {
        padding-left: calc(65px * (100vw / 1440px));
    }

    .footer-lower {
        padding-left: calc(65px * (100vw / 1440px));
    }
}

/* ========================================
   FOOTER - RESPONSIVE (max-width: 1024px)
   ======================================== */
@media (max-width: 1024px) {

    /* 64px from feature image to footer first text, 24px bottom */
    .site-footer {
        padding: 0 4.10vw 0 4.10vw ;
    }

    .footer-container {
        min-height: auto;
    }

    /* Upper Row: Centered */
    .footer-upper {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        min-height: auto;
    }

    /* Hide social icons from upper row on mobile */
    .footer-social {
        display: none;
    }


    .name-section{
    margin-bottom: 0px;
    }

    /* Navigation columns container */
    .footer-nav-columns {
        position: static;
        display: flex;
        left: auto;
        justify-content: space-between;
        width: 100%;
    }

    /* Navigation columns side by side */
    .footer-column {
        align-items: flex-start;
    }

    /* Ostalo column - align to right edge */
    .footer-column-ostalo {
        align-items: flex-end;
        text-align: left;
    }

    .footer-heading {
        font-size: 5.13vw;
        margin-bottom: 4.10vw;
    }

    .footer-links {
        gap: 4.10vw;
    }

    .footer-links li a {
        font-size: 3.7vw;
    }

    /* Mobile Social Icons Row - 40px below nav links */
    .footer-social-mobile {
        display: flex;
        justify-content: center;
        gap: 4.10vw;
        margin-top: 10.26vw;
        width: 100%;
    }
    .social-icon{
        width:7.18vw;
        height: auto;

    }
    .social-icon img {
        width:7.18vw;
    }

    .footer-legal {
        display: block;
        font-family: 'Quicksand', sans-serif;
        font-weight: 400;
        font-size: 3.08vw;

    }
    /* Lower Row: Stacked, centered */
    .footer-lower {
        flex-direction: column;
        align-items: center;
        /* 24px from social icons to logo */
        margin-top: 6.15vw;
        padding-left: 0;
        padding-bottom: 6.15vw;
    }

    .footer-logo img {
        width: 150px;
    }

    /* 40px between logo and design text */
    .footer-legal {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        text-align: center;
    }
}

/* ========================================
   CONTACT SIDEBAR
   ======================================== */
.contact-sidebar {
    position: fixed;
    top: 0;
    right: -33.33vw;
    width: 33.33vw;
    height: 100vh;
    background-color: #F5F5F5;
    z-index: 1001;
    transition: right 0.4s ease;
    overflow-y: auto;
}

.contact-sidebar.open {
    right: 0;
}

.contact-sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}

.contact-sidebar-overlay.open {
    opacity: 1;
    visibility: visible;
}

.contact-sidebar-content {
    padding: 1.11vw 1.67vw 1.67vw 1.67vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100%;
}

/* Header */
.contact-sidebar-header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.11vw;
}

.contact-sidebar-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 1.67vw;
    line-height: 100%;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #140E09;
}

.contact-sidebar-close {
    background: none;
    border: none;
    width: 1.67vw;
    height: 1.67vw;
    position: relative;
    cursor: pointer;
    padding: 0;
    transition: opacity 0.3s ease;
}

.contact-sidebar-close::before,
.contact-sidebar-close::after {
    content: '';
    position: absolute;
    width: 1.67vw;
    height: 0.07vw;
    background-color: #140E09;
    top: 50%;
    left: 50%;
}

.contact-sidebar-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.contact-sidebar-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.contact-sidebar-close:hover {
    opacity: 0.6;
}

/* Map */
.contact-sidebar-map {
    width: 100%;
    height: 24vw ;
    border-radius: 0.28vw;
    overflow: hidden;
    margin-bottom: 2.22vw;
}

.contact-sidebar-map img,
.contact-sidebar-map iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Store Title */
.contact-store-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 1.67vw;
    line-height: 100%;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #140E09;
    text-align: center;
    margin-bottom: 1.27vw;
}

/* Address */
.contact-address {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.25vw;
    line-height: 133%;
    letter-spacing:0px;
    color: #140E09;
    text-align: center;
    margin-bottom: 0.56vw;
}

/* Phone Numbers */
.contact-phones {
    text-align: center;
    margin-bottom: 0.56vw;
}

.contact-phones p {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.25vw;
    line-height: 133%;
    letter-spacing: 0px;
    color: #140E09;
    margin: 0;
}

/* Working Hours */
.contact-hours {
    text-align: center;
    margin-bottom: 0.56vw;
}

.contact-hours p {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.25vw;
    line-height: 133%;
    letter-spacing: 0px;
    color: #140E09;
    margin: 0;
}

/* Email */
.contact-email {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.25vw;
    line-height: 133%;
    letter-spacing: 0%;
    color: #140E09;
    text-align: center;
    margin-bottom: 1.67vw;
}

/* Social Icons */
.contact-social-icons {
    display: flex;
    gap: 1.11vw;
    justify-content: center;
    align-items: center;
    margin-top: 0px;
    /*padding-bottom: 20px;*/
}

.contact-social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width:  1.94vw;
    height: auto;
    transition: opacity 0.3s ease;
}

.contact-social-icon img {
    width:  1.94vw;
    height: auto;
}

.contact-social-icon:hover {
    opacity: 0.6;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .contact-sidebar {
        width: 100%;
        right: -100%;
    }

    .contact-sidebar-content {
        padding: 4.1vw 6.15vw 0 6.15vw;
    }
    .contact-sidebar-header{
        font-size: 6.15vw;
        margin-bottom: 6.15vw;
    }
    .contact-sidebar-title{
        font-size: 6.15vw;

    }
    .contact-sidebar-close::before,
    .contact-sidebar-close::after {
        content: '';
        position: absolute;
        width: 6.15vw;
        height: 0.513vw;
        background-color: #140E09;
        top: 50%;
        left: 0;
    }
    .contact-sidebar-map{
        width: 100%;
        height: 80vw;
        margin-bottom:6.15vw ;
    }
    .contact-store-title{
        font-size: 6.15vw;
        margin-bottom: 6.15vw ;
    }
    .contact-address{
        font-size: 4.1vw;
        margin-bottom:4.1vw ;
    }
    .contact-phones, .contact-hours{
        margin-bottom: 4.1vw;
    }
    .contact-phones p{
        font-size: 4.1vw;
    }
    .contact-hours p{
        font-size:4.1vw ;
    }
    .contact-email{
        font-size:4.1vw;
        margin-bottom: 6.15vw;
    }
    .contact-social-icons{
        gap: 10.1vw;
    }
    .contact-social-icon img{
        width:7.179vw ;
        height: auto;
    }
    .location-info{
        margin-bottom: 8.205vw;
    }
    .location-map{
        margin-bottom: 12.821vw;
    }

}

/* ========================================
   ABOUT HERO SECTION
   ======================================== */
.about-hero-section {
    width: 100%;
    min-height: auto;
    /*padding-top: 9.49vw;*/
    margin-left: 0px;
    margin-right: 8px;
    padding: 0 4.10vw;
}

.about-hero-container {
    display: flex;
    flex-direction: column-reverse;
    min-height: auto;
    margin-left: 0px;
    /*padding: 8.21vw 4.10vw;*/

}

/* Left Column: Image */
.about-hero-image {
    width: 100%;
    /*aspect-ratio: 358 / 500;*/
    /*padding-bottom:2.05vw ;*/
    flex-shrink: 0;
}

.about-hero-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

/* Right Column: Text */
.about-hero-content {
    display: flex;
    flex: auto;
    justify-content: center;
    align-items: center;
    margin-top:  8.205vw ;
    margin-bottom:  8.205vw ;

}


.about-hero-content-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
   /* gap: 24px;*/
}

/* Main Heading */
.about-hero-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size:  8.205vw;
    line-height: 110%;
    letter-spacing: -1px;
    text-transform: uppercase;
    color: #140E09;
    text-align: center;
    margin-bottom: 4.1vw;
}

/* Intro Paragraph */
.about-hero-intro {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.13vw;
    line-height: 133%;
    color: #140E09;
    text-align: center;
    margin-bottom: 4.10vw;
}

/* Decorative Star */
.about-hero-star {
    display: flex;
    justify-content: center;
    align-items: center;
    width:12.82vw;
    height: auto;
}

.about-hero-star svg {
    width: 12.82vw;
    height: auto;
    margin-bottom: 4.10vw;
}

/* Mission Paragraph */
.about-hero-mission {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.1vw;
    line-height: 133%;
    color: #140E09;
    text-align: center;
    margin-bottom: 0;
}
.about-grid-section {
    background-color: #fff;
    padding: 0 2.05vw 4.1vw 2.05vw;
    /*margin-left: 8px;
    margin-right: 8px;
    padding-top: 0px;*/
}


/* ========================================
   ABOUT HERO SECTION - DESKTOP
   ======================================== */
@media (min-width: 1025px) {
    .about-hero-section {
        min-height: 0;
        margin-right: 0;
        padding: 0 1.11vw;

    }

    .about-hero-container {
        display: grid;
        grid-template-columns: 1fr 1fr;
        flex-direction: row;

        margin-top: 1.67vw;
    }

    .about-hero-image {
        width: 48.96vw;
        aspect-ratio: unset;
        padding: 0;
    }

    .about-hero-image img {
        height: auto;
        width: 48.96vw;
    }

    .about-hero-content {
        padding: 0;
    }

    .about-hero-content-inner {
        width: 31.67vw;
        gap: 0;
    }

    .about-hero-title {
        font-size: 3.47vw;
        margin-bottom: 1.67vw;
    }

    .about-hero-intro {
        font-size: 1.25vw;
        line-height: 133%;
        margin-bottom: 2.22vw;
    }

    .about-hero-star svg {
        width: 5.42vw;
        height: auto;
        margin-bottom: 2.22vw;
    }

    .about-hero-mission {
        font-size: 1.25vw;
        line-height: 133%;
    }
}

/* ========================================
   ABOUT GRID SECTION
   ======================================== */
.about-grid-section {
    background-color: #fff;
    padding: 0 2.05vw 4.1vw 2.05vw;
    /*margin-left: 8px;
    margin-right: 8px;
    padding-top: 0px;*/
}

.about-grid-container {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.05vw;
}

.about-grid-row {
    display: contents;
}

/* Image blocks */
.about-grid-image {
    width: 100%;
    height: auto;
    aspect-ratio: 453 / 445;
    border-radius: 4px;
    overflow: hidden;
    order: 0;
}

.about-grid-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Text blocks */
.about-grid-text {
    width: 100%;
    height: fit-content;
    aspect-ratio: unset;
    grid-column: span 2;
   /* border-radius: 4px;*/
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding: 8.21vw 4.10vw;*/
    /*padding-bottom: 0px;*/
    padding: 0 2.05vw ;
}

.about-grid-text p:last-child {
    margin-top: 6.2vw ;
}

/* First text card at top */
.about-grid-row:first-child .about-grid-text {
    order: -1;
}

/* Last text card at bottom */
.about-grid-row:last-child .about-grid-text {
    order: 10;
}

.about-grid-text p {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.10vw;
    line-height: 133%;
    color: #140E09;
    text-align: center;
    /*letter-spacing: 0.02em;*/
    margin-bottom: 8.205vw;
    margin-top: 8.205vw;
    /*padding: 0 2.04vw;*/
}

/* ========================================
   ABOUT GRID SECTION - DESKTOP
   ======================================== */
@media (min-width: 1025px) {
    .about-grid-text p:last-child {
        margin-top:0 ;
    }
    .about-grid-section {
        padding: 4.17vw 1.111vw;
        margin-left: 0;
        margin-right: 0;
    }

    .about-grid-container {
        display: flex;
        flex-direction: column;
        gap: 24px;
    }

    .about-grid-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 31.46vw));
        gap: 1.67vw;
        justify-content: center;
    }

    .about-grid-image {
        /*max-width: 589px;*/
        height: 31.46vw;
        aspect-ratio: unset;
        order: unset;
    }

    .about-grid-text {
        height: 31.46vw;
        aspect-ratio: unset;
        grid-column: auto;
       /* padding: 24px;
        padding-bottom: 24px;*/
    }

    .about-grid-row:first-child .about-grid-text {
        order: unset;
    }

    .about-grid-row:last-child .about-grid-text {
        order: unset;
    }

    .about-grid-text p {
        font-size: 1.25vw;
        width: 25vw;
        margin-top: 0;
        margin-bottom: 0;
    }
}

/* ========================================
   LOCATION SECTION
   ======================================== */
.location-section {
    background-color: #fff;
    padding: 0px;
    padding-left: 2.05vw;
    padding-right: 2.05vw;
    /*margin-bottom: 14.36vw;*/
}

.location-container {
    max-width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    /*gap: 40px;*/
}


/* Left Column: Text Info */
.location-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 4.10vw;
    padding: 0;
}

.location-title {
    font-family: 'Forum', serif;
    font-weight: 400;
    font-size: 6.15vw;
    line-height: 100%;
    text-transform: uppercase;
    color: #140E09;
}

.location-address {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.10vw;
    line-height: 133%;
    letter-spacing: 0;
    color: #140E09;
    margin-bottom: 0;
}

.location-phones p,
.location-hours p {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.10vw;
    line-height: 133%;
    letter-spacing: 0;
    color: #140E09;
    margin: 4px 0;
}

.location-email {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 4.10vw;
    line-height: 133%;
    letter-spacing: 0;
    color: #140E09;
}

.location-star {
    margin: 0;
    display: flex;
    justify-content: center;
}

.location-star svg {
    width: 12.82vw;
    height: auto;
}

/* Right Column: Map */
.location-map {
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 4px;
    overflow: hidden;
}

.location-map img,
.location-map iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.heritage-text,.showcase-intro{
    text-align: left;
}

/* ========================================
   LOCATION SECTION - DESKTOP
   ======================================== */
@media (min-width: 1025px) {
    .location-section {
        padding: 4.17vw 1.11vw 0 1.11vw;
        margin-left: 0;
        margin-right: 0;
    }

    .location-container {
        grid-template-columns: 1fr 1fr;
        /*gap: 10.42vw;*/
    }

    .location-info {
        gap: 0;
        padding-top: 12.64vw;
    }

    .location-title {
        font-size: 2.22vw;
        margin-bottom: 2.22vw;
    }

    .location-address {
        font-size: 1.25vw;
        margin-bottom: 1.67vw;
    }

    .location-phones p,
    .location-hours p {
        font-size: 1.25vw;
    }

    .location-phones,
    .location-hours {
        margin-bottom: 1.67vw;
    }

    .location-email {
        font-size: 1.25vw;
        margin-bottom: 2.22vw;
    }

    .location-star svg {
        width: 5.42vw;
        height: auto;
    }

    .location-map {
        height: 52.57vw;
        min-height: unset;
        border-radius: 0.28vw;
    }

    .heritage-text,.showcase-intro{
        text-align: center;
    }
}

/* Footer after location section - remove top padding */
.location-section+.site-footer {
    padding-top: 0;
}