/*
 Theme Name:   Suitup Tailors Child
 Theme URI:    https://www.suituptailors.com/
 Description:  Suitup Tailors Child Theme
 Author:       Pekan Designs
 Author URI:   https://pekandesigns.com/
 Template:     suituptailors
 Version:      1.0.3
 Text Domain:  suituptailors-child
*/

/* Pekan Woo archive parity: keep Pullingo product-card structure, adapt only colors and Suit Up media behavior. */
body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer),
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer),
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) {
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .wdt-col,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .wdt-col,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .wdt-col,
body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
}

body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-wrapper,
body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image {
    background: #ECECEC !important;
}

body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb,
body.woocommerce-page.post-type-archive-product ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image,
body.woocommerce-page.tax-product_cat ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image,
body.woocommerce-page.tax-product_tag ul.products.product-style-default li.product:not(.isotope-grid-sizer) .product-thumb a.image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .product-thumb-overlay,
body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .product-labels {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .primary-image,
body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .secondary-image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .primary-image img,
body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > .secondary-image img,
body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > div[class*="image"].primary-image img,
body.woocommerce-page ul.products.product-style-default li.product .product-thumb a.image > div[class*="image"].secondary-image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #ECECEC !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-details {
    width: 100% !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-title h5 a,
body.woocommerce-page ul.products.product-style-default li.product .product-category-wrapper a,
body.woocommerce-page ul.products.product-style-default li.product .product-price,
body.woocommerce-page ul.products.product-style-default li.product .product-price .price {
    color: #171717 !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-price,
body.woocommerce-page ul.products.product-style-default li.product .product-price .price,
body.woocommerce-page ul.products.product-style-default li.product .product-price .amount {
    font-size: 16px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-title h5 a:hover,
body.woocommerce-page ul.products.product-style-default li.product .product-category-wrapper a:hover {
    color: #D4A017 !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-button a.button,
body.woocommerce-page ul.products.product-style-default li.product .product-button .button {
    background: transparent !important;
    border-color: #171717 !important;
    color: #171717 !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-button a.button:hover,
body.woocommerce-page ul.products.product-style-default li.product .product-button .button:hover {
    background: #F8C848 !important;
    border-color: #F8C848 !important;
    color: #171717 !important;
}

body.woocommerce-page ul.products.product-style-default li.product .product-wrapper > a.compare.button,
body.woocommerce-page ul.products.product-style-default li.product .product-details a.compare.button {
    display: none !important;
}

/* Pekan single-product parity: restore Pullingo gallery-left, summary-right layout against Suit Customizer overrides. */
body.single-product.woocommerce-page #content div.product div.images,
body.single-product.woocommerce-page div.product div.images,
body.single-product.woocommerce #content div.product div.images,
body.single-product.woocommerce div.product div.images {
    float: left !important;
    width: 48% !important;
    margin: 0 0 12px !important;
}

body.single-product.woocommerce-page #content div.product div.summary,
body.single-product.woocommerce-page div.product div.summary,
body.single-product.woocommerce #content div.product div.summary,
body.single-product.woocommerce div.product div.summary,
body.single-product.woocommerce div.product.type-product > div.summary {
    float: right !important;
    width: 48% !important;
    margin: 0 0 12px !important;
}

body.single-product.woocommerce div.product .summary .price,
body.single-product.woocommerce div.product .summary .price .amount {
    font-size: 17.4117px !important;
    line-height: 20.894px !important;
    font-weight: 400 !important;
    color: #171717 !important;
}

body.single-product.woocommerce div.product form.cart .button.single_add_to_cart_button,
body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt {
    width: auto !important;
    min-width: 180px !important;
    padding: 14px 32px !important;
    background: transparent !important;
    border: 1px solid #171717 !important;
    color: #171717 !important;
}

body.single-product.woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt:hover {
    background: #F8C848 !important;
    border-color: #F8C848 !important;
    color: #171717 !important;
}

@media (max-width: 991px) {
    body.single-product.woocommerce-page #content div.product div.images,
    body.single-product.woocommerce-page div.product div.images,
    body.single-product.woocommerce #content div.product div.images,
    body.single-product.woocommerce div.product div.images,
    body.single-product.woocommerce-page #content div.product div.summary,
    body.single-product.woocommerce-page div.product div.summary,
    body.single-product.woocommerce #content div.product div.summary,
    body.single-product.woocommerce div.product div.summary,
    body.single-product.woocommerce div.product.type-product > div.summary {
        float: none !important;
        width: 100% !important;
        margin: 0 0 32px !important;
    }
}


/* Sisyphus phase 1 single product polish, 2026-06-17. Scope: WooCommerce single product pages only. */
body.single-product.woocommerce div.product.type-product > div.summary .product_title.entry-title {
    font-size: clamp(34px, 4vw, 52px) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.025em !important;
    margin: 0 0 16px !important;
    color: #171717 !important;
}

body.single-product.woocommerce div.product.type-product > div.summary p.price,
body.single-product.woocommerce div.product.type-product > div.summary p.price .amount,
body.single-product.woocommerce div.product.type-product > div.summary span.price,
body.single-product.woocommerce div.product.type-product > div.summary span.price .amount {
    font-size: clamp(28px, 3vw, 38px) !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #171717 !important;
    letter-spacing: -0.02em !important;
}

body.single-product.woocommerce div.product.type-product > div.summary p.price {
    margin: 12px 0 22px !important;
}

body.single-product.woocommerce div.product.type-product > div.summary .woocommerce-Price-currencySymbol,
body.single-product.woocommerce div.product.type-product > div.summary .woocommerce-Price-currencyCode {
    font-size: 0.55em !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    color: #6b5f49 !important;
    margin-left: 4px !important;
}

body.single-product.woocommerce div.product.type-product > div.summary .woocommerce-product-details__short-description,
body.single-product.woocommerce div.product.type-product > div.summary > p:not(.price) {
    font-size: 17px !important;
    line-height: 1.7 !important;
    color: #40382b !important;
    max-width: 64ch !important;
}

body.single-product.woocommerce div.product.type-product form.cart {
    width: 100% !important;
}

body.single-product.woocommerce div.product.type-product form.cart .tc-extra-product-options {
    margin-top: 28px !important;
    padding: 22px !important;
    background: #f7f3ea !important;
    border: 1px solid #d8d1c3 !important;
    box-shadow: 0 18px 44px rgba(23, 23, 23, 0.08) !important;
}

body.single-product.woocommerce div.product.type-product form.cart .tc-extra-product-options .cpf-type-header h5 {
    margin: 0 0 10px !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    color: #171717 !important;
}

body.single-product.woocommerce div.product.type-product form.cart .tc-extra-product-options .tm-epo-required {
    color: #f8c848 !important;
}

body.single-product.woocommerce div.product.type-product form.cart .tc-extra-product-options .selected-value-display {
    display: none !important;
}

body.single-product.woocommerce div.product.type-product form.cart .tm-extra-product-options-totals {
    padding: 18px !important;
    border: 1px solid #d8d1c3 !important;
    background: #fff !important;
    margin: 18px 0 !important;
}

body.single-product.woocommerce div.product form.cart .button.single_add_to_cart_button,
body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt,
body.single-product.woocommerce div.product.type-product > div.summary a.button,
body.single-product.woocommerce div.product.type-product > div.summary button.button,
body.single-product.woocommerce div.product.type-product > div.summary .compare.button,
body.single-product.woocommerce ul.products li.product a.button,
body.single-product.woocommerce ul.products li.product .button {
    background-color: #f8c848 !important;
    background-image: none !important;
    border: 1px solid #f8c848 !important;
    color: #171717 !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
    padding: 15px 34px !important;
    min-height: 50px !important;
    box-shadow: none !important;
}

body.single-product.woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt:hover,
body.single-product.woocommerce div.product.type-product > div.summary a.button:hover,
body.single-product.woocommerce div.product.type-product > div.summary button.button:hover,
body.single-product.woocommerce div.product.type-product > div.summary .compare.button:hover,
body.single-product.woocommerce ul.products li.product a.button:hover,
body.single-product.woocommerce ul.products li.product .button:hover {
    background-color: #171717 !important;
    background-image: none !important;
    border-color: #171717 !important;
    color: #fff !important;
}

body.single-product.woocommerce div.product form.cart .quantity input.qty {
    min-height: 50px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    border-color: #d8d1c3 !important;
}

@media (max-width: 767px) {
    body.single-product.woocommerce div.product.type-product form.cart .tc-extra-product-options {
        padding: 14px !important;
    }

    body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button.button.alt {
        width: 100% !important;
    }
}


/* Sisyphus phase 1 visual QA refinements: product-page spacing and header containment. */
body.single-product.woocommerce #main,
body.single-product.woocommerce div#main {
    padding-top: clamp(32px, 4vw, 56px) !important;
}

body.single-product.woocommerce .main-title-section-wrapper,
body.single-product.woocommerce .breadcrumb-wrapper,
body.single-product.woocommerce .wdt-breadcrumb-wrapper {
    margin-bottom: clamp(24px, 3vw, 44px) !important;
}

body.single-product #header img.custom-logo,
body.single-product #header .custom-logo-link img,
body.single-product #header .elementor-widget-image img {
    max-height: 58px !important;
    width: auto !important;
    object-fit: contain !important;
}

@media (min-width: 1024px) {
    body.single-product #header .elementor-nav-menu,
    body.single-product #header nav ul {
        gap: clamp(14px, 1.2vw, 22px) !important;
    }

    body.single-product #header .elementor-nav-menu a,
    body.single-product #header nav a {
        font-size: 14px !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 767px) {
    body.single-product.woocommerce #main,
    body.single-product.woocommerce div#main {
        padding-top: 24px !important;
    }

    body.single-product #header img.custom-logo,
    body.single-product #header .custom-logo-link img,
    body.single-product #header .elementor-widget-image img {
        max-height: 44px !important;
    }
}


/* Sisyphus phase 1 final QA tightening. */
body.single-product.woocommerce #primary.content-full-width {
    padding-top: clamp(36px, 4vw, 56px) !important;
}

@media (min-width: 1024px) {
    body.single-product #header .menu-item-depth-0 > a,
    body.single-product #header .menu-item > a {
        font-size: 14px !important;
        line-height: 1.2 !important;
        padding-left: 11px !important;
        padding-right: 11px !important;
        white-space: nowrap !important;
    }

    body.single-product #header .wdt-button {
        font-size: 14px !important;
        min-width: 0 !important;
        padding: 14px 18px !important;
        white-space: nowrap !important;
    }
}


/* Sisyphus phase 1 final header/hero corrections after visual QA. */
@media (min-width: 1024px) {
    body.single-product #header .elementor-element-5c1c6b9 {
        width: 210px !important;
        flex: 0 0 210px !important;
    }

    body.single-product #header .wdt-logo-container a,
    body.single-product #header .wdt-logo-container img {
        width: 210px !important;
        max-width: 210px !important;
        height: auto !important;
    }

    body.single-product #header .wdt-header-menu,
    body.single-product #header .menu-container,
    body.single-product #header .wdt-primary-nav {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product #header .wdt-primary-nav {
        white-space: nowrap !important;
    }
}

body.single-product.woocommerce .main-title-section-wrapper {
    margin-bottom: 18px !important;
}

body.single-product.woocommerce .main-title-section-container {
    padding-top: clamp(38px, 4vw, 54px) !important;
    padding-bottom: clamp(42px, 5vw, 62px) !important;
}

body.single-product.woocommerce #main {
    padding-top: clamp(20px, 3vw, 32px) !important;
}

body.single-product.woocommerce #primary.content-full-width {
    padding-top: clamp(18px, 3vw, 32px) !important;
}
