@import url('https://fonts.googleapis.com/css2?family=Forum&family=Mulish:wght@300;400;500;600;700&display=swap');

/* =========================================================
   TOKENS / BASE
   ========================================================= */
:root {
    --black: #000000;
    --dark: #141313;
    --gold: #886F4A;
    --gold-light: #a08a60;
    --gold-dim: #886F4A66;
    --text: #c3beb6;
    --text-muted: #a8948e;
    --white: #ffffff;
    --font-heading: 'Forum', Georgia, serif;
    --font-body: 'Mulish', Arial, sans-serif;
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--black);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
    padding-top: 46px;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input {
    font: inherit;
}

img {
    max-width: 100%;
    height: auto;
}

.screen-reader-text,
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.screen-reader-text:focus,
.sr-only:focus {
    position: fixed;
    top: 12px;
    left: 12px;
    width: auto;
    height: auto;
    padding: 10px 14px;
    margin: 0;
    overflow: visible;
    clip: auto;
    clip-path: none;
    white-space: normal;
    z-index: 100000;
    background: var(--black);
    color: var(--white);
    border: 1px solid var(--gold);
}

input:focus,
select:focus,
textarea:focus,
.input-field:focus,
.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce-page input.input-text:focus,
.woocommerce-page textarea:focus,
.woocommerce-page select:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--multiple {
    outline: none !important;
    box-shadow: none !important;
    border-color: var(--gold) !important;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.btn {
    font-family: var(--font-body);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    white-space: nowrap;
    background: none;
    border: none;
    padding: 6px 21px;
    transition: color 0.2s;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.btn span.btn-label {
    position: relative;
}

.btn span.btn-label::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 1px;
    background: currentColor;
    transition: width 0.35s ease;
}

.btn:hover span.btn-label::after {
    width: 100%;
}

.btn:hover {
    text-decoration: none;
}

.btn-star {
    display: inline-block;
    font-size: 22px;
    color: var(--gold);
    transition: transform 0.4s ease;
    flex-shrink: 0;
    order: -1;
    text-decoration: none;
}

.btn:hover .btn-star {
    transform: rotate(72deg);
}

.btn-1 {
    border: 1px solid var(--gold);
    color: var(--white);
}

.btn-4 {
    background: var(--white);
    color: var(--black);
}

/* =========================================================
   HEADER
   ========================================================= */
.site-nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: rgba(0, 0, 0, 0.88);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--gold-dim);
}

.nav-inner {
    height: 76px;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.nav-brand {
    display: flex;
    align-items: center;
    line-height: 0;
    z-index: 2;
}

.nav-brand .custom-logo-link {
    display: inline-flex;
    align-items: center;
    line-height: 0;
}

.nav-brand .custom-logo {
    width: 170px;
    max-width: 170px;
    height: auto;
}

.nav-logo-text {
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 26px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.nav-links-desktop {
    display: flex;
    align-items: center;
    gap: 36px;
    list-style: none;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.nav-links-desktop li {
    list-style: none;
}

.nav-link-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 10px 0;
    white-space: nowrap;
}

.nav-link-star {
    color: var(--gold);
    font-size: 22px;
    line-height: 1;
    transition: transform 0.4s ease;
}

.nav-link-text {
    position: relative;
}

.nav-link-text::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 1px;
    background: currentColor;
    transition: width 0.35s ease;
}

.nav-link-item:hover .nav-link-star {
    transform: rotate(72deg);
}

.nav-link-item:hover .nav-link-text::after {
    width: 100%;
}

.nav-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    z-index: 2;
}

.nav-icon-btn {
    position: relative;
    width: 60px;
    height: 60px;
    border: 1px dashed var(--gold);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    cursor: pointer;
    color: var(--text);
    transition: border-color 0.2s ease;
}

.nav-icon-btn:hover {
    border-color: var(--gold-dim);
}

.cart-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 16px;
    height: 16px;
    padding: 0 3px;
    background: var(--gold);
    border-radius: 999px;
    color: #000;
    font-size: 9px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cart-badge.is-empty {
    display: none;
}

.nav-hamburger {
    display: none;
}

/* =========================================================
   DROPDOWNS / MODALS / SIDEBARS
   ========================================================= */
.search-modal-overlay,
.sidebar-overlay,
.nav-canvas-backdrop {
    position: fixed;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.search-modal-overlay {
    background: rgba(0, 0, 0, 0.85);
    z-index: 300;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 120px;
}

.sidebar-overlay {
    background: rgba(0, 0, 0, 0.6);
    z-index: 199;
}

.nav-canvas-backdrop {
    background: rgba(0, 0, 0, 0.6);
    z-index: 9998;
}

.search-modal-overlay.open,
.sidebar-overlay.open,
.nav-canvas-backdrop.active {
    opacity: 1;
    pointer-events: auto;
}

.search-modal {
    width: 100%;
    max-width: 600px;
    padding: 0 24px;
}

.search-modal-inner {
    background: var(--dark);
    border: 1px solid var(--gold-dim);
    padding: 32px;
}

.search-row {
    display: flex;
}

.input-field {
    width: 100%;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--gold-dim);
    color: var(--text);
    font-size: 14px;
    outline: none;
}

.sidebar {
    position: fixed;
    top: 0;
    right: -460px;
    width: 420px;
    max-width: 100vw;
    height: 100vh;
    background: var(--dark);
    border-left: 1px solid var(--gold-dim);
    z-index: 200;
    overflow-y: auto;
    transition: right 0.35s ease;
    display: flex;
    flex-direction: column;
}

.sidebar.open {
    right: 0;
}

.sidebar-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 28px;
    border-bottom: 1px solid var(--gold-dim);
}

.sidebar-head h3 {
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.sidebar-close {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 22px;
}

.sidebar-body {
    padding: 28px;
    flex: 1;
}

.sidebar-text {
    color: var(--text-muted);
    font-size: 14px;
    margin-bottom: 24px;
}

.sidebar-full-btn {
    width: 100%;
}

.sidebar-actions {
    margin-top: 28px;
    text-align: center;
}


/* =========================================================
   FOOTER
   ========================================================= */

.site-footer {
    background: var(--black);
    border-top: 1px solid var(--gold-dim);
}

.footer-grid {
    max-width: 1400px;
    margin: 0 auto;
    padding: 80px 24px 48px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 60px;
}

.footer-logo .custom-logo {
    width: 180px;
    max-width: 180px;
    height: auto;
    margin-bottom: 24px;
}

.footer-logo-text {
    display: inline-block;
    margin-bottom: 24px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 28px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.footer-brand-text,
.footer-update-text {
    max-width: 280px;
    margin-bottom: 28px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.9;
}

.footer-socials {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.footer-social-link {
    width: 36px;
    height: 36px;
    border: 1px solid var(--gold-dim);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    transition: border-color 0.2s, color 0.2s;
}

.footer-social-link:hover {
    border-color: var(--gold);
    color: var(--gold);
}

.footer-nav-heading {
    margin-bottom: 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.footer-nav-list {
    list-style: none;
}

.footer-nav-list li {
    margin-bottom: 12px;
}

.footer-nav-list a {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 18px;
    transition: color 0.2s;
}

.footer-nav-list a:hover {
    color: var(--gold);
}

.footer-newsletter {
    display: flex;
    gap: 0;
    margin-bottom: 20px;
}

.footer-newsletter .input-field {
    flex: 1;
    border-right: none;
    font-size: 13px;
    padding: 10px 12px;
}

.footer-newsletter .btn {
    border: none;
    padding: 0 16px;
    color: var(--black);
    font-family: var(--font-heading);
    font-size: 11px;
    letter-spacing: 0.1em;
}

.footer-newsletter .btn-label {
    font-size: 15px;
}

.footer-small-heading {
    margin-bottom: 8px;
    color: var(--text-muted);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.footer-currency-select {
    width: 100%;
    background: #0a0a0a;
    border: 1px solid var(--gold-dim);
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 12px;
    padding: 6px 10px;
    cursor: pointer;
    outline: none;
}

.footer-bottom {
    border-top: 1px solid var(--gold-dim);
    padding: 20px 24px;
    text-align: center;
}

.footer-bottom p {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: 0.1em;
}

.footer-bottom span {
    color: var(--gold-dim);
    margin: 0 8px;
}

.footer-bottom a {
    color: var(--gold);
}

.back-to-top {
    position: fixed;
    right: 32px;
    bottom: 32px;
    width: 44px;
    height: 44px;
    background: var(--gold);
    color: var(--black);
    border: none;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    z-index: 50;
    display: none;
}

@media (max-width: 900px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}

@media (max-width: 560px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }
}



/* =========================================================
   BACKGROUND EFFECTS - STARS
   ========================================================= */

.stars {
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.stars>*:not(.star):not(.shooting-star) {
    position: relative;
    z-index: 1;
}

.star {
    position: absolute;
    width: 1px;
    height: 1px;
    background-color: #fff;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
    opacity: 0.7;
}

.star::before {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.8);
    opacity: 0;
    animation: starTwinkle 2s infinite;
    animation-delay: var(--twinkle-delay, 0s);
}

.shooting-star {
    position: absolute;
    width: 2px;
    height: 10px;
    background-color: #fff;
    opacity: 1;
    z-index: 2;
    pointer-events: none;
    transform: rotate(45deg);
    animation: shootingStarAnimation 0.5s linear forwards;
}

@keyframes starTwinkle {
    0% {
        transform: scale(0.1);
        opacity: 0;
    }

    50% {
        transform: scale(0.3);
        opacity: 1;
    }

    100% {
        transform: scale(0.3);
        opacity: 0;
    }
}

@keyframes shootingStarAnimation {
    0% {
        opacity: 1;
        transform: translateX(-200px) translateY(-200px) rotate(70deg);
    }

    100% {
        opacity: 0;
        transform: translateX(200px) translateY(-300px) rotate(70deg);
    }
}



/* =========================================================
   HOME - SHARED
   ========================================================= */

.container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 28px;
}

.section-eyebrow {
    margin: 0 0 12px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 18px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}

.gold-divider {
    width: 48px;
    height: 1px;
    background: var(--gold);
    opacity: 0.5;
    margin: 0 0 28px;
}

.gold-border-x {
    border-top: 1px solid var(--gold-dim);
    border-bottom: 1px solid var(--gold-dim);
}

.home-copy {
    max-width: 540px;
    margin: 0 0 18px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.9;
}

.home-copy.muted {
    color: var(--text-muted);
    margin-bottom: 36px;
}

.home-center {
    text-align: center;
}

.btn-clean {
    border: none;
    padding-left: 0;
}

/* =========================================================
   HOME - HERO
   ========================================================= */

.home-hero {
    min-height: calc(100vh - 76px);
    display: flex;
    align-items: center;
    padding: 80px 28px;
    background: var(--black);
    overflow: hidden;
}

.home-hero-grid {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.home-hero-content {
    max-width: 620px;
}

.home-hero h1 {
    margin: 0 0 20px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(2.2rem, 5vw, 4.2rem);
    font-weight: 400;
    line-height: 1.05;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.home-hero-text {
    max-width: 430px;
    margin: 0 0 36px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.home-hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
}

.astro_IMG {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 460px;
}

.home-hero-main-img {
    display: block;
    width: 100%;
    height: auto;
}

.astro-circle-rotating {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    animation: spinAstro 40s linear infinite;
    pointer-events: none;
}

@keyframes spinAstro {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* =========================================================
   HOME - MARQUEE
   ========================================================= */

.marquee-wrap {
    overflow: hidden;
    padding: 14px 0;
    background: var(--black);
    border-top: 1px solid var(--gold-dim);
    border-bottom: 1px solid var(--gold-dim);
}

.marquee-track {
    display: flex;
    width: max-content;
    animation: marqueeScroll 28s linear infinite;
}

.marquee-track.reverse {
    animation-direction: reverse;
}

.marquee-item {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    padding-right: 27px;
    color: var(--text-muted);
    font-family: var(--font-heading);
    font-size: 30px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.marquee-star {
    color: var(--gold);
    font-size: 40px;
}

@keyframes marqueeScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

/* =========================================================
   HOME - IMAGE SECTIONS
   ========================================================= */

.home-section {
    padding: 100px 28px;
    background: var(--black);
}

.home-discover-grid {
    display: grid;
    grid-template-columns: 40% 50%;
    gap: 100px;
    align-items: center;
}

.home-love-grid {
    display: grid;
    grid-template-columns: 50% 40%;
    gap: 100px;
    align-items: center;
}

.home-image-decor {
    position: relative;
}

.home-section-img {
    display: block;
    width: 100%;
    height: auto;
}

.home-discover h2,
.home-love h2,
.home-parallax h2 {
    margin: 0 0 20px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 3rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.moon_img {
    position: absolute;
    top: 20%;
    right: -95px;
    width: 40%;
    animation: rotateSlow 12s linear infinite;
}

.moon_hlaf_img {
    position: absolute;
    top: 65%;
    left: -44px;
    width: 39px;
    animation: pulseSlow 3s ease-in-out infinite;
}

.home-star-one {
    position: absolute;
    top: 8%;
    right: 10%;
    color: var(--gold);
    font-size: 49px;
    animation: blinkStar 2.2s ease-in-out infinite;
}

.star_moon {
    position: absolute;
    left: -54px;
    bottom: 38%;
    color: var(--gold);
    font-size: 30px;
    animation: blinkStar 2.2s ease-in-out infinite;
}

.moon_img2 {
    position: absolute;
    top: 60%;
    right: -100px;
    animation: rotateSlow 12s linear infinite;
}

.moon_hlaf_img2 {
    position: absolute;
    top: 25%;
    left: -37px;
    width: 38px;
    animation: pulseSlow 3.5s ease-in-out infinite;
}

@keyframes rotateSlow {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes pulseSlow {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.35;
    }

    50% {
        transform: scale(1.12);
        opacity: 0.55;
    }
}

@keyframes blinkStar {

    0%,
    100% {
        opacity: 0.2;
        transform: scale(0.8);
    }

    50% {
        opacity: 1;
        transform: scale(1.2);
    }
}

/* =========================================================
   HOME - PARALLAX
   ========================================================= */

.home-parallax {
    min-height: 500px;
    padding: 140px 28px;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.home-parallax-content {
    max-width: 520px;
}

.home-parallax-right .container {
    display: flex;
    justify-content: flex-end;
}

.home-parallax-right .home-parallax-content {
    width: 50%;
    min-width: 280px;
}

/* =========================================================
   HOME - SERVICES
   ========================================================= */

.home-services {
    background: var(--black);
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.service-item {
    position: relative;
    display: block;
    padding: 48px 28px;
    text-align: center;
    border-left: 1px solid var(--gold-dim);
    transition: background 0.2s ease;
}

.service-item:first-child {
    border-left: none;
}

.service-item:hover {
    background: rgba(136, 111, 74, 0.07);
}

.service-item img {
    width: 100%;
    height: auto;
    margin-bottom: 24px;
    padding: 0 3vw;
}

.service-item h3 {
    margin: 0 0 10px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 2.5vw, 2.2rem);
    font-weight: 400;
    text-transform: uppercase;
}

.service-item p {
    margin: 0 0 20px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 17px;
    line-height: 1.7;
}

.coming-soon-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    padding: 3px 8px;
    background: rgba(136, 111, 74, 0.2);
    border: 1px solid rgba(201, 168, 76, 0.35);
    color: #C9A84C;
    font-family: var(--font-heading);
    font-size: 9px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

/* =========================================================
   HOME - CTA / BLOG / NEWSLETTER
   ========================================================= */

.home-free-cta {
    padding: 150px 28px;
    background: var(--black);
}

.home-free-cta h2 {
    max-width: 600px;
    margin: 0 auto 28px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 3.5vw, 2.6rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.home-section-heading {
    margin-bottom: 56px;
    text-align: center;
}

.home-section-heading h2 {
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: uppercase;
}

.home-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    margin-bottom: 48px;
}

.blog-card {
    display: block;
    transition: opacity 0.2s ease;
}

.blog-card:hover {
    opacity: 0.8;
}

.blog-card-img {
    height: 220px;
    overflow: hidden;
    background: #111;
    margin-bottom: 16px;
}

.blog-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card:hover .blog-card-img img {
    transform: scale(1.04);
}

.blog-card-cat {
    margin: 0 0 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.blog-card-title {
    margin: 0 0 10px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    line-height: 1.35;
    text-transform: uppercase;
}

.blog-card-date {
    margin: 0 0 14px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
}

.blog-card-btn {
    font-size: 13px;
}

/* =========================================================
   REUSABLE SECTION - NEWSLETTER / SACRED UPDATES
   ========================================================= */

.home-newsletter {
    padding: 80px 28px;
    background: var(--black);
    border-top: 1px solid var(--gold-dim);
}

.home-newsletter-box {
    max-width: 520px;
    margin: 0 auto;
    text-align: center;
}

.home-newsletter .section-eyebrow {
    font-family: var(--font-heading);
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 12px;
    font-size: 18px;
}

.home-newsletter-box h3 {
    margin: 0 0 16px;
    font-family: var(--font-heading);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--white);
    font-weight: 400;
    line-height: 1.1;
    font-size: clamp(1.4rem, 3vw, 2rem);
}

.home-newsletter-box p {
    margin: 0 0 28px;
    font-family: var(--font-body);
    color: var(--text-muted);
    font-size: 18px;
    line-height: 1.7;
}

.home-newsletter-form {
    display: flex;
    gap: 0;
}

.home-newsletter-form .input-field {
    flex: 1;
    border-right: none;
}








/* =========================================================
   MOBILE NAV
   ========================================================= */
.nav-canvas {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(360px, 90vw);
    background: #090909;
    border-left: 1px solid rgba(136, 111, 74, 0.25);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    padding: 32px 0;
    transform: translateX(100%);
    transition: transform 0.4s ease;
}

.nav-canvas.open {
    transform: translateX(0);
}

.nav-canvas-close {
    align-self: flex-end;
    margin-right: 24px;
    margin-bottom: 32px;
    background: none;
    border: none;
    color: var(--gold);
    font-size: 18px;
    cursor: pointer;
}

.nav-canvas-menu {
    list-style: none;
}

.nav-canvas-menu li {
    list-style: none;
}

.nav-canvas-link {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 32px;
    color: var(--text);
    font-family: var(--font-heading);
    font-size: clamp(1.1rem, 3vw, 1.4rem);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(136, 111, 74, 0.06);
    transition: color 0.2s ease, padding-left 0.2s ease;
}

.nav-canvas-link:hover {
    color: var(--white);
    padding-left: 40px;
}

.nav-canvas-star {
    color: rgba(201, 168, 76, 0.4);
    font-size: 8px;
}


/* =========================================================
   SHARED SECTION BLOCKS
   ========================================================= */

.section-heading.centered {
    text-align: center;
    margin-bottom: 56px;
}

.section-heading h2 {
    margin: 0;
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.1;
    font-size: clamp(1.8rem, 4vw, 3rem);
}

.section-subtitle {
    max-width: 540px;
    margin: 0 auto;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.8;
}

.gold-divider.centered {
    margin: 18px auto 28px;
}



/* =========================================================
   REUSABLE - HOW IT WORKS
   ========================================================= */

.section-how-it-works {
    padding: 100px 28px;
    background: var(--black);
    border-bottom: 1px solid var(--gold-dim);

}

.steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.step-card {
    text-align: center;
    padding: 32px 20px;
    border-right: 1px solid var(--gold-dim);
}

.step-card:last-child {
    border-right: none;
}

.step-number {
    margin-bottom: 16px;
    color: var(--gold);
    opacity: 0.3;
    font-family: var(--font-heading);
    font-size: 48px;
    line-height: 1;
}

.step-title {
    margin: 0 0 12px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
}

.step-desc {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.7;
}

/* =========================================================
   REUSABLE - TESTIMONIALS
   ========================================================= */

.section-testimonials {
    padding: 100px 28px;
    background: var(--black);
    border-top: 1px solid var(--gold-dim);
}

.testimonial-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.testimonial-card {
    min-height: 370px;
    padding: 40px;
    background: var(--black);
    border: 1px solid var(--gold-dim);
    overflow: hidden;
}

.testimonial-stars {
    margin-bottom: 25px;
    color: #b08a4f;
    font-size: 20px;
    letter-spacing: 2px;
}

.testimonial-text {
    margin: 0 0 35px;
    color: #d2d2d2;
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
    font-style: italic;
}

.testimonial-author {
    margin: 0;
    color: #b08a4f;
    font-family: var(--font-heading);
    font-size: 14px;
    letter-spacing: 3px;
    text-transform: uppercase;
}



/* =========================================================
   PAGE HERO / BREADCRUMB
   ========================================================= */

.page-hero {
    min-height: 260px;
    padding: 60px 24px 60px;
    text-align: center;
    position: relative;
    border-bottom: 1px solid var(--gold-dim);
    background: var(--black);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.page-hero h1 {
    margin: 0 0 16px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.breadcrumb a {
    color: var(--text-muted);
    transition: color 0.2s;
}

.breadcrumb a:hover {
    color: var(--gold);
}

.breadcrumb-sep {
    color: var(--gold-dim);
}

.breadcrumb-current {
    color: var(--white);
}

/* =========================================================
   CONTACT PAGE
   ========================================================= */

.contact-section {
    background: var(--black);
    padding: 80px 32px;
}

.contact-grid {
    display: grid;
    grid-template-columns: 1fr 0.7fr;
    gap: 80px;
    align-items: start;
}

.contact-form-wrap h2 {
    margin: 0 0 8px;
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.form-field label {
    display: block;
    margin-bottom: 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}



.phone-field select {
    width: 90px;
    flex-shrink: 0;
    background: #111;
    border: 1px solid var(--gold-dim);
    border-right: none;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 13px;
    padding: 12px 8px;
    outline: none;
}

.contact-form textarea {
    resize: vertical;
}


.contact-info-wrap h3 {
    margin: 0 0 32px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.4rem, 3vw, 2rem);
    font-weight: 400;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.contact-info-list {
    display: grid;
    gap: 28px;
}

.contact-info-item {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.contact-info-icon {
    width: 40px;
    height: 40px;
    border: 1px solid var(--gold-dim);
    color: var(--gold);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact-info-label {
    margin: 0 0 4px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.contact-info-value {
    margin: 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.7;
}

.contact-info-value a {
    color: var(--text);
}

.contact-info-value span {
    color: var(--text-muted);
    font-size: 13px;
}

.contact-socials {
    margin-top: 40px;
}

.contact-socials>p {
    margin: 0 0 16px;
    color: var(--text-muted);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.contact-social-links {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}


/* =========================================================
   ABOUT PAGE
   ========================================================= */

.about-founder-section {
    background: var(--black);
    padding: 100px 32px 0;
}

.about-founder-grid {
    display: grid;
    grid-template-columns: 40% 50%;
    gap: 100px;
    align-items: center;
    margin-bottom: 100px;
}

.about-founder-image {
    padding-right: 30px;
}

.about-founder-content h2 {
    margin: 0 0 8px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 3rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.about-founder-role {
    margin: 0 0 28px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 14px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.about-founder-content p:not(.section-eyebrow):not(.about-founder-role) {
    margin: 0 0 20px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.9;
}

.about-founder-content p:nth-last-of-type(1) {
    margin-bottom: 36px;
}

.about-principles-section {
    position: relative;
    background: var(--black);
    padding: 100px 32px;
}

.about-principles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.about-principle-card {
    border: 1px solid var(--gold-dim);
    padding: 40px 32px;
    text-align: center;
    background: transparent;
}

.about-principle-icon {
    font-size: 40px;
    margin-bottom: 20px;
}

.about-principle-card h4 {
    margin: 0 0 12px;
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: uppercase;
}

.about-principle-card p {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.8;
}

.about-parallax {
    padding: 120px 28px;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.about-parallax-content {
    text-align: center;
}

.about-parallax h2 {
    max-width: 600px;
    margin: 0 auto 20px;
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.about-parallax p:not(.section-eyebrow) {
    max-width: 480px;
    margin: 0 auto 36px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.9;
}

.about-stats-section {
    background: var(--dark);
    padding: 80px 28px;
}

.about-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border: 1px solid var(--gold-dim);
}

.about-stat-card {
    padding: 48px 28px;
    text-align: center;
    border-right: 1px solid var(--gold-dim);
}

.about-stat-card:last-child {
    border-right: none;
}

.about-stat-number {
    margin: 0 0 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1.1;
}

.about-stat-label {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}



/* =========================================================
   TERMS / POLICY PAGES
   ========================================================= */

.terms-section {
    width: 100%;
    padding: 80px 20px;
    background: var(--black);
}

.terms-section .container {
    max-width: 1040px;
}

.terms-box {
    margin-bottom: 35px;
}

.terms-box h2 {
    margin: 0 0 15px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 25px;
    font-weight: 700;
    letter-spacing: 3px;
    line-height: 1.2;
    text-transform: uppercase;
}

.terms-box p {
    margin: 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.terms-box ul {
    margin: 10px 0 0;
    padding-left: 20px;
}

.terms-box ul li {
    margin-bottom: 10px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.7;
}



/* =========================================================
   404 PAGE
   ========================================================= */

.error-404-section {
    min-height: calc(100vh - 76px);
    background: var(--black);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 120px 24px 80px;
    position: relative;
    overflow: hidden;
}

.error-404-inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

.orb-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.5rem;
}

.orb-ring {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(136, 111, 74, 0.22);
    animation: spinRing var(--spin-dur) linear infinite;
}

.orb-ring:nth-child(1) {
    width: 180px;
    height: 180px;
    --spin-dur: 18s;
    border-style: dashed;
    border-color: rgba(136, 111, 74, 0.18);
}

.orb-ring:nth-child(2) {
    width: 220px;
    height: 220px;
    --spin-dur: 28s;
    animation-direction: reverse;
}

.orb-ring:nth-child(3) {
    width: 260px;
    height: 260px;
    --spin-dur: 40s;
    border-color: rgba(136, 111, 74, 0.12);
}

@keyframes spinRing {
    to {
        transform: rotate(360deg);
    }
}

.orb-core {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, rgba(136, 111, 74, 0.18) 0%, rgba(30, 20, 5, 0.9) 60%, rgba(0, 0, 0, 1) 100%);
    border: 1px solid rgba(136, 111, 74, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 40px rgba(136, 111, 74, 0.12), inset 0 0 30px rgba(136, 111, 74, 0.06);
}

.orb-text {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 2.2rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1;
    text-shadow: 0 0 20px rgba(136, 111, 74, 0.45);
}

.orb-text span {
    display: block;
    margin-top: 4px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 0.65rem;
    font-weight: 300;
    letter-spacing: 0.35em;
    text-transform: uppercase;
}

.star-deco {
    position: absolute;
    background: var(--gold);
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
    opacity: 0.65;
    animation: pulseStar 3s ease-in-out infinite alternate;
}

.star-deco.s1 {
    top: 10px;
    right: -10px;
    width: 8px;
    height: 8px;
}

.star-deco.s2 {
    bottom: 20px;
    left: -15px;
    width: 6px;
    height: 6px;
    animation-delay: 1s;
}

.star-deco.s3 {
    top: 30%;
    right: -30px;
    width: 5px;
    height: 5px;
    animation-delay: 0.5s;
}

@keyframes pulseStar {
    from {
        opacity: 0.25;
        transform: scale(0.8) rotate(0deg);
    }

    to {
        opacity: 0.85;
        transform: scale(1.2) rotate(20deg);
    }
}

.error-divider {
    max-width: 320px;
    margin: 0 auto 2rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.error-divider-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(136, 111, 74, 0.4), transparent);
}

.error-divider-icon {
    color: var(--gold-dim);
    font-family: var(--font-heading);
    font-size: 0.6rem;
    letter-spacing: 0.2em;
}

.error-404-section h1 {
    margin: 0 0 1rem;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.4rem, 4vw, 2rem);
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.error-404-section h1 em {
    color: var(--gold-light);
    font-family: var(--font-heading);
    font-style: italic;
}

.error-404-subtitle {
    max-width: 480px;
    margin: 0 auto 2.5rem;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 0.95rem;
    font-weight: 300;
    line-height: 1.9;
    letter-spacing: 0.03em;
}

.error-404-actions {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}



/* =========================================================
   MY ACCOUNT - CUSTOM DASHBOARD LAYOUT
   ========================================================= */

.account-shell {
    display: grid;
    grid-template-columns: 342px 1fr;
    gap: 56px;
    border: none;
    background: transparent;
    padding: 0;
}

ul.wc-item-meta li {
    list-style: auto;
    margin-left: 20px;
}

.account-sidebar {
    width: auto;
    float: none;
    border-right: none;
    padding-right: 0;
}

.account-user-card {
    display: flex;
    align-items: center;
    gap: 18px;
    border: 1px solid var(--gold-dim);
    border-radius: 6px;
    padding: 24px 22px;
    margin-bottom: 34px;
}

.account-user-orb {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgba(136, 111, 74, 0.12);
    border: 1px solid rgba(136, 111, 74, 0.28);
    color: var(--gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.account-user-greeting {
    margin: 0 0 4px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 20px;
    line-height: 1.3;
}

.account-user-email {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.4;
}

.account-sidebar-title {
    margin: 0 0 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.account-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid var(--gold-dim);
    border-radius: 3px;
    overflow: hidden;
}

.account-menu li {
    margin: 0;
    border-bottom: 1px solid rgba(136, 111, 74, 0.22);
}

.account-menu li:last-child {
    border-bottom: none;
}

.account-menu a {
    min-height: 66px;
    display: grid;
    grid-template-columns: 22px 1fr auto;
    align-items: center;
    gap: 14px;
    padding: 0 28px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    transition: background 0.2s, color 0.2s;
}

.account-menu-icon {
    color: var(--gold);
    font-size: 14px;
    opacity: 0.8;
}

.account-menu-arrow {
    color: var(--gold);
    font-size: 22px;
    line-height: 1;
}

.account-menu li.is-active a,
.account-menu a:hover {
    background: rgba(136, 111, 74, 0.14);
    color: var(--gold);
}

.account-dashboard-panel {
    display: grid;
    gap: 28px;
}

.account-dashboard-card {
    min-height: 170px;
    border: 1px solid var(--gold-dim);
    background: var(--black);
    padding: 36px 38px;
}

.account-dashboard-card h2,
.account-shell .woocommerce-MyAccount-content h2 {
    margin: 28px 0 0;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.account-dashboard-card p,
.account-shell .woocommerce-MyAccount-content p {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}


.aatmanya-container .post-13 h1:first-child,
.woocommerce-cart main>h1:first-child,
.woocommerce-cart .site-main>h1:first-child,
.woocommerce-cart article>h1:first-child,
.woocommerce-cart .page>h1:first-child,
.woocommerce-checkout .site-main>h1:first-child,
.woocommerce-checkout article>h1:first-child,
.woocommerce-checkout .page>h1:first-child {
    display: none;
}

.account-section {
    background: var(--black);
    padding: 90px 28px 100px;
}

.woocommerce-account .account-section {
    margin-top: 0;
}


/* Password visibility icon - recolor WooCommerce data SVG */
.woocommerce form .show-password-input::before,
.woocommerce-page form .show-password-input::before {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.3 3.3C16.9 2.9 16.2 2.9 15.7 3.3L13.3 5.7C12.2437 5.3079 11.1267 5.1048 10 5.1C6.2 5.2 2.8 7.2 1 10.5C1.2 10.9 1.5 11.3 1.8 11.7C2.6 12.8 3.6 13.7 4.7 14.4L3 16.1C2.6 16.5 2.5 17.2 3 17.7C3.4 18.1 4.1 18.2 4.6 17.7L17.3 4.9C17.7 4.4 17.7 3.7 17.3 3.3ZM6.7 12.3L5.4 13.6C4.2 12.9 3.1 11.9 2.3 10.7C3.5 9 5.1 7.8 7 7.2C5.7 8.6 5.6 10.8 6.7 12.3ZM10.1 9C9.6 8.5 9.7 7.7 10.2 7.2C10.7 6.8 11.4 6.8 11.9 7.2L10.1 9ZM18.3 9.5C17.8 8.8 17.2 8.1 16.5 7.6L15.5 8.6C16.3 9.2 17 9.9 17.6 10.8C15.9 13.4 13 15 9.9 15H9.1L8.1 16C8.8 15.9 9.4 16 10 16C13.3 16 16.4 14.4 18.3 11.7C18.6 11.3 18.8 10.9 19.1 10.5C18.8 10.2 18.6 9.8 18.3 9.5ZM14 10L10 14C12.2 14 14 12.2 14 10Z' fill='%23886F4A'/%3E%3C/svg%3E");

}

.woocommerce form .show-password-input:hover::before,
.woocommerce-page form .show-password-input:hover::before {
    opacity: 1;
}


/* =========================================================
   MY ACCOUNT - FORM + TABLE POLISH
   ========================================================= */

/* Profile form button */
.account-shell .woocommerce-EditAccountForm button.button,
.account-shell .woocommerce-address-fields button.button,
.account-shell .woocommerce-form-row button.button {
    background: transparent;
    border: 1px solid var(--gold);
    color: var(--white);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 10px 24px;
    border-radius: 0;
}

.account-shell .woocommerce-EditAccountForm button.button:hover,
.account-shell .woocommerce-address-fields button.button:hover,
.account-shell .woocommerce-form-row button.button:hover {
    background: var(--gold);
    color: var(--black);
}

/* Password fieldset */
.account-shell fieldset {
    border: 1px solid var(--gold-dim);
    padding: 28px 24px 24px;
    margin: 32px 0;
}

.account-shell fieldset legend {
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0 8px;
}

/* Orders table */
.account-shell table.shop_table {
    width: 100%;
    border: 1px solid var(--gold-dim);
    border-collapse: collapse;
    border-radius: 0;
    background: var(--black);
    overflow: hidden;
}

.account-shell table.shop_table th,
.account-shell table.shop_table td {
    padding: 14px 16px;
    border: 1px solid rgba(136, 111, 74, 0.22);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    vertical-align: middle;
}

.account-shell table.shop_table th {
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    background: rgba(136, 111, 74, 0.08);
    text-align: left;
}

.account-shell table.shop_table .woocommerce-button,
.account-shell table.shop_table .button,
.account-shell .woocommerce-orders-table__cell-order-actions .button {
    min-width: 86px;
    background: transparent;
    border: 1px solid var(--gold);
    color: var(--white);
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 8px 16px;
    border-radius: 0;
    text-align: center;
}

.account-shell table.shop_table .woocommerce-button:hover,
.account-shell table.shop_table .button:hover,
.account-shell .woocommerce-orders-table__cell-order-actions .button:hover {
    background: var(--gold);
    color: var(--black);
}



.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
    background-color: var(--dark);
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    color: var(--gold);
    margin-bottom: 20px;
}

fieldset {
    padding: 20px;
}



.account-container {
    max-width: 1320px;
    width: 100%;
}

.account-shell {
    width: 100%;
    grid-template-columns: 342px minmax(0, 1fr);
    align-items: start;
}

.account-shell .woocommerce-MyAccount-content {
    width: 100%;
    max-width: none;
    min-width: 0;
}

.account-shell .woocommerce-orders-table,
.account-shell table.shop_table {
    width: 100%;
    max-width: none;
}

.account-shell .woocommerce-orders-table__cell-order-actions {
    text-align: right;
}



/* =========================================================
   BLOG PAGE
   ========================================================= */

.blog-page-section {
    background: var(--black);
    padding: 80px 32px;
}

.blog-filter-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 48px;
}

.tag-pill {
    display: inline-flex;
    align-items: center;
    padding: 5px 14px;
    border: 1px solid var(--gold-dim);
    background: transparent;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color 0.2s, color 0.2s;
}

.tag-pill:hover,
.tag-pill.active {
    border-color: var(--gold);
    color: var(--gold);
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.blog-card-link {
    display: block;
}

.blog-card-excerpt {
    margin: 0 0 16px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    line-height: 1.7;
}

.blog-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 60px;
    flex-wrap: wrap;
}

.blog-pagination .page-numbers {
    min-width: 38px;
    height: 38px;
    border: 1px solid var(--gold-dim);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    padding: 0 12px;
}

.blog-pagination .page-numbers.current,
.blog-pagination .page-numbers:hover {
    border-color: var(--gold);
    color: var(--gold);
}

.blog-empty {
    text-align: center;
    border: 1px solid var(--gold-dim);
    padding: 48px 28px;
}

.blog-empty h2 {
    margin-bottom: 12px;
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: uppercase;
}

.blog-empty p {
    color: var(--text-muted);
}



/* =========================================================
   SINGLE BLOG PAGE
   ========================================================= */

.single-blog-section {
    background: var(--black);
    padding: 80px 32px;
}

.single-blog-featured {
    margin-bottom: 34px;
    overflow: hidden;
    background: #111;
}

.single-blog-featured img {
    display: block;
    width: 100%;
    height: auto;
}

.single-blog-head {
    margin-bottom: 22px;
}

.single-blog-cat {
    margin: 0 0 12px;
    color: var(--gold);
    font-family: var(--font-heading);
    letter-spacing: 0.22em;
    line-height: 1.4;
    text-transform: uppercase;
}

.single-blog-head h2 {
    margin: 0 0 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(2.2rem, 5vw, 4rem);
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.08;
    text-transform: uppercase;
}

.single-blog-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 15px;
    letter-spacing: 0.03em;
}

.single-blog-meta-sep {
    color: var(--gold-dim);
}

/* Article content */
.single-blog-content {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.9;
}

.single-blog-content p {
    margin: 0 0 22px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.9;
    text-align: justify;
}

.single-blog-content h2 {
    margin: 56px 0 22px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.1;
    text-transform: uppercase;
}

.single-blog-content h3 {
    margin: 42px 0 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.15;
    text-transform: uppercase;
}

.single-blog-content h4 {
    margin: 34px 0 16px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.2rem, 2vw, 1.6rem);
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.single-blog-content ul,
.single-blog-content ol {
    margin: 0 0 28px;
    padding-left: 24px;
}

.single-blog-content li {
    margin-bottom: 10px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.single-blog-content strong {
    color: var(--white);
    font-weight: 700;
}

.single-blog-content blockquote {
    margin: 38px 0;
    padding: 16px 26px;
    border-left: 3px solid var(--gold);
    color: var(--text-muted);
    font-style: italic;
}

.single-blog-content img {
    max-width: 100%;
    height: auto;
    margin: 28px 0;
}

/* Author box */
.single-blog-author-box {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 26px;
    align-items: start;
    margin-top: 58px;
    padding: 32px;
    border: 1px solid var(--gold-dim);
    background: transparent;
}

.single-blog-author-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 1px solid var(--gold-dim);
    background: rgba(136, 111, 74, 0.12);
    color: var(--gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    line-height: 1;
}

.single-blog-author-text h3 {
    margin: 0 0 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.28em;
    line-height: 1.4;
    text-transform: uppercase;
}

.single-blog-author-role {
    margin: 0 0 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 0.28em;
    line-height: 1.4;
    text-transform: uppercase;
}

.single-blog-author-bio {
    max-width: 640px;
    margin: 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

/* Share */
.single-blog-share {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 42px;
    padding-top: 30px;
    border-top: 1px solid var(--gold-dim);
    flex-wrap: wrap;
}

.single-blog-share>span {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.single-blog-share a,
.single-copy-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 7px 14px;
    border: 1px solid var(--gold-dim);
    background: transparent;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    cursor: pointer;
    transition: border-color 0.2s, color 0.2s;
}

.single-blog-share a:hover,
.single-copy-link:hover,
.single-copy-link.copied {
    border-color: var(--gold);
    color: var(--gold);
}

.single-blog-share svg,
.single-copy-link svg {
    color: var(--gold);
    flex-shrink: 0;
}

/* Recent articles */
.single-recent-articles {
    margin-top: 92px;
}

.single-recent-eyebrow {
    margin: 0 0 10px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
}

.single-recent-articles>h2 {
    margin: 0 0 42px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.1;
    text-transform: uppercase;
}

.single-recent-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.single-recent-card .blog-card-title {
    font-size: 18px;
    letter-spacing: 0.05em;
}

/* Prev / next */
.single-post-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 56px;
    padding-top: 34px;
    border-top: 1px solid var(--gold-dim);
}

.single-post-nav-item a {
    min-height: 104px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px;
    border: 1px solid var(--gold-dim);
    background: transparent;
    transition: border-color 0.2s, transform 0.2s;
}

.single-post-nav-item a:hover {
    border-color: var(--gold);
    transform: translateY(-3px);
}

.single-post-nav .nav-arrow {
    color: var(--white);
    font-size: 24px;
    line-height: 1;
    flex-shrink: 0;
    transition: color 0.2s;
}

.single-post-nav-item a:hover .nav-arrow {
    color: var(--gold);
}

.single-post-nav .nav-label {
    display: block;
    margin-bottom: 6px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.single-post-nav h4 {
    margin: 0;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-transform: uppercase;
}

.single-post-nav-item a:hover h4 {
    color: var(--gold);
}

.next-post a {
    text-align: right;
}

/* =========================================================
   BLOG SHARED BASE
   ========================================================= */

.container-sm {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding: 0 28px;
}

.blog-card {
    display: block;
    transition: opacity 0.2s;
}

.blog-card:hover {
    opacity: 0.8;
}

.blog-card-link {
    display: block;
}

.blog-card-img {
    height: 220px;
    overflow: hidden;
    background: #111;
    margin-bottom: 16px;
}

.blog-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card:hover .blog-card-img img {
    transform: scale(1.04);
}

.blog-card-cat {
    margin: 0 0 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.blog-card-title {
    margin: 0 0 10px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.blog-card-date {
    margin: 0 0 14px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
}

/* =========================================================
   SHOP PAGE
   ========================================================= */

.shop-page-section {
    background: var(--black);
    min-height: 100vh;
}

.shop-topbar {
    display: flex;
    gap: 16px;
    padding: 16px 32px;
    border-bottom: 1px solid rgba(136, 111, 74, 0.1);
    flex-wrap: wrap;
    align-items: center;
}

.shop-search-input {
    flex: 1;
    min-width: 220px;
    background: #111;
    font-size: 13px;
    padding: 8px 14px;
}

.shop-sort-select {
    max-width: 220px;
    background-color: #111;
    font-size: 16px;
    padding: 8px 38px 8px 14px;
}

.shop-filter-toggle {
    display: none;
    background: none;
    border: 1px solid rgba(136, 111, 74, 0.25);
    color: var(--gold);
    padding: 8px 16px;
    cursor: pointer;
    font-family: var(--font-heading);
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.shop-result-count {
    color: #666;
    font-size: 16px;
}

.shop-active-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding: 16px 32px 0;
}

.active-filter-pill {
    border: 1px solid var(--gold-dim);
    color: var(--gold);
    padding: 5px 12px;
    font-family: var(--font-body);
    font-size: 13px;
}

.clear-filter-link {
    color: var(--text-muted);
    font-size: 13px;
    text-decoration: underline;
}

.clear-filter-link:hover {
    color: var(--gold);
}

.shop-layout {
    display: flex;
    gap: 32px;
    padding: 40px 32px;
    align-items: flex-start;
}

.shop-filter-sidebar {
    width: 330px;
    flex-shrink: 0;
    position: sticky;
    top: 100px;
    border-right: 1px solid rgba(136, 111, 74, 0.2);
    padding-right: 32px;
}

.filter-group {
    margin-bottom: 32px;
}

.filter-title,
.price-filter-box h3 {
    display: block;
    margin-bottom: 24px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.filter-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
}



.filter-count {
    color: var(--text-muted);
    font-style: normal;
    font-size: 12px;
    margin-left: 4px;
}


.price-slider-wrap {
    margin: 18px 0 20px;
}

.price-range-slider {
    position: relative;
    height: 28px;
}

.price-range-slider input[type="range"] {
    position: absolute;
    left: 0;
    top: 8px;
    width: 100%;
    height: 2px;
    background: transparent;
    pointer-events: none;
    appearance: none;
    -webkit-appearance: none;
}

.price-range-slider::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 13px;
    height: 1px;
    background: var(--gold-dim);
}

.price-range-slider input[type="range"]::-webkit-slider-thumb {
    width: 15px;
    height: 15px;
    border: 1px solid var(--gold);
    border-radius: 50%;
    background: var(--black);
    cursor: pointer;
    pointer-events: auto;
    appearance: none;
    -webkit-appearance: none;
}

.price-range-slider input[type="range"]::-moz-range-thumb {
    width: 15px;
    height: 15px;
    border: 1px solid var(--gold);
    border-radius: 50%;
    background: var(--black);
    cursor: pointer;
    pointer-events: auto;
}

.filter-check {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-muted);
    font-size: 16px;
    cursor: pointer;
}

.filter-check input {
    accent-color: var(--gold);
}

.filter-check.is-active,
.filter-check:hover {
    color: var(--gold);
}

.price-filter-box {
    padding: 0;
    margin-bottom: 37px;
}

.price-inputs {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 8px;
    align-items: center;
    margin-bottom: 16px;
}

.price-inputs span {
    color: var(--text-muted);
}

.price-inputs .input-field {
    background: #111;
    padding: 8px 10px;
    font-size: 13px;
}

.price-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
}


.filter-btn {
    background: var(--gold);
    color: #fff;
    border: none;
    padding: 12px 18px;
    font-size: 14px;
    font-weight: 400;
    cursor: pointer;
    border-radius: 4px;
    transition: 0.3s;
    font-family: var(--font-heading);
    letter-spacing: 2px;
    text-transform: uppercase;
}

.filter-btn:hover {
    background: #000;
}

.shop-reset-filters {
    display: block;
    width: 100%;
    border: 1px solid rgba(136, 111, 74, 0.3);
    color: var(--gold);
    padding: 10px 0;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.1em;
    font-family: var(--font-heading);
    text-transform: uppercase;
}

/* =========================================================
   SHOP ATTRIBUTE FILTER DISPLAY TYPES
   ========================================================= */

.shop-filter-select {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: transparent;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 14px;
    padding: 0 12px;
    outline: none;
}

.shop-filter-select:focus {
    border-color: var(--gold);
}

.filter-label-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.filter-label-option {
    cursor: pointer;
}

.filter-label-option input {
    display: none;
}

.filter-label-option span {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--gold-dim);
    color: var(--text-muted);
    padding: 0 12px;
    font-family: var(--font-body);
    font-size: 13px;
    transition: 0.25s ease;
}

.filter-label-option:hover span,
.filter-label-option.is-active span,
.filter-label-option input:checked+span {
    border-color: var(--gold);
    color: var(--gold);
}

.filter-label-option .filter-count {
    margin-left: 4px;
}



.shop-results-wrap {
    flex: 1;
    min-width: 0;
}

.shop-ajax-loader {
    border: 1px solid var(--gold-dim);
    padding: 18px;
    margin-bottom: 20px;
    color: var(--gold);
    text-align: center;
}

.shop-grid-cols {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.shop-card-v2 {
    border: 1px solid rgba(136, 111, 74, 0.15);
    background: #0a0a0a;
    transition: border-color 0.2s, background 0.2s;
    display: flex;
    flex-direction: column;
}

.shop-card-v2:hover {
    border-color: var(--gold);
    background: #111;
}

.shop-card-v2-img-wrap {
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #111;
}

.shop-card-v2-img-link {
    display: block;
    height: 100%;
}

.shop-card-v2-img-link img,
.shop-card-v2-img-link .woocommerce-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.shop-card-v2-qv {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.7);
    border: 1px solid rgba(201, 168, 76, 0.4);
    color: #C9A84C;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s;
}

.shop-card-v2:hover .shop-card-v2-qv {
    opacity: 1;
}

.shop-card-v2-body {
    padding: 14px 16px 0;
}

.shop-card-v2 h4 {
    margin: 0 0 6px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.shop-card-price,
.shop-card-price .woocommerce-Price-amount {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 600;
}

.shop-card-price del {
    color: #666;
    font-size: 12px;
    margin-right: 6px;
}

.shop-card-price ins {
    text-decoration: none;
}

.shop-card-v2-atc-wrap {
    padding: 10px 16px 14px;
    margin-top: auto;
}

.shop-card-v2-atc {
    width: 100%;
    background: none;
    border: none;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 16px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    cursor: pointer;
    padding: 6px 0;
    text-align: center;
    opacity: 0;
    transition: opacity 0.2s;
    border-top: 1px solid rgba(136, 111, 74, 0.2);
}

.shop-card-v2:hover .shop-card-v2-atc {
    opacity: 1;
}

.shop-card-v2-atc-oos {
    color: #c84c4c;
    cursor: not-allowed;
}

.OUT_OF_stock {
    margin: 4px 0 0;
    color: #c84c4c;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.product-tags2 {
    display: inline-grid;
    gap: 10px;
    align-items: center;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.product-tag {
    padding: 6px 14px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    border-radius: 25px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    text-align: center;
}

.sale-tag {
    background: var(--gold);
}

.hot-tag {
    background: #000;
}

.new-tag {
    background: #fff;
    color: #000;
}

.shop-empty {
    border: 1px solid var(--gold-dim);
    padding: 48px 28px;
    text-align: center;
}

.shop-empty h2 {
    margin-bottom: 12px;
    color: var(--white);
}

.single-product-tags {
    margin-bottom: 18px;
}

.single-product-info .product-tags2 {
    display: flex;
    left: 0;
    top: -10px;
}

/* =========================================================
   SINGLE PRODUCT PAGE
   ========================================================= */

.single-product-section {
    background: var(--black);
    padding: 80px 32px 0;
}

.single-product-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
}


.single-product-info {
    position: relative;
}



.product-tags {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin-bottom: 10px;
}

.tag {
    width: max-content;
    padding: 7px 14px;
    border-radius: 30px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.sale {
    background: #e53935;
}

.single-product-category {
    margin: 0 0 10px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.single-product-title {
    margin: 0 0 14px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.single-product-price {
    margin-bottom: 22px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 28px;
    line-height: 1.2;
}

.single-product-price .woocommerce-Price-amount {
    color: var(--gold);
}

.single-product-price del {
    color: #666;
    font-size: 18px;
    margin-right: 10px;
}

.single-product-price ins {
    text-decoration: none;
}

.single-product-short-desc {
    margin-bottom: 28px;
}

.single-product-short-desc p {
    margin: 0 0 16px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.single-product-cart-area {
    margin-bottom: 22px;
}



/* Variable products */
.single-product-cart-area table.variations {
    width: 100%;
    margin: 0 0 18px;
    border: none;
}

.single-product-cart-area table.variations tr {
    display: block;
    margin-bottom: 16px;
}

.single-product-cart-area table.variations th,
.single-product-cart-area table.variations td {
    display: block;
    padding: 0;
    border: none;
}

.single-product-cart-area table.variations label {
    text-align: left;
    display: block;
    margin-bottom: 8px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.single-product-cart-area table.variations select {
    width: 100%;
    max-width: 360px;
    background-color: #111;
    border: 1px solid var(--gold-dim);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 14px;
    padding: 12px 36px 12px 14px;
    outline: none;
}

.single-product-cart-area .reset_variations {
    display: inline-block;
    margin-top: 10px;
    color: var(--gold);
    font-size: 13px;
}

.single-product-cart-area .woocommerce-variation-price {
    margin: 16px 0;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 22px;
}



.wishlist-icon {
    font-size: 22px;
    line-height: 1;
    transition: 0.3s;
}

.product-category {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
    border-top: 1px solid var(--gold-dim);
    padding-top: 30px;
}

.category-label {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.category-link {
    color: var(--text-muted);
    font-size: 13px;
    transition: 0.3s ease;
}

.category-link:hover {
    color: #c89b5e;
}

.category-divider {
    color: #bbb;
    font-size: 14px;
}

/* Reusable product info blocks */

.product-info-content {
    padding: 0 0 22px;
}

.product-info-content p {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.8;
}

/* Related */
.single-related-products {
    background: var(--black);
    padding: 90px 32px;
}




.single-product-purchase-area {
    margin: 28px 0 26px;
}

/* Simple product form */
.single-product-cart-area form.cart {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    margin: 0;
}

/* Variable product form */
.single-product-cart-area form.variations_form {
    display: block;
}

.single-product-cart-area table.variations,
.single-product-cart-area .single_variation_wrap {
    width: 100%;
}

/* Hide Woo's duplicate variation price */
.single-product-cart-area .woocommerce-variation-price {
    display: none;
}

/* Line 1: qty + stock */
.single-product-cart-area .quantity-stock-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}

/* Line 2: buttons */
.single-product-cart-area .purchase-buttons-row,
.single-product-cart-area .woocommerce-variation-add-to-cart {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.single-product-cart-area .quantity {
    display: inline-flex;
    align-items: center;
    height: 50px;
    border: 1px solid var(--gold-dim);
    background: transparent;
    width: fit-content;
    flex-shrink: 0;
}

.single-product-cart-area .qty-btn {
    width: 46px;
    height: 48px;
    border: none;
    background: transparent;
    color: var(--white);
    font-size: 24px;
    cursor: pointer;
    transition: color 0.2s, background 0.2s;
}

.single-product-cart-area .qty-btn:hover {
    color: var(--gold);
    background: rgba(136, 111, 74, 0.08);
}

.single-product-cart-area .qty-minus {
    border-right: 1px solid var(--gold-dim);
}

.single-product-cart-area .qty-plus {
    border-left: 1px solid var(--gold-dim);
}

.single-product-cart-area input.qty {
    width: 64px;
    height: 48px;
    border: none;
    background: transparent;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 18px;
    text-align: center;
    outline: none;
}

.single-product-cart-area input.qty::-webkit-inner-spin-button,
.single-product-cart-area input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.single-product-stock-inline {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    white-space: nowrap;
}

.single-product-stock-inline::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-right: 9px;
    background: var(--gold);
    vertical-align: middle;
}

.single-product-stock-inline.is-out-of-stock::before {
    background: #c84c4c;
}


.single-product-cart-area .quantity.is-disabled {
    opacity: 0.45;
    pointer-events: none;
}

.single-product-cart-area .single_add_to_cart_button:disabled,
.single-product-cart-area .single_buy_now_button:disabled,
.single-product-cart-area .single_add_to_cart_button.is-disabled,
.single-product-cart-area .single_buy_now_button.is-disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.wishlist-icon-btn {
    width: 50px;
    min-width: 50px;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    font-size: 24px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s, border-color 0.2s;
}

.wishlist-icon-btn:hover {
    color: var(--gold);
    border-color: var(--gold);
}

/* Variable products: force variation table full width above purchase row */
.single-product-cart-area form.variations_form {
    display: block;
}

.single-product-cart-area table.variations,
.single-product-cart-area .single_variation_wrap {
    width: 100%;
}

.single-product-cart-area .woocommerce-variation-add-to-cart {
    display: block;
    grid-template-columns: auto auto auto auto;
    gap: 14px;
    align-items: center;
}

.single-product-cart-area .woocommerce-variation-add-to-cart-disabled .quantity,
.single-product-cart-area .woocommerce-variation-add-to-cart-disabled .single-product-stock-inline {
    opacity: 0.45;
    pointer-events: none;
}



.wishlist-icon-btn {
    width: 50px;
    height: 50px;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    font-size: 24px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s, border-color 0.2s;
}

.wishlist-icon-btn:hover {
    color: var(--gold);
    border-color: var(--gold);
}

/* =========================================================
   SINGLE PRODUCT - GALLERY
   ========================================================= */

.single-product-gallery {
    min-width: 0;
}

.gallery-main-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #111;
    margin-bottom: 12px;
}

.gallery-main-open {
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    background: transparent;
    cursor: zoom-in;
    display: block;
    position: relative;
}

.gallery-main-img,
.gallery-main-open img,
.gallery-main-open .woocommerce-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* zoom icon */
.gallery-zoom-icon {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 3;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(201, 168, 76, 0.45);
    background: rgba(0, 0, 0, 0.68);
    color: var(--gold);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    line-height: 1;
    transition: border-color 0.2s, color 0.2s;
}

.gallery-main-open:hover .gallery-zoom-icon {
    border-color: var(--gold);
    color: var(--white);
}

/* arrows on main image */
.gallery-arrow {
    position: absolute;
    top: 50%;
    z-index: 4;
    transform: translateY(-50%);
    width: 42px;
    height: 52px;
    border: 1px solid rgba(201, 168, 76, 0.35);
    background: rgba(0, 0, 0, 0.55);
    color: var(--gold);
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s, border-color 0.2s, color 0.2s;
}

.gallery-main-wrap:hover .gallery-arrow {
    opacity: 1;
}

.gallery-arrow:hover {
    border-color: var(--gold);
    color: var(--white);
}

.gallery-arrow-prev {
    left: 14px;
}

.gallery-arrow-next {
    right: 14px;
}

.gallery-thumbs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.gallery-thumb {
    width: 72px;
    height: 72px;
    overflow: hidden;
    cursor: pointer;
    border: 1px solid var(--gold-dim);
    background: transparent;
    padding: 0;
    transition: border-color 0.2s, opacity 0.2s;
}

.gallery-thumb:hover,
.gallery-thumb.active {
    border-color: var(--gold);
}

.gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* lightbox */
.product-gallery-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: rgba(0, 0, 0, 0.94);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 70px;
}

.product-gallery-lightbox[hidden] {
    display: none;
}

#galleryLightboxImage {
    max-width: min(100%, 1100px);
    max-height: 82vh;
    object-fit: contain;
}

.gallery-lightbox-close {
    position: fixed;
    top: 22px;
    right: 28px;
    z-index: 3;
    background: transparent;
    border: none;
    color: var(--white);
    font-size: 42px;
    line-height: 1;
    cursor: pointer;
}

.gallery-lightbox-arrow {
    position: fixed;
    top: 50%;
    z-index: 3;
    transform: translateY(-50%);
    width: 54px;
    height: 68px;
    border: 1px solid rgba(201, 168, 76, 0.45);
    background: rgba(0, 0, 0, 0.55);
    color: var(--gold);
    font-size: 46px;
    cursor: pointer;
    transition: border-color 0.2s, color 0.2s;
}

.gallery-lightbox-arrow:hover {
    border-color: var(--gold);
    color: var(--white);
}

.gallery-lightbox-prev {
    left: 28px;
}

.gallery-lightbox-next {
    right: 28px;
}

body.gallery-lightbox-open {
    overflow: hidden;
}

/* =========================================================
   PRODUCT VARIATION LABEL OPTIONS
   ========================================================= */

.aatmanya-hidden-select {
    display: none;
}

.variation-label-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.variation-label-option {
    min-width: 75px;
    height: 40px;
    border: 1px solid #977c4c;
    background: var(--dark);
    color: var(--text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 16px;
    transition: 0.3s;
    padding: 0 14px;
}

.variation-label-option:hover,
.variation-label-option.active {
    border-color: #977c4c;
    background: #977c4c;
    color: #fff;
}

/* =========================================================
   SINGLE PRODUCT - ATTRIBUTES
   ========================================================= */

.single-product-attributes {
    border-top: 1px solid var(--gold-dim);
    border-bottom: 1px solid var(--gold-dim);
}

.single-product-attribute-row {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 18px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(136, 111, 74, 0.18);
}

.single-product-attribute-row:last-child {
    border-bottom: none;
}

.single-product-attribute-label {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.single-product-attribute-value {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.6;
}


/* =========================================================
   SINGLE PRODUCT - STICKY GALLERY
   ========================================================= */

@media (min-width: 1025px) {
    .single-product-gallery {
        position: sticky;
        top: 105px;
        align-self: start;
    }
}

/* =========================================================
   SINGLE PRODUCT - TRUST NOTES
   ========================================================= */

.single-product-trust-notes {
    padding: 20px 0;
    border-bottom: 1px solid var(--gold-dim);
    display: grid;
    gap: 12px;
}

.single-product-trust-note {
    display: flex;
    align-items: center;
    gap: 12px;
}

.single-product-trust-note span {
    color: var(--gold);
    font-size: 18px;
    line-height: 1;
}

.single-product-trust-note p {
    margin: 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.6;
}




/* =========================================================
   SINGLE PRODUCT - WOOCOMMERCE TABS
   ========================================================= */

.single-product-tabs-section {
    background: var(--black);
    padding: 70px 32px;
}


.woocommerce-tabs ul.tabs {
    display: flex;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    border-bottom: 1px solid var(--gold-dim);
}

.woocommerce-tabs ul.tabs li {
    margin: 0;
}


.woocommerce-tabs ul.tabs li a {
    display: block;
    padding: 18px 26px;
    color: var(--text-muted);
    font-family: var(--font-heading);
    font-size: 18px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover {
    color: var(--gold);
    border-bottom: 1px solid var(--gold);
}

.woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 38px 0 0;
    color: var(--text);
}

.woocommerce-tabs .woocommerce-Tabs-panel h2 {
    margin: 0 0 22px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.5rem, 3vw, 2.4rem);
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.woocommerce-tabs .woocommerce-Tabs-panel p {
    margin: 0 0 20px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.woocommerce-tabs table.shop_attributes {
    width: 100%;
    border: 1px solid var(--gold-dim);
    border-collapse: collapse;
}

.woocommerce-tabs table.shop_attributes th,
.woocommerce-tabs table.shop_attributes td {
    border: 1px solid rgba(136, 111, 74, 0.22);
    padding: 14px 18px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
}

.woocommerce-tabs table.shop_attributes th {
    color: var(--gold);
    font-family: var(--font-heading);
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

/* =========================================================
   PRODUCT TABS CONTENT
   ========================================================= */

.woocommerce-tabs .woocommerce-Tabs-panel>h2:first-child {
    display: none;
}

.aatmanya-product-tab-content p {
    margin: 0 0 20px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}

.woocommerce-tabs .woocommerce-Tabs-panel>h2:first-child {
    display: none;
}

.aatmanya-product-tab-content p {
    margin: 0 0 20px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.8;
}



/* =========================================================
   PRODUCT VARIATION LABEL OPTIONS
   ========================================================= */

.aatmanya-hidden-select {
    display: none;
}

.variation-label-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.variation-label-option {
    min-width: 75px;
    height: 40px;
    border: 1px solid var(--gold-dim);
    background: var(--dark);
    color: var(--text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 16px;
    transition: 0.3s;
    padding: 0 14px;
}

.variation-label-option:hover,
.variation-label-option.active {
    border-color: var(--gold);
    background: var(--gold);
    color: var(--black);
}


/* Variation required warning */
.variations_form .variation-label-options.needs-selection,
.variations_form select[name^="attribute_"].needs-selection {
    outline: 1px solid #c84c4c;
    outline-offset: 4px;
}

.variations_form .variation-label-options.needs-selection .variation-label-option {
    border-color: #c84c4c;
}

.variations_form .variation-label-options.needs-selection-fade,
.variations_form select[name^="attribute_"].needs-selection-fade {
    transition: outline-color 0.45s ease, border-color 0.45s ease;
}



/* =========================================================
   SINGLE PRODUCT - SHARE
   ========================================================= */

.single-product-share {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin: 24px 0;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--gold-dim);
}

.single-product-share-label {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.single-product-share a,
.single-product-copy-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 7px 14px;
    border: 1px solid var(--gold-dim);
    background: transparent;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    cursor: pointer;
    transition: border-color 0.2s, color 0.2s;
}

.single-product-share a:hover,
.single-product-copy-link:hover,
.single-product-copy-link.copied {
    border-color: var(--gold);
    color: var(--gold);
}


/* =========================================================
   WISHLIST
   ========================================================= */

.wishlist-toggle.is-loading {
    opacity: 0.55;
    pointer-events: none;
}

.wishlist-icon-btn.is-active {
    color: var(--gold);
    border-color: var(--gold);
}

.account-wishlist-panel h2 {
    margin: 0 0 28px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.account-wishlist-grid {
    display: grid;
    gap: 22px;
}

.account-wishlist-card {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 22px;
    align-items: center;
    border: 1px solid var(--gold-dim);
    background: var(--black);
    padding: 18px;
}

.account-wishlist-img {
    display: block;
    width: 110px;
    height: 110px;
    overflow: hidden;
    background: #111;
}

.account-wishlist-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.account-wishlist-info h3 {
    margin: 0 0 8px;
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.account-wishlist-info h3 a {
    color: var(--white);
}

.account-wishlist-price {
    margin-bottom: 14px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 18px;
}

.account-wishlist-remove {
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    padding: 8px 18px;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.account-wishlist-remove:hover {
    background: var(--gold);
    color: var(--black);
}


/* =========================================================
   SINGLE PRODUCT - ACTION BUTTONS
   ========================================================= */

.single-product-cart-area .single_add_to_cart_button,
.single-product-cart-area .single_buy_now_button {
    position: relative;
    height: 50px;
    min-width: 190px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    overflow: hidden;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    padding: 0 26px;
    transition: color 0.28s ease, border-color 0.28s ease, background 0.28s ease;
}

.single-product-cart-area .single_add_to_cart_button {
    background: transparent;
    border: 1px solid var(--gold);
    color: var(--white);
}




.single-product-cart-area .single_add_to_cart_button:hover::before {
    transform: rotate(72deg);
}

.single-product-cart-area .single_add_to_cart_button.loading {
    opacity: 0.65;
    pointer-events: none;
}

.single-product-cart-area .single_add_to_cart_button.added::after {
    content: "Added";
    position: absolute;
    inset: 0;
    background: var(--gold);
    color: var(--black);
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* Buy Now uses same visible structure as main site button */
.single-product-cart-area .single_buy_now_button {
    background: var(--white);
    border: none;
    color: var(--black);
    width: 50%;
}

.single-product-cart-area .single_buy_now_button .btn-star {
    color: var(--gold);
    font-size: 18px;
    line-height: 1;
    transition: transform 0.45s ease;
}


.single-product-cart-area .single_buy_now_button:hover .btn-star {
    color: var(--gold);
    transform: rotate(72deg);
}







/* FINAL: Add to cart text underline only */
.single-product-cart-area button.single_add_to_cart_button .btn-label {
    position: relative;
    display: inline-block;
}

.single-product-cart-area button.single_add_to_cart_button .btn-label::after {
    content: "";
    position: absolute;
    left: 0;
    right: auto;
    bottom: -5px;
    width: 0;
    height: 1px;
    background: currentColor;
    transition: width 0.28s ease;
    pointer-events: none;
}

.single-product-cart-area button.single_add_to_cart_button:hover .btn-label::after {
    width: 100%;
}

.single-product-cart-area button.single_add_to_cart_button .btn-star {
    display: inline-block;
    transition: transform 0.45s ease;
}

.single-product-cart-area button.single_add_to_cart_button:hover .btn-star {
    transform: rotate(72deg);
}


/* =========================================================
   CART PAGE
   ========================================================= */

.aatmanya-cart-section {
    background: var(--black);
    padding: 86px 32px 100px;
}

.aatmanya-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 42px;
    align-items: start;
}

.aatmanya-cart-items {
    min-width: 0;
}

.aatmanya-cart-head {
    margin-bottom: 28px;
}

.aatmanya-cart-head h2 {
    margin: 0 0 8px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.1;
    text-transform: uppercase;
}

.aatmanya-cart-head p {
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
}

.aatmanya-cart-item {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr) 110px 150px 120px 42px;
    gap: 20px;
    align-items: center;
    padding: 24px 0;
    border-top: 1px solid var(--gold-dim);
}

.aatmanya-cart-item:last-of-type {
    border-bottom: 1px solid var(--gold-dim);
}

.aatmanya-cart-product-img {
    width: 110px;
    height: 110px;
    background: #111;
    overflow: hidden;
}

.aatmanya-cart-product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aatmanya-cart-product-info h3 {
    margin: 0 0 8px;
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.35;
    text-transform: uppercase;
}

.aatmanya-cart-product-info h3 a {
    color: var(--white);
}

.aatmanya-cart-product-info h3 a:hover {
    color: var(--gold);
}

.aatmanya-cart-product-meta {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.6;
}

.aatmanya-cart-product-meta dl,
.aatmanya-cart-product-meta dt,
.aatmanya-cart-product-meta dd {
    margin: 0;
}

.aatmanya-cart-price,
.aatmanya-cart-subtotal,
.aatmanya-cart-mobile-price {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 17px;
    white-space: nowrap;
}

.aatmanya-cart-mobile-price,
.aatmanya-cart-actions-mobile {
    display: none;
}

.aatmanya-cart-quantity .quantity {
    display: inline-flex;
    align-items: center;
    height: 46px;
    border: 1px solid var(--gold-dim);
    background: transparent;
}

.aatmanya-cart-quantity input.qty {
    width: 72px;
    height: 44px;
    border: none;
    background: transparent;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 17px;
    text-align: center;
    outline: none;
    -moz-appearance: textfield;
}

.aatmanya-cart-quantity input.qty::-webkit-inner-spin-button,
.aatmanya-cart-quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.aatmanya-cart-remove {
    width: 34px;
    height: 34px;
    border: 1px solid var(--gold-dim);
    color: var(--text-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    line-height: 1;
    transition: color 0.2s, border-color 0.2s;
}

.aatmanya-cart-remove:hover {
    color: var(--gold);
    border-color: var(--gold);
}

.aatmanya-cart-coupon-row {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    margin-top: 28px;
    flex-wrap: wrap;
}

.aatmanya-cart-coupon {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.aatmanya-cart-coupon input {
    min-width: 230px;
    height: 46px;
    background: #111;
    border: 1px solid var(--gold-dim);
    color: var(--text);
    padding: 0 14px;
    outline: none;
}

.aatmanya-cart-coupon input:focus {
    border-color: var(--gold);
}

.aatmanya-cart-coupon-btn,
.aatmanya-cart-update-btn {
    height: 46px;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    padding: 0 22px;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    transition: background 0.2s, color 0.2s;
}

.aatmanya-cart-coupon-btn:hover,
.aatmanya-cart-update-btn:hover {
    background: var(--gold);
    color: var(--black);
}

.aatmanya-cart-summary {
    position: sticky;
    top: 105px;
}

.aatmanya-cart-summary-inner {
    border: 1px solid var(--gold-dim);
    background: rgba(136, 111, 74, 0.04);
    padding: 30px;
}

.aatmanya-cart-summary .section-eyebrow {
    margin-bottom: 24px;
}

.aatmanya-cart-summary .cart_totals {
    float: none;
    width: 100%;
}

.aatmanya-cart-summary .cart_totals h2 {
    display: none;
}

.aatmanya-cart-summary table.shop_table {
    width: 100%;
    border: none;
    border-collapse: collapse;
    margin: 0 0 24px;
}

.aatmanya-cart-summary table.shop_table th,
.aatmanya-cart-summary table.shop_table td {
    border: none;
    border-bottom: 1px solid rgba(136, 111, 74, 0.22);
    padding: 16px 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
    vertical-align: top;
}

.aatmanya-cart-summary table.shop_table th {
    color: var(--text-muted);
    font-weight: 400;
    text-align: left;
}

.aatmanya-cart-summary table.shop_table td {
    text-align: right;
    color: var(--white);
}

.aatmanya-cart-summary .order-total th,
.aatmanya-cart-summary .order-total td,
.aatmanya-cart-summary .order-total .amount {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 400;
}

.aatmanya-cart-summary .wc-proceed-to-checkout {
    padding: 0;
    margin: 26px 0 0;
}

.aatmanya-cart-summary .checkout-button {
    width: 100%;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--gold);
    background: var(--gold);
    color: var(--black);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    border-radius: 0;
    transition: background 0.2s, color 0.2s;
}

.aatmanya-cart-summary .checkout-button:hover {
    background: transparent;
    color: var(--white);
}

.aatmanya-cart-summary .woocommerce-shipping-destination,
.aatmanya-cart-summary .woocommerce-shipping-calculator {
    color: var(--text-muted);
    font-size: 14px;
}

.aatmanya-cart-summary a {
    color: var(--gold);
}

.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error {
    border-top-color: var(--gold);
    background: #111;
    color: var(--text);
}

.woocommerce-cart .woocommerce-message::before,
.woocommerce-cart .woocommerce-info::before {
    color: var(--gold);
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
    width: 100%;
}

/* =========================================================
   CART PAGE
   ========================================================= */

.aatmanya-cart-section {
    background: var(--black);
    padding: 86px 32px 100px;
}

.aatmanya-cart-table {
    width: 100%;
}

.aatmanya-cart-table-head,
.aatmanya-cart-row {
    display: grid;
    grid-template-columns: minmax(320px, 1.45fr) 160px 180px 160px 42px;
    gap: 24px;
    align-items: center;
}

.aatmanya-cart-table-head {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--gold-dim);
}

.aatmanya-cart-table-head div {
    color: var(--white);
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.aatmanya-cart-row {
    padding: 54px 0;
    border-bottom: 1px solid var(--gold-dim);
}

.aatmanya-cart-product {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 30px;
    align-items: center;
}

.aatmanya-cart-product-img {
    width: 120px;
    height: 120px;
    overflow: hidden;
    background: #111;
}

.aatmanya-cart-product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aatmanya-cart-product-text h3 {
    margin: 0 0 8px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4;
}

.aatmanya-cart-product-text h3 a {
    color: var(--white);
}

.aatmanya-cart-product-text h3 a:hover {
    color: var(--gold);
}

.aatmanya-cart-product-meta {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.6;
}

.aatmanya-cart-product-meta dl,
.aatmanya-cart-product-meta dt,
.aatmanya-cart-product-meta dd {
    margin: 0;
}

.aatmanya-cart-price,
.aatmanya-cart-subtotal {
    color: var(--white);
    font-family: var(--font-body);
    font-size: 17px;
    font-weight: 500;
    white-space: nowrap;
}

.aatmanya-cart-quantity .quantity {
    display: inline-flex;
    align-items: center;
    height: 42px;
    border: 1px solid var(--gold-dim);
    background: transparent;
}

.aatmanya-cart-quantity input.qty {
    width: 82px;
    height: 40px;
    border: none;
    background: transparent;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 16px;
    text-align: center;
    outline: none;
    -moz-appearance: textfield;
}

.aatmanya-cart-quantity input.qty::-webkit-inner-spin-button,
.aatmanya-cart-quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.aatmanya-cart-remove {
    color: var(--text-muted);
    font-size: 30px;
    line-height: 1;
    font-weight: 300;
    transition: color 0.2s;
}

.aatmanya-cart-remove:hover {
    color: var(--gold);
}

.aatmanya-cart-actions-row {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: end;
    padding: 34px 0 40px;
}

.aatmanya-cart-coupon {
    display: grid;
    grid-template-columns: minmax(220px, 360px) auto;
    gap: 0;
    align-items: end;
}

.aatmanya-cart-coupon input {
    height: 42px;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--gold-dim);
    color: var(--text);
    padding: 0;
    outline: none;
}

.aatmanya-cart-coupon input:focus {
    border-bottom-color: var(--gold);
}

.aatmanya-cart-action-buttons {
    display: flex;
    gap: 70px;
    align-items: center;
}

.aatmanya-link-button {
    position: relative;
    border: none;
    background: transparent;
    color: var(--white);
    padding: 0 0 8px;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.aatmanya-link-button::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform-origin: left center;
    transform: scaleX(1);
    transition: transform 0.25s ease;
}

.aatmanya-link-button:hover::after {
    transform: scaleX(0.55);
}

/* Totals box */
.aatmanya-cart-totals-wrap {
    border: 1px solid var(--gold);
    padding: 36px 40px;
    background-color: var(--dark);
}

.aatmanya-cart-totals-wrap .cart_totals {
    float: none;
    width: 100%;
}

.aatmanya-cart-totals-wrap .cart_totals h2 {
    margin: 0 0 28px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 500;
}

.aatmanya-cart-totals-wrap table.shop_table {
    width: 100%;
    border: none;
    border-collapse: collapse;
    margin: 0;
}

.aatmanya-cart-totals-wrap table.shop_table th,
.aatmanya-cart-totals-wrap table.shop_table td {
    border: none;
    border-bottom: 1px solid var(--gold-dim);
    padding: 22px 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
    vertical-align: top;
}

.aatmanya-cart-totals-wrap table.shop_table th {
    width: 65%;
    color: var(--white);
    font-weight: 600;
    text-align: left;
}

.aatmanya-cart-totals-wrap table.shop_table td {
    text-align: right;
    color: var(--white);
}

.aatmanya-cart-totals-wrap .woocommerce-shipping-methods {
    margin: 0;
    padding: 0;
    list-style: none;
}

.aatmanya-cart-totals-wrap .woocommerce-shipping-destination {
    color: var(--text-muted);
    font-size: 14px;
}

.aatmanya-cart-totals-wrap .order-total th,
.aatmanya-cart-totals-wrap .order-total td,
.aatmanya-cart-totals-wrap .order-total .amount {
    color: var(--white);
    font-size: 17px;
    font-weight: 600;
}

.aatmanya-cart-totals-wrap .wc-proceed-to-checkout {
    padding: 28px 0 0;
    margin: 0;
    display: flex;
    justify-content: flex-end;
}


.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error {
    border-top-color: var(--gold);
    background: #111;
    color: var(--text);
}

.woocommerce-cart .woocommerce-message::before,
.woocommerce-cart .woocommerce-info::before {
    color: var(--gold);
}


/* =========================================================
   CART EMPTY / NOTICES
   ========================================================= */

.woocommerce-cart .woocommerce {
    width: 100%;
}

.woocommerce-cart .woocommerce-notices-wrapper {
    margin-bottom: 26px;
}

.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error {
    margin: 0 0 22px;
    padding: 18px 22px;
    border: 1px solid var(--gold-dim);
    border-top: 1px solid var(--gold);
    background: rgba(136, 111, 74, 0.06);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
}

.woocommerce-cart .woocommerce-message::before,
.woocommerce-cart .woocommerce-info::before,
.woocommerce-cart .woocommerce-error::before {
    display: none;
}

.woocommerce-cart .woocommerce-message a,
.woocommerce-cart .woocommerce-info a,
.woocommerce-cart .woocommerce-error a {
    color: var(--gold);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.woocommerce-cart .wc-empty-cart-message {
    background: var(--black);
    padding: 52px 32px;
    text-align: center;
}

.woocommerce-cart .wc-empty-cart-message .cart-empty {
    margin: 0;
    border: none;
    background: transparent;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.woocommerce-cart .return-to-shop {
    margin: 28px 0;
    text-align: center;
}

.woocommerce-cart .return-to-shop .button.wc-backward {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    padding: 0 28px;
    border-radius: 0;
    box-shadow: none;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    transition: background 0.2s, color 0.2s;
}

.woocommerce-cart .return-to-shop .button.wc-backward:hover {
    background: var(--gold);
    color: var(--black);
}


/* =========================================================
   GLOBAL WOOCOMMERCE TOAST NOTICES
   ========================================================= */

.aatmanya-toast-wrap {
    position: fixed;
    bottom: 96px;
    left: 24px;
    z-index: 99999;
    width: min(380px, calc(100vw - 40px));
    display: grid;
    gap: 12px;
    pointer-events: none;
    list-style: none;
}

.aatmanya-toast {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: start;
    padding: 16px 18px;
    border: 1px solid var(--gold-dim);
    border-left: 3px solid var(--gold);
    background: rgba(5, 5, 5, 0.96);
    color: var(--text);
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35);
    transform: translateY(-18px);
    opacity: 0;
    pointer-events: auto;
    transition: opacity 0.28s ease, transform 0.28s ease;
}

.aatmanya-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.aatmanya-toast.is-leaving {
    opacity: 0;
    transform: translateY(-18px);
}

.aatmanya-toast.is-error {
    border-left-color: #c84c4c;
}

.aatmanya-toast.is-info {
    border-left-color: var(--text-muted);
}

.aatmanya-toast-content {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.6;
}

.aatmanya-toast-content a {
    color: var(--gold);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.aatmanya-toast-close {
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 22px;
    line-height: 1;
    padding: 0;
}

.aatmanya-toast-close:hover {
    color: var(--gold);
}

/* Hide empty WooCommerce notice wrappers so they do not create layout gaps */
.woocommerce-notices-wrapper:empty {
    display: none;
}

@media (max-width: 640px) {
    .aatmanya-toast-wrap {
        top: 82px;
        right: 16px;
        width: calc(100vw - 32px);
    }
}


/* =========================================================
   Remove from cart ajax
   ========================================================= */
.aatmanya-cart-row {
    transition: opacity 0.22s ease, transform 0.22s ease;
}

.aatmanya-cart-remove.is-loading {
    opacity: 0.45;
    pointer-events: none;
}


/* =========================================================
   HEADER CART SIDEBAR - MINI CART
   ========================================================= */

#cartSidebar {
    display: flex;
    flex-direction: column;
}

#cartSidebar .sidebar-body {
    flex: 1;
    min-height: 0;
}

.aatmanya-header-mini-cart,
.aatmanya-header-mini-cart .widget_shopping_cart_content {
    height: 100%;
    display: flex;
    flex-direction: column;
}


/* Mini cart list */
.aatmanya-header-mini-cart .woocommerce-mini-cart {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    display: grid;
    align-content: start;
    align-items: start;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Mini cart item */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item {
    position: relative;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr) 24px;
    grid-template-rows: auto auto auto;
    column-gap: 16px;
    row-gap: 6px;
    align-items: start;
    padding: 22px 0;
    border-bottom: 1px solid var(--gold-dim);
}

/* Product link contains image + title */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item>a:not(.remove) {
    grid-column: 1 / 3;
    grid-row: 1;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.45;
    text-transform: uppercase;
    padding-right: 8px;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item>a:not(.remove):hover {
    color: var(--gold);
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item img {
    width: 82px;
    height: 82px;
    object-fit: cover;
    background: #111;
    margin: 0;
    float: none;
}

/* Remove icon */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .remove {
    grid-column: 3;
    grid-row: 1;
    position: static;
    width: 24px;
    height: 24px;
    margin: 0;
    color: var(--text-muted);
    background: transparent;
    font-size: 24px;
    line-height: 1;
    text-align: center;
    z-index: 2;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item .remove:hover {
    color: var(--gold);
    background: transparent;
}

/* Variation/meta directly below title */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .variation {
    grid-column: 2 / 3;
    grid-row: 2;
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 12px;
    line-height: 1.5;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item .variation dt,
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .variation dd {
    display: inline;
    margin: 0;
}

/* Quantity + price directly below variation/title */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .quantity {
    grid-column: 2 / 3;
    grid-row: 3;
    display: block;
    margin: 0;
    padding: 0;
    height: auto;
    border: none;
    background: transparent;
    color: var(--gold);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.4;
    text-align: left;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item .quantity .amount,
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .quantity bdi {
    color: var(--gold);
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

/* =========================================================
   HEADER MINI CART - FOOTER FINAL OVERRIDE
   ========================================================= */

#cartSidebar .aatmanya-header-mini-cart .woocommerce-mini-cart__total {
    flex: 0 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin: 22px 0 18px;
    padding: 22px 0 0;
    border-top: 1px solid var(--gold-dim);
    color: var(--white);
    font-family: var(--font-body);
    font-size: 18px;
    line-height: 1.4;
}

#cartSidebar .aatmanya-header-mini-cart .woocommerce-mini-cart__total strong {
    color: var(--white);
    font-weight: 400;
}

#cartSidebar .aatmanya-header-mini-cart .woocommerce-mini-cart__total .amount,
#cartSidebar .aatmanya-header-mini-cart .woocommerce-mini-cart__total bdi {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 400;
}

#cartSidebar .aatmanya-header-mini-cart .woocommerce-mini-cart__buttons {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 0;
    padding: 0;
}



/* =========================================================
   CHECKOUT PAGE
   ========================================================= */

.woocommerce-checkout .entry-title {
    display: none;
}

.aatmanya-checkout-section {
    background: var(--black);
    padding: 86px 32px 100px;
}

.aatmanya-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 430px;
    gap: 46px;
    align-items: start;
}

.aatmanya-checkout-main,
.aatmanya-checkout-details {
    min-width: 0;
}

.aatmanya-checkout-details {
    display: grid;
    gap: 34px;
}

.aatmanya-checkout-card {
    border: 1px solid var(--gold-dim);
    background: rgba(136, 111, 74, 0.035);
    padding: 34px;
}

.aatmanya-checkout-card .section-eyebrow,
.aatmanya-checkout-summary .section-eyebrow {
    margin-bottom: 26px;
}

.aatmanya-checkout-fields h3,
.aatmanya-checkout-card h3,
.aatmanya-checkout-summary h2 {
    margin: 0 0 24px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.4rem, 2.4vw, 2rem);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.aatmanya-checkout-fields .form-row {
    margin: 0 0 22px;
    padding: 0;
}

.aatmanya-checkout-fields .form-row-first,
.aatmanya-checkout-fields .form-row-last {
    width: calc(50% - 10px);
}

.aatmanya-checkout-fields .form-row-first {
    float: left;
}

.aatmanya-checkout-fields .form-row-last {
    float: right;
}

.aatmanya-checkout-fields .form-row-wide {
    clear: both;
}

.aatmanya-checkout-fields label {
    margin-bottom: 8px;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.5;
}

.aatmanya-checkout-fields label .required {
    color: var(--gold);
}

.aatmanya-checkout-fields input.input-text,
.aatmanya-checkout-fields textarea,
.aatmanya-checkout-fields select,
.woocommerce-checkout .select2-container--default .select2-selection--single {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: #080808;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    padding: 0 14px;
    outline: none;
    box-shadow: none;
}

.aatmanya-checkout-fields textarea {
    min-height: 120px;
    padding-top: 14px;
    resize: vertical;
}

.aatmanya-checkout-fields input.input-text:focus,
.aatmanya-checkout-fields textarea:focus,
.aatmanya-checkout-fields select:focus,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--gold);
}

.woocommerce-checkout .select2-container--default .select2-selection--single {
    display: flex;
    align-items: center;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--text);
    padding-left: 0;
    line-height: 48px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 48px;
}

.woocommerce-checkout .select2-dropdown {
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: #080808;
    color: var(--text);
}

.woocommerce-checkout .select2-search__field {
    background: #111;
    color: var(--text);
    border: 1px solid var(--gold-dim);
}

.woocommerce-checkout .select2-results__option {
    color: var(--text);
}

.woocommerce-checkout .select2-results__option--highlighted {
    background: var(--gold);
    color: var(--black);
}

/* Summary */
.aatmanya-checkout-summary {
    position: sticky;
    top: 105px;
}

.aatmanya-checkout-summary-inner {
    border: 1px solid var(--gold-dim);
    background: rgba(136, 111, 74, 0.045);
    padding: 32px;
}

.aatmanya-checkout-summary h2 {
    display: none;
}

.aatmanya-checkout-summary table.shop_table {
    width: 100%;
    border: none;
    border-collapse: collapse;
    margin: 0 0 26px;
}

.aatmanya-checkout-summary table.shop_table thead {
    display: none;
}

.aatmanya-checkout-summary table.shop_table th,
.aatmanya-checkout-summary table.shop_table td {
    border: none;
    border-bottom: 1px solid rgba(136, 111, 74, 0.28);
    padding: 16px 0;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    vertical-align: top;
}

.aatmanya-checkout-summary table.shop_table td {
    text-align: right;
}

.aatmanya-checkout-summary table.shop_table .product-name {
    text-align: left;
    color: var(--white);
    line-height: 1.5;
}

.aatmanya-checkout-summary table.shop_table .product-total,
.aatmanya-checkout-summary table.shop_table .cart-subtotal td,
.aatmanya-checkout-summary table.shop_table .order-total td {
    color: var(--white);
}

.aatmanya-checkout-summary table.shop_table .amount {
    color: var(--gold);
    font-weight: 400;
}

.aatmanya-checkout-summary table.shop_table tfoot th {
    color: var(--text-muted);
    font-weight: 400;
    text-align: left;
}

.aatmanya-checkout-summary table.shop_table .order-total th,
.aatmanya-checkout-summary table.shop_table .order-total td,
.aatmanya-checkout-summary table.shop_table .order-total .amount {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 400;
}

/* Payment box */
.aatmanya-checkout-summary #payment {
    background: transparent;
    border-radius: 0;
}

.aatmanya-checkout-summary #payment ul.payment_methods {
    margin: 0;
    padding: 0 0 22px;
    border-bottom: 1px solid var(--gold-dim);
}

.aatmanya-checkout-summary #payment ul.payment_methods li {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.7;
}

.aatmanya-checkout-summary #payment ul.payment_methods li input {
    margin-right: 8px;
}

.aatmanya-checkout-summary #payment div.payment_box {
    background: #080808;
    color: var(--text-muted);
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.7;
}

.aatmanya-checkout-summary #payment div.payment_box::before {
    border-bottom-color: var(--gold-dim);
}

.aatmanya-checkout-summary .woocommerce-privacy-policy-text,
.aatmanya-checkout-summary .woocommerce-terms-and-conditions-wrapper {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    line-height: 1.7;
}

.aatmanya-checkout-summary .woocommerce-privacy-policy-text a,
.aatmanya-checkout-summary .woocommerce-terms-and-conditions-wrapper a {
    color: var(--gold);
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* Place order button */
#place_order {
    width: 100%;
    margin-top: 20px;
}


p.form-row.validate-required {
    margin-top: 20px;
}


/* Coupon / login notices */
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-form-coupon-toggle {
    margin-bottom: 20px;
}

.woocommerce-checkout .woocommerce-form-login,
.woocommerce-checkout .woocommerce-form-coupon {
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: rgba(136, 111, 74, 0.035);
    color: var(--text);
    padding: 24px;
    margin: 0 0 28px;
}

.woocommerce-checkout .checkout_coupon .form-row {
    margin: 0;
}

.woocommerce-checkout .checkout_coupon input.input-text {
    height: 46px;
    background: #080808;
    border: 1px solid var(--gold-dim);
    color: var(--text);
    padding: 0 14px;
}

.woocommerce-checkout .checkout_coupon button.button {
    min-height: 46px;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--white);
    border-radius: 0;
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.woocommerce-checkout .checkout_coupon button.button:hover {
    background: var(--gold);
    color: var(--black);
}

/* =========================================================
   SINGLE PRODUCT - PREV / NEXT NAV
   ========================================================= */

.product-navigation {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 34px;
    margin-bottom: 28px;
}

.product-nav-btn {
    flex: 0 0 auto;
    min-width: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    transition: color 0.25s ease;
}

.product-nav-btn:hover {
    color: var(--gold);
}

.product-nav-btn .nav-content {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.product-nav-btn.prev-product .nav-label::before {
    content: "‹";
    margin-right: 8px;
    color: var(--gold);
    font-size: 13px;
}

.product-nav-btn.next-product .nav-label::after {
    content: "›";
    margin-left: 8px;
    color: var(--gold);
    font-size: 13px;
}



/* =========================================================
   THEME PROMO POPUP
   ========================================================= */
.aatmanya-popup-overlay[hidden] {
    display: none;
}

.aatmanya-popup-overlay {
    position: fixed;
    inset: 0;
    z-index: 99998;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    background: rgba(0, 0, 0, 0.78);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.28s ease, visibility 0.28s ease;
}

.aatmanya-popup-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.aatmanya-popup {
    position: relative;
    width: min(100%, 800px);
    border: 1px solid var(--gold-dim);
    background: #050505;
    padding: 30px;
    transform: translateY(18px) scale(0.98);
    transition: transform 0.28s ease;
}

.aatmanya-popup-overlay.is-open .aatmanya-popup {
    transform: translateY(0) scale(1);
}

.aatmanya-popup-close {
    position: absolute;
    top: 18px;
    right: 20px;
    z-index: 2;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 30px;
    line-height: 1;
}

.aatmanya-popup-close:hover {
    color: var(--gold);
}

.aatmanya-popup-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 36px;
    align-items: center;
}

.aatmanya-popup-image img,
.aatmanya-popup-placeholder {
    width: 100%;
    aspect-ratio: 475 / 593;
    object-fit: cover;
    background: #bfbfbf;
}

.aatmanya-popup-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 22px;
    letter-spacing: 0.12em;
}

.aatmanya-popup-content {
    text-align: center;
    padding: 20px 14px;
}

.aatmanya-popup-content .section-eyebrow {
    margin-bottom: 14px;
}

.aatmanya-popup-content h3 {
    margin: 0 0 18px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: clamp(1.7rem, 3vw, 2.4rem);
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.18;
    text-transform: uppercase;
}

.aatmanya-popup-description {
    margin: 24px 0 28px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
}

.aatmanya-popup-disable {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 18px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    line-height: 1.4;
    cursor: pointer;
}

.aatmanya-popup-disable input {
    width: 15px;
    height: 15px;
    accent-color: var(--gold);
}

/* =========================================================
   WISHLIST TOOLTIP
   ========================================================= */

.wishlist-toggle {
    position: relative;
}

.wishlist-toggle::after {
    content: attr(data-wishlist-tooltip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 10px);
    z-index: 20;
    min-width: max-content;
    max-width: 180px;
    padding: 7px 10px;
    background: #050505;
    border: 1px solid var(--gold-dim);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 12px;
    line-height: 1.3;
    letter-spacing: 0.04em;
    text-align: center;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(4px);
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}

.wishlist-toggle::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 5px);
    z-index: 21;
    width: 8px;
    height: 8px;
    background: #050505;
    border-right: 1px solid var(--gold-dim);
    border-bottom: 1px solid var(--gold-dim);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) rotate(45deg);
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.wishlist-toggle:hover::after,
.wishlist-toggle:hover::before,
.wishlist-toggle:focus-visible::after,
.wishlist-toggle:focus-visible::before {
    opacity: 1;
    visibility: visible;
}

.wishlist-toggle:hover::after,
.wishlist-toggle:focus-visible::after {
    transform: translateX(-50%) translateY(0);
}

.wishlist-toggle.is-loading::after,
.wishlist-toggle.is-loading::before {
    display: none;
}



/* =========================================================
   HEADER ACCOUNT SIDEBAR
   ========================================================= */

.account-sidebar-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}


.account-sidebar-name {
    margin: 0 0 24px;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-transform: uppercase;
}

.account-sidebar-text,
.account-sidebar-note {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.7;
}

.account-sidebar-text {
    margin: 0 0 24px;
}

.account-sidebar-note {
    margin: 12px 0 0;
    font-size: 13px;
}

.account-sidebar-menu {
    display: grid;
    border-top: 1px solid var(--gold-dim);
}

.account-sidebar-menu-link {
    min-height: 56px;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    border-bottom: 1px solid var(--gold-dim);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: color 0.2s ease, background 0.2s ease, padding-left 0.2s ease;
}

.account-sidebar-menu-link:hover {
    color: var(--gold);
    background: rgba(136, 111, 74, 0.08);
    padding-left: 8px;
}

.account-sidebar-menu-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--gold);
    font-size: 18px;
    line-height: 1;
}

.account-sidebar-menu-label {
    min-width: 0;
}

.account-sidebar-arrow {
    color: var(--gold);
    font-size: 20px;
    line-height: 1;
}

.account-sidebar-link-logout {
    margin-top: 18px;
    border-top: 1px solid var(--gold-dim);
}

.account-email-login-form {
    display: grid;
    gap: 14px;
}

.account-email-login-form label {
    color: var(--text);
    font-family: var(--font-body);
    font-size: 14px;
}

.account-email-login-form input[type="email"] {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: transparent;
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    padding: 0 14px;
    outline: none;
}

.account-email-login-form input[type="email"]:focus {
    border-color: var(--gold);
}

.account-email-submit {
    width: 100%;
    justify-content: center;
    margin-top: 4px;
}


/* =========================================================
   HEADER SEARCH MODAL
   ========================================================= */

.search-modal {
    position: relative;
}

.search-modal-close {
    position: absolute;
    top: 18px;
    right: 50px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 24px;
    line-height: 1;
}

.search-modal-close:hover {
    color: var(--gold);
}

#aatmanyaHeaderSearchForm .btn {
    width: 40%;
}

.header-search-results {
    margin-top: 26px;
    border-top: 1px solid var(--gold-dim);
    padding-top: 18px;
}

.header-search-result-list {
    display: grid;
    gap: 14px;
}

.header-search-result-item {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid var(--gold-dim);
}

.header-search-result-img {
    width: 72px;
    height: 72px;
    background: #111;
    overflow: hidden;
}

.header-search-result-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.header-search-result-info {
    display: grid;
    gap: 6px;
}

.header-search-result-info strong {
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.35;
    text-transform: uppercase;
}

.header-search-result-info span {
    color: var(--gold);
    font-family: var(--font-body);
    font-size: 14px;
}

.header-search-result-item:hover strong {
    color: var(--gold);
}

.header-search-empty,
.header-search-loading {
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.7;
    padding: 12px 0;
}

#tarot-reading-form {
    padding: 50px 0;
}

mark {
    background-color: var(--gold);
    padding: 5px 10px;
    margin: 0 10px;
}

/*** start thankyou page ***/

.aatmanya-receipt-page {
    padding: 90px 0;
    background:
        radial-gradient(circle at top left, rgba(216, 168, 79, 0.14), transparent 34%),
        radial-gradient(circle at bottom right, rgba(216, 168, 79, 0.10), transparent 34%);
}

.aatmanya-receipt-hero {
    max-width: 860px;
    margin: 0 auto 36px;
    padding: 54px 34px;
    text-align: center;
    border: 1px solid rgba(216, 168, 79, 0.35);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.08);
}

.aatmanya-receipt-hero.is-failed {
    border-color: rgba(180, 40, 40, 0.35);
}

.aatmanya-receipt-icon {
    width: 74px;
    height: 74px;
    margin: 0 auto 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--gold);
    color: var(--black);
    font-size: 34px;
    font-weight: 700;
    box-shadow: 0 12px 28px rgba(216, 168, 79, 0.32);
}

.aatmanya-receipt-hero.is-failed .aatmanya-receipt-icon {
    background: #b42828;
    color: #fff;
}

.aatmanya-receipt-hero h1 {
    margin: 0 0 14px;
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.05;
}

.aatmanya-receipt-hero p {
    max-width: 640px;
    margin: 0 auto;
    color: rgba(0, 0, 0, 0.68);
    font-size: 17px;
    line-height: 1.7;
}

.aatmanya-section-kicker {
    margin-bottom: 12px;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 12px;
    font-weight: 700;
}

.aatmanya-receipt-actions {
    margin-top: 28px;
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
}

.aatmanya-receipt-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: 22px;
    max-width: 1100px;
    margin: 0 auto 34px;
}

.aatmanya-receipt-card {
    padding: 30px;
    border: 1px solid rgba(216, 168, 79, 0.28);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 55px rgba(0, 0, 0, 0.06);
}

.aatmanya-receipt-card-label {
    margin: 0 0 22px;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 12px;
    font-weight: 700;
}

.aatmanya-receipt-summary-list {
    display: grid;
    gap: 14px;
}

.aatmanya-receipt-summary-list div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px;
}

.aatmanya-receipt-summary-list span {
    color: rgba(0, 0, 0, 0.58);
}

.aatmanya-receipt-summary-list strong {
    text-align: right;
    color: var(--black);
}

.aatmanya-receipt-next-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 16px;
}

.aatmanya-receipt-next-list li {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 14px;
    align-items: start;
}

.aatmanya-receipt-next-list span {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(216, 168, 79, 0.16);
    color: var(--gold);
    font-weight: 700;
}

.aatmanya-receipt-next-list p {
    margin: 4px 0 0;
    color: rgba(0, 0, 0, 0.68);
    line-height: 1.6;
}

.aatmanya-receipt-order-details {
    max-width: 1100px;
    margin: 0 auto;
    padding: 30px;
    border: 1px solid rgba(216, 168, 79, 0.26);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.86);
}

.aatmanya-receipt-order-details .woocommerce-order-details,
.aatmanya-receipt-order-details .woocommerce-customer-details {
    margin-top: 0;
}

.aatmanya-receipt-order-details table {
    border-radius: 16px;
    overflow: hidden;
}

.aatmanya-receipt-order-details .woocommerce-table th,
.aatmanya-receipt-order-details .woocommerce-table td {
    padding: 16px;
}

.woocommerce-column--shipping-address.col-2 {
    margin-top: 20px;
}

@media (max-width: 768px) {
	
	body {
		overflow-x: hidden !important;
	}
	
	html {
		overflow-x: hidden !important;
	}    
	
	
    .aatmanya-receipt-page {
        padding: 56px 0;
    }

    .aatmanya-receipt-hero {
        padding: 40px 22px;
        border-radius: 22px;
    }

    .aatmanya-receipt-grid {
        grid-template-columns: 1fr;
    }

    .aatmanya-receipt-card,
    .aatmanya-receipt-order-details {
        padding: 22px;
    }

    .aatmanya-receipt-summary-list div {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
        padding: 10px;
    }

    .aatmanya-receipt-summary-list strong {
        text-align: left;
    }
	
	.single-product-grid {
		grid-template-columns: auto;
	}
	
	.single-product-section {padding: 50px 32px 0;}
	
	
	.steps-grid {
		grid-template-columns: auto;
		gap: 0;
	}
	
	.step-card {
		border-right: none;
		border-bottom: 1px solid var(--gold-dim);
	}
	
	#tarot-reading-form {padding: 50px 30px;}
	
	.testimonial-grid {grid-template-columns: auto;}
	.testimonial-card {min-height: 400px; height: 400px;}
	.section-testimonials {padding: 100px 28px 50px;}
	
	
	
	
	
	
	
   


}







 


 







/* =========================================================
   RESPONSIVE
   ========================================================= */


@media (max-width: 900px) {
    body {
        padding-top: 76px;
    }

    .nav-links-desktop {
        display: none;
    }

    .nav-hamburger {
        display: inline-flex;
    }

    .nav-inner {
        padding: 0 16px;
    }

    .nav-brand .custom-logo {
        width: 145px;
    }

    .nav-icon-btn {
        width: 46px;
        height: 46px;
    }

    .nav-actions {
        gap: 6px;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}

@media (max-width: 560px) {
	body {
		overflow-x: hidden !important;
	}
	
	html {
		overflow-x: hidden !important;
	}
	
	.container {
		max-width: 100%;
		width: 100%;
	}


    .footer-grid {
        grid-template-columns: 1fr;
    }

    .footer-brand {
        max-width: none;
    }
	
	.moon_img {
		top: 24%;
		right: -7px;
		width: 40%;
	}
	
	.coming-soon-badge {
		right: auto;
		left: 50%;
		margin-left: -50px;
	}
	
	.home-free-cta {
		padding: 50px 20px;
	}




}


@media (max-width: 1024px) {
    .home-discover-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }
}

@media (max-width: 768px) {
    .home-hero {
        padding: 70px 20px;
    }

    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .home-section {
        padding: 70px 20px;
    }

    .marquee-item {
        font-size: 24px;
    }

    .moon_img {
        width: 80px;
    }
}

@media (max-width: 560px) {
    .container {
        padding: 0;
    }
}

/* =========================================================
   HOME - RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {

    .home-discover-grid,
    .home-love-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .home-blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .home-parallax-right .home-parallax-content {
        width: 70%;
    }
}

@media (max-width: 768px) {
    .home-hero {
        padding: 70px 20px;
    }

    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .home-section {
        padding: 70px 20px;
    }

    .home-parallax {
        padding: 90px 20px;
        background-attachment: scroll;
    }

    .home-parallax-right .container {
        justify-content: flex-start;
    }

    .home-parallax-right .home-parallax-content {
        width: 100%;
    }

    .home-free-cta {
        padding: 90px 20px;
    }

    .home-newsletter {
        padding: 70px 20px;
    }

    .marquee-item {
        font-size: 24px;
    }

    .moon_img,
    .moon_img2 {
        width: 80px;
    }
}

@media (max-width: 560px) {
    .container {
        padding: 0;
    }

    .services-grid,
    .home-blog-grid {
        grid-template-columns: 1fr;
    }

    .service-item {
        border-left: none;
        border-top: 1px solid var(--gold-dim);
    }

    .home-newsletter-form {
        flex-direction: column;
        gap: 12px;
    }

    .home-newsletter-form .input-field {
        border-right: 1px solid var(--gold-dim);
    }
}

/* =========================================================
   NEWSLETTER - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {
    .home-newsletter {
        padding: 70px 20px;
    }
}

@media (max-width: 560px) {
    .home-newsletter-form {
        flex-direction: column;
        gap: 12px;
    }

    .home-newsletter-form .input-field {
        border-right: 1px solid var(--gold-dim);
    }
}

/* =========================================================
   CONTACT PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {
    .contact-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }
}

@media (max-width: 640px) {
    .contact-section {
        padding: 64px 20px;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
    }

    .phone-field {
        flex-direction: column;
        gap: 12px;
    }

    .phone-field select {
        width: 100%;
        border-right: 1px solid var(--gold-dim);
    }
}


/* =========================================================
   ABOUT PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {
    .about-founder-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }

    .about-principles-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-stat-card:nth-child(2) {
        border-right: none;
    }

    .about-stat-card:nth-child(1),
    .about-stat-card:nth-child(2) {
        border-bottom: 1px solid var(--gold-dim);
    }
}

@media (max-width: 768px) {

    .about-founder-section,
    .about-principles-section {
        padding: 70px 20px;
    }

    .about-founder-grid {
        margin-bottom: 0;
    }

    .about-parallax {
        padding: 90px 20px;
        background-attachment: scroll;
    }

    .about-stats-section {
        padding: 70px 20px;
    }
}

@media (max-width: 560px) {

    .about-principles-grid,
    .about-stats-grid {
        grid-template-columns: 1fr;
    }

    .about-stat-card,
    .about-stat-card:nth-child(2) {
        border-right: none;
    }

    .about-stat-card {
        border-bottom: 1px solid var(--gold-dim);
    }

    .about-stat-card:last-child {
        border-bottom: none;
    }
}

/* =========================================================
   404 PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 600px) {
    .error-404-section {
        padding: 90px 20px 70px;
    }

    .orb-ring:nth-child(3) {
        display: none;
    }

    .error-404-actions {
        flex-direction: column;
        align-items: center;
    }
}


/* =========================================================
   MY ACCOUNT CUSTOM - RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {
    .account-shell {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

@media (max-width: 560px) {
    .account-user-card {
        padding: 20px;
    }

    .account-menu a {
        min-height: 58px;
        padding: 0 20px;
        font-size: 16px;
    }

    .account-dashboard-card {
        padding: 28px 22px;
    }
}

@media (max-width: 768px) {
    .account-section {
        padding: 70px 20px 80px;
    }
}

/* =========================================================
   MY ACCOUNT TABLES - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

    .account-shell table.shop_table th,
    .account-shell table.shop_table td {
        padding: 12px;
        font-size: 14px;
    }

    .account-shell fieldset {
        padding: 24px 18px 20px;
    }
}

@media (max-width: 560px) {
    .account-shell table.shop_table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}


/* =========================================================
   MY ACCOUNT WIDTH - RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {
    .account-shell {
        grid-template-columns: 1fr;
    }

    .account-shell .woocommerce-orders-table__cell-order-actions {
        text-align: left;
    }
}

/* =========================================================
   BLOG - RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {
    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {

    .blog-page-section,
    .single-blog-section {
        padding: 64px 20px;
    }

    .blog-grid {
        grid-template-columns: 1fr;
    }

    .blog-filter-row {
        justify-content: flex-start;
    }

    .tag-pill {
        font-size: 13px;
    }

    .container-sm {
        padding: 0;
    }
}

/* =========================================================
   SINGLE BLOG PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {
    .single-blog-section {
        padding: 64px 20px;
    }

    .single-blog-author-box {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .single-blog-author-icon {
        margin: 0 auto;
    }

    .single-blog-author-bio {
        max-width: none;
    }

    .single-recent-grid,
    .single-post-nav {
        grid-template-columns: 1fr;
    }

    .next-post a {
        text-align: left;
    }
}

@media (max-width: 640px) {
    .container-sm {
        padding: 0;
    }
}

/* =========================================================
   SHOP PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {
    .shop-grid-cols {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 900px) {
    .shop-filter-toggle {
        display: inline-flex;
    }

    .shop-layout {
        display: block;
    }

    .shop-filter-sidebar {
        display: none;
        width: 100%;
        position: static;
        border-right: none;
        border-bottom: 1px solid rgba(136, 111, 74, 0.2);
        padding-right: 0;
        padding-bottom: 28px;
        margin-bottom: 32px;
    }

    .shop-filter-sidebar.is-open {
        display: block;
    }

    .shop-grid-cols {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {

    .shop-topbar,
    .shop-layout,
    .shop-active-filters {
        padding-left: 20px;
        padding-right: 20px;
    }

    .shop-sort-select {
        max-width: 100%;
    }

    .shop-grid-cols {
        grid-template-columns: 1fr;
    }

    .price-content {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* =========================================================
   SINGLE PRODUCT PURCHASE - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

    .single-product-cart-area .purchase-buttons-row,
    .single-product-cart-area .woocommerce-variation-add-to-cart {
        gap: 10px;
    }

	.single-product-cart-area .reset_variations {
		font-size: 20px;
	}

    .wishlist-icon-btn {
        width: 50px;
        flex-shrink: 0;
    }
}

@media (max-width: 560px) {

    .single-product-cart-area .quantity-stock-row {
		/* flex-direction: inherit; */
		/* align-items: flex-start; */
		/* background: gray; */
		/* height: 50px; */
		margin-bottom: 49px;
		margin-top: 40px;
    }

    .single-product-cart-area .purchase-buttons-row,
    .single-product-cart-area .woocommerce-variation-add-to-cart {
        flex-direction: column;
        align-items: stretch;
    }

    .single-product-cart-area .single_add_to_cart_button,
    .single-product-cart-area .single_buy_now_button,
    .wishlist-icon-btn {
        width: 100%;
    }

    .single-product-cart-area .quantity.aatmanya-qty-ready {
        width: 158px !important;
        min-width: 158px !important;
        max-width: 158px !important;
        flex: 0 0 158px !important;
    }
}

/* =========================================================
   SINGLE PRODUCT GALLERY - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {
    .gallery-arrow {
        opacity: 1;
        width: 36px;
        height: 46px;
        font-size: 28px;
    }

    .product-gallery-lightbox {
        padding: 50px 18px;
    }

    .gallery-lightbox-arrow {
        width: 42px;
        height: 56px;
        font-size: 36px;
    }

    .gallery-lightbox-prev {
        left: 12px;
    }

    .gallery-lightbox-next {
        right: 12px;
    }
}

@media (max-width: 560px) {
    .gallery-thumb {
        width: 62px;
        height: 62px;
    }

    .gallery-zoom-icon {
        width: 34px;
        height: 34px;
        top: 10px;
        right: 10px;
    }
}

@media (max-width: 560px) {
    .single-product-attribute-row {
        grid-template-columns: 1fr;
        gap: 6px;
    }
}

/* =========================================================
   SINGLE PRODUCT TABS - RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {
    .single-product-tabs-section {
        padding: 56px 20px 0;
    }

    .woocommerce-tabs ul.tabs {
        overflow-x: auto;
        white-space: nowrap;
    }

    .woocommerce-tabs ul.tabs li a {
        padding: 16px 20px;
        font-size: 12px;
    }
}

@media (max-width: 560px) {
    .account-wishlist-card {
        grid-template-columns: 1fr;
    }

    .account-wishlist-img {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }
}

/* =========================================================
   CART PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {
    .aatmanya-cart-table-head {
        display: none;
    }

    .aatmanya-cart-row {
        grid-template-columns: 1fr 42px;
        gap: 20px;
        padding: 34px 0;
    }

    .aatmanya-cart-product {
        grid-column: 1 / 3;
    }

    .aatmanya-cart-price,
    .aatmanya-cart-quantity,
    .aatmanya-cart-subtotal {
        display: flex;
        justify-content: space-between;
        grid-column: 1 / 3;
    }

    .aatmanya-cart-price::before {
        content: attr(data-title);
        color: var(--text-muted);
    }

    .aatmanya-cart-quantity::before {
        content: attr(data-title);
        color: var(--text-muted);
    }

    .aatmanya-cart-subtotal::before {
        content: attr(data-title);
        color: var(--text-muted);
    }

    .aatmanya-cart-remove-wrap {
        position: absolute;
        right: 32px;
    }

    .aatmanya-cart-actions-row {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .aatmanya-cart-action-buttons {
        justify-content: space-between;
        gap: 24px;
    }
}

@media (max-width: 640px) {
    .aatmanya-cart-section {
        padding: 70px 20px 84px;
    }

    .aatmanya-cart-product {
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 18px;
    }

    .aatmanya-cart-product-img {
        width: 92px;
        height: 92px;
    }

    .aatmanya-cart-coupon {
        grid-template-columns: 1fr;
    }

    .aatmanya-cart-action-buttons {
        display: grid;
        grid-template-columns: 1fr;
    }

    .aatmanya-cart-totals-wrap {
        padding: 28px 20px;
    }

    .aatmanya-cart-totals-wrap .wc-proceed-to-checkout {
        justify-content: stretch;
    }


}


/* =========================================================
   CHECKOUT PAGE - RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {
    .aatmanya-checkout-layout {
        grid-template-columns: 1fr;
    }

    .aatmanya-checkout-summary {
        position: static;
    }
}

@media (max-width: 768px) {
    .aatmanya-checkout-section {
        padding: 70px 20px 84px;
    }

    .aatmanya-checkout-card,
    .aatmanya-checkout-summary-inner {
        padding: 24px 20px;
    }

    .aatmanya-checkout-fields .form-row-first,
    .aatmanya-checkout-fields .form-row-last {
        float: none;
        width: 100%;
    }
}

@media (max-width: 560px) {

    .aatmanya-checkout-summary table.shop_table th,
    .aatmanya-checkout-summary table.shop_table td {
        font-size: 14px;
    }

    .aatmanya-checkout-summary table.shop_table .order-total th,
    .aatmanya-checkout-summary table.shop_table .order-total td,
    .aatmanya-checkout-summary table.shop_table .order-total .amount {
        font-size: 19px;
    }
}


/*Popup */
.aatmanya-popup-action {
    width: min(100%, 280px);
    justify-content: center;
}

body.aatmanya-popup-open {
    overflow: hidden;
}

@media (max-width: 760px) {
    .aatmanya-popup {
        padding: 22px;
    }

    .aatmanya-popup-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .aatmanya-popup-image {
        display: none;
    }
}

/* =========================================================
   THEME BUILD PATCH: account auth fallback + search fallback
   ========================================================= */
.account-auth-panel.has-registration {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}

.account-auth-card .woocommerce-form {
    margin-top: 24px;
}

.account-auth-card .lost_password {
    margin-top: 16px;
}

.account-auth-card .lost_password a,
.account-sidebar-secondary-link {
    color: var(--gold);
    text-decoration: none;
}

.account-auth-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0 22px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 14px;
}

.header-search-placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 54px;
    place-items: center;
    border: 1px solid var(--gold-dim);
    color: var(--gold);
    font-size: 20px;
}

@media (max-width: 900px) {
    .account-auth-panel.has-registration {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .account-dashboard-card {
        padding: 28px 22px;
    }

    .account-dashboard-card h2,
    .account-shell .woocommerce-MyAccount-content h2 {
        font-size: 22px;
        letter-spacing: 0.08em;
    }

    .account-dashboard-card p,
    .account-shell .woocommerce-MyAccount-content p {
        font-size: 15px;
    }
}

/* Patch 1.0.3: theme-owned form and account interaction helpers */
.account-shell.is-loading .woocommerce-MyAccount-content {
    opacity: 0.45;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

.aatmanya-form-notice {
    margin: 0 0 18px;
    padding: 12px 14px;
    border: 1px solid var(--gold);
    background: var(--gold-dim);
    color: inherit;
}

.aatmanya-checkbox-line {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0 22px;
    font-size: 0.95rem;
}

.aatmanya-checkbox-line input {
    width: auto;
}

.input-field[readonly],
.contact-form input[readonly] {
    opacity: 0.82;
    cursor: not-allowed;
}

/* =========================================================
   PATCH 1.0.4: WooCommerce My Account native form polish
   ========================================================= */
.woocommerce-account .account-shell .woocommerce-MyAccount-content {
    overflow: hidden;
}

.account-profile-panel,
.account-address-panel,
.account-edit-address-panel {
    gap: 24px;
}

.account-profile-card,
.account-address-overview-card,
.account-edit-address-card {
    overflow: hidden;
}

.account-shell .woocommerce form .form-row,
.account-shell .woocommerce-page form .form-row,
.account-shell .woocommerce-EditAccountForm .form-row,
.account-shell .woocommerce-address-fields .form-row {
    float: none;
    width: auto;
    margin: 0 0 20px;
    padding: 0;
    clear: none;
}

.account-shell label,
.account-shell .woocommerce form .form-row label {
    display: block;
    margin: 0 0 8px;
    color: var(--white);
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-transform: uppercase;
}

.account-shell label .required,
.account-shell .required {
    color: var(--gold);
    text-decoration: none;
}

.account-shell input[type="text"],
.account-shell input[type="email"],
.account-shell input[type="tel"],
.account-shell input[type="password"],
.account-shell input[type="number"],
.account-shell select,
.account-shell textarea,
.account-shell .select2-container .select2-selection--single,
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="range"]),
select,
textarea,
.input-field,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce-page input.input-text,
.woocommerce-page textarea,
.woocommerce-page select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    width: 100%;
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: var(--dark);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    padding: 13px 15px;
    box-shadow: none;
    padding: 0 20px;
    min-height: 52px;
}

input.is-locked,
select.is-locked {
    border-style: dashed !important;
    cursor: not-allowed;
}


.account-shell textarea {
    min-height: 116px;
    resize: vertical;
}

.account-shell input:focus,
.account-shell select:focus,
.account-shell textarea:focus,
.account-shell .select2-container--focus .select2-selection--single {
    outline: none;
    border-color: var(--gold);
    background: rgba(255, 255, 255, 0.055);
}

.account-shell .select2-container {
    width: 100%;
}

.account-shell .select2-container .select2-selection__rendered {
    color: var(--white);
    line-height: 24px;
    padding: 0;
}

.account-shell .select2-container .select2-selection__arrow {
    min-height: 52px;
}

.aatmanya-form-grid,
.account-address-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 22px;
    align-items: start;
}

.account-address-form-grid .form-row-wide,
.account-address-form-grid #billing_address_1_field,
.account-address-form-grid #billing_address_2_field,
.account-address-form-grid #shipping_address_1_field,
.account-address-form-grid #shipping_address_2_field,
.account-address-form-grid #billing_company_field,
.account-address-form-grid #shipping_company_field {
    grid-column: 1 / -1;
}

.aatmanya-password-fieldset {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    border: 1px solid var(--gold-dim);
    margin: 32px 0 26px;
    padding: 26px 24px 8px;
}

.aatmanya-password-fieldset legend {
    padding: 0 10px;
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 18px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.aatmanya-password-fieldset label span {
    display: inline;
    color: var(--text-muted);
    font-size: 12px;
    letter-spacing: 0;
    text-transform: none;
}

.account-form-actions,
.account-address-form .woocommerce-address-fields>p {
    margin-top: 10px;
}

.account-address-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 26px;
}

.account-address-card {
    min-height: 100%;
    border: 1px solid var(--gold-dim);
    background: rgba(255, 255, 255, 0.025);
    padding: 26px;
}

.account-address-card .section-eyebrow {
    margin-bottom: 18px;
    color: var(--gold);
}

.account-address-card address {
    min-height: 104px;
    margin: 0 0 24px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 16px;
    font-style: normal;
    line-height: 1.8;
}

.account-address-card .btn,
.account-form-actions .btn,
.account-address-form .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.account-shell .woocommerce-MyAccount-content .account-address-card p {
    margin: 0;
}

.woocommerce-cart-form button[name="update_cart"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 900px) {
    .account-shell {
        grid-template-columns: 1fr;
    }

    .account-address-grid,
    .aatmanya-form-grid,
    .account-address-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Patch 1.0.4: dashboard helpers retained without reading-plugin tables */
.aatmanya-account-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.aatmanya-account-stat-grid>div {
    min-width: 0;
    border: 1px solid var(--gold-dim);
    padding: 18px;
}

.aatmanya-account-stat-grid span {
    display: block;
    margin-bottom: 8px;
    color: var(--text-muted);
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.aatmanya-account-stat-grid strong {
    display: block;
    overflow-wrap: anywhere;
    color: var(--white);
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 400;
    line-height: 1.35;
}

.aatmanya-account-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

@media (max-width: 760px) {
    .aatmanya-account-stat-grid {
        grid-template-columns: 1fr;
    }
}

/* Patch 1.0.5: base form option contrast */
option {
    background: var(--black);
    color: var(--gold);
}

/* Patch 1.0.5: plugin-aware footer layout */
.footer-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.footer-nav-list li {
    margin-bottom: 0;
}

.footer-nav-list li a,
.footer-nav-list a {
    font-size: smaller;
}



/* Patch 1.0.5: remove non-existent quick view affordance */
.shop-card-v2-qv {
    display: none;
}

/* Patch 1.0.5: WooCommerce gallery lightbox should stay above product/title layers */
.pswp,
.woocommerce .pswp,
.woocommerce-page .pswp {
    z-index: 999999;
}

.pswp__bg,
.pswp__scroll-wrap {
    z-index: 999999;
}

/* Patch 1.0.5: mini cart details stay with title, not below image height */
.aatmanya-header-mini-cart .woocommerce-mini-cart-item {
    grid-template-columns: 82px minmax(0, 1fr) 24px;
    grid-template-rows: auto auto auto;
    align-items: start;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item>a:not(.remove) {
    position: relative;
    grid-column: 1 / 3;
    grid-row: 1;
    display: block;
    min-height: 0;
    padding-left: 98px;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item>a:not(.remove) img {
    position: absolute;
    left: 0;
    top: 0;
}

.aatmanya-header-mini-cart .woocommerce-mini-cart-item .variation,
.aatmanya-header-mini-cart .woocommerce-mini-cart-item .quantity {
    grid-column: 1 / 4;
    padding-left: 98px;
}

/* Patch 1.0.5: cart page quantity uses same manipulator shape as product page */
.aatmanya-cart-quantity .qty-btn,
.woocommerce-cart-form .quantity .qty-btn {
    width: 38px;
    height: 40px;
    border: none;
    border-right: 1px solid var(--gold-dim);
    background: transparent;
    color: var(--gold);
    cursor: pointer;
    font-family: var(--font-heading);
    font-size: 18px;
}

.aatmanya-cart-quantity .qty-plus,
.woocommerce-cart-form .quantity .qty-plus {
    border-right: none;
    border-left: 1px solid var(--gold-dim);
}


/* Patch 1.0.6: contact/subscriber, gallery overlay, add-to-cart, and receipt refinements. */
.single-product-cart-area .added_to_cart.wc-forward,
.single-product-cart-area a.added_to_cart {
    display: none;
}

.product-gallery-lightbox {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    isolation: isolate;
}

body.gallery-lightbox-open .site-header,
body.gallery-lightbox-open .header,
body.gallery-lightbox-open .main-header {
    z-index: 1;
}

#galleryLightboxImage {
    position: relative;
    z-index: 2147483001;
}

.gallery-lightbox-close,
.gallery-lightbox-arrow {
    z-index: 2147483002;
}

.aatmanya-receipt-page {
    background: var(--black);
    color: var(--white);
}

.aatmanya-receipt-hero,
.aatmanya-receipt-card,
.aatmanya-receipt-order-details {
    border: 1px solid var(--gold);
    background: var(--black-soft, rgba(255, 255, 255, 0.04));
    color: inherit;
    box-shadow: none;
}

.aatmanya-receipt-hero p,
.aatmanya-receipt-next-list p,
.aatmanya-receipt-summary-list span {
    color: var(--muted, rgba(255, 255, 255, 0.72));
}

.aatmanya-receipt-summary-list strong,
.aatmanya-receipt-order-details strong,
.aatmanya-receipt-order-details bdi,
.aatmanya-receipt-order-details .amount {
    color: var(--white);
}


.aatmanya-receipt-order-details table.shop_table {
    width: 100%;
    border-collapse: collapse;
    background: transparent;
    color: inherit;
}

.aatmanya-receipt-order-details .woocommerce-order-details__title,
.aatmanya-receipt-order-details .woocommerce-column__title {
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 14px;
}

.aatmanya-receipt-order-details a {
    color: var(--gold);
}

.aatmanya-receipt-order-details .woocommerce-customer-details address {
    padding: 18px;
    border: 1px solid var(--gold-dim, rgba(216, 168, 79, 0.25));
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.aatmanya-receipt-hero.is-failed .aatmanya-receipt-icon {
    background: var(--gold);
    color: var(--black);
}


/* =========================================================
   PATCH 1.0.7: global theme form/Woo reset, account auth, phone fields
   ========================================================= */
html body,
body.woocommerce,
body.woocommerce-page {
    background: var(--black);
    color: var(--text);
    font-family: var(--font-body);
}

/* Stop WordPress/WooCommerce default colours from leaking into theme UI. */
.entry-content,
.wp-site-blocks,
.woocommerce,
.woocommerce-page,
.woocommerce div.product,
.woocommerce table.shop_table,
.woocommerce form,
.woocommerce .woocommerce-order,
.woocommerce .woocommerce-customer-details,
.woocommerce .woocommerce-order-details,
.select2-container,
.select2-dropdown {
    color: var(--text);
    font-family: var(--font-body);
}

input,
select,
textarea,
button,
.input-field,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce-page input.input-text,
.woocommerce-page textarea,
.woocommerce-page select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    border-radius: 0;
    box-shadow: none;
    font-family: var(--font-body);
}



option {
    background: var(--black);
    color: var(--gold);
}

input::placeholder,
textarea::placeholder {
    color: var(--text-muted);
    opacity: 1;
}

input[type="checkbox"],
input[type="radio"] {
    accent-color: var(--gold);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
    border: 1px solid var(--gold);
    border-top: 1px solid var(--gold);
    background: var(--gold-dim);
    color: var(--text);
    font-family: var(--font-body);
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    color: var(--gold);
}

.show-password-input,
.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input,
.woocommerce form .password-input .show-password-input,
.woocommerce-page form .password-input .show-password-input,
button.show-password-input,
button.display-password {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Header account drawer: login/register forms, not duplicate account buttons. */
.account-sidebar-auth-form,
.account-sidebar-register-block {
    display: grid;
    gap: 13px;
}

.account-sidebar-register-block {
    margin-top: 30px;
    padding-top: 26px;
    border-top: 1px solid var(--gold-dim);
}



.account-sidebar-auth-form input:not([type="checkbox"]):not([type="radio"]) {
    min-height: 46px;
    width: 100%;
    padding: 0 14px;
}

.account-sidebar-auth-form .btn {
    width: 100%;
    margin-top: 4px;
}

.account-sidebar-auth-form .account-sidebar-secondary-link {
    justify-self: start;
    font-size: 13px;
}

.account-sidebar-auth-form {
    display: grid;
    gap: 16px;
    margin: 0 0 28px;
}

.account-sidebar-auth-form .form-row {
    margin: 0 !important;
    padding: 0 !important;
}

.account-sidebar-auth-form label {
    display: block;
    color: var(--gold);
    font-size: 13px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.account-sidebar-auth-form .required {
    color: var(--gold);
}

.account-sidebar-auth-form input.input-text,
.account-sidebar-auth-form input[type="text"],
.account-sidebar-auth-form input[type="email"],
.account-sidebar-auth-form input[type="password"] {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.035);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    padding: 0 14px;
    outline: none;
    box-shadow: none;
}

.account-sidebar-auth-form input:focus {
    border-color: var(--gold);
    color: var(--white);
}

.account-sidebar-login-actions {
    display: grid;
    gap: 14px;
}

.account-sidebar-login-actions .btn,
.account-sidebar-auth-form button.btn {
    width: 100%;
    justify-content: center;
}

.account-sidebar-auth-form .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 0;
    text-transform: none;
}

.account-sidebar-auth-form .woocommerce-form-login__rememberme input {
    width: 15px;
    height: 15px;
    accent-color: var(--gold);
}

.account-sidebar-auth-form .lost_password {
    margin: -4px 0 0;
}

.account-sidebar-auth-form .lost_password a {
    color: var(--gold);
    font-size: 13px;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.account-sidebar-register-box {
    margin-top: 34px;
    padding-top: 30px;
    border-top: 1px solid var(--gold-dim);
}

.account-sidebar-register-box .account-sidebar-name {
    margin-bottom: 20px;
}



/* My Account logged-out page: instructions left, forms right. */
.account-auth-split {
    display: grid;
    grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
    gap: 42px;
    align-items: start;
}

.account-auth-forms {
    display: grid;
    gap: 28px;
}

.account-auth-intro {
    position: sticky;
    top: 106px;
}

.account-auth-instruction-list {
    margin: 26px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 14px;
}

.account-auth-instruction-list li {
    position: relative;
    padding-left: 24px;
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.7;
}

.account-auth-instruction-list li::before {
    content: "✦";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--gold);
}

.account-auth-form {
    display: grid;
    gap: 14px;
}

.account-auth-form label {
    color: var(--gold);
    font-family: var(--font-body);
    font-size: 14px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

@media (max-width: 900px) {
    .account-auth-split {
        grid-template-columns: 1fr;
    }

    .account-auth-intro {
        position: static;
    }
}

/* Local universal phone field enhancer. */
/* =========================================================
   GLOBAL PHONE FIELD - intl-tel-input
   ========================================================= */
.iti {
    display: inherit !important;
}


.iti__flag-container {
    color: var(--text);
}

.iti__selected-country,
.iti__selected-flag {
    background: transparent;
    border-radius: 0;
}

.iti__selected-country:hover,
.iti__selected-flag:hover {
    background: rgba(136, 111, 74, 0.12);
}

.iti__country-list {
    background: var(--black);
    border: 1px solid var(--gold-dim);
    color: var(--text);
    box-shadow: none;
    z-index: 100000;
}

.iti__country {
    color: var(--text);
    font-family: var(--font-body);
}

.iti__country:hover,
.iti__country.iti__highlight {
    background: var(--gold-dim);
    color: var(--white);
}

.iti__dial-code {
    color: var(--gold);
}

.iti__country-name {
    color: var(--text);
}

/* Receipt/thank-you page: black and gold only, no light cards or rounded alien UI. */
.woocommerce-order-received .aatmanya-receipt-page,
.aatmanya-receipt-page {
    padding: 90px 0;
    background: var(--black);
    color: var(--text);
}

.aatmanya-receipt-hero,
.aatmanya-receipt-card,
.aatmanya-receipt-order-details {
    border: 1px solid var(--gold-dim);
    border-radius: 0;
    background: var(--black);
    box-shadow: none;
}

.aatmanya-receipt-icon,
.aatmanya-receipt-next-list span {
    border-radius: 50%;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--gold);
    box-shadow: none;
}

.aatmanya-receipt-hero h1,
.aatmanya-receipt-order-details .woocommerce-order-details__title,
.aatmanya-receipt-order-details .woocommerce-column__title,
.aatmanya-receipt-card-label {
    color: var(--white);
    font-family: var(--font-heading);
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.aatmanya-section-kicker,
.aatmanya-receipt-card-label {
    color: var(--gold);
}

.aatmanya-receipt-hero p,
.aatmanya-receipt-next-list p,
.aatmanya-receipt-summary-list span,
.aatmanya-receipt-order-details p,
.aatmanya-receipt-order-details address {
    color: var(--text-muted);
}

.aatmanya-receipt-summary-list strong,
.aatmanya-receipt-order-details strong,
.aatmanya-receipt-order-details bdi,
.aatmanya-receipt-order-details .amount,
.aatmanya-receipt-order-details .woocommerce-table__product-name a {
    color: var(--white);
}

.aatmanya-receipt-summary-list div,
.aatmanya-receipt-order-details table,
.aatmanya-receipt-order-details th,
.aatmanya-receipt-order-details td,
.aatmanya-receipt-order-details address {
    border: 1px solid var(--gold-dim);
}

.aatmanya-receipt-order-details table.shop_table,
.aatmanya-receipt-order-details table.woocommerce-table {
    width: 100%;
    border-collapse: collapse;
    background: transparent;
}

.aatmanya-receipt-order-details th,
.aatmanya-receipt-order-details td {
    background: transparent;
    padding: 16px;
}

/* Gallery overlay above every product layer. */
body>.product-gallery-lightbox,
.product-gallery-lightbox,
.pswp,
.woocommerce .pswp,
.woocommerce-page .pswp {
    position: fixed;
    z-index: 2147483646;
}

.product-gallery-lightbox:not([hidden]) {
    display: flex;
}

.product-gallery-lightbox::before {
    content: "";
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.94);
    z-index: -1;
}

#galleryLightboxImage,
.gallery-lightbox-close,
.gallery-lightbox-arrow,
.pswp__bg,
.pswp__scroll-wrap {
    z-index: 2147483647;
}

/* Patch: keep single product quantity width stable during variation changes */
.single-product-cart-area .quantity.aatmanya-qty-ready {
    width: 158px !important;
    min-width: 158px !important;
    max-width: 158px !important;
    flex: 0 0 158px !important;
    box-sizing: border-box;
}

.single-product-cart-area .quantity.aatmanya-qty-ready .qty-btn {
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    flex: 0 0 46px !important;
    box-sizing: border-box;
}

.single-product-cart-area .quantity.aatmanya-qty-ready input.qty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    flex: 0 0 64px !important;
    box-sizing: border-box;
}

/* =========================================================
   Shared social/share icon buttons
   ========================================================= */

.single-blog-share a,
.single-blog-share button,
.single-product-share a,
.single-product-share button,
.footer-social-link {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid var(--gold-dim);
    background: rgba(201, 162, 77, 0.04);
    color: var(--text-muted);
    font-family: var(--font-body);
    font-size: 13px;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        color 0.2s ease,
        background 0.2s ease,
        transform 0.2s ease;
}

.single-blog-share a,
.single-blog-share button,
.single-product-share a,
.single-product-share button {
    padding: 8px 14px;
}

.footer-social-link {
    width: auto;
    height: 38px;
    padding: 8px 13px;
}

.single-blog-share a:hover,
.single-blog-share button:hover,
.single-blog-share button.copied,
.single-product-share a:hover,
.single-product-share button:hover,
.single-product-share button.copied,
.footer-social-link:hover {
    border-color: var(--gold);
    color: var(--gold);
    background: rgba(201, 162, 77, 0.1);
    transform: translateY(-1px);
}

.single-blog-share svg,
.single-blog-share button svg,
.single-product-share svg,
.single-product-share button svg,
.footer-social-link svg {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    color: currentColor;
}

.footer-social-text {
    display: inline-block;
}

.single-blog-share>span,
.single-product-share-label,
.contact-socials>p {
    color: var(--gold);
    font-family: var(--font-heading);
    font-size: 12px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.contact-social-links,
.footer-socials {
    gap: 10px;
}