:root {
--cla-primary:       #1A6B8A; --cla-primary-dark:  #124E67;
--cla-primary-light: #D6EBF3;
--cla-accent:        #4CAF8F; --cla-neutral-100:   #F7F9FB;
--cla-neutral-300:   #DDE5EC;
--cla-neutral-600:   #6B7E8F;
--cla-neutral-900:   #1C2B35;
--cla-white:         #FFFFFF;
--cla-font-body:     'Inter', sans-serif;
--cla-font-heading:  'Playfair Display', serif;
--cla-radius:        6px;
--cla-radius-lg:     12px;
--cla-shadow:        0 2px 12px rgba(26, 107, 138, 0.10);
--cla-transition:    0.25s ease;
} body {
font-family: var(--cla-font-body);
color: var(--cla-neutral-900);
background-color: var(--cla-white);
-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 {
font-family: var(--cla-font-heading);
color: var(--cla-neutral-900);
line-height: 1.25;
}
a {
color: var(--cla-primary);
transition: color var(--cla-transition);
}
a:hover {
color: var(--cla-primary-dark);
text-decoration: none;
} .site-header {
background-color: var(--cla-white);
border-bottom: 2px solid var(--cla-primary-light);
box-shadow: var(--cla-shadow);
} .site-branding .site-title a {
color: var(--cla-primary-dark);
font-family: var(--cla-font-heading);
font-weight: 700;
font-size: 1.5rem;
} .main-navigation a {
color: var(--cla-neutral-900);
font-weight: 500;
font-size: 0.95rem;
letter-spacing: 0.01em;
transition: color var(--cla-transition);
}
.main-navigation a:hover,
.main-navigation .current-menu-item > a {
color: var(--cla-primary);
} .main-navigation .sub-menu {
background: var(--cla-white);
border-top: 2px solid var(--cla-primary);
border-radius: 0 0 var(--cla-radius) var(--cla-radius);
box-shadow: var(--cla-shadow);
}
.main-navigation .sub-menu a:hover {
background-color: var(--cla-primary-light);
color: var(--cla-primary-dark);
}  .elementor-button.elementor-button-primary,
.elementor-button[type="submit"],
.wp-block-button__link {
background-color: var(--cla-primary) !important;
color: var(--cla-white) !important;
border-radius: var(--cla-radius) !important;
border: none !important;
font-family: var(--cla-font-body);
font-weight: 600;
letter-spacing: 0.02em;
transition: background-color var(--cla-transition), transform var(--cla-transition);
}
.elementor-button.elementor-button-primary:hover,
.elementor-button[type="submit"]:hover,
.wp-block-button__link:hover {
background-color: var(--cla-primary-dark) !important;
transform: translateY(-1px);
} .elementor-button.elementor-button-secondary {
background-color: transparent !important;
color: var(--cla-primary) !important;
border: 2px solid var(--cla-primary) !important;
border-radius: var(--cla-radius) !important;
font-weight: 600;
transition: all var(--cla-transition);
}
.elementor-button.elementor-button-secondary:hover {
background-color: var(--cla-primary-light) !important;
}  .section-hero {
background-color: var(--cla-primary);
color: var(--cla-white);
}
.section-hero h1,
.section-hero h2 {
color: var(--cla-white);
} .section-light {
background-color: var(--cla-neutral-100);
} .elementor-widget-image-box .elementor-image-box-wrapper {
background: var(--cla-white);
border-radius: var(--cla-radius-lg);
box-shadow: var(--cla-shadow);
padding: 2rem;
transition: box-shadow var(--cla-transition), transform var(--cla-transition);
}
.elementor-widget-image-box .elementor-image-box-wrapper:hover {
box-shadow: 0 8px 28px rgba(26, 107, 138, 0.18);
transform: translateY(-3px);
}
.elementor-widget-image-box .elementor-image-box-title {
color: var(--cla-primary-dark);
font-family: var(--cla-font-heading);
} .elementor-icon-box-icon .elementor-icon {
color: var(--cla-primary);
transition: color var(--cla-transition);
}
.elementor-icon-box-wrapper:hover .elementor-icon {
color: var(--cla-accent);
}
.elementor-icon-box-title {
color: var(--cla-primary-dark);
font-family: var(--cla-font-heading);
} .elementor-divider-separator {
border-color: var(--cla-primary-light);
} .wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea,
.elementor-form .elementor-field-group input,
.elementor-form .elementor-field-group textarea,
.elementor-form .elementor-field-group select {
border: 1.5px solid var(--cla-neutral-300);
border-radius: var(--cla-radius);
color: var(--cla-neutral-900);
background-color: var(--cla-white);
font-family: var(--cla-font-body);
transition: border-color var(--cla-transition), box-shadow var(--cla-transition);
}
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.elementor-form .elementor-field-group input:focus,
.elementor-form .elementor-field-group textarea:focus,
.elementor-form .elementor-field-group select:focus {
border-color: var(--cla-primary);
box-shadow: 0 0 0 3px rgba(26, 107, 138, 0.12);
outline: none;
}
.wpcf7-submit,
.elementor-form .elementor-button[type="submit"] {
background-color: var(--cla-primary) !important;
color: var(--cla-white) !important;
border: none !important;
border-radius: var(--cla-radius) !important;
font-weight: 600;
cursor: pointer;
transition: background-color var(--cla-transition);
}
.wpcf7-submit:hover,
.elementor-form .elementor-button[type="submit"]:hover {
background-color: var(--cla-primary-dark) !important;
} .site-footer {
background-color: var(--cla-neutral-900);
color: var(--cla-neutral-300);
font-size: 0.875rem;
}
.site-footer a {
color: var(--cla-primary-light);
transition: color var(--cla-transition);
}
.site-footer a:hover {
color: var(--cla-white);
}
.site-footer .widget-title {
color: var(--cla-white);
font-family: var(--cla-font-heading);
border-bottom: 2px solid var(--cla-primary);
padding-bottom: 0.5rem;
margin-bottom: 1rem;
} .site-info {
border-top: 1px solid rgba(255, 255, 255, 0.08);
padding-top: 1rem;
text-align: center;
font-size: 0.8rem;
color: var(--cla-neutral-600);
}
.site-info a {
color: var(--cla-primary-light);
} @media (max-width: 768px) {
:root {
--cla-radius-lg: 8px;
}
.elementor-widget-image-box .elementor-image-box-wrapper {
padding: 1.25rem;
}
}