/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.1
 Text Domain:  woodmart
*/

/* ============================================================
   1. PAVEL PRODUCT CARDS
   ============================================================ */




/* Square corners, no zoom on image */
.pavel-card,
.pavel-card-poster { border-radius: 0 !important; }
.pavel-card-poster img,
.pavel-card-poster .pavel-card-img { transition: none !important; }
.pavel-card:hover .pavel-card-poster img { transform: none !important; }

/* View details — gold, red on hover */
.pavel-btn-details {
    background: #AB9B77 !important;
    color: #fefefe !important;
    border: 1px solid #AB9B77 !important;
}
.pavel-btn-details:hover {
    background: #c21414 !important;
    border-color: #c21414 !important;
}

/* Add to cart — outlined transparent */
.pavel-btn-cart {
    background: transparent !important;
    color: #fefefe !important;
    border: 1px solid #AB9B77 !important;
}
.pavel-btn-cart:hover {
    background: #AB9B77 !important;
    border-color: #AB9B77 !important;
}
.pavel-btn-cart.added {
    background: #AB9B77 !important;
    border-color: #AB9B77 !important;
    color: #fefefe !important;
}

/* Equal card heights */
.pavel-card { height: 100%; }
.pavel-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.pavel-card-title {
    min-height: 2.8em;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.pavel-card-price { margin-top: auto; }

/* ============================================================
   2. PAVEL STORE GRID
   ============================================================ */

/* Desktop: full-width breakout, 60px side padding, 80px row gap */
@media (min-width: 1025px) {
    .pavel-store-grid {
        position: relative !important;
        box-sizing: border-box !important;
        width: 100vw !important;
        max-width: 100vw !important;
        left: 50% !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
        padding-left: 60px !important;
        padding-right: 60px !important;
        row-gap: 80px !important;
    }
}

/* Mobile/tablet: natural container width, 15px breathing room */
@media (max-width: 1024px) {
    .pavel-store-grid {
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }
}

/* Small mobile: single column */
@media (max-width: 720px) {
    .pavel-store-grid,
    .pavel-cols-2,
    .pavel-cols-3,
    .pavel-cols-4,
    .pavel-cols-5,
    .pavel-cols-6 {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}

/* ============================================================
   3. PAVEL GET-IN-TOUCH FORM
   ============================================================ */

.pavel-git {
    padding: 20px !important;
    align-items: stretch !important;
}

/* Submit button — brand gold border */
.pavel-git-submit {
    border-color: #AB9B77 !important;
}
.pavel-git-submit:hover {
    background: #AB9B77 !important;
    border-color: #AB9B77 !important;
}

/* Image and form equal height */
.pavel-git-image {
    height: auto !important;
    aspect-ratio: auto !important;
}
.pavel-git-image img,
.pavel-git-image .pavel-git-photo {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    min-height: 0 !important;
}

/* Agreement text links */
.pavel-git-agree-text a,
.pavel-git-agree-text u {
    color: #fefefe !important;
    text-decoration: underline !important;
    text-decoration-color: #AB9B77 !important;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
}
.pavel-git-agree-text a:hover {
    color: #AB9B77 !important;
    text-decoration-color: #AB9B77 !important;
}

/* ============================================================
   4. PAVEL NEWSLETTER
   Brand: BG #191F27 / Card #272F3B / Accent #AB9B77 / Text #fefefe
   ============================================================ */

.pavel-newsletter {
    --pn-bg: #272F3B;
    --pn-accent: #AB9B77;
    --pn-accent-hover: #C21414;
    --pn-text: #fefefe;
    --pn-text-muted: rgba(254, 254, 254, .65);
    --pn-border: rgba(254, 254, 254, .35);

    background: var(--pn-bg);
    color: var(--pn-text);
    padding: 28px 32px 26px;
    max-width: 421px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

.pavel-newsletter * {
    box-sizing: border-box;
}

/* Title */
.pavel-newsletter-title {
    color: #AB9B77;
    font-size: 18px;
    line-height: 1.1;
    font-weight: 600;
    margin: 0 0 16px;
}

/* Form */
.pavel-newsletter-form { margin: 0; }
.pavel-newsletter-row {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-end;
    gap: 14px;
}

/* Email field */
.pavel-newsletter-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.pavel-newsletter-field label {
    color: #b3b4a4 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    margin-bottom: -20px !important;
    letter-spacing: .2px;
}
.pavel-newsletter-field input {
    width: 100%;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pn-border) !important;
    border-radius: 0 !important;
    padding: 4px 0 8px !important;
    color: var(--pn-text) !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-appearance: none;
    height: auto !important;
    min-height: 0 !important;
}
.pavel-newsletter-field input:focus {
    border-bottom-color: var(--pn-accent) !important;
}
.pavel-newsletter-field input::placeholder {
    color: rgba(254, 254, 254, .35);
}

/* Submit button */
.pavel-newsletter-submit {
    background: #AB9B77;
    color: #FEFEFE;
    border: 1px solid #AB9B77;
    border-radius: 0;
    padding: 0 22px;
    height: 38px;
    margin-top: 22px !important;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: .3px;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, opacity .2s ease;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.pavel-newsletter-submit:hover {
    background: #C21414;
    border-color: #C21414;
    color: #FEFEFE;
}
.pavel-newsletter-submit.loading {
    opacity: .7;
    cursor: wait;
}
.pavel-newsletter-submit.loading::after {
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    margin-left: 8px;
    border: 2px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: pn-spin .7s linear infinite;
}
.pavel-newsletter-submit.success {
    background: #AB9B77 !important;
    border-color: #AB9B77 !important;
}
@keyframes pn-spin { to { transform: rotate(360deg); } }

/* Honeypot */
.pavel-newsletter-hp {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

/* Turnstile */
.pavel-newsletter-turnstile { margin: 12px 0 0; }
.pavel-newsletter-turnstile:empty { margin: 0; }

/* Status message */
.pavel-newsletter-status {
    font-size: 13px;
    margin-top: 10px;
    min-height: 18px;
    color: var(--pn-accent);
}
.pavel-newsletter-status.error { color: #e57373; }
.pavel-newsletter-status.success { color: #7bc88c; }

/* Description note */
.pavel-newsletter-note {
    font-size: 14px;
    line-height: 1.5;
    color: #fefefe;
    margin: 18px 0 22px;
}

/* Social icons row */
.pavel-newsletter-socials {
    list-style: none;
    margin: 0 0 22px;
    padding: 0;
    display: flex;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    align-items: center;
}
.pavel-newsletter-socials li {
    margin: 0;
    padding: 0;
    list-style: none;
}
.pavel-newsletter-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    text-decoration: none;
    transition: opacity .2s ease, transform .2s ease;
    line-height: 0;
}
.pavel-newsletter-socials a:hover {
    opacity: .75;
    transform: translateY(-1px);
}
.pavel-newsletter-socials img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 30px;
    max-height: 30px;
    object-fit: contain;
}

/* Website developer credit link */
.pavel-newsletter-credit {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
    color: var(--pn-text);
}
.pavel-newsletter-credit a {
    font-size: 18px;
    font-weight: 500;
    transition: color var(--t396-speedhover, 0s) ease-in-out;
    color: #fefefe;
}
.pavel-newsletter-credit a:hover {
    color: var(--pn-accent);
}

/* Newsletter — mobile (iOS Safari fixes) */
@media (max-width: 980px) {
    .pavel-newsletter {
        background: #272F3B !important;
        max-width: 100% !important;
        padding: 24px 22px !important;
        margin: 0 !important;
        color: #fefefe !important;
    }
    .pavel-newsletter-title {
        color: #AB9B77 !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 1.1 !important;
        margin: 0 0 16px !important;
        text-transform: none !important;
    }
    .pavel-newsletter-row {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        align-items: flex-end !important;
        gap: 14px !important;
    }
    .pavel-newsletter-field {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
    }
    .pavel-newsletter-field label {
        color: #b3b4a4 !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        margin-bottom: -20px !important;
        z-index: 2 !important;
        position: relative !important;
    }
    .pavel-newsletter-field input {
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(254,254,254,.35) !important;
        border-top: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-radius: 0 !important;
        padding: 22px 0 8px !important;
        color: #fefefe !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
        outline: none !important;
        box-shadow: none !important;
        -webkit-appearance: none !important;
        -webkit-border-radius: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        width: 100% !important;
    }
    .pavel-newsletter-submit {
        background: #AB9B77 !important;
        color: #fefefe !important;
        border: 1px solid #AB9B77 !important;
        border-radius: 0 !important;
        -webkit-border-radius: 0 !important;
        -webkit-appearance: none !important;
        padding: 0 22px !important;
        height: 42px !important;
        margin-top: 22px !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        cursor: pointer !important;
    }
    .pavel-newsletter-hp {
        position: absolute !important;
        left: -9999px !important;
        top: -9999px !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        visibility: hidden !important;
        display: block !important;
    }
    .pavel-newsletter-note {
        font-size: 14px !important;
        line-height: 1.5 !important;
        color: #fefefe !important;
        opacity: .85 !important;
        margin: 8px 0 22px !important;
    }
    .pavel-newsletter-socials {
        list-style: none !important;
        margin: 0 0 22px !important;
        padding: 0 !important;
        display: flex !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        align-items: center !important;
    }
    .pavel-newsletter-socials li {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
    }
    .pavel-newsletter-socials li::before,
    .pavel-newsletter-socials li::marker {
        display: none !important;
        content: "" !important;
    }
    .pavel-newsletter-socials a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 30px !important;
        height: 30px !important;
        text-decoration: none !important;
        line-height: 0 !important;
        -webkit-tap-highlight-color: transparent !important;
    }
    .pavel-newsletter-socials img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 30px !important;
        max-height: 30px !important;
        object-fit: contain !important;
    }
    .pavel-newsletter-credit {
        margin: 0 !important;
        font-size: 14px !important;
        color: #fefefe !important;
    }
    .pavel-newsletter-credit a {
        color: #fefefe !important;
        text-decoration: none !important;
    }
}

/* Newsletter — small mobile (stacked input/submit) */
@media (max-width: 480px) {
    .pavel-newsletter { padding: 24px 22px 22px; }
    .pavel-newsletter-row {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .pavel-newsletter-submit { height: 42px; }
}

/* ============================================================
   5. PAVEL FOOTER COLUMNS
   ============================================================ */

.pavel-footer-heading,
.pavel-footer h3,
.pavel-footer h4 {
    color: #AB9B77;
    font-size: 18px;
    line-height: 1.55;
    font-weight: 600;
    margin: 0 0 16px;
    text-transform: none;
    letter-spacing: normal;
}

.pavel-footer-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.pavel-footer-list li {
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
    font-size: 18px;
    line-height: 1.5;
    color: #fefefe;
}
.pavel-footer-list li:last-child {
    margin-bottom: 0;
}
.pavel-footer-list a {
    color: #fefefe;
    text-decoration: none;
    transition: color .2s ease;
    font-weight: 500;
}
.pavel-footer-list a:hover {
    color: #AB9B77;
}
.pavel-footer-list a.pavel-underline {
    text-decoration: underline !important;
    text-decoration-color: #AB9B77 !important;
    text-underline-offset: 4px;
    text-decoration-thickness: 1px !important;
}

/* ============================================================
   6. WOODMART HEADER
   ============================================================ */

/* Sticky header — semi-transparent background */
.whb-sticked .whb-row,
.whb-clone .whb-row {
    background-color: rgba(25, 31, 39, 0.85) !important;
}

/* Desktop: full-width header with 20px side padding */
@media (min-width: 1025px) {
    .whb-header .container,
    .whb-main-header-inner .container,
    .whb-top-bar-inner .container,
    .whb-sticked .container {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* ========== MOBILE PAGE CONTAINER PADDING ========== */
@media (max-width: 1024px) {
    /* WoodMart-ի page content wrapper-ները */
    .main-page-wrapper,
    .content-area,
    .site-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Pavel grid — ուղիղ padding 15px */
    .pavel-store-grid {
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        left: auto !important;
    }
    
    /* Single product card protection — եթե grid-ից դուրս է */
    .pavel-card {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* WPBakery row/column-ի natural padding-ը */
    .vc_row,
    .wpb_wrapper,
    .vc_column_container > .vc_column-inner {
        box-sizing: border-box;
    }
}

/* ============================================================
   2. PAVEL STORE GRID
   Tweak the 4 variables below to control side paddings globally
   ============================================================ */

:root {
    --pavel-grid-pad-desktop: 60px;   /* PC-ի padding L/R   */
    --pavel-grid-pad-tablet:  30px;   /* Tablet-ի padding   */
    --pavel-grid-pad-mobile:  15px;   /* Mobile-ի padding   */
    --pavel-grid-row-gap:     80px;   /* Տողերի միջև gap   */
}

/* Desktop (≥1025px): full-width breakout */
@media (min-width: 1025px) {
    .pavel-store-grid {
        position: relative !important;
        box-sizing: border-box !important;
        width: 100vw !important;
        max-width: 100vw !important;
        left: 50% !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
        padding-left: var(--pavel-grid-pad-desktop) !important;
        padding-right: var(--pavel-grid-pad-desktop) !important;
        row-gap: var(--pavel-grid-row-gap) !important;
    }
}

/* Tablet (721px–1024px) */
@media (min-width: 721px) and (max-width: 1024px) {
    .pavel-store-grid {
        padding-left: var(--pavel-grid-pad-tablet) !important;
        padding-right: var(--pavel-grid-pad-tablet) !important;
        box-sizing: border-box !important;
    }
}

/* Mobile (≤720px): single column + small padding */
@media (max-width: 720px) {
    .pavel-store-grid,
    .pavel-cols-2,
    .pavel-cols-3,
    .pavel-cols-4,
    .pavel-cols-5,
    .pavel-cols-6 {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        padding-left: var(--pavel-grid-pad-mobile) !important;
        padding-right: var(--pavel-grid-pad-mobile) !important;
        box-sizing: border-box !important;
    }
}

/* ============================================================
   PAYMENT METHODS LOGOS — natural aspect ratio per logo
   ============================================================ */

.pavel-footer-list .pavel-payment-row {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin: 6px 0 14px !important;
    list-style: none !important;
    padding: 0 !important;
}

.pavel-footer-list .pavel-payment-row::before,
.pavel-footer-list .pavel-payment-row::marker {
    display: none !important;
    content: "" !important;
}

.pavel-footer-list .pavel-payment-row img {
    display: block;
    height: 22px;        /* ← միակ թիվը, որ պետք է փոխես չափը կարգավորելու համար */
    width: auto;
    max-width: none;
    object-fit: contain;
    flex-shrink: 0;
}

/* Mobile */
@media (max-width: 480px) {
    .pavel-footer-list .pavel-payment-row {
        gap: 10px;
    }
    .pavel-footer-list .pavel-payment-row img {
        height: 18px;
    }
}