/*
Theme Name:   Minimog Karlin
Theme URI:    https://karlin.vn
Description:  Child theme of MinimogWP for karlin.vn — brand overrides,
              SnapKitchen integrations, and any code we don't want to lose
              when the parent theme updates.
Author:       SnapKitchen
Author URI:   https://snapkitchen.vn
Template:     minimog
Version:      0.1.1
Text Domain:  minimog-karlin
*/

/* Per-brand CSS overrides go here. Parent theme styles are enqueued from
   functions.php; this file only carries the theme header for WP plus any
   custom rules below. */

/* Vietnamese support and brand-consistent typography. */
:root,
body {
    --karlin-font-sans: "Roboto", Arial, "Helvetica Neue", sans-serif;
    --minimog-typography-body-font-family: var(--karlin-font-sans);
    --minimog-typography-headings-font-family: var(--karlin-font-sans);
    --minimog-typography-headings-2-font-family: var(--karlin-font-sans);
    --minimog-typography-button-font-family: var(--karlin-font-sans);
    --minimog-typography-form-font-family: var(--karlin-font-sans);
}

body,
button,
input,
select,
textarea,
.page-header .menu--primary > ul > li > a,
.page-header .menu--primary ul li a,
.nav-menu a,
.menu-item a,
.page-content,
.entry-content,
.entry-content p,
.entry-content li,
.entry-content table,
.entry-content blockquote,
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.tm-heading,
.tm-heading .heading-primary,
.tm-heading .heading-description,
.tm-list,
.tm-list .item,
.tm-list .text,
.tm-button,
.tm-button a,
.button-text,
span.button-text,
.tm-button-wrapper,
.slide-layer-wrap.button-wrap *,
.wpforms-container,
.wpforms-container label,
.wpforms-container input,
.wpforms-container textarea,
.wpforms-container button {
    font-family: var(--karlin-font-sans) !important;
}

.entry-content,
.entry-content p,
.entry-content li,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.wpforms-container,
.wpforms-container label,
.wpforms-container input,
.wpforms-container textarea {
    font-weight: 400 !important;
}

.entry-content strong,
.entry-content b,
.elementor-widget-text-editor strong,
.elementor-widget-text-editor b,
.wpforms-container strong,
.wpforms-container b {
    font-weight: 700 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading,
.page-title,
.entry-title,
.elementor-heading-title {
    font-family: var(--karlin-font-sans) !important;
    letter-spacing: 0 !important;
}

.karlin-availability {
    margin: 0 0 14px;
    font-weight: 600;
}

.karlin-availability.in-stock {
    color: #247a3d;
}

.karlin-availability.out-of-stock {
    color: #b3261e;
}

.karlin-product-sales,
.karlin-purchase-support,
.karlin-shop-intro,
.karlin-home-sales {
    color: #222;
}

.karlin-product-sales {
    margin: 18px 0 22px;
    padding: 18px;
    border: 1px solid #e6e1d8;
    border-radius: 8px;
    background: #fbfaf7;
}

.karlin-product-sales h2,
.karlin-shop-intro h2,
.karlin-home-sales h2 {
    margin: 0 0 12px;
    font-size: 24px;
    line-height: 1.25;
}

.karlin-product-sales ul,
.karlin-shop-intro ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.karlin-product-sales li {
    display: grid;
    gap: 3px;
    padding-left: 16px;
    border-left: 3px solid #2f7d46;
}

.karlin-product-sales strong {
    font-weight: 700;
}

.karlin-product-sales span,
.karlin-shop-intro p,
.karlin-shop-intro li,
.karlin-home-sales p {
    color: #5f5a52;
}

.karlin-purchase-support {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 12px 0 34px;
    padding: 22px 0;
    border-top: 1px solid #e8e3da;
    border-bottom: 1px solid #e8e3da;
}

.karlin-purchase-support div {
    display: grid;
    gap: 6px;
}

.karlin-purchase-support span,
.karlin-eyebrow {
    color: #2f7d46;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.karlin-purchase-support strong {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.55;
}

.karlin-shop-intro {
    margin: 0 0 28px;
    padding: 24px;
    border: 1px solid #e6e1d8;
    border-radius: 8px;
    background: #fbfaf7;
}

.karlin-shop-intro ul {
    margin-top: 14px;
}

.karlin-shop-intro li {
    position: relative;
    padding-left: 18px;
}

.karlin-shop-intro li::before {
    position: absolute;
    top: 11px;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #2f7d46;
    content: "";
}

.karlin-home-sales {
    margin: 48px 0 0;
    padding: 56px 20px;
    background: #f6f3ec;
}

.karlin-home-sales__inner {
    max-width: 1180px;
    margin: 0 auto;
}

.karlin-home-sales__lead {
    max-width: 760px;
    margin: 0 0 26px;
    font-size: 17px;
    line-height: 1.7;
}

.karlin-home-sales__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.karlin-home-sales__grid article {
    padding: 22px;
    border: 1px solid #e2ddd3;
    border-radius: 8px;
    background: #fff;
}

.karlin-home-sales__grid h3 {
    margin: 0 0 8px;
    font-size: 18px;
    line-height: 1.35;
}

.karlin-home-sales__grid p {
    margin: 0;
}

.karlin-home-sales__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.karlin-home-sales__actions a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid #222;
    border-radius: 4px;
    color: #222;
    font-weight: 700;
    text-decoration: none;
}

.karlin-home-sales__actions a:first-child {
    border-color: #2f7d46;
    background: #2f7d46;
    color: #fff;
}

.karlin-review-source {
    margin-top: 8px;
    color: #6f6a61;
    font-size: 13px;
    font-style: italic;
}

.karlin-review-source--synthetic {
    color: #9a5b00;
}

@media (max-width: 767px) {
    .karlin-purchase-support,
    .karlin-home-sales__grid {
        grid-template-columns: 1fr;
    }

    .karlin-home-sales {
        padding: 42px 16px;
    }

    .karlin-product-sales h2,
    .karlin-shop-intro h2,
    .karlin-home-sales h2 {
        font-size: 22px;
    }
}
