
/* Local Inter font-face for performance and swap */
@font-face {
    font-family: 'Inter';
    src: url('./../fonts/Inter_28pt-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('./../fonts/Inter_28pt-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('./../fonts/Inter_28pt-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('./../fonts/Inter_28pt-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Denton';
    src: url('./../fonts/Denton-RegularItalic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Helvetica Now Display';
    src: url('./../fonts/HelveticaNowDisplay-Bold (1).ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Base Typography */
@layer base {
    body {
        font-family: 'Inter', sans-serif;
        font-weight: 400;
        font-style: normal;
    }
    
    /* Headings use Helvetica Now Display Bold */
    h1, h2, h3, h4, h5, h6,
    .heading {
        font-family: 'Helvetica Now Display', 'Inter', sans-serif;
        font-weight: 700;
        font-style: normal;
    }
    
    /* Bold text */
    strong, b {
        font-weight: 700;
    }
    
    /* Italic text */
    em, i {
        font-style: italic;
    }
}

/* Special Text Styling - for #text# syntax */
@layer utilities {
    .denton-text,
    .font-denton {
        font-family: 'Denton', serif!important;
        font-weight: 400!important;
        font-style: italic!important;
    }
    .font-heading{
        font-family: 'Helvetica Now Display', 'Inter', sans-serif!important;
        font-weight: 700!important;
        font-style: normal!important;
    }
}

/* Auto Line Height - scales proportionally with font size */
@layer base {
    /* Apply good line-height to WYSIWYG content */
    .acf-editor-wrap p,
    .acf-editor-wrap div,
    .acf-editor-wrap span,
    .acf-editor-wrap h1,
    .acf-editor-wrap h2,
    .acf-editor-wrap h3,
    .acf-editor-wrap h4,
    .acf-editor-wrap h5,
    .acf-editor-wrap h6 {
        line-height: 1.2 !important; /* 120% of font size - good for headings */
    }
    
    /* Frontend auto line-height for all flexible component content */
    [class*="font-heading"],
    [class*="font-denton"],
    [class*="font-body"],
    [style*="font-size"] {
        line-height: 1.2 !important; /* Headings: 120% */
    }
    
    /* Body text should have more comfortable reading line-height */
    .font-body,
    [class*="text-sm"],
    [class*="text-base"] {
        line-height: 1.5 !important; /* Body: 150% */
    }
    
    /* Tiny text */
    [class*="text-xs"] {
        line-height: 1.4 !important;
    }
    
    /* Allow manual override with Tailwind leading classes */
    [class*="leading-"] {
        line-height: var(--tw-leading) !important;
    }
}
