
/* =========================================================
   GODSPEED APPAREL™
   ATHLETIC LUXE — PREMIUM E-COMMERCE DESIGN
   Palette: Ivory / Champagne Gold / Powder Blue / Charcoal
========================================================= */

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

:root {
    --gs-black: #202426;
    --gs-charcoal: #30383A;
    --gs-gold: #B99B65;
    --gs-gold-light: #D9C69B;
    --gs-blue: #C5D8DF;
    --gs-blue-dark: #708E99;
    --gs-ivory: #F5F3ED;
    --gs-white: #FFFFFF;
    --gs-gray: #777D7D;
    --gs-line: #E5E2D9;
}

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

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Montserrat', sans-serif;
    color: var(--gs-black);
    background: var(--gs-white);
    overflow-x: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    display: block;
    max-width: 100%;
}

button,
input {
    font-family: inherit;
}

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

.announcement-bar {
    padding: 12px 15px;
    background: var(--gs-black);
    color: var(--gs-gold-light);
    text-align: center;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 2px;
}

/* =========================================================
   NAVIGATION
========================================================= */

.navbar {
    width: 100%;
    min-height: 90px;
    padding: 12px 5%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    background: #FFFFFF;
    border-bottom: 1px solid var(--gs-line);
    position: relative;
    z-index: 20;
}

.logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.logo img {
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.main-navigation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 27px;
}

.main-navigation a {
    position: relative;
    color: var(--gs-black);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: color .3s ease;
}

.main-navigation a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -7px;
    width: 0;
    height: 2px;
    background: var(--gs-gold);
    transition: width .3s ease;
}

.main-navigation a:hover {
    color: var(--gs-gold);
}

.main-navigation a:hover::after {
    width: 100%;
}

.nav-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.nav-action {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--gs-black);
    font-size: 10px;
    font-weight: 600;
    white-space: nowrap;
    transition: color .3s ease;
}

.nav-action svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.nav-action:hover {
    color: var(--gs-gold);
}

/* =========================================================
   HERO CAMPAIGN
========================================================= */

.hero {
    width: 100%;
    min-height: 610px;
    display: grid;
    grid-template-columns: 48% 52%;
    background: var(--gs-ivory);
    overflow: hidden;
}

.hero-content {
    padding: 85px clamp(35px, 7vw, 105px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    background: var(--gs-ivory);
}

.hero-content .subtitle {
    margin-bottom: 27px;
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.hero-content h1 {
    max-width: 570px;
    margin-bottom: 25px;
    color: var(--gs-black);
    font-size: clamp(48px, 5.5vw, 78px);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -4px;
}

.hero-content .description {
    max-width: 430px;
    margin-bottom: 32px;
    color: #737878;
    font-size: 12px;
    line-height: 2;
}

.shop-button {
    min-height: 52px;
    padding: 0 27px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--gs-black);
    border: 1px solid var(--gs-black);
    color: #FFFFFF;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    transition: all .3s ease;
}

.shop-button:hover {
    background: var(--gs-gold);
    border-color: var(--gs-gold);
    color: var(--gs-black);
    transform: translateY(-3px);
}

.hero-image {
    min-width: 0;
    min-height: 610px;
    overflow: hidden;
    background: var(--gs-blue);
}

.hero-image img {
    width: 100%;
    height: 100%;
    min-height: 610px;
    object-fit: cover;
    object-position: center;
    transition: transform .7s ease;
}

.hero-image:hover img {
    transform: scale(1.025);
}

/* =========================================================
   SECTION HEADINGS
========================================================= */

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

.section-heading > p:first-child {
    margin-bottom: 13px;
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.section-heading h2 {
    color: var(--gs-black);
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -2.5px;
}

.section-description {
    margin-top: 15px;
    color: var(--gs-gray);
    font-size: 12px;
    line-height: 1.8;
}

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

.categories {
    padding: 95px 6%;
    background: #FFFFFF;
}

.categories .section-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 17px;
}

.category-card {
    min-width: 0;
    position: relative;
    height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 25px;
    overflow: hidden;
    background: var(--gs-blue);
    color: #FFFFFF;
}

.category-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(15, 20, 21, .75),
        rgba(15, 20, 21, .02) 75%
    );
    z-index: 1;
    transition: background .3s ease;
}

.category-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
}

.category-card:hover img {
    transform: scale(1.07);
}

.category-card:hover::after {
    background: linear-gradient(
        to top,
        rgba(15, 20, 21, .85),
        rgba(15, 20, 21, .08) 80%
    );
}

.category-card h3,
.category-card span {
    position: relative;
    z-index: 2;
}

.category-card h3 {
    margin-bottom: 10px;
    font-size: 30px;
    font-weight: 900;
    letter-spacing: -1px;
}

.category-card span {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

/* =========================================================
   SIAPZ EXCLUSIVE COLLECTION
========================================================= */

.siapz-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 540px;
    background: #E6EDF0;
}

.siapz-image {
    min-width: 0;
    min-height: 540px;
    overflow: hidden;
}

.siapz-image img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    object-fit: cover;
    transition: transform .7s ease;
}

.siapz-image:hover img {
    transform: scale(1.035);
}

.siapz-content {
    padding: 75px clamp(35px, 7vw, 100px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.siapz-content .subtitle {
    margin-bottom: 25px;
    color: var(--gs-blue-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.siapz-content h2 {
    margin-bottom: 8px;
    font-size: clamp(75px, 10vw, 125px);
    font-weight: 900;
    line-height: .85;
    letter-spacing: -8px;
}

.siapz-content h3 {
    margin: 20px 0;
    color: var(--gs-blue-dark);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.siapz-content > p:not(.subtitle) {
    max-width: 420px;
    margin-bottom: 30px;
    color: #687477;
    font-size: 12px;
    line-height: 2;
}

/* =========================================================
   NEW ARRIVALS
========================================================= */

.featured-section {
    padding: 100px 6%;
    background: var(--gs-ivory);
}

.featured-section .section-heading {
    text-align: center;
    margin-bottom: 50px;
}

.featured-section .section-description {
    margin-top: 15px;
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.product-card {
    min-width: 0;
    cursor: pointer;
}

.product-image {
    width: 100%;
    height: 350px;
    margin-bottom: 18px;
    overflow: hidden;
    background: #E4E3DE;
}

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

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

.product-card h3 {
    margin-bottom: 8px;
    color: var(--gs-black);
    font-size: 13px;
    font-weight: 800;
}

.product-category {
    margin-bottom: 10px;
    color: var(--gs-gray);
    font-size: 10px;
}

.product-price {
    color: var(--gs-black);
    font-size: 13px;
    font-weight: 800;
}

/* =========================================================
   LIMITED EDITION CAMPAIGN
========================================================= */

.limited-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 520px;
    background: var(--gs-black);
    color: #FFFFFF;
}

.limited-content {
    padding: 75px clamp(35px, 7vw, 100px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.limited-content .subtitle {
    margin-bottom: 25px;
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.limited-content h2 {
    margin-bottom: 25px;
    font-size: clamp(42px, 5vw, 68px);
    font-weight: 900;
    line-height: .95;
    letter-spacing: -3px;
}

.limited-content > p:not(.subtitle) {
    max-width: 400px;
    margin-bottom: 30px;
    color: #C2C7C5;
    font-size: 12px;
    line-height: 2;
}

.limited-content .shop-button {
    background: var(--gs-gold);
    border-color: var(--gs-gold);
    color: var(--gs-black);
}

.limited-content .shop-button:hover {
    background: #FFFFFF;
    border-color: #FFFFFF;
}

.limited-image {
    min-width: 0;
    min-height: 520px;
    overflow: hidden;
}

.limited-image img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    transition: transform .7s ease;
}

.limited-image:hover img {
    transform: scale(1.035);
}

/* =========================================================
   SALE SECTION
========================================================= */

.sale-section {
    min-height: 420px;
    padding: 80px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(
        120deg,
        #DCE7E9,
        #F2EEE4,
        #E4D7BC
    );
}

.sale-content {
    max-width: 700px;
}

.sale-content .subtitle {
    margin-bottom: 20px;
    color: #92784D;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.sale-content h2 {
    margin-bottom: 20px;
    color: var(--gs-black);
    font-size: clamp(45px, 6vw, 75px);
    font-weight: 900;
    line-height: .95;
    letter-spacing: -4px;
}

.sale-content > p:not(.subtitle) {
    margin-bottom: 28px;
    color: #737878;
    font-size: 12px;
    line-height: 1.9;
}

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

.brand-message {
    padding: 95px 20px;
    text-align: center;
    background: #FFFFFF;
}

.brand-message p:first-child {
    margin-bottom: 20px;
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 4px;
}

.brand-message h2 {
    margin-bottom: 20px;
    color: var(--gs-black);
    font-size: clamp(28px, 4.5vw, 55px);
    font-weight: 900;
    letter-spacing: -2px;
}

.brand-message p:last-child {
    color: var(--gs-gray);
    font-size: 11px;
    letter-spacing: 1px;
}

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

footer {
    background: var(--gs-black);
    color: #FFFFFF;
}

.footer-content {
    padding: 65px 6%;
    display: grid;
    grid-template-columns: 1.5fr repeat(4, 1fr);
    gap: 35px;
}

.footer-brand h3 {
    margin-bottom: 18px;
    color: var(--gs-gold);
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 1px;
}

.footer-brand p {
    margin-bottom: 10px;
    color: #C2C7C5;
    font-size: 11px;
    line-height: 1.8;
}

.footer-links {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.footer-links h4 {
    margin-bottom: 8px;
    color: var(--gs-gold);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.footer-links a {
    color: #C7CCCA;
    font-size: 10px;
    transition: color .3s ease;
}

.footer-links a:hover {
    color: var(--gs-blue);
}

.footer-bottom {
    padding: 22px 6%;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    border-top: 1px solid #414849;
    color: #B9BFBD;
    font-size: 9px;
}

/* =========================================================
   SEARCH PAGE
========================================================= */

.search-page {
    min-height: 650px;
    padding: 95px 7%;
    background: var(--gs-ivory);
}

.search-header {
    max-width: 800px;
    margin: 0 auto 40px;
    text-align: center;
}

.search-label {
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.search-header h1 {
    margin: 20px 0;
    font-size: clamp(40px, 6vw, 75px);
    font-weight: 900;
    letter-spacing: -3px;
}

.search-description {
    color: var(--gs-gray);
    font-size: 12px;
    line-height: 1.9;
}

.search-form {
    max-width: 750px;
    min-height: 60px;
    margin: 0 auto;
    display: flex;
    background: #FFFFFF;
    border: 1px solid var(--gs-line);
}

.search-input-wrapper {
    flex: 1;
    min-width: 0;
    padding: 0 18px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.search-input-wrapper svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: var(--gs-gray);
    stroke-width: 1.6;
}

.search-input-wrapper input {
    width: 100%;
    min-width: 0;
    height: 58px;
    border: none;
    outline: none;
    font-size: 12px;
}

.search-form button {
    min-width: 120px;
    border: none;
    background: var(--gs-black);
    color: white;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    cursor: pointer;
}

.search-form button:hover {
    background: var(--gs-gold);
    color: var(--gs-black);
}

.search-suggestions {
    margin-top: 25px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 18px;
}

.search-suggestions span {
    color: var(--gs-gray);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
}

.search-suggestions a {
    font-size: 10px;
}

.search-results {
    max-width: 900px;
    margin: 70px auto 0;
}

.search-results-heading {
    margin-bottom: 30px;
    text-align: center;
}

.search-empty-state {
    padding: 50px 25px;
    background: #FFFFFF;
    text-align: center;
}

/* =========================================================
   CUSTOMER ACCOUNT PAGES
========================================================= */

.account-page {
    min-height: 70vh;
    padding: 80px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gs-ivory);
}

.account-container {
    width: 100%;
    max-width: 480px;
    padding: 42px;
    background: #FFFFFF;
    border: 1px solid var(--gs-line);
}

.account-dashboard {
    max-width: 600px;
}

.account-label {
    margin-bottom: 18px;
    color: var(--gs-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.account-container h1 {
    margin-bottom: 15px;
    color: var(--gs-black);
    font-size: 36px;
    font-weight: 900;
    letter-spacing: -2px;
}

.account-description {
    margin-bottom: 30px;
    color: var(--gs-gray);
    font-size: 12px;
    line-height: 1.8;
}

.account-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.account-form label {
    margin-top: 8px;
    font-size: 10px;
    font-weight: 800;
}

.account-form input {
    width: 100%;
    padding: 15px;
    border: 1px solid var(--gs-line);
    outline: none;
    font-size: 12px;
}

.account-form input:focus {
    border-color: var(--gs-gold);
}

.account-form button,
.logout-button {
    width: 100%;
    min-height: 50px;
    margin-top: 18px;
    border: 1px solid var(--gs-black);
    background: var(--gs-black);
    color: #FFFFFF;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: .3s;
}

.account-form button:hover,
.logout-button:hover {
    background: var(--gs-gold);
    border-color: var(--gs-gold);
    color: var(--gs-black);
}

.account-switch {
    margin-top: 25px;
    text-align: center;
    color: var(--gs-gray);
    font-size: 11px;
}

.account-switch a {
    color: var(--gs-black);
    font-weight: 800;
    text-decoration: underline;
}

.account-details,
.account-menu {
    margin-top: 30px;
    border-top: 1px solid var(--gs-line);
}

.account-detail {
    padding: 20px 0;
    border-bottom: 1px solid var(--gs-line);
}

.account-detail span {
    color: var(--gs-gray);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.account-detail p {
    margin-top: 8px;
    font-size: 13px;
}

.account-menu-link {
    display: flex;
    justify-content: space-between;
    padding: 20px 0;
    border-bottom: 1px solid var(--gs-line);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.account-menu-link:hover {
    color: var(--gs-gold);
}

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

@media (max-width: 1050px) {
    .navbar {
        flex-wrap: wrap;
    }

    .main-navigation {
        gap: 16px;
    }

    .nav-actions {
        gap: 12px;
    }

    .footer-content {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 760px) {
    .navbar {
        padding: 12px 4%;
    }

    .main-navigation {
        order: 3;
        width: 100%;
        flex-wrap: wrap;
        gap: 16px;
    }

    .main-navigation a {
        font-size: 9px;
    }

    .nav-actions {
        gap: 12px;
    }

    .nav-action {
        font-size: 9px;
    }

    .nav-action svg {
        width: 17px;
        height: 17px;
    }

    .hero {
        grid-template-columns: 1fr;
    }

    .hero-content {
        padding: 65px 7%;
    }

    .hero-content h1 {
        font-size: clamp(46px, 11vw, 66px);
        letter-spacing: -3px;
    }

    .hero-image,
    .hero-image img {
        min-height: 390px;
        height: 390px;
    }

    .categories,
    .featured-section {
        padding: 70px 5%;
    }

    .category-grid,
    .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .category-card {
        height: 300px;
        padding: 17px;
    }

    .category-card h3 {
        font-size: 24px;
    }

    .product-image {
        height: 260px;
    }

    .siapz-section,
    .limited-section {
        grid-template-columns: 1fr;
    }

    .siapz-image,
    .siapz-image img,
    .limited-image,
    .limited-image img {
        min-height: 350px;
        height: 350px;
    }

    .siapz-content,
    .limited-content {
        padding: 60px 7%;
    }

    .footer-content {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}

@media (max-width: 480px) {
    .announcement-bar {
        font-size: 8px;
        letter-spacing: 1px;
    }

    .logo img {
        width: 45px;
        height: 45px;
    }

    .nav-action span {
        display: none;
    }

    .hero-content {
        padding: 55px 23px;
    }

    .hero-content h1 {
        font-size: 43px;
        letter-spacing: -2px;
    }

    .hero-image,
    .hero-image img {
        min-height: 300px;
        height: 300px;
    }

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

    .category-card {
        height: 360px;
    }

    .product-image {
        height: 380px;
    }

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

    .siapz-content h2 {
        font-size: 85px;
    }

    .sale-content h2 {
        font-size: 44px;
    }

    .footer-content {
        grid-template-columns: 1fr 1fr;
        padding: 45px 6%;
    }

    .footer-bottom {
        flex-direction: column;
    }

    .account-container {
        padding: 28px 20px;
    }
}

/* ==========================================
   GODSPEED — SOFT BUBBLY DESIGN
========================================== */

/* Category boxes */
.category-card {
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(32, 36, 38, 0.06);
    transition: transform .35s ease, box-shadow .35s ease;
}

.category-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 35px rgba(32, 36, 38, 0.13);
}

/* Product cards */
.product-card {
    padding: 12px;
    border-radius: 20px;
    background: #FFFFFF;
    border: 1px solid #EAE7DF;
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease;
}

.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(32, 36, 38, 0.09);
}

.product-image {
    border-radius: 15px;
    overflow: hidden;
}

.product-card h3 {
    margin-top: 17px;
    padding: 0 5px;
}

.product-category,
.product-price {
    padding: 0 5px;
}

/* Campaign image boxes */
.hero-image img,
.siapz-image img,
.limited-image img {
    border-radius: 0;
}

/* Rounded campaign sections */
.siapz-section,
.limited-section {
    border-radius: 26px;
    margin: 35px 4%;
    overflow: hidden;
}

/* Rounded buttons */
.shop-button,
.search-form button,
.account-form button,
.logout-button {
    border-radius: 50px;
    transition: all .3s ease;
}

/* Search bar */
.search-form {
    border-radius: 50px;
    overflow: hidden;
}

.search-input-wrapper {
    padding-left: 25px;
}

/* Search results */
.search-empty-state {
    border-radius: 22px;
}

/* Account card */
.account-container {
    border-radius: 25px;
    box-shadow: 0 15px 45px rgba(32, 36, 38, 0.06);
}

.account-form input {
    border-radius: 12px;
}

/* Navigation logo */
.logo img {
    border-radius: 12px;
}

/* Footer */
footer {
    border-radius: 25px 25px 0 0;
}

/* Soft brand message */
.brand-message {
    border-radius: 25px;
    margin: 25px 4%;
}

/* Responsive spacing */
@media (max-width: 760px) {
    .siapz-section,
    .limited-section,
    .brand-message {
        margin: 20px 3%;
        border-radius: 20px;
    }

    .category-card {
        border-radius: 18px;
    }

    .product-card {
        border-radius: 17px;
    }
}

/* =================================
   GODSPEED SHOP PAGE
================================= */

.shop-page {
    padding: 65px 5%;
    min-height: 480px;
    background: #ffffff;
}

.shop-heading {
    text-align: center;
    margin: 15px auto 55px;
}

.shop-heading .account-label {
    color: #b99a65;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    margin-bottom: 15px;
}

.shop-heading h1 {
    color: #202426;
    font-size: clamp(38px, 5vw, 58px);
    font-weight: 800;
    letter-spacing: -2px;
    margin-bottom: 12px;
}

.shop-heading > p:last-child {
    color: #777777;
    font-size: 15px;
}

.shop-empty {
    max-width: 850px;
    margin: 0 auto 40px;
    padding: 75px 25px;
    text-align: center;
    background: #f7f6f3;
    border: 1px solid #eeeae2;
    border-radius: 28px;
}

.shop-empty h2 {
    color: #202426;
    font-size: 25px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.shop-empty p {
    color: #777777;
    font-size: 14px;
    line-height: 1.7;
}

/* PRODUCT DISPLAY */

.shop-page .product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px;
}

.shop-page .product-card {
    overflow: hidden;
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid #eeeeee;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.shop-page .product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.07);
}

.shop-page .product-image img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    display: block;
}

.product-image-placeholder {
    height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f0ed;
    color: #b99a65;
    font-weight: 800;
    letter-spacing: 4px;
}

.shop-page .product-info {
    padding: 20px;
}

.shop-page .product-info h3 {
    margin: 8px 0;
    font-size: 16px;
}

.shop-page .stock-status {
    display: inline-block;
    margin-top: 10px;
    color: #777777;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
}

/* RESPONSIVE DESIGN */

@media (max-width: 900px) {
    .shop-page .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 550px) {
    .shop-page {
        padding: 45px 5%;
    }

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

    .shop-empty {
        padding: 55px 20px;
    }

    .shop-empty h2 {
        font-size: 20px;
    }
}

/* ==========================================
   GODSPEED ADMIN DASHBOARD
========================================== */

.admin-dashboard {
    padding: 65px 5%;
    background: #f7f6f3;
    min-height: 700px;
}

.admin-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 45px;
}

.admin-header h1 {
    font-size: clamp(32px, 5vw, 48px);
    color: #202426;
    margin: 12px 0;
    font-weight: 800;
}

.admin-header p {
    color: #777;
}

.admin-status {
    background: #ffffff;
    padding: 13px 20px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.status-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    background: #48a477;
    border-radius: 50%;
    margin-right: 7px;
}

.admin-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 65px;
}

.admin-stat-card {
    background: #ffffff;
    padding: 28px;
    border-radius: 22px;
    border: 1px solid #eeeae2;
}

.admin-stat-card span {
    color: #a58b5e;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.admin-stat-card h2 {
    font-size: 38px;
    margin: 18px 0 8px;
    color: #202426;
}

.admin-stat-card p {
    color: #888;
    font-size: 12px;
}

.admin-section-heading {
    margin-bottom: 25px;
}

.admin-section-heading h2 {
    color: #202426;
    font-size: 22px;
    letter-spacing: 1px;
}

.admin-section-heading p {
    color: #888;
    margin-top: 8px;
}

.admin-management-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.admin-management-card {
    background: #ffffff;
    padding: 30px;
    border-radius: 23px;
    border: 1px solid #eeeae2;
    transition: 0.3s ease;
}

.admin-management-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.admin-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 15px;
    background: #f4f0e8;
    color: #b99a65;
    font-size: 23px;
    margin-bottom: 22px;
}

.admin-management-card h3 {
    font-size: 15px;
    color: #202426;
    margin-bottom: 12px;
}

.admin-management-card p {
    color: #888;
    font-size: 13px;
    line-height: 1.8;
    min-height: 70px;
}

.admin-coming-soon {
    display: inline-block;
    color: #b99a65;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-top: 15px;
}

.admin-footer-action {
    margin-top: 45px;
}

.admin-footer-action a {
    color: #202426;
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
}

@media (max-width: 900px) {
    .admin-stats {
        grid-template-columns: repeat(2, 1fr);
    }

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

@media (max-width: 550px) {
    .admin-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-stats,
    .admin-management-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================
   GODSPEED PRODUCT MANAGEMENT
========================================== */

.admin-product-form,
.admin-product-list {
    background: #ffffff;
    padding: 35px;
    border-radius: 25px;
    border: 1px solid #eeeae2;
    margin-bottom: 35px;
}

.product-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
    margin-top: 30px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.form-group label {
    color: #343434;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.form-group input:not([type="checkbox"]),
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 15px;
    border: 1px solid #e8e4dc;
    border-radius: 12px;
    background: #ffffff;
    color: #202426;
    font-family: inherit;
    font-size: 13px;
    outline: none;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #b99a65;
}

.form-group textarea {
    resize: vertical;
}

.full-width {
    grid-column: 1 / -1;
}

.form-group small {
    color: #888888;
    font-size: 11px;
    line-height: 1.6;
}

.publish-option {
    padding: 20px;
    background: #f8f7f4;
    border-radius: 14px;
}

.publish-option label {
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: 0;
}

.admin-submit-button {
    margin-top: 25px;
    padding: 17px 35px;
    background: #202426;
    color: #ffffff;
    border: none;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    cursor: pointer;
}

.admin-submit-button:hover {
    background: #b99a65;
}

.admin-table-wrapper {
    overflow-x: auto;
    margin-top: 25px;
}

.admin-product-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 650px;
}

.admin-product-table th,
.admin-product-table td {
    padding: 18px 15px;
    text-align: left;
    border-bottom: 1px solid #eeeae2;
    font-size: 12px;
}

.admin-product-table th {
    color: #a58b5e;
    font-size: 10px;
    letter-spacing: 1px;
}

.admin-product-name {
    display: flex;
    align-items: center;
    gap: 12px;
}

.admin-product-name img,
.admin-no-image {
    width: 48px;
    height: 55px;
    object-fit: cover;
    border-radius: 9px;
}

.admin-no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f0ed;
    color: #b99a65;
    font-weight: 800;
}

.product-status {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
}

.product-status.published {
    color: #388b64;
}

.product-status.draft {
    color: #b18a48;
}

.admin-message {
    padding: 15px 20px;
    margin-bottom: 20px;
    border-radius: 12px;
    font-size: 13px;
}

.admin-message.success {
    background: #edf7f0;
    color: #287347;
}

.admin-message.error {
    background: #fff0ef;
    color: #a33b34;
}

@media (max-width: 650px) {
    .product-form-grid {
        grid-template-columns: 1fr;
    }

    .admin-product-form,
    .admin-product-list {
        padding: 22px;
    }
}

/* ==========================================
   GODSPEED ADMIN HUB MANAGEMENT
========================================== */

.admin-page {
    width: 90%;
    max-width: 1250px;
    margin: 60px auto;
}

.admin-page-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 35px;
}

.admin-eyebrow {
    color: #a88b5b;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
}

.admin-page-header h1 {
    font-size: clamp(30px, 5vw, 46px);
    font-weight: 900;
    margin: 12px 0;
    color: #202426;
}

.admin-page-header p {
    color: #888;
}

.admin-back-button {
    text-decoration: none;
    color: #252525;
    background: white;
    border: 1px solid #e8e1d7;
    border-radius: 30px;
    padding: 13px 22px;
    font-weight: 700;
}

.admin-form-card,
.admin-table-card {
    background: #fff;
    border: 1px solid #eee8df;
    border-radius: 22px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.025);
}

.admin-form-card h2,
.admin-table-heading h2 {
    color: #202426;
    font-size: 23px;
    margin-bottom: 8px;
}

.admin-form-card > p,
.admin-table-heading p {
    color: #888;
    margin-bottom: 25px;
}

.admin-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.admin-field {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.admin-field label {
    font-size: 13px;
    font-weight: 700;
    color: #343434;
}

.admin-field input:not([type="checkbox"]),
.admin-field textarea {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #e7e2dc;
    border-radius: 12px;
    background: #faf9f7;
    font-family: inherit;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
}

.admin-field input:focus,
.admin-field textarea:focus {
    border-color: #c3a675;
    background: white;
}

.admin-field textarea {
    resize: vertical;
}

.admin-field small {
    color: #999;
    font-size: 11px;
}

.full-width {
    grid-column: 1 / -1;
}

.publish-option {
    display: flex;
    flex-direction: row !important;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.publish-option input {
    accent-color: #b99b6a;
    width: 17px;
    height: 17px;
}

.admin-submit-button {
    margin-top: 28px;
    padding: 15px 28px;
    border: none;
    border-radius: 30px;
    background: #202426;
    color: white;
    font-weight: 800;
    letter-spacing: 1px;
    cursor: pointer;
    transition: 0.25s ease;
}

.admin-submit-button:hover {
    background: #b99b6a;
    color: #202426;
}

.admin-table-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.admin-count {
    background: #f5f0e8;
    color: #94784c;
    padding: 9px 16px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 800;
}

.admin-table-wrapper {
    width: 100%;
    overflow-x: auto;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 750px;
}

.admin-table th {
    padding: 15px;
    text-align: left;
    color: #9a835d;
    font-size: 11px;
    letter-spacing: 1px;
    border-bottom: 1px solid #eee8df;
}

.admin-table td {
    padding: 16px 15px;
    border-bottom: 1px solid #f1eee9;
    color: #555;
    font-size: 13px;
}

.hub-table-info {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #252525;
}

.hub-table-info img,
.hub-image-placeholder {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    object-fit: cover;
}

.hub-image-placeholder {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f1eadf;
    color: #9c8055;
    font-weight: 900;
}

.status-published,
.status-draft {
    display: inline-block;
    padding: 7px 12px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 800;
}

.status-published {
    background: #eaf5ed;
    color: #398052;
}

.status-draft {
    background: #f3eee7;
    color: #927a56;
}

.hub-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hub-edit-button,
.hub-delete-button {
    display: inline-block;
    border: none;
    border-radius: 20px;
    padding: 8px 13px;
    text-decoration: none;
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
}

.hub-edit-button {
    background: #f0e9dd;
    color: #806843;
}

.hub-delete-button {
    background: #fff0ee;
    color: #b64c43;
}

.admin-empty-state {
    text-align: center;
    padding: 55px 20px;
    background: #faf9f7;
    border-radius: 16px;
}

.admin-empty-state h3 {
    color: #292929;
    margin-bottom: 10px;
}

.admin-empty-state p {
    color: #999;
}

.admin-alert {
    padding: 14px 18px;
    border-radius: 12px;
    margin-bottom: 20px;
    font-size: 14px;
}

.admin-alert.success {
    background: #eaf5ed;
    color: #398052;
}

.admin-alert.error {
    background: #fff0ee;
    color: #b64c43;
}

@media (max-width: 700px) {
    .admin-page {
        width: 92%;
        margin: 35px auto;
    }

    .admin-page-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-form-grid {
        grid-template-columns: 1fr;
    }

    .full-width {
        grid-column: auto;
    }

    .admin-form-card,
    .admin-table-card {
        padding: 20px;
    }

    .admin-table-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ==========================================
   PUBLIC GODSPEED HUBS PAGE
========================================== */

.public-hubs {
    background: #faf9f7;
    color: #202426;
    padding-bottom: 70px;
}

.hubs-hero {
    text-align: center;
    padding: 105px 20px 90px;
    background: #f1eee8;
}

.hubs-eyebrow {
    color: #a88b5b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
}

.hubs-hero h1 {
    font-size: clamp(42px, 7vw, 76px);
    font-weight: 900;
    line-height: 1.05;
    margin: 22px 0;
}

.hubs-hero h1 span {
    color: #ad9166;
}

.hubs-intro {
    max-width: 540px;
    margin: auto;
    color: #777;
    line-height: 1.8;
}

.hubs-section {
    width: 90%;
    max-width: 1200px;
    margin: 75px auto;
}

.hubs-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 35px;
}

.hubs-section-heading h2 {
    font-size: 30px;
    font-weight: 900;
    margin-top: 10px;
}

.hubs-section-heading > span {
    color: #9b8058;
    font-size: 12px;
    font-weight: 800;
    background: #f0e9dd;
    border-radius: 30px;
    padding: 12px 18px;
}

.public-hub-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.public-hub-card {
    background: white;
    border: 1px solid #eee8df;
    border-radius: 22px;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.public-hub-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.07);
}

.public-hub-image {
    height: 240px;
    position: relative;
    overflow: hidden;
    background: #eee9e0;
}

.public-hub-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.public-hub-card:hover .public-hub-image img {
    transform: scale(1.04);
}

.public-hub-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #a88b5b;
    font-size: 25px;
    font-weight: 900;
    letter-spacing: 5px;
}

.hub-location-label {
    position: absolute;
    bottom: 15px;
    left: 15px;
    background: white;
    color: #92764c;
    border-radius: 30px;
    padding: 8px 13px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1px;
}

.public-hub-content {
    padding: 25px;
}

.public-hub-content h3 {
    font-size: 21px;
    font-weight: 900;
    margin-bottom: 12px;
}

.public-hub-description {
    color: #888;
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 22px;
}

.public-hub-detail {
    margin-top: 18px;
}

.public-hub-detail span {
    display: block;
    color: #aa8d60;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.5px;
    margin-bottom: 6px;
}

.public-hub-detail p {
    color: #555;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.hub-directions-button {
    display: inline-block;
    margin-top: 22px;
    padding: 13px 20px;
    border-radius: 30px;
    background: #202426;
    color: white;
    text-decoration: none;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1px;
    transition: 0.25s ease;
}

.hub-directions-button:hover {
    background: #b99b6a;
    color: #202426;
}

.public-hubs-empty {
    text-align: center;
    padding: 75px 25px;
    background: white;
    border: 1px solid #eee8df;
    border-radius: 22px;
}

.public-hubs-empty h3 {
    font-size: 24px;
    margin-bottom: 15px;
}

.public-hubs-empty p {
    color: #888;
    line-height: 1.7;
}

.hubs-brand-message {
    text-align: center;
    padding: 55px 20px;
    background: #202426;
    color: white;
}

.hubs-brand-message p {
    color: #c4a879;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 4px;
}

.hubs-brand-message h2 {
    font-size: clamp(17px, 3vw, 27px);
    margin-top: 15px;
    letter-spacing: 2px;
}

@media (max-width: 900px) {
    .public-hub-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .hubs-hero {
        padding: 75px 20px;
    }

    .hubs-section {
        width: 92%;
        margin: 50px auto;
    }

    .hubs-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .public-hub-grid {
        grid-template-columns: 1fr;
    }

    .public-hub-image {
        height: 230px;
    }
}

/* ==========================================
   GODSPEED APPAREL - ABOUT PAGE
========================================== */

.about-page {
    background: #faf9f7;
    color: #202426;
}

/* ABOUT HERO */

.about-hero {
    text-align: center;
    padding: 110px 20px 100px;
    background: #f1eee8;
}

.about-eyebrow {
    color: #a88b5b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
}

.about-hero h1 {
    font-size: clamp(42px, 7vw, 78px);
    font-weight: 900;
    line-height: 1.05;
    margin: 24px 0;
}

.about-hero h1 span {
    color: #ad9166;
}

.about-hero > p:last-child {
    color: #777;
    font-size: 15px;
    line-height: 1.8;
}

/* BRAND STORY */

.about-story {
    width: 90%;
    max-width: 1150px;
    margin: 100px auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 75px;
}

.about-story-image {
    width: 100%;
    height: 440px;
    overflow: hidden;
    border-radius: 25px;
    background: #eee8dd;
}

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

.about-image-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #a88b5b;
}

.about-image-placeholder span {
    font-size: 38px;
    font-weight: 900;
    letter-spacing: 5px;
}

.about-image-placeholder small {
    margin-top: 10px;
    letter-spacing: 5px;
}

.about-story-content h2 {
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 900;
    margin: 18px 0;
}

.about-story-content > p:not(.about-eyebrow):not(.about-signature) {
    color: #777;
    line-height: 2;
    font-size: 15px;
    white-space: pre-line;
}

.about-signature {
    margin-top: 28px;
    color: #a88b5b;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 2px;
}

/* MISSION AND VISION */

.about-purpose {
    padding: 85px 5%;
    background: #f1eee8;
}

.about-purpose-heading {
    text-align: center;
    margin-bottom: 45px;
}

.about-purpose-heading h2 {
    font-size: 36px;
    font-weight: 900;
    margin-top: 15px;
}

.about-purpose-grid {
    max-width: 1100px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
}

.about-purpose-card {
    background: white;
    border-radius: 23px;
    padding: 40px;
    border: 1px solid #eae3d8;
    transition: transform 0.25s ease;
}

.about-purpose-card:hover {
    transform: translateY(-5px);
}

.about-number {
    color: #b99b6a;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 2px;
}

.about-purpose-card h3 {
    font-size: 23px;
    font-weight: 900;
    margin: 22px 0 15px;
}

.about-purpose-card p {
    color: #777;
    font-size: 14px;
    line-height: 1.9;
    white-space: pre-line;
}

/* BRAND MESSAGE */

.about-brand-message {
    padding: 85px 20px;
    background: #202426;
    color: white;
    text-align: center;
}

.about-brand-message > p {
    color: #c4a879;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 4px;
}

.about-brand-message h2 {
    font-size: clamp(24px, 4vw, 42px);
    line-height: 1.35;
    font-weight: 900;
    margin: 22px 0 30px;
}

.about-brand-message a {
    display: inline-block;
    padding: 15px 25px;
    border-radius: 30px;
    background: #c4a879;
    color: #202426;
    text-decoration: none;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1px;
    transition: 0.25s ease;
}

.about-brand-message a:hover {
    background: white;
}

/* RESPONSIVE DESIGN */

@media (max-width: 750px) {

    .about-hero {
        padding: 75px 20px;
    }

    .about-story {
        grid-template-columns: 1fr;
        gap: 35px;
        margin: 60px auto;
    }

    .about-story-image {
        height: 300px;
    }

    .about-purpose {
        padding: 65px 5%;
    }

    .about-purpose-grid {
        grid-template-columns: 1fr;
    }

    .about-purpose-card {
        padding: 30px;
    }
}

/* ==========================================
   GODSPEED CONTACT PAGE
========================================== */

.contact-page {
    background: #faf9f7;
    color: #202426;
}

/* HERO */

.contact-hero {
    background: #f1eee8;
    text-align: center;
    padding: 95px 20px 85px;
}

.contact-eyebrow {
    color: #a88b5b;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 3px;
}

.contact-hero h1 {
    font-size: clamp(42px, 7vw, 76px);
    font-weight: 900;
    margin: 20px 0;
}

.contact-hero h1 span {
    color: #ad9166;
}

.contact-hero > p:last-child {
    max-width: 550px;
    margin: auto;
    color: #777;
    line-height: 1.8;
}

/* MAIN CONTAINER */

.contact-container {
    width: 90%;
    max-width: 1150px;
    margin: 85px auto;
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 65px;
    align-items: start;
}

/* CONTACT INFORMATION */

.contact-information h2 {
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.1;
    font-weight: 900;
    margin: 20px 0;
}

.contact-description {
    color: #888;
    line-height: 1.8;
    margin-bottom: 35px;
}

.contact-detail-card {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 22px 0;
    border-bottom: 1px solid #e9e3d9;
}

.contact-icon {
    width: 45px;
    height: 45px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 14px;
    background: #f0e9dd;
    color: #94784c;
    font-size: 21px;
}

.contact-detail-card span {
    display: block;
    color: #a88b5b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.5px;
    margin-bottom: 9px;
}

.contact-detail-card a,
.contact-detail-card p {
    display: block;
    color: #383838;
    font-size: 14px;
    line-height: 1.8;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.contact-detail-card a:hover {
    color: #ad9166;
}

.contact-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.contact-socials a {
    color: #92764c;
    text-decoration: none;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1px;
}

/* CONTACT FORM */

.contact-form-card {
    padding: 38px;
    background: white;
    border: 1px solid #eee8df;
    border-radius: 24px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

.contact-form-card h2 {
    font-size: 25px;
    font-weight: 900;
    margin: 15px 0 28px;
}

.contact-form-field {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 22px;
}

.contact-form-field label {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1px;
    color: #555;
}

.contact-form-field input,
.contact-form-field textarea {
    width: 100%;
    padding: 15px 17px;
    border: 1px solid #e7e2dc;
    border-radius: 12px;
    background: #faf9f7;
    color: #333;
    font-family: inherit;
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
}

.contact-form-field input:focus,
.contact-form-field textarea:focus {
    border-color: #b99b6a;
    background: white;
}

.contact-form-field textarea {
    resize: vertical;
}

.contact-submit-button {
    width: 100%;
    padding: 17px;
    border: none;
    border-radius: 30px;
    background: #202426;
    color: white;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: 0.25s ease;
}

.contact-submit-button:hover {
    background: #b99b6a;
    color: #202426;
}

.contact-form-note {
    color: #999;
    font-size: 11px;
    text-align: center;
    line-height: 1.6;
    margin-top: 18px;
}

/* BRAND MESSAGE */

.contact-brand-message {
    padding: 65px 20px;
    background: #202426;
    color: white;
    text-align: center;
}

.contact-brand-message p {
    color: #c4a879;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 4px;
}

.contact-brand-message h2 {
    margin-top: 15px;
    font-size: clamp(17px, 3vw, 28px);
    letter-spacing: 2px;
}

/* RESPONSIVE */

@media (max-width: 800px) {

    .contact-container {
        grid-template-columns: 1fr;
        gap: 45px;
        margin: 55px auto;
    }

    .contact-form-card {
        padding: 25px;
    }

}

/* =========================================
   GODSPEED CUSTOMER MESSAGES
========================================= */

.admin-table-wrapper {
    width: 100%;
    overflow-x: auto;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 950px;
}

.admin-table th,
.admin-table td {
    padding: 16px;
    text-align: left;
    border-bottom: 1px solid #eeeeee;
    font-size: 13px;
    vertical-align: top;
}

.admin-table th {
    color: #777777;
    font-size: 11px;
    letter-spacing: 1px;
    font-weight: 700;
    background: #fafafa;
}

.admin-table td {
    color: #444444;
}

.admin-table td a {
    color: #8069a8;
    text-decoration: none;
}

.admin-table td a:hover {
    text-decoration: underline;
}

.message-preview {
    min-width: 220px;
    max-width: 300px;
    line-height: 1.6;
    white-space: normal;
    overflow-wrap: anywhere;
}

.admin-action-button {
    border: none;
    border-radius: 30px;
    padding: 10px 15px;
    background: #8069a8;
    color: white;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.7px;
    cursor: pointer;
    transition: 0.2s ease;
}

.admin-action-button:hover {
    background: #655184;
}

.message-read-label {
    color: #888888;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.7px;
}

.admin-empty-state {
    text-align: center;
    padding: 65px 20px;
}

.admin-empty-state span {
    font-size: 40px;
    color: #a18cbd;
}

.admin-empty-state h3 {
    margin: 15px 0 8px;
    font-size: 17px;
}

.admin-empty-state p {
    color: #888888;
    font-size: 13px;
}

/* =========================================
   PRODUCT MANAGEMENT ACTION BUTTONS
========================================= */

.product-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.product-actions form {
    margin: 0;
}

.product-edit-button,
.product-delete-button {
    display: inline-block;
    padding: 9px 14px;
    border: none;
    border-radius: 25px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.7px;
    text-decoration: none;
    cursor: pointer;
    transition: 0.2s ease;
}

.product-edit-button {
    background: #eee8f5;
    color: #70578f;
}

.product-edit-button:hover {
    background: #dcd0eb;
}

.product-delete-button {
    background: #f8e8e8;
    color: #a34343;
}

.product-delete-button:hover {
    background: #efcccc;
}

.admin-product-table {
    min-width: 950px;
}

/* PRODUCT VARIATIONS BUTTON */

.product-variation-button {
    display: inline-block;
    padding: 9px 14px;
    border-radius: 25px;
    background: #eee8f5;
    color: #70578f;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-decoration: none;
    transition: 0.2s ease;
}

.product-variation-button:hover {
    background: #dcd0eb;
}

/* =========================================
   GODSPEED PRODUCT DETAILS
========================================= */

.product-detail-page {
    padding: 65px 7%;
    background: #ffffff;
}

.product-detail-container {
    max-width: 1200px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 65px;
    align-items: start;
}

.product-detail-image {
    background: #f5f3f6;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 4 / 5;
}

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

.product-detail-placeholder {
    height: 100%;
    display: grid;
    place-items: center;
    color: #8b789f;
    font-size: 30px;
    font-weight: 800;
}

.product-detail-category {
    color: #9985b2;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.product-detail-info h1 {
    margin: 12px 0;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.15;
    color: #25232a;
}

.product-detail-price {
    font-size: 23px;
    font-weight: 700;
    color: #8069a8;
    margin: 20px 0;
}

.product-detail-description {
    color: #77717c;
    line-height: 1.8;
    white-space: pre-line;
}

.product-detail-divider {
    height: 1px;
    background: #ece9ef;
    margin: 28px 0;
}

.variant-selection {
    margin-bottom: 22px;
}

.variant-selection label {
    display: block;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.variant-selection select {
    width: 100%;
    padding: 15px;
    border: 1px solid #e4dfe9;
    border-radius: 12px;
    background: white;
    color: #333;
}

.variant-stock {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 25px 0;
    font-size: 13px;
}

.variant-stock span {
    color: #888;
}

.variant-stock strong {
    color: #655184;
}

.product-detail-button {
    width: 100%;
    padding: 17px;
    border: none;
    border-radius: 30px;
    background: #8069a8;
    color: white;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    cursor: pointer;
}

.product-detail-button:disabled {
    background: #c9c3d0;
    cursor: not-allowed;
}

.product-detail-note {
    margin-top: 25px;
    color: #9a929f;
    font-size: 11px;
    letter-spacing: 0.7px;
}

@media (max-width: 768px) {
    .product-detail-container {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .product-detail-page {
        padding: 35px 5%;
    }
}

/* SHOPPING CART */

.cart-section {
    max-width: 1250px;
    margin: 65px auto;
    padding: 0 25px;
}

.cart-heading {
    text-align: center;
    margin-bottom: 45px;
}

.cart-eyebrow {
    color: #b69b72;
    letter-spacing: 3px;
    font-size: 12px;
    font-weight: 700;
}

.cart-heading h1 {
    font-size: 38px;
    margin: 12px 0;
    color: #292929;
}

.cart-heading > p:last-child {
    color: #777;
}

.cart-layout {
    display: grid;
    grid-template-columns: 1.8fr 1fr;
    gap: 35px;
    align-items: start;
}

.cart-items {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.cart-item {
    display: grid;
    grid-template-columns: 130px 1fr auto;
    gap: 22px;
    padding: 22px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 18px;
}

.cart-product-image {
    width: 130px;
    height: 145px;
    border-radius: 13px;
    overflow: hidden;
    background: #f2f0ed;
}

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

.cart-no-image {
    display: grid;
    place-items: center;
    height: 100%;
    font-size: 12px;
    letter-spacing: 2px;
}

.cart-category {
    color: #a68b63;
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.cart-product-info h3 {
    margin: 5px 0 10px;
}

.cart-product-info p {
    color: #777;
    font-size: 13px;
}

.cart-price {
    color: #292929 !important;
    font-weight: 700;
}

.cart-quantity-form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 15px;
}

.cart-quantity-form label {
    font-size: 12px;
}

.cart-quantity-form input {
    width: 65px;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.cart-update-button,
.cart-remove-button {
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 12px;
    text-decoration: underline;
}

.cart-remove-button {
    color: #a33;
    margin-top: 12px;
}

.cart-subtotal {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: right;
    font-size: 13px;
}

.cart-summary {
    padding: 28px;
    border-radius: 18px;
    background: #f7f6f3;
}

.cart-summary h2 {
    margin-top: 0;
    margin-bottom: 25px;
}

.cart-summary-line,
.cart-summary-total {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin: 18px 0;
    font-size: 13px;
}

.cart-summary-total {
    padding-top: 18px;
    border-top: 1px solid #ddd;
    font-size: 17px;
    font-weight: 700;
}

.cart-checkout-button,
.cart-shop-button {
    display: block;
    width: 100%;
    padding: 15px;
    margin-top: 22px;
    border: none;
    border-radius: 30px;
    background: #292929;
    color: white;
    text-align: center;
    font-size: 12px;
    letter-spacing: 1px;
}

.cart-checkout-button:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.continue-shopping {
    display: block;
    margin-top: 18px;
    text-align: center;
    color: #555;
    font-size: 13px;
}

.empty-cart {
    padding: 65px 20px;
    text-align: center;
    background: #f8f7f4;
    border-radius: 20px;
}

.empty-cart-icon {
    font-size: 42px;
}

.empty-cart p {
    color: #777;
}

.cart-shop-button {
    max-width: 230px;
    margin: 25px auto 0;
    text-decoration: none;
}

@media (max-width: 800px) {
    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-item {
        grid-template-columns: 95px 1fr;
    }

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

    .cart-subtotal {
        grid-column: 2;
        text-align: left;
    }
}

.cart-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
}

.cart-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 21px;
    height: 21px;
    padding: 0 5px;
    border-radius: 50px;
    background: #c5a77b;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}

/* GODSPEED CHECKOUT */

.checkout-page {
    max-width: 1250px;
    margin: 65px auto;
    padding: 0 25px;
}

.checkout-heading {
    text-align: center;
    margin-bottom: 45px;
}

.checkout-eyebrow {
    color: #b69b72;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.checkout-heading h1 {
    color: #292929;
    font-size: 38px;
    margin: 12px 0;
}

.checkout-heading p:last-child {
    color: #777;
}

.checkout-layout {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 30px;
    align-items: start;
}

.checkout-form-container {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.checkout-card,
.checkout-summary {
    padding: 28px;
    border: 1px solid #eee;
    border-radius: 18px;
    background: #fff;
}

.checkout-card h2,
.checkout-summary h2 {
    font-size: 19px;
    margin: 0 0 25px;
}

.checkout-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.checkout-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.checkout-field.full-width {
    grid-column: 1 / -1;
}

.checkout-field label {
    font-size: 12px;
    font-weight: 600;
    color: #555;
}

.checkout-field input,
.checkout-field select,
.checkout-field textarea {
    width: 100%;
    padding: 13px;
    border: 1px solid #ddd;
    border-radius: 9px;
    font: inherit;
    font-size: 13px;
    background: #fff;
}

.checkout-field input:focus,
.checkout-field select:focus,
.checkout-field textarea:focus {
    outline: none;
    border-color: #b69b72;
}

.checkout-field input[readonly] {
    background: #f7f6f3;
}

.payment-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.payment-option {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border: 1px solid #eee;
    border-radius: 12px;
    cursor: pointer;
}

.payment-option input {
    accent-color: #b69b72;
}

.payment-option span {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.payment-option strong {
    font-size: 14px;
}

.payment-option small {
    color: #888;
    font-size: 12px;
}

.place-order-button {
    width: 100%;
    padding: 17px;
    border: none;
    border-radius: 30px;
    background: #292929;
    color: #fff;
    font-size: 12px;
    letter-spacing: 1px;
}

.place-order-button:disabled {
    opacity: .55;
    cursor: not-allowed;
}

.checkout-security-note {
    text-align: center;
    font-size: 12px;
    color: #888;
}

.checkout-product {
    display: flex;
    gap: 15px;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
}

.checkout-product-image {
    width: 75px;
    height: 90px;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 10px;
    background: #f2f0ed;
}

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

.checkout-image-placeholder {
    display: grid;
    place-items: center;
    height: 100%;
    font-size: 10px;
}

.checkout-product-details {
    display: flex;
    flex-direction: column;
    gap: 7px;
    font-size: 13px;
}

.checkout-product-details small {
    color: #777;
}

.checkout-summary-line,
.checkout-summary-total {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin: 20px 0;
    font-size: 13px;
}

.checkout-summary-total {
    padding-top: 20px;
    border-top: 1px solid #ddd;
    font-size: 17px;
    font-weight: 700;
}

.back-to-cart {
    display: block;
    margin-top: 25px;
    color: #555;
    text-align: center;
    font-size: 13px;
}

@media (max-width: 850px) {
    .checkout-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 550px) {
    .checkout-form-grid {
        grid-template-columns: 1fr;
    }

    .checkout-field.full-width {
        grid-column: auto;
    }
}

/* CUSTOMER ORDER HISTORY */

.customer-orders-page {
    max-width: 1100px;
    margin: 65px auto;
    padding: 0 25px;
}

.orders-heading {
    text-align: center;
    margin-bottom: 40px;
}

.orders-eyebrow {
    color: #b69b72;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.orders-heading h1 {
    font-size: 38px;
    margin: 12px 0;
}

.orders-heading p:last-child {
    color: #777;
}

.orders-list {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.order-card {
    padding: 25px;
    border: 1px solid #eee;
    border-radius: 18px;
    background: #fff;
}

.order-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.order-label,
.order-information span {
    display: block;
    color: #999;
    font-size: 10px;
    letter-spacing: 1px;
    margin-bottom: 7px;
}

.order-card-header h3 {
    margin: 0;
}

.order-status {
    padding: 8px 15px;
    border-radius: 30px;
    background: #f5f0e7;
    color: #8b704b;
    font-size: 12px;
    font-weight: 700;
}

.order-information {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 22px 0;
}

.order-information strong {
    font-size: 13px;
}

.order-products h4 {
    font-size: 12px;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.order-product-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 14px 0;
    border-top: 1px solid #eee;
}

.order-product-row p,
.order-product-row small {
    color: #777;
    font-size: 12px;
}

.order-delivery {
    margin-top: 15px;
    padding-top: 18px;
    border-top: 1px solid #eee;
}

.order-delivery strong {
    font-size: 11px;
    letter-spacing: 1px;
}

.order-delivery p {
    color: #777;
    font-size: 13px;
}

.no-orders {
    padding: 60px 20px;
    text-align: center;
    background: #f8f7f4;
    border-radius: 18px;
}

.no-orders p {
    color: #777;
}

.no-orders a {
    display: inline-block;
    margin-top: 15px;
    padding: 13px 25px;
    border-radius: 30px;
    background: #292929;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
}

.orders-back-link {
    display: inline-block;
    margin-top: 25px;
    color: #555;
    font-size: 13px;
}

@media (max-width: 700px) {
    .order-information {
        grid-template-columns: repeat(2, 1fr);
    }

    .order-card-header {
        align-items: flex-start;
        gap: 15px;
    }
}

/* ADMIN ORDER MANAGEMENT */

.admin-orders-page {
    max-width: 1250px;
    margin: 55px auto;
    padding: 0 25px;
}

.admin-orders-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.admin-eyebrow {
    color: #b69b72;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.admin-orders-heading h1 {
    margin: 8px 0;
    font-size: 32px;
}

.admin-orders-heading p:last-child {
    color: #777;
}

.admin-back-link {
    color: #555;
    font-size: 13px;
}

.admin-order-summary {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    margin-bottom: 30px;
}

.admin-order-summary > div {
    padding: 22px;
    border: 1px solid #eee;
    border-radius: 15px;
    background: #fff;
}

.admin-order-summary span,
.admin-order-total span {
    display: block;
    color: #888;
    font-size: 10px;
    letter-spacing: 1px;
}

.admin-order-summary strong {
    display: block;
    margin-top: 10px;
    font-size: 25px;
}

.admin-orders-list {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.admin-order-card {
    padding: 25px;
    border: 1px solid #eee;
    border-radius: 17px;
    background: #fff;
}

.admin-order-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.admin-order-header h2 {
    margin: 7px 0;
}

.admin-order-header small {
    color: #888;
}

.admin-order-label {
    color: #a68b63;
    font-size: 10px;
    letter-spacing: 1px;
}

.admin-order-total {
    text-align: right;
}

.admin-order-total strong {
    display: block;
    margin-top: 8px;
    font-size: 21px;
}

.admin-order-customer,
.admin-order-products,
.admin-order-payment {
    padding: 20px 0;
    border-bottom: 1px solid #eee;
}

.admin-order-customer h3,
.admin-order-products h3 {
    font-size: 15px;
}

.admin-order-customer p,
.admin-order-payment p {
    color: #666;
    font-size: 13px;
    line-height: 1.6;
}

.admin-order-product {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 13px 0;
    border-top: 1px solid #eee;
}

.admin-order-product p,
.admin-order-product small {
    color: #777;
    font-size: 12px;
}

.admin-order-update {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 15px;
    padding-top: 20px;
}

.admin-order-update > div {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.admin-order-update label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
}

.admin-order-update select {
    min-width: 160px;
    padding: 11px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
}

.admin-order-update button {
    padding: 12px 22px;
    border: none;
    border-radius: 25px;
    background: #292929;
    color: #fff;
    font-size: 11px;
    cursor: pointer;
}

.admin-orders-empty {
    padding: 60px 20px;
    border-radius: 16px;
    background: #f7f6f3;
    text-align: center;
}

.admin-orders-empty p {
    color: #777;
}

@media (max-width: 750px) {
    .admin-order-summary {
        grid-template-columns: repeat(2, 1fr);
    }

    .admin-orders-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 500px) {
    .admin-order-summary {
        grid-template-columns: 1fr 1fr;
    }

    .admin-order-update {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-order-update select,
    .admin-order-update button {
        width: 100%;
    }
}

/* GODSPEED SHOPPING CART */
.cart-page {
    max-width: 1200px;
    margin: 60px auto;
    padding: 0 24px;
}

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

.cart-eyebrow {
    color: #b49a6c;
    letter-spacing: 3px;
    font-size: 12px;
    font-weight: 700;
}

.cart-header h1 {
    font-size: 36px;
    margin: 10px 0;
}

.cart-layout {
    display: grid;
    grid-template-columns: 1.7fr 1fr;
    gap: 30px;
    align-items: start;
}

.cart-item {
    display: flex;
    gap: 20px;
    padding: 22px 0;
    border-bottom: 1px solid #e9e5df;
}

.cart-item-image {
    width: 125px;
    min-width: 125px;
    height: 145px;
    background: #f3f1ed;
    border-radius: 16px;
    overflow: hidden;
}

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

.cart-image-placeholder {
    height: 100%;
    display: grid;
    place-items: center;
    font-weight: 700;
    font-size: 12px;
}

.cart-item-details {
    flex: 1;
}

.cart-item-details h3 {
    margin: 0 0 8px;
}

.cart-variant,
.cart-stock {
    color: #777;
    font-size: 13px;
}

.cart-price {
    font-weight: 600;
}

.cart-quantity-form {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.cart-quantity-form input {
    width: 65px;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.cart-update-button,
.cart-remove-button {
    border: none;
    background: none;
    cursor: pointer;
    font-weight: 600;
    text-decoration: underline;
}

.cart-item-actions {
    text-align: right;
    min-width: 100px;
}

.cart-remove-button {
    color: #a34e4e;
    margin-top: 12px;
}

.cart-summary {
    padding: 28px;
    background: #f7f6f3;
    border-radius: 20px;
}

.cart-summary h2 {
    margin-top: 0;
}

.cart-summary-row,
.cart-summary-total {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 15px 0;
}

.cart-summary-total {
    border-top: 1px solid #ddd;
    font-size: 18px;
}

.cart-summary-note {
    color: #777;
    font-size: 12px;
    line-height: 1.5;
}

.cart-checkout-button,
.cart-continue-button {
    display: block;
    text-align: center;
    padding: 15px;
    border-radius: 30px;
    text-decoration: none;
    margin-top: 15px;
}

.cart-checkout-button {
    background: #252525;
    color: white;
}

.cart-continue-button {
    border: 1px solid #ccc;
    color: #252525;
}

.empty-cart {
    text-align: center;
    padding: 80px 20px;
}

@media (max-width: 750px) {
    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-item {
        gap: 12px;
    }

    .cart-item-image {
        width: 90px;
        min-width: 90px;
        height: 115px;
    }

    .cart-item-actions {
        min-width: 75px;
        font-size: 13px;
    }

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

/* =========================================
   GODSPEED INVENTORY MANAGEMENT
========================================= */

.admin-inventory {
    max-width: 1450px;
    margin: 55px auto;
    padding: 0 35px 70px;
    color: #252525;
}

.inventory-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 35px;
}

.inventory-eyebrow {
    color: #b99b65;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 12px;
}

.inventory-header h1 {
    font-size: 34px;
    font-weight: 800;
    margin: 0 0 10px;
}

.inventory-header p {
    color: #777;
}

.inventory-back {
    text-decoration: none;
    color: #fff;
    background: #252525;
    padding: 13px 20px;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

/* SUMMARY CARDS */

.inventory-summary {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
    margin-bottom: 40px;
}

.inventory-card {
    background: #fff;
    border: 1px solid #eae7e1;
    border-radius: 18px;
    padding: 25px 20px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.035);
}

.inventory-card span {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #777;
}

.inventory-card h2 {
    font-size: 32px;
    margin: 13px 0 0;
    font-weight: 800;
}

.inventory-card.warning {
    background: #fffaf0;
    border-color: #ead9b8;
}

.inventory-card.danger {
    background: #fff5f5;
    border-color: #efd5d5;
}

/* INVENTORY TOOLBAR */

.inventory-toolbar {
    background: #fff;
    border: 1px solid #eae7e1;
    border-radius: 20px;
    padding: 28px;
    margin-bottom: 25px;
}

.inventory-toolbar-heading h2,
.inventory-table-heading h2 {
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 8px;
}

.inventory-toolbar-heading p {
    color: #888;
    font-size: 13px;
}

.inventory-filter-form {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr auto auto;
    gap: 14px;
    align-items: end;
    margin-top: 25px;
}

.inventory-search,
.inventory-filter {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.inventory-search label,
.inventory-filter label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
}

.inventory-search input,
.inventory-filter select {
    width: 100%;
    min-height: 45px;
    padding: 10px 13px;
    border: 1px solid #dedbd5;
    border-radius: 10px;
    background: #fff;
    outline: none;
    font-size: 13px;
}

.inventory-search input:focus,
.inventory-filter select:focus {
    border-color: #b99b65;
}

.inventory-search-button,
.inventory-reset-button {
    min-height: 45px;
    padding: 0 20px;
    border-radius: 25px;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.inventory-search-button {
    background: #252525;
    color: #fff;
    border: none;
}

.inventory-reset-button {
    border: 1px solid #dedbd5;
    color: #252525;
    background: white;
}

/* INVENTORY TABLE */

.inventory-table-container {
    background: #fff;
    border: 1px solid #eae7e1;
    border-radius: 20px;
    padding: 28px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.035);
}

.inventory-table-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
}

.inventory-table-heading span {
    color: #888;
    font-size: 12px;
}

.table-responsive {
    width: 100%;
    overflow-x: auto;
}

.inventory-table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

.inventory-table th {
    text-align: left;
    padding: 16px 13px;
    background: #f7f6f3;
    color: #777;
    font-size: 10px;
    letter-spacing: 1px;
}

.inventory-table td {
    padding: 17px 13px;
    border-bottom: 1px solid #eeeae4;
    font-size: 13px;
}

.inventory-table tbody tr:hover {
    background: #faf9f6;
}

.stock-status {
    display: inline-block;
    padding: 7px 12px;
    border-radius: 20px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .5px;
}

.stock-status.available {
    color: #347451;
    background: #eaf5ee;
}

.stock-status.low {
    color: #99712b;
    background: #fff3dc;
}

.stock-status.out {
    color: #a34444;
    background: #fbeaea;
}

.inventory-manage-link {
    color: #a1844f;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
}

.inventory-empty {
    text-align: center;
    padding: 45px !important;
    color: #888;
}

/* RESPONSIVE */

@media (max-width: 1000px) {
    .inventory-summary {
        grid-template-columns: repeat(3, 1fr);
    }

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

@media (max-width: 600px) {
    .admin-inventory {
        padding: 0 16px 45px;
        margin-top: 30px;
    }

    .inventory-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .inventory-header h1 {
        font-size: 26px;
    }

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

    .inventory-filter-form {
        grid-template-columns: 1fr;
    }

    .inventory-toolbar,
    .inventory-table-container {
        padding: 18px;
    }
}

/* =========================================
   GODSPEED HOMEPAGE IMAGE MANAGER
========================================= */

.homepage-image-manager {
    max-width: 1400px;
    margin: 55px auto;
    padding: 0 30px 70px;
    color: #252525;
}

.him-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    margin-bottom: 28px;
}

.him-eyebrow {
    color: #b99b65;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
    margin-bottom: 10px;
}

.him-header h1 {
    font-size: clamp(25px, 3vw, 36px);
    font-weight: 800;
    margin: 0 0 10px;
}

.him-header p {
    color: #777;
    margin: 0;
    line-height: 1.6;
}

.him-back {
    background: #242424;
    color: #fff;
    text-decoration: none;
    padding: 13px 19px;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.him-note {
    background: #f8f6f1;
    border: 1px solid #eae4d9;
    border-radius: 16px;
    padding: 18px 22px;
    margin-bottom: 25px;
    color: #666;
    font-size: 13px;
    line-height: 1.6;
}

.him-note strong {
    display: block;
    color: #252525;
    margin-bottom: 5px;
}

.him-note p {
    margin: 4px 0;
}

/* IMAGE CARDS */

.him-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.him-card {
    background: #fff;
    border: 1px solid #e9e5de;
    border-radius: 19px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.035);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.him-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.07);
}

/* IMAGE PREVIEW */

.him-preview {
    height: 225px;
    background: #f4f2ed;
    position: relative;
    overflow: hidden;
}

.him-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.him-custom-badge,
.him-default-badge {
    position: absolute;
    left: 14px;
    top: 14px;
    border-radius: 20px;
    padding: 7px 11px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.8px;
    background: rgba(255, 255, 255, 0.94);
    color: #7e6741;
}

.him-default-badge {
    color: #666;
}

/* CARD CONTENT */

.him-card-body {
    padding: 20px;
}

.him-card-body h2 {
    font-size: 18px;
    margin: 0 0 7px;
}

.him-card-body p {
    font-size: 12px;
    color: #777;
    min-height: 34px;
    line-height: 1.5;
    margin: 0 0 17px;
}

.him-card-body > label:not(.him-remove-label) {
    display: block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.8px;
    margin-bottom: 9px;
}

.him-card-body input[type="file"] {
    width: 100%;
    font-size: 12px;
    border: 1px solid #e5e1da;
    border-radius: 10px;
    padding: 11px;
    background: #fff;
}

/* RESTORE DEFAULT IMAGE */

.him-remove-label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 13px;
    color: #965050;
    font-size: 11px;
}

/* SAVE BUTTON */

.him-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
}

.him-actions a {
    color: #555;
    text-decoration: none;
    font-size: 11px;
    font-weight: 800;
}

.him-actions button {
    border: 0;
    border-radius: 28px;
    background: #222;
    color: #fff;
    padding: 15px 23px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.7px;
    cursor: pointer;
    transition: background 0.25s ease;
}

.him-actions button:hover,
.him-back:hover {
    background: #aa8b55;
}

/* RESPONSIVE DESIGN */

@media (max-width: 760px) {

    .homepage-image-manager {
        padding: 0 16px 45px;
        margin-top: 30px;
    }

    .him-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .him-grid {
        grid-template-columns: 1fr;
    }

    .him-preview {
        height: 190px;
    }

    .him-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .him-actions button {
        width: 100%;
    }
}
/* =========================================
   GODSPEED CUSTOM SHIRT PRINTING
========================================= */

.custom-page {
    max-width: 1400px;
    margin: 45px auto 80px;
    padding: 0 28px;
    color: #252525;
}

.custom-hero {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    min-height: 440px;
    overflow: hidden;
    border-radius: 24px;
    background: #f5f3ee;
}

.custom-hero-copy {
    padding: clamp(32px, 6vw, 76px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.custom-eyebrow {
    color: #b99b65;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2.6px;
    margin: 0 0 13px;
}

.custom-hero-copy h1 {
    font-size: clamp(38px, 5.5vw, 68px);
    line-height: .98;
    letter-spacing: -2px;
    margin: 0 0 20px;
    font-weight: 900;
}

.custom-hero-copy > p:not(.custom-eyebrow) {
    color: #6e6e6e;
    line-height: 1.8;
    max-width: 470px;
    margin: 0 0 25px;
}

.custom-primary-button,
.custom-submit-button {
    border: 0;
    border-radius: 30px;
    background: #222526;
    color: #fff;
    padding: 15px 23px;
    text-decoration: none;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .8px;
    cursor: pointer;
}

.custom-hero-image {
    min-height: 360px;
    overflow: hidden;
}

.custom-hero-image img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    display: block;
}

.custom-intro {
    text-align: center;
    max-width: 760px;
    margin: 75px auto 35px;
}

.custom-intro h2,
.custom-form-heading h2 {
    font-size: clamp(25px, 3.5vw, 38px);
    font-weight: 900;
    margin: 0 0 13px;
}

.custom-intro > p:last-child,
.custom-form-heading > p:last-child {
    color: #777;
    line-height: 1.8;
}

.custom-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin: 35px 0 65px;
}

.custom-benefits article {
    border: 1px solid #e9e5de;
    border-radius: 18px;
    padding: 25px;
    background: #fff;
}

.custom-benefits article span {
    color: #b99b65;
    font-size: 12px;
    font-weight: 800;
}

.custom-benefits h3 {
    font-size: 14px;
    margin: 14px 0 9px;
}

.custom-benefits p {
    font-size: 13px;
    color: #777;
    line-height: 1.7;
    margin: 0;
}

.custom-form-panel {
    background: #f7f6f3;
    border-radius: 24px;
    padding: clamp(24px, 5vw, 55px);
}

.custom-form-heading {
    max-width: 690px;
    margin-bottom: 28px;
}

.custom-order-form {
    background: #fff;
    border: 1px solid #e9e5de;
    border-radius: 18px;
    padding: clamp(20px, 4vw, 36px);
}

.custom-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.custom-field {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.custom-field-full {
    grid-column: 1 / -1;
}

.custom-field label {
    color: #333;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .8px;
}

.custom-field input,
.custom-field select,
.custom-field textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #dedbd5;
    border-radius: 10px;
    padding: 13px 14px;
    background: #fff;
    color: #252525;
    font: inherit;
    font-size: 13px;
}

.custom-field textarea {
    resize: vertical;
    min-height: 125px;
}

.custom-field input:focus,
.custom-field select:focus,
.custom-field textarea:focus {
    outline: none;
    border-color: #b99b65;
    box-shadow: 0 0 0 3px rgba(185,155,101,.12);
}

.custom-field small,
.custom-privacy-note {
    color: #888;
    font-size: 11px;
    line-height: 1.6;
}

.custom-submit-button {
    margin-top: 25px;
}

.custom-primary-button:hover,
.custom-submit-button:hover {
    background: #a88951;
}

.custom-privacy-note {
    margin: 13px 0 0;
}

/* HOMEPAGE PROMOTIONAL SECTION */

.custom-promo {
    max-width: 1280px;
    margin: 65px auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow: hidden;
    border-radius: 22px;
    background: #f2f0eb;
}

.custom-promo-image {
    min-height: 360px;
    overflow: hidden;
}

.custom-promo-image img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    display: block;
}

.custom-promo-content {
    padding: clamp(28px, 5vw, 65px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.custom-promo-content h2 {
    font-size: clamp(34px, 4.5vw, 55px);
    line-height: .98;
    margin: 0 0 17px;
    font-weight: 900;
}

.custom-promo-content p:not(.subtitle),
.siapz-content p:not(.subtitle) {
    color: #666;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 400;
}

.custom-promo-caption {
    font-size: 12px;
    line-height: 1.6;
    letter-spacing: 1.5px;
    font-weight: 600;
}

/* ADMIN CUSTOM REQUESTS */

.admin-custom-requests {
    max-width: 1200px;
    margin: 50px auto 75px;
    padding: 0 24px;
}

.acr-header,
.acr-card-top,
.acr-details,
.acr-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
}

.acr-header {
    margin-bottom: 30px;
}

.acr-header h1 {
    margin: 0 0 8px;
    font-size: 32px;
}

.acr-header p {
    color: #777;
}

.acr-header > a,
.acr-download {
    color: #997b49;
    text-decoration: none;
    font-size: 11px;
    font-weight: 800;
}

.acr-card {
    border: 1px solid #e9e5de;
    background: #fff;
    border-radius: 18px;
    padding: 25px;
    margin-bottom: 18px;
}

.acr-reference,
.acr-details small,
.acr-notes small {
    color: #a1844f;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.acr-card h2 {
    margin: 6px 0;
}

.acr-card-top p:not(.acr-reference) {
    color: #777;
    margin: 5px 0;
}

.acr-status {
    background: #f5f0e5;
    color: #927343;
    padding: 8px 13px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: 800;
}

.acr-details {
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 20px 0;
    margin: 18px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.acr-details div {
    min-width: 145px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.acr-details strong {
    font-size: 13px;
}

.acr-notes p {
    color: #666;
    line-height: 1.7;
    white-space: pre-wrap;
}

.acr-actions {
    margin-top: 20px;
    flex-wrap: wrap;
}

.acr-actions form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.acr-actions label {
    font-size: 10px;
    font-weight: 800;
}

.acr-actions select {
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.acr-actions button {
    background: #252525;
    border: 0;
    border-radius: 20px;
    color: white;
    padding: 11px 16px;
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
}

.acr-no-file {
    color: #999;
    font-size: 12px;
}

.acr-empty {
    padding: 65px 20px;
    text-align: center;
    background: #f7f6f3;
    border-radius: 18px;
}

.acr-empty p {
    color: #777;
}

@media (max-width: 760px) {
    .custom-page {
        padding: 0 15px;
        margin-top: 25px;
    }

    .custom-hero,
    .custom-promo {
        grid-template-columns: 1fr;
    }

    .custom-hero-image,
    .custom-hero-image img,
    .custom-promo-image,
    .custom-promo-image img {
        min-height: 245px;
    }

    .custom-benefits,
    .custom-form-grid {
        grid-template-columns: 1fr;
    }

    .custom-field-full {
        grid-column: auto;
    }

    .custom-promo {
        margin: 45px 15px;
        padding: 0;
    }

    .acr-header,
    .acr-card-top {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* =========================================
   GODSPEED ADMIN CUSTOMER MANAGEMENT
========================================= */

.admin-customers {
    max-width: 1400px;
    margin: 55px auto;
    padding: 0 28px 70px;
    color: #252525;
}

.customers-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.customers-eyebrow {
    color: #b99b65;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2.5px;
    margin: 0 0 10px;
}

.customers-header h1 {
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 900;
    margin: 0 0 9px;
}

.customers-header p {
    color: #777;
    margin: 0;
}

.customers-back {
    padding: 13px 18px;
    border-radius: 30px;
    background: #252525;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.customers-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 26px;
}

.customers-stat-card {
    padding: 23px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 17px;
}

.customers-stat-card span {
    display: block;
    color: #777;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.customers-stat-card strong {
    display: block;
    font-size: 30px;
    margin-top: 10px;
}

.customers-panel {
    padding: 26px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 20px;
}

.customers-panel-heading h2 {
    margin: 0 0 7px;
    font-size: 18px;
}

.customers-panel-heading p {
    margin: 0;
    color: #888;
    font-size: 13px;
}

.customers-search-form {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 22px 0;
}

.customers-search-form input {
    flex: 1;
    min-width: 0;
    height: 44px;
    border: 1px solid #dedbd5;
    border-radius: 10px;
    padding: 0 14px;
    font: inherit;
    font-size: 13px;
}

.customers-search-form button,
.customers-search-form a {
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 24px;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.customers-search-form button {
    background: #252525;
    border: 0;
    color: #fff;
}

.customers-search-form a {
    color: #444;
    border: 1px solid #dedbd5;
}

.customers-table-wrap {
    overflow-x: auto;
}

.customers-table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

.customers-table th {
    padding: 15px 13px;
    background: #f7f6f3;
    color: #777;
    text-align: left;
    font-size: 10px;
    letter-spacing: .8px;
}

.customers-table td {
    padding: 16px 13px;
    border-bottom: 1px solid #eeeae4;
    font-size: 13px;
}

.customers-table tbody tr:hover {
    background: #faf9f6;
}

.customer-muted {
    color: #999;
    font-size: 12px;
}

.customers-empty {
    padding: 40px !important;
    color: #888;
    text-align: center;
}

.customers-privacy-note {
    color: #888;
    font-size: 11px;
    margin: 18px 0 0;
}

@media (max-width: 700px) {
    .admin-customers {
        padding: 0 15px 45px;
        margin-top: 30px;
    }

    .customers-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .customers-stats {
        grid-template-columns: 1fr;
    }

    .customers-panel {
        padding: 17px;
    }

    .customers-search-form {
        flex-wrap: wrap;
    }

    .customers-search-form input {
        flex-basis: 100%;
    }
}
/* =========================================
   GODSPEED ADMIN CUSTOMER MANAGEMENT
========================================= */

.admin-customers {
    max-width: 1400px;
    margin: 55px auto;
    padding: 0 28px 70px;
    color: #252525;
}

.customers-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.customers-eyebrow {
    color: #b99b65;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2.5px;
    margin: 0 0 10px;
}

.customers-header h1 {
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 900;
    margin: 0 0 9px;
}

.customers-header p {
    color: #777;
    margin: 0;
}

.customers-back {
    padding: 13px 18px;
    border-radius: 30px;
    background: #252525;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.customers-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 26px;
}

.customers-stat-card {
    padding: 23px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 17px;
}

.customers-stat-card span {
    display: block;
    color: #777;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.customers-stat-card strong {
    display: block;
    font-size: 30px;
    margin-top: 10px;
}

.customers-panel {
    padding: 26px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 20px;
}

.customers-panel-heading h2 {
    margin: 0 0 7px;
    font-size: 18px;
}

.customers-panel-heading p {
    margin: 0;
    color: #888;
    font-size: 13px;
}

.customers-search-form {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 22px 0;
}

.customers-search-form input {
    flex: 1;
    min-width: 0;
    height: 44px;
    border: 1px solid #dedbd5;
    border-radius: 10px;
    padding: 0 14px;
    font: inherit;
    font-size: 13px;
}

.customers-search-form button,
.customers-search-form a {
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 24px;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.customers-search-form button {
    background: #252525;
    border: 0;
    color: #fff;
}

.customers-search-form a {
    color: #444;
    border: 1px solid #dedbd5;
}

.customers-table-wrap {
    overflow-x: auto;
}

.customers-table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

.customers-table th {
    padding: 15px 13px;
    background: #f7f6f3;
    color: #777;
    text-align: left;
    font-size: 10px;
    letter-spacing: .8px;
}

.customers-table td {
    padding: 16px 13px;
    border-bottom: 1px solid #eeeae4;
    font-size: 13px;
}

.customers-table tbody tr:hover {
    background: #faf9f6;
}

.customer-muted {
    color: #999;
    font-size: 12px;
}

.customers-empty {
    padding: 40px !important;
    color: #888;
    text-align: center;
}

.customers-privacy-note {
    color: #888;
    font-size: 11px;
    margin: 18px 0 0;
}

@media (max-width: 700px) {
    .admin-customers {
        padding: 0 15px 45px;
        margin-top: 30px;
    }

    .customers-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .customers-stats {
        grid-template-columns: 1fr;
    }

    .customers-panel {
        padding: 17px;
    }

    .customers-search-form {
        flex-wrap: wrap;
    }

    .customers-search-form input {
        flex-basis: 100%;
    }
}


/* CUSTOMER PROFILE AND ORDER HISTORY */
.customer-view-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 13px;
    border-radius: 22px;
    background: #252525;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .5px;
}
.customer-view-link:hover { background: #b99b65; color: #fff; }
.admin-customer-detail {
    max-width: 1400px;
    margin: 55px auto;
    padding: 0 28px 70px;
    color: #252525;
}
.customer-detail-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 28px;
}
.customer-detail-eyebrow {
    color: #b99b65;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2.5px;
    margin: 0 0 10px;
}
.customer-detail-header h1 { font-size: clamp(25px, 3vw, 35px); font-weight: 900; margin: 0 0 9px; }
.customer-detail-header p { color: #777; margin: 0; }
.customer-detail-back {
    padding: 13px 18px;
    border-radius: 30px;
    background: #252525;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}
.customer-profile-card {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 28px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 20px;
}
.customer-avatar {
    width: 66px;
    height: 66px;
    flex: 0 0 66px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #f4efe5;
    color: #967744;
    font-size: 26px;
    font-weight: 900;
}
.customer-detail-label {
    display: block;
    color: #9a8b73;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    margin-bottom: 6px;
}
.customer-profile-main h2 { margin: 0 0 5px; font-size: 22px; }
.customer-profile-main p { color: #777; margin: 0 0 10px; }
.customer-account-id { color: #888; font-size: 10px; font-weight: 700; }
.customer-detail-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 20px 0 26px;
}
.customer-detail-stat {
    padding: 22px;
    background: #fff;
    border: 1px solid #eae5dc;
    border-radius: 17px;
}
.customer-detail-stat span { display: block; color: #777; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.customer-detail-stat strong { display: block; margin-top: 10px; font-size: 25px; }
.customer-detail-stat .customer-date-value { font-size: 19px; }
.customer-orders-panel { padding: 26px; background: #fff; border: 1px solid #eae5dc; border-radius: 20px; }
.customer-orders-heading { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 20px; }
.customer-orders-heading h2 { margin: 0 0 7px; font-size: 18px; }
.customer-orders-heading p { margin: 0; color: #888; font-size: 13px; }
.customer-orders-heading > span { color: #997c4d; background: #f7f2e9; padding: 9px 13px; border-radius: 20px; font-size: 9px; font-weight: 800; }
.customer-order-card { padding: 23px 0; border-top: 1px solid #eee9e0; }
.customer-order-topline { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.customer-order-topline h3 { margin: 0 0 5px; font-size: 17px; }
.customer-order-date { color: #888; font-size: 12px; margin: 0; }
.customer-order-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.customer-status-pill, .customer-payment-pill { display: inline-block; padding: 7px 11px; border-radius: 20px; background: #f2eee6; color: #6c5838; font-size: 9px; font-weight: 800; }
.customer-payment-pill { background: #f3f3f3; color: #555; }
.customer-order-meta { display: grid; grid-template-columns: 1fr 2fr 1fr; gap: 15px; margin: 20px 0; padding: 16px; background: #faf9f6; border-radius: 12px; }
.customer-order-meta strong { display: block; font-size: 12px; line-height: 1.5; }
.customer-order-items-wrap { overflow-x: auto; }
.customer-order-items { width: 100%; border-collapse: collapse; min-width: 600px; }
.customer-order-items th, .customer-order-items td { padding: 12px 10px; border-bottom: 1px solid #eee; text-align: left; font-size: 11px; }
.customer-order-items th { color: #8c806d; font-size: 9px; letter-spacing: .7px; }
.customer-order-empty { color: #888; text-align: center !important; }
.customer-no-orders { padding: 45px 20px; border-top: 1px solid #eee9e0; text-align: center; }
.customer-no-orders p { color: #888; font-size: 13px; }
@media (max-width: 700px) {
    .customer-detail-header { align-items: flex-start; flex-direction: column; }
    .customer-detail-stats { grid-template-columns: 1fr; }
    .customer-order-meta { grid-template-columns: 1fr; }
    .customer-order-topline { flex-direction: column; }
    .customer-order-badges { justify-content: flex-start; }
    .customer-profile-card { align-items: flex-start; padding: 20px; }
    .customer-detail-back { align-self: flex-start; }
}
/* GODSPEED ADMIN ORDER MANAGEMENT */
.gs-orders-page,.gs-order-detail-page{max-width:1420px;margin:50px auto;padding:0 28px 70px;color:#282724}
.gs-orders-header,.gs-order-detail-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}
.gs-orders-eyebrow{margin:0 0 10px;color:#b99b65;font-size:10px;font-weight:800;letter-spacing:2.3px}
.gs-orders-header h1,.gs-order-detail-header h1{margin:0 0 9px;font-size:clamp(26px,3vw,36px);font-weight:900;letter-spacing:-.7px}
.gs-orders-header p:not(.gs-orders-eyebrow),.gs-order-detail-header p:not(.gs-orders-eyebrow){margin:0;color:#777;font-size:13px}
.gs-orders-back{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:30px;background:#282724;color:#fff;text-decoration:none;font-size:10px;font-weight:800;white-space:nowrap}
.gs-orders-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.gs-orders-summary>div,.gs-order-card,.gs-orders-panel{background:#fff;border:1px solid #eae5dc;border-radius:17px}
.gs-orders-summary>div{padding:20px}.gs-orders-summary span,.gs-order-status-banner span{display:block;color:#888;font-size:10px;font-weight:800;letter-spacing:1px}.gs-orders-summary strong{display:block;margin-top:9px;font-size:27px}
.gs-orders-panel{padding:25px}.gs-orders-panel-heading{margin-bottom:20px}.gs-orders-panel-heading h2,.gs-order-section-heading h2,.gs-order-update-card h2{margin:0 0 6px;font-size:18px}.gs-orders-panel-heading p{margin:0;color:#888;font-size:12px}
.gs-orders-table-wrap,.gs-order-items-wrap{overflow-x:auto}.gs-orders-table,.gs-order-items-table{width:100%;border-collapse:collapse;white-space:nowrap}.gs-orders-table th,.gs-order-items-table th{padding:14px 12px;background:#f7f6f3;text-align:left;color:#777;font-size:9px;letter-spacing:.8px}.gs-orders-table td,.gs-order-items-table td{padding:15px 12px;border-bottom:1px solid #eeeae4;font-size:12px}.gs-orders-table td small{display:block;margin-top:4px;color:#888;font-size:10px}.gs-orders-amount{font-weight:800}.gs-order-status,.gs-payment-status{display:inline-block;padding:6px 9px;border-radius:20px;background:#f2efe8;color:#514b40;font-size:10px;font-weight:700}.gs-order-view{display:inline-flex;padding:8px 12px;border-radius:22px;background:#282724;color:#fff;text-decoration:none;font-size:9px;font-weight:800}.gs-order-view:hover,.gs-orders-back:hover{background:#b99b65;color:white}.gs-orders-empty{text-align:center;padding:35px!important;color:#888}
.gs-order-status-banner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;padding:22px;background:#282724;color:#fff;border-radius:17px}.gs-order-status-banner span{color:#c9c2b5}.gs-order-status-banner strong{display:block;margin-top:8px;font-size:19px}
.gs-order-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}.gs-order-card{padding:23px;margin-bottom:18px}.gs-order-detail-grid .gs-order-card{margin:0}.gs-order-card-label{margin:0 0 13px;color:#b99b65;font-size:9px;font-weight:800;letter-spacing:1.5px}.gs-order-card h2{margin:0 0 10px;font-size:17px}.gs-order-card p:not(.gs-order-card-label){margin:5px 0;color:#666;font-size:12px;overflow-wrap:anywhere}.gs-order-subtle{margin-top:14px;color:#999;font-size:10px}.gs-order-text-link{display:inline-block;margin-top:12px;color:#8f7447;text-decoration:none;font-size:10px;font-weight:800}.gs-order-section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.gs-order-section-heading>span{color:#888;font-size:10px;font-weight:800}.gs-order-totals{max-width:370px;margin:20px 0 0 auto}.gs-order-totals>div{display:flex;justify-content:space-between;gap:18px;padding:9px 0;color:#666;font-size:12px}.gs-order-totals strong{color:#282724}.gs-order-totals .gs-order-grand-total{margin-top:5px;padding-top:14px;border-top:1px solid #e7e1d7;color:#282724;font-weight:900;font-size:14px}.gs-order-update-note{max-width:780px;color:#888;font-size:12px;line-height:1.6}.gs-order-update-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;margin-top:18px}.gs-order-update-form label{display:grid;gap:7px;color:#666;font-size:11px;font-weight:700}.gs-order-update-form select{height:43px;padding:0 12px;border:1px solid #dedbd5;border-radius:9px;background:white;font:inherit}.gs-order-update-form button{height:43px;padding:0 20px;border:0;border-radius:24px;background:#282724;color:#fff;font-size:10px;font-weight:800;cursor:pointer}.gs-order-update-form button:hover{background:#b99b65}
@media(max-width:800px){.gs-order-detail-grid{grid-template-columns:1fr 1fr}.gs-orders-summary{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.gs-orders-page,.gs-order-detail-page{margin-top:30px;padding:0 15px 45px}.gs-orders-header,.gs-order-detail-header{align-items:flex-start;flex-direction:column}.gs-order-status-banner{grid-template-columns:1fr}.gs-order-detail-grid{grid-template-columns:1fr}.gs-orders-panel,.gs-order-card{padding:17px}.gs-order-update-form{grid-template-columns:1fr}.gs-order-update-form button{width:100%}}
/* ==========================================
   GODSPEED CUSTOMER SHIPMENT TRACKING
========================================== */

.order-tracking {
    margin-top: 25px;
    padding: 25px;
    background: #F8F7F3;
    border: 1px solid #EAE5DC;
    border-radius: 18px;
}

.order-tracking h4 {
    margin-bottom: 15px;
    color: #202426;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

.tracking-message {
    margin-bottom: 22px;
    padding: 14px 16px;
    background: #FFFFFF;
    border-left: 3px solid #B99B65;
    border-radius: 8px;
    color: #555;
    font-size: 12px;
    line-height: 1.7;
}

.tracking-information {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.tracking-information > div {
    padding: 17px;
    background: #FFFFFF;
    border: 1px solid #ECE8DF;
    border-radius: 12px;
}

.tracking-information span,
.tracking-number-display span {
    display: block;
    margin-bottom: 8px;
    color: #A58B5E;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.tracking-information strong {
    display: block;
    color: #30383A;
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.tracking-number-display {
    margin-top: 18px;
    padding: 18px;
    background: #FFFFFF;
    border: 1px dashed #B99B65;
    border-radius: 12px;
}

.tracking-number-display strong {
    color: #202426;
    font-size: 17px;
    font-weight: 900;
    letter-spacing: 1px;
    overflow-wrap: anywhere;
}

.tracking-notes {
    margin-top: 18px;
    padding: 17px;
    background: #EAF0F1;
    border-radius: 12px;
}

.tracking-notes strong {
    display: block;
    margin-bottom: 8px;
    color: #708E99;
    font-size: 10px;
    letter-spacing: 1px;
}

.tracking-notes p {
    color: #4F5D60;
    font-size: 12px;
    line-height: 1.8;
}

.order-cost-breakdown {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid #EAE5DC;
}

.order-cost-breakdown > div {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 8px 0;
    color: #777;
    font-size: 11px;
}

.order-cost-breakdown strong {
    color: #30383A;
    font-weight: 800;
}

.order-cost-breakdown .order-total-row {
    margin-top: 10px;
    padding-top: 17px;
    border-top: 1px solid #EAE5DC;
    color: #202426;
    font-size: 13px;
    font-weight: 900;
}

.order-cost-breakdown .order-total-row strong {
    color: #A58B5E;
    font-size: 17px;
}

/* MOBILE RESPONSIVENESS */

@media (max-width: 700px) {
    .customer-orders-page {
        margin: 40px auto;
        padding: 0 16px;
    }

    .order-card {
        padding: 18px;
    }

    .order-information {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .tracking-information {
        grid-template-columns: 1fr;
    }

    .order-tracking {
        padding: 18px;
    }

    .order-card-header {
        flex-wrap: wrap;
    }
}

/* ==========================================
   GODSPEED ORDER PROGRESS TRACKER
========================================== */

.order-progress-section {
    margin: 25px 0;
    padding: 25px;
    background: #FAF9F6;
    border: 1px solid #EAE5DC;
    border-radius: 18px;
}

.order-progress-section h4 {
    margin-bottom: 28px;
    color: #202426;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

.order-progress {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
    gap: 8px;
}

.progress-step {
    position: relative;
    z-index: 1;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.progress-circle {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    border: 2px solid #DAD7D0;
    border-radius: 50%;
    background: #FFFFFF;
    color: #999;
    font-size: 12px;
    font-weight: 800;
}

.progress-step span {
    color: #999;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.5;
}

.progress-step.completed .progress-circle {
    background: #B99B65;
    border-color: #B99B65;
    color: #FFFFFF;
}

.progress-step.completed span {
    color: #92784D;
}

.progress-step.current .progress-circle {
    box-shadow: 0 0 0 5px rgba(185, 155, 101, 0.15);
}

.progress-step.current span {
    color: #202426;
    font-weight: 900;
}

.progress-description {
    margin-top: 22px;
    color: #777;
    font-size: 11px;
    line-height: 1.7;
    text-align: center;
}

.progress-cancelled {
    padding: 20px;
    background: #FFF0EE;
    border-radius: 12px;
    color: #A33B34;
}

.progress-cancelled strong {
    display: block;
    margin-bottom: 7px;
    font-size: 11px;
    letter-spacing: 1px;
}

.progress-cancelled p {
    font-size: 12px;
    line-height: 1.6;
}

/* MOBILE */

@media (max-width: 600px) {
    .order-progress-section {
        padding: 18px 12px;
    }

    .order-progress {
        gap: 3px;
    }

    .progress-circle {
        width: 31px;
        height: 31px;
        font-size: 10px;
    }

    .progress-step span {
        font-size: 8px;
    }

    .progress-description {
        font-size: 10px;
    }
}
/* ==========================================
   GODSPEED CUSTOMER WISHLIST
========================================== */

.wishlist-page {
    width: min(1180px, calc(100% - 40px));
    margin: 65px auto;
}

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

.wishlist-eyebrow {
    margin-bottom: 10px;
    color: #A58B5E;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
}

.wishlist-heading h1 {
    margin: 0 0 10px;
    color: #202426;
    font-size: clamp(30px, 5vw, 48px);
    font-weight: 900;
    letter-spacing: -1.5px;
}

.wishlist-heading > p:last-child {
    color: #777;
    font-size: 13px;
}

.wishlist-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.wishlist-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid #EAE5DC;
    border-radius: 16px;
}

.wishlist-product-image {
    display: block;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: #F5F3EF;
}

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

.wishlist-card:hover .wishlist-product-image img {
    transform: scale(1.04);
}

.wishlist-image-placeholder {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #A58B5E;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.wishlist-product-info {
    padding: 19px;
}

.wishlist-category {
    margin-bottom: 7px;
    color: #A58B5E;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.wishlist-product-info h2 {
    margin: 0 0 9px;
    font-size: 15px;
    font-weight: 800;
}

.wishlist-product-info h2 a {
    color: #202426;
    text-decoration: none;
}

.wishlist-price {
    margin-bottom: 17px;
    color: #92784D;
    font-size: 15px;
    font-weight: 900;
}

.wishlist-actions {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.wishlist-view-button,
.wishlist-remove-button {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    cursor: pointer;
}

.wishlist-view-button {
    background: #202426;
    color: #fff;
}

.wishlist-remove-button {
    background: #fff;
    border: 1px solid #E3DED5;
    color: #777;
}

.wishlist-actions form {
    margin: 0;
}

.wishlist-empty {
    padding: 65px 25px;
    background: #FAF9F6;
    border: 1px solid #EAE5DC;
    border-radius: 16px;
    text-align: center;
}

.wishlist-empty h2 {
    margin-bottom: 10px;
    color: #202426;
    font-size: 22px;
}

.wishlist-empty p {
    margin-bottom: 22px;
    color: #777;
    font-size: 13px;
}

.wishlist-empty a {
    display: inline-flex;
    padding: 14px 22px;
    background: #202426;
    border-radius: 7px;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
}

.wishlist-back-link {
    display: inline-block;
    margin-top: 30px;
    color: #92784D;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
}

@media (max-width: 850px) {
    .wishlist-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 540px) {
    .wishlist-page {
        width: calc(100% - 28px);
        margin: 40px auto;
    }

    .wishlist-grid {
        grid-template-columns: 1fr;
        gap: 17px;
    }
}
/* ==========================================
   GODSPEED ADD TO WISHLIST BUTTONS
========================================== */

.shop-wishlist-form {
    margin-top: 10px;
}

.shop-wishlist-button,
.detail-wishlist-button {
    width: 100%;
    min-height: 44px;
    padding: 12px 16px;
    border: 1px solid #B99B65;
    border-radius: 7px;
    background: #FFFFFF;
    color: #92784D;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    cursor: pointer;
    transition: background .2s ease, color .2s ease;
}

.shop-wishlist-button:hover,
.detail-wishlist-button:hover {
    background: #B99B65;
    color: #FFFFFF;
}

.detail-wishlist-form {
    margin-top: 13px;
}

/* =========================================
   GODSPEED APPAREL - MY PROFILE PAGE
========================================= */

.profile-dashboard {
    max-width: 600px;
}

.profile-form {
    width: 100%;
    margin-top: 30px;
    text-align: left;
}

.profile-field {
    width: 100%;
    margin-bottom: 24px;
}

.profile-field label {
    display: block;
    margin-bottom: 10px;
    color: #77716a;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.profile-field input {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 13px 15px;
    border: 1px solid #e5dfd5;
    border-radius: 5px;
    background: #fff;
    color: #252525;
    font-family: inherit;
    font-size: 14px;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s ease;
}

.profile-field input:focus {
    border-color: #c49b65;
}

.profile-actions {
    display: flex;
    gap: 12px;
    margin-top: 30px;
}

.profile-save-button,
.profile-cancel-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 25px;
    border-radius: 30px;
    font-family: inherit;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.profile-save-button {
    flex: 1;
    border: 1px solid #202324;
    background: #202324;
    color: #fff;
}

.profile-save-button:hover {
    background: #c49b65;
    border-color: #c49b65;
}

.profile-cancel-button {
    border: 1px solid #ded7cc;
    background: #fff;
    color: #252525;
}

.profile-cancel-button:hover {
    border-color: #c49b65;
    color: #a77e4d;
}

.profile-back {
    margin-top: 28px;
}

.profile-back a {
    color: #9b805e;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-decoration: none;
}

.profile-back a:hover {
    color: #252525;
}

@media (max-width: 600px) {
    .profile-actions {
        flex-direction: column;
    }

    .profile-save-button,
    .profile-cancel-button {
        width: 100%;
    }
}

/* =========================================
   GODSPEED - CHANGE PASSWORD
========================================= */

.password-dashboard {
    max-width: 600px;
}

.password-note {
    margin-top: -8px;
    color: #898078;
    font-size: 11px;
}

.profile-security-link {
    margin-top: 25px;
    border-top: 1px solid #e5dfd5;
}

.profile-security-link a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    color: #252525;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-decoration: none;
}

.profile-security-link a:hover {
    color: #b99b65;
}

/* ==========================================
   GODSPEED — MY ADDRESSES PAGE
========================================== */

.account-page {
    min-height: 75vh;
    padding: 65px 20px;
    background: #f7f6f2;
}

.account-page .account-container {
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
    padding: 45px;
    background: #ffffff;
    border: 1px solid #eae5da;
    border-radius: 28px;
    box-shadow: 0 15px 45px rgba(32, 36, 38, 0.06);
}

.account-page .account-container h1 {
    margin-bottom: 12px;
    color: #202426;
    font-size: clamp(32px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -2px;
}

.account-page .account-container h2 {
    margin: 35px 0 18px;
    color: #202426;
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -0.5px;
}

.account-page .account-container p {
    color: #777777;
    font-size: 13px;
    line-height: 1.7;
}

/* Address forms */

.account-page .account-container form {
    margin-top: 15px;
}

.account-page .account-container form label {
    display: block;
    margin: 13px 0 7px;
    color: #343434;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.8px;
}

.account-page .account-container input:not([type="checkbox"]),
.account-page .account-container select,
.account-page .account-container textarea {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 13px 15px;
    border: 1px solid #e8e4dc;
    border-radius: 12px;
    background: #ffffff;
    color: #202426;
    font-family: inherit;
    font-size: 13px;
    outline: none;
    transition: border-color 0.25s, box-shadow 0.25s;
}

.account-page .account-container textarea {
    min-height: 100px;
    resize: vertical;
}

.account-page .account-container input:focus,
.account-page .account-container select:focus,
.account-page .account-container textarea:focus {
    border-color: #b99a65;
    box-shadow: 0 0 0 3px rgba(185, 154, 101, 0.12);
}

/* Default address checkbox */

.account-page .account-container input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    accent-color: #b99a65;
    vertical-align: middle;
}

/* Buttons */

.account-page .account-container button {
    min-height: 45px;
    padding: 13px 22px;
    border: 1px solid #202426;
    border-radius: 50px;
    background: #202426;
    color: #ffffff;
    font-family: inherit;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.account-page .account-container button:hover {
    border-color: #b99a65;
    background: #b99a65;
    color: #202426;
}

/* Saved address content */

.account-page .account-container hr {
    margin: 25px 0;
    border: 0;
    border-top: 1px solid #eeeae2;
}

.account-page .account-container a {
    color: #202426;
    text-decoration: none;
    transition: color 0.25s;
}

.account-page .account-container a:hover {
    color: #b99a65;
}

/* Responsive layout */

@media (max-width: 600px) {
    .account-page {
        padding: 35px 14px;
    }

    .account-page .account-container {
        padding: 28px 20px;
        border-radius: 22px;
    }

    .account-page .account-container h1 {
        font-size: 34px;
    }

    .account-page .account-container h2 {
        font-size: 19px;
    }

    .account-page .account-container button {
        width: 100%;
    }
}
/* GODSPEED ADMIN DASHBOARD ICONS */
.admin-management-card .admin-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    border-radius: 16px;
    background: #f5f0e7;
    color: #c99a45;
}

.admin-management-card .admin-icon svg {
    display: block;
    width: 28px;
    height: 28px;
}
/* =========================================
   GODSPEED - MOST VIEWED PRODUCT
========================================= */

.most-viewed-product-card {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 25px;
    margin-top: 20px;
    background: #ffffff;
    border: 1px solid #e8e3dc;
    border-radius: 16px;
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.04);
}

.most-viewed-product-card img {
    width: 180px;
    height: 180px;
    object-fit: cover;
    border-radius: 12px;
    background: #f5f3ef;
}

.most-viewed-product-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.most-viewed-product-info h3 {
    margin: 0;
    color: #242424;
    font-size: 22px;
    font-weight: 700;
}

.most-viewed-product-info p {
    margin: 0;
    color: #8c7658;
    font-size: 17px;
}

.most-viewed-product-info span {
    color: #777777;
    font-size: 13px;
}

.most-viewed-product-info a {
    display: inline-block;
    width: fit-content;
    margin-top: 8px;
    padding: 10px 18px;
    color: #ffffff;
    background: #242424;
    border-radius: 6px;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 1px;
    transition: 0.3s ease;
}

.most-viewed-product-info a:hover {
    background: #9b805d;
}

@media (max-width: 600px) {
    .most-viewed-product-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .most-viewed-product-card img {
        width: 100%;
        height: 220px;
    }
}
/* CUSTOMIZE + SIAPZ TWO-COLUMN LAYOUT */

.feature-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
    margin: 40px 4%;
    align-items: stretch;
}

.feature-columns > section {
    margin: 0;
    min-width: 0;
    height: 100%;
}

@media (max-width: 760px) {
    .feature-columns {
        grid-template-columns: 1fr;
    }
}
/* ==========================================
   GODSPEED — FINAL PROMOTIONAL TYPOGRAPHY
========================================== */

/* Promotional section layout */
.brand-category-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
}

/* Promotional content */
.brand-category-grid .custom-promo-content,
.brand-category-grid .siapz-content {
    padding: clamp(30px, 5vw, 65px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

/* Main headings */
.brand-category-grid .custom-promo-content h2 {
    color: #202426;
    font-size: clamp(38px, 4.5vw, 58px);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: -2px;
    margin: 0 0 20px;
}

.brand-category-grid .siapz-content h2 {
    font-size: clamp(65px, 8vw, 105px);
    font-weight: 900;
    line-height: .9;
    letter-spacing: -5px;
}

/* Subtitle and description */
.brand-category-grid .custom-promo-content .subtitle,
.brand-category-grid .siapz-content .subtitle {
    font-size: 13px;
    line-height: 1.6;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
}

.brand-category-grid .custom-promo-content > p:not(.subtitle),
.brand-category-grid .siapz-content > p:not(.subtitle) {
    max-width: 520px;
    color: #62696B;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.85;
    margin-bottom: 25px;
}

/* Promotional buttons */
.brand-category-grid .custom-promo-content a,
.brand-category-grid .siapz-content a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1px;
    padding: 17px 28px;
    border-radius: 50px;
}

/* Small promotional captions */
.brand-category-grid .custom-promo-caption {
    margin-top: 18px;
    color: #92784D;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 1.3px;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .brand-category-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .brand-category-grid .custom-promo-content,
    .brand-category-grid .siapz-content {
        padding: 35px 25px;
    }

    .brand-category-grid .custom-promo-content h2 {
        font-size: clamp(34px, 8vw, 44px);
        line-height: 1.08;
    }

    .brand-category-grid .siapz-content h2 {
        font-size: clamp(65px, 15vw, 85px);
    }

    .brand-category-grid .custom-promo-content > p:not(.subtitle),
    .brand-category-grid .siapz-content > p:not(.subtitle) {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* ==========================================
   GODSPEED — CHECKOUT DELIVERY EXPERIENCE
========================================== */

.delivery-promise-card {
    position: relative;
    overflow: hidden;
    background: #fbfaf7;
    border: 1px solid #e9e2d8;
    border-radius: 18px;
    padding: 30px;
}

.delivery-promise-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 25px;
}

.delivery-promise-icon {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #222729;
    color: #fff;
    font-size: 21px;
}

.delivery-promise-label {
    display: block;
    color: #92784d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.8px;
    margin-bottom: 7px;
}

.delivery-promise-top h2 {
    margin: 0;
    color: #202426;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: -.5px;
}

.delivery-timeline {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 22px;
    background: #fff;
    border: 1px solid #eee8df;
    border-radius: 14px;
}

.delivery-timeline-number {
    color: #92784d;
    font-size: clamp(40px, 6vw, 55px);
    line-height: 1;
    font-weight: 900;
    letter-spacing: -3px;
    white-space: nowrap;
}

.delivery-timeline-details {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.delivery-timeline-details strong {
    color: #202426;
    font-size: 11px;
    letter-spacing: 1px;
}

.delivery-timeline-details span {
    color: #777;
    font-size: 13px;
    line-height: 1.5;
}

.delivery-promise-description {
    color: #555;
    font-size: 14px;
    line-height: 1.85;
    margin: 22px 0;
}

.delivery-promise-footnote {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    background: #f1eee8;
    border-radius: 10px;
    color: #6d6a64;
    font-size: 11px;
    line-height: 1.7;
}

.delivery-promise-footnote i {
    color: #92784d;
    margin-top: 3px;
}

.delivery-promise-signature {
    margin-top: 22px;
    color: #92784d;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

.delivery-promise-signature span {
    color: #888;
    font-weight: 500;
    letter-spacing: .5px;
}

.checkout-delivery-estimate {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px;
    margin: 20px 0;
    border: 1px solid #e9e2d8;
    background: #fbfaf7;
    border-radius: 12px;
}

.estimate-icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    background: #222729;
    color: white;
    border-radius: 11px;
}

.checkout-delivery-estimate strong {
    display: block;
    font-size: 10px;
    letter-spacing: 1px;
    color: #92784d;
}

.checkout-delivery-estimate p {
    margin: 5px 0 0;
    color: #555;
    font-size: 12px;
    line-height: 1.6;
}

@media (max-width: 600px) {
    .delivery-promise-card {
        padding: 21px;
    }

    .delivery-promise-top h2 {
        font-size: 17px;
    }

    .delivery-timeline {
        gap: 13px;
        padding: 17px;
    }

    .delivery-timeline-number {
        font-size: 43px;
    }

    .delivery-promise-description {
        font-size: 13px;
    }
}

/* CUSTOMER ORDER CANCELLATION */

.customer-order-actions {
    display: flex;
    justify-content: flex-end;
    margin: 15px 0;
}

.cancel-order-button {
    background: #fff;
    color: #b42318;
    border: 1px solid #b42318;
    padding: 11px 20px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.cancel-order-button:hover {
    background: #b42318;
    color: #fff;
}

.cancel-order-button:focus-visible {
    outline: 3px solid rgba(180, 35, 24, 0.25);
    outline-offset: 3px;
}

/* =========================================
   GODSPEED CUSTOM STUDIO
========================================= */

.custom-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin: 45px 0 65px;
}

.custom-category-card {
    position: relative;
    display: block;
    width: 100%;
    min-height: 300px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 12px;
    background: #eee;
    cursor: pointer;
    text-align: left;
    transition: .3s ease;
}

.custom-category-card img {
    display: block;
    width: 100%;
    height: 300px;
    object-fit: cover;
    transition: transform .5s ease;
}

.custom-category-card:hover img {
    transform: scale(1.06);
}

.custom-category-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 25px;
    color: #fff;
    background: linear-gradient(
        to top,
        rgba(15, 15, 15, .92),
        rgba(15, 15, 15, .05)
    );
}

.custom-category-overlay h3 {
    margin: 0 0 8px;
    font-size: 23px;
    letter-spacing: 1.5px;
}

.custom-category-overlay p {
    margin: 0 0 15px;
    font-size: 13px;
    line-height: 1.6;
}

.custom-category-overlay span {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.custom-category-card:hover,
.custom-category-card.active {
    border-color: #7770a8;
    box-shadow: 0 8px 25px rgba(40, 30, 70, .16);
}

.custom-form-panel {
    scroll-margin-top: 100px;
}

.custom-field[hidden] {
    display: none !important;
}

.custom-category-card:focus-visible {
    outline: 3px solid #7770a8;
    outline-offset: 4px;
}

/* TABLET */
@media (max-width: 768px) {
    .custom-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .custom-category-card,
    .custom-category-card img {
        min-height: 240px;
        height: 240px;
    }

    .custom-category-overlay {
        padding: 17px;
    }

    .custom-category-overlay h3 {
        font-size: 19px;
    }
}

/* MOBILE */
@media (max-width: 520px) {
    .custom-category-grid {
        grid-template-columns: 1fr;
    }

    .custom-category-card,
    .custom-category-card img {
        min-height: 280px;
        height: 280px;
    }
}



/* =========================================================
   GODSPEED APPAREL™ — BLACK EDITORIAL LUXURY THEME
   Global theme overrides. Existing layout and functionality
   are intentionally preserved.
========================================================= */
:root {
    color-scheme: dark;
    --gs-black: #080808;
    --gs-charcoal: #151515;
    --gs-gold: #d2b47c;
    --gs-gold-light: #ead7ad;
    --gs-blue: #242424;
    --gs-blue-dark: #c7b18a;
    --gs-ivory: #101010;
    --gs-white: #f5f5f5;
    --gs-gray: #a5a5a5;
    --gs-line: #303030;
    --gs-bg: #080808;
    --gs-panel: #141414;
    --gs-panel-soft: #1b1b1b;
    --gs-text: #f4f4f4;
    --gs-muted: #a5a5a5;
}

html, body {
    background: #080808 !important;
    color: #f4f4f4;
}

body {
    color: var(--gs-text);
}

main {
    background: #080808;
    color: var(--gs-text);
}

.announcement-bar {
    background: #050505 !important;
    color: #e2c995 !important;
    border-bottom: 1px solid #292929;
}

.navbar {
    background: #090909 !important;
    color: #f5f5f5 !important;
    border-bottom: 1px solid #292929 !important;
}

.main-navigation a,
.nav-action {
    color: #eeeeee !important;
}

.main-navigation a:hover,
.nav-action:hover,
.footer-links a:hover {
    color: #d2b47c !important;
}

.nav-action svg {
    stroke: currentColor;
}

.cart-count {
    background: #d2b47c !important;
    color: #090909 !important;
}

.hero,
.hero-content,
.categories,
.featured-section,
.brand-message,
.search-page,
.account-page,
.shop-page,
.admin-dashboard {
    background: #080808 !important;
    color: #f4f4f4 !important;
}

.hero-content h1,
.section-heading h2,
.product-card h3,
.product-price,
.sale-content h2,
.brand-message h2,
.search-header h1,
.account-container h1,
.shop-heading h1,
.shop-empty h2,
.admin-header h1,
.admin-section-heading h2,
.admin-stat-card h2,
.admin-management-card h3,
.admin-page-header h1,
.admin-form-card h2,
.admin-table-heading h2 {
    color: #f5f5f5 !important;
}

.hero-content .description,
.section-description,
.product-category,
.sale-content > p:not(.subtitle),
.brand-message p:last-child,
.search-description,
.account-description,
.shop-heading > p:last-child,
.shop-empty p,
.admin-header p,
.admin-management-card p,
.admin-page-header p,
.admin-form-card > p,
.admin-table-heading p {
    color: #aaa !important;
}

.hero-content,
.siapz-content,
.limited-content {
    background: #111 !important;
}

.hero-image,
.siapz-image,
.limited-image,
.product-image,
.category-card,
.custom-category-card {
    background-color: #1b1b1b !important;
}

.category-card::after {
    background: linear-gradient(to top, rgba(0,0,0,.88), rgba(0,0,0,.06) 78%) !important;
}

.siapz-section {
    background: #151515 !important;
    color: #f5f5f5 !important;
}

.siapz-content h2,
.siapz-content h3 {
    color: #f5f5f5 !important;
}

.siapz-content > p:not(.subtitle) {
    color: #aaa !important;
}

.featured-section .product-card,
.product-card,
.shop-page .product-card {
    background: #141414 !important;
    border: 1px solid #303030 !important;
    color: #f5f5f5 !important;
}

.product-card:hover,
.shop-page .product-card:hover {
    box-shadow: 0 16px 36px rgba(0,0,0,.45) !important;
}

.product-image,
.shop-page .product-image,
.product-image-placeholder {
    background: #202020 !important;
}

.product-image-placeholder {
    color: #d2b47c !important;
}

.limited-section {
    background: #111 !important;
    color: #f5f5f5 !important;
}

.limited-content > p:not(.subtitle) {
    color: #bbb !important;
}

.sale-section {
    background: linear-gradient(120deg, #171717, #0b0b0b, #202020) !important;
}

.sale-content .subtitle {
    color: #d2b47c !important;
}

.sale-content h2 {
    color: #f5f5f5 !important;
}

.sale-content > p:not(.subtitle) {
    color: #aaa !important;
}

.brand-message {
    border: 1px solid #262626;
}

.shop-button,
.search-form button,
.account-form button,
.logout-button,
.admin-submit-button {
    background: #f2f2f2 !important;
    border-color: #f2f2f2 !important;
    color: #080808 !important;
}

.shop-button:hover,
.search-form button:hover,
.account-form button:hover,
.logout-button:hover,
.admin-submit-button:hover {
    background: #d2b47c !important;
    border-color: #d2b47c !important;
    color: #080808 !important;
}

.search-form,
.search-empty-state,
.account-container,
.shop-empty,
.admin-status,
.admin-stat-card,
.admin-management-card,
.admin-product-form,
.admin-product-list,
.admin-form-card,
.admin-table-card {
    background: #141414 !important;
    color: #f4f4f4 !important;
    border: 1px solid #303030 !important;
    box-shadow: 0 12px 35px rgba(0,0,0,.2);
}

.search-input-wrapper input,
.account-form input,
.form-group input:not([type="checkbox"]),
.form-group select,
.form-group textarea,
.admin-field input:not([type="checkbox"]),
.admin-field select,
.admin-field textarea,
input:not([type="checkbox"]),
select,
textarea {
    background-color: #1c1c1c;
    color: #f5f5f5;
    border-color: #3b3b3b;
}

.search-input-wrapper input::placeholder,
input::placeholder,
textarea::placeholder {
    color: #888;
}

.search-input-wrapper svg {
    stroke: #aaa;
}

.account-form label,
.form-group label,
.admin-field label {
    color: #e8e8e8 !important;
}

.account-form input:focus,
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.admin-field input:focus,
.admin-field select:focus,
.admin-field textarea:focus {
    border-color: #d2b47c !important;
    background: #202020 !important;
}

.account-switch,
.account-detail span,
.account-description,
.form-group small,
.admin-field small {
    color: #aaa !important;
}

.account-switch a,
.account-menu-link,
.admin-footer-action a,
.admin-back-button {
    color: #e6cf9f !important;
}

.account-details,
.account-menu,
.account-detail,
.account-menu-link {
    border-color: #333 !important;
}

.publish-option {
    background: #202020 !important;
    color: #eee !important;
}

.admin-dashboard,
.admin-page {
    background: #080808 !important;
}

.admin-page-header h1,
.admin-form-card h2,
.admin-table-heading h2,
.admin-empty-state h3 {
    color: #f5f5f5 !important;
}

.admin-card-icon {
    background: #29241b !important;
    color: #d2b47c !important;
}

.admin-management-card p,
.admin-stat-card p,
.admin-page-header p,
.admin-empty-state p {
    color: #aaa !important;
}

.admin-back-button {
    background: #1b1b1b !important;
    border-color: #393939 !important;
}

.admin-table,
.admin-product-table {
    color: #eee !important;
}

.admin-table th,
.admin-product-table th {
    color: #d2b47c !important;
    border-color: #383838 !important;
}

.admin-table td,
.admin-product-table td {
    color: #d0d0d0 !important;
    border-color: #303030 !important;
}

.admin-empty-state {
    background: #1b1b1b !important;
    color: #f5f5f5 !important;
}

.admin-count {
    background: #29241b !important;
    color: #e2c995 !important;
}

.admin-product-name,
.hub-table-info {
    color: #f1f1f1 !important;
}

.admin-no-image,
.hub-image-placeholder {
    background: #252525 !important;
    color: #d2b47c !important;
}

.admin-alert.success,
.admin-message.success {
    background: #14251c !important;
    color: #9ed7b2 !important;
}

.admin-alert.error,
.admin-message.error {
    background: #2b1717 !important;
    color: #f0a5a0 !important;
}

.status-published,
.product-status.published {
    color: #8ed0a5 !important;
}

.status-draft,
.product-status.draft {
    color: #e3c58d !important;
}

.hub-edit-button {
    background: #29241b !important;
    color: #e2c995 !important;
}

.hub-delete-button {
    background: #301b1b !important;
    color: #f0a5a0 !important;
}

footer {
    background: #050505 !important;
    color: #f4f4f4 !important;
    border-top: 1px solid #292929;
}

.footer-brand h3,
.footer-links h4 {
    color: #d2b47c !important;
}

.footer-brand p,
.footer-links a,
.footer-bottom {
    color: #aaa !important;
}

.footer-bottom {
    border-color: #303030 !important;
}

.flash-message {
    border: 1px solid #383838;
}

table {
    color: #eee;
}

hr {
    border-color: #333;
}

::selection {
    background: #d2b47c;
    color: #080808;
}

:focus-visible {
    outline: 2px solid #d2b47c;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

/* =========================================================
   GODSPEED CUSTOM STUDIO — REFINED BLACK & GOLD
   Consistent typography, fields, spacing and responsive layout
========================================================= */

/* Main typography */
.custom-page {
    font-family: 'Montserrat', sans-serif;
    background: #080808;
    color: #f5f5f5;
    padding-bottom: 70px;
}

.custom-page .custom-eyebrow {
    color: #d2b47c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
    line-height: 1.6;
}

.custom-page .custom-intro h2,
.custom-page .custom-form-heading h2 {
    font-size: clamp(26px, 3.2vw, 36px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1.2px;
    color: #f5f5f5;
}

.custom-page .custom-intro > p:last-child,
.custom-page .custom-form-heading > p:last-child {
    color: #aaa;
    font-size: 14px;
    line-height: 1.8;
}

/* Category cards */
.custom-page .custom-category-grid {
    gap: 18px;
    margin: 35px 0 55px;
}

.custom-page .custom-category-card {
    border: 1px solid #303030;
    border-radius: 12px;
    background: #151515;
}

.custom-page .custom-category-overlay h3 {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: .5px;
}

.custom-page .custom-category-overlay p {
    font-size: 12px;
    line-height: 1.7;
    color: #e0e0e0;
}

.custom-page .custom-category-card:hover,
.custom-page .custom-category-card.active {
    border-color: #d2b47c;
    box-shadow: 0 8px 28px rgba(210, 180, 124, .12);
}

.custom-page .custom-category-card:focus-visible {
    outline: 2px solid #d2b47c;
    outline-offset: 4px;
}

/* Form outer panel */
.custom-page .custom-form-panel {
    background: #101010;
    border: 1px solid #292929;
    border-radius: 18px;
    padding: clamp(22px, 4vw, 42px);
    scroll-margin-top: 100px;
}

.custom-page .custom-form-heading {
    max-width: 700px;
    margin-bottom: 30px;
}

/* Form card */
.custom-page .custom-order-form {
    background: #151515 !important;
    border: 1px solid #303030 !important;
    border-radius: 14px;
    padding: clamp(20px, 3.5vw, 34px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, .18);
}

/* Form layout */
.custom-page .custom-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 23px 20px;
}

.custom-page .custom-field {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
}

.custom-page .custom-field-full {
    grid-column: 1 / -1;
}

/* Labels */
.custom-page .custom-field label {
    color: #eaeaea !important;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .9px;
    line-height: 1.5;
}

/* Inputs, dropdowns and text areas */
.custom-page .custom-field input,
.custom-page .custom-field select,
.custom-page .custom-field textarea {
    width: 100%;
    min-height: 46px;
    box-sizing: border-box;
    padding: 12px 14px;
    border: 1px solid #393939 !important;
    border-radius: 9px;
    background: #202020 !important;
    color: #f5f5f5 !important;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    outline: none;
    transition: border-color .25s ease, box-shadow .25s ease;
}

.custom-page .custom-field textarea {
    min-height: 130px;
    resize: vertical;
}

.custom-page .custom-field input::placeholder,
.custom-page .custom-field textarea::placeholder {
    color: #888 !important;
    opacity: 1;
}

/* Dropdown options */
.custom-page .custom-field select option {
    background: #202020;
    color: #f5f5f5;
}

/* Focus */
.custom-page .custom-field input:focus,
.custom-page .custom-field select:focus,
.custom-page .custom-field textarea:focus {
    border-color: #d2b47c !important;
    box-shadow: 0 0 0 3px rgba(210, 180, 124, .13);
}

/* File upload */
.custom-page .custom-field input[type="file"] {
    padding: 10px;
    color: #ccc !important;
}

.custom-page .custom-field input[type="file"]::file-selector-button {
    margin-right: 12px;
    padding: 9px 13px;
    border: 0;
    border-radius: 6px;
    background: #d2b47c;
    color: #080808;
    font-family: inherit;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
}

/* Helper text and privacy note */
.custom-page .custom-field small,
.custom-page .custom-privacy-note {
    color: #999 !important;
    font-size: 11px;
    line-height: 1.7;
}

/* Submit button */
.custom-page .custom-submit-button {
    min-height: 48px;
    margin-top: 25px;
    padding: 13px 24px;
    border: 1px solid #d2b47c;
    border-radius: 7px;
    background: #d2b47c;
    color: #080808;
    font-family: inherit;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .8px;
    cursor: pointer;
    transition: .25s ease;
}

.custom-page .custom-submit-button:hover {
    background: #ead7ad;
    border-color: #ead7ad;
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 768px) {
    .custom-page .custom-form-grid {
        grid-template-columns: 1fr;
        gap: 19px;
    }

    .custom-page .custom-field-full {
        grid-column: auto;
    }

    .custom-page .custom-form-panel {
        padding: 22px 16px;
    }

    .custom-page .custom-order-form {
        padding: 20px 16px;
    }
}

@media (max-width: 520px) {
    .custom-page .custom-category-grid {
        grid-template-columns: 1fr;
    }

    .custom-page .custom-category-card,
    .custom-page .custom-category-card img {
        height: 280px;
        min-height: 280px;
    }

    .custom-page .custom-submit-button {
        width: 100%;
    }
}

/* =====================================================
   GODSPEED APPAREL™
   PREMIUM PRODUCT CARD REDESIGN
   BLACK / CHARCOAL / CHAMPAGNE GOLD
===================================================== */

:root {
    --product-card-bg: #141414;
    --product-image-bg: #202020;
    --product-border: #303030;
    --product-gold: #d2b47c;
    --product-white: #f5f5f5;
    --product-muted: #999999;
}

/* PRODUCT CARD */

.featured-section .product-card,
.shop-page .product-card,
.product-grid .product-card {
    background: var(--product-card-bg) !important;
    border: 1px solid var(--product-border) !important;
    border-radius: 12px !important;
    padding: 12px !important;
    overflow: hidden;
    color: var(--product-white) !important;
    box-shadow: 0 5px 20px rgba(0,0,0,.15);
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

/* HOVER EFFECT */

.featured-section .product-card:hover,
.shop-page .product-card:hover,
.product-grid .product-card:hover {
    transform: translateY(-6px);
    border-color: var(--product-gold) !important;
    box-shadow: 0 15px 35px rgba(0,0,0,.4);
}

/* PRODUCT IMAGE CONTAINER */

.featured-section .product-image,
.shop-page .product-image,
.product-grid .product-image {
    width: 100%;
    height: 320px;
    margin-bottom: 16px;
    overflow: hidden;
    border-radius: 7px !important;
    background: var(--product-image-bg) !important;
}

/* PRODUCT IMAGE */

.featured-section .product-image img,
.shop-page .product-image img,
.product-grid .product-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .5s ease;
}

.featured-section .product-card:hover .product-image img,
.shop-page .product-card:hover .product-image img,
.product-grid .product-card:hover .product-image img {
    transform: scale(1.045);
}

/* PRODUCT INFORMATION */

.featured-section .product-card h3,
.shop-page .product-card h3,
.product-grid .product-card h3 {
    margin: 12px 5px 8px !important;
    color: var(--product-white) !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.5;
    letter-spacing: .3px;
}

.featured-section .product-category,
.shop-page .product-category,
.product-grid .product-category {
    margin: 0 5px 8px !important;
    color: var(--product-muted) !important;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.featured-section .product-price,
.shop-page .product-price,
.product-grid .product-price {
    margin: 0 5px 10px !important;
    color: var(--product-gold) !important;
    font-size: 14px;
    font-weight: 800;
}

/* PRODUCT LINKS */

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

/* VIEW PRODUCT BUTTON */

.product-card .shop-view-product {
    display: inline-block;
    margin: 8px 5px 5px;
    padding: 10px 14px;
    border: 1px solid var(--product-gold);
    border-radius: 3px;
    color: var(--product-gold) !important;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: .3s ease;
}

.product-card .shop-view-product:hover {
    background: var(--product-gold);
    color: #080808 !important;
}

/* EMPTY PRODUCT IMAGE */

.product-image-placeholder,
.product-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--product-image-bg) !important;
    color: var(--product-gold) !important;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 3px;
}

/* SHOP PAGE BACKGROUND */

.shop-page {
    background: #080808 !important;
}

.shop-page .shop-heading h1 {
    color: var(--product-white) !important;
}

.shop-page .shop-heading > p:last-child {
    color: var(--product-muted) !important;
}

/* FEATURED PRODUCT SECTION */

.featured-section {
    background: #0b0b0b;
}

.featured-section .section-heading h2 {
    color: var(--product-white) !important;
}

.featured-section .section-heading .section-description {
    color: var(--product-muted) !important;
}

/* RESPONSIVE PRODUCT CARDS */

@media (max-width: 760px) {
    .featured-section .product-image,
    .shop-page .product-image,
    .product-grid .product-image {
        height: 260px;
    }

    .featured-section .product-card,
    .shop-page .product-card,
    .product-grid .product-card {
        padding: 9px !important;
    }
}

@media (max-width: 480px) {
    .featured-section .product-image,
    .shop-page .product-image,
    .product-grid .product-image {
        height: 340px;
    }
}

/* =========================================================
   GODSPEED APPAREL™ — ADMIN CONTRAST & FORM FIX
   Ivory cards / Charcoal text / Champagne gold accents
   Scoped to admin interfaces to protect the public storefront.
========================================================= */

:root {
    --gs-admin-ink: #202426;
    --gs-admin-muted: #687174;
    --gs-admin-gold: #B99B65;
    --gs-admin-gold-light: #D9C69B;
    --gs-admin-paper: #FFFFFF;
    --gs-admin-soft: #F7F6F2;
    --gs-admin-line: #E7E2D8;
}

/* Admin page foundations */
.admin-dashboard,
.admin-page,
.gs-admin-products {
    color: var(--gs-admin-ink);
}

.admin-dashboard,
.admin-page {
    background: #F5F3ED;
}

.admin-dashboard h1,
.admin-dashboard h2,
.admin-dashboard h3,
.admin-dashboard h4,
.admin-page h1,
.admin-page h2,
.admin-page h3,
.admin-page h4,
.gs-admin-products h1,
.gs-admin-products h2,
.gs-admin-products h3,
.gs-admin-products h4 {
    color: var(--gs-admin-ink);
}

.admin-dashboard p,
.admin-page p,
.gs-admin-products p {
    color: var(--gs-admin-muted);
}

/* Admin headings and descriptions */
.admin-header h1,
.admin-page-header h1,
.admin-dashboard .admin-header h1,
.gs-admin-products .admin-header h1 {
    color: var(--gs-admin-ink) !important;
}

.admin-header > div > p,
.admin-page-header > div > p,
.gs-admin-products .admin-header > div > p {
    color: var(--gs-admin-muted) !important;
}

.admin-dashboard .account-label,
.gs-admin-products .account-label,
.admin-page .admin-eyebrow,
.admin-dashboard .admin-eyebrow {
    color: #9B7A43 !important;
}

/* Admin content cards */
.admin-product-form,
.admin-product-list,
.admin-form-card,
.admin-table-card,
.admin-stat-card,
.admin-management-card,
.gs-admin-card {
    background: var(--gs-admin-paper) !important;
    color: var(--gs-admin-ink) !important;
    border: 1px solid var(--gs-admin-line);
    box-shadow: 0 10px 30px rgba(32, 36, 38, 0.045);
}

.admin-product-form h2,
.admin-product-list h2,
.admin-form-card h2,
.admin-table-card h2,
.gs-admin-card h2,
.gs-admin-card h3 {
    color: var(--gs-admin-ink) !important;
}

.admin-product-form p,
.admin-product-list p,
.admin-form-card p,
.admin-table-card p,
.gs-admin-card p {
    color: var(--gs-admin-muted) !important;
}

/* Form labels — cover legacy and newer product form markup */
.admin-dashboard label,
.admin-page label,
.gs-admin-products label,
.admin-product-form label,
.admin-form-card label,
.gs-product-form label,
.gs-form-grid > label,
.form-group label,
.admin-field label {
    color: #343A3C !important;
    font-weight: 800;
}

/* Inputs, selects, textareas and upload controls */
.admin-dashboard input:not([type="checkbox"]):not([type="radio"]),
.admin-dashboard select,
.admin-dashboard textarea,
.admin-page input:not([type="checkbox"]):not([type="radio"]),
.admin-page select,
.admin-page textarea,
.gs-admin-products input:not([type="checkbox"]):not([type="radio"]),
.gs-admin-products select,
.gs-admin-products textarea,
.admin-product-form input:not([type="checkbox"]):not([type="radio"]),
.admin-product-form select,
.admin-product-form textarea,
.admin-form-card input:not([type="checkbox"]):not([type="radio"]),
.admin-form-card select,
.admin-form-card textarea,
.gs-product-form input:not([type="checkbox"]):not([type="radio"]),
.gs-product-form select,
.gs-product-form textarea {
    color: #202426 !important;
    background: #FFFFFF !important;
    border: 1px solid #DCD7CD !important;
    caret-color: #202426;
}

.admin-dashboard input::placeholder,
.admin-dashboard textarea::placeholder,
.admin-page input::placeholder,
.admin-page textarea::placeholder,
.gs-admin-products input::placeholder,
.gs-admin-products textarea::placeholder {
    color: #858B8C !important;
    opacity: 1;
}

.admin-dashboard input:focus,
.admin-dashboard select:focus,
.admin-dashboard textarea:focus,
.admin-page input:focus,
.admin-page select:focus,
.admin-page textarea:focus,
.gs-admin-products input:focus,
.gs-admin-products select:focus,
.gs-admin-products textarea:focus {
    outline: none;
    border-color: var(--gs-admin-gold) !important;
    box-shadow: 0 0 0 3px rgba(185, 155, 101, 0.15);
}

.admin-dashboard input[type="file"],
.admin-page input[type="file"],
.gs-admin-products input[type="file"] {
    color: #343A3C !important;
    background: #FAF9F6 !important;
}

.admin-dashboard input[type="checkbox"],
.admin-dashboard input[type="radio"],
.admin-page input[type="checkbox"],
.admin-page input[type="radio"],
.gs-admin-products input[type="checkbox"],
.gs-admin-products input[type="radio"] {
    accent-color: var(--gs-admin-gold);
}

/* Helper text and upload notes */
.admin-dashboard small,
.admin-page small,
.gs-admin-products small,
.admin-dashboard .gs-muted,
.gs-admin-products .gs-muted,
.admin-dashboard .form-group small,
.gs-admin-products .form-group small {
    color: #737B7D !important;
}

/* Product inventory tables */
.admin-dashboard table,
.admin-page table,
.gs-admin-products table {
    color: #343A3C;
    background: #FFFFFF;
}

.admin-dashboard table th,
.admin-page table th,
.gs-admin-products table th {
    color: #8D7042 !important;
    background: #F7F5F0;
}

.admin-dashboard table td,
.admin-page table td,
.gs-admin-products table td {
    color: #41494B !important;
    border-color: #EAE6DE;
}

.admin-dashboard table td strong,
.admin-page table td strong,
.gs-admin-products table td strong {
    color: #202426 !important;
}

/* Status badges and notices */
.admin-dashboard .admin-status,
.gs-admin-products .admin-status {
    color: #343A3C;
    background: #FFFFFF;
}

.admin-dashboard .admin-message.success,
.gs-admin-products .admin-message.success {
    color: #236642 !important;
    background: #EAF5ED !important;
}

.admin-dashboard .admin-message.error,
.gs-admin-products .admin-message.error {
    color: #963B35 !important;
    background: #FFF0EE !important;
}

/* Admin buttons */
.admin-dashboard button,
.admin-page button,
.gs-admin-products button,
.admin-dashboard .admin-submit-button,
.admin-page .admin-submit-button,
.gs-admin-products .gs-primary-button {
    font-family: inherit;
    cursor: pointer;
}

.admin-dashboard .admin-submit-button,
.admin-page .admin-submit-button,
.gs-admin-products .gs-primary-button,
.gs-admin-products button[type="submit"] {
    color: #FFFFFF !important;
    background: #202426 !important;
    border: 1px solid #202426 !important;
    border-radius: 999px;
    font-weight: 800;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.admin-dashboard .admin-submit-button:hover,
.admin-page .admin-submit-button:hover,
.gs-admin-products .gs-primary-button:hover,
.gs-admin-products button[type="submit"]:hover {
    color: #202426 !important;
    background: var(--gs-admin-gold) !important;
    border-color: var(--gs-admin-gold) !important;
}

/* Links and action controls */
.admin-dashboard a,
.admin-page a,
.gs-admin-products a {
    text-underline-offset: 3px;
}

.gs-admin-products .gs-actions a,
.admin-dashboard .hub-edit-button,
.admin-dashboard .hub-delete-button {
    text-decoration: none;
}

/* Empty states */
.admin-dashboard .admin-empty-state,
.admin-page .admin-empty-state,
.gs-admin-products .admin-empty-state {
    color: #343A3C;
    background: #F8F7F4;
}

.admin-dashboard .admin-empty-state h3,
.admin-page .admin-empty-state h3,
.gs-admin-products .admin-empty-state h3 {
    color: #202426 !important;
}

.admin-dashboard .admin-empty-state p,
.admin-page .admin-empty-state p,
.gs-admin-products .admin-empty-state p {
    color: #737B7D !important;
}

/* Responsive admin form layout */
@media (max-width: 700px) {
    .admin-dashboard,
    .admin-page {
        padding-left: 5%;
        padding-right: 5%;
    }

    .admin-dashboard .admin-header,
    .admin-page .admin-page-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-dashboard .admin-product-form,
    .admin-dashboard .admin-product-list,
    .admin-page .admin-form-card,
    .admin-page .admin-table-card,
    .gs-admin-products .gs-admin-card {
        padding: 20px !important;
    }
}

/* =========================================================
   GODSPEED APPAREL™ — CONSOLIDATED DESIGN SYSTEM
   Updated: cohesive monochrome storefront with muted violet accents
   This layer intentionally preserves legacy template selectors.
========================================================= */

:root {
    --gs-black: #111114;
    --gs-charcoal: #24242A;
    --gs-gold: #7770A8;          /* legacy variable: now muted violet */
    --gs-gold-light: #A7A1CC;
    --gs-blue: #E8E7F0;
    --gs-blue-dark: #625C91;
    --gs-ivory: #F7F7F8;
    --gs-white: #FFFFFF;
    --gs-gray: #777780;
    --gs-line: #E7E7EB;

    --gs-accent: #7770A8;
    --gs-accent-dark: #5E587F;
    --gs-text: #17171B;
    --gs-muted: #74747D;
    --gs-surface: #FFFFFF;
    --gs-soft: #F7F7F9;
    --gs-radius-sm: 8px;
    --gs-radius-md: 14px;
    --gs-radius-lg: 22px;
    --gs-shadow-sm: 0 5px 18px rgba(20, 20, 30, .05);
    --gs-shadow-md: 0 14px 38px rgba(20, 20, 30, .09);
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 90px;
}

body {
    color: var(--gs-text);
    background: #fff;
    font-family: "Montserrat", Arial, sans-serif;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

button, input, select, textarea {
    font: inherit;
}

button, a, input, select, textarea {
    -webkit-tap-highlight-color: transparent;
}

a {
    text-underline-offset: 4px;
}

:focus-visible {
    outline: 3px solid rgba(119, 112, 168, .45);
    outline-offset: 3px;
}

::selection {
    color: #fff;
    background: var(--gs-accent);
}

/* Announcement and navigation */
.announcement-bar {
    min-height: 34px;
    padding: 9px 16px;
    background: #111114;
    color: #F4F3F8;
    font-size: 9px;
    line-height: 1.5;
    letter-spacing: 1.8px;
}

.navbar {
    position: sticky;
    top: 0;
    min-height: 78px;
    padding: 10px clamp(18px, 4.5vw, 68px);
    gap: clamp(14px, 2vw, 30px);
    background: rgba(255,255,255,.97);
    border-bottom: 1px solid #ECECF0;
    box-shadow: 0 4px 18px rgba(20,20,30,.025);
    backdrop-filter: blur(14px);
}

.logo img {
    width: 54px;
    height: 54px;
    border-radius: 0;
}

.main-navigation {
    gap: clamp(13px, 1.8vw, 26px);
}

.main-navigation a {
    color: #28282E;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .9px;
    transition: color .2s ease;
}

.main-navigation a::after {
    bottom: -9px;
    height: 2px;
    background: var(--gs-accent);
}

.main-navigation a:hover,
.nav-action:hover {
    color: var(--gs-accent-dark);
}

.nav-actions {
    gap: clamp(10px, 1.4vw, 20px);
}

.nav-action {
    gap: 6px;
    font-size: 9px;
    font-weight: 700;
}

.nav-action svg {
    width: 18px;
    height: 18px;
}

.cart-count {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--gs-accent);
    color: #fff;
    font-size: 9px;
    font-weight: 800;
}

/* Shared campaign and section typography */
.hero {
    min-height: min(680px, 72vw);
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    background: #F5F5F7;
}

.hero-content {
    padding: clamp(48px, 7vw, 105px) clamp(26px, 6vw, 90px);
    background: #F5F5F7;
}

.hero-content .subtitle,
.section-heading > p:first-child,
.search-label,
.account-label {
    color: var(--gs-accent);
}

.hero-content h1 {
    font-size: clamp(42px, 5.1vw, 76px);
    letter-spacing: -.055em;
    line-height: .99;
}

.hero-content .description,
.section-description {
    color: #73737D;
}

.hero-image,
.hero-image img {
    min-height: 100%;
}

.shop-button,
.search-form button,
.account-form button,
.logout-button,
.admin-submit-button {
    border-radius: 4px;
    background: #17171B;
    border-color: #17171B;
    color: #fff;
    transition: background .22s ease, color .22s ease, border-color .22s ease, transform .22s ease;
}

.shop-button:hover,
.search-form button:hover,
.account-form button:hover,
.logout-button:hover {
    background: var(--gs-accent);
    border-color: var(--gs-accent);
    color: #fff;
}

.categories,
.featured-section,
.search-page,
.shop-page {
    padding-top: clamp(62px, 8vw, 105px);
    padding-bottom: clamp(62px, 8vw, 105px);
}

.section-heading h2,
.search-header h1,
.shop-heading h1 {
    letter-spacing: -.045em;
}

/* Cards: consistent square-edged editorial product presentation */
.category-card,
.product-card,
.shop-page .product-card,
.admin-stat-card,
.admin-management-card,
.admin-product-form,
.admin-product-list,
.account-container,
.search-empty-state {
    border-radius: var(--gs-radius-md);
}

.category-card {
    border-radius: 4px;
    box-shadow: none;
}

.category-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--gs-shadow-md);
}

.product-card,
.shop-page .product-card {
    padding: 0;
    border: 1px solid #ECECF0;
    border-radius: 4px;
    background: #fff;
    box-shadow: none;
}

.product-card:hover,
.shop-page .product-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--gs-shadow-md);
}

.product-image,
.shop-page .product-image {
    margin-bottom: 0;
    border-radius: 0;
    background: #F0F0F2;
}

.product-card h3,
.product-category,
.product-price {
    padding-left: 16px;
    padding-right: 16px;
}

.product-card h3 {
    margin-top: 16px;
    font-size: 12px;
    line-height: 1.5;
}

.product-category {
    font-size: 10px;
}

.product-price {
    display: block;
    padding-bottom: 17px;
    font-size: 12px;
}

.shop-page .product-info {
    padding: 17px;
}

.shop-page .product-info h3 {
    font-size: 13px;
}

/* Brand campaigns */
.siapz-section,
.limited-section {
    border-radius: 0;
    margin: 0;
}

.siapz-section {
    background: #ECEBF2;
}

.siapz-content h2 {
    letter-spacing: -.07em;
}

.limited-section {
    background: #151519;
}

.sale-section {
    background: linear-gradient(120deg, #F1F0F6, #F8F8F9 55%, #E7E5EF);
}

.brand-message {
    margin: 0;
    border-radius: 0;
}

.brand-message p:first-child {
    color: var(--gs-accent);
}

/* Search and account */
.search-form {
    border: 1px solid #E4E4E9;
    border-radius: 4px;
    box-shadow: var(--gs-shadow-sm);
}

.search-form button {
    border-radius: 0;
}

.search-input-wrapper input {
    color: var(--gs-text);
    background: transparent;
}

.account-container {
    border: 1px solid #E8E8ED;
    border-radius: 8px;
    box-shadow: var(--gs-shadow-md);
}

.account-form input {
    border: 1px solid #E3E3E8;
    border-radius: 4px;
}

.account-form input:focus {
    border-color: var(--gs-accent);
    box-shadow: 0 0 0 3px rgba(119,112,168,.12);
}

/* Flash messages */
.flash-container {
    width: min(100% - 32px, 1200px);
    margin: 0 auto;
}

.flash-message {
    margin: 14px 0;
    padding: 13px 16px;
    border: 1px solid #E5E5EA;
    border-radius: 6px;
    font-size: 12px;
}

/* Footer */
footer {
    border-radius: 0;
    background: #111114;
}

.footer-content {
    padding-top: clamp(44px, 6vw, 72px);
    padding-bottom: clamp(44px, 6vw, 72px);
}

.footer-brand h3,
.footer-links h4 {
    color: #B7B1D5;
}

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

.footer-bottom {
    border-top-color: #34343C;
}

/* Forms and tables should not overflow narrow screens */
input, select, textarea {
    max-width: 100%;
}

table {
    max-width: 100%;
}

.admin-table-wrapper,
.admin-product-table,
.table-responsive {
    max-width: 100%;
}

.admin-product-table {
    border-collapse: collapse;
}

.admin-product-table th,
.admin-product-table td {
    vertical-align: middle;
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* Tablet */
@media (max-width: 1050px) {
    .navbar {
        position: relative;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .main-navigation {
        flex: 1 1 100%;
        order: 3;
        justify-content: center;
        flex-wrap: wrap;
        padding: 7px 0 3px;
    }

    .nav-actions {
        margin-left: auto;
    }

    .footer-content {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

/* Mobile */
@media (max-width: 760px) {
    .announcement-bar {
        padding: 8px 12px;
        font-size: 8px;
        letter-spacing: 1px;
    }

    .navbar {
        min-height: 0;
        padding: 10px 16px;
        gap: 10px;
    }

    .logo img {
        width: 44px;
        height: 44px;
    }

    .main-navigation {
        justify-content: flex-start;
        gap: 10px 17px;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding: 10px 1px 8px;
        scrollbar-width: none;
    }

    .main-navigation::-webkit-scrollbar {
        display: none;
    }

    .main-navigation a {
        flex: 0 0 auto;
        font-size: 8px;
    }

    .nav-actions {
        gap: 11px;
    }

    .nav-action {
        gap: 3px;
    }

    .nav-action svg {
        width: 17px;
        height: 17px;
    }

    .hero {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    .hero-content {
        padding: 54px 24px;
    }

    .hero-image,
    .hero-image img {
        min-height: 0;
        height: clamp(260px, 72vw, 430px);
    }

    .categories,
    .featured-section,
    .search-page,
    .shop-page {
        padding: 58px 18px;
    }

    .category-grid,
    .product-grid,
    .shop-page .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
    }

    .category-card {
        height: clamp(210px, 48vw, 310px);
        padding: 15px;
    }

    .category-card h3 {
        font-size: clamp(17px, 4vw, 24px);
    }

    .product-image,
    .shop-page .product-image img,
    .product-image-placeholder {
        height: clamp(190px, 48vw, 280px);
    }

    .siapz-section,
    .limited-section {
        grid-template-columns: 1fr;
        margin: 0;
        border-radius: 0;
    }

    .siapz-image,
    .siapz-image img,
    .limited-image,
    .limited-image img {
        min-height: 0;
        height: clamp(260px, 70vw, 380px);
    }

    .siapz-content,
    .limited-content {
        padding: 52px 24px;
    }

    .footer-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 28px 20px;
        padding: 48px 22px;
    }

    .footer-bottom {
        padding: 18px 22px;
    }

    .admin-dashboard,
    .admin-page {
        padding: 45px 18px;
    }

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

    .admin-product-form,
    .admin-product-list {
        padding: 22px;
    }
}

/* Small phones */
@media (max-width: 480px) {
    .nav-action span:not(.cart-count) {
        display: none;
    }

    .nav-actions {
        gap: 13px;
    }

    .hero-content h1 {
        font-size: clamp(39px, 11vw, 48px);
    }

    .category-grid,
    .product-grid,
    .shop-page .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .category-card {
        height: 225px;
        padding: 12px;
    }

    .product-image,
    .shop-page .product-image img,
    .product-image-placeholder {
        height: 215px;
    }

    .product-card h3,
    .product-category,
    .product-price {
        padding-left: 10px;
        padding-right: 10px;
    }

    .product-card h3 {
        margin-top: 12px;
        font-size: 10px;
    }

    .product-price {
        padding-bottom: 13px;
        font-size: 11px;
    }

    .section-heading h2 {
        font-size: clamp(29px, 8vw, 36px);
    }

    .footer-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 40px 18px;
    }

    .footer-bottom {
        flex-direction: column;
        font-size: 9px;
    }

    .account-container {
        padding: 26px 20px;
    }

    .product-form-grid,
    .custom-form-grid {
        grid-template-columns: 1fr;
    }

    .full-width,
    .custom-field-full {
        grid-column: auto;
    }

    .admin-stats,
    .admin-management-grid {
        grid-template-columns: 1fr;
    }

    .admin-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-product-form,
    .admin-product-list {
        padding: 18px;
    }
}


/* =========================================================
   GODSPEED ADMIN DASHBOARD — FINAL CONTRAST CORRECTION
   Scoped to the admin dashboard to avoid changing storefront.
   ========================================================= */
.admin-dashboard .admin-management-card,
.admin-dashboard .admin-stat-card,
.admin-dashboard .most-viewed-product-card {
    background: #ffffff !important;
    color: #202020 !important;
    border: 1px solid #e8e5df !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.10) !important;
}

.admin-dashboard .admin-management-card h3,
.admin-dashboard .admin-stat-card h2,
.admin-dashboard .most-viewed-product-info h3,
.admin-dashboard .admin-section-heading h2 {
    color: #171717 !important;
}

.admin-dashboard .admin-management-card p,
.admin-dashboard .admin-stat-card p,
.admin-dashboard .most-viewed-product-info p,
.admin-dashboard .most-viewed-product-info span {
    color: #626262 !important;
}

.admin-dashboard .admin-management-card a,
.admin-dashboard .most-viewed-product-info a {
    color: #9b7438 !important;
    font-weight: 800 !important;
}

.admin-dashboard .admin-management-card a:hover,
.admin-dashboard .most-viewed-product-info a:hover {
    color: #5e4520 !important;
}

.admin-dashboard .admin-card-icon,
.admin-dashboard .admin-icon {
    background: #26231e !important;
    color: #d2b47c !important;
}

.admin-dashboard .admin-stat-card > span {
    color: #98713a !important;
}

.admin-dashboard .admin-section-heading p {
    color: #a8a8a8 !important;
}

.admin-dashboard .admin-management-card {
    min-width: 0;
    transition: transform .25s ease, box-shadow .25s ease;
}

.admin-dashboard .admin-management-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .16) !important;
}

@media (max-width: 900px) {
    .admin-dashboard .admin-management-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .admin-dashboard .admin-management-grid {
        grid-template-columns: 1fr;
    }

    .admin-dashboard .admin-management-card {
        padding: 24px !important;
    }
}
