/* =========================================================
   ROYAL ROADS (RRU) – ELEMENTOR CSS SYSTEM
   Usage:
   - Add class names (no dots) in Elementor → Advanced → CSS Classes
   - Do NOT add CSS in Elementor
   ========================================================= */
/* =========================================================
   FORCE ELEMENTOR HEADING BASELINE
   ========================================================= */


@font-face {
  font-family: "Auto1";
  src: url("/wp-content/uploads/2026/04/Auto1Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}


body {
  font-family: "Auto 1", serif;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  line-height: 1.6;
  font-weight: 400;
  color: #1f2933; /* Deep academic charcoal */
  background-color: #ffffff;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.page-content a:not(.elementor-button) {
    background-color: transparent;
    color: #0c8095!important;
    font-weight:600;
    text-decoration: none;
}

.page-content a:not(.elementor-button):hover {
    
    text-decoration: underline!important;
}

.elementor .elementor-heading-title {
  font-family: 'Auto1', system-ui, serif !important;
  color: var(--rru-navy);
  font-weight: 600;
  line-height: 1.25;
}

ul.sub-menu li.menu-item a{
font-weight:700!important}

/* =========================================================
   HEADING SIZE SYSTEM (ELEMENTOR-SAFE)
   ========================================================= */

/* Page title */
.rru-page-title.elementor-heading-title {
  font-size: clamp(2.5rem, 4.5vw, 3.25rem);
}

/* Section headings */
.rru-section-title.elementor-heading-title {
  font-size: 1.75rem;
}

/* Hero headings */
.rru-hero-title.elementor-heading-title {
  font-size: clamp(3rem, 5vw, 4rem);
  line-height: 1.1;
}


/* =====================================================
   GLOBAL HEADINGS – Auto1 + Fluid Clamp Scale
   Royal Roads–style academic hierarchy (non-derivative)
   ===================================================== */

h1,
.elementor-heading-title.h1 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 900;
  font-size: clamp(2.25rem, 1.8rem + 2.2vw, 3.25rem);
  line-height: 1.15;
  margin: 0 0 0.6em 0;
}

h2,
.elementor-heading-title.h2 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 900;
  font-size: clamp(1.9rem, 1.5rem + 1.6vw, 2.6rem);
  line-height: 1.2;
  margin: 1.2em 0 0.5em 0;
}

h3,
.elementor-heading-title.h3 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 900;
  font-size: clamp(1.17rem, 1.3rem + 1.1vw, 2.1rem);
  line-height: 1.25;
  margin: 1.1em 0 0.4em 0;
}

h4,
.elementor-heading-title.h4 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 900;
  font-size: clamp(1.35rem, 1.15rem + 0.7vw, 1.7rem);
  line-height: 1.3;
  margin: 1em 0 0.35em 0;
}

h5,
.elementor-heading-title.h5 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 600;
  font-size: clamp(1.15rem, 1.05rem + 0.4vw, 1.35rem);
  line-height: 1.35;
  margin: 0.9em 0 0.3em 0;
}

h6,
.elementor-heading-title.h6 {
  font-family: "Auto1", Arial, sans-serif;
  font-weight: 600;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.15rem);
  line-height: 1.4;
  margin: 0.8em 0 0.25em 0;
}

.field-intro-title {
    font-size: 4rem;
    font-weight: 900;
    line-height: 1.1;
    color: #363948;
    margin-bottom: 3rem;
    position: relative;
}

.field-intro-title:before {
    content: "";
    width: 2rem;
    height: 2rem;
    background-color: #51c1d5;
    position: absolute;
    top: -2rem;
    left: -2rem;
}


/* =========================================================
   1. DESIGN TOKENS (RRU-ALIGNED)
   ========================================================= */

:root {
    --rru-body:#666666
    --rru-link-blue: #0c8095;
    --rru-header-grey: #444757;
    --rru-dark-grey: #363948;
    --rru-navy: #202945;
    --rru-light-blue: #51c1d5;
    --rru-putty: #b3b39a;
    --off-white: #edf0eb;
    --rru-lime: #9eac48;
    --rru-leaf: #54a657;
    --rru-teal: #5cb498;
    --rru-turquoise: #00adb1;
    --rru-blue: #0098d7;
    --rru-greyblue: #6584c3;
    --rru-lilac: #756ab1;
    --rru-grape: #7c3396;
    --rru-pink: #bc006f;
    --rru-orange: #d8643a;
    --rru-gold: #dba057;
    --rru-skyblue: #b3eef5;
    }

/* =========================================================
   2. ELEMENTOR GLOBAL BASELINE
   ========================================================= */

.elementor {
  font-family: 'Auto1', system-ui, sans-serif;
  color: var(--rru-body);
}

.elementor-heading-title {
  color: var(--rru-navy);
  font-weight: 900;
}

.elementor-text-editor p {
  color: var(--rru-body);
  line-height: 1.65;
}


/* =========================================================
   3. SECTION & LAYOUT CLASSES
   ========================================================= */

.rru-section {
  padding-block: var(--rru-space-lg);
}

.rru-section-tight {
  padding-block: var(--rru-space-md);
}

.rru-section-wide {
  max-width: 1200px;
  margin-inline: auto;
}

.rru-section-alt {
  background-color: var(--rru-off-white);
}

.rru-section-divider {
  border-top: 1px solid var(--rru-putty);
}


/* =========================================================
   4. TYPOGRAPHY ROLES
   ========================================================= */

.rru-page-title {
  font-size: clamp(2.5rem, 4.5vw, 3.25rem);
  line-height: 1.2;
  margin-bottom: var(--rru-space-sm);
  font-weight:900
}

.rru-section-title {
  font-size: 1.75rem;
  margin-bottom: var(--rru-space-sm);
  font-weight:900
}

.rru-subtitle {
  font-size: 1.125rem;
  color: var(--rru-grey-700);
  font-weight:700
}

.rru-lead {
  font-size: 1.125rem;
  color: var(--rru-grey-700);
  max-width: 65ch;
  font-weight: 400
}

.rru-small-print {
  font-size: 0.875rem;
  color: var(--rru-grey-500);
  font-weight:300
}

.rru-hero-title-small{
font-weight:900}

.rru-hero-title{
font-weight:900}

.rru-over{
font-size: 0.875rem;
  color: var(--rru-grey-500);
  font-weight:900
}

/* =========================================================
   5. TEXT HELPERS
   ========================================================= */


/* =========================================================
   6. BUTTONS & LINKS
   ========================================================= */

.rru-btn {
  display: inline-block;
  font-weight: 600;
  padding: 0.65em 1.25em;
  border-radius: 2px;
  text-decoration: none;
}

.rru-btn-primary {
  background-color: var(rru-dark-grey);
  color: #ffffff;
}

.rru-btn-primary:hover {
  background-color: var(--rru-navy-dark);
}

.rru-btn-secondary {
  background-color: var(--rru-grey-100);
  color: var(--rru-navy);
}

.rru-btn-outline {
  border: 2px solid var(--rru-navy);
  color: var(--rru-navy);
  background: transparent;
}

.rru-link-inline {
  color: var(--rru-navy);
  text-decoration: underline;
}


/* =========================================================
   7. CARDS & CALLOUTS
   ========================================================= */

.rru-card {
  background-color: var(--rru-bg-white);
  padding: var(--rru-space-md);
  border-radius: var(--rru-radius-sm);
  border: 1px solid var(--rru-grey-100);
}

.rru-card-highlight {
  border-left: 4px solid var(--rru-gold);
}

.rru-callout {
  background-color: var(--rru-bg-alt);
  padding: var(--rru-space-md);
  border-left: 4px solid var(--rru-navy);
}

.rru-callout-info {
  border-left-color: var(--rru-gold);
}

.rru-callout-warning {
  border-left-color: var(--rru-copper);
}


/* =========================================================
   8. HERO & PAGE CONTEXT
   ========================================================= */

.rru-hero {
  padding-block: calc(var(--rru-space-lg) * 1.25);
}

.rru-hero-title {
  font-size: clamp(3rem, 5vw, 6rem);
  line-height: 1.1;
  text-transform: uppercase;
}
.rru-hero-title-small{
 font-size: clamp(1rem, 5vw, 2rem);
  line-height: 1.1;
  text-transform: uppercase;
}

.rru-landing .rru-section-title {
  font-size: 2rem;
  text-transform: uppercase;
}

.rru-department-home .rru-page-title {
  max-width: 20ch;
  text-transform: uppercase;
}



/* =========================================================
   9. MENU (OPTIONAL)
   ========================================================= */

.rru-menu a {
  font-family: 'Auto1', system-ui, sans-serif;
  color: var(--rru-navy);
  text-decoration: none;
}

.rru-menu a:hover {
  color: var(--rru-gold);
}

.rru-menu .current-menu-item > a {
  font-weight: 600;
}


/* =========================================================
   OVERRIDE ELEMENTOR GLOBAL FONTS (FINAL)
   ========================================================= */


/* Body text */
.elementor .elementor-text-editor,
.elementor .elementor-text-editor p,
.elementor .elementor-text-editor li {
  font-family: 'Auto1', system-ui, sans-serif;
  font-weight: 400;
}

/* Strong / emphasis */
.elementor .elementor-text-editor strong,
.elementor .elementor-heading-title span {
  font-family: 'Auto1', system-ui, sans-serif;
}


element.style {
}
a:link, a:visited {
    text-decoration: none;
}
.btn-secondary, .button-action, .field_add_attachment a, .news--pro-listing .view-footer a, .node--type-financial-aid-and-awards-item .field_application_button a {
    background-color: #363948;
    color: #fff;
}

/* =========================================
   Buttons
   ========================================= */
.btn, 
.button, 
.cta-buttons a
 {
    position: relative;
    font-family: Auto1, Helvetica Neue, helvetica, Arial, sans-serif;
    font-size: 2rem;
    font-weight: 700;
    padding: 2rem 3rem;
    letter-spacing: 1.2px;
    line-height: 1.1;
    height: auto;
    width: auto;
    text-align: center;
    display: inline-block;
    border-radius: 2px;
    z-index: 0;
    transition: all .3s ease-in-out;
    color:#fff!important
}
a.elementor-button:hover
.btn:hover,
.button:hover,
.cta-buttons a:hover{
background-color: #51c1d5;
color:#363948!important}

h2.youzify-aboutme-name {
    color: var(--yzfy-heading-color);
    font-size: 18px!important;
    font-family:Auto1, Helvetica Neue, helvetica, Arial, sans-serif;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: .02em;
    text-transform: normal;
}

.youzify .activity-header .activity-head{
color:#363948!important}