:root {
    --tk-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --tk-font-heading: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    --tk-container: 1200px;
    --tk-container-wide: 1360px;
    --tk-container-narrow: 920px;
    --tk-container-padding: clamp(16px, 3vw, 28px);

    --tk-green-deep: #0B2118;
    --tk-green-main: #10291F;
    --tk-green-soft: #123326;
    --tk-green-nav: #0E281E;
    --tk-gold: #E0AD18;
    --tk-gold-soft: #F0C94A;

    --tk-bg-page: #F7F2E8;
    --tk-bg-page-soft: #FAF6EE;
    --tk-surface-page: var(--tk-bg-page);
    --tk-surface-page-soft: var(--tk-bg-page-soft);
    --tk-surface-card: #FFFDF8;
    --tk-surface-panel: #FBF5EC;
    --tk-surface-panel-soft: #FBF5EC;
    --tk-surface-muted: #EFE6D8;
    --tk-surface-border: rgba(16, 37, 28, 0.10);
    --tk-surface-border-soft: rgba(16, 37, 28, 0.07);
    --tk-surface-shadow: 0 24px 60px rgba(6, 26, 18, 0.13);

    --tk-text-main: #10251C;
    --tk-text-strong: #0B2118;
    --tk-text-soft: rgba(16, 37, 28, 0.72);
    --tk-text-muted: rgba(16, 37, 28, 0.68);
    --tk-text-light: #FFFFFF;
    --tk-text-light-soft: rgba(255, 255, 255, 0.78);

    /* Legacy aliases kept for existing modules. */
    --tk-text: var(--tk-text-main);
    --tk-bg: var(--tk-bg-page);

    --tk-font-hero-title: clamp(38px, 4.9vw, 70px);
    --tk-font-page-title: clamp(28px, 2.2vw, 38px);
    --tk-font-section-title: clamp(22px, 1.55vw, 27px);
    --tk-font-card-title: clamp(16px, 1vw, 19px);
    --tk-font-product-title: clamp(14px, 0.9vw, 15px);
    --tk-font-single-product-title: clamp(32px, 2.18vw, 40px);
    --tk-font-body-size: 17px;
    --tk-font-body-soft: 16px;
    --tk-font-meta: 14px;
    --tk-font-eyebrow: 12px;
    --tk-font-button: 14px;
    --tk-font-button-small: 12.5px;
    --tk-font-price-card: clamp(15px, 1vw, 17px);
    --tk-font-price-single: clamp(28px, 1.78vw, 34px);
    --tk-font-trust: 13px;
    --tk-font-nav: 15px;
    --tk-font-footer-title: 18px;
    --tk-font-footer-link: 14.5px;
    --tk-font-footer-text: 14px;
    --tk-font-slogan: clamp(24px, 2.4vw, 42px);

    --tk-font-spec-title: 18px;
    --tk-weight-spec-title: 780;
    --tk-line-spec-title: 1.18;
    --tk-font-spec-label: 14.5px;
    --tk-weight-spec-label: 760;
    --tk-line-spec-label: 1.45;
    --tk-font-spec-value: 15px;
    --tk-weight-spec-value: 500;
    --tk-line-spec-value: 1.48;
    --tk-font-feature-list: 15px;
    --tk-weight-feature-list: 480;
    --tk-line-feature-list: 1.52;

    --tk-weight-regular: 430;
    --tk-weight-medium: 520;
    --tk-weight-semibold: 640;
    --tk-weight-bold: 760;
    --tk-weight-heavy: 850;
    --tk-weight-black: 900;
    --tk-weight-hero-title: 860;
    --tk-weight-page-title: 760;
    --tk-weight-section-title: 680;
    --tk-weight-card-title: 700;
    --tk-weight-product-title: 640;
    --tk-weight-body: 430;
    --tk-weight-body-soft: 430;
    --tk-weight-meta: 720;
    --tk-weight-button: 850;
    --tk-weight-button-small: 760;
    --tk-weight-price-card: 820;
    --tk-weight-price-single: 920;
    --tk-weight-trust: 760;
    --tk-weight-nav: 640;
    --tk-weight-footer-title: 850;
    --tk-weight-footer-link: 650;
    --tk-weight-footer-text: 500;

    --tk-line-hero-title: 0.98;
    --tk-line-tight: 1.08;
    --tk-line-title: 1.12;
    --tk-line-card-title: 1.18;
    --tk-line-product-title: 1.42;
    --tk-line-body: 1.62;
    --tk-line-body-soft: 1.60;
    --tk-line-meta: 1.42;
    --tk-line-button: 1;
    --tk-line-footer-link: 1.45;
    --tk-line-footer-text: 1.52;

    --tk-letter-hero-title: -0.048em;
    --tk-letter-title: -0.022em;
    --tk-letter-section: -0.018em;
    --tk-letter-card-title: -0.014em;
    --tk-letter-product-title: -0.004em;
    --tk-letter-button: 0.005em;
    --tk-letter-eyebrow: 0.08em;
    --tk-letter-slogan: -0.032em;

    --tk-radius-card: 22px;
    --tk-radius-panel: 26px;
    --tk-radius-button: 14px;
    --tk-radius-button-small: 12px;
    --tk-radius-input: 13px;
    --tk-radius-image: 22px;

    --tk-card-padding: 18px;
    --tk-card-bg: var(--tk-surface-card);
    --tk-card-border: 1px solid var(--tk-surface-border);
    --tk-card-shadow: 0 14px 36px rgba(11, 33, 24, 0.08);
    --tk-panel-padding: clamp(18px, 2.2vw, 30px);
    --tk-panel-bg: var(--tk-surface-panel);
    --tk-panel-border: 1px solid var(--tk-surface-border);

    --tk-button-height: 48px;
    --tk-button-small-height: 38px;
    --tk-button-padding-x: 22px;
    --tk-button-small-padding-x: 14px;

    --tk-input-height: 48px;
    --tk-input-padding-x: 14px;
    --tk-input-bg: #fff;
    --tk-input-border: 1px solid rgba(16, 37, 28, 0.16);
    --tk-input-focus-border: rgba(224, 173, 24, 0.72);
    --tk-input-focus-shadow: 0 0 0 3px rgba(224, 173, 24, 0.16);

    --tk-space-2xs: 4px;
    --tk-space-xs: 8px;
    --tk-space-sm: 12px;
    --tk-space-md: 16px;
    --tk-space-lg: 24px;
    --tk-space-xl: 32px;
    --tk-space-2xl: 48px;
    --tk-space-3xl: 64px;
    --tk-section-gap-sm: clamp(22px, 3vw, 36px);
    --tk-section-gap-md: clamp(32px, 4vw, 56px);
    --tk-section-gap-lg: clamp(44px, 5vw, 72px);
}

html { box-sizing: border-box; -webkit-text-size-adjust: 100%; }
*, *::before, *::after { box-sizing: inherit; }

body {
    margin: 0;
    background: var(--tk-bg);
    color: var(--tk-text-main);
    font-family: var(--tk-font-body);
    line-height: var(--tk-line-body);
}

img { max-width: 100%; height: auto; }

.tugkamp-content {
    width: min(100%, var(--tk-container));
    margin-inline: auto;
    padding: 24px;
}

.home .tugkamp-front-page {
    width: 100%;
    max-width: none;
    padding: 0;
}

/* Keep the homepage hero flush under the native category bar.
   WordPress content/autop wrappers can reintroduce a small cream gap before the first shortcode. */
.home .tugkamp-front-page {
    margin-top: 0;
}

.home .tugkamp-front-page > :first-child {
    margin-top: 0;
}

.home .tugkamp-front-page > p:first-child {
    margin: 0;
    padding: 0;
}

.home .tugkamp-front-page > p:first-child:empty {
    display: none;
}

.home .tugkamp-front-page .tk-home-hero {
    margin-top: 0;
}

.home .tugkamp-front-page > p:first-child,
.home .tugkamp-front-page > p:first-child:empty,
.home .tugkamp-front-page > p:first-child:has(.tk-home-hero) {
    margin: 0;
    padding: 0;
    min-height: 0;
    line-height: 0;
}

.home .tugkamp-front-page > br:first-child {
    display: none;
}

.home .tugkamp-front-page > .tk-home-hero:first-child,
.home .tugkamp-front-page > p:first-child + .tk-home-hero {
    margin-top: 0;
}


.home .tugkamp-front-page--native {
    display: block;
    margin-top: 0;
    padding-top: 0;
}

.home .tugkamp-front-page--native > .tk-home-hero:first-child {
    margin-top: 0;
}

.tugkamp-entry-title { margin: 0 0 16px; }


/* Header/footer styling lives in assets/css/tugkamp-native-header-footer.css. */
