/* =====================================================
   INTER FONT – HEADINGS
   Usage:
   h1, h2 → 700
   h3, h4 → 600
   h5, h6 → 500
   Optional text → 400
===================================================== */


/* Inter – Regular (400) */

@font-face {
    font-family: 'Inter';
    src: url('https://files.pyaretemplates.com/2025/12/inter-regular.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/inter-regular.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/inter-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


/* Inter – Medium (500) */

@font-face {
    font-family: 'Inter';
    src: url('https://files.pyaretemplates.com/2025/12/inter-500.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/inter-500.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/inter-500.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}


/* Inter – SemiBold (600) */

@font-face {
    font-family: 'Inter';
    src: url('https://files.pyaretemplates.com/2025/12/inter-600.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/inter-600.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/inter-600.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}


/* Inter – Bold (700) */

@font-face {
    font-family: 'Inter';
    src: url('https://files.pyaretemplates.com/2025/12/inter-700.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/inter-700.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/inter-700.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}


/* =====================================================
   ROBOTO FONT – BODY / BUTTONS / LINKS
   Usage:
   Paragraphs → 400
   Buttons, links, strong text → 500
===================================================== */


/* Roboto – Regular (400) */

@font-face {
    font-family: 'Roboto';
    src:
        url('https://files.pyaretemplates.com/2025/12/roboto-400.woff2') format('woff2'),
        url('https://files.pyaretemplates.com/2025/12/roboto-400.woff') format('woff'),
        url('https://files.pyaretemplates.com/2025/12/roboto-400.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


/* Roboto – Medium (500) */

@font-face {
    font-family: 'Roboto';
    src: url('https://files.pyaretemplates.com/2025/12/roboto-500.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/roboto-500.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/roboto-500.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}


/* =====================================================
   LILY SCRIPT – DECORATIVE / OPTIONAL
   Usage:
   Quotes, hero text, highlights only
===================================================== */


/* Lily Script – Regular (400) */

@font-face {
    font-family: 'Lily Script';
    src: url('https://files.pyaretemplates.com/2025/12/lily-script.woff2') format('woff2'), url('https://files.pyaretemplates.com/2025/12/lily-script.woff') format('woff'), url('https://files.pyaretemplates.com/2025/12/lily-script.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


/* =====================================================
   GLOBAL FONT VARIABLES (OPTIONAL BUT RECOMMENDED)
   Works with:
   - Elementor
   - Gutenberg
   - Custom templates
===================================================== */

:root {
    --font-heading: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    --font-body: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    --font-script: 'Lily Script', cursive;
}


/* =====================================================
   DEFAULT TYPOGRAPHY RULES (SAFE GLOBALS)
===================================================== */


/* Headings */

h1,
h2 {
    font-weight: 700;
}

h3,
h4 {
    font-weight: 600;
}

h5,
h6 {
    font-weight: 500;
}


/* Body text */

body,
p {
    font-family: var(--font-body);
    font-weight: 400;
}


/* Buttons, links, emphasis */

a,
button,
input,
strong,
b {
    font-family: var(--font-body);
    font-weight: 500;
}


/* Utility class for Lily Script */

.lily-font {
    font-family: var(--font-script);
    font-weight: 400;
}


/* ========================
   Base Typography
======================== */

p {
    line-height: 1.6;
    font-size: clamp(15px, 1vw + 14px, 18px);
    cursor: default;
    margin-bottom: 1em;
    color: var(--text);
}


/* ========================
   Headings
======================== */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading);
    line-height: 1.2;
    margin: 0.8em 0 0.5em;
    cursor: default;
    color: var(--text);
}


/* Headings */

h1 {
    font-size: clamp(1.875rem, 1.2rem + 2vw, 2.25rem);
}

h2 {
    font-size: clamp(1.688rem, 1rem + 1.5vw, 2.063rem);
}

h3 {
    font-size: clamp(1.5rem, 0.9rem + 1vw, 1.875rem);
}

h4 {
    font-size: clamp(1.375rem, 0.8rem + 0.8vw, 1.688rem);
}

h5 {
    font-size: clamp(1.25rem, 0.7rem + 0.6vw, 1.5rem);
}

h6 {
    font-size: clamp(1.125rem, 0.6rem + 0.4vw, 1.313rem);
}

section h1,
article h1,
aside h1,
nav h1 {
    font-size: clamp(1.875rem, 1.2rem + 2vw, 2.25rem);
}