.elementor-85 .elementor-element.elementor-element-b6e3557{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-85 .elementor-element.elementor-element-2069cb3{--spacer-size:50px;}.elementor-85 .elementor-element.elementor-element-5197a5b{--spacer-size:50px;}/* Start custom CSS *//* --- Ocenexvr Global Theme V1.0 (Blue/White) --- */

/* 1. ==== ROOT VARIABLES & FONTS ==== */
:root {
    /* Color Palette */
    --oc-primary-color: #0d6efd;
    --oc-primary-hover: #0b5ed7;
    --oc-light-blue: #f0f6ff; /* A very light blue for backgrounds */
    --oc-text-color: #212529; /* Dark, but not pure black */
    --oc-light-text: #6c757d;
    --oc-border-color: #dee2e6;
    --oc-white: #ffffff;
    --oc-page-bg: #f0f2f5;

    /* Typography */
    --oc-heading-font: 'Montserrat', sans-serif;
    --oc-body-font: 'Lora', serif;

    /* Layout */
    --oc-border-radius: 8px;
    --oc-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.07);
}

/* 2. ==== GLOBAL STYLES ==== */
body {
    background-color: var(--oc-page-bg);
    color: var(--oc-text-color);
    font-family: var(--oc-body-font);
    line-height: 1.7;
}

/* Main Content Wrapper */
#page {
    background: transparent;
}
#content {
    padding-top: 30px;
    padding-bottom: 30px;
}
/* This creates the main white content area */
.container, .site-content, .entry-content, main > article, .ocenexvr-profile-container, .ocenexvr-papers-archive {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
}

/* 3. ==== TYPOGRAPHY ==== */
h1, h2, h3, h4, h5, h6, .site-title a {
    font-family: var(--oc-heading-font);
    font-weight: 600;
    color: var(--oc-text-color);
    clear: both;
}
h1, .entry-title {
    font-size: 2.5rem; /* 40px */
    margin-bottom: 20px;
}
h2 { font-size: 2rem; } /* 32px */
h3 { font-size: 1.75rem; } /* 28px */

p {
    margin-bottom: 1.5em;
    font-size: 1.125rem; /* 18px for better readability */
}

a {
    color: var(--oc-primary-color);
    text-decoration: none;
    transition: color 0.2s ease;
}
a:hover {
    color: var(--oc-primary-hover);
    text-decoration: underline;
}

/* 4. ==== HEADER & NAVIGATION ==== */
.site-header {
    background-color: var(--oc-white);
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    border-bottom: 1px solid var(--oc-border-color);
}
.main-navigation a {
    font-family: var(--oc-heading-font);
    font-weight: 500;
    padding: 10px 15px;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease-in-out;
}
.main-navigation li.current-menu-item > a,
.main-navigation a:hover {
    color: var(--oc-primary-color);
    border-bottom-color: var(--oc-primary-color);
}

/* 5. ==== FORMS & BUTTONS (GLOBAL) ==== */
/* Standardizing all buttons */
.button, button, input[type="button"], input[type="reset"], input[type="submit"], .wp-block-button__link {
    display: inline-block;
    padding: 12px 28px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-align: center !important;
    text-decoration: none !important;
    border-radius: var(--oc-border-radius) !important;
    border: 1px solid transparent !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    font-family: var(--oc-heading-font);
    background-color: var(--oc-primary-color) !important;
    color: var(--oc-white) !important;
}
.button:hover, button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
    background-color: var(--oc-primary-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}
/* Secondary button style */
.button.button-secondary {
    background-color: transparent !important;
    border-color: var(--oc-light-text) !important;
    color: var(--oc-light-text) !important;
}
.button.button-secondary:hover {
    background-color: var(--oc-light-text) !important;
    color: var(--oc-white) !important;
}

/* Standardizing all form inputs */
input[type="text"], input[type="email"], input[type="password"], input[type="search"], select, textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid var(--oc-border-color);
    border-radius: 6px;
    font-size: 16px;
    font-family: var(--oc-body-font);
    transition: border-color 0.2s, box-shadow 0.2s;
}
input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: var(--oc-primary-color);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.25);
}

/* 6. ==== PLUGIN-SPECIFIC HARMONIZATION ==== */

/* General Card Style for all plugins */
.ocenexvr-card, .paper-grid-item, .ocenexvr-form-wrap, article.research_paper, article.faq_topic {
    background-color: var(--oc-white) !important;
    border: 1px solid var(--oc-border-color);
    border-radius: var(--oc-border-radius);
    box-shadow: var(--oc-box-shadow);
    padding: 30px;
    margin-bottom: 25px;
}

/* Make sure plugin containers don't have extra backgrounds */
.ocenexvr-profile-container, .ocenexvr-papers-archive, .ocenexvr-faq-archive {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
}

/* Profile specific sidebar */
.profile-sidebar {
    background-color: var(--oc-light-blue) !important;
}

/* Paper Archive Filters */
.paper-filters, .faq-filters {
    background: var(--oc-white);
    padding: 20px;
    margin-bottom: 30px;
    border-radius: var(--oc-border-radius);
    border: 1px solid var(--oc-border-color);
}
.paper-filters form, .faq-filters form {
    gap: 15px;
}

/* Single paper PDF viewer */
.pdf-embed-container iframe {
    border: 1px solid var(--oc-border-color);
    border-radius: var(--oc-border-radius);
}
.paper-viewer-section .download-button {
    margin-top: 20px;
}

/* 7. ==== FOOTER ==== */
.site-footer {
    background-color: #2c3e50; /* A dark, elegant blue/grey */
    color: #bdc3c7; /* Light grey text */
    padding: 40px 0;
    margin-top: 40px;
}
.site-footer a {
    color: var(--oc-white);
}
.site-footer a:hover {
    color: #3498db; /* A lighter blue on hover */
}/* End custom CSS */