/* =========================================
   GLOBAL
========================================= */

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

body {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    color: #29231e;
}


button,
input {
    font-family: inherit;
}

/* =========================================
   HOMECLAY - FIXED ANNOUNCEMENT + HEADER
========================================= */

:root {
    --announcement-height: 38px;
    --header-height: 80px;
}

/* Announcement Bar Fixed */
.announcement-bar {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--announcement-height);

    z-index: 10000 !important;
}

/* Main Header Fixed */
header {
    position: fixed !important;
    top: var(--announcement-height);
    left: 0;
    width: 100%;

    z-index: 9999 !important;
}

/* Content ko Header ke neeche se start karna hai */
body {
    padding-top: calc(
        var(--announcement-height) + var(--header-height)
    );
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 768px) {

    :root {
        --announcement-height: 34px;
        --header-height: 65px;
    }

    body {
        padding-top: calc(
            var(--announcement-height) + var(--header-height)
        );
    }
}


/* =========================================
   ANNOUNCEMENT BAR
========================================= */

.announcement-bar {
    width: 100%;
    min-height: 38px;

    padding: 0 35px;

    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;

    background: #a9573c;
    color: #ffffff;

    font-size: 12px;
    font-weight: 600;
}


/* Announcement Items */

.announcement-left,
.announcement-center,
.announcement-right {
    display: flex;
    align-items: center;
    gap: 8px;

    white-space: nowrap;
}

.announcement-center {
    justify-content: center;
}

.announcement-right {
    justify-content: flex-end;
}

.announcement-bar i {
    font-size: 12px;
}


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

.site-header {
    width: 100%;

    background: #fffdf9;

    border-bottom: 1px solid #e9e0d7;

    position: relative;
    z-index: 1000;
}

.header-inner {

    width: 100%;
    max-width: 1500px;

    min-height: 82px;

    margin: 0 auto;

    padding: 0 35px;

    display: flex;
    align-items: center;

    gap: 30px;
}


/* =========================================
   LOGO
========================================= */

.site-logo {

    display: flex;
    align-items: center;

    gap: 11px;

    text-decoration: none;

    color: #211d19;

    flex-shrink: 0;
}

.logo-symbol {

    width: 46px;
    height: 46px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #a9573c;

    color: #ffffff;

    font-size: 19px;
}

.logo-content {

    display: flex;
    flex-direction: column;
}

.logo-name {

    font-family: Georgia, "Times New Roman", serif;

    font-size: 30px;
    line-height: 1;

    font-weight: 800;

    letter-spacing: -1.2px;
}

.logo-content small {

    margin-top: 5px;

    font-size: 7px;

    line-height: 1;

    font-weight: 800;

    letter-spacing: 1.1px;

    color: #8b8178;

    white-space: nowrap;
}


/* =========================================
   DESKTOP NAV
========================================= */

.desktop-nav {

    display: flex;
    align-items: center;

    gap: 28px;

    margin-left: auto;
}

.nav-link {

    position: relative;

    display: flex;
    align-items: center;

    gap: 6px;

    height: 82px;

    text-decoration: none;

    color: #29231e;

    font-size: 14px;

    font-weight: 700;

    white-space: nowrap;

    transition: color 0.3s ease;
}

.nav-link:hover {
    color: #a9573c;
}

.nav-link.active {
    color: #a9573c;
}


/* Active underline */

.nav-link.active::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: 18px;

    width: 100%;
    height: 2px;

    background: #a9573c;
}


/* Dropdown icon */

.dropdown-link i {

    font-size: 8px;

    transition: transform 0.3s ease;
}

.dropdown-link:hover i {
    transform: rotate(180deg);
}


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

.header-actions {

    display: flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;
}


/* =========================================
   DESKTOP SEARCH
========================================= */

.desktop-search {

    width: 205px;
    height: 42px;

    display: flex;
    align-items: center;

    background: #f6f2ec;

    border: 1px solid #e4dcd3;

    border-radius: 7px;

    overflow: hidden;
}

.desktop-search input {

    width: 100%;
    height: 100%;

    padding: 0 12px;

    border: none;
    outline: none;

    background: transparent;

    color: #29231e;

    font-size: 12px;
}

.desktop-search input::placeholder {
    color: #8d837a;
}

.desktop-search button {

    width: 42px;
    height: 100%;

    border: none;

    background: transparent;

    color: #413a34;

    cursor: pointer;
}


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

.header-action {

    position: relative;

    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;

    background: transparent;

    color: #29231e;

    font-size: 18px;

    cursor: pointer;

    transition: color 0.25s ease,
                transform 0.25s ease;
}

.header-action:hover {

    color: #a9573c;

    transform: translateY(-2px);
}


/* Badge */

.badge-parent {
    position: relative;
}

.cart-badge {

    position: absolute;

    top: 1px;
    right: -1px;

    width: 15px;
    height: 15px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #a9573c;

    color: #ffffff;

    font-size: 8px;

    font-weight: 800;
}


/* =========================================
   MOBILE MENU BUTTON
========================================= */

.mobile-menu-btn {

    display: none;

    width: 40px;
    height: 40px;

    border: none;

    background: transparent;

    color: #29231e;

    font-size: 21px;

    cursor: pointer;
}


/* =========================================
   MOBILE MENU
========================================= */

.mobile-menu {

    display: none;

    width: 100%;

    background: #fffdf9;

    border-top: 1px solid #eee5dc;

    padding: 20px;
}


/* Mobile Search */

.mobile-search {

    width: 100%;
    height: 48px;

    display: flex;
    align-items: center;

    background: #f6f2ec;

    border: 1px solid #e2d8ce;

    border-radius: 7px;

    overflow: hidden;

    margin-bottom: 18px;
}

.mobile-search input {

    width: 100%;
    height: 100%;

    padding: 0 14px;

    border: none;
    outline: none;

    background: transparent;

    font-size: 14px;
}

.mobile-search button {

    width: 50px;
    height: 100%;

    border: none;

    background: transparent;

    color: #a9573c;

    font-size: 16px;
}


/* Mobile Navigation */

.mobile-nav {

    display: flex;
    flex-direction: column;
}

.mobile-nav-link {

    min-height: 54px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 5px;

    border-bottom: 1px solid #eee5dc;

    color: #29231e;

    text-decoration: none;

    font-size: 16px;

    font-weight: 700;

    transition: color 0.25s ease;
}

.mobile-nav-link:hover,
.mobile-nav-link.active {

    color: #a9573c;
}

.mobile-nav-link i {

    font-size: 11px;

    color: #a9573c;
}


/* =========================================
   MOBILE EXTRA LINKS
========================================= */

.mobile-extra-links {

    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 10px;

    margin-top: 20px;
}

.mobile-extra-links a {

    min-height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    border: 1px solid #ddd3c9;

    border-radius: 6px;

    color: #29231e;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;
}

.mobile-extra-links i {
    color: #a9573c;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1200px) {

    .header-inner {
        padding: 0 22px;
        gap: 18px;
    }

    .desktop-nav {
        gap: 18px;
    }

    .nav-link {
        font-size: 13px;
    }

    .desktop-search {
        width: 165px;
    }

    .logo-name {
        font-size: 27px;
    }
}


/* =========================================
   TABLET / SMALL LAPTOP
========================================= */

@media (max-width: 1050px) {

    .desktop-nav {
        gap: 13px;
    }

    .nav-link {
        font-size: 12px;
    }

    .desktop-search {
        width: 145px;
    }

    .header-actions {
        gap: 2px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 900px) {

    /* Announcement */

    .announcement-bar {

        min-height: 34px;

        display: flex;

        justify-content: center;

        padding: 0 12px;

        font-size: 10px;

        text-align: center;
    }

    .announcement-left,
    .announcement-right {
        display: none;
    }

    .announcement-center {
        display: flex;
    }


    /* Header */

    .header-inner {

        min-height: 70px;

        padding: 0 16px;

        gap: 8px;
    }


    /* Hide desktop */

    .desktop-nav,
    .desktop-search {
        display: none;
    }


    /* Logo */

    .logo-symbol {

        width: 40px;
        height: 40px;

        font-size: 17px;
    }

    .logo-name {
        font-size: 24px;
    }

    .logo-content small {
        font-size: 5.5px;
        letter-spacing: 0.8px;
    }


    /* Actions */

    .header-actions {

        margin-left: auto;

        gap: 1px;
    }

    .header-action {

        width: 35px;
        height: 35px;

        font-size: 17px;
    }


    /* Mobile menu button */

    .mobile-menu-btn {

        display: flex;

        align-items: center;
        justify-content: center;
    }


    /* Mobile menu */

    .mobile-menu {

        display: block;

        max-height: 0;

        padding-top: 0;
        padding-bottom: 0;

        overflow: hidden;

        opacity: 0;

        transition:
            max-height 0.4s ease,
            opacity 0.3s ease,
            padding 0.3s ease;
    }

    .mobile-menu.open {

        max-height: 650px;

        padding-top: 20px;
        padding-bottom: 25px;

        opacity: 1;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .header-inner {
        padding: 0 11px;
    }

    .logo-symbol {

        width: 37px;
        height: 37px;

        font-size: 16px;
    }

    .logo-name {
        font-size: 21px;
    }

    .logo-content small {
        font-size: 4.8px;
        letter-spacing: 0.65px;
    }

    .header-action {

        width: 31px;
        height: 31px;

        font-size: 16px;
    }

    .mobile-menu-btn {
        width: 34px;
    }

    .cart-badge {

        width: 14px;
        height: 14px;

        font-size: 7px;
    }

    .mobile-menu {
        padding-left: 15px;
        padding-right: 15px;
    }
}


/* =========================================
   VERY SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .logo-name {
        font-size: 19px;
    }

    .logo-content small {
        display: none;
    }

    .header-action:nth-child(1) {
        display: none;
    }

    .announcement-center span {
        font-size: 9px;
    }
}


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

.hero-slider {
    width: 100%;
    /* min-height: 650px; */

    position: relative;

    overflow: hidden;

    background: #f7f1e8;
}


/* =========================================
   SLIDE
========================================= */

.hero-slide {

    position: absolute;

    align-items: stretch;

    inset: 0;

    width: 100%;
    /* min-height: 650px; */

    display: grid;
    grid-template-columns: 46% 54%;

    opacity: 0;
    visibility: hidden;

    transform: translateX(30px);

    transition:
        opacity 0.7s ease,
        transform 0.7s ease,
        visibility 0.7s ease;
}

.hero-slide.active {

    position: relative;

    opacity: 1;
    visibility: visible;

    transform: translateX(0);

}


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

.hero-content {

    min-height: 650px;

    padding: 75px 7% 80px 10%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    background: #f7f1e8;

    position: relative;
    z-index: 2;
}


/* Small Eyebrow */

.hero-eyebrow {

    margin-bottom: 20px;

    color: #a9573c;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 3px;
}


/* =========================================
   MAIN HEADING
========================================= */

.hero-content h1 {

    margin: 0;

    max-width: 650px;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

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

    line-height: 1.02;

    font-weight: 800;

    letter-spacing: -2.5px;
}

.hero-content h1 span {

    display: block;

    font-weight: 800;
}


/* =========================================
   DESCRIPTION
========================================= */

.hero-content > p {

    max-width: 520px;

    margin: 27px 0 32px;

    color: #554c43;

    font-size: 17px;

    line-height: 1.65;

    font-weight: 500;
}


/* =========================================
   BUTTONS
========================================= */

.hero-buttons {

    display: flex;

    align-items: center;

    gap: 13px;

    flex-wrap: wrap;
}

.hero-btn {

    min-height: 54px;

    padding: 0 26px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 11px;

    text-decoration: none;

    font-size: 14px;

    font-weight: 700;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease,
        border-color 0.3s ease;
}


/* Primary */

.hero-btn-primary {

    background: #a9573c;

    border: 1px solid #a9573c;

    color: #ffffff;
}

.hero-btn-primary:hover {

    background: #873f29;

    border-color: #873f29;

    color: #ffffff;

    transform: translateY(-2px);
}


/* Secondary */

.hero-btn-secondary {

    background: transparent;

    border: 1px solid #bdaea0;

    color: #2b251f;
}

.hero-btn-secondary:hover {

    background: #2b251f;

    border-color: #2b251f;

    color: #ffffff;

    transform: translateY(-2px);
}


/* =========================================
   FEATURES
========================================= */

.hero-features {

    display: flex;

    align-items: center;

    gap: 24px;

    margin-top: 48px;
}

.hero-feature {

    display: flex;

    align-items: center;

    gap: 10px;

    padding-right: 24px;

    border-right: 1px solid #d4c6b8;
}

.hero-feature:last-child {

    padding-right: 0;

    border-right: none;
}

.hero-feature > i {

    width: 37px;
    height: 37px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #efe2d4;

    color: #a9573c;

    font-size: 15px;
}

.hero-feature strong,
.hero-feature span {

    display: block;
}

.hero-feature strong {

    color: #2d2722;

    font-size: 12px;

    font-weight: 800;
}

.hero-feature span {

    margin-top: 3px;

    color: #756b62;

    font-size: 11px;

    font-weight: 500;
}


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

.hero-image {

    width: 100%;
    aspect-ratio: 16 / 9;

    /* min-height: 650px; */

    position: relative;

    overflow: hidden;

     background: #f7f1e8;
}

.hero-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(247, 241, 232, 0.08),
            transparent 25%
        );

    pointer-events: none;
}

.hero-image img {

    width: 100%;
    height: 100%;

    display: block;

    /* object-fit: cover; */

     object-fit: contain;

    object-position: center;

    transform: scale(1.01);

    transition: transform 7s ease;
}

.hero-slide.active .hero-image img {

    transform: scale(1.06);
}


/* =========================================
   ARROWS
========================================= */

.hero-arrow {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: none;

    border-radius: 50%;

    background: rgba(35, 29, 24, 0.88);

    color: #ffffff;

    font-size: 15px;

    cursor: pointer;

    z-index: 20;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.hero-arrow:hover {

    background: #a9573c;

    transform:
        translateY(-50%)
        scale(1.08);
}

.hero-prev {
    left: 20px;
}

.hero-next {
    right: 20px;
}


/* =========================================
   PROGRESS
========================================= */

.hero-progress {

    position: absolute;

    left: 10%;

    bottom: 30px;

    z-index: 20;

    display: flex;

    align-items: center;

    gap: 13px;

    color: #3d352e;

    font-size: 13px;

    font-weight: 700;
}

.hero-current {

    color: #a9573c;

    font-size: 15px;
}

.hero-total {

    color: #776c62;
}

.progress-lines {

    display: flex;

    align-items: center;

    gap: 6px;
}

.progress-line {

    width: 35px;

    height: 2px;

    background: #d0c3b7;

    transition:
        width 0.4s ease,
        background 0.4s ease;
}

.progress-line.active {

    width: 60px;

    background: #a9573c;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1200px) {

    .hero-slide {

        grid-template-columns: 48% 52%;
    }

    .hero-content {

        padding-left: 7%;

        padding-right: 5%;
    }

    .hero-content h1 {

        font-size: 56px;

        letter-spacing: -2px;
    }

    .hero-content > p {

        font-size: 16px;
    }

    .hero-features {

        gap: 14px;
    }

    .hero-feature {

        padding-right: 14px;
    }

    .hero-feature > i {

        width: 32px;
        height: 32px;
    }

}
/* apna */
@media (max-width: 900px) {

    .hero-slide {
        display: flex;
        flex-direction: column;
    }

    /* IMAGE FIRST */
    .hero-image {
        order: 1;

        width: 100%;
        aspect-ratio: 16 / 9;
        height: auto;

        position: relative;
    }

    .hero-image img {
        width: 100%;
        height: 100%;

        object-fit: cover;
        object-position: center;
    }

    /* TEXT SECOND */
    .hero-content {
        order: 2;

        width: 100%;
        min-height: auto;

        padding: 45px 20px 50px;

        display: flex;
        flex-direction: column;
        justify-content: center;
    }

}
/* apna */

/* =========================================
   SMALL TABLET
========================================= */

@media (max-width: 900px) {

    .hero-slider {

        min-height: auto;
    }

    .hero-slide {

        grid-template-columns: 1fr;

        min-height: auto;
    }

    .hero-content {

        min-height: auto;

        padding: 0px 30px 45px;
    }

    .hero-content h1 {

        font-size: 52px;

        max-width: 700px;
    }

    .hero-content > p {

        max-width: 600px;
    }

    .hero-image {

        min-height: 480px;

        height: 480px;
    }

    .hero-progress {

        left: 30px;

        bottom: 25px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .hero-content {

        padding: 48px 20px 40px;
    }

    .hero-eyebrow {

        margin-bottom: 15px;

        font-size: 10px;

        letter-spacing: 2px;
    }

    .hero-content h1 {

        font-size: 42px;

        line-height: 1.05;

        letter-spacing: -1.5px;
    }

    .hero-content > p {

        margin: 20px 0 25px;

        font-size: 15px;

        line-height: 1.6;
    }


    /* Buttons */

    .hero-buttons {

        width: 100%;

        flex-direction: column;

        align-items: stretch;
    }

    .hero-btn {

        width: 100%;

        min-height: 52px;
    }


    /* Features */

    .hero-features {

        margin-top: 35px;

        display: grid;

        grid-template-columns: 1fr 1fr;

        gap: 18px 10px;
    }

    .hero-feature {

        padding-right: 5px;

        border-right: none;
    }

    .hero-feature > i {

        width: 34px;
        height: 34px;

        flex-shrink: 0;
    }

    .hero-feature strong {

        font-size: 11px;
    }

    .hero-feature span {

        font-size: 10px;
    }


    /* Image */

    .hero-image {

        min-height: 360px;

        height: 360px;
    }


    /* Arrows */

    .hero-arrow {

        width: 42px;
        height: 42px;

        font-size: 13px;
    }

    .hero-prev {

        left: 12px;
    }

    .hero-next {

        right: 12px;
    }


    /* Progress */

    .hero-progress {

        left: 20px;

        bottom: 20px;
    }

    .progress-line {

        width: 25px;
    }

    .progress-line.active {

        width: 45px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .hero-content h1 {

        font-size: 37px;
    }

    .hero-content {

        padding-left: 17px;
        padding-right: 17px;
    }

    .hero-image {

        height: 320px;

        min-height: 320px;
    }

    .hero-features {

        grid-template-columns: 1fr;
    }

    .hero-progress {

        left: 17px;
    }
}


/* =========================================
   SHOP BY CATEGORY
========================================= */

.category-section {

    width: 100%;

    padding: 85px 0;

    background: #fbf7f1;
}

.category-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   SECTION HEADING
========================================= */

.category-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    margin-bottom: 38px;
}

.section-eyebrow {

    display: block;

    margin-bottom: 10px;

    color: #a9573c;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2.5px;
}

.category-heading h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 4vw, 58px);

    line-height: 1;

    font-weight: 800;

    letter-spacing: -1.5px;
}


/* =========================================
   VIEW ALL
========================================= */

.view-all-category {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding-bottom: 7px;

    color: #29231e;

    text-decoration: none;

    border-bottom: 1px solid #29231e;

    font-size: 13px;

    font-weight: 700;

    white-space: nowrap;

    transition:
        color 0.3s ease,
        border-color 0.3s ease,
        gap 0.3s ease;
}

.view-all-category:hover {

    color: #a9573c;

    border-color: #a9573c;

    gap: 14px;
}

.view-all-category i {

    font-size: 11px;
}


/* =========================================
   CATEGORY GRID
========================================= */

.category-grid {

    display: grid;

    grid-template-columns:
        repeat(6, 1fr);

    gap: 14px;
}


/* =========================================
   CATEGORY CARD
========================================= */

.category-card {

    display: block;

    overflow: hidden;

    text-decoration: none;

    color: #211d19;

    background: #ffffff;

    border-radius: 30px;

    border: 1px solid #eee4d9;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.category-card:hover {

    transform: translateY(-5px);

    box-shadow:
        0 15px 35px rgba(63, 44, 29, 0.10);
}


/* =========================================
   IMAGE
========================================= */

.category-image {

    width: 100%;

    aspect-ratio: 0.82 / 1;

    position: relative;

    overflow: hidden;

    background: #eee5da;
}

.category-image img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.6s ease;
}

.category-card:hover .category-image img {

    transform: scale(1.06);
}


/* Image overlay */

.category-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            transparent 60%,
            rgba(35, 25, 18, 0.16)
        );

    pointer-events: none;
}


/* =========================================
   CARD INFO
========================================= */

.category-info {

    padding: 17px 16px 19px;

    background: #fffdf9;
}

.category-info h3 {

    margin: 0 0 8px;

    color: #29231e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    line-height: 1.1;

    font-weight: 700;
}

.category-info span {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.7px;
}

.category-info span i {

    font-size: 9px;

    transition:
        transform 0.3s ease;
}

.category-card:hover
.category-info span i {

    transform: translateX(4px);
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .category-container {

        padding: 0 25px;
    }

    .category-grid {

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

        gap: 18px;
    }

    .category-image {

        aspect-ratio: 1.25 / 1;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 768px) {

    .category-section {

        padding: 65px 0;
    }

    .category-container {

        padding: 0 20px;
    }

    .category-heading {

        align-items: flex-start;

        flex-direction: column;

        margin-bottom: 28px;

        gap: 18px;
    }

    .category-heading h2 {

        font-size: 42px;
    }

    .view-all-category {

        font-size: 12px;
    }

    .category-grid {

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

        gap: 12px;
    }

    .category-image {

        aspect-ratio: 1 / 1;
    }

    .category-info {

        padding: 14px 13px 16px;
    }

    .category-info h3 {

        font-size: 18px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 480px) {

    .category-section {

        padding: 55px 0;
    }

    .category-container {

        padding: 0 15px;
    }

    .section-eyebrow {

        font-size: 10px;

        letter-spacing: 2px;
    }

    .category-heading h2 {

        font-size: 36px;

        letter-spacing: -1px;
    }

    .category-grid {

        gap: 10px;
    }

    .category-info {

        padding: 13px 11px 15px;
    }

    .category-info h3 {

        font-size: 17px;
    }

    .category-info span {

        font-size: 9px;
    }

}


/* =========================================
   VERY SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .category-container {

        padding: 0 12px;
    }

    .category-grid {

        gap: 8px;
    }

    .category-heading h2 {

        font-size: 32px;
    }

    .category-info h3 {

        font-size: 15px;
    }

    .category-info span {

        font-size: 8px;
    }

}


/* =========================================
   FEATURED COLLECTION
========================================= */

.featured-section {

    width: 100%;

    padding: 100px 0;

    background: #e9ded0;

    overflow: hidden;
}


.featured-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   TOP LABEL
========================================= */

.featured-label {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 35px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2.5px;
}

.featured-line {

    width: 35px;

    height: 1px;

    background: #a9573c;
}


/* =========================================
   MAIN WRAPPER
========================================= */

.featured-wrapper {

    display: grid;

    grid-template-columns: 44% 56%;

    min-height: 620px;

    background: #f8f2e9;
}


/* =========================================
   CONTENT
========================================= */

.featured-content {

    padding: 70px 8% 70px 10%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    background: #f8f2e9;
}


.featured-eyebrow {

    margin-bottom: 17px;

    color: #a9573c;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2.5px;
}


/* Heading */

.featured-content h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(45px, 4.5vw, 67px);

    line-height: 1.02;

    font-weight: 800;

    letter-spacing: -2px;
}

.featured-content h2 span {

    display: block;

    color: #a9573c;

    font-weight: 800;
}


/* Description */

.featured-content > p {

    max-width: 520px;

    margin: 28px 0 35px;

    color: #5d5349;

    font-size: 16px;

    line-height: 1.7;

    font-weight: 500;
}


/* =========================================
   FEATURE POINTS
========================================= */

.featured-points {

    display: flex;

    flex-direction: column;

    gap: 18px;

    margin-bottom: 38px;
}


.featured-point {

    display: flex;

    align-items: flex-start;

    gap: 14px;
}


.point-number {

    min-width: 35px;

    color: #a9573c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 14px;

    font-weight: 700;

    padding-top: 2px;
}


.featured-point strong {

    display: block;

    margin-bottom: 3px;

    color: #29231e;

    font-size: 13px;

    font-weight: 800;
}


.featured-point p {

    margin: 0;

    color: #786d62;

    font-size: 12px;

    line-height: 1.5;

    font-weight: 500;
}


/* =========================================
   BUTTON
========================================= */

.featured-btn {

    width: fit-content;

    min-height: 54px;

    padding: 0 27px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    background: #a9573c;

    border: 1px solid #a9573c;

    color: #ffffff;

    text-decoration: none;

    font-size: 14px;

    font-weight: 700;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        gap 0.3s ease;
}

.featured-btn:hover {

    background: #873f29;

    color: #ffffff;

    transform: translateY(-3px);

    gap: 17px;
}

.featured-btn i {

    font-size: 12px;
}


/* =========================================
   IMAGE
========================================= */

.featured-image {

    position: relative;

    width: 100%;

    min-height: 620px;

    overflow: hidden;

    background: #ddd0c0;
}


.featured-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 1s ease;
}


.featured-wrapper:hover
.featured-image img {

    transform: scale(1.04);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.featured-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(28, 20, 15, 0.55)
        );

    pointer-events: none;
}


/* =========================================
   IMAGE INFO
========================================= */

.featured-image-info {

    position: absolute;

    left: 35px;

    bottom: 35px;

    z-index: 2;

    color: #ffffff;
}


.featured-image-info span {

    display: block;

    margin-bottom: 10px;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 2px;
}


.featured-image-info strong {

    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 28px;

    line-height: 1.15;

    font-weight: 700;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .featured-container {

        padding: 0 25px;
    }

    .featured-wrapper {

        grid-template-columns: 46% 54%;
    }

    .featured-content {

        padding-left: 7%;

        padding-right: 6%;
    }

    .featured-content h2 {

        font-size: 52px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .featured-section {

        padding: 75px 0;
    }

    .featured-wrapper {

        grid-template-columns: 1fr;

        min-height: auto;
    }

    /* Image first */

    .featured-image {

        order: 1;

        min-height: auto;

        height: auto;

        aspect-ratio: 16 / 10;
    }

    /* Content second */

    .featured-content {

        order: 2;

        padding: 55px 35px 60px;
    }

    .featured-content h2 {

        font-size: 50px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .featured-section {

        padding: 60px 0;
    }

    .featured-container {

        padding: 0 15px;
    }


    /* Label */

    .featured-label {

        margin-bottom: 25px;

        font-size: 9px;

        letter-spacing: 1.8px;
    }

    .featured-line {

        width: 25px;
    }


    /* Image */

    .featured-image {

        aspect-ratio: 1 / 1;

        min-height: auto;
    }

    .featured-image-info {

        left: 22px;

        bottom: 22px;
    }

    .featured-image-info span {

        font-size: 8px;

        letter-spacing: 1.5px;
    }

    .featured-image-info strong {

        font-size: 24px;
    }


    /* Content */

    .featured-content {

        padding: 45px 20px 45px;
    }

    .featured-eyebrow {

        font-size: 10px;

        letter-spacing: 2px;
    }

    .featured-content h2 {

        font-size: 39px;

        line-height: 1.05;

        letter-spacing: -1px;
    }

    .featured-content > p {

        margin: 21px 0 28px;

        font-size: 15px;

        line-height: 1.65;
    }


    /* Points */

    .featured-points {

        gap: 17px;

        margin-bottom: 30px;
    }

    .featured-point {

        gap: 11px;
    }

    .featured-point strong {

        font-size: 12px;
    }

    .featured-point p {

        font-size: 11px;
    }


    /* Button */

    .featured-btn {

        width: 100%;

        min-height: 52px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .featured-content h2 {

        font-size: 35px;
    }

    .featured-image-info strong {

        font-size: 21px;
    }

}


/* =========================================
   BEST SELLERS
========================================= */

.best-sellers {

    width: 100%;

    padding: 65px 0 75px;

    background: #f7f1e8;

    overflow: hidden;
}


.best-sellers-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   HEADING
========================================= */

.best-sellers-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    margin-bottom: 25px;
}


.best-sellers-eyebrow {

    display: block;

    margin-bottom: 6px;

    color: #b15a40;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 2.3px;
}


.best-sellers-heading h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 40px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: -1px;
}


/* =========================================
   VIEW ALL
========================================= */

.view-all-products {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 5px;

    color: #29231e;

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    transition:
        color 0.3s ease,
        gap 0.3s ease;
}


.view-all-products:hover {

    color: #a9573c;

    gap: 12px;
}


.view-all-products i {

    font-size: 9px;
}


/* =========================================
   PRODUCT GRID
========================================= */

.best-sellers-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}


/* =========================================
   CARD
========================================= */

.seller-card {

    min-width: 0;

    background: #ffffff;

    border: 1px solid #e8dfd4;

    border-radius: 7px;

    overflow: hidden;

    box-shadow:
        0 2px 10px rgba(65, 45, 30, 0.06);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


.seller-card:hover {

    transform: translateY(-4px);

    box-shadow:
        0 8px 22px rgba(65, 45, 30, 0.11);
}


/* =========================================
   IMAGE
========================================= */

.seller-image {

    position: relative;

    width: 100%;

    aspect-ratio: 1.28 / 1;

    overflow: hidden;

    background: #eee5d9;
}


.seller-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.55s ease;
}


.seller-card:hover
.seller-image img {

    transform: scale(1.045);
}


/* =========================================
   DISCOUNT
========================================= */

.discount-badge {

    position: absolute;

    top: 10px;

    left: 10px;

    z-index: 3;

    padding: 5px 9px;

    border-radius: 5px;

    background: #e63226;

    color: #ffffff;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 0.2px;
}


/* =========================================
   WISHLIST
========================================= */

.seller-wishlist {

    position: absolute;

    top: 9px;

    right: 9px;

    z-index: 3;

    width: 31px;

    height: 31px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #ddd0c4;

    border-radius: 50%;

    background: rgba(255,255,255,0.94);

    color: #9b7564;

    font-size: 13px;

    cursor: pointer;

    transition:
        color 0.3s ease,
        transform 0.3s ease;
}


.seller-wishlist:hover {

    color: #a9573c;

    transform: scale(1.08);
}


/* =========================================
   PRODUCT INFO
========================================= */

.seller-info {

    padding: 10px 10px 11px;
}


/* =========================================
   RATING
========================================= */

.seller-rating {

    display: flex;

    align-items: center;

    gap: 4px;

    margin-bottom: 5px;
}


.stars {

    color: #f1a400;

    font-size: 11px;

    letter-spacing: 1px;

    line-height: 1;
}


.review-count {

    color: #82776e;

    font-size: 9px;

    font-weight: 500;
}


/* =========================================
   PRODUCT TITLE
========================================= */

.seller-info h3 {

    min-height: 31px;

    margin: 0 0 7px;

    color: #29231e;

    font-size: 12px;

    line-height: 1.4;

    font-weight: 700;
}


/* =========================================
   PRICE
========================================= */

.seller-price {

    display: flex;

    align-items: center;

    gap: 7px;

    margin-bottom: 10px;
}


.seller-price strong {

    color: #211d19;

    font-size: 14px;

    font-weight: 800;
}


.seller-price del {

    color: #9b938d;

    font-size: 9px;

    font-weight: 500;
}


/* =========================================
   ADD TO CART
========================================= */

.seller-cart {

    width: 100%;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    border: none;

    border-radius: 4px;

    background: #b45b3e;

    color: #ffffff;

    font-family: inherit;

    font-size: 10px;

    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.3s ease,
        transform 0.2s ease;
}


.seller-cart:hover {

    background: #91452e;
}


.seller-cart:active {

    transform: scale(0.98);
}


.seller-cart i {

    font-size: 10px;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1100px) {

    .best-sellers-container {

        padding: 0 25px;
    }

    .best-sellers-grid {

        gap: 14px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 800px) {

    .best-sellers {

        padding: 55px 0 65px;
    }

    .best-sellers-heading h2 {

        font-size: 36px;
    }

    .best-sellers-grid {

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

        gap: 16px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 500px) {

    .best-sellers {

        padding: 48px 0 55px;
    }

    .best-sellers-container {

        padding: 0 12px;
    }


    .best-sellers-heading {

        align-items: flex-end;

        margin-bottom: 20px;
    }


    .best-sellers-eyebrow {

        font-size: 8px;

        letter-spacing: 1.7px;

        margin-bottom: 5px;
    }


    .best-sellers-heading h2 {

        font-size: 31px;

        letter-spacing: -0.5px;
    }


    .view-all-products {

        font-size: 9px;

        margin-bottom: 3px;
    }


    .best-sellers-grid {

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

        gap: 12px 9px;
    }


    .seller-image {

        aspect-ratio: 1.08 / 1;
    }


    .discount-badge {

        top: 7px;

        left: 7px;

        padding: 4px 6px;

        font-size: 7px;
    }


    .seller-wishlist {

        top: 7px;

        right: 7px;

        width: 28px;

        height: 28px;

        font-size: 11px;
    }


    .seller-info {

        padding: 9px 8px 9px;
    }


    .seller-rating {

        margin-bottom: 4px;

        gap: 3px;
    }


    .stars {

        font-size: 9px;

        letter-spacing: 0.5px;
    }


    .review-count {

        font-size: 7px;
    }


    .seller-info h3 {

        min-height: 34px;

        margin-bottom: 6px;

        font-size: 10px;

        line-height: 1.35;
    }


    .seller-price {

        gap: 5px;

        margin-bottom: 8px;
    }


    .seller-price strong {

        font-size: 12px;
    }


    .seller-price del {

        font-size: 8px;
    }


    .seller-cart {

        height: 32px;

        gap: 5px;

        font-size: 8px;
    }


    .seller-cart i {

        font-size: 8px;
    }

}


/* =========================================
   VERY SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .best-sellers-container {

        padding: 0 10px;
    }


    .best-sellers-heading h2 {

        font-size: 28px;
    }


    .view-all-products {

        font-size: 8px;
    }


    .best-sellers-grid {

        gap: 10px 7px;
    }


    .seller-info h3 {

        font-size: 9px;
    }


    .seller-cart {

        font-size: 7px;
    }

}

/* BEST SELLERS end */

/* =========================================
   OUR STORY
========================================= */

.our-story {

    width: 100%;

    padding: 100px 0;

    background: #f2e9de;

    overflow: hidden;
}


.our-story-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   STORY WRAPPER
========================================= */

.story-wrapper {

    display: grid;

    grid-template-columns: 52% 48%;

    min-height: 650px;

    background: #fffdf9;
}


/* =========================================
   IMAGE
========================================= */

.story-image {

    position: relative;

    min-height: 650px;

    overflow: hidden;

    background: #ded1c2;
}


.story-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 1s ease;
}


.story-wrapper:hover
.story-image img {

    transform: scale(1.04);
}


/* Image overlay */

.story-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(25, 18, 13, 0.48)
        );

    pointer-events: none;
}


/* =========================================
   IMAGE BADGE
========================================= */

.story-image-badge {

    position: absolute;

    left: 35px;

    bottom: 35px;

    z-index: 2;

    width: 145px;

    height: 145px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(255,255,255,0.55);

    border-radius: 50%;

    background: rgba(45, 31, 22, 0.65);

    color: #ffffff;

    text-align: center;

    backdrop-filter: blur(5px);
}


.story-image-badge span {

    margin-bottom: 3px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;
}


.story-image-badge strong {

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    font-weight: 700;

    letter-spacing: 1px;
}


.story-image-badge small {

    margin-top: 5px;

    font-size: 8px;

    opacity: 0.85;
}


/* =========================================
   CONTENT
========================================= */

.story-content {

    padding: 70px 10% 70px 9%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    background: #fffdf9;
}


.story-eyebrow {

    display: block;

    margin-bottom: 17px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2.7px;
}


/* =========================================
   HEADING
========================================= */

.story-content h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(45px, 4.2vw, 65px);

    line-height: 1.03;

    font-weight: 800;

    letter-spacing: -2px;
}


.story-content h2 span {

    display: block;

    color: #a9573c;

    font-weight: 800;
}


/* =========================================
   INTRO
========================================= */

.story-intro {

    max-width: 570px;

    margin: 27px 0 36px;

    color: #62584f;

    font-size: 16px;

    line-height: 1.75;

    font-weight: 500;
}


/* =========================================
   STORY VALUES
========================================= */

.story-values {

    display: flex;

    flex-direction: column;

    gap: 0;

    margin-bottom: 38px;
}


.story-value {

    display: flex;

    align-items: flex-start;

    gap: 17px;

    padding: 16px 0;

    border-top: 1px solid #e5dbd0;
}


.story-value:last-child {

    border-bottom: 1px solid #e5dbd0;
}


.story-number {

    min-width: 30px;

    padding-top: 2px;

    color: #a9573c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;

    font-weight: 700;
}


.story-value h3 {

    margin: 0 0 5px;

    color: #29231e;

    font-size: 14px;

    font-weight: 800;
}


.story-value p {

    max-width: 440px;

    margin: 0;

    color: #786d63;

    font-size: 12px;

    line-height: 1.55;

    font-weight: 500;
}


/* =========================================
   BUTTON
========================================= */

.story-btn {

    width: fit-content;

    min-height: 53px;

    padding: 0 27px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 11px;

    background: #a9573c;

    border: 1px solid #a9573c;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        gap 0.3s ease;
}


.story-btn:hover {

    background: #873f29;

    color: #ffffff;

    transform: translateY(-3px);

    gap: 16px;
}


.story-btn i {

    font-size: 10px;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .our-story-container {

        padding: 0 25px;
    }

    .story-wrapper {

        grid-template-columns: 50% 50%;
    }

    .story-content {

        padding-left: 7%;

        padding-right: 7%;
    }

    .story-content h2 {

        font-size: 52px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .our-story {

        padding: 75px 0;
    }

    .story-wrapper {

        grid-template-columns: 1fr;

        min-height: auto;
    }


    /* IMAGE FIRST */

    .story-image {

        min-height: auto;

        height: auto;

        aspect-ratio: 16 / 10;

        order: 1;
    }


    /* CONTENT SECOND */

    .story-content {

        order: 2;

        padding: 55px 35px 60px;
    }

    .story-content h2 {

        font-size: 50px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .our-story {

        padding: 60px 0;
    }

    .our-story-container {

        padding: 0 15px;
    }


    /* IMAGE */

    .story-image {

        aspect-ratio: 1 / 1;
    }


    .story-image-badge {

        left: 20px;

        bottom: 20px;

        width: 110px;

        height: 110px;
    }


    .story-image-badge strong {

        font-size: 16px;
    }


    .story-image-badge small {

        font-size: 7px;
    }


    /* CONTENT */

    .story-content {

        padding: 45px 20px 45px;
    }


    .story-eyebrow {

        font-size: 9px;

        letter-spacing: 2px;
    }


    .story-content h2 {

        font-size: 39px;

        line-height: 1.05;

        letter-spacing: -1px;
    }


    .story-intro {

        margin: 20px 0 28px;

        font-size: 14px;

        line-height: 1.7;
    }


    /* VALUES */

    .story-value {

        gap: 12px;

        padding: 15px 0;
    }

    .story-number {

        min-width: 25px;

        font-size: 11px;
    }

    .story-value h3 {

        font-size: 12px;

        margin-bottom: 4px;
    }

    .story-value p {

        font-size: 10px;

        line-height: 1.5;
    }


    /* BUTTON */

    .story-btn {

        width: 100%;

        min-height: 52px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .story-content h2 {

        font-size: 35px;
    }

    .story-image-badge {

        width: 95px;

        height: 95px;
    }

    .story-image-badge strong {

        font-size: 14px;
    }

}

/* =========================================
   INSTAGRAM SECTION
========================================= */

.instagram-section {

    width: 100%;

    padding: 90px 0 100px;

    background: #fffdf9;

    overflow: hidden;
}


.instagram-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   HEADING
========================================= */

.instagram-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    margin-bottom: 38px;
}


.instagram-heading-left {

    max-width: 650px;
}


.instagram-eyebrow {

    display: block;

    margin-bottom: 10px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2.5px;
}


.instagram-heading h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(43px, 4vw, 58px);

    line-height: 1;

    font-weight: 800;

    letter-spacing: -1.8px;
}


.instagram-heading p {

    margin: 14px 0 0;

    color: #746a61;

    font-size: 14px;

    line-height: 1.6;

    font-weight: 500;
}


/* =========================================
   FOLLOW BUTTON
========================================= */

.instagram-follow {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding-bottom: 8px;

    color: #29231e;

    border-bottom: 1px solid #29231e;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    white-space: nowrap;

    transition:
        color 0.3s ease,
        border-color 0.3s ease,
        gap 0.3s ease;
}


.instagram-follow:hover {

    color: #a9573c;

    border-color: #a9573c;

    gap: 13px;
}


.instagram-follow
.fa-instagram {

    font-size: 16px;
}


.instagram-follow
.fa-arrow-right {

    font-size: 9px;
}


/* =========================================
   INSTAGRAM GRID
========================================= */

.instagram-grid {

    display: grid;

    grid-template-columns:
        repeat(6, 1fr);

    gap: 12px;
}


/* =========================================
   INSTAGRAM CARD
========================================= */

.instagram-card {

    position: relative;

    display: block;

    width: 100%;

    aspect-ratio: 1 / 1;

    overflow: hidden;

    background: #eee5da;

    text-decoration: none;
}


.instagram-card img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.6s ease;
}


.instagram-card:hover img {

    transform: scale(1.07);
}


/* =========================================
   OVERLAY
========================================= */

.instagram-overlay {

    position: absolute;

    inset: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(42, 29, 21, 0.45);

    color: #ffffff;

    font-size: 25px;

    opacity: 0;

    transition:
        opacity 0.3s ease;
}


.instagram-card:hover
.instagram-overlay {

    opacity: 1;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .instagram-container {

        padding: 0 25px;
    }

    .instagram-grid {

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

        gap: 14px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 768px) {

    .instagram-section {

        padding: 70px 0 75px;
    }

    .instagram-container {

        padding: 0 20px;
    }

    .instagram-heading {

        align-items: flex-start;

        flex-direction: column;

        margin-bottom: 30px;

        gap: 18px;
    }

    .instagram-heading h2 {

        font-size: 42px;
    }

    .instagram-heading p {

        font-size: 13px;
    }

    .instagram-grid {

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

        gap: 10px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 480px) {

    .instagram-section {

        padding: 58px 0 65px;
    }

    .instagram-container {

        padding: 0 15px;
    }

    .instagram-eyebrow {

        font-size: 9px;

        letter-spacing: 2px;
    }

    .instagram-heading h2 {

        font-size: 36px;

        letter-spacing: -1px;
    }

    .instagram-heading p {

        margin-top: 11px;

        font-size: 12px;
    }

    .instagram-follow {

        font-size: 11px;
    }

    .instagram-grid {

        gap: 8px;
    }

    .instagram-overlay {

        font-size: 19px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .instagram-container {

        padding: 0 12px;
    }

    .instagram-heading h2 {

        font-size: 32px;
    }

    .instagram-grid {

        gap: 6px;
    }

}


/* =========================================
   JOIN OUR COMMUNITY
========================================= */

.community-section {

    width: 100%;

    padding: 38px 0;

    background: #a9573c;

    color: #ffffff;

    overflow: hidden;
}


.community-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;

    display: grid;

    grid-template-columns: 70px 1fr auto;

    align-items: center;

    gap: 28px;
}


/* =========================================
   ICON
========================================= */

.community-icon {

    width: 58px;

    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(255,255,255,0.55);

    border-radius: 50%;

    color: #ffffff;

    font-size: 22px;

    transform: rotate(-12deg);
}


/* =========================================
   CONTENT
========================================= */

.community-content {

    min-width: 0;
}


.community-eyebrow {

    display: block;

    margin-bottom: 5px;

    color: #f5d9cb;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 2px;
}


.community-content h2 {

    margin: 0 0 5px;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 29px;

    line-height: 1.1;

    font-weight: 700;

    letter-spacing: -0.5px;
}


.community-content p {

    margin: 0;

    color: #f8e4db;

    font-size: 12px;

    line-height: 1.5;

    font-weight: 500;
}


/* =========================================
   FORM
========================================= */

.community-form {

    display: flex;

    align-items: stretch;

    width: 470px;

    max-width: 100%;

    height: 50px;
}


.community-input {

    flex: 1;

    min-width: 0;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 0 15px;

    background: #fffdf9;

    border: 1px solid #fffdf9;

    border-radius: 5px 0 0 5px;
}


.community-input i {

    flex-shrink: 0;

    color: #806f63;

    font-size: 13px;
}


.community-input input {

    width: 100%;

    min-width: 0;

    padding: 0;

    border: none;

    outline: none;

    background: transparent;

    color: #29231e;

    font-family: inherit;

    font-size: 12px;

    font-weight: 500;
}


.community-input input::placeholder {

    color: #8b8179;

    opacity: 1;
}


/* =========================================
   BUTTON
========================================= */

.community-form button {

    min-width: 135px;

    padding: 0 20px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    border: 1px solid #3b2921;

    border-left: none;

    border-radius: 0 5px 5px 0;

    background: #3b2921;

    color: #ffffff;

    font-family: inherit;

    font-size: 11px;

    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.3s ease,
        gap 0.3s ease;
}


.community-form button:hover {

    background: #211712;

    gap: 13px;
}


.community-form button i {

    font-size: 9px;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .community-container {

        padding: 0 25px;

        grid-template-columns: 60px 1fr auto;

        gap: 20px;
    }

    .community-form {

        width: 410px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .community-section {

        padding: 45px 0;
    }

    .community-container {

        grid-template-columns: 55px 1fr;

        gap: 20px;
    }

    .community-form {

        grid-column: 2;

        width: 100%;

        max-width: 600px;

        margin-top: 5px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .community-section {

        padding: 45px 0;
    }

    .community-container {

        padding: 0 18px;

        display: flex;

        flex-direction: column;

        align-items: flex-start;

        gap: 18px;
    }


    /* Icon */

    .community-icon {

        width: 50px;

        height: 50px;

        font-size: 18px;
    }


    /* Content */

    .community-eyebrow {

        font-size: 8px;

        letter-spacing: 1.8px;
    }

    .community-content h2 {

        font-size: 28px;
    }

    .community-content p {

        max-width: 330px;

        font-size: 12px;

        line-height: 1.6;
    }


    /* Form */

    .community-form {

        width: 100%;

        height: auto;

        display: flex;

        flex-direction: column;

        gap: 9px;

        margin-top: 3px;
    }


    .community-input {

        width: 100%;

        height: 50px;

        border-radius: 5px;
    }


    .community-form button {

        width: 100%;

        height: 50px;

        border: 1px solid #3b2921;

        border-radius: 5px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .community-container {

        padding: 0 15px;
    }

    .community-content h2 {

        font-size: 25px;
    }

    .community-content p {

        font-size: 11px;
    }

}

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

.site-footer {

    width: 100%;

    background: #f4eee6;

    color: #29231e;

    border-top: 1px solid #e4d9ce;
}


.footer-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


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

.footer-main {

    display: grid;

    grid-template-columns:
        2.2fr
        1fr
        1.15fr
        1fr
        1fr;

    gap: 50px;

    padding: 70px 0 65px;
}


/* =========================================
   BRAND
========================================= */

/* APna footer add  */

/* apna csss footer end */
.footer-brand {

    max-width: 300px;
}


.footer-logo {

    display: inline-block;

    margin-bottom: 18px;
}


.footer-logo img {

    width: 165px;

    height: auto;

    display: block;
}


.footer-brand > p {

    max-width: 285px;

    margin: 0;

    color: #756b62;

    font-size: 12px;

    line-height: 1.7;

    font-weight: 500;
}


/* =========================================
   SOCIAL
========================================= */

.footer-social {

    display: flex;

    align-items: center;

    gap: 9px;

    margin-top: 24px;
}


.footer-social a {

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #d8ccc0;

    border-radius: 50%;

    color: #29231e;

    text-decoration: none;

    font-size: 13px;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}


.footer-social a:hover {

    background: #a9573c;

    border-color: #a9573c;

    color: #ffffff;

    transform: translateY(-3px);
}


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

.footer-column h3 {

    /* margin: 3px 0 21px; */
    margin-bottom: 22px;

    color: #a9573c;

    font-size: 17px;

    font-weight: 800;

    letter-spacing: 0.5px;
}


.footer-column ul {

    margin: 0;

    padding: 0;

    list-style: none;
}


.footer-column li {

    margin-bottom: 14px;
}


.footer-column a {

    color: #514940;

    text-decoration: none;

    font-size: 13px;

    font-weight: 500;

    line-height: 1.5;

    transition:
        color 0.25s ease,
        padding-left 0.25s ease;
}


.footer-column a:hover {

    color: #a9573c;

    padding-left: 4px;
}


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

.footer-bottom {

    min-height: 65px;

    display: grid;

    grid-template-columns:
        1fr auto 1fr;

    align-items: center;

    gap: 25px;

    border-top: 1px solid #ded3c8;
}


.footer-bottom p {

    margin: 0;

    color: #82786f;

    font-size: 10px;

    font-weight: 500;
}


.footer-bottom-links {

    display: flex;

    align-items: center;

    gap: 20px;
}


.footer-bottom-links a {

    color: #82786f;

    text-decoration: none;

    font-size: 10px;

    font-weight: 500;

    transition:
        color 0.25s ease;
}


.footer-bottom-links a:hover {

    color: #a9573c;
}


.footer-made {

    justify-self: end;

    color: #82786f;

    font-size: 10px;

    font-weight: 500;
}


.footer-made i {

    margin: 0 3px;

    color: #a9573c;

    font-size: 9px;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .footer-container {

        padding: 0 25px;
    }

    .footer-main {

        gap: 30px;
    }

    .footer-logo img {

        width: 150px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .footer-main {

        grid-template-columns:
            2fr 1fr 1fr;

        gap: 45px 30px;

        padding: 60px 0 50px;
    }


    .footer-brand {

        grid-row: span 2;
    }


    .footer-bottom {

        grid-template-columns: 1fr 1fr;

        padding: 20px 0;

        gap: 15px;
    }


    .footer-bottom-links {

        justify-self: end;

        flex-wrap: wrap;

        justify-content: flex-end;
    }


    .footer-made {

        grid-column: 1 / -1;

        justify-self: start;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .footer-container {

        padding: 0 20px;
    }


    .footer-main {

        grid-template-columns: 1fr 1fr;

        gap: 35px 25px;

        padding: 50px 0 40px;
    }


    .footer-brand {

        grid-column: 1 / -1;

        grid-row: auto;

        max-width: 100%;

        padding-bottom: 10px;

        border-bottom: 1px solid #ded3c8;
    }


    .footer-logo img {

        width: 145px;
    }


    .footer-brand > p {

        color: #514940;

        max-width: 340px;

        font-size: 13px;

        line-height: 1.75;
        font-weight: 500;
    }


    .footer-social {

        margin-top: 18px;
    }


    .footer-column h3 {

        margin-bottom: 17px;

        font-size: 14px;
    }


    .footer-column li {

        margin-bottom: 10px;
    }


    .footer-column a {

        font-size: 10px;
    }


    /* Bottom */

    .footer-bottom {

        display: flex;

        flex-direction: column;

        align-items: flex-start;

        gap: 14px;

        padding: 22px 0 28px;
    }


    .footer-bottom-links {

        width: 100%;

        justify-content: flex-start;

        gap: 12px 18px;

        flex-wrap: wrap;
    }


    .footer-made {

        justify-self: auto;

        font-size: 9px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .footer-container {

        padding: 0 15px;
    }


    .footer-main {

        gap: 30px 18px;
    }


    .footer-logo img {

        width: 135px;
    }


    .footer-brand > p {

        font-size: 10px;
    }


    .footer-column a {

        font-size: 9px;
    }


    .footer-bottom-links a {

        font-size: 9px;
    }

}


/* -------------------------------------------------------------------- Shop PAGE  *-------------------------------------------------------------------------------------/

/* =========================================
   SHOP HERO BANNER
========================================= */

.shop-hero-banner {

    position: relative;

    width: 100%;

    min-height: 590px;

    overflow: hidden;

    background: #eee1d2;
}


/* =========================================
   BACKGROUND
========================================= */

.shop-hero-bg {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    z-index: 1;
}


.shop-hero-bg img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

}


/* =========================================
   OVERLAY
========================================= */

.shop-hero-overlay {

    position: absolute;

    inset: 0;

    z-index: 2;

    background:
        linear-gradient(
            90deg,
            rgba(250, 241, 229, 0.96) 0%,
            rgba(250, 241, 229, 0.90) 27%,
            rgba(250, 241, 229, 0.52) 47%,
            rgba(250, 241, 229, 0.05) 72%,
            rgba(250, 241, 229, 0) 100%
        );
}


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

.shop-hero-inner {

    position: relative;

    z-index: 3;

    width: 100%;

    max-width: 1450px;

    min-height: 590px;

    margin: 0 auto;

    padding: 60px 35px;

    display: flex;

    align-items: center;
}


/* =========================================
   CONTENT
========================================= */

.shop-hero-content {

    width: 52%;

    max-width: 650px;
}


/* =========================================
   EYEBROW
========================================= */

.shop-hero-eyebrow {

    display: block;

    margin-bottom: 17px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 3px;
}


/* =========================================
   HEADING
========================================= */

.shop-hero-content h1 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

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

    line-height: 0.98;

    font-weight: 700;

    letter-spacing: -3px;
}


.shop-hero-content h1 span {

    display: block;

    color: #a9573c;
}


/* =========================================
   DESCRIPTION
========================================= */

.shop-hero-content p {

    max-width: 540px;

    margin: 25px 0 25px;

    color: #403831;

    font-size: 15px;

    line-height: 1.65;

    font-weight: 500;
}


/* =========================================
   BUTTON
========================================= */

.shop-hero-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    min-width: 205px;

    height: 52px;

    padding: 0 25px;

    background: #b45b3e;

    color: #ffffff;

    text-decoration: none;

    font-size: 12px;

    font-weight: 700;

    border-radius: 3px;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        gap 0.3s ease;
}


.shop-hero-btn:hover {

    background: #91462f;

    transform: translateY(-2px);

    gap: 16px;
}


.shop-hero-btn i {

    font-size: 10px;
}


/* =========================================
   BREADCRUMB
========================================= */

.shop-hero-breadcrumb {

    display: flex;

    align-items: center;

    gap: 11px;

    margin-top: 23px;
}


.shop-hero-breadcrumb a,
.shop-hero-breadcrumb span {

    font-size: 11px;

    font-weight: 600;

    text-decoration: none;
}


.shop-hero-breadcrumb a {

    color: #655a51;
}


.shop-hero-breadcrumb span {

    color: #a9573c;
}


.shop-hero-breadcrumb i {

    color: #9b8e83;

    font-size: 7px;
}


/* =========================================
   FEATURES
========================================= */

.shop-hero-features {

    display: flex;

    align-items: center;

    gap: 22px;

    margin-top: 32px;
}


.shop-hero-feature {

    display: flex;

    align-items: center;

    gap: 10px;
}


.feature-icon {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border-radius: 50%;

    background: rgba(255,255,255,0.58);

    color: #b45b3e;

    font-size: 14px;

    border: 1px solid rgba(169,87,60,0.18);
}


.shop-hero-feature strong {

    display: block;

    color: #29231e;

    font-size: 12px;

    font-weight: 800;

    line-height: 1.2;
}


.shop-hero-feature small {

    display: block;

    margin-top: 3px;

    color: #71665d;

    font-size: 10px;

    font-weight: 500;
}


.feature-divider {

    width: 1px;

    height: 42px;

    background: rgba(100,75,60,0.25);
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .shop-hero-banner,
    .shop-hero-inner {

        min-height: 540px;
    }

    .shop-hero-inner {

        padding-left: 45px;

        padding-right: 45px;
    }

    .shop-hero-content {

        width: 56%;
    }

    .shop-hero-content h1 {

        font-size: 62px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .shop-hero-banner,
    .shop-hero-inner {

        min-height: 500px;
    }

    .shop-hero-inner {

        padding: 45px 30px;
    }

    .shop-hero-content {

        width: 62%;
    }

    .shop-hero-content h1 {

        font-size: 50px;

        letter-spacing: -2px;
    }

    .shop-hero-content p {

        max-width: 450px;

        font-size: 13px;
    }

    .shop-hero-overlay {

        background:
            linear-gradient(
                90deg,
                rgba(250,241,229,0.97) 0%,
                rgba(250,241,229,0.88) 42%,
                rgba(250,241,229,0.35) 70%,
                rgba(250,241,229,0.05) 100%
            );
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .shop-hero-banner {

        min-height: 650px;

        display: flex;

        align-items: flex-end;
    }


    .shop-hero-bg {

        height: 100%;
    }


    .shop-hero-bg img {

        object-position: 62% center;
    }


    .shop-hero-overlay {

        background:
            linear-gradient(
                180deg,
                rgba(250,241,229,0.05) 0%,
                rgba(250,241,229,0.12) 25%,
                rgba(250,241,229,0.72) 48%,
                rgba(250,241,229,0.97) 68%,
                #faf1e5 100%
            );
    }


    .shop-hero-inner {

        min-height: 650px;

        width: 100%;

        padding: 0 20px 38px;

        align-items: flex-end;
    }


    .shop-hero-content {

        width: 100%;

        max-width: none;

      
    }


    .shop-hero-eyebrow {

        margin-bottom: 10px;

        font-size: 9px;

        letter-spacing: 2.2px;
    }


    .shop-hero-content h1 {

        font-size: 39px;

        line-height: 1;

        letter-spacing: -1px;
    }


    .shop-hero-content p {

        margin: 17px 0 18px;

        max-width: 100%;

        font-size: 12px;

        line-height: 1.6;
    }


    .shop-hero-btn {

        min-width: 180px;

        height: 47px;

        font-size: 11px;
    }


    .shop-hero-breadcrumb {

        margin-top: 17px;
    }


    .shop-hero-features {

        gap: 12px;

        margin-top: 22px;
    }


    .shop-hero-feature {

        gap: 7px;
    }


    .feature-icon {

        width: 34px;

        height: 34px;

        font-size: 11px;
    }


    .shop-hero-feature strong {

        font-size: 9px;
    }


    .shop-hero-feature small {

        font-size: 8px;
    }


    .feature-divider {

        height: 34px;
    }

}

/* 
@media (max-width: 600px) {

    .shop-hero-banner {
        position: relative;
        width: 100%;
        min-height: 0;
        height: auto;
        overflow: hidden;
        background: #faf1e5;
    }

    .shop-hero-bg {
        position: relative;
        inset: auto;
        width: 100%;
        height: auto;
        z-index: 1;
    }

    .shop-hero-bg img {
        width: 100%;
        height: auto;
        min-height: 0;

        display: block;

        object-fit: contain;
        object-position: center;
    }


    .shop-hero-overlay {
        position: absolute;
        inset: 0;

        z-index: 2;

        background:
            linear-gradient(
                to bottom,
                rgba(250, 241, 229, 0) 15%,
                rgba(250, 241, 229, 0.05) 30%,
                rgba(250, 241, 229, 0.55) 55%,
                rgba(250, 241, 229, 0.94) 75%,
                #faf1e5 100%
            );
    }


    .shop-hero-inner {
        position: absolute;

        inset: 0;

        z-index: 3;

        width: 100%;
        min-height: 0;
        height: 100%;

        padding: 0 20px 25px;

        display: flex;
        align-items: flex-end;
    }


    .shop-hero-content {
        width: 100%;
        max-width: none;
    }


    .shop-hero-eyebrow {
        margin-bottom: 8px;

        font-size: 8px;
        letter-spacing: 2px;
    }


    .shop-hero-content h1 {
        font-size: 37px;
        line-height: 0.98;

        letter-spacing: -1px;
    }


    .shop-hero-content p {
        max-width: 100%;

        margin: 15px 0 17px;

        font-size: 11px;
        line-height: 1.55;
    }


    .shop-hero-btn {
        min-width: 150px;
        height: 42px;

        padding: 0 18px;

        font-size: 10px;
    }

    .shop-hero-breadcrumb {
        display: none;
    }



    .shop-hero-features {
        gap: 8px;

        margin-top: 18px;
    }


    .shop-hero-feature {
        gap: 5px;
    }


    .feature-icon {
        width: 31px;
        height: 31px;

        font-size: 10px;
    }


    .shop-hero-feature strong {
        font-size: 8px;
    }


    .shop-hero-feature small {
        font-size: 7px;
    }


    .feature-divider {
        height: 30px;
    }
} */

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .shop-hero-banner,
    .shop-hero-inner {

        min-height: 610px;
    }


    .shop-hero-inner {

        padding-left: 15px;

        padding-right: 15px;

        padding-bottom: 28px;
    }


    .shop-hero-content h1 {

        font-size: 34px;
    }


    .shop-hero-content p {

        font-size: 11px;
    }


    .shop-hero-features {

        gap: 8px;
    }


    .feature-divider {

        display: none;
    }


    .feature-icon {

        width: 30px;

        height: 30px;
    }

}


/* Second section  */

/* =========================================
   SHOP CATEGORIES
========================================= */

.shop-categories {

    width: 100%;

    padding: 25px 0 30px;

    background: #fffaf4;

    border-bottom: 1px solid #eadfd3;

    overflow: hidden;
}


.shop-categories-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


/* =========================================
   CATEGORY SCROLL
========================================= */

.shop-category-scroll {

    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 20px;

    width: 100%;
}


/* =========================================
   CATEGORY ITEM
========================================= */

.shop-category {

    position: relative;

    flex: 1;

    min-width: 90px;

    max-width: 125px;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 9px;

    padding-bottom: 13px;

    color: #29231e;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    text-align: center;

    transition:
        color 0.3s ease;
}


/* =========================================
   CATEGORY IMAGE
========================================= */

.shop-category-image {

    width: 76px;

    height: 76px;

    padding: 4px;

    border-radius: 50%;

    background: #eee4d8;

    border: 1px solid transparent;

    transition:
        border-color 0.3s ease,
        transform 0.3s ease,
        background 0.3s ease;
}


.shop-category-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 50%;
}


/* =========================================
   HOVER
========================================= */

.shop-category:hover {

    color: #a9573c;
}


.shop-category:hover
.shop-category-image {

    transform: translateY(-3px);

    border-color: #c9846c;

    background: #f3ded3;
}


/* =========================================
   ACTIVE
========================================= */

.shop-category.active {

    color: #a9573c;

    font-weight: 800;
}


.shop-category.active
.shop-category-image {

    border: 1.5px solid #a9573c;

    background: #f3ded3;
}


.shop-category.active::after {

    content: "";

    position: absolute;

    bottom: 0;

    left: 50%;

    width: 35px;

    height: 2px;

    background: #a9573c;

    transform: translateX(-50%);
}


/* =========================================
   LAPTOP
========================================= */

@media (max-width: 1200px) {

    .shop-categories-container {

        padding: 0 25px;
    }

    .shop-category-scroll {

        gap: 14px;
    }

    .shop-category-image {

        width: 70px;

        height: 70px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 850px) {

    .shop-categories {

        padding: 22px 0 27px;
    }

    .shop-category-scroll {

        justify-content: flex-start;

        gap: 20px;

        overflow-x: auto;

        padding-bottom: 5px;

        scrollbar-width: none;
    }

    .shop-category-scroll::-webkit-scrollbar {

        display: none;
    }

    .shop-category {

        flex: 0 0 85px;

        min-width: 85px;
    }

    .shop-category-image {

        width: 68px;

        height: 68px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .shop-categories {

        padding: 18px 0 23px;
    }

    .shop-categories-container {

        padding: 0 15px;
    }

    .shop-category-scroll {

        gap: 16px;

        margin-right: -15px;

        padding-right: 15px;
    }

    .shop-category {

        flex: 0 0 72px;

        min-width: 72px;

        gap: 7px;

        padding-bottom: 10px;

        font-size: 9px;

        line-height: 1.25;
    }

    .shop-category-image {

        width: 62px;

        height: 62px;

        padding: 3px;
    }

    .shop-category.active::after {

        width: 28px;

        height: 2px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .shop-categories-container {

        padding: 0 12px;
    }

    .shop-category-scroll {

        gap: 13px;

        margin-right: -12px;

        padding-right: 12px;
    }

    .shop-category {

        flex-basis: 68px;

        min-width: 68px;

        font-size: 8px;
    }

    .shop-category-image {

        width: 58px;

        height: 58px;
    }

}

/* second section end */

/* Third section */

/* =========================================
   SHOP PRODUCTS
========================================= */

.shop-products {

    width: 100%;

    padding: 65px 0 80px;

    background: #f8f2ea;
}


.shop-products-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 0 35px;
}


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

.shop-products-header {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    margin-bottom: 32px;

    padding-bottom: 20px;

    border-bottom: 1px solid #e4d9ce;
}


.shop-products-eyebrow {

    display: block;

    margin-bottom: 7px;

    color: #a9573c;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 2.2px;
}


.shop-products-header h2 {

    margin: 0;

    color: #211d19;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: -1.3px;
}


/* =========================================
   ACTIONS
========================================= */

.shop-products-actions {

    display: flex;

    align-items: center;

    gap: 18px;
}


.product-count {

    color: #756a61;

    font-size: 11px;

    font-weight: 600;
}


.sort-box {

    display: flex;

    align-items: center;

    gap: 7px;

    padding: 9px 12px;

    background: #ffffff;

    border: 1px solid #ded3c8;

    border-radius: 4px;
}


.sort-box label {

    color: #756a61;

    font-size: 10px;

    font-weight: 600;
}


.sort-box select {

    border: none;

    outline: none;

    background: transparent;

    color: #29231e;

    font-family: inherit;

    font-size: 10px;

    font-weight: 700;

    cursor: pointer;
}


.mobile-filter-btn {

    display: none;
}


/* =========================================
   LAYOUT
========================================= */

.shop-products-layout {

    display: grid;

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

    gap: 30px;

    align-items: start;
}


/* =========================================
   FILTER SIDEBAR
========================================= */

.shop-filter {

    background: #ffffff;

    border: 1px solid #e5dbd0;

    border-radius: 6px;

    padding: 22px 18px;

    position: sticky;

    top: 20px;
}


.filter-header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 17px;

    border-bottom: 1px solid #e6ddd4;
}


.filter-header h3 {

    margin: 0;

    color: #29231e;

    font-size: 14px;

    font-weight: 800;
}


.clear-filters {

    padding: 0;

    border: none;

    background: transparent;

    color: #a9573c;

    font-family: inherit;

    font-size: 15px;

    font-weight: 700;

    cursor: pointer;
}


/* =========================================
   FILTER GROUP
========================================= */

.filter-group {

    padding: 19px 0;

    border-bottom: 1px solid #ebe2d9;
}


.filter-group:last-child {

    border-bottom: none;

    padding-bottom: 5px;
}


.filter-title {

    width: 100%;

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding: 0;

    border: none;

    background: transparent;

    color: #29231e;

    font-family: inherit;

    font-size: 11px;

    font-weight: 800;

    cursor: pointer;
}


.filter-title i {

    color: #867a70;

    font-size: 8px;
}


.filter-content {

    display: flex;

    flex-direction: column;

    gap: 12px;

    margin-top: 15px;
}


/* =========================================
   CHECKBOX
========================================= */

.filter-check {

    display: flex;

    align-items: center;

    gap: 8px;

    color: #625850;

    font-size: 18px;

    font-weight: 500;

    cursor: pointer;
}


.filter-check input {

    width: 13px;

    height: 13px;

    accent-color: #a9573c;

    cursor: pointer;
}


.filter-check small {

    margin-left: auto;

    color: #a19891;

    font-size: 8px;
}


/* =========================================
   RADIO
========================================= */

.filter-radio {

    display: flex;

    align-items: center;

    gap: 8px;

    color: #625850;

    font-size: 18px;

    font-weight: 500;

    cursor: pointer;
}


.filter-radio input {

    width: 13px;

    height: 13px;

    accent-color: #a9573c;

    cursor: pointer;
}


/* =========================================
   COLORS
========================================= */

.filter-colors {

    display: flex;

    flex-wrap: wrap;

    gap: 9px;

    margin-top: 15px;
}


.color-option {

    width: 25px;

    height: 25px;

    border-radius: 50%;

    border: 2px solid #ffffff;

    outline: 1px solid #d9cec4;

    cursor: pointer;

    transition:
        transform 0.25s ease,
        outline-color 0.25s ease;
}


.color-option:hover {

    transform: scale(1.1);

    outline-color: #a9573c;
}


.color-option.beige {
    background: #d8c1a7;
}

.color-option.terracotta {
    background: #a9573c;
}

.color-option.green {
    background: #68735a;
}

.color-option.blue {
    background: #6c8490;
}

.color-option.white {
    background: #f8f5ef;
}


/* =========================================
   PRODUCT GRID
========================================= */

.product-grid {

    display: grid;

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

    gap: 18px;
}


/* =========================================
   PRODUCT CARD
========================================= */

.shop-product-card {

    min-width: 0;

    overflow: hidden;

    background: #ffffff;

    border: 1px solid #e7ddd3;

    border-radius: 6px;

    box-shadow:
        0 2px 9px rgba(65,45,30,0.05);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


.shop-product-card:hover {

    transform: translateY(-4px);

    box-shadow:
        0 9px 22px rgba(65,45,30,0.10);
}


/* =========================================
   PRODUCT IMAGE
========================================= */

.shop-product-image {

    position: relative;

    width: 100%;

    aspect-ratio: 1 / 1;

    overflow: hidden;

    background: #eee5da;
}


.shop-product-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.5s ease;
}


.shop-product-card:hover
.shop-product-image img {

    transform: scale(1.05);
}


/* =========================================
   BADGE
========================================= */

.product-badge {

    position: absolute;

    top: 9px;

    left: 9px;

    z-index: 2;

    padding: 5px 8px;

    border-radius: 4px;

    background: #e5382d;

    color: #ffffff;

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 0.3px;
}


/* =========================================
   WISHLIST
========================================= */

.product-wishlist {

    position: absolute;

    top: 9px;

    right: 9px;

    z-index: 3;

    width: 31px;

    height: 31px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #ddd1c6;

    border-radius: 50%;

    background: rgba(255,255,255,0.94);

    color: #957263;

    font-size: 12px;

    cursor: pointer;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}


.product-wishlist:hover {

    color: #a9573c;

    transform: scale(1.08);
}


/* =========================================
   PRODUCT INFO
========================================= */

.shop-product-info {

    padding: 11px 11px 12px;
}


.product-rating {

    display: flex;

    align-items: center;

    gap: 5px;

    margin-bottom: 6px;
}


.product-rating span {

    color: #efa400;

    font-size: 10px;

    letter-spacing: 1px;
}


.product-rating small {

    color: #91867d;

    font-size: 8px;
}


.shop-product-info h3 {

    min-height: 31px;

    margin: 0 0 7px;

    color: #29231e;

    font-size: 11px;

    line-height: 1.4;

    font-weight: 700;
}


/* =========================================
   PRICE
========================================= */

.product-price {

    display: flex;

    align-items: center;

    gap: 7px;

    margin-bottom: 10px;
}


.product-price strong {

    color: #211d19;

    font-size: 14px;

    font-weight: 800;
}


.product-price del {

    color: #9b918a;

    font-size: 9px;
}


/* =========================================
   CART
========================================= */

.product-cart {

    width: 100%;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    border: none;

    border-radius: 4px;

    background: #b45b3e;

    color: #ffffff;

    font-family: inherit;

    font-size: 9px;

    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.25s ease;
}


.product-cart:hover {

    background: #91462f;
}


.product-cart i {

    font-size: 9px;
}


/* =========================================
   PAGINATION
========================================= */

.shop-pagination {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    margin-top: 45px;
}


.pagination-number,
.pagination-arrow {

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #ded3c8;

    border-radius: 4px;

    background: #ffffff;

    color: #625850;

    font-family: inherit;

    font-size: 10px;

    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
}


.pagination-number.active {

    background: #a9573c;

    border-color: #a9573c;

    color: #ffffff;
}


.pagination-number:hover,
.pagination-arrow:hover {

    border-color: #a9573c;

    color: #a9573c;
}


.shop-pagination > span {

    color: #897d74;

    font-size: 11px;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1200px) {

    .shop-products-container {

        padding: 0 25px;
    }

    .shop-products-layout {

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

        gap: 22px;
    }

    .product-grid {

        gap: 14px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 950px) {

    .shop-products {

        padding: 55px 0 65px;
    }

    .shop-products-header h2 {

        font-size: 36px;
    }

    .shop-products-layout {

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

        gap: 18px;
    }

    .product-grid {

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

        gap: 13px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

    .shop-products {

        padding: 48px 0 60px;
    }

    .shop-products-container {

        padding: 0 14px;
    }


    /* Header */

    .shop-products-header {

        align-items: flex-end;

        margin-bottom: 20px;

        padding-bottom: 16px;
    }

    .shop-products-eyebrow {

        font-size: 8px;

        letter-spacing: 1.8px;

        margin-bottom: 5px;
    }

    .shop-products-header h2 {

        font-size: 30px;

        letter-spacing: -0.7px;
    }


    /* Actions */

    .shop-products-actions {

        gap: 7px;
    }

    .product-count {

        display: none;
    }

    .mobile-filter-btn {

        display: flex;

        align-items: center;

        gap: 5px;

        height: 34px;

        padding: 0 9px;

        border: 1px solid #ded3c8;

        border-radius: 4px;

        background: #ffffff;

        color: #4f463f;

        font-family: inherit;

        font-size: 9px;

        font-weight: 700;
    }

    .mobile-filter-btn i {

        font-size: 9px;
    }

    .sort-box {

        height: 34px;

        padding: 0 7px;

        gap: 3px;
    }

    .sort-box label {

        display: none;
    }

    .sort-box select {

        font-size: 9px;

        max-width: 72px;
    }


    /* Layout */

    .shop-products-layout {

        display: block;
    }


    /* Hide desktop filter */

    .shop-filter {

        display: none;
    }


    /* Product grid */

    .product-grid {

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

        gap: 12px 9px;
    }


    /* Product card */

    .shop-product-image {

        aspect-ratio: 1 / 1;
    }

    .product-badge {

        top: 7px;

        left: 7px;

        padding: 4px 6px;

        font-size: 7px;
    }

    .product-wishlist {

        top: 7px;

        right: 7px;

        width: 27px;

        height: 27px;

        font-size: 10px;
    }

    .shop-product-info {

        padding: 8px 8px 9px;
    }

    .product-rating {

        gap: 3px;

        margin-bottom: 4px;
    }

    .product-rating span {

        font-size: 8px;

        letter-spacing: 0.5px;
    }

    .product-rating small {

        font-size: 7px;
    }

    .shop-product-info h3 {

        min-height: 29px;

        margin-bottom: 5px;

        font-size: 9px;
    }

    .product-price {

        gap: 5px;

        margin-bottom: 7px;
    }

    .product-price strong {

        font-size: 11px;
    }

    .product-price del {

        font-size: 7px;
    }

    .product-cart {

        height: 31px;

        gap: 5px;

        font-size: 8px;
    }

    .product-cart i {

        font-size: 8px;
    }


    /* Pagination */

    .shop-pagination {

        margin-top: 30px;

        gap: 5px;
    }

    .pagination-number,
    .pagination-arrow {

        width: 30px;

        height: 30px;

        font-size: 9px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .shop-products-container {

        padding: 0 11px;
    }

    .shop-products-header h2 {

        font-size: 27px;
    }

    .product-grid {

        gap: 10px 7px;
    }

    .shop-product-info h3 {

        font-size: 8px;
    }

    .product-cart {

        font-size: 7px;
    }

}

/* third section end  */

/* =========================================
   HOMECLAY NEWSLETTER
========================================= */

.homeclay-newsletter {
    width: 100%;
    padding: 60px 0;
    background: #f8f3ed;
}

.newsletter-wrapper {
    width: calc(100% - 40px);
    max-width: 1450px;
    min-height: 400px;
    margin: 0 auto;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #a9573c;
    border-radius: 18px;
}


/* =========================================
   CONTENT
========================================= */

.newsletter-content {
    width: 55%;
    max-width: 720px;

    position: relative;
    z-index: 5;

    text-align: left;
    padding: 60px 40px;
}

.newsletter-eyebrow {
    display: block;

    margin-bottom: 15px;

    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;

    color: #f8e9da;
}

.newsletter-content h2 {
    margin: 0 0 18px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(42px, 4vw, 64px);
    line-height: 0.98;
    font-weight: 700;

    color: #fff8ee;
}

.newsletter-content p {
    max-width: 620px;

    margin: 0 0 28px;

    font-family: Arial, sans-serif;
    font-size: 16px;
    line-height: 1.6;

    color: #f9e9dc;
}


/* =========================================
   FORM
========================================= */

.newsletter-form {
    width: 100%;
    max-width: 660px;

    display: flex;
    align-items: stretch;

    background: #fffaf4;
    border-radius: 14px;
    overflow: hidden;
}

.newsletter-input-wrap {
    flex: 1;

    display: flex;
    align-items: center;

    padding: 0 20px;
}

.newsletter-input-wrap i {
    margin-right: 12px;

    color: #766960;
    font-size: 17px;
}

.newsletter-input-wrap input {
    width: 100%;
    height: 58px;

    border: none;
    outline: none;

    background: transparent;

    font-family: Arial, sans-serif;
    font-size: 15px;
    color: #35251f;
}

.newsletter-input-wrap input::placeholder {
    color: #81756d;
}

.newsletter-form button {
    min-width: 190px;

    border: none;
    outline: none;

    padding: 0 25px;

    background: #35251f;
    color: #fff8ee;

    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: background 0.3s ease,
                transform 0.3s ease;
}

.newsletter-form button span {
    margin-left: 8px;
    font-size: 18px;
}

.newsletter-form button:hover {
    background: #241914;
}


/* =========================================
   IMAGES
========================================= */

.newsletter-image {
    position: absolute;
    top: 0;

    width: 29%;
    height: 100%;

    overflow: hidden;
}

.newsletter-image-left {
    left: 0;

    border-radius: 18px 0 0 18px;
}

.newsletter-image-right {
    right: 0;

    border-radius: 0 18px 18px 0;
}

.newsletter-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform 0.6s ease;
}

.newsletter-wrapper:hover .newsletter-image img {
    transform: scale(1.04);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.newsletter-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background: linear-gradient(
        to right,
        rgba(169, 87, 60, 0.05),
        rgba(169, 87, 60, 0.25)
    );
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

    .newsletter-wrapper {
        min-height: 430px;
    }

    .newsletter-content {
        width: 62%;
        padding: 50px 25px;
    }

    .newsletter-content h2 {
        font-size: 46px;
    }

    .newsletter-image {
        width: 24%;
    }

    .newsletter-form button {
        min-width: 160px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .homeclay-newsletter {
        padding: 35px 15px;
    }

    .newsletter-wrapper {
        width: 100%;
        min-height: auto;

        display: block;

        border-radius: 16px;

        padding: 0;

        background: #a9573c;
    }

    /* Hide side images on mobile */
    .newsletter-image {
        display: none;
    }

    .newsletter-content {
        width: 100%;
        max-width: none;

        padding: 50px 22px 45px;

        text-align: center;
    }

    .newsletter-eyebrow {
        margin-bottom: 13px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .newsletter-content h2 {
        margin-bottom: 18px;

        font-size: 38px;
        line-height: 1.02;
    }

    .newsletter-content p {
        margin: 0 auto 25px;

        max-width: 340px;

        font-size: 13px;
        line-height: 1.55;
    }

    /* Form becomes vertical */

    .newsletter-form {
        display: flex;
        flex-direction: column;

        gap: 10px;

        background: transparent;

        overflow: visible;
    }

    .newsletter-input-wrap {
        width: 100%;
        height: 52px;

        padding: 0 15px;

        background: #fffaf4;

        border-radius: 7px;

        box-sizing: border-box;
    }

    .newsletter-input-wrap i {
        font-size: 14px;
        margin-right: 9px;
    }

    .newsletter-input-wrap input {
        height: 50px;
        font-size: 13px;
    }

    .newsletter-form button {
        width: 100%;
        height: 52px;

        min-width: auto;

        border-radius: 7px;

        font-size: 13px;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 400px) {

    .newsletter-content {
        padding: 42px 16px 38px;
    }

    .newsletter-content h2 {
        font-size: 33px;
    }

    .newsletter-content p {
        font-size: 12px;
    }
}

.shop-product-card {
    display: block;
    color: inherit;
    text-decoration: none;
}

.shop-product-card h3,
.shop-product-card span,
.shop-product-card strong {
    text-decoration: none;
}

/* ---------------------------------------------------------------------Shop PAGE END---------------------------------------------------------------------------------------- */

/* ======================================================product page=================================================================== */


/* =========================================
   PRODUCT DETAIL
========================================= */

.product-detail-section {
    padding: 70px 0;
    background: #fbf7f1;
}

.product-detail-container {
    width: 90%;
    max-width: 1400px;
    margin: auto;

    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 70px;
}


/* Product Image */

.product-main-image {
    position: relative;

    width: 100%;
    aspect-ratio: 1 / 1;

    overflow: hidden;

    background: #eee4d7;
}

.product-main-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}


/* Sale */

.product-sale-badge {
    position: absolute;
    top: 20px;
    left: 20px;

    z-index: 2;

    padding: 8px 13px;

    background: #a9573c;
    color: #fff8ee;

    font-size: 11px;
    font-weight: 700;
}


/* Heart */

.product-gallery-heart {
    position: absolute;
    top: 18px;
    right: 18px;

    z-index: 2;

    width: 44px;
    height: 44px;

    border: none;
    border-radius: 50%;

    background: #fffaf4;

    color: #35251f;

    cursor: pointer;

    font-size: 17px;
}


/* Thumbnails */

.product-thumbnails {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 12px;

    margin-top: 14px;
}

.product-thumbnail {
    padding: 0;

    aspect-ratio: 1 / 1;

    border: 1px solid transparent;

    background: #eee4d7;

    overflow: hidden;

    cursor: pointer;
}

.product-thumbnail.active {
    border-color: #a9573c;
}

.product-thumbnail img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* Product Information */

.product-information {
    padding-top: 15px;
}

.product-category-label {
    display: block;

    margin-bottom: 15px;

    color: #a9573c;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2.5px;
}

.product-information h1 {
    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(42px, 4vw, 62px);
    line-height: 1.02;

    color: #35251f;
}


/* Rating */

.product-rating-row {
    display: flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 25px;

    font-size: 13px;
}

.product-stars {
    display: flex;
    gap: 3px;

    color: #a9573c;
}

.product-rating-row span {
    font-weight: 700;
}

.product-rating-row a {
    color: #756a62;
}


/* Price */

.product-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;

    padding-bottom: 25px;

    border-bottom: 1px solid #ded2c5;
}

.current-price {
    font-size: 30px;
    font-weight: 800;

    color: #35251f;
}

.old-price {
    color: #9a8e85;

    font-size: 16px;

    text-decoration: line-through;
}

.save-price {
    padding: 6px 9px;

    background: #ead8cb;

    color: #8f4935;

    font-size: 11px;
    font-weight: 700;
}


/* Description */

.product-short-description {
    max-width: 600px;

    margin-top: 25px;

    color: #675b53;

    font-size: 15px;
    line-height: 1.75;
}


/* Mobile */

@media (max-width: 900px) {

    .product-detail-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

}


@media (max-width: 600px) {

    .product-detail-section {
        padding: 40px 0;
    }

    .product-detail-container {
        width: 92%;
    }

    .product-information h1 {
        font-size: 38px;
    }

    .product-short-description {
        font-size: 13px;
    }

}

/* =========================================
   PRODUCT OPTIONS
========================================= */

.product-option {
    padding: 22px 0;

    border-top: 1px solid #ded2c5;
    border-bottom: 1px solid #ded2c5;
}

.option-heading {
    display: flex;
    justify-content: space-between;

    margin-bottom: 15px;

    color: #35251f;

    font-size: 13px;
}

.option-heading span {
    color: #756a62;
}

.product-colors {
    display: flex;
    gap: 14px;
}

.color-option {
    width: 32px;
    height: 32px;

    padding: 0;

    border: 2px solid transparent;
    border-radius: 50%;

    cursor: pointer;
}

.color-option.active {
    outline: 2px solid #35251f;
    outline-offset: 3px;
}


/* =========================================
   QUANTITY + CART
========================================= */

.purchase-row {
    display: flex;
    gap: 12px;

    margin-top: 25px;
}

.quantity-selector {
    width: 125px;
    height: 56px;

    display: flex;
    align-items: center;
    justify-content: space-around;

    border: 1px solid #cfc1b4;

    background: #fffaf4;
}

.quantity-selector button {
    width: 40px;
    height: 100%;

    border: none;

    background: transparent;

    color: #35251f;

    font-size: 20px;

    cursor: pointer;
}

.quantity-value {
    min-width: 20px;

    text-align: center;

    color: #35251f;

    font-size: 14px;
    font-weight: 700;
}

.add-to-cart-btn {
    flex: 1;

    height: 56px;

    border: none;

    background: #35251f;
    color: #fff8ee;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: background 0.3s ease;
}

.add-to-cart-btn:hover {
    background: #a9573c;
}

.add-to-cart-btn i {
    margin-right: 8px;
}


/* =========================================
   BUY NOW
========================================= */

.buy-now-btn {
    width: 100%;
    height: 54px;

    margin-top: 12px;

    border: 1px solid #35251f;

    background: transparent;

    color: #35251f;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: all 0.3s ease;
}

.buy-now-btn:hover {
    background: #35251f;
    color: #fff8ee;
}


/* =========================================
   DELIVERY
========================================= */

.delivery-info {
    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 20px;

    margin-top: 25px;

    padding-top: 23px;

    border-top: 1px solid #ded2c5;
}

.delivery-item {
    display: flex;
    gap: 11px;
}

.delivery-item > i {
    margin-top: 3px;

    color: #a9573c;

    font-size: 18px;
}

.delivery-item strong {
    display: block;

    margin-bottom: 4px;

    color: #35251f;

    font-size: 12px;
}

.delivery-item span {
    color: #756a62;

    font-size: 11px;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .purchase-row {
        gap: 8px;
    }

    .quantity-selector {
        width: 105px;
    }

    .add-to-cart-btn {
        font-size: 13px;
    }

    .delivery-info {
        grid-template-columns: 1fr;
        gap: 15px;
    }

}

/* proct page section 2 */

/* =========================================
   PRODUCT DETAILS SECTION
========================================= */

.product-details-tabs {
    padding: 85px 0;

    background: #fffaf4;
}

.product-tabs-container {
    width: 90%;
    max-width: 1200px;

    margin: auto;
}


/* =========================================
   TABS
========================================= */

.product-tab-buttons {
    display: flex;
    justify-content: center;
    gap: 50px;

    border-bottom: 1px solid #ded2c5;
}

.product-tab-buttons button {
    position: relative;

    padding: 0 0 18px;

    border: none;

    background: transparent;

    color: #81756d;

    font-size: 14px;
    font-weight: 600;

    cursor: pointer;
}

.product-tab-buttons button.active {
    color: #35251f;
}

.product-tab-buttons button.active::after {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    bottom: -1px;

    height: 2px;

    background: #a9573c;
}


/* =========================================
   CONTENT
========================================= */

.product-tab-content {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;

    align-items: center;

    gap: 65px;

    padding-top: 55px;
}

.detail-content-image {
    width: 100%;
    aspect-ratio: 1 / 0.82;

    overflow: hidden;

    background: #eee4d7;
}

.detail-content-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


.detail-content-text {
    max-width: 600px;
}

.detail-eyebrow {
    display: block;

    margin-bottom: 12px;

    color: #a9573c;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 2.5px;
}

.detail-content-text h2 {
    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(32px, 3.5vw, 48px);

    line-height: 1.08;

    color: #35251f;
}

.detail-content-text p {
    margin: 0 0 15px;

    color: #675b53;

    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   FEATURES
========================================= */

.product-features-list {
    margin: 25px 0 0;

    padding: 0;

    list-style: none;
}

.product-features-list li {
    display: flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    color: #51473f;

    font-size: 13px;
}

.product-features-list i {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 20px;
    height: 20px;

    border-radius: 50%;

    background: #ead8cb;

    color: #a9573c;

    font-size: 9px;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

    .product-details-tabs {
        padding: 60px 0;
    }

    .product-tabs-container {
        width: 92%;
    }

    .product-tab-buttons {
        justify-content: flex-start;

        gap: 28px;

        overflow-x: auto;

        scrollbar-width: none;
    }

    .product-tab-buttons::-webkit-scrollbar {
        display: none;
    }

    .product-tab-buttons button {
        flex-shrink: 0;

        font-size: 12px;
    }

    .product-tab-content {
        grid-template-columns: 1fr;

        gap: 35px;

        padding-top: 35px;
    }

    .detail-content-text h2 {
        font-size: 34px;
    }

    .detail-content-text p {
        font-size: 13px;
    }

}

/* ===========cart page */
/* =========================================
   CART PAGE
========================================= */

.cart-section {
    background: #fbf7f1;
    min-height: 70vh;
    padding: 90px 0 110px;
}

.cart-container {
    width: min(1200px, 92%);
    margin: 0 auto;
}

/* ---------- CART HEADER ---------- */

.cart-header {
    text-align: center;
    margin-bottom: 55px;
}

.cart-eyebrow {
    display: inline-block;
    color: #a9573c;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.cart-header h1 {
    margin: 0;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(42px, 5vw, 64px);
    line-height: 1.05;
    font-weight: 500;
}

.cart-header p {
    margin: 16px auto 0;
    max-width: 550px;
    color: #766960;
    font-size: 16px;
    line-height: 1.7;
}


/* ---------- CART LAYOUT ---------- */

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 45px;
    align-items: start;
}


/* ---------- CART PRODUCTS ---------- */

.cart-products {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.cart-product {
    background: #fff;
    border: 1px solid #e8ddd3;
    padding: 20px;
    display: grid;
    grid-template-columns: 130px 1fr auto;
    gap: 24px;
    align-items: center;
}

.cart-product-image {
    width: 130px;
    height: 140px;
    overflow: hidden;
    background: #f2ebe3;
}

.cart-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.cart-product:hover .cart-product-image img {
    transform: scale(1.05);
}


/* ---------- PRODUCT INFO ---------- */

.cart-product-info {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cart-product-category {
    color: #a9573c;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.cart-product-info h3 {
    margin: 0 0 10px;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 500;
}

.cart-product-color {
    color: #756960;
    font-size: 14px;
    margin-bottom: 14px;
}

.cart-product-color strong {
    color: #493a33;
}


/* ---------- PRICE ---------- */

.cart-product-price {
    color: #33251f;
    font-size: 17px;
    font-weight: 700;
}


/* ---------- QUANTITY ---------- */

.cart-quantity {
    display: flex;
    align-items: center;
    width: fit-content;
    border: 1px solid #dcd0c5;
    margin-top: 15px;
}

.cart-quantity button {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #493a33;
    font-size: 18px;
    cursor: pointer;
    transition: 0.25s ease;
}

.cart-quantity button:hover {
    background: #f1e8df;
}

.cart-quantity span {
    min-width: 38px;
    text-align: center;
    color: #33251f;
    font-size: 14px;
    font-weight: 600;
}


/* ---------- REMOVE ---------- */

.cart-product-actions {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
}

.cart-remove {
    border: 0;
    background: transparent;
    color: #8a7b72;
    cursor: pointer;
    font-size: 13px;
    transition: 0.25s ease;
}

.cart-remove:hover {
    color: #a9573c;
}

.cart-item-total {
    color: #33251f;
    font-size: 18px;
    font-weight: 700;
}


/* ---------- SUMMARY ---------- */

.cart-summary {
    position: sticky;
    top: 120px;
    background: #fff;
    border: 1px solid #e8ddd3;
    padding: 32px;
}

.cart-summary h2 {
    margin: 0 0 28px;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: 500;
}

.summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #71645d;
    font-size: 15px;
    margin-bottom: 18px;
}

.summary-row strong {
    color: #33251f;
    font-size: 16px;
}

.summary-divider {
    height: 1px;
    background: #e8ddd3;
    margin: 25px 0;
}

.summary-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #33251f;
    margin-bottom: 25px;
}

.summary-total span {
    font-size: 17px;
    font-weight: 600;
}

.summary-total strong {
    font-size: 25px;
    font-weight: 700;
}


/* ---------- CHECKOUT BUTTON ---------- */

.checkout-btn {
    width: 100%;
    min-height: 56px;
    border: none;
    background: #a9573c;
    color: #fff;
    padding: 15px 20px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    transition: all 0.3s ease;
}

.checkout-btn:hover {
    background: #873f2c;
    transform: translateY(-2px);
}

.continue-shopping {
    display: block;
    text-align: center;
    margin-top: 20px;
    color: #594940;
    font-size: 14px;
    text-decoration: none;
    transition: 0.25s ease;
}

.continue-shopping:hover {
    color: #a9573c;
}


/* ---------- EMPTY CART ---------- */

.empty-cart {
    background: #fff;
    border: 1px solid #e8ddd3;
    padding: 80px 30px;
    text-align: center;
}

.empty-cart-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 22px;
    border-radius: 50%;
    background: #f2e8df;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a9573c;
    font-size: 25px;
}

.empty-cart h2 {
    margin: 0 0 10px;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 30px;
    font-weight: 500;
}

.empty-cart p {
    margin: 0 auto 25px;
    max-width: 450px;
    color: #766960;
    font-size: 15px;
    line-height: 1.7;
}

.empty-cart a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #a9573c;
    color: #fff;
    padding: 14px 25px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: 0.3s ease;
}

.empty-cart a:hover {
    background: #873f2c;
}


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

@media (max-width: 992px) {

    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-summary {
        position: static;
    }

}


@media (max-width: 700px) {

    .cart-section {
        padding: 60px 0 80px;
    }

    .cart-header {
        margin-bottom: 35px;
    }

    .cart-header h1 {
        font-size: 44px;
    }

    .cart-header p {
        font-size: 14px;
    }

    .cart-product {
        grid-template-columns: 90px 1fr;
        gap: 16px;
        padding: 15px;
    }

    .cart-product-image {
        width: 90px;
        height: 105px;
    }

    .cart-product-info h3 {
        font-size: 19px;
    }

    .cart-product-actions {
        grid-column: 1 / -1;
        height: auto;
        flex-direction: row;
        align-items: center;
        padding-top: 12px;
        border-top: 1px solid #eee4dc;
    }

    .cart-item-total {
        order: 2;
    }

    .cart-remove {
        order: 1;
    }

    .cart-summary {
        padding: 25px 20px;
    }

}


@media (max-width: 480px) {

    .cart-container {
        width: 92%;
    }

    .cart-header h1 {
        font-size: 38px;
    }

    .cart-product {
        grid-template-columns: 80px 1fr;
        padding: 12px;
    }

    .cart-product-image {
        width: 80px;
        height: 95px;
    }

    .cart-product-info h3 {
        font-size: 17px;
    }

    .cart-product-price {
        font-size: 15px;
    }

    .cart-summary h2 {
        font-size: 25px;
    }

}
/* ===========cart page end */


/* =========================================
   YOU MAY ALSO LIKE
========================================= */

.related-products-section {
    background: #f8eee5;
    padding: 85px 0 95px;
}

.related-products-container {
    width: min(1200px, 92%);
    margin: 0 auto;
}


/* ---------- HEADING ---------- */

.related-products-heading {
    text-align: center;
    margin-bottom: 42px;
}

.related-eyebrow {
    display: inline-block;
    margin-bottom: 10px;

    color: #a9573c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.2px;
}

.related-products-heading h2 {
    margin: 0;

    color: #33251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(38px, 4vw, 52px);
    line-height: 1.1;
    font-weight: 500;
}

.related-products-heading p {
    margin: 14px auto 0;

    max-width: 520px;

    color: #756960;
    font-size: 15px;
    line-height: 1.7;
}


/* ---------- PRODUCT GRID ---------- */

.related-products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}


/* ---------- PRODUCT CARD ---------- */

.related-product-card {
    min-width: 0;
}


/* ---------- IMAGE ---------- */

.related-product-image {
    position: relative;

    width: 100%;
    aspect-ratio: 1 / 1;

    overflow: hidden;

    background: #eee3d8;
}

.related-product-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.55s ease;
}

.related-product-card:hover
.related-product-image img {
    transform: scale(1.045);
}


/* ---------- SALE BADGE ---------- */

.related-sale-badge {
    position: absolute;

    top: 12px;
    left: 12px;

    z-index: 2;

    background: #a9573c;
    color: #fff;

    padding: 7px 10px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.5px;
}


/* ---------- WISHLIST ---------- */

.related-wishlist {
    position: absolute;

    top: 12px;
    right: 12px;

    z-index: 3;

    width: 38px;
    height: 38px;

    border: none;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.95);

    color: #4b3931;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    font-size: 16px;

    transition: all 0.3s ease;
}

.related-wishlist:hover {
    background: #a9573c;
    color: #fff;
    transform: scale(1.05);
}


/* ---------- PRODUCT INFO ---------- */

.related-product-info {
    padding: 16px 4px 0;
}

.related-product-category {
    display: block;

    margin-bottom: 7px;

    color: #a9573c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.related-product-info h3 {
    margin: 0;

    color: #33251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
    line-height: 1.35;

    font-weight: 500;
}


/* ---------- PRICE ---------- */

.related-product-price {
    display: flex;
    align-items: center;
    gap: 9px;

    margin-top: 9px;
}

.related-product-price strong {
    color: #33251f;

    font-size: 16px;
    font-weight: 700;
}

.related-product-price del {
    color: #9a8b82;

    font-size: 13px;
}


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

@media (max-width: 992px) {

    .related-products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px 18px;
    }

}


@media (max-width: 600px) {

    .related-products-section {
        padding: 65px 0 75px;
    }

    .related-products-heading {
        margin-bottom: 32px;
    }

    .related-products-heading h2 {
        font-size: 38px;
    }

    .related-products-heading p {
        font-size: 14px;
        padding: 0 10px;
    }

    .related-products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 12px;
    }

    .related-wishlist {
        width: 34px;
        height: 34px;

        top: 8px;
        right: 8px;

        font-size: 14px;
    }

    .related-sale-badge {
        top: 8px;
        left: 8px;

        padding: 6px 8px;
    }

    .related-product-info {
        padding-top: 12px;
    }

    .related-product-info h3 {
        font-size: 16px;
    }

    .related-product-price strong {
        font-size: 15px;
    }

}


@media (max-width: 400px) {

    .related-products-grid {
        gap: 22px 10px;
    }

    .related-product-info h3 {
        font-size: 15px;
    }

}

/* =========================================
   PRODUCT GALLERY ARROWS
========================================= */

.product-gallery-arrows {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 15px;

    pointer-events: none;
    z-index: 5;
}

.product-gallery-arrows button {
    width: 42px;
    height: 42px;

    border: none;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.92);
    color: #33251f;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    pointer-events: auto;

    transition: all 0.3s ease;
}

.product-gallery-arrows button:hover {
    background: #a9573c;
    color: #fff;
    transform: scale(1.08);
}

@media (max-width: 600px) {

    .product-gallery-arrows {
        padding: 0 10px;
    }

    .product-gallery-arrows button {
        width: 36px;
        height: 36px;
        font-size: 13px;
    }

}

.product-tab-panel {
    display: none;
    animation: tabFade 0.35s ease;
}

.product-tab-panel.active {
    display: block;
}

@keyframes tabFade {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Specifications */

.product-specifications {
    max-width: 800px;
}

.spec-row {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    padding: 18px 0;
    border-bottom: 1px solid #e5d8cf;
}

.spec-row span {
    color: #76665e;
}

.spec-row strong {
    color: #33251f;
}


/* Shipping */

.shipping-info {
    display: grid;
    gap: 25px;
}

.shipping-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.shipping-item > i {
    width: 45px;
    height: 45px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #f3e5db;
    color: #a9573c;
    display: flex;
    align-items: center;
    justify-content: center;
}

.shipping-item h4 {
    margin: 0 0 6px;
    font-size: 17px;
    color: #33251f;
}

.shipping-item p {
    margin: 0;
    color: #76665e;
    line-height: 1.7;
}


/* Mobile */

@media (max-width: 600px) {

    .product-tab-buttons {
        overflow-x: auto;
        justify-content: flex-start;
    }

    .product-tab-btn {
        white-space: nowrap;
    }

    .spec-row {
        flex-direction: column;
        gap: 6px;
    }

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

}

/* =====================================================
   PRODUCT TABS - FINAL FIX
===================================================== */

/* Tab content should not behave like the old 2-column grid */
.product-tab-content {
    display: block;
    width: 100%;
    padding-top: 55px;
}

/* Every panel hidden by default */
.product-tab-panel {
    display: none;
    width: 100%;
}

/* Active panel */
.product-tab-panel.active {
    display: block;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.product-description-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    gap: 65px;
}

.product-description-image {
    width: 100%;
    aspect-ratio: 1 / 0.82;
    overflow: hidden;
    background: #eee4d7;
}

.product-description-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.product-description-text {
    max-width: 600px;
}

.product-description-text h3 {
    margin: 0 0 20px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(32px, 3.5vw, 48px);
    line-height: 1.08;
    font-weight: 500;
    color: #35251f;
}

.product-description-text p {
    margin: 0 0 15px;
    color: #675b53;
    font-size: 14px;
    line-height: 1.8;
}

.product-features {
    margin: 25px 0 0;
    padding: 0;
    list-style: none;
}

.product-features li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    color: #51473f;
    font-size: 13px;
}

.product-features li i {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #ead8cb;
    color: #a9573c;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
}


/* =====================================================
   DETAILS
===================================================== */

.product-specifications {
    width: 100%;
    max-width: 800px;
}

.spec-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    padding: 18px 0;
    border-bottom: 1px solid #e5d8cf;
}

.spec-row span {
    color: #76665e;
    font-size: 14px;
}

.spec-row strong {
    color: #33251f;
    font-size: 14px;
}


/* =====================================================
   SHIPPING
===================================================== */

.shipping-info {
    width: 100%;
    max-width: 800px;
    display: grid;
    gap: 25px;
}

.shipping-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.shipping-item > i {
    width: 45px;
    height: 45px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #f3e5db;
    color: #a9573c;
    display: flex;
    align-items: center;
    justify-content: center;
}

.shipping-item h4 {
    margin: 0 0 6px;
    color: #33251f;
    font-size: 17px;
}

.shipping-item p {
    margin: 0;
    color: #76665e;
    font-size: 14px;
    line-height: 1.7;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 700px) {

    .product-details-tabs {
        padding: 55px 0;
    }

    .product-tabs-container {
        width: 92%;
        max-width: none;
    }

    .product-tab-buttons {
        width: 100%;
        justify-content: flex-start;
        gap: 28px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .product-tab-buttons::-webkit-scrollbar {
        display: none;
    }

    .product-tab-buttons button {
        flex-shrink: 0;
        white-space: nowrap;
        font-size: 12px;
    }

    .product-tab-content {
        display: block;
        width: 100%;
        padding-top: 35px;
    }

    /* Description becomes one column */
    .product-description-grid {
        display: flex;
        flex-direction: column;
        gap: 30px;
        width: 100%;
    }

    .product-description-image {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }

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

    .product-description-text {
        width: 100%;
        max-width: none;
    }

    .product-description-text h3 {
        font-size: 30px;
        line-height: 1.15;
    }

    .product-description-text p {
        font-size: 14px;
        line-height: 1.7;
    }

    /* Details */
    .product-specifications {
        width: 100%;
    }

    .spec-row {
        width: 100%;
        padding: 15px 0;
        gap: 8px;
    }

    .spec-row span,
    .spec-row strong {
        font-size: 13px;
    }

    /* Shipping */
    .shipping-info {
        width: 100%;
    }

    .shipping-item {
        gap: 14px;
    }

    .shipping-item h4 {
        font-size: 15px;
    }

    .shipping-item p {
        font-size: 13px;
    }

}

/* =========================================
   REVIEWS & RATINGS
========================================= */

.product-reviews-section {
    padding: 90px 0;
    background: #fbf7f1;
}

.product-reviews-container {
    width: min(1200px, 92%);
    margin: 0 auto;
}


/* Heading */

.reviews-heading {
    text-align: center;
    margin-bottom: 55px;
}

.reviews-heading span {
    display: block;
    margin-bottom: 10px;
    color: #a9573c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.reviews-heading h2 {
    margin: 0;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(38px, 4vw, 52px);
    font-weight: 500;
}


/* Layout */

.reviews-layout {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 60px;
}


/* Rating Summary */

.rating-summary {
    padding: 30px;
    background: #fff;
    border: 1px solid #e8ddd3;
}

.overall-rating {
    text-align: center;
    padding-bottom: 28px;
    border-bottom: 1px solid #e5d8cf;
}

.overall-rating strong {
    display: block;
    color: #33251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 58px;
    font-weight: 500;
}

.rating-stars {
    margin: 5px 0;
    color: #a9573c;
    letter-spacing: 3px;
    font-size: 17px;
}

.overall-rating p {
    margin: 5px 0 0;
    color: #76665e;
    font-size: 13px;
}


/* Rating Bars */

.rating-bars {
    padding: 25px 0;
}

.rating-bar-row {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 12px;
}

.rating-bar-row > span {
    width: 10px;
    color: #51473f;
    font-size: 12px;
}

.rating-bar-row i {
    color: #a9573c;
    font-size: 10px;
}

.rating-bar {
    flex: 1;
    height: 6px;
    overflow: hidden;
    background: #e9ded5;
}

.rating-bar span {
    display: block;
    height: 100%;
    background: #a9573c;
}

.rating-bar-row small {
    width: 18px;
    color: #76665e;
    font-size: 11px;
    text-align: right;
}


/* Write Review */

.write-review-btn {
    width: 100%;
    height: 50px;
    border: 1px solid #35251f;
    background: #35251f;
    color: #fff8ee;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s ease;
}

.write-review-btn:hover {
    background: #a9573c;
    border-color: #a9573c;
}


/* Customer Reviews */

.customer-reviews {
    display: flex;
    flex-direction: column;
}

.customer-review {
    padding: 0 0 28px;
    margin-bottom: 28px;
    border-bottom: 1px solid #ded2c5;
}

.review-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.review-top strong {
    display: block;
    color: #33251f;
    font-size: 15px;
}

.review-top > span {
    color: #95877e;
    font-size: 12px;
}

.review-stars {
    margin-top: 5px;
    color: #a9573c;
    font-size: 12px;
    letter-spacing: 2px;
}

.customer-review h4 {
    margin: 15px 0 7px;
    color: #33251f;
    font-size: 16px;
}

.customer-review p {
    max-width: 700px;
    margin: 0;
    color: #675b53;
    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 800px) {

    .product-reviews-section {
        padding: 65px 0;
    }

    .reviews-heading {
        margin-bottom: 35px;
    }

    .reviews-layout {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .rating-summary {
        padding: 25px 20px;
    }

}


@media (max-width: 600px) {

    .reviews-heading h2 {
        font-size: 36px;
    }

    .review-top {
        gap: 10px;
    }

    .review-top > span {
        font-size: 11px;
    }

    .customer-review p {
        font-size: 13px;
    }

}

/* =========================================
   PRODUCT WISHLIST
========================================= */

.product-gallery-heart {
    transition: all 0.3s ease;
}

.product-gallery-heart.active {
    background: #a9573c;
    color: #fff;
}

.product-gallery-heart.active i {
    font-weight: 900;
}

.product-gallery-heart:hover {
    transform: scale(1.08);
}


/* Wishlist badge */

.wishlist-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 50%;
    background: #a9573c;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
}





/* product page section 2 css end */

/* =======================================================product page end================================================================ */


/* =======================================================about page  ============================================================*/

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

.about-hero {
    position: relative;
    min-height: 720px;
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    isolation: isolate;
}


/* =========================================
   BACKGROUND
========================================= */

.about-hero-bg {
    position: absolute;
    inset: 0;
    z-index: -3;
    overflow: hidden;
}

.about-hero-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    animation: aboutHeroZoom 12s ease-in-out infinite alternate;
}


/* Slow background zoom */

@keyframes aboutHeroZoom {

    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.07);
    }

}


/* =========================================
   OVERLAY
========================================= */

.about-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -2;

    background:
        linear-gradient(
            90deg,
            rgba(45, 31, 24, 0.78) 0%,
            rgba(45, 31, 24, 0.52) 35%,
            rgba(45, 31, 24, 0.15) 70%,
            rgba(45, 31, 24, 0.05) 100%
        );
}


/* =========================================
   CONTAINER
========================================= */

.about-hero-container {
    width: min(1250px, 90%);
    margin: 0 auto;
}


/* =========================================
   CONTENT
========================================= */

.about-hero-content {
    max-width: 680px;
    color: #fffaf4;
}


/* Eyebrow */

.about-hero-eyebrow {
    display: block;

    margin-bottom: 20px;

    color: #f0c4aa;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 4px;

    opacity: 0;
    transform: translateY(25px);

    animation:
        aboutFadeUp 0.9s ease forwards;

    animation-delay: 0.2s;
}


/* Heading */

.about-hero-content h1 {

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(52px, 6vw, 82px);

    line-height: 0.98;

    font-weight: 500;

    letter-spacing: -2px;

    opacity: 0;
    transform: translateY(35px);

    animation:
        aboutFadeUp 1s ease forwards;

    animation-delay: 0.4s;
}


.about-hero-content h1 span {
    color: #e6a384;
    font-style: italic;
}


/* Description */

.about-hero-content p {

    max-width: 540px;

    margin: 28px 0 35px;

    color: rgba(255, 250, 244, 0.9);

    font-size: 16px;

    line-height: 1.8;

    opacity: 0;
    transform: translateY(25px);

    animation:
        aboutFadeUp 0.9s ease forwards;

    animation-delay: 0.65s;
}


/* =========================================
   BUTTONS
========================================= */

.about-hero-buttons {

    display: flex;

    align-items: center;

    gap: 14px;

    opacity: 0;
    transform: translateY(25px);

    animation:
        aboutFadeUp 0.9s ease forwards;

    animation-delay: 0.85s;
}


.about-btn {

    min-height: 52px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    padding: 0 24px;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease,
        border-color 0.3s ease;
}


/* Primary */

.about-btn.primary {

    background: #a9573c;

    color: #fff;

    border: 1px solid #a9573c;
}


.about-btn.primary:hover {

    background: #8f4632;

    border-color: #8f4632;

    transform: translateY(-3px);
}


/* Secondary */

.about-btn.secondary {

    color: #fff;

    border: 1px solid rgba(255, 255, 255, 0.65);

    background: rgba(255, 255, 255, 0.08);

    backdrop-filter: blur(5px);
}


.about-btn.secondary:hover {

    background: #fff;

    color: #35251f;

    transform: translateY(-3px);
}


/* =========================================
   SCROLL INDICATOR
========================================= */

.about-scroll {

    position: absolute;

    bottom: 30px;
    right: 5%;

    display: flex;

    align-items: center;

    gap: 14px;

    color: rgba(255, 255, 255, 0.85);

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    writing-mode: vertical-rl;

    opacity: 0;

    animation:
        aboutFadeIn 1s ease forwards;

    animation-delay: 1.2s;
}


.scroll-line {

    width: 1px;

    height: 65px;

    background: rgba(255, 255, 255, 0.35);

    position: relative;

    overflow: hidden;
}


.scroll-line span {

    position: absolute;

    top: -20px;

    left: 0;

    width: 1px;

    height: 20px;

    background: #fff;

    animation:
        scrollMove 2s ease-in-out infinite;
}


@keyframes scrollMove {

    0% {
        top: -20px;
    }

    50% {
        top: 65px;
    }

    100% {
        top: 65px;
    }

}


/* =========================================
   ANIMATIONS
========================================= */

@keyframes aboutFadeUp {

    to {

        opacity: 1;

        transform: translateY(0);

    }

}


@keyframes aboutFadeIn {

    to {

        opacity: 1;

    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .about-hero {

        min-height: 650px;

    }

    .about-hero-content h1 {

        font-size: clamp(48px, 8vw, 68px);

    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .about-hero {

        min-height: 680px;

        align-items: flex-end;

    }


    .about-hero-bg img {

        object-position: 62% center;

    }


    .about-hero-overlay {

        background:
            linear-gradient(
                180deg,
                rgba(45, 31, 24, 0.15) 0%,
                rgba(45, 31, 24, 0.25) 30%,
                rgba(45, 31, 24, 0.85) 75%,
                rgba(45, 31, 24, 0.95) 100%
            );

    }


    .about-hero-container {

        width: 90%;

        padding-bottom: 90px;

    }


    .about-hero-content {

        max-width: 100%;

    }


    .about-hero-eyebrow {

        font-size: 10px;

        letter-spacing: 3px;

        margin-bottom: 14px;

    }


    .about-hero-content h1 {

        font-size: 45px;

        line-height: 1;

        letter-spacing: -1px;

    }


    .about-hero-content p {

        margin: 20px 0 25px;

        font-size: 13px;

        line-height: 1.7;

    }


    .about-hero-buttons {

        flex-direction: column;

        align-items: stretch;

        gap: 10px;

    }


    .about-btn {

        width: 100%;

        min-height: 50px;

    }


    .about-scroll {

        display: none;

    }

}

/* =========================================
   ABOUT - OUR STORY
========================================= */

.about-story {
    padding: 110px 0;
    background: #fbf7f1;
}

.about-story-container {
    width: min(1200px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: center;
    gap: 80px;
}

.about-story-image {
    overflow: hidden;
    aspect-ratio: 1 / 0.9;
}

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

    transition: transform 0.8s ease;
}

.about-story-image:hover img {
    transform: scale(1.04);
}

.about-story-content {
    max-width: 560px;
}

.about-section-eyebrow {
    display: block;
    margin-bottom: 15px;

    color: #a9573c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
}

.about-story-content h2 {
    margin: 0 0 25px;

    color: #35251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(42px, 4.5vw, 62px);
    line-height: 1.05;
    font-weight: 500;
}

.about-story-content p {
    margin: 0 0 16px;

    color: #675b53;
    font-size: 15px;
    line-height: 1.8;
}

.about-story-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-top: 15px;
    padding: 14px 22px;

    background: #a9573c;
    color: #fff;

    text-decoration: none;

    font-size: 13px;
    font-weight: 700;

    transition: all 0.3s ease;
}

.about-story-btn:hover {
    background: #873f2c;
    transform: translateY(-3px);
}


/* Mobile */

@media (max-width: 800px) {

    .about-story {
        padding: 70px 0;
    }

    .about-story-container {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .about-story-content {
        max-width: none;
    }

    .about-story-content h2 {
        font-size: 42px;
    }

    .about-story-content p {
        font-size: 14px;
    }

}

/* =========================================
   OUR PHILOSOPHY
========================================= */

.about-philosophy {
    padding: 100px 0;
    background: #f5eadf;
}

.about-philosophy-container {
    width: min(1100px, 90%);
    margin: auto;
}

.about-philosophy-heading {
    text-align: center;
    margin-bottom: 60px;
}

.about-philosophy-heading h2 {
    margin: 0;

    color: #35251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(40px, 4.5vw, 58px);
    line-height: 1.05;
    font-weight: 500;
}

.philosophy-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.philosophy-item {
    padding: 15px 50px;
    text-align: center;
    border-right: 1px solid #dfcfc1;
}

.philosophy-item:last-child {
    border-right: none;
}

.philosophy-icon {
    width: 58px;
    height: 58px;

    margin: 0 auto 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f0d9c9;
    color: #a9573c;

    font-size: 20px;

    transition: all 0.35s ease;
}

.philosophy-item:hover .philosophy-icon {
    background: #a9573c;
    color: #fff;
    transform: translateY(-6px) rotate(-5deg);
}

.philosophy-item h3 {
    margin: 0 0 12px;

    color: #35251f;

    font-size: 17px;
    font-weight: 700;
}

.philosophy-item p {
    margin: 0;

    color: #75675e;

    font-size: 13px;
    line-height: 1.8;
}


/* Mobile */

@media (max-width: 700px) {

    .about-philosophy {
        padding: 70px 0;
    }

    .about-philosophy-heading {
        margin-bottom: 40px;
    }

    .about-philosophy-heading h2 {
        font-size: 38px;
    }

    .philosophy-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .philosophy-item {
        padding: 0 20px 35px;
        border-right: none;
        border-bottom: 1px solid #dfcfc1;
    }

    .philosophy-item:last-child {
        padding-bottom: 0;
        border-bottom: none;
    }

}

/* =====================================================
   CRAFTSMANSHIP SECTION
===================================================== */

.about-craftsmanship {
    position: relative;
    padding: 120px 0;
    overflow: hidden;
    background: #fbf7f1;
}

.craftsmanship-container {
    width: min(1250px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;

    gap: 80px;
}


/* =====================================================
   CONTENT
===================================================== */

.craftsmanship-content {
    max-width: 570px;

    animation: craftContentReveal 1s ease both;
}

.craftsmanship-content h2 {
    margin: 0 0 25px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(44px, 5vw, 68px);

    line-height: 1.03;

    font-weight: 500;

    letter-spacing: -1.5px;
}

.craftsmanship-content h2 span {
    color: #a9573c;
    font-style: italic;
}

.craftsmanship-intro {
    max-width: 550px;

    margin: 0 0 35px;

    color: #675b53;

    font-size: 15px;

    line-height: 1.8;
}


/* =====================================================
   FEATURES
===================================================== */

.craft-feature {
    display: flex;
    align-items: flex-start;

    gap: 18px;

    margin-bottom: 25px;

    transition:
        transform 0.35s ease;
}

.craft-feature:hover {
    transform: translateX(8px);
}

.craft-feature-icon {
    width: 50px;
    height: 50px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f0d9c9;

    color: #a9573c;

    font-size: 17px;

    transition:
        background 0.35s ease,
        color 0.35s ease,
        transform 0.35s ease;
}

.craft-feature:hover .craft-feature-icon {
    background: #a9573c;
    color: #fff;

    transform:
        rotate(-8deg)
        scale(1.08);
}

.craft-feature h3 {
    margin: 0 0 5px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 600;
}

.craft-feature p {
    max-width: 420px;

    margin: 0;

    color: #75675e;

    font-size: 13px;

    line-height: 1.6;
}


/* =====================================================
   BUTTON
===================================================== */

.craftsmanship-btn {
    display: inline-flex;

    align-items: center;

    gap: 11px;

    margin-top: 15px;

    padding: 15px 25px;

    background: #a9573c;

    color: #fff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.craftsmanship-btn:hover {
    background: #873f2c;

    transform:
        translateY(-3px);
}


/* =====================================================
   RIGHT VISUAL
===================================================== */

.craftsmanship-visual {
    position: relative;

    min-height: 650px;

    padding-bottom: 95px;
}


/* Main Image */

.craft-main-image {
    position: relative;

    width: 100%;

    height: 520px;

    overflow: hidden;

    border-radius: 180px 0 0 0;
}

.craft-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 1s ease;
}

.craft-main-image:hover img {
    transform: scale(1.06);
}


/* Image overlay */

.craft-image-overlay {
    position: absolute;

    left: 35px;
    bottom: 30px;

    display: flex;
    align-items: center;

    gap: 12px;

    color: #fff;

    font-size: 13px;
    font-weight: 700;

    text-shadow:
        0 2px 10px rgba(0, 0, 0, 0.3);
}

.craft-play-icon {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.9);

    color: #a9573c;

    transition:
        transform 0.3s ease;
}

.craft-image-overlay:hover .craft-play-icon {
    transform: scale(1.1);
}


/* =====================================================
   FLOATING IMAGE
===================================================== */

.craft-floating-image {
    position: absolute;

    left: -45px;
    bottom: 80px;

    width: 220px;
    height: 270px;

    padding: 8px;

    background: #fff;

    box-shadow:
        0 18px 40px rgba(65, 43, 30, 0.14);

    animation:
        craftFloat 4s ease-in-out infinite;
}

.craft-floating-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


@keyframes craftFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }

}


/* =====================================================
   STATS
===================================================== */

.craft-stats {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 75%;

    display: grid;

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

    padding: 28px 20px;

    background: #f4e7da;

    z-index: 3;
}

.craft-stat {
    text-align: center;

    border-right:
        1px solid #d9c8b9;
}

.craft-stat:last-child {
    border-right: none;
}

.craft-stat strong {
    display: block;

    margin-bottom: 6px;

    color: #a9573c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 35px;

    font-weight: 500;
}

.craft-stat span {
    color: #75675e;

    font-size: 11px;

    line-height: 1.5;
}


/* =====================================================
   REVEAL ANIMATION
===================================================== */

@keyframes craftContentReveal {

    from {
        opacity: 0;
        transform: translateY(35px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1000px) {

    .about-craftsmanship {
        padding: 90px 0;
    }

    .craftsmanship-container {
        grid-template-columns: 1fr;

        gap: 60px;
    }

    .craftsmanship-content {
        max-width: 700px;
    }

    .craftsmanship-visual {
        width: 90%;
        margin: auto;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

    .about-craftsmanship {
        padding: 70px 0;
    }

    .craftsmanship-container {
        width: 90%;

        gap: 45px;
    }

    .craftsmanship-content h2 {
        font-size: 42px;

        letter-spacing: -1px;
    }

    .craftsmanship-intro {
        font-size: 14px;
    }

    .craft-feature {
        gap: 13px;

        margin-bottom: 20px;
    }

    .craft-feature-icon {
        width: 44px;
        height: 44px;

        font-size: 14px;
    }

    .craft-feature h3 {
        font-size: 16px;
    }

    .craft-feature p {
        font-size: 12px;
    }

    .craftsmanship-visual {
        width: 100%;

        min-height: 500px;

        padding-bottom: 75px;
    }

    .craft-main-image {
        height: 390px;

        border-radius: 100px 0 0 0;
    }

    .craft-floating-image {
        left: -10px;

        bottom: 60px;

        width: 135px;
        height: 170px;
    }

    .craft-image-overlay {
        left: 20px;
        bottom: 20px;

        font-size: 11px;
    }

    .craft-play-icon {
        width: 42px;
        height: 42px;
    }

    .craft-stats {
        width: 85%;

        padding: 18px 8px;
    }

    .craft-stat strong {
        font-size: 24px;
    }

    .craft-stat span {
        font-size: 9px;
    }

}

/* =====================================================
   WHY CHOOSE HOMECLAY
===================================================== */

.about-why {
    position: relative;
    padding: 115px 0;
    overflow: hidden;
    background: #f5eadf;
}

.about-why::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: #ead3c3;
    top: -180px;
    right: -100px;
    opacity: 0.5;
}

.about-why-container {
    position: relative;
    width: min(1150px, 90%);
    margin: auto;
}


/* Heading */

.about-why-heading {
    max-width: 700px;
    margin: 0 auto 65px;
    text-align: center;
}

.about-why-heading h2 {
    margin: 0 0 18px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 5vw, 62px);
    line-height: 1.05;
    font-weight: 500;
}

.about-why-heading h2 span {
    color: #a9573c;
    font-style: italic;
}

.about-why-heading p {
    max-width: 570px;
    margin: auto;

    color: #75675e;
    font-size: 14px;
    line-height: 1.8;
}


/* =====================================================
   BENEFITS GRID
===================================================== */

.why-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.why-benefit {
    position: relative;

    padding: 15px 35px 20px;

    text-align: center;

    border-right: 1px solid #ddcdbf;

    transition:
        transform 0.4s ease;
}

.why-benefit:last-child {
    border-right: none;
}


/* Number */

.why-benefit-number {
    position: absolute;
    top: 0;
    right: 25px;

    color: #c9ad9a;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;

    transition:
        color 0.3s ease;
}


/* Icon */

.why-benefit-icon {
    width: 68px;
    height: 68px;

    margin: 10px auto 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f0d9c9;
    color: #a9573c;

    font-size: 22px;

    transition:
        transform 0.45s ease,
        background 0.35s ease,
        color 0.35s ease;
}


/* Heading */

.why-benefit h3 {
    margin: 0 0 10px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;
    font-weight: 600;
}


/* Text */

.why-benefit p {
    margin: 0;

    color: #75675e;

    font-size: 12px;
    line-height: 1.8;
}


/* =====================================================
   HOVER ANIMATION
===================================================== */

.why-benefit:hover {
    transform: translateY(-10px);
}

.why-benefit:hover .why-benefit-icon {
    background: #a9573c;
    color: #fff;

    transform:
        rotate(-8deg)
        scale(1.12);
}

.why-benefit:hover .why-benefit-number {
    color: #a9573c;
}


/* =====================================================
   ANIMATED TOP LINE
===================================================== */

.why-benefit::after {
    content: "";

    position: absolute;

    left: 35px;
    right: 35px;
    bottom: 0;

    height: 2px;

    background: #a9573c;

    transform: scaleX(0);
    transform-origin: center;

    transition:
        transform 0.4s ease;
}

.why-benefit:hover::after {
    transform: scaleX(1);
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 950px) {

    .why-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 50px;
    }

    .why-benefit:nth-child(2) {
        border-right: none;
    }

    .why-benefit:nth-child(3),
    .why-benefit:nth-child(4) {
        padding-top: 30px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

    .about-why {
        padding: 75px 0;
    }

    .about-why-heading {
        margin-bottom: 45px;
    }

    .about-why-heading h2 {
        font-size: 40px;
    }

    .about-why-heading p {
        font-size: 13px;
    }

    .why-benefits-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .why-benefit {
        padding: 30px 25px 35px;

        border-right: none;
        border-bottom: 1px solid #ddcdbf;
    }

    .why-benefit:last-child {
        border-bottom: none;
    }

    .why-benefit-number {
        right: 10px;
    }

    .why-benefit-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 20px;
    }

}



/* =====================================================
   OUR PROMISE
===================================================== */

.about-promise {
    position: relative;
    padding: 120px 0;
    overflow: hidden;
    background: #fbf7f1;
}

.promise-container {
    width: min(1200px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: center;
    gap: 90px;
}


/* =====================================================
   IMAGE
===================================================== */

.promise-image {
    position: relative;

    height: 570px;

    overflow: hidden;

    border-radius: 0 150px 0 0;

    opacity: 0;
    animation: promiseImageReveal 1s ease forwards;
}

.promise-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 60%,
            rgba(45, 31, 24, 0.55)
        );

    pointer-events: none;
}

.promise-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 1.2s ease;
}

.promise-image:hover img {
    transform: scale(1.06);
}


/* Image label */

.promise-image-label {
    position: absolute;

    left: 30px;
    bottom: 28px;

    z-index: 2;

    color: #fff;
}

.promise-image-label span {
    display: block;

    margin-bottom: 5px;

    font-size: 9px;
    font-weight: 800;
    letter-spacing: 3px;
}

.promise-image-label strong {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;
    font-weight: 500;
}


/* =====================================================
   CONTENT
===================================================== */

.promise-content {
    max-width: 560px;

    opacity: 0;
    animation: promiseContentReveal 1s ease forwards;
    animation-delay: 0.25s;
}

.promise-content h2 {
    margin: 0 0 25px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(45px, 5vw, 65px);

    line-height: 1.02;

    font-weight: 500;
}

.promise-content h2 span {
    color: #a9573c;
    font-style: italic;
}

.promise-content > p {
    margin: 0 0 35px;

    color: #675b53;

    font-size: 15px;

    line-height: 1.85;
}


/* =====================================================
   PROMISE POINTS
===================================================== */

.promise-points {
    display: flex;
    flex-direction: column;
    gap: 20px;

    margin-bottom: 35px;
}

.promise-point {
    display: flex;
    align-items: center;

    gap: 16px;

    padding-bottom: 18px;

    border-bottom: 1px solid #e3d6ca;

    transition:
        transform 0.35s ease;
}

.promise-point:hover {
    transform: translateX(8px);
}

.promise-point > i {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f0d9c9;
    color: #a9573c;

    font-size: 15px;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease;
}

.promise-point:hover > i {
    background: #a9573c;
    color: #fff;

    transform:
        rotate(-8deg)
        scale(1.08);
}

.promise-point strong {
    display: block;

    margin-bottom: 3px;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;
}

.promise-point span {
    color: #75675e;

    font-size: 12px;
}


/* =====================================================
   BUTTON
===================================================== */

.promise-btn {
    display: inline-flex;
    align-items: center;

    gap: 11px;

    padding: 15px 24px;

    background: #a9573c;
    color: #fff;

    text-decoration: none;

    font-size: 13px;
    font-weight: 700;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.promise-btn:hover {
    background: #873f2c;
    transform: translateY(-3px);
}


/* =====================================================
   ANIMATIONS
===================================================== */

@keyframes promiseImageReveal {

    from {
        opacity: 0;
        transform: translateX(-50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }

}

@keyframes promiseContentReveal {

    from {
        opacity: 0;
        transform: translateX(50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 900px) {

    .about-promise {
        padding: 90px 0;
    }

    .promise-container {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .promise-image {
        height: 500px;
    }

    .promise-content {
        max-width: 700px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

    .about-promise {
        padding: 70px 0;
    }

    .promise-container {
        width: 90%;
        gap: 40px;
    }

    .promise-image {
        height: 400px;

        border-radius: 0 90px 0 0;
    }

    .promise-content h2 {
        font-size: 42px;
    }

    .promise-content > p {
        font-size: 14px;
    }

    .promise-point {
        gap: 12px;
    }

    .promise-point > i {
        width: 40px;
        height: 40px;
        font-size: 13px;
    }

}


/* =====================================================
   ABOUT NEWSLETTER
===================================================== */

.about-newsletter {
    position: relative;

    min-height: 300px;

    display: grid;
    grid-template-columns: 1fr 1.25fr 1fr;

    align-items: stretch;

    overflow: hidden;

    background: #ead8cb;
}


/* Images */

.about-newsletter-image {
    overflow: hidden;
}

.about-newsletter-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 1s ease;
}

.about-newsletter-image:hover img {
    transform: scale(1.06);
}


/* Content */

.about-newsletter-content {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 50px 35px;

    text-align: center;

    animation:
        newsletterFadeUp 0.9s ease both;
}

.about-newsletter-content > span {
    margin-bottom: 10px;

    color: #a9573c;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 2.5px;
}

.about-newsletter-content h2 {
    margin: 0;

    color: #35251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(32px, 3.5vw, 46px);

    line-height: 1;

    font-weight: 500;
}

.about-newsletter-content p {
    max-width: 420px;

    margin: 15px auto 20px;

    color: #75675e;

    font-size: 11px;

    line-height: 1.6;
}


/* Form */

.about-newsletter-form {
    width: min(440px, 100%);

    display: flex;

    gap: 6px;
}

.about-newsletter-input {
    flex: 1;

    height: 46px;

    display: flex;
    align-items: center;

    gap: 9px;

    padding: 0 13px;

    background: #fff;

    border: 1px solid transparent;

    transition:
        border-color 0.3s ease;
}

.about-newsletter-input:focus-within {
    border-color: #a9573c;
}

.about-newsletter-input i {
    color: #a9573c;
}

.about-newsletter-input input {
    width: 100%;

    border: none;
    outline: none;

    background: transparent;

    color: #35251f;

    font-size: 12px;
}

.about-newsletter-input input::placeholder {
    color: #9b8d83;
}

.about-newsletter-form button {
    height: 46px;

    padding: 0 20px;

    display: inline-flex;
    align-items: center;

    gap: 7px;

    border: none;

    background: #a9573c;

    color: #fff;

    font-size: 11px;
    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.about-newsletter-form button:hover {
    background: #873f2c;

    transform: translateY(-2px);
}


/* Animation */

@keyframes newsletterFadeUp {

    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 700px) {

    .about-newsletter {
        display: block;

        min-height: auto;
    }

    .about-newsletter-image {
        display: none;
    }

    .about-newsletter-content {
        padding: 65px 20px;
    }

    .about-newsletter-content h2 {
        font-size: 34px;
    }

    .about-newsletter-content p {
        max-width: 340px;

        font-size: 12px;
    }

    .about-newsletter-form {
        flex-direction: column;

        gap: 8px;
    }

    .about-newsletter-input,
    .about-newsletter-form button {
        width: 100%;
    }

}


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

.contact-hero {
    position: relative;
    width: 100%;
    min-height: 560px;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: #f5eadf;
}

.contact-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.contact-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    animation: contactHeroZoom 12s ease-in-out infinite alternate;
}

@keyframes contactHeroZoom {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.06);
    }
}


/* Overlay */

.contact-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(246, 237, 226, 0.97) 0%,
            rgba(246, 237, 226, 0.90) 28%,
            rgba(246, 237, 226, 0.45) 55%,
            rgba(30, 20, 15, 0.12) 100%
        );
}


/* Container */

.contact-hero-container {
    position: relative;
    z-index: 2;

    width: min(1200px, 90%);
    margin: 0 auto;
}


/* Content */

.contact-hero-content {
    max-width: 620px;
    padding: 80px 0;
}


/* Breadcrumb */

.contact-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 35px;

    font-size: 14px;
    font-weight: 500;
    color: #5d5048;
}

.contact-breadcrumb a {
    color: #332820;
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-breadcrumb a:hover {
    color: #a9573c;
}

.contact-breadcrumb span:nth-child(2) {
    color: #a9573c;
}


/* Eyebrow */

.contact-hero-eyebrow {
    position: relative;

    display: inline-flex;
    align-items: center;
    gap: 15px;

    color: #a9573c;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 3px;

    margin-bottom: 18px;
}

.contact-hero-eyebrow::after {
    content: "";

    width: 65px;
    height: 1px;

    background: #a9573c;
}


/* Heading */

.contact-hero h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(58px, 7vw, 100px);
    line-height: 0.95;
    font-weight: 500;

    color: #1d1815;
    letter-spacing: -3px;
}

.contact-hero h1 span {
    color: #a9573c;
    font-style: italic;
}


/* Description */

.contact-hero p {
    max-width: 570px;

    margin: 28px 0 0;

    font-size: 18px;
    line-height: 1.7;

    color: #514740;
}


/* Decorative line */

.contact-hero-line {
    width: 70px;
    height: 3px;

    margin-top: 28px;

    background: #a9573c;
}


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

@media (max-width: 900px) {

    .contact-hero {
        min-height: 500px;
    }

    .contact-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(246, 237, 226, 0.96) 0%,
                rgba(246, 237, 226, 0.78) 55%,
                rgba(246, 237, 226, 0.35) 100%
            );
    }

    .contact-hero-content {
        max-width: 560px;
    }

    .contact-hero h1 {
        font-size: clamp(55px, 10vw, 80px);
    }
}


@media (max-width: 600px) {

    .contact-hero {
        min-height: 580px;
        align-items: flex-end;
    }

    .contact-hero-bg img {
        object-position: 65% center;
    }

    .contact-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(246, 237, 226, 0.18) 0%,
                rgba(246, 237, 226, 0.45) 35%,
                rgba(246, 237, 226, 0.96) 70%,
                rgba(246, 237, 226, 1) 100%
            );
    }

    .contact-hero-container {
        width: 88%;
    }

    .contact-hero-content {
        padding: 55px 0 45px;
    }

    .contact-breadcrumb {
        margin-bottom: 22px;
        font-size: 13px;
    }

    .contact-hero-eyebrow {
        font-size: 11px;
        letter-spacing: 2.5px;
    }

    .contact-hero h1 {
        font-size: 58px;
        line-height: 0.95;
        letter-spacing: -2px;
    }

    .contact-hero p {
        font-size: 15px;
        line-height: 1.6;
        margin-top: 20px;
        max-width: 430px;
    }

    .contact-hero-line {
        margin-top: 22px;
        width: 55px;
    }
}

/* ========================================
   CONTACT MAIN SECTION
======================================== */

.contact-main {
    padding: 110px 0;
    background: #fbf6f0;
}

.contact-main-container {
    width: min(1200px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 80px;

    align-items: start;
}


/* ========================================
   LEFT CONTACT INFORMATION
======================================== */

.contact-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 15px;

    color: #a9573c;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.contact-section-eyebrow::after {
    content: "";

    width: 70px;
    height: 1px;

    background: #a9573c;
}


.contact-info h2 {
    margin: 18px 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 5vw, 72px);
    line-height: 0.98;
    font-weight: 500;

    color: #211b17;
    letter-spacing: -2px;
}

.contact-info h2 span {
    color: #a9573c;
    font-style: italic;
}


.contact-info-intro {
    max-width: 430px;

    font-size: 16px;
    line-height: 1.7;

    color: #62574f;

    margin-bottom: 40px;
}


/* ========================================
   CONTACT ITEMS
======================================== */

.contact-info-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;

    margin-bottom: 27px;
}

.contact-info-icon {
    flex: 0 0 52px;

    width: 52px;
    height: 52px;

    border-radius: 50%;

    background: #f0dfcf;

    color: #a9573c;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 18px;

    transition: all 0.3s ease;
}

.contact-info-item:hover .contact-info-icon {
    background: #a9573c;
    color: #fff;

    transform: translateY(-3px) rotate(-5deg);
}


.contact-info-item h3 {
    margin: 2px 0 5px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
    font-weight: 600;

    color: #29211c;
}


.contact-info-item a,
.contact-info-item span {
    display: block;

    font-size: 14px;
    line-height: 1.6;

    color: #70645c;

    text-decoration: none;
}

.contact-info-item a {
    color: #a9573c;
    font-weight: 600;

    margin-bottom: 2px;
}

.contact-info-item a:hover {
    text-decoration: underline;
}


/* ========================================
   FORM BOX
======================================== */

.contact-form-box {
    padding: 48px;

    background: #f5ebe1;

    border-radius: 18px;

    box-shadow:
        0 20px 60px rgba(72, 45, 30, 0.07);
}


.contact-form-heading > span {
    color: #a9573c;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
}


.contact-form-heading h2 {
    margin: 13px 0 32px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 38px;
    line-height: 1.1;
    font-weight: 500;

    color: #251d18;
}


/* ========================================
   FORM
======================================== */

.contact-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;

    margin-bottom: 15px;
}


.contact-field {
    position: relative;

    display: flex;
    align-items: flex-start;

    background: #fffdf9;

    border: 1px solid #e6d9ce;

    border-radius: 7px;

    transition: all 0.3s ease;
}


.contact-field:focus-within {
    border-color: #a9573c;

    box-shadow:
        0 0 0 3px rgba(169, 87, 60, 0.08);
}


.contact-field > i {
    position: absolute;

    left: 17px;
    top: 18px;

    color: #a9573c;

    font-size: 15px;

    pointer-events: none;
}


.contact-field input,
.contact-field select,
.contact-field textarea {
    width: 100%;

    border: none;
    outline: none;

    background: transparent;

    font-family: inherit;

    font-size: 14px;

    color: #332a24;
}


.contact-field input,
.contact-field select {
    height: 54px;

    padding: 0 15px 0 47px;
}


.contact-field select {
    appearance: none;

    cursor: pointer;
}


.contact-field textarea {
    padding: 17px 15px 17px 47px;

    resize: vertical;

    min-height: 145px;

    line-height: 1.6;
}


.contact-message {
    margin-bottom: 18px;
}


/* ========================================
   SUBMIT BUTTON
======================================== */

.contact-submit {
    width: 100%;

    height: 54px;

    border: none;
    border-radius: 5px;

    background: #a9573c;
    color: #fff;

    font-family: inherit;

    font-size: 14px;
    font-weight: 600;

    letter-spacing: 0.3px;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    transition: all 0.3s ease;
}

.contact-submit:hover {
    background: #7f3e2b;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(169, 87, 60, 0.22);
}

.contact-submit i {
    transition: transform 0.3s ease;
}

.contact-submit:hover i {
    transform: translateX(5px);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .contact-main {
        padding: 80px 0;
    }

    .contact-main-container {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .contact-info-intro {
        max-width: 650px;
    }

    .contact-form-box {
        max-width: 750px;
        width: 100%;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .contact-main {
        padding: 65px 0;
    }

    .contact-main-container {
        width: 88%;
        gap: 45px;
    }

    .contact-info h2 {
        font-size: 50px;
    }

    .contact-info-intro {
        font-size: 15px;
        margin-bottom: 32px;
    }

    .contact-info-item {
        gap: 14px;
        margin-bottom: 23px;
    }

    .contact-info-icon {
        flex-basis: 46px;

        width: 46px;
        height: 46px;

        font-size: 16px;
    }

    .contact-info-item h3 {
        font-size: 17px;
    }

    .contact-info-item a,
    .contact-info-item span {
        font-size: 13px;
    }


    /* Form */

    .contact-form-box {
        padding: 28px 20px;

        border-radius: 14px;
    }

    .contact-form-heading h2 {
        font-size: 31px;
        margin-bottom: 25px;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
        gap: 12px;

        margin-bottom: 12px;
    }

    .contact-field input,
    .contact-field select {
        height: 52px;
    }

    .contact-field textarea {
        min-height: 130px;
    }

    .contact-submit {
        height: 52px;
    }
}


/* ========================================
   CONTACT HIGHLIGHT
======================================== */

.contact-highlight {
    padding: 0 0 110px;
    background: #fbf6f0;
}

.contact-highlight-container {
    width: min(1200px, 90%);
    margin: auto;
}


/* ========================================
   IMAGE CARD
======================================== */

.contact-highlight-image {
    position: relative;

    width: 100%;
    height: 390px;

    overflow: hidden;

    border-radius: 18px;
}

.contact-highlight-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;

    transition: transform 0.8s ease;
}

.contact-highlight-image:hover img {
    transform: scale(1.05);
}


/* Overlay */

.contact-highlight-overlay {
    position: absolute;
    inset: 0;

    padding: 55px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    background:
        linear-gradient(
            90deg,
            rgba(38, 24, 17, 0.78) 0%,
            rgba(38, 24, 17, 0.52) 42%,
            rgba(38, 24, 17, 0.10) 100%
        );

    color: #fff;
}


.contact-highlight-overlay > span {
    font-size: 11px;
    font-weight: 700;

    letter-spacing: 4px;

    color: #e7b69c;

    margin-bottom: 17px;
}


.contact-highlight-overlay h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(42px, 5vw, 68px);

    line-height: 0.98;

    font-weight: 500;

    letter-spacing: -2px;
}


.contact-highlight-overlay h2 em {
    color: #e9b59b;
    font-style: italic;
}


.contact-highlight-overlay p {
    margin: 24px 0 0;

    font-size: 15px;

    color: rgba(255,255,255,0.85);
}


/* ========================================
   SUPPORT GRID
======================================== */

.contact-support-grid {
    display: grid;

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

    margin-top: 25px;

    background: #f5e9dd;

    border-radius: 14px;

    overflow: hidden;
}


.contact-support-item {
    position: relative;

    text-align: center;

    padding: 32px 25px;

    transition: background 0.3s ease;
}

.contact-support-item + .contact-support-item {
    border-left: 1px solid #dfcfc1;
}


.contact-support-item:hover {
    background: #f0dfcf;
}


/* Icon */

.contact-support-icon {
    width: 54px;
    height: 54px;

    margin: 0 auto 15px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff9f3;

    color: #a9573c;

    font-size: 18px;

    transition: all 0.3s ease;
}


.contact-support-item:hover .contact-support-icon {
    background: #a9573c;
    color: #fff;

    transform: translateY(-4px) rotate(-5deg);
}


.contact-support-item h3 {
    margin: 0 0 7px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 19px;

    font-weight: 600;

    color: #2b211b;
}


.contact-support-item p {
    margin: 0;

    font-size: 13px;

    line-height: 1.6;

    color: #75685f;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 768px) {

    .contact-highlight {
        padding-bottom: 75px;
    }

    .contact-highlight-image {
        height: 350px;
    }

    .contact-highlight-overlay {
        padding: 40px;
    }

    .contact-support-grid {
        grid-template-columns: 1fr;
    }

    .contact-support-item + .contact-support-item {
        border-left: none;
        border-top: 1px solid #dfcfc1;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .contact-highlight-container {
        width: 88%;
    }

    .contact-highlight-image {
        height: 430px;
        border-radius: 14px;
    }

    .contact-highlight-image img {
        object-position: 60% center;
    }

    .contact-highlight-overlay {
        padding: 30px;

        justify-content: flex-end;

        background:
            linear-gradient(
                180deg,
                rgba(38, 24, 17, 0.05) 10%,
                rgba(38, 24, 17, 0.40) 42%,
                rgba(38, 24, 17, 0.88) 100%
            );
    }

    .contact-highlight-overlay h2 {
        font-size: 46px;
    }

    .contact-highlight-overlay p {
        margin-top: 18px;
    }

    .contact-support-item {
        padding: 28px 20px;
    }
}

/* ========================================
   CONTACT LOCATION
======================================== */

.contact-location {
    padding: 110px 0;
    background: #f5ebe1;
}

.contact-location-container {
    width: min(1200px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 1.15fr 0.85fr;

    gap: 70px;

    align-items: stretch;
}


/* ========================================
   MAP
======================================== */

.contact-map {
    min-height: 510px;

    overflow: hidden;

    border-radius: 18px;

    background: #e6ddd4;

    box-shadow:
        0 20px 50px rgba(64, 42, 29, 0.08);
}

.contact-map iframe {
    width: 100%;
    height: 100%;

    min-height: 510px;

    border: 0;

    filter: grayscale(0.15) sepia(0.08);
}


/* ========================================
   LOCATION CONTENT
======================================== */

.contact-location-info {
    display: flex;
    flex-direction: column;

    justify-content: center;

    padding: 20px 0;
}


.contact-location-info h2 {
    margin: 20px 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(42px, 4.5vw, 62px);

    line-height: 1;

    font-weight: 500;

    letter-spacing: -2px;

    color: #241c17;
}

.contact-location-info h2 span {
    color: #a9573c;
    font-style: italic;
}


.location-intro {
    max-width: 480px;

    margin: 0 0 35px;

    font-size: 15px;

    line-height: 1.8;

    color: #6d625a;
}


/* ========================================
   LOCATION DETAILS
======================================== */

.location-detail {
    display: flex;
    align-items: flex-start;

    gap: 18px;

    padding: 20px 0;

    border-top: 1px solid #dccbc0;
}

.location-detail:last-of-type {
    border-bottom: 1px solid #dccbc0;
}


.location-detail-icon {
    flex: 0 0 48px;

    width: 48px;
    height: 48px;

    border-radius: 50%;

    background: #fff9f3;

    color: #a9573c;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 17px;

    transition: all 0.3s ease;
}

.location-detail:hover .location-detail-icon {
    background: #a9573c;
    color: #fff;

    transform: translateY(-3px);
}


.location-detail h3 {
    margin: 0 0 5px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;

    font-weight: 600;

    color: #2c231e;
}


.location-detail p {
    margin: 0;

    font-size: 14px;

    line-height: 1.7;

    color: #70645c;
}


/* ========================================
   DIRECTION BUTTON
======================================== */

.location-direction-btn {
    align-self: flex-start;

    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-top: 30px;

    padding: 15px 25px;

    background: #a9573c;
    color: #fff;

    text-decoration: none;

    font-size: 14px;
    font-weight: 600;

    border-radius: 4px;

    transition: all 0.3s ease;
}

.location-direction-btn:hover {
    background: #7f3e2b;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(169, 87, 60, 0.20);
}

.location-direction-btn i {
    transition: transform 0.3s ease;
}

.location-direction-btn:hover i {
    transform: translateX(5px);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .contact-location {
        padding: 80px 0;
    }

    .contact-location-container {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .contact-map {
        min-height: 420px;
    }

    .contact-map iframe {
        min-height: 420px;
    }

    .contact-location-info {
        padding: 0;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .contact-location {
        padding: 65px 0;
    }

    .contact-location-container {
        width: 88%;
        gap: 40px;
    }

    .contact-map {
        min-height: 330px;

        border-radius: 14px;
    }

    .contact-map iframe {
        min-height: 330px;
    }

    .contact-location-info h2 {
        font-size: 45px;

        letter-spacing: -1.5px;
    }

    .location-intro {
        font-size: 14px;
    }

    .location-detail {
        gap: 14px;
        padding: 17px 0;
    }

    .location-detail-icon {
        flex-basis: 44px;

        width: 44px;
        height: 44px;

        font-size: 15px;
    }

    .location-detail h3 {
        font-size: 17px;
    }

    .location-detail p {
        font-size: 13px;
    }

    .location-direction-btn {
        width: 100%;

        justify-content: center;

        margin-top: 25px;
    }
}

/* ========================================
   CONTACT NEWSLETTER
======================================== */

.contact-newsletter {
    position: relative;

    min-height: 460px;

    overflow: hidden;

    background: #a9573c;

    display: grid;
    grid-template-columns: 0.8fr 1.4fr 0.8fr;

    align-items: stretch;
}


/* ========================================
   SIDE IMAGES
======================================== */

.contact-newsletter-image {
    overflow: hidden;
}

.contact-newsletter-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.contact-newsletter-image:hover img {
    transform: scale(1.06);
}


/* ========================================
   CONTENT
======================================== */

.contact-newsletter-content {
    position: relative;
    z-index: 2;

    padding: 75px 55px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    text-align: center;

    color: #fff;
}


.contact-newsletter-eyebrow {
    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;

    color: #f5d2bd;

    margin-bottom: 18px;
}


.contact-newsletter-content h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(40px, 4.5vw, 62px);

    line-height: 1;

    font-weight: 500;

    letter-spacing: -2px;
}

.contact-newsletter-content h2 span {
    font-style: italic;

    color: #f4d1bd;
}


.contact-newsletter-content > p {
    max-width: 530px;

    margin: 24px auto 30px;

    font-size: 15px;

    line-height: 1.7;

    color: rgba(255,255,255,0.86);
}


/* ========================================
   FORM
======================================== */

.contact-newsletter-form {
    width: min(520px, 100%);

    display: grid;
    grid-template-columns: 1fr auto;

    gap: 10px;
}


.contact-newsletter-input {
    position: relative;

    display: flex;
    align-items: center;

    background: #fff;

    border-radius: 4px;

    overflow: hidden;
}


.contact-newsletter-input i {
    position: absolute;

    left: 17px;

    color: #a9573c;

    font-size: 15px;
}


.contact-newsletter-input input {
    width: 100%;

    height: 54px;

    border: none;
    outline: none;

    background: transparent;

    padding: 0 15px 0 45px;

    font-family: inherit;

    font-size: 14px;

    color: #30251f;
}


.contact-newsletter-input input::placeholder {
    color: #9a8e85;
}


.contact-newsletter-form button {
    height: 54px;

    padding: 0 25px;

    border: 1px solid rgba(255,255,255,0.7);

    border-radius: 4px;

    background: transparent;

    color: #fff;

    font-family: inherit;

    font-size: 14px;

    font-weight: 600;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    transition: all 0.3s ease;
}


.contact-newsletter-form button:hover {
    background: #fff;

    color: #a9573c;
}


.contact-newsletter-form button i {
    transition: transform 0.3s ease;
}

.contact-newsletter-form button:hover i {
    transform: translateX(5px);
}


.contact-newsletter-content small {
    display: block;

    margin-top: 15px;

    font-size: 11px;

    color: rgba(255,255,255,0.65);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .contact-newsletter {
        grid-template-columns: 1fr 1.8fr 1fr;
    }

    .contact-newsletter-content {
        padding: 60px 30px;
    }

    .contact-newsletter-form {
        grid-template-columns: 1fr;
    }

    .contact-newsletter-form button {
        width: 100%;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .contact-newsletter {
        display: block;

        min-height: auto;
    }

    .contact-newsletter-image {
        display: none;
    }

    .contact-newsletter-content {
        padding: 70px 22px;
    }

    .contact-newsletter-content h2 {
        font-size: 43px;

        letter-spacing: -1.5px;
    }

    .contact-newsletter-content > p {
        font-size: 14px;

        margin-top: 20px;
    }

    .contact-newsletter-form {
        width: 100%;

        grid-template-columns: 1fr;

        gap: 10px;
    }

    .contact-newsletter-input input {
        height: 52px;
    }

    .contact-newsletter-form button {
        height: 52px;
    }

    .contact-newsletter-content small {
        line-height: 1.5;
    }
}

/* ======================================================about page css end========================================================= */


/* journal page css */

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

.journal-hero {
    position: relative;

    width: 100%;
    min-height: 620px;

    overflow: hidden;

    display: flex;
    align-items: center;

    background: #f5eadf;
}


/* Background */

.journal-hero-bg {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;
}

.journal-hero-bg img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    animation: journalHeroZoom 14s ease-in-out infinite alternate;
}

@keyframes journalHeroZoom {

    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.06);
    }

}


/* Overlay */

.journal-hero-overlay {
    position: absolute;
    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(247, 238, 228, 0.98) 0%,
            rgba(247, 238, 228, 0.91) 30%,
            rgba(247, 238, 228, 0.50) 55%,
            rgba(35, 25, 18, 0.10) 100%
        );
}


/* Container */

.journal-hero-container {
    position: relative;
    z-index: 2;

    width: min(1200px, 90%);

    margin: 0 auto;
}


/* Content */

.journal-hero-content {
    max-width: 650px;

    padding: 80px 0;
}


/* Breadcrumb */

.journal-breadcrumb {
    display: flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 32px;

    font-size: 14px;

    color: #665b53;
}

.journal-breadcrumb a {
    color: #312821;

    text-decoration: none;

    transition: color 0.3s ease;
}

.journal-breadcrumb a:hover {
    color: #a9573c;
}

.journal-breadcrumb span:nth-child(2) {
    color: #a9573c;
}


/* Eyebrow */

.journal-hero-eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 15px;

    margin-bottom: 18px;

    color: #a9573c;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 3px;
}

.journal-hero-eyebrow::after {
    content: "";

    width: 70px;
    height: 1px;

    background: #a9573c;
}


/* Heading */

.journal-hero h1 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 7vw, 94px);

    line-height: 0.96;

    font-weight: 500;

    letter-spacing: -3px;

    color: #211a16;
}

.journal-hero h1 span {
    color: #a9573c;

    font-style: italic;
}


/* Description */

.journal-hero p {
    max-width: 560px;

    margin: 28px 0 30px;

    font-size: 17px;

    line-height: 1.7;

    color: #5f544c;
}


/* Button */

.journal-hero-btn {
    display: inline-flex;
    align-items: center;

    gap: 12px;

    padding: 15px 24px;

    background: #a9573c;

    color: #fff;

    text-decoration: none;

    border-radius: 4px;

    font-size: 14px;

    font-weight: 600;

    transition: all 0.3s ease;
}

.journal-hero-btn:hover {
    background: #7f3e2b;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(169, 87, 60, 0.20);
}

.journal-hero-btn i {
    transition: transform 0.3s ease;
}

.journal-hero-btn:hover i {
    transform: translateX(5px);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .journal-hero {
        min-height: 560px;
    }

    .journal-hero h1 {
        font-size: clamp(52px, 9vw, 78px);
    }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .journal-hero {
        min-height: 600px;

        align-items: flex-end;
    }

    .journal-hero-bg img {
        object-position: 65% center;
    }

    .journal-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(247, 238, 228, 0.10) 0%,
                rgba(247, 238, 228, 0.38) 35%,
                rgba(247, 238, 228, 0.94) 68%,
                rgba(247, 238, 228, 1) 100%
            );
    }

    .journal-hero-container {
        width: 88%;
    }

    .journal-hero-content {
        padding: 50px 0 42px;
    }

    .journal-breadcrumb {
        margin-bottom: 22px;

        font-size: 13px;
    }

    .journal-hero-eyebrow {
        font-size: 10px;

        letter-spacing: 2.5px;

        gap: 10px;
    }

    .journal-hero-eyebrow::after {
        width: 45px;
    }

    .journal-hero h1 {
        font-size: 53px;

        line-height: 0.98;

        letter-spacing: -2px;
    }

    .journal-hero p {
        font-size: 14px;

        line-height: 1.65;

        margin: 20px 0 24px;
    }

    .journal-hero-btn {
        padding: 14px 20px;
    }

}

/* ========================================
   JOURNAL FEATURED STORY
======================================== */

.journal-featured {
    padding: 80px 0 100px;

    background: #fbf6f0;
}

.journal-featured-container {
    width: min(1100px, 90%);
    margin: auto;

    display: grid;
    grid-template-columns: 1.15fr 0.85fr;

    background: #f5ebe1;

    border-radius: 16px;

    overflow: hidden;

    animation: journalFeaturedReveal 0.9s ease both;
}

@keyframes journalFeaturedReveal {

    from {
        opacity: 0;
        transform: translateY(45px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


/* ========================================
   IMAGE
======================================== */

.journal-featured-image {
    position: relative;

    min-height: 470px;

    overflow: hidden;
}

.journal-featured-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.9s ease;
}

.journal-featured-image:hover img {
    transform: scale(1.06);
}


/* Image Count */

.journal-featured-count {
    position: absolute;

    left: 25px;
    bottom: 22px;

    z-index: 3;

    color: #fff;

    font-size: 14px;

    font-weight: 600;
}

.journal-featured-count small {
    opacity: 0.65;

    font-size: 12px;
}


/* ========================================
   IMAGE ARROWS
======================================== */

.journal-featured-arrow {
    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    z-index: 4;

    width: 40px;
    height: 40px;

    border: none;

    border-radius: 50%;

    background: rgba(255,255,255,0.92);

    color: #4a3429;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    transition: all 0.3s ease;
}

.journal-featured-arrow:hover {
    background: #a9573c;

    color: #fff;

    transform:
        translateY(-50%)
        scale(1.08);
}

.journal-featured-arrow.prev {
    left: 20px;
}

.journal-featured-arrow.next {
    right: 20px;
}


/* ========================================
   CONTENT
======================================== */

.journal-featured-content {
    padding: 55px 50px;

    display: flex;
    flex-direction: column;

    justify-content: center;

    animation: journalContentReveal 1s ease 0.15s both;
}

@keyframes journalContentReveal {

    from {
        opacity: 0;
        transform: translateX(35px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }

}


.journal-featured-eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 14px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3px;

    margin-bottom: 17px;
}

.journal-featured-eyebrow::after {
    content: "";

    width: 65px;
    height: 1px;

    background: #a9573c;
}


/* Heading */

.journal-featured-content h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(38px, 4vw, 53px);

    line-height: 1.02;

    font-weight: 500;

    letter-spacing: -1.5px;

    color: #251d18;
}

.journal-featured-content h2 span {
    font-style: italic;

    color: #a9573c;
}


/* Description */

.journal-featured-content > p {
    max-width: 430px;

    margin: 22px 0 25px;

    font-size: 15px;

    line-height: 1.75;

    color: #6c6058;
}


/* Read Button */

.journal-read-btn {
    align-self: flex-start;

    display: inline-flex;

    align-items: center;

    gap: 11px;

    padding: 14px 21px;

    background: #a9573c;

    color: #fff;

    text-decoration: none;

    border-radius: 4px;

    font-size: 13px;

    font-weight: 600;

    transition: all 0.3s ease;
}

.journal-read-btn:hover {
    background: #7f3e2b;

    transform: translateY(-2px);

    box-shadow:
        0 9px 22px rgba(169,87,60,0.2);
}

.journal-read-btn i {
    transition: transform 0.3s ease;
}

.journal-read-btn:hover i {
    transform: translateX(5px);
}


/* ========================================
   META
======================================== */

.journal-meta {
    display: flex;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 32px;

    padding-top: 20px;

    border-top: 1px solid #ddcec2;
}

.journal-meta span {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    font-size: 11px;

    color: #756960;
}

.journal-meta i {
    color: #a9573c;

    font-size: 13px;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 850px) {

    .journal-featured-container {
        grid-template-columns: 1fr;
    }

    .journal-featured-image {
        min-height: 400px;
    }

    .journal-featured-content {
        padding: 45px;
    }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .journal-featured {
        padding: 55px 0 70px;
    }

    .journal-featured-container {
        width: 88%;

        border-radius: 13px;
    }

    .journal-featured-image {
        min-height: 310px;
    }

    .journal-featured-arrow {
        width: 36px;
        height: 36px;

        font-size: 12px;
    }

    .journal-featured-arrow.prev {
        left: 12px;
    }

    .journal-featured-arrow.next {
        right: 12px;
    }

    .journal-featured-content {
        padding: 32px 25px;
    }

    .journal-featured-content h2 {
        font-size: 39px;
    }

    .journal-featured-content > p {
        font-size: 14px;
    }

    .journal-meta {
        gap: 12px;
    }

    .journal-meta span {
        font-size: 10px;
    }

}


/* ========================================
   REDUCED MOTION
======================================== */

@media (prefers-reduced-motion: reduce) {

    .journal-featured-container,
    .journal-featured-content,
    .journal-featured-image img {
        animation: none;
        transition: none;
    }

}

/* ========================================
   JOURNAL CATEGORIES
======================================== */

.journal-categories {
    padding: 30px 0 105px;

    background: #fbf6f0;
}

.journal-categories-container {
    width: min(1200px, 90%);
    margin: auto;
}


/* ========================================
   SECTION HEADING
======================================== */

.journal-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 35px;
}

.journal-section-eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 14px;

    color: #a9573c;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3px;

    margin-bottom: 12px;
}

.journal-section-eyebrow::after {
    content: "";

    width: 65px;
    height: 1px;

    background: #a9573c;
}


.journal-section-heading h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 5vw, 62px);

    line-height: 1;

    font-weight: 500;

    letter-spacing: -2px;

    color: #251d18;
}

.journal-section-heading h2 span {
    color: #a9573c;

    font-style: italic;
}


/* View all */

.journal-view-all {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding-bottom: 7px;

    border-bottom: 1px solid #a9573c;

    color: #62483b;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    white-space: nowrap;

    transition: all 0.3s ease;
}

.journal-view-all:hover {
    color: #a9573c;

    gap: 13px;
}


/* ========================================
   CATEGORY GRID
======================================== */

.journal-category-grid {
    display: grid;

    grid-template-columns:
        repeat(5, 1fr);

    gap: 16px;
}


/* ========================================
   CARD
======================================== */

.journal-category-card {
    display: block;

    background: #f5ebe1;

    border-radius: 10px;

    overflow: hidden;

    text-decoration: none;

    opacity: 0;

    animation:
        journalCategoryReveal
        0.7s ease
        forwards;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}


/* Stagger */

.journal-category-card:nth-child(1) {
    animation-delay: 0.1s;
}

.journal-category-card:nth-child(2) {
    animation-delay: 0.2s;
}

.journal-category-card:nth-child(3) {
    animation-delay: 0.3s;
}

.journal-category-card:nth-child(4) {
    animation-delay: 0.4s;
}

.journal-category-card:nth-child(5) {
    animation-delay: 0.5s;
}


@keyframes journalCategoryReveal {

    from {
        opacity: 0;

        transform:
            translateY(35px);
    }

    to {
        opacity: 1;

        transform:
            translateY(0);
    }

}


.journal-category-card:hover {
    transform: translateY(-7px);

    box-shadow:
        0 18px 40px rgba(70, 45, 30, 0.10);
}


/* ========================================
   IMAGE
======================================== */

.journal-category-image {
    position: relative;

    height: 205px;

    overflow: hidden;
}

.journal-category-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.7s ease;
}

.journal-category-card:hover
.journal-category-image img {
    transform: scale(1.08);
}


/* Arrow */

.journal-category-arrow {
    position: absolute;

    right: 12px;
    bottom: 12px;

    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(255,255,255,0.92);

    color: #a9573c;

    font-size: 12px;

    opacity: 0;

    transform: translateY(8px);

    transition: all 0.3s ease;
}

.journal-category-card:hover
.journal-category-arrow {
    opacity: 1;

    transform: translateY(0);
}


/* ========================================
   CONTENT
======================================== */

.journal-category-content {
    padding: 17px 17px 19px;
}

.journal-category-content h3 {
    margin: 0 0 5px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;

    font-weight: 600;

    line-height: 1.15;

    color: #2b211b;
}

.journal-category-content span {
    font-size: 11px;

    color: #82746b;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 1000px) {

    .journal-category-grid {
        grid-template-columns:
            repeat(3, 1fr);
    }

    .journal-category-card:nth-child(4),
    .journal-category-card:nth-child(5) {
        margin-top: 0;
    }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 650px) {

    .journal-categories {
        padding: 20px 0 70px;
    }

    .journal-categories-container {
        width: 88%;
    }

    .journal-section-heading {
        align-items: flex-start;

        flex-direction: column;

        margin-bottom: 25px;

        gap: 18px;
    }

    .journal-section-heading h2 {
        font-size: 43px;
    }

    .journal-category-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 12px;
    }

    .journal-category-image {
        height: 175px;
    }

    .journal-category-content {
        padding: 14px;
    }

    .journal-category-content h3 {
        font-size: 17px;
    }

    .journal-category-arrow {
        opacity: 1;

        transform: none;

        width: 30px;
        height: 30px;
    }

}


/* ========================================
   SMALL MOBILE
======================================== */

@media (max-width: 400px) {

    .journal-category-grid {
        grid-template-columns: 1fr;
    }

    .journal-category-image {
        height: 220px;
    }

}


/* ========================================
   REDUCED MOTION
======================================== */

@media (prefers-reduced-motion: reduce) {

    .journal-category-card,
    .journal-category-image img,
    .journal-category-arrow {
        animation: none;
        transition: none;
    }

    .journal-category-card {
        opacity: 1;
    }

}


/* ========================================
   JOURNAL - LATEST STORIES
======================================== */

.journal-latest {
    padding: 100px 0 115px;
    background: #f5ebe1;
}

.journal-latest-container {
    width: min(1200px, 90%);
    margin: auto;
}


/* ========================================
   HEADING
======================================== */

.journal-latest-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 42px;
}

.journal-latest-heading h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(43px, 5vw, 64px);

    line-height: 1;

    font-weight: 500;

    letter-spacing: -2px;

    color: #261e19;
}

.journal-latest-heading h2 span {
    color: #a9573c;
    font-style: italic;
}


/* View all */

.journal-latest-view {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding-bottom: 7px;

    border-bottom: 1px solid #a9573c;

    color: #5d483d;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    white-space: nowrap;

    transition: all 0.3s ease;
}

.journal-latest-view:hover {
    color: #a9573c;
    gap: 14px;
}


/* ========================================
   ARTICLE GRID
======================================== */

.journal-articles {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 22px;
}


/* ========================================
   ARTICLE CARD
======================================== */

.journal-article {
    background: #fbf6f0;

    border-radius: 10px;

    overflow: hidden;

    opacity: 0;

    animation:
        journalArticleReveal
        0.75s ease forwards;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}


/* Staggered animation */

.journal-article:nth-child(1) {
    animation-delay: 0.1s;
}

.journal-article:nth-child(2) {
    animation-delay: 0.2s;
}

.journal-article:nth-child(3) {
    animation-delay: 0.3s;
}

.journal-article:nth-child(4) {
    animation-delay: 0.4s;
}


@keyframes journalArticleReveal {

    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


.journal-article:hover {
    transform: translateY(-8px);

    box-shadow:
        0 18px 40px rgba(68, 43, 29, 0.10);
}


/* ========================================
   ARTICLE IMAGE
======================================== */

.journal-article-image {
    position: relative;

    display: block;

    height: 270px;

    overflow: hidden;
}

.journal-article-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.8s ease;
}

.journal-article:hover
.journal-article-image img {
    transform: scale(1.08);
}


/* Category Badge */

.journal-article-category {
    position: absolute;

    left: 14px;
    bottom: 14px;

    padding: 7px 10px;

    background: rgba(255,255,255,0.94);

    color: #a9573c;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 1.5px;

    border-radius: 2px;
}


/* ========================================
   CONTENT
======================================== */

.journal-article-content {
    padding: 23px 21px 25px;
}


/* Meta */

.journal-article-meta {
    display: flex;

    align-items: center;

    gap: 7px;

    margin-bottom: 12px;

    color: #897b72;

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: 0.7px;
}


/* Title */

.journal-article-content h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 24px;

    line-height: 1.1;

    font-weight: 500;

    letter-spacing: -0.5px;

    color: #2a211c;
}

.journal-article-content h3 em {
    color: #a9573c;

    font-style: italic;
}


/* Description */

.journal-article-content p {
    margin: 15px 0 19px;

    font-size: 13px;

    line-height: 1.65;

    color: #756960;
}


/* Read Story */

.journal-article-link {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    color: #a9573c;

    text-decoration: none;

    font-size: 12px;

    font-weight: 700;

    transition: gap 0.3s ease;
}

.journal-article-link:hover {
    gap: 14px;
}

.journal-article-link i {
    font-size: 11px;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 1050px) {

    .journal-articles {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 20px;
    }

    .journal-article-image {
        height: 300px;
    }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .journal-latest {
        padding: 70px 0 80px;
    }

    .journal-latest-container {
        width: 88%;
    }

    .journal-latest-heading {
        flex-direction: column;

        align-items: flex-start;

        gap: 20px;

        margin-bottom: 28px;
    }

    .journal-latest-heading h2 {
        font-size: 44px;
    }

    .journal-articles {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .journal-article-image {
        height: 270px;
    }

    .journal-article-content {
        padding: 22px 20px 24px;
    }

    .journal-article-content h3 {
        font-size: 25px;
    }

    .journal-article-content p {
        font-size: 14px;
    }

}


/* ========================================
   REDUCED MOTION
======================================== */

@media (prefers-reduced-motion: reduce) {

    .journal-article,
    .journal-article-image img {
        animation: none;
        transition: none;
    }

    .journal-article {
        opacity: 1;
    }

}


/* ========================================
   JOURNAL NEWSLETTER
======================================== */

.journal-newsletter {
    position: relative;

    min-height: 470px;

    display: grid;

    grid-template-columns:
        0.8fr 1.4fr 0.8fr;

    overflow: hidden;

    background: #f0dfcf;
}


/* ========================================
   SIDE IMAGES
======================================== */

.journal-newsletter-image {
    overflow: hidden;
}

.journal-newsletter-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.9s ease;
}

.journal-newsletter-image:hover img {
    transform: scale(1.07);
}


/* ========================================
   CONTENT
======================================== */

.journal-newsletter-content {
    padding: 70px 50px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

    background: #f0dfcf;
}


.journal-newsletter-eyebrow {
    margin-bottom: 17px;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;

    color: #a9573c;
}


.journal-newsletter-content h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 4.5vw, 62px);

    line-height: 1;

    font-weight: 500;

    letter-spacing: -2px;

    color: #261e19;
}

.journal-newsletter-content h2 em {
    color: #a9573c;

    font-style: italic;
}


.journal-newsletter-content > p {
    max-width: 520px;

    margin: 23px auto 29px;

    font-size: 14px;

    line-height: 1.75;

    color: #6d6058;
}


/* ========================================
   FORM
======================================== */

.journal-newsletter-form {
    width: min(520px, 100%);

    display: grid;

    grid-template-columns: 1fr auto;

    gap: 9px;
}


.journal-newsletter-input {
    position: relative;

    display: flex;

    align-items: center;

    background: #fffdf9;

    border-radius: 4px;

    overflow: hidden;

    border: 1px solid #e3d5c8;

    transition: border-color 0.3s ease;
}


.journal-newsletter-input:focus-within {
    border-color: #a9573c;
}


.journal-newsletter-input i {
    position: absolute;

    left: 16px;

    color: #a9573c;

    font-size: 14px;
}


.journal-newsletter-input input {
    width: 100%;

    height: 53px;

    padding: 0 15px 0 43px;

    border: none;

    outline: none;

    background: transparent;

    font-family: inherit;

    font-size: 13px;

    color: #30251f;
}


.journal-newsletter-input input::placeholder {
    color: #9a8e85;
}


/* Button */

.journal-newsletter-form button {
    height: 53px;

    padding: 0 23px;

    border: none;

    border-radius: 4px;

    background: #a9573c;

    color: #fff;

    font-family: inherit;

    font-size: 13px;

    font-weight: 600;

    cursor: pointer;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    transition: all 0.3s ease;
}


.journal-newsletter-form button:hover {
    background: #7f3e2b;

    transform: translateY(-2px);

    box-shadow:
        0 9px 22px rgba(169,87,60,0.20);
}


.journal-newsletter-form button i {
    transition: transform 0.3s ease;
}

.journal-newsletter-form button:hover i {
    transform: translateX(5px);
}


.journal-newsletter-content small {
    margin-top: 13px;

    font-size: 10px;

    color: #8a7c73;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .journal-newsletter {
        grid-template-columns:
            0.65fr 1.7fr 0.65fr;
    }

    .journal-newsletter-content {
        padding: 60px 25px;
    }

    .journal-newsletter-form {
        grid-template-columns: 1fr;
    }

    .journal-newsletter-form button {
        width: 100%;
    }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .journal-newsletter {
        display: block;

        min-height: auto;
    }

    .journal-newsletter-image {
        display: none;
    }

    .journal-newsletter-content {
        padding: 70px 22px;
    }

    .journal-newsletter-content h2 {
        font-size: 43px;

        letter-spacing: -1.5px;
    }

    .journal-newsletter-content > p {
        font-size: 14px;

        margin-top: 20px;
    }

    .journal-newsletter-form {
        width: 100%;

        grid-template-columns: 1fr;

        gap: 10px;
    }

    .journal-newsletter-input input {
        height: 52px;
    }

    .journal-newsletter-form button {
        height: 52px;
    }

}


/* ========================================
   REDUCED MOTION
======================================== */

@media (prefers-reduced-motion: reduce) {

    .journal-newsletter-image img,
    .journal-newsletter-form button {
        transition: none;
    }

}

/* journal page css end */
