 @import url('https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap');

@font-face {
    font-family: 'Wantsignature';
    src: url('../fonts/Wantsignature.otf') format('opentype');
    font-style: normal;
    font-weight: 400;
}

:root {
    --swg-yellow: #ffc400;
    --swg-gold: #e9af00;
    --swg-dark: #303942;
    --swg-black: #191919;
    --swg-muted: #656a6d;
    --swg-border: #e7ba20;
    --swg-soft: #fff8de;
}

.swg-container {
    width: min(1540px, calc(100% - 90px));
    margin: 0 auto;
}


/* ========================================
   EXISTING PAGE BANNER
======================================== */

.swg-page-banner {
    position: relative;
    overflow: hidden;
}

.swg-page-banner::after {
    content: "";
    position: absolute;
    width: 470px;
    height: 470px;
    right: -170px;
    top: -260px;
    border: 65px solid rgba(233,175,0,.055);
    border-radius: 50%;
    pointer-events: none;
}


/* ========================================
   SECTION 1
======================================== */

.swg-intro-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background: #ffffff;
    font-family: "Jost", sans-serif;
}

.swg-intro-section::before {
    content: "";
    position: absolute;
    width: 620px;
    height: 620px;
    left: -350px;
    bottom: -370px;
    border: 75px solid rgba(233,175,0,.045);
    border-radius: 50%;
}

.swg-intro-box {
    position: relative;
    display: grid;
    grid-template-columns: 1fr .78fr;
    gap: 80px;
    align-items: center;
    min-height: 500px;
    padding: 65px 75px;
    border: 1px solid var(--swg-border);
    border-radius: 38px;
    background:
        radial-gradient(circle at 85% 25%, rgba(255,210,45,.20), transparent 26%),
        linear-gradient(120deg, #ffffff 0%, #fffdf6 55%, #fff3bd 115%);
    box-shadow: 0 14px 42px rgba(42,51,58,.07);
}

.swg-script {
    display: block;
    color: var(--swg-gold);
    font-family: 'Wantsignature', cursive;
    font-size: 68px;
    line-height: .75;
    font-weight: 400;
    transform: rotate(-4deg);
    transform-origin: left center;
}

.swg-intro-content h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: var(--swg-dark);
    font-family: "Montserrat", sans-serif;
    font-size: clamp(48px, 3.4vw, 66px);
    line-height: 1.08;
    font-weight: 600;
    letter-spacing: -2.5px;
}

.swg-intro-content h2 span {
    color: var(--swg-gold);
}

.swg-intro-content p {
    max-width: 610px;
    margin: 29px 0 0;
    color: var(--swg-muted);
    font-size: 19px;
    line-height: 1.75;
}


/* SECTION 1 ART */

.swg-intro-art {
    position: relative;
    min-height: 360px;
}

.swg-art-circle {
    position: absolute;
    border-radius: 50%;
}

.swg-art-circle-one {
    width: 310px;
    height: 310px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    border: 1px solid rgba(211,158,0,.34);
    background: rgba(255,255,255,.62);
}

.swg-art-circle-two {
    width: 235px;
    height: 235px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background: #ffdd5e;
    box-shadow: 0 20px 55px rgba(202,152,0,.18);
}

.swg-art-main {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 130px;
    height: 130px;
    display: grid;
    place-items: center;
    transform: translate(-50%,-50%);
    border-radius: 50%;
    background: #303942;
    color: #fff;
    font-size: 52px;
    z-index: 3;
}

.swg-art-small {
    position: absolute;
    z-index: 4;
    width: 82px;
    height: 82px;
    display: grid;
    place-items: center;
    border: 8px solid #fff;
    border-radius: 50%;
    background: #ffc400;
    color: #303942;
    font-size: 28px;
    box-shadow: 0 9px 25px rgba(0,0,0,.12);
}

.swg-art-small-one {
    right: 8%;
    top: 18%;
}

.swg-art-small-two {
    left: 8%;
    bottom: 18%;
}

.swg-art-line {
    position: absolute;
    z-index: 2;
    height: 3px;
    border-radius: 999px;
    background: #d8a300;
    transform-origin: left center;
}

.swg-art-line-one {
    width: 125px;
    left: 55%;
    top: 40%;
    transform: rotate(-28deg);
}

.swg-art-line-two {
    width: 125px;
    left: 25%;
    bottom: 34%;
    transform: rotate(-28deg);
}


/* ========================================
   SECTION 2
======================================== */

/* LIGHT THEME DEFAULT */
.swg-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    background:
        radial-gradient(circle at 78% 24%, rgba(255, 210, 45, .18), transparent 30%),
        linear-gradient(115deg, #ffffff 0%, #fffdf6 58%, #fff1b5 145%);
    color: var(--swg-dark);
    font-family: "Jost", sans-serif;
    border-top: 1px solid rgba(231, 186, 32, .45);
    border-bottom: 1px solid rgba(231, 186, 32, .45);
}

.swg-showcase-w {
    position: absolute;
    right: -100px;
    top: 50%;
    transform: translateY(-50%) scaleX(1.15);
    color: rgba(233, 175, 0, .06);
    font-family: "Montserrat", sans-serif;
    font-size: 650px;
    line-height: .7;
    font-weight: 800;
    letter-spacing: -55px;
    pointer-events: none;
}

.swg-showcase-box {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 100px;
    align-items: start;
}

.swg-showcase-title .swg-script {
    color: var(--swg-gold);
}

.swg-showcase-title h2 {
    max-width: 560px;
    margin: 15px 0 25px;
    color: var(--swg-dark);
    font-family: "Montserrat", sans-serif;
    font-size: clamp(46px, 3.1vw, 60px);
    line-height: 1.12;
    font-weight: 600;
    letter-spacing: -2px;
}

.swg-title-line {
    width: 95px;
    height: 4px;
    border-radius: 999px;
    background: var(--swg-yellow);
}

.swg-showcase-content p {
    max-width: 850px;
    margin: 0 0 24px;
    color: var(--swg-muted);
    font-size: 17px;
    line-height: 1.9;
}

.swg-showcase-content em {
    color: #b88700;
    font-style: italic;
    font-weight: 600;
}


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

.swg-products-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0 120px;
    background: #ffffff;
    font-family: "Jost", sans-serif;
}

.swg-products-section::after {
    content: "W";
    position: absolute;
    right: -120px;
    top: 220px;
    color: rgba(238,238,238,.42);
    font-family: "Montserrat", sans-serif;
    font-size: 720px;
    line-height: .7;
    font-weight: 800;
    pointer-events: none;
}

.swg-products-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 48px;
    text-align: center;
}

.swg-products-heading .swg-script {
    transform-origin: center;
}

.swg-products-heading h2 {
    margin: 3px 0 0;
    color: var(--swg-dark);
    font-family: "Montserrat", sans-serif;
    font-size: 52px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -2px;
}

.swg-products-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 26px;
}

.swg-product-card {
    overflow: hidden;
    border: 1px solid #e4bd36;
    border-radius: 17px;
    background: linear-gradient(180deg, #fff 0%, #fff4ca 118%);
    box-shadow: 0 9px 24px rgba(39,48,54,.07);
    transition: transform .25s ease, box-shadow .25s ease;
}

.swg-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 38px rgba(39,48,54,.13);
}

.swg-product-image {
    position: relative;
    height: 270px;
    overflow: hidden;
    background: #fff;
}

.swg-main-product-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    padding: 18px;
    transition: transform .3s ease;
}

.swg-product-card:hover .swg-main-product-image {
    transform: scale(1.035);
}

.swg-heart {
    position: absolute;
    z-index: 3;
    top: 15px;
    right: 15px;
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.swg-status {
    position: absolute;
    z-index: 3;
    top: 61px;
    right: 15px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #ffc400;
    color: #222;
    font-size: 9px;
    font-weight: 700;
}

.swg-product-content {
    padding: 19px;
}

.swg-product-content h3 {
    min-height: 50px;
    margin: 0 0 17px;
    font-size: 18px;
    line-height: 1.45;
    font-weight: 600;
}

.swg-product-content h3 a {
    color: #303942;
    text-decoration: none;
}

.swg-product-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.swg-price {
    margin: 0;
    color: #e11414;
    font-size: 18px;
    font-weight: 700;
}

.swg-view-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 39px;
    padding: 0 16px;
    border: 1px solid #303942;
    border-radius: 999px;
    background: #fff;
    color: #303942;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    transition: .2s ease;
}

.swg-view-btn:hover {
    border-color: #e9af00;
    background: #ffc400;
    color: #252b30;
}

.swg-empty {
    position: relative;
    z-index: 2;
    padding: 55px 25px;
    border: 1px dashed #dfb936;
    border-radius: 18px;
    background: #fff9e5;
    color: #5f6366;
    font-size: 17px;
    text-align: center;
}


/* ========================================
   DARK MODE
======================================== */

body.dark-mode .swg-intro-section, body.dark-mode .swg-products-section, body.dark-mode section.farmers-categories-section {
    background: #191919;
}

/* SECTION 2 DARK THEME ONLY */
body.dark-mode .swg-showcase-section {
    background:
        radial-gradient(circle at 78% 24%, rgba(233,175,0,.075), transparent 30%),
        linear-gradient(115deg, #171717 0%, #1c1b18 62%, #4a390a 150%);
    color: #fff;
    border-top-color: #5e4900;
    border-bottom-color: #5e4900;
}

body.dark-mode .swg-showcase-w {
    color: rgba(255,196,0,.055);
}

body.dark-mode .swg-showcase-title .swg-script {
    color: #ffc000;
}

body.dark-mode .swg-showcase-title h2 {
    color: #fff;
}

body.dark-mode .swg-showcase-content p {
    color: #d0d0d0;
}

body.dark-mode .swg-showcase-content em {
    color: #ffc000;
}

body.dark-mode .swg-intro-section::before,
body.dark-mode .swg-products-section::after {
    color: rgba(233,175,0,.035);
}

body.dark-mode .swg-intro-box {
    border-color: #705500;
    background:
        radial-gradient(circle at 85% 25%, rgba(233,175,0,.11), transparent 27%),
        linear-gradient(120deg, #1b1b1b 0%, #1d1c18 60%, #49380b 145%);
    box-shadow: 0 14px 42px rgba(0,0,0,.26);
}

body.dark-mode .swg-intro-content h2,
body.dark-mode .swg-products-heading h2 {
    color: #fff;
}

body.dark-mode .swg-intro-content p {
    color: #bcbcbc;
}

body.dark-mode .swg-art-circle-one {
    border-color: rgba(233,175,0,.35);
    background: rgba(28,28,28,.7);
}

body.dark-mode .swg-art-main {
    background: #111;
    border: 1px solid rgba(233,175,0,.25);
}

body.dark-mode .swg-art-small {
    border-color: #1b1b1b;
}

body.dark-mode .swg-product-card {
    border-color: #735800;
    background:
        radial-gradient(circle at 100% 0%, rgba(233,175,0,.06), transparent 32%),
        linear-gradient(180deg, #171717 0%, #1d1b16 70%, #382c0e 145%);
    box-shadow: 0 9px 24px rgba(0,0,0,.22);
}

body.dark-mode .swg-product-image {
    background: #0c0c0c;
}

body.dark-mode .swg-product-content h3 a {
    color: #fff;
}

body.dark-mode .swg-view-btn {
    border-color: #8c6a00;
    background: #252525;
    color: #fff;
}

body.dark-mode .swg-view-btn:hover {
    background: #ffc400;
    color: #171717;
}

body.dark-mode .swg-empty {
    border-color: #6f5500;
    background: #211f16;
    color: #bbb;
}


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

@media (max-width: 1300px) {

    .swg-container {
        width: min(1180px, calc(100% - 50px));
    }

    .swg-intro-box {
        gap: 55px;
        padding: 55px;
    }

    .swg-showcase-box {
        gap: 65px;
    }

    .swg-product-image {
        height: 230px;
    }

}


@media (max-width: 1080px) {

    .swg-intro-box,
    .swg-showcase-box {
        grid-template-columns: 1fr;
    }

    .swg-intro-art {
        max-width: 680px;
        width: 100%;
        margin: 0 auto;
    }

    .swg-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}


@media (max-width: 768px) {

    .swg-container {
        width: calc(100% - 30px);
    }

    .swg-intro-section,
    .swg-showcase-section,
    .swg-products-section {
        padding: 70px 0;
    }

    .swg-intro-box {
        min-height: auto;
        padding: 38px 28px;
        border-radius: 28px;
    }

    .swg-script {
        font-size: 54px;
    }

    .swg-intro-content h2,
    .swg-showcase-title h2 {
        font-size: 38px;
    }

    .swg-intro-content p,
    .swg-showcase-content p {
        font-size: 16px;
    }

    .swg-products-heading h2 {
        font-size: 40px;
    }

    .swg-intro-art {
        min-height: 330px;
    }

}


@media (max-width: 560px) {

    .swg-container {
        width: calc(100% - 24px);
    }

    .swg-script {
        font-size: 47px;
    }

    .swg-intro-content h2,
    .swg-showcase-title h2 {
        font-size: 31px;
        letter-spacing: -1px;
    }

    .swg-intro-box {
        padding: 32px 20px;
    }

    .swg-intro-art {
        min-height: 290px;
    }

    .swg-art-circle-one {
        width: 250px;
        height: 250px;
    }

    .swg-art-circle-two {
        width: 190px;
        height: 190px;
    }

    .swg-art-main {
        width: 105px;
        height: 105px;
        font-size: 42px;
    }

    .swg-art-small {
        width: 66px;
        height: 66px;
        border-width: 6px;
        font-size: 22px;
    }

    .swg-products-grid {
        grid-template-columns: 1fr;
    }

    .swg-product-image {
        height: 260px;
    }

    .swg-product-bottom {
        align-items: stretch;
        flex-direction: column;
    }

    .swg-view-btn {
        width: 100%;
    }

}


/* FARMERS CORNER VISUAL ACCENT */
body:not(.dark-mode) .swg-intro-section .swg-art-main .fa-basket-shopping {
    color: #ffffff;
}

body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-leaf {
    color: #376d35;
}

body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-cow {
    color: #5c4a2e;
}

body.dark-mode .swg-intro-section .swg-art-small .fa-leaf {
    color: #376d35;
}

body.dark-mode .swg-intro-section .swg-art-small .fa-cow {
    color: #5c4a2e;
}



/* TRADES VISUAL ACCENT */
body:not(.dark-mode) .swg-intro-section .swg-art-main .fa-right-left {
    color: #ffffff;
}

body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-handshake,
body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-recycle,
body.dark-mode .swg-intro-section .swg-art-small .fa-handshake,
body.dark-mode .swg-intro-section .swg-art-small .fa-recycle {
    color: #303942;
}



/* ESTATE / YARD SALES VISUAL ACCENT */
body:not(.dark-mode) .swg-intro-section .swg-art-main .fa-house {
    color: #ffffff;
}

body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-calendar-days,
body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-tags,
body.dark-mode .swg-intro-section .swg-art-small .fa-calendar-days,
body.dark-mode .swg-intro-section .swg-art-small .fa-tags {
    color: #303942;
}



/* WHAT WE GOT VISUAL ACCENT */
body:not(.dark-mode) .swg-intro-section .swg-art-main .fa-warehouse {
    color: #ffffff;
}

body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-boxes-stacked,
body:not(.dark-mode) .swg-intro-section .swg-art-small .fa-truck,
body.dark-mode .swg-intro-section .swg-art-small .fa-boxes-stacked,
body.dark-mode .swg-intro-section .swg-art-small .fa-truck {
    color: #303942;
}
span#got {
    /*right: 140px !important;*/
    /*top: -13px;*/
}
span#yard {
    /*right: -40px !important;*/
    /*top: -12px !important;*/
}
span#farmers {
    /* right: 200px !important; */
    /* top: -13px !important; */
}
span#get {
    /*right: -16px !important;*/
    /*top: -15px !important;*/
}