/**
 * FZ Group — tipografi & skala teks seragam (Company home + halaman dalam)
 * Selaras dengan section di corporate.blade.php
 */

:root {
    --fz-font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;
    --fz-font-size-body: clamp(0.9375rem, 1.5vw, 1.0625rem);
    --fz-line-height-body: 1.75;
    --fz-heading-1: clamp(1.75rem, 5vw, 2.75rem);
    --fz-heading-2: clamp(1.5rem, 4vw, 2.25rem);
    --fz-heading-3: clamp(1.125rem, 2.5vw, 1.35rem);
    --fz-heading-4: clamp(1rem, 2vw, 1.2rem);
    --fz-text-muted: #5a6278;
    --fz-heading-color: #3a6fd4;
    --fz-heading-dark: #1a1a2e;
    --fz-primary: #4b8bf9;
    --fz-accent: #1c99fe;
    --fz-section-y: clamp(56px, 8vw, 96px);
    --fz-block-gap: clamp(20px, 3vw, 32px);
    --fz-text-gap: 1.25rem;
}

/* Font dasar — seluruh situs publik */
body.fz-site,
body.fz-corporate-page {
    --font-primary: var(--fz-font-family);
    --font-size-b1: var(--fz-font-size-body);
    --line-height-b1: var(--fz-line-height-body);
    --color-gray: var(--fz-text-muted);
    font-family: var(--fz-font-family);
    font-size: var(--fz-font-size-body);
    line-height: var(--fz-line-height-body);
    color: var(--fz-text-muted);
    -webkit-font-smoothing: antialiased;
}

.fz-inner-page {
    --font-primary: var(--fz-font-family);
    --font-size-b1: var(--fz-font-size-body);
    --line-height-b1: var(--fz-line-height-body);
    --color-gray: var(--fz-text-muted);
    font-family: var(--fz-font-family);
    font-size: var(--fz-font-size-body);
    line-height: var(--fz-line-height-body);
    color: var(--fz-text-muted);
}

body.fz-corporate-page .main-page-wrapper {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}

/* Judul section (layout lama + Company) */
.fz-site .section-title h2.title,
.fz-inner-page .section-title h2.title,
.fz-inner-page .section-title h3.title,
body.fz-corporate-page .fz-corporate-content .theme-title:not(.fz-divisions__header) h2,
body.fz-corporate-page .theme-title:not(.fz-divisions__header) h2 {
    font-family: var(--fz-font-family) !important;
    font-size: var(--fz-heading-2) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin-bottom: 1rem !important;
    color: var(--fz-heading-color) !important;
}

.fz-site .section-title h1.title,
.fz-inner-page .section-title h1.title,
.fz-inner-page .fz-page-hero .section-title h1.title {
    font-family: var(--fz-font-family) !important;
    font-size: var(--fz-heading-1) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.fz-site .section-title span.subtitle,
.fz-inner-page .section-title span.subtitle,
body.fz-corporate-page .fz-corporate-content [class*="__eyebrow"] {
    font-family: var(--fz-font-family) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    line-height: 1.4 !important;
}

.fz-site .section-title p,
.fz-inner-page .section-title p,
.fz-inner-page .section-title .description,
body.fz-corporate-page .fz-corporate-content .theme-title:not(.fz-divisions__header) p {
    font-family: var(--fz-font-family) !important;
    font-size: var(--fz-font-size-body) !important;
    line-height: var(--fz-line-height-body) !important;
    color: var(--fz-text-muted) !important;
}

.fz-inner-page h3,
.fz-inner-page h4,
.fz-site .rn-about-area h3,
.fz-site .rn-about-area h4 {
    font-family: var(--fz-font-family);
    font-size: var(--fz-heading-3);
    font-weight: 700;
    line-height: 1.35;
    color: var(--fz-heading-dark);
}

.fz-inner-page p,
.fz-site .rn-about-area p {
    font-size: var(--fz-font-size-body);
    line-height: var(--fz-line-height-body);
    color: var(--fz-text-muted);
}

.fz-inner-page .fz-page-hero .section-title .description {
    font-size: clamp(0.95rem, 2.2vw, 1.125rem);
    line-height: var(--fz-line-height-body);
}

/* Spacing section dalam halaman */
.fz-inner-page .ptb--100,
.fz-inner-page .ptb--120,
.fz-inner-page .section-spacing {
    padding-top: var(--fz-section-y) !important;
    padding-bottom: var(--fz-section-y) !important;
}

.fz-inner-page .section-title.mb--60,
.fz-inner-page .section-title.mb--50 {
    margin-bottom: var(--fz-block-gap) !important;
}

/* Boltu corporate — samakan font dengan section FZ */
body.fz-corporate-page #theme-main-banner .container h1,
body.fz-corporate-page .theme-title h2,
body.fz-corporate-page .theme-title p,
body.fz-corporate-page .fz-corporate-content p {
    font-family: var(--fz-font-family);
}

body.fz-corporate-page .theme-title:not(.fz-divisions__header) h2 {
    font-size: var(--fz-heading-2) !important;
}

body.fz-corporate-page .theme-title:not(.fz-divisions__header) p {
    font-size: var(--fz-font-size-body) !important;
    line-height: var(--fz-line-height-body) !important;
}

/* Timpa font Boltu (Nunito / Work Sans) di halaman Company */
body.fz-corporate-page .main-page-wrapper,
body.fz-corporate-page .main-page-wrapper .theme-title,
body.fz-corporate-page .main-page-wrapper h1,
body.fz-corporate-page .main-page-wrapper h2,
body.fz-corporate-page .main-page-wrapper h3,
body.fz-corporate-page .main-page-wrapper h4,
body.fz-corporate-page .main-page-wrapper h5,
body.fz-corporate-page .main-page-wrapper h6,
body.fz-corporate-page .main-page-wrapper p,
body.fz-corporate-page .main-page-wrapper li,
body.fz-corporate-page .main-page-wrapper .button-grp {
    font-family: var(--fz-font-family) !important;
}

.fz-inner-page .fz-division-card h4,
.fz-inner-page .fz-division-card p,
.fz-inner-page .btn-default {
    font-family: var(--fz-font-family);
}

.fz-inner-page .fz-division-card h4 {
    font-size: var(--fz-heading-4) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    color: var(--fz-heading-dark) !important;
}
