/*
Theme Name: Astra Child
Template: astra
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@300;400&display=swap');

/* =================================================================
   TYPOGRAPHY FOUNDATION — global defaults
   ================================================================= */

body {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.9;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title,
.woocommerce-products-header__title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
}

/* Heading size scale */
h1, .entry-title            { font-size: 58px; font-weight: 600; line-height: 1.1;  }
h2                          { font-size: 46px; font-weight: 600; line-height: 1.15; }
h3                          { font-size: 36px; font-weight: 600; line-height: 1.2;  }
h4                          { font-size: 28px; font-weight: 600; line-height: 1.25; }
h5                          { font-size: 22px; font-weight: 600; line-height: 1.35; }
h6                          { font-size: 19px; font-weight: 600; line-height: 1.4;  }

/* Site brand name */
.site-title,
.ast-site-name-wrap .site-title {
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

/* Prevent nav wrapping when logo is wide — desktop only */
@media (min-width: 768px) {
    ul.main-header-menu {
        flex-wrap: nowrap !important;
    }
    ul.main-header-menu > li.menu-item {
        white-space: nowrap;
    }
}

/* UI chrome stays Inter — explicit font-size keeps nav from inheriting body */
.ast-nav-menu a,
.main-navigation a {
    font-family: 'Inter', sans-serif;
    font-size: 15px;
}

button, .button,
input, select, textarea, label,
.woocommerce-breadcrumb,
.widget,
.ast-footer-copyright {
    font-family: 'Inter', sans-serif;
}

/* =================================================================
   SINGLE PRODUCT — LAYOUT (flexbox reordering + spacing)
   ================================================================= */

.woocommerce div.product div.summary {
    display: flex;
    flex-direction: column;
    margin-bottom: 1em;
}

.woocommerce div.product div.summary .single-product-category              { order: 1; }
.woocommerce div.product div.summary .product_title                        { order: 2; }
.woocommerce div.product div.summary .woocommerce-product-rating           { order: 3; }
.woocommerce div.product div.summary p.price,
.woocommerce div.product div.summary span.price                            { order: 4; }
.woocommerce div.product div.summary form.cart                             { order: 5; }
.woocommerce div.product div.summary .woocommerce-product-details__short-description { order: 6; }
.woocommerce div.product div.summary .product_meta                         { order: 7; }

.woocommerce div.product form.cart {
    margin-top: 0.5em;
    margin-bottom: 0.75em;
}

.woocommerce div.product .woocommerce-tabs {
    padding-top: 1em;
    margin-bottom: 2em;
}

/* =================================================================
   SINGLE PRODUCT — TITLE & PRICE
   ================================================================= */

.woocommerce div.product .summary .product_title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 54px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    margin-bottom: 6px !important;
}

.woocommerce div.product .summary .price {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    color: #2b2b2b !important;
    margin-bottom: 12px !important;
}

/* Suppress duplicate range price on variable products */
.woocommerce div.product .summary > .price:first-of-type {
    display: none !important;
}

/* =================================================================
   SINGLE PRODUCT — SHORT DESCRIPTION (verse + copy)
   ================================================================= */

.woocommerce div.product .summary .woocommerce-product-details__short-description {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 20px !important;
    line-height: 1.9 !important;
    color: #4a4a4a !important;
    margin-top: 0.5em !important;
}

/* Scripture verse */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-verse {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 44px !important;
    line-height: 1.45 !important;
    color: #1f1f1f !important;
    margin-bottom: 6px !important;
}

/* KJV label */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-verse-ref {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    color: #888 !important;
    display: block !important;
    margin-bottom: 22px !important;
}

/* Hook line */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-hook {
    font-family: 'Lora', Georgia, serif !important;
    font-style: italic !important;
    font-size: 22px !important;
    line-height: 1.75 !important;
    color: #3a3a3a !important;
    margin-bottom: 14px !important;
}

/* Devotional paragraph */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-body {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 20px !important;
    line-height: 1.95 !important;
    color: #4a4a4a !important;
    margin-bottom: 14px !important;
}

/* Trust signals list */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-signals {
    font-family: 'Lora', Georgia, serif !important;
    font-style: italic !important;
    font-size: 17px !important;
    line-height: 2 !important;
    color: #555 !important;
    margin-bottom: 14px !important;
}

/* Gifting line */
.woocommerce div.product .summary .woocommerce-product-details__short-description .product-gifting {
    font-family: 'Lora', Georgia, serif !important;
    font-style: italic !important;
    font-size: 19px !important;
    color: #555 !important;
    margin-bottom: 0 !important;
}

/* =================================================================
   SINGLE PRODUCT — VARIATIONS & BUTTON
   ================================================================= */

.woocommerce div.product .summary .variations label {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    color: #777 !important;
}

/* Default state */
.woocommerce div.product .summary .variations .variable-item,
.woocommerce div.product .summary .variations .button-variable-item {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #4a4a4a !important;
    background: transparent !important;
    border: 1px solid #d5d0c9 !important;
    border-radius: 2px !important;
    padding: 8px 16px !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.15s ease !important;
}

/* Suppress redundant tooltip on text swatches */
.woocommerce div.product .summary .variations .variable-item .variable-item-tooltip,
.woocommerce div.product .summary .variations .variable-item .wvs-tooltip,
.woocommerce div.product .summary .variations .variable-item .tawcvs-tooltip,
.woocommerce div.product .summary .variations .variable-item::after,
.woocommerce div.product .summary .variations .variable-item::before {
    display: none !important;
}

/* Hover state */
.woocommerce div.product .summary .variations .variable-item:hover,
.woocommerce div.product .summary .variations .button-variable-item:hover {
    border-color: #1f1f1f !important;
    color: #1f1f1f !important;
    background: #f5f2ef !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.07) !important;
    outline: none !important;
}

/* Selected state */
.woocommerce div.product .summary .variations .variable-item.selected,
.woocommerce div.product .summary .variations .button-variable-item.selected {
    border: 1px solid #1f1f1f !important;
    background: #1f1f1f !important;
    color: #ffffff !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Select dropdown */
.woocommerce div.product .summary .variations select {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    border: 1px solid #d5d0c9 !important;
    border-radius: 2px !important;
    padding: 8px 12px !important;
}

.woocommerce div.product .summary .single_add_to_cart_button {
    font-family: 'Inter', sans-serif !important;
    background-color: #1f1f1f !important;
    color: #fff !important;
    padding: 14px 28px !important;
    font-size: 14px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    border-radius: 2px !important;
}

.woocommerce div.product .summary .single_add_to_cart_button:hover {
    background-color: #000 !important;
}

/* =================================================================
   WOOCOMMERCE TABS — Description / Reviews
   ================================================================= */

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2,
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h3,
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h4,
.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs .panel h3,
.woocommerce div.product .woocommerce-tabs .panel h4 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-weight: 600 !important;
    color: #1f1f1f !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel,
.woocommerce div.product .woocommerce-tabs .panel {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 20px !important;
    line-height: 1.9 !important;
    color: #4a4a4a !important;
}

/* =================================================================
   LONG DESCRIPTION
   ================================================================= */

.lll-long-description {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 21px !important;
    font-weight: 400 !important;
    line-height: 1.95 !important;
    color: #4a4a4a !important;
    max-width: 680px;
    margin: 0 0 60px;
    padding-top: 40px;
    border-top: 1px solid #e0dbd4;
}

.lll-long-description ul {
    padding-left: 20px;
    margin-top: 8px;
    margin-bottom: 0;
}

.lll-long-description ul li {
    margin-bottom: 12px;
    line-height: 1.85;
}

body .lll-long-description h2,
body .lll-long-description h3,
body .lll-long-description h4,
body .lll-long-description h5 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-weight: 600 !important;
    color: #1f1f1f !important;
}

body .lll-long-description h2 { font-size: 40px !important; margin-top: 48px !important; margin-bottom: 14px !important; }
body .lll-long-description h3 { font-size: 33px !important; margin-top: 40px !important; margin-bottom: 12px !important; }
body .lll-long-description h4 { font-size: 27px !important; font-weight: 600 !important; margin-top: 36px !important; margin-bottom: 12px !important; }

.lll-long-description p {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 21px !important;
    line-height: 1.95 !important;
    color: #4a4a4a !important;
    margin-bottom: 1em !important;
}

/* =================================================================
   RELATED PRODUCTS & UP-SELLS
   ================================================================= */

.woocommerce div.product .related.products > h2,
.woocommerce div.product .up-sells > h2 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 38px !important;
    font-weight: 600 !important;
    color: #1f1f1f !important;
}

/* =================================================================
   SHOP PAGE — TYPOGRAPHY
   ================================================================= */

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

.woocommerce ul.products li.product .price {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 20px !important;
}

/* =================================================================
   PAIRING & DISCOVERY MODULES (snippet-7)
   ================================================================= */

/* Section labels */
.lll-pairing-module .lll-pairing-label,
.lll-discovery-pivots .lll-pivots-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: #3a3a3a !important;
    margin-bottom: 32px !important;
    display: block !important;
}

/* --- Pairing module --- */

.lll-pairing-module {
    border-top: 1px solid #e0dbd4;
    padding-top: 48px;
    margin-bottom: 56px;
}

.lll-pairing-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.lll-pairing-card {
    display: block;
    text-decoration: none !important;
    border: 1px solid #e0dbd4;
    border-radius: 2px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.lll-pairing-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
    border-color: #c8c2bb;
    text-decoration: none !important;
}

.lll-pairing-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
}

.lll-pairing-card .lll-pairing-title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
    color: #1f1f1f !important;
    line-height: 1.2 !important;
    padding: 20px 20px 6px !important;
    margin: 0 !important;
}

.lll-pairing-card .lll-pairing-price {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 19px !important;
    color: #777 !important;
    padding: 0 20px 20px !important;
    margin: 0 !important;
}

/* --- Discovery pivots --- */

.lll-discovery-pivots {
    border-top: 1px solid #e0dbd4;
    padding-top: 40px;
    margin-bottom: 60px;
}

.lll-pivots-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.lll-pivot-link {
    font-family: 'Lora', Georgia, serif !important;
    font-style: italic !important;
    font-size: 17px !important;
    color: #3a3a3a !important;
    display: inline-block;
    border: 1px solid #d5d0c9;
    border-radius: 2px;
    padding: 10px 20px;
    text-decoration: none !important;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.lll-pivot-link:hover {
    border-color: #1f1f1f;
    color: #1f1f1f !important;
    background: #f5f2ef;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.07);
    text-decoration: none !important;
}

/* =================================================================
   MOBILE MENU — hide inline nav, show only on hamburger toggle
   ================================================================= */

.ast-header-break-point .main-header-bar-navigation:not(.toggle-on) {
    display: none !important;
}

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

@media (max-width: 767px) {
    .main-header-bar .ast-container,
    .ast-mobile-header-wrap .ast-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body {
        font-size: 19px;
    }

    h1, .entry-title { font-size: 42px; }
    h2               { font-size: 34px; }
    h3               { font-size: 28px; }
    h4               { font-size: 24px; }

    .woocommerce div.product .summary .product_title {
        font-size: 38px !important;
    }

    .woocommerce div.product .summary .price {
        font-size: 24px !important;
    }

    .woocommerce div.product .summary .woocommerce-product-details__short-description .product-verse {
        font-size: 34px !important;
    }

    .woocommerce div.product .summary .woocommerce-product-details__short-description .product-hook {
        font-size: 20px !important;
    }

    .lll-long-description h2 { font-size: 32px !important; }
    .lll-long-description h3 { font-size: 27px !important; }
    .lll-long-description h4 { font-size: 22px !important; }
}
