@font-face {
    src: url("aftika\ light.ttf");
    font-family: "aftika";
}

@font-face {
    src: url("aftika\ semibold.ttf");
    font-family: "aftika-semi";
}

@font-face {
    src: url("aftika\ bold.ttf");
    font-family: "aftika-bold";
}

body {
    font-family: "aftika";
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    color: #585858;
}

h3 {
    font-family: "aftika-semi";
    font-size: 24px !important;

}

p {
     font-family: "aftika";
    font-size: 16px;
    color: #3B3B3B;
    font-weight: 200;
    letter-spacing: 0.5px;
    line-height: 25px;

}

h1 {
    font-size: 62px;
    font-weight: 700;
    font-family: "aftika-bold";

}

h2 {
    font-size: 40px !important;
    font-weight: 700;
    font-family: "aftika-bold";

}

span {
    font-family: "aftika";
    font-weight: 200;

}

a {
    font-family: "aftika";

}

#header {
    background-color: #fff;
    overflow: hidden;
}

.navbar {
    padding: 15px 0;
}

.navbar-brand {}

.navbar a {
    text-decoration: none;
}

h2.logo {
    font-size: 28px;
    font-weight: 400;
    color: #fff;
}

h2.logo strong {
    font-size: 35px;
    color: #EDF828;
    font-weight: 600;
}

h2.center-logo {
    margin: 0 25px;
}

#navbarSupportedContent {
    justify-content: space-between;
}

ul.navbar-nav {}

ul.navbar-nav li.nav-item {
    margin-right: 25px;
}

ul.navbar-nav li.nav-item:last-child {
    margin-right: 0;
}

ul.navbar-nav li.nav-item a.nav-link {
    color: #000;
}

.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .show>.nav-link {
    color: #bd9f80;
}

ul.navbar-nav li.nav-item a.nav-link:hover {
    color: #bd9f80;

}
.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
    color: rgb(0, 0, 0);
}
.carousel-hero-banner {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    color: var(--text-color);
}

.carousel-images {
    width: 100%;
    height: 100%;
}

.carousel-slide {
    position: absolute;
    top: -92px;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel-slide.active {
    opacity: 1;
}

.carousel-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    z-index: 1;
}

.carousel-slide {
    position: absolute;
    top: -92px;
    /* Keeping your original top position */
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel-slide.active {
    opacity: 1;
}

.carousel-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    z-index: 1;
}

.carousel-slide::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 2;
}

.slide-content {
    position: relative;
    z-index: 3;
    color: white;
    text-align: center;
}

.slide-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 2rem;
    background-color: var(--overlay-bg);
    border-radius: 5px;
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 109px !important;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
    list-style: none;
}

.slide-content h1 {
    font-size: 65px;
    margin-bottom: 1rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    color: #fff;
}

.slide-content p {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
    color: #fff;

}

.cta-button {
    display: inline-block;
    background-color: var(--primary-color);
    color: var(--text-color);
    padding: 1rem 2rem;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.nav-button {
    cursor: pointer;
    position: absolute;
    top: 45%;
    transform: translateY(-50%);
    background-color: #fff;
    color: var(--text-color);
    border: none;
    padding: 8px 15px;
    font-size: 18px;
    transition: background-color 0.3s ease;
    z-index: 3;
    border-radius: 30px;
}

.nav-button:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

.prev {
    left: 20px;
}

.next {
    right: 20px;
}



.dot {
    cursor: pointer;
    height: 5px;
    width: 35px;
    margin: 0 5px;
    background-color: rgba(255, 255, 255, 0.5);
    display: inline-block;
    transition: background-color 0.3s ease;
}

.dot.active,
.dot:hover {
    background-color: #bd9f80;
}

.pos-rel {
    position: relative;
    top: 30px;
}

.about {
    padding: 0px 0 100px;
}

.about-sect {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
    align-items: center;
}

.grid-about {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

.icon-about {
    padding: 15px;
    /* box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; */
    border-radius: 20px;
    border: 1px solid #EAEAEA;
}

.icon-about img {
    width: 100px;
}

.collection-sec {
    display: grid;
    grid-template-columns: 65% 35%;
    gap: 25px;
    padding-bottom: 25px;
}

.collection-sec-rev {
    display: grid;
    grid-template-columns: 35% 65%;
    gap: 25px;
}

.collect {
    position: relative;
}

.collect h3 {
    position: absolute;
    bottom: 10px;
    left: 20px;
    color: #fff;
    z-index: 10;
}

.collect::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.233);
    z-index: 2;
    border-radius: 20px;
}

.collect img {
    width: 100%;
    height: 40vh;
    object-fit: cover;
    border-radius: 20px;
}

.collection-view {
    padding: 100px 0;
    background-color: #f5f5f5;
}

.collec-center {
    text-align: center;
    padding-bottom: 25px;
}

.stepto {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}

.world-co {
    padding: 100px 0;
}

.swiper-wrapper img {
    width: 100%;
    height: 50vh !important;
    object-fit: cover;
    object-position: center;
}

.swiper-container {
    padding-top: 50px;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    color: #000;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    color: #000;

}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: none !important;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {

    background-image: none !important;
}

.empower {
    text-align: center;
    color: #fff
}

/* --- General Section Styling --- */
.tile-sizes-section {
    padding: 100px 0 0;
    text-align: center;
}

.tile-sizes-section .section-title {
    font-size: 2.5rem;
    color: #1A1A1A;
    /* Use your Text Color */
    margin-bottom: 20px;
}

.tile-sizes-section .section-description {
    font-size: 1.1rem;
    color: #4A4A4A;
    /* Use a slightly lighter text color for description */
    margin-bottom: 60px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* --- Grid Layout for Tile Items --- */
.tile-sizes-grid {
    /* display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 30px;
    align-items: flex-end;
    justify-items: center;
    padding: 0 20px; */
    display: flex;
    /* grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); */
    gap: 30px;
    align-items: center;
    justify-items: center;
    padding: 0 20px;
    margin: auto;
    width: 100%;

}

/* --- Individual Tile Item Styling --- */
.tile-size-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    /* Pushes the graphic to the top, label to the bottom */
    min-height: 250px;
    /* Ensure consistent height for all items */
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
    cursor: pointer;
    position: relative;
    margin: auto;
}

/* Animation: Subtle scale/shadow on hover */
/* .tile-size-item:hover {
    transform: translateY(-5px) scale(1.02); 
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); 
} */

.tile-size-item .size-label {
    font-size: 0.95rem;
    color: #1A1A1A;
    /* margin-top: 15px; */
    font-weight: 500;
    transform: rotate(90deg);
    width: max-content;
    position: absolute;
    right: -75px;
    bottom: 40px;
}

/* --- Tile Graphic Styling (The Rectangular Shapes) --- */
.tile-graphic {
    /* border: 1px solid #5C7080; */
    /* Use a neutral gray from your palette for outlines */
    box-sizing: border-box;
    /* Include padding and border in the element's total width and height */
    /* max-height: 250px; */
    /* Max height for the graphics */
    /* max-width: 150px; */
    /* Max width for the graphics */
    background-color: transparent;
    /* No fill */
    transition: all 0.3s ease;
    /* Smooth transition for hover effects */
}


/* --- Specific Tile Graphic Dimensions ---
   These use max-height to ensure they scale down on smaller screens
   but maintain their aspect ratio visually.
   Base height for calculation: let 1200mm = 200px (max height)
   Then 200mm = ~33px, 600mm = 100px, 800mm = ~133px, 1800mm = 300px (would exceed max, so caps at 200)
*/
.tile-size-item.size-200x1200 .tile-graphic {
    width: 33px;
    height: 200px;
    background: url(../img/size/GABOON-WOOD-200x1200.jpg);
}

.tile-size-item.size-600x600 .tile-graphic {
    width: 100px;
    height: 100px;
    background: url(../img/size/CORE-MUSHROOM-600x600.jpg);
}

.tile-size-item.size-600x1200 .tile-graphic {
    width: 100px;
    height: 200px;
    background: url(../img/size/AMBIENT-ECRU_600x1200.jpeg);
}

.tile-size-item.size-800x800 .tile-graphic {
    width: 133px;
    height: 133px;
    background: url(../img/size/IMPERO-BEIGE_800x800.jpeg);
}

.tile-size-item.size-800x1600 .tile-graphic {
    width: 133px;
    height: 220px;
    background: url(../img/size/CALYPSO-800x1600.jpg);
}

/* Caps at max-height */
.tile-size-item.size-1200x1800 .tile-graphic {
    width: 150px;
    height: 250px;
    background: url(../img/size/BRECCIA_1200X1800.jpg);
}

/* Caps at max-width and max-height */
.tile-size-item.size-1200x1200 .tile-graphic {
    width: 160px;
    height: 160px;
    background: url(../img/size/ARIANA-1200x1200.jpg);
}

/* Caps at max-width */


/* --- Media Queries for Responsiveness --- */
@media (max-width: 768px) {
    .tile-sizes-grid {
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 20px;
    }

    .tile-size-item {
        min-height: 200px;
    }

    .tile-graphic {
        max-height: 150px;
        /* Adjust max height for smaller screens */
        max-width: 120px;
    }

    /* Adjust specific graphic sizes if needed, or let max-height/width handle it */
    .tile-size-item.size-200x1200 .tile-graphic {
        width: 25px;
        height: 150px;
    }

    .tile-size-item.size-600x600 .tile-graphic {
        width: 90px;
        height: 90px;
    }

    /* ... and so on for other sizes ... */
}

@media (max-width: 480px) {
    .tile-sizes-grid {
        grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
        gap: 15px;
    }

    .tile-size-item {
        min-height: 180px;
    }

    .tile-graphic {
        max-height: 120px;
        max-width: 90px;
    }

    .tile-size-item .size-label {
        font-size: 0.85rem;
    }
}

/* --- Keyframe Animation for a subtle "pop" on initial load (optional) --- */
@keyframes graphicFadeIn {
    from {
        opacity: 0;
        transform: scale(0.8);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Apply animation on load for each graphic */
.tile-graphic {
    animation: graphicFadeIn 0.6s ease-out forwards;
    /* You might want to delay this based on the WOW.js delay */
}

/* --- 1. Base Tile Graphic Styling (Kept Clean) --- */
.tile-graphic {
    /* Existing styles to define the shape and size */
    border: 1px solid #5C7080;
    box-sizing: border-box;
    position: relative;
    /* Crucial: Needed for absolute positioning of pseudo-elements */
    overflow: hidden;
    /* Hides the drawing border lines when they are outside */
    transition: all 0.3s ease;
    /* Smooth transition for background/non-animated properties */
}

/* --- 2. Setup Pseudo-Elements for Drawing --- */

/* --- 3. Define the Horizontal Drawing Lines --- */
.tile-graphic:before {
    /* Starts invisible (0 width) along the top and bottom */
    width: 0;
    height: 2px;
    /* Thickness of the drawing border */
}

/* Define Top and Bottom Lines */
.tile-graphic:before:nth-child(odd) {
    top: 0;
    left: 0;
}

.tile-graphic:before:nth-child(even) {
    bottom: 0;
    right: 0;
}

/* --- 4. Define the Vertical Drawing Lines --- */
.tile-graphic:after {
    /* Starts invisible (0 height) along the left and right */
    height: 0;
    width: 2px;
    /* Thickness of the drawing border */
}

/* Define Left and Right Lines */
.tile-graphic:after:nth-child(odd) {
    left: 0;
    top: 0;
}

.tile-graphic:after:nth-child(even) {
    right: 0;
    bottom: 0;
}


/* --- 5. Hover State: Animate the Draw --- */

/* Draw Horizontal Lines (Top and Bottom) */

.unique {
    padding: 100px 0;
}

.uniq-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.uniqu-design {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}

.tiles-design {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

.grid-design {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

/* --- Core Layout (Keep the same) --- */
.feature-image-slider-section {
    padding: 80px 0;
}

.feature-slider-wrapper {
    display: flex;
    gap: 40px;
    align-items: center;
}

/* --- Content Box Styling (Keep the same) --- */


/* Style for the images within the slides */
.swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

/* Optional: Custom styling for navigation buttons (default Swiper styles are often sufficient) */
.swiper-button-next,
.swiper-button-prev {
    color: #D47768;
    /* Use your Accent Color for buttons */
    /* Adjust size or position if needed */
}


/* --- Responsive Adjustments (Keep the same) --- */
@media (max-width: 992px) {
    .feature-slider-wrapper {
        flex-direction: column;
        gap: 60px;
    }

    /* ... (rest of the mobile adjustments) ... */
}

/* --- General Layout and Section Setup --- */
.feature-image-slider-section {
    padding: 80px 0;
    background-color: #FFFFFF;
    /* Clean white background */
}

.feature-slider-wrapper {
    display: grid;
    gap: 40px;
    align-items: center;
    grid-template-columns: 60% 40%;
}

/* --- 1. Content Box Styling (Left Side) --- */
.content-box {

    padding-left: 320px;
}

.main-heading {
    font-size: 2.8rem;
    font-weight: 700;
    color: #1A1A1A;
    /* Deep Charcoal Text */
    margin-bottom: 40px;
    line-height: 1.1;
}

.feature-list-container {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 5px;
    /* Allows wrap on small screens */
}

.feature-item {
    flex: 1 1 45%;
    /* Each item takes up roughly half the space */
    padding: 30px;
    border: 1px solid #EAEAEA;
    /* Light border similar to the image */
    border-radius: 20px;

}

.feature-item:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    /* Subtle hover lift */
}

.icon-wrap {

    margin-bottom: 15px;
    /* Styles for the icon (SVG or font icon recommended) */
}

.feature-item img {
    width: 80px;
}

.empower p {
    color: #fff;
}

/* --- 2. Image Slider Styling (Right Side) --- */
.image-slider-container {
    flex: 1 1 50%;
    /* Takes up about 50% of the width */
    position: relative;
    overflow: hidden;
    height: 500px;
    /* Fixed height for visual balance */
}

.slider-wrapper {
    display: flex;
    height: 100%;
    transition: transform 0.5s ease-in-out;
    /* Controlled by JS */
}

.slider-slide {
    min-width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 10px;
    /* Space between slides if multiple are visible */
}

.slider-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Ensures images fill the space correctly */
    border-radius: 10px;
}

/* Add styles for navigation buttons/dots here */


/* --- Responsive Adjustments --- */
@media (max-width: 992px) {
    .feature-slider-wrapper {
        flex-direction: column;
        /* Stack vertically on tablets/mobiles */
        gap: 60px;
    }

    .content-box,
    .image-slider-container {
        flex: 1 1 100%;
        /* Full width */
    }


}

.download {
    text-align: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

.downloads {
    background: #bd9f80;
    border: 1px solid #bd9f80;

    color: #fff;
    padding: 10px 25px;
    text-decoration: none;
    border-radius: 30px;
    transition: all .5s ease-in-out;
}

.downloads:hover {

    background-color: transparent;
    border: 1px solid #bd9f80;
    color: #fff;
    transition: all .5s ease-in-out;

}
.download p{
    color: #fff;
}
.footer-grid {
    display: grid;
    gap: 25px;
    grid-template-columns: 30% 15% 20% 30%;
    border-bottom: 1px solid #bd9f805e;
    padding-bottom: 25px;
}

.footer-data ul {
    list-style-type: none;
    padding-left: 0px;
}

.footer-data a {
    text-decoration: none;
    color: #edededba;
    font-size: 18px;
    line-height: 35px;
}

.footer-data p {
    color: #edededba;

}

.footer-data h3 {
    font-size: 22px;
    padding-bottom: 10px;
    color: #bd9f80;

}

.footer {
    padding: 100px 0 20px;
    background-color: #1a1a1a;
}

.footer-data img {
    width: 125px;
    margin-bottom: 15px;
}




main {
    position: relative;
    column-gap: 3rem;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

@media screen and (min-width: 960px) {
    main {
        display: grid;
        padding-inline: 0;
        grid-template-columns: 55% 45%;
    }
}

main .content {
    width: 100%;
    color: #fff;
    position: relative;
    z-index: 2;
    margin-bottom: 3em;
}

@media screen and (min-width: 960px) {
    main .content {
        width: 40%;
        padding-left: 5em;
        margin-bottom: 0;
    }
}


.swiper-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    right: 0px;
    margin: 0 auto;
}

@media screen and (min-width: 960px) {}

.swiper {
    position: relative;
    width: 100%;
    z-index: 2;
}

.swiper-slide {

    display: flex;
    flex-direction: column;
    align-items: self-start;
    position: relative;
    border-radius: 20px;
    text-align: center;
}

.swiper-slide span {
    display: inline-block;
    border-radius: 0 50px 50px 0;
    text-transform: capitalize;
    padding: 12px 20px;
    letter-spacing: 0.5px;
    font-weight: 500;
    position: absolute;
    top: 2em;
    left: 0;
    color: #fff;
}

.swiper-slide h3 {
    color: #fff;
    font-size: 1.3rem;
    line-height: 1.4;
    margin-bottom: 0.625rem;
    letter-spacing: 0.8px;
    position: relative;
    word-wrap: break-word;
}

@media screen and (min-width: 800px) {
    .swiper-slide h3 {
        font-size: 1.8rem;
    }
}

.swiper-slide p {
    color: #fff;
    line-height: 1.6;
    font-size: 0.8rem;
}

.swiper-slide .slide-content {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -10px);
    width: 90%;
}

.swiper-slide--one {
    background: #0f2027;
    background: linear-gradient(to bottom, #2c536400, #203a4303, #0f2027cc), url("../img/view/Adrian-Black.jpg") no-repeat 50% 50%/cover;
    padding: 200px 0px;
}

.swiper-slide--one h3 {
    font-family: "Courgette", cursive;
    font-weight: 300;
}

.swiper-slide--two {
    background: linear-gradient(to bottom, #2c536400, #203a4303, #0f2027cc), url("../img/view/BOSCONIA_NATURAL1.jpg") no-repeat 50% 50%/cover;
    padding: 200px 0px;
}

.swiper-slide--two h3 {
    font-family: "Noto Serif Vithkuqi", serif;
    font-weight: 300;
}

.swiper-slide--three {
    background: url("../img/view/URBAN-LIGHT-DARK.jpg") no-repeat 50% 50%/cover;
    padding: 200px 0px;
}

.swiper-slide--four {
    background: url("../img/view/Sahara-Noir.jpg") no-repeat 50% 50%/cover;
    padding: 200px 0px;
}

.swiper-slide--five {
    background: url("../img/view/SION-BIANCO.jpg") no-repeat 50% 50%/cover;
    padding: 200px 0px;
}

/* .swiper-slide--six {
  background: linear-gradient(to bottom, #2c536400, #203a4303, #0f2027cc), url("https://cdn.pixabay.com/photo/2022/11/04/23/15/woman-7570834_1280.jpg") no-repeat 50% 50%/cover;padding: 200px 0px;
} */
.swiper-slide--six h3 {
    font-family: "Chonburi", cursive;
    font-weight: 400;
}

.swiper-slide-active {
    display: grid;
    opacity: 1;
}

.swiper-pagination {
    position: relative;
    bottom: -0.313rem;
    text-align: center;
    margin-top: 35px;
    width: auto;
}

.swiper-pagination-bullet {
    border-radius: 0;
    width: 1.5rem;
    height: 0.25rem;
    background: #fff;
}

.swiper-pagination-bullet-active {
    background: #fff;
}

.your-space {
    padding: 100px 0;
}

/* animation */
:root {
    --animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --animation-duration: 1s;
}

@-webkit-keyframes slideInUp {
    0% {
        opacity: 0;
        transform: translateY(25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes slideInUp {
    0% {
        opacity: 0;
        transform: translateY(25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        transform: translateY(-25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        transform: translateY(-25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes slideInleft {
    0% {
        opacity: 0;
        transform: translateX(25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes slideInleft {
    0% {
        opacity: 0;
        transform: translateX(25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes slideInRight {
    0% {
        opacity: 0;
        transform: translateX(-25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes slideInRight {
    0% {
        opacity: 0;
        transform: translateX(-25%);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale(0.75);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale(0.75);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes zoomReverseIn {
    0% {
        opacity: 0;
        transform: scale(1.25);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes zoomReverseIn {
    0% {
        opacity: 0;
        transform: scale(1.25);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@-webkit-keyframes flipInY {
    0% {
        opacity: 0;
        transform: perspective(90vw) rotateY(67.5deg);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes flipInY {
    0% {
        opacity: 0;
        transform: perspective(90vw) rotateY(67.5deg);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

[data-animation] {
    opacity: 0;
    -webkit-animation-timing-function: var(--animation-timing-function);
    animation-timing-function: var(--animation-timing-function);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: var(--animation-duration);
    animation-duration: var(--animation-duration);
    will-change: transform, opacity;
}

.animations-disabled,
.animations-disabled [data-animation] {
    -webkit-animation: none !important;
    animation: none !important;
    opacity: 1 !important;
}

.slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp;
}

.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown;
}

.slideInLeft {
    -webkit-animation-name: slideInleft;
    animation-name: slideInleft;
}

.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight;
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
}

.zoomReverseIn {
    -webkit-animation-name: zoomReverseIn;
    animation-name: zoomReverseIn;
}

.flipInY {
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
}

.flipOutY {
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
    animation-direction: reverse;
}

.animated-link {
    /* Basic Text Styles */
    color: #000;
    text-decoration: none;
    padding-bottom: 2px;
    /* Space between text and border */
    position: relative;
    display: inline-block;
    /* Essential for containing the ::after element */
}

.animated-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0%;
    transform: translateX(0%);
    height: 1px;
    /* Border thickness */
    width: 0px;
    /* **Initial 20px width** */
    background-color: #bd9f80;
    /* Border color */

    /* Animation/Transition Settings */
    transition: width 0.7s ease-out;
    /* Smooth animation over 0.3 seconds */
}

.animated-link:hover::after {

    width: 100%;
    color: #bd9f80;
}

.animated-link:hover {

    color: #bd9f80;

}
.footer-copy{
    display: flex;
    justify-content: space-between;
    padding-top: 25px;
    text-decoration: none;
}
.footer-copy p{
    margin-bottom: 0;
    color: #fff;
}
.footer-copy a{
       text-decoration: none;
    font-weight: 600;
    color: #fff;
    border-bottom: 1px solid;
    text-transform: uppercase;
}
.footer-copy a:hover{
       text-decoration: none;
    font-weight: 600;
    color: #fff;
    border-bottom: 1px solid;
    text-transform: uppercase;
}
.social-icons a{
    color: #bd9f80;
    font-size: 21px;
    background-color: #fff;
    padding: 10px;
    border-radius: 50%;
    margin-left: 5px;
    transition: all .5s ease-in-out;
}
.social-icons a:hover{
    color: #fff;
    font-size: 21px;
    background-color: #bd9f80;
    padding: 10px;
    border-radius: 50%;
    margin-left: 5px;
    transition: all .5s ease-in-out;

}
.footer-copy span{
    color: #bd9f80;
    font-weight: 600;
}


.newsletter-section {
    /* The dark background area */
    display: flex;
    justify-content: center;
    align-items: center;
    
}

/* --- The White Card Container --- */

.newsletter-card {
    background-color: #ffffff;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    padding: 60px 40px;
    max-width: 900px;
    width: 90%;
    text-align: center;
    transform: translateY(-50px);
    position: relative;
    top: 90px;

}

.card-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: #000000;
    margin-bottom: 10px;
}

.card-description {
    font-size: 1.1rem;
    color: #555555;
    line-height: 1.5;
    margin-bottom: 30px;
}

/* --- Form and Input Styling --- */

.signup-form {
    display: flex;
    justify-content: center;
    align-items: center;
    
    padding: 0 50px; /* Optional: adds horizontal padding to prevent the form from being too wide */
}

.email-input {
    /* Style for the email input field */
    padding: 15px 20px;
    border: 1px solid #cccccc;
    border-radius: 30px;
    flex-grow: 1; /* Allows input to take up maximum space */
    font-size: 1rem;
    color: #333;
    outline: none; /* Remove default focus outline */
}

.email-input::placeholder {
    /* Styling the placeholder text */
    color: #aaaaaa;
}

.subscribe-button {
    /* Style for the Subscribe button */
    background-color: #b79a78; /* The distinctive brown/taupe color */
    color: #ffffff;
    font-size: 1rem;
    font-weight: bold;
    padding: 15px 30px;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    flex-shrink: 0; /* Prevents button from shrinking */
    position: absolute;
    right: 91px;
}

.subscribe-button:hover {
    background-color: #a48c6f; /* Slightly darker on hover */
}

/* --- Responsive Adjustments --- */

@media (max-width: 768px) {
    .newsletter-card {
        padding: 40px 20px;
        transform: translateY(-30px);
    }
    .card-title {
        font-size: 2rem;
    }
    .signup-form {
        flex-direction: column; /* Stack input and button on small screens */
        padding: 0;
    }
    .email-input,
    .subscribe-button {
        width: 100%; /* Full width for stacked elements */
        max-width: 400px;
    }
    .card-description br {
        display: none; /* Hide <br> tag for better flow on mobile */
    }
}
.adress li{
    display: flex;
    gap: 10px;
    align-items: center;
    color: #edededba;
}