/* Theme Name: Infetech Child Theme
Theme URI: https://themeforest.net/user/ovatheme/portfolio
Description: Child theme of infetech with local fonts and custom styling
Author: Ovatheme
Author URI: https://themeforest.net/user/ovatheme
Template: infetech
Version: 1.1.0
Tags: two-columns, three-columns, left-sidebar, right-sidebar, custom-menu, editor-style, featured-images, flexible-header, full-width-template, post-formats, rtl-language-support, sticky-post, translation-ready
Text Domain:  infetech-child
*/

/* Parent theme styles loaded via functions.php - don't use @import as it can cause loading order issues */

/* Local Font Declarations */

/* Roboto Font Family */
@font-face {
    font-family: 'Roboto';
    src: url('./fonts/roboto/Roboto-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('./fonts/roboto/Roboto-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('./fonts/roboto/Roboto-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('./fonts/roboto/Roboto-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Roboto Slab Font Family */
@font-face {
    font-family: 'Roboto Slab';
    src: url('./fonts/roboto-slab/RobotoSlab-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Slab';
    src: url('./fonts/roboto-slab/RobotoSlab-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Slab';
    src: url('./fonts/roboto-slab/RobotoSlab-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Slab';
    src: url('./fonts/roboto-slab/RobotoSlab-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Lato Font Family */
@font-face {
    font-family: 'Lato';
    src: url('./fonts/lato/Lato-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('./fonts/lato/Lato-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('./fonts/lato/Lato-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Catamaran Font Family */
@font-face {
    font-family: 'Catamaran';
    src: url('./fonts/catamaran/Catamaran-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Catamaran';
    src: url('./fonts/catamaran/Catamaran-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Catamaran';
    src: url('./fonts/catamaran/Catamaran-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Catamaran';
    src: url('./fonts/catamaran/Catamaran-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Open Sans Font Family */
@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/open-sans/OpenSans-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/open-sans/OpenSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/open-sans/OpenSans-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/open-sans/OpenSans-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/open-sans/OpenSans-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ========================================
   CUSTOM SITE STYLING
   (Moved from parent theme for safety)
======================================== */

/* Custom border-radius styling for service elements */
.ova-service-2 {
    border-radius: 10px;
}

.ova-icon-box.ova-icon-box-template2 {
    border-radius: 10px;
}

.ova-icon-box.ova-icon-box-template2 > .mask {
    border-radius: 10px;
}

.ova-icon-box.ova-icon-box-template2:after {
    border-radius: 10px;
}

.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper {
    border-radius: 10px;
}

.elementor-widget-icon-box .elementor-widget-container .elementor-icon-box-wrapper:before {
    border-radius: 10px;
}

/* Custom icon styling for SNsolutions */
[class*=" icon-SNsolutions-"]:before {
    opacity: .8;
}

/* ========================================
   ELEMENTOR COMPATIBILITY FIXES
   Minimal approach to avoid breaking links
======================================== */

/* Only fix button colors - leave everything else alone */
.elementor-widget-button .elementor-button,
.elementor-widget-button .elementor-button-text {
    color: inherit;
    background-color: inherit;
}

/* ========================================
   LOCAL FONT OVERRIDES
   Set local fonts as primary site fonts
======================================== */

:root {
    /* Override theme's primary fonts with local fonts */
    --font-primary: 'Roboto', sans-serif;
    --font-secondary: 'Roboto Slab', serif;
    --font-heading: 'Roboto', sans-serif;
    --font-body: 'Roboto', sans-serif;
    
    /* Alternative fonts available */
    --font-alt-1: 'Lato', sans-serif;
    --font-alt-2: 'Catamaran', sans-serif;
    --font-alt-3: 'Open Sans', sans-serif;
}

/* Global font family overrides */
body {
    font-family: var(--font-primary) !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--font-heading) !important;
}

/* Elementor font overrides */
.elementor-widget-heading .elementor-heading-title {
    font-family: var(--font-heading) !important;
}

.elementor-widget-text-editor {
    font-family: var(--font-body) !important;
}

/* Menu and navigation fonts */
.main-navigation,
.menu,
nav {
    font-family: var(--font-primary) !important;
}

/* Button fonts */
.btn, .button, 
.elementor-button,
input[type="submit"],
input[type="button"] {
    font-family: var(--font-primary) !important;
}

/* Form element fonts */
input, textarea, select {
    font-family: var(--font-body) !important;
}

/* Widget fonts */
.widget, .sidebar {
    font-family: var(--font-body) !important;
}

.widget-title {
    font-family: var(--font-heading) !important;
}