/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* ==========================================================================
   Moerlina School Design Tokens (from Figma Design System)
   ========================================================================== */
:root {
    /* Brand Colors */
    --color-coral: #d56c55;
    --color-coral-dark: #b4462e;
    --color-sage: #5b7f6c;
    --color-sage-light: #8faa9d;
    --color-sage-pale: #dee3df;

    /* Neutral & Background Tones */
    --color-cream: #f7f2ec;
    --color-cream-warm: #f1e8de;
    --color-sand: #f2dbc1;
    --color-charcoal: #333234;
    --color-charcoal-light: #999899;
    --color-white: #ffffff;

    /* Secondary Accents */
    --color-yellow: #f3df8f;
    --color-yellow-light: #faf2d6;
    --color-olive: #b3a84a;
    --color-olive-dark: #857b15;
    --color-blue: #7e98be;
    --color-blue-light: #9aaccc;
    --color-rose: #85596a;
    --color-mauve: #85596a;
    --color-mauve-dark: #6b4555;
    --color-mauve-pale: #dfd0d2;
    --color-orange: #d68832;

    /* Typography Families */
    --font-heading: 'Noyh R', sans-serif;
    --font-body: 'DM Sans', sans-serif;
    --font-accent: 'Poppins', sans-serif;

    /* Layout Tokens */
    --container-width: 1230px;
    --container-max-width: 96%;
}

body {
    overflow-x: hidden;
    background-color: var(--color-white);
    color: var(--color-charcoal);
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    font-synthesis: none;
    font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading);
    font-weight: 500;
    line-height: 0.9;
}

h1 {
    font-size: 55px;
}

h2 {
    font-size: 44px;
}

h3 {
    font-size: 35px;
}

h4 {
    font-size: 28px;
}

a {
    /*text-decoration: none !important;*/
	text-decoration:underline;
    transition: all .25s ease;
    color: inherit;
}
a:hover { color: #D56C55; }
p {
    margin-bottom: 15px;
}

ol,
ul {
    margin: 0 0 1.5em 1.125em;
	margin-left:60px;
} 
.post-template-default li { font-family: var(--font-body);
     font-size: 24px;
     line-height: 1.4;
     color: var(--color-charcoal);
}/*
.vc_custom_1788434102383 li { font-size:inherit; }
*/
blockquote {
    font-size: inherit;
    font-style: normal;
	margin: 25px 0 0;
	padding: 0 0 0 30px;
	border-left: 2px solid #F0D76C;
}
blockquote p {
	margin: 0 0 10px;
}
blockquote > :last-child {
	margin-bottom: 0;
}
blockquote cite {
	display: block;
	font-style: normal;
	font-weight: 700;
}

.overflow-hidden {
    overflow: hidden !important;
}
.overflow-visible {
    overflow: visible !important;
}
.overflow-auto {
    overflow: auto !important;
}
.vc_row.w-1200 {
    max-width: 1200px !important;
}
.text-uppercase {
    text-transform: uppercase !important;
}
.font-poppins {
    font-family: var(--font-accent) !important;
}
.font-dmsans {
    font-family: var(--font-body) !important;
}
.font-noyh {
    font-family: var(--font-heading) !important;
}

/* Full width layout with 1200px max-width container */
.grid-container {
    max-width: var(--container-width);
}

/* ==========================================================================
   Full Width Backgrounds & 1230px Centered Inner Container
   ========================================================================== */

/* WPBakery Section and Row centering */
.vc_row:not([data-vc-stretch-content="true"]) {
    max-width: var(--container-width);
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
}
.vc_row.container-small:not([data-vc-stretch-content="true"]) {
    --container-width: 1024px;
}
.vc_section.container-small .vc_row:not([data-vc-stretch-content="true"]) {
    --container-width: 1024px;
}

/* ==========================================================================
   Background Color Utilities
   ========================================================================== */
.bg-cream {
    background-color: var(--color-cream);
}

.bg-cream-warm {
    background-color: var(--color-cream-warm);
}

.bg-sage-pale {
    background-color: var(--color-sage-pale);
}

.bg-coral {
    background-color: var(--color-coral);
}

.bg-sage {
    background-color: var(--color-sage);
}

.bg-white {
    background-color: var(--color-white);
}

/* ==========================================================================
   Buttons (Reusable)
   ========================================================================== */
.vc_btn3-container .vc_btn3 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-body);
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
}
.vc_btn3.vc_btn3-size-xs { font-size: 12px; padding: 8px 18px; }
.vc_btn3.vc_btn3-size-sm { font-size: 14px; padding: 10px 25px; }
.vc_btn3.vc_btn3-size-md { font-size: 18px; padding: 12px 32px; }
.vc_btn3.vc_btn3-size-lg { font-size: 20px; padding: 14px 35px; }
.vc_btn3.vc_btn3-size-md.vc_btn3-style-outline, .vc_btn3.vc_btn3-size-md.vc_btn3-style-outline-custom { padding: 11px 31px; }
.vc_btn3.vc_btn3-size-lg.vc_btn3-style-outline, .vc_btn3.vc_btn3-size-lg.vc_btn3-style-outline-custom { padding: 13px 34px; }
.vc_btn3.vc_btn3-size-xs .vc_btn3-icon { font-size: 14px; }
.vc_btn3.vc_btn3-size-sm .vc_btn3-icon { font-size: 16px; }
.vc_btn3.vc_btn3-size-md .vc_btn3-icon { font-size: 20px; }
.vc_btn3.vc_btn3-size-lg .vc_btn3-icon { font-size: 22px; }
.moerlina-btn-inline.vc_btn3-container { display: inline-flex; flex-wrap: wrap; }
.moerlina-btn-link .vc_btn3.vc_btn3-size-xs { padding: 0 18px 0 0 !important; }
.moerlina-btn-link .vc_btn3.vc_btn3-size-sm { padding: 0 22px 0 0 !important; }
.moerlina-btn-link .vc_btn3.vc_btn3-size-md { padding: 0 26px 0 0 !important; }
.moerlina-btn-link .vc_btn3.vc_btn3-size-lg { padding: 0 28px 0 0 !important; }
.moerlina-btn-link .vc_btn3.vc_btn3-icon-right{text-align: left!important;}
.moerlina-btn-link .vc_btn3.vc_btn3-icon-right:not(.vc_btn3-o-empty) .vc_btn3-icon { right: 0 !important; }
.moerlina-btn-link.arrow-orange .vc_btn3 .vc_btn3-icon { color: var(--color-orange) !important; }
.moerlina-btn-link.arrow-sage .vc_btn3 .vc_btn3-icon { color: var(--color-sage) !important; }

/* .moerlina-btn-group .moerlina-btn:first-child {
    margin-right: 24px;
}

.moerlina-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    border-radius: 24px;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 16px;
    text-decoration: none;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
}

.moerlina-btn-outlined .vc_btn3 {
    background-image: none;
    font-size: 18px;
    border-width: 2px;
    border-style: solid;
    font-family: var(--font-body);
    font-weight: 600;
    padding: 12px 32px;
}

.moerlina-btn-outlined .vc_btn3:hover {
    border-width: 2px;
    border-style: solid;
}

.moerlina-btn-coral,
.moerlina-btn-coral .vc_btn3 {
    background-color: var(--color-coral);
    color: var(--color-white);
    border: 2px solid var(--color-coral);
    border-radius: 24px;
    padding: 10px 28px;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 16px;
    transition: all 0.25s ease-in-out;
}

.moerlina-btn-coral:hover,
.moerlina-btn-coral .vc_btn3:hover {
    background-color: var(--color-charcoal) !important;
    border-color: var(--color-charcoal) !important;
    color: var(--color-white) !important;
}



.moerlina-btn-sage,
.moerlina-btn-sage .vc_btn3 {
    background-color: var(--color-sage) !important;
    color: var(--color-white) !important;
    border: 2px solid var(--color-sage) !important;
    border-radius: 24px !important;
    padding: 12px 28px !important;
    font-family: var(--font-body) !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    transition: all 0.25s ease-in-out !important;
}

.moerlina-btn-sage:hover,
.moerlina-btn-sage .vc_btn3:hover {
    background-color: var(--color-sage-light) !important;
    border-color: var(--color-sage-light) !important;
    color: var(--color-white) !important;
}

.moerlina-btn-olive,
.moerlina-btn-olive .vc_btn3 {
    background-color: var(--color-olive) !important;
    color: var(--color-white) !important;
    border: 2px solid var(--color-olive) !important;
    border-radius: 24px !important;
    padding: 10px 31px !important;
    font-family: var(--font-body) !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    transition: all 0.25s ease-in-out !important;
}

.moerlina-btn-olive:hover,
.moerlina-btn-olive .vc_btn3:hover {
    background-color: var(--color-charcoal) !important;
    border-color: var(--color-charcoal) !important;
    color: var(--color-white) !important;
} */

/* Text Link (arrow style) */
.moerlina-text-link {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 600;
    color: var(--color-coral);
    text-decoration: none;
    transition: color 0.2s ease;
}

.moerlina-text-link:hover {
    color: var(--color-coral-dark);
}

.header-btn a {
    padding: 12px 32px !important;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 18px !important;
    transition: all 0.25s ease-in-out;
}

.header-btn a:hover {
    background-color: var(--color-coral-dark);
    color: var(--color-white);
}

/* ==========================================================================
   Section Label (small uppercase pre-heading)
   ========================================================================== */
.section-label {
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--color-sage);
    margin-bottom: 16px;
}

.entry-content:not(:first-child),
.entry-summary:not(:first-child),
.page-content:not(:first-child) {
    margin-top: 0 !important;
}

/* ==========================================================================
   1. Hero Banner Section (.moerlina-section-hero)
   ========================================================================== */
.moerlina-section-hero,
.moerlina-hero-banner {
    position: relative;
    background-image: url('assets/images/hero-bg.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    overflow: hidden;
}

.moerlina-section-hero::before,
.moerlina-hero-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.50) 0%,
            rgba(0, 0, 0, 0.20) 40%,
            rgba(0, 0, 0, 0) 70%);
    pointer-events: none;
    z-index: 1;
}

.moerlina-section-hero .vc_column_container,
.moerlina-hero-banner .vc_column_container {
    position: relative;
    z-index: 2;
}

.moerlina-hero-title,
.moerlina-section-hero h1,
.moerlina-hero-banner h1 {
    margin-bottom: 32px;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* ==========================================================================
   2. Welcome Section (.moerlina-section-welcome)
   ========================================================================== */
section.moerlina-section-welcome {
    padding-top: 80px;
    padding-bottom: 80px;
    background-position: top 70% right !important;
}

.moerlina-welcome-subheading p {
    font-family: var(--font-body);
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.1em;
    font-size: 18px;
    line-height: 1.2;
    color: var(--color-charcoal);
}

.moerlina-welcome-heading p {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 24px;
    line-height: 1.4;
    color: var(--color-charcoal);
}

/* ==========================================================================
   3-5. Feature Sections (.moerlina-section-feature)
   Two-column: text + image, alternating layout
   ========================================================================== */
/* .moerlina-section-feature {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
} */

.moerlina-feature-heading h2 {
    font-family: var(--font-heading);
    font-size: 36px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--color-charcoal);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.moerlina-feature-subtitle p,
.feature-subtitle {
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--color-charcoal);
    margin-bottom: 16px;
}

.moerlina-feature-body p {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
    color: var(--color-charcoal);
    margin-bottom: 16px;
}

.image-minus-top img {
    margin-top: -150px;
}
.image-minus-top {
    overflow: visible !important;
}

/* Explore Deeply - white bg */
.moerlina-feature-explore {
    background-color: var(--color-white);
}

/* Culture of Trust - cream bg */
.moerlina-feature-trust {
    background-color: var(--color-cream);
}

/* ==========================================================================
   6. Learning at Moerlina / Intro Section (.moerlina-section-intro)
   Two-column: left big heading, right body + link
   ========================================================================== */
.moerlina-section-explore {
    background-color: var(--color-sage-pale);
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}

.moerlina-explore-body p {
    font-family: var(--font-body);
    font-size: 24px;
    line-height: 1.4;
    color: #000000;
    margin-bottom: 24px;
    font-weight: 400;
}

/* .moerline-explore-cta-link a {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    font-size: 18px !important;
    font-weight: 600;
    color: var(--color-charcoal);
}

.moerline-explore-cta-link a i {
    color: var(--color-sage-light);
} */

/* ==========================================================================
   7. Testimonial Section (.moerlina-testimonial-section)
   ========================================================================== */
.moerlina-testimonial-section {
    background-color: var(--color-sage-pale);
    text-align: center; padding-top:100px !important; padding-bottom:120px;
}
.moerlina-testimonial-section:not([data-vc-full-width="true"]) {
    padding-right: 0;
    padding-left: 0;
    margin-right: 0;
    margin-left: 0;
}

.moerlina-testimonial-quote-box {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px 20px;
    text-align: center;
}

.moerlina-testimonial-quote-box p {
    font-family: var(--font-body);
    font-size: 24px;
    font-weight: 400;
    color: var(--color-charcoal);
    line-height: 1.4;
}

.moerlina-squiggle-icon {
    margin-bottom: 24px;
}

.moerlina-testimonial-quote-box blockquote {
    font-family: var(--font-body);
    font-size: 22px;
    line-height: 1.6;
    color: var(--color-charcoal);
    font-style: italic;
    margin: 0 0 24px 0;
    border: none;
    padding: 0;
    quotes: none;
}

.testimonial-attribution p {
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 600;
    color: var(--color-charcoal);
    line-height: 1.5;
}

/* ==========================================================================
   8. CTA Section (.moerlina-section-cta)
   Background image with dark overlay, left-aligned text
   ========================================================================== */
.moerlina-section-cta {
    position: relative;
    text-align: left;
}

section.moerlina-section-cta {
    background-position: bottom left !important;
}

.moerlina-section-cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    bottom: 0;
    background-image: url(assets/images/cta-bg.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 1;
    width: 50%;
}

.moerlina-section-cta .vc_column_container {
    position: relative;
    z-index: 2;
}

.moerlina-section-cta h2, .footer-cta-final h2 {
    font-family: var(--font-heading);
    font-size: 42px;
    font-weight: 400;
    line-height: 1.2;
    color: #ffffff !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.moerlina-cta-body p {
    font-family: var(--font-body);
    font-size: 24px;
    line-height: 1.6;
    color: #ffffff;
    margin-bottom: 32px;
}
#principles-accordion { padding-bottom: 150px; }
/* ==========================================================================
   Cards Section (.moerlina-section-cards) — reusable
   ========================================================================== */
.moerlina-section-cards {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    background-color: var(--color-white);
}

.moerlina-card {
    background-color: var(--color-cream);
    padding: 36px 30px;
    border-radius: 16px;
    height: 100%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.moerlina-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
}

.hide-desktop {
    display: none;
}

.moerlina-heading {
    font-weight: 500;
}

/* ==========================================================================
   Gravity Forms Design
   ========================================================================== */
.gform-theme--foundation { --gf-form-gap-y: 30px !important; }
.gform-theme--foundation .gform-grid-row { --gf-field-gap-y: 20px; }
.gform_confirmation_wrapper .gform_confirmation_message { padding: 15px 20px; background: #F4F8F4; border: 1px solid #B7D8B5; border-left: 5px solid #5C8A3D; border-radius: 0 !important; color: #193506; font-family: var(--font-body); font-size: 18px; font-weight: 600; line-height: 1.4; }
.gform_wrapper {
    font-family: var(--font-body);
}

.gform_wrapper .gform_required_legend, .gform_wrapper .gform_description:empty { display: none; }

.gform_wrapper .gfield_label {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 18px;
    color: var(--color-charcoal);
    margin-bottom: 8px;
}

.gform_wrapper input::placeholder, .gform_wrapper textarea::placeholder { color: var(--color-charcoal-light)!important; opacity: 1; font-size: 18px!important; font-weight: inherit; }

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select {
    font-family: var(--font-body);
    font-size: 18px;
    color: var(--color-charcoal);
    background-color: var(--color-white);
    border: 1px solid rgb(51 50 52 / 50%);
    border-radius: 0;
    padding: 12px 16px;
    width: 100%;
    height: 72px;
    box-shadow: none!important;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="tel"]:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
    border-color: var(--color-charcoal);
    outline: none;
    box-shadow: none;
}

.gform_wrapper .gfield_checkbox li label,
.gform_wrapper .gfield_radio li label {
    font-size: 18px!important;
}

.gform_wrapper .gform-footer { margin-top: 40px !important; }

.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper input[type="submit"].gform_button,
.gform_wrapper button[type="submit"].gform_button {
    background-color: var(--color-coral)!important;
    color: var(--color-white)!important;
    border: 0!important;
    padding: 14px 32px!important;
    border-radius: 30px!important;
    font-family: var(--font-body)!important;
    font-weight: 600!important;
    font-size: 18px!important;
    line-height: 1.3!important;
    cursor: pointer!important;
    transition: all 0.25s ease-in-out!important;
}

.gform_wrapper .gform_footer input[type="submit"]:hover,
.gform_wrapper input[type="submit"].gform_button:hover,
.gform_wrapper button[type="submit"].gform_button:hover {
    background-color: var(--color-coral-dark)!important;
}

/* ==========================================================================
   Page-Specific Fixes
   ========================================================================== */

/* Hide page title on Home page */
.home .entry-title,
.page-id-12 .entry-title,
.home .page-header,
.page-id-12 .page-header {
    display: none !important;
}

/* Fix WPBakery button container removing extra borders/padding */
/* .vc_btn3-container {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
} */

/* Fix outlined button — ensure transparent bg matches container */
/* .moerlina-btn-outlined .vc_btn3-container {
    border: none !important;
} */

/* Ensure CTA and Hero buttons display inline and have enough width */
/* .moerlina-section-cta .vc_btn3-container,
.moerlina-section-hero .vc_btn3-container,
.moerlina-cta-section .vc_btn3-container,
.moerlina-hero-banner .vc_btn3-container {
    display: inline-block !important;
}

.moerlina-section-cta .vc_btn3,
.moerlina-section-hero .vc_btn3,
.moerlina-cta-section .vc_btn3,
.moerlina-hero-banner .vc_btn3 {
    white-space: nowrap !important;
    min-width: 140px !important;
} */

/* WPBakery inner row button layout fix */
/* .vc_row_inner .vc_btn3-container {
    display: inline-block !important;
}

.vc_row_inner .vc_btn3 {
    white-space: nowrap !important;
} */

/* Inline button groups for Hero and CTA sections */
/* .moerlina-hero-buttons,
.moerlina-cta-buttons {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-items: center;
} */

.moerlina-hero-buttons .moerlina-btn,
.moerlina-cta-buttons .moerlina-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 31px;
    border-radius: 28px;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 18px;
    line-height: 1.5;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
}

/* ==========================================================================
   Header / Top Navigation — Figma node 315:440
   Background: cream, exact height 100px, no border-bottom
   ========================================================================== */

/* ---- Site header wrapper ---- */
.inside-header {
    padding: 15px;
}

/* Inside header: flex row, logo left, nav right, strictly 100px */
/* .site-header .inside-header {
    background-color: var(--color-cream) !important;
    border-bottom: none !important;
    box-shadow: none !important;
    height: 100px !important;
    min-height: 100px !important;
    max-height: 100px !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
} */

/* Navigation containers */
.main-navigation-container,
.header-inner,
.generate-inside-navigation,
.main-navigation,
.site-header .site-navigation,
.navigation-branding {
    background-color: var(--color-cream) !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* ---- Navigation links (top-level) ---- */
.main-navigation ul>li>a {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    padding: 6px 10px;
    line-height: 1.5;
    transition: color 0.2s ease;
    background: transparent;
}

.menu-item-has-children .dropdown-menu-toggle {
    padding-right: 0;
    padding-left: 4px; /*8px;*/
    color: var(--color-coral);
}
.main-navigation .main-nav>ul { margin-right:12px; }
.main-navigation ul.nav-menu>li>a:hover,
.nav-menu>li>a:hover {
    color: var(--color-coral) !important;
    background: transparent !important;
}

/* ---- "Book a Tour" CTA button ---- */
.main-navigation ul.nav-menu>li.nav-cta>a,
.main-navigation ul>li.nav-cta>a,
.main-navigation .moerlina-btn-coral,
#site-navigation .moerlina-btn-coral {
    background-color: var(--color-coral) !important;
    color: var(--color-white) !important;
    border-radius: 24px !important;
    padding: 10px 24px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    font-family: var(--font-body) !important;
    border: 2px solid var(--color-coral) !important;
    transition: all 0.25s ease-in-out !important;
    text-decoration: none !important;
}

.main-navigation ul.nav-menu>li.nav-cta>a:hover,
.main-navigation ul>li.nav-cta>a:hover,
.main-navigation .moerlina-btn-coral:hover {
    background-color: var(--color-coral-dark) !important;
    border-color: var(--color-coral-dark) !important;
    color: var(--color-white) !important;
}

/* ---- Submenu / Dropdown Panel ---- */
/* Position: flush directly below the header bottom edge */
.main-navigation .sub-menu,
.nav-menu .sub-menu { width:auto; /*JG*/
    position: absolute !important;
    top: 100% !important;
    /* sits right below the li parent */
    left: 0 !important;
    z-index: 9999 !important;
    min-width: 200px !important;
    background-color: var(--color-white) !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    border-top: none !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    overflow: hidden !important;

}

/* Submenu list items */
.main-navigation .sub-menu li,
.nav-menu .sub-menu li {
    display: block !important;
    width: 100% !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-navigation .sub-menu li a,
.nav-menu .sub-menu li a {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.main-navigation .sub-menu li:last-child,
.nav-menu .sub-menu li:last-child {
    border-bottom: none !important;
}

/* Submenu links */
.main-navigation .sub-menu li a,
.nav-menu .sub-menu li a {
    font-family: var(--font-body);
    font-size: 16px !important;
    font-weight: 500;
    color: var(--color-charcoal);
    text-decoration: none;
    display: block;
    padding: 14px 24px;
    line-height: 1.5;
    transition: background-color 0.15s ease, color 0.15s ease;
    background-color: var(--color-white);
    white-space: nowrap;
}

.main-navigation .sub-menu li a:hover,
.nav-menu .sub-menu li a:hover {
    /*     background-color: var(--color-cream) !important; */
    color: var(--color-coral) !important;
}

/* Ensure the nav bar itself doesn't add bottom padding that creates the gap */
.main-navigation ul.nav-menu,
.nav-menu {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-navigation ul.nav-menu>li,
.nav-menu>li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.nav-float-right .header-widget {
    margin-left: 5px;
}

/* ==========================================================================
   Footer — Figma node 315:497
   Background: #333234 (charcoal), white text, 3-column layout
   ========================================================================== */

/* Main footer area */
/* .site-footer,
#colophon,
.footer-widgets-container,
.site-footer .inside-footer,
.footer-widget-1,
.footer-widget-2,
.footer-widget-3 {
    background-color: var(--color-charcoal) !important;
    color: var(--color-white) !important;
} */

.footer-widgets-container {
    padding-left: 40px;
    padding-right: 40px;
}

/* Footer widget row: push Quick Links (col 2) toward right side */
.inside-footer-widgets {
    display: flex !important;
    align-items: flex-start !important;
    gap: 40px !important;
}

.footer-widget-1 {
    flex: 0 0 35% !important;
    max-width: 35% !important;
}

/* Quick Links column — right-aligned within its flex cell */
.footer-widget-2 {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    text-align: left !important;
}

.footer-widget-3 {
    flex: 0 0 auto !important;
    min-width: 220px !important;
    text-align: left !important;
}

/* Footer widgets area */
.footer-widgets {
    background-color: var(--color-charcoal) !important;
    padding-top: 40px !important;
}

/* Footer widget headings (Quick Links, Contact, Location, Connect) */
.footer-widgets .widget-title,
.footer-widgets .widget>h2,
.footer-widgets .widget>h3,
.footer-widgets h2,
.footer-widgets h3,
.footer-widgets h5 {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 600;
    color: var(--color-white);
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 5px;
}

.footer-widgets .footer-widget-3 .widget {
    margin-bottom: 5px;
}

.footer-widgets .footer-widget-1 .widget {
    margin-bottom: 50px;
}

/* Footer text */
.footer-widgets p,
.footer-widgets .textwidget p,
.footer-widgets .textwidget {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 400;
    color: rgba(255, 255, 255, 1);
    line-height: 1.6;
}

/* Footer nav links */
.footer-widgets a,
.footer-widgets ul li a {
    font-family: var(--font-body) !important;
    font-size: 16px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.70) !important;
    text-decoration: none;
    transition: color 0.2s ease;
    line-height: 1.6;
}

.footer-widgets a:hover,
.footer-widgets ul li a:hover {
    color: var(--color-white) !important;
}

/* Footer nav list — remove bullets */
.footer-widgets ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-widgets ul li {
    padding: 2px 0;
    border: none;
    margin-bottom: 2px;
}

/* Contact details (phone, email, address) */
.footer-widgets .footer-contact-detail {
    font-family: var(--font-body);
    font-size: 14px;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.8;
}

.footer-widgets .footer-contact-detail a {
    color: rgba(255, 255, 255, 0.85) !important;
}

/* ——— Social Icons — Figma: semi-transparent white circles, white icons ——— */
.social-icons {
    margin-top: 10px;
}

.social-icons a {
    width: 32px;
    height: 32px;
    margin-right: 6px;
    border-radius: 50%;
    text-align: center;
    background: var(--color-white);
    align-items: center;
    justify-content: center;
    display: inline-flex;
    transition: all 0.25s ease;
    color: var(--color-charcoal) !important;
}

.social-icons a svg {
    width: 16px;
}

.social-icons a:hover {
    background-color: var(--color-coral);
}

/* ——— Footer Bottom Bar — Figma: left copyright | right "Back to top ↑" ——— */
.site-info,
#colophon .site-info {
    background-color: var(--color-charcoal) !important;
    padding: 0 !important;
}

/* GP wraps generate_copyright output in a div.copyright-bar — make it flex */
.site-info .inside-site-info,
.site-info .inside-site-info .copyright-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
}

.site-info .inside-site-info {
    padding: 20px 15px !important;
    max-width: var(--container-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Copyright text span */
.site-info .copyright-text {
    font-family: var(--font-body);
    font-size: 16px;
    color: rgba(255, 255, 255, 1);
    
}

.site-info .site-by {
    color: rgba(255, 255, 255, 0.7);
    flex: 1;
    font-family: var(--font-body);
    font-size: 16px;
    margin-left: 15px;
}

.site-info .site-by a {
    color: rgba(255, 255, 255, 0.6) !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.site-info .copyright-text a:hover {
    color: var(--color-white) !important;
}

/* "Back to top" link — right side of bottom bar */
.site-info .back-to-top-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-body);
    font-size: 16px;
    color: rgba(255, 255, 255, 1);
    text-decoration: none;
    transition: color 0.2s ease;
    white-space: nowrap;
    margin-right: 6%;
}

.site-info .back-to-top-link:hover {
    color: var(--color-white);
}

/* Circle arrow button beside "Back to top" text */
.site-info .back-to-top-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.7);
    color: var(--color-charcoal);
    font-size: 16px;
    line-height: 1;
    transition: background-color 0.25s ease;
    text-decoration: none;
}

.site-info .back-to-top-circle:hover {
    background-color: rgba(255, 255, 255, 0.32);
}

/* Hide the floating GeneratePress back-to-top button (replaced inline) */
.generate-back-to-top,
#generate-back-to-top {
    display: none !important;
}

/* =========================================================
   Moerlina - WPBakery FAQ Accordion
   Target: .ms-faq-accordian
   ========================================================= */
.accordion-column {
    margin-top: -140px;
}
.row-ms-faq-accordian .vc_tta-container {
    margin-bottom: 0!important;
}
.row-ms-faq-accordian .vc_tta-container h2 {
    font-family: var(--font-heading);
    font-weight: 500;
    font-size: 35px;
    line-height: .9;
    text-transform: uppercase;
    color: var(--color-coral);
    margin-bottom: 40px;
}
.ms-faq-accordian.vc_tta-accordion {
    background: var(--color-cream) !important;
    color: var(--color-charcoal);
    width: 100%;
    border: 0 !important;
    box-shadow: none !important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panels,
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-heading,
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background-color: var(--color-cream) !important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel {
    margin: 0;
    border-top: 2px solid #EEE5DC;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel:last-child {
    border-bottom: 2px solid #EEE5DC;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-title {
    font-family: var(--font-body);
    font-weight: 600 !important;
    font-size: 24px !important;
    line-height: 1.4 !important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-title > a {
    color: inherit !important;
    text-decoration: none!important;
    padding: 23px 0!important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-controls-icon {
    width: 24px !important;
    height: 24px!important;
    color: var(--color-charcoal)!important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-controls-icon-position-right .vc_tta-controls-icon {
    right: 0!important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-controls-icon.vc_tta-controls-icon-chevron:before {
    border-width: 0 4px 4px 0;
    bottom: 4px;
    right: 4px;
    left: 4px;
    top: 4px;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel.vc_active .vc_tta-panel-heading {
    background: transparent !important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body, .ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body P {
    padding: 0!important;
    color: var(--color-charcoal)!important;
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body>div {
    padding: 0 0 40px!important;
}
.ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body >:last-child {
    margin-bottom: 0;
}
/**************** HIDE TTA Panels**/
.vc_tta-container .vc_tta-accordion {
    display: none;
}

/* Make the H2 heading look clickable */
.vc_tta-container h2 {
    cursor: pointer;
    position: relative;
    padding-right: 25px;
}
/* Optional: A visual class we will toggle via JS to change heading styles when open */
.vc_tta-container .vc_tta-panel.is-open .vc_tta-panel-heading {
    /*background-color: rgba(0,0,0,0.05); /* Just an example indicator */
}
/* Contact Us section */
.contact-form .gform_title { margin-bottom: 10px; }
.contact-form .gform_description { font-family: var(--font-body),sans-serif; font-size: 18px; font-weight: 400; line-height: 1.5; margin-bottom: 10px; }
.contact-form textarea.large { height: 240px !important; min-height: 240px !important; max-height: 240px !important; resize: none; padding-top: 14px !important; }
.location-map iframe { display: block }
.vc_section.section-fees-charges {
    background-position: top right!important;
    background-size: auto!important;
}
.row-boxed-columns.vc_row::before, .row-boxed-columns.vc_row::after {
    display: none;
}
.row-boxed-columns.vc_row {
    display: grid!important;
    gap: 35px;
    grid-template-columns: repeat(2,1fr)!important;
}
.row-boxed-columns.vc_row .vc_vc_column,
.row-boxed-columns.vc_row .wpb_column {
    width: 100% !important;
}
/* Blog detail page */
.single-post .banner-section-child .moerlina-post-data__date { color: var(--color-white); margin-bottom: 10px; display: inline-block; }
.error404 .site-content {
    padding: 120px 15px;
    text-align: center;
}
.error404 .inside-article .entry-header h1 {
    margin-bottom: 25px;
}
.error404 .inside-article .entry-content .search-form {
    margin-top: 30px;
}

/* Inner page Banner */
.banner-section-child .banner-title-col {
    padding-left: calc(15px + ((100% - 1230px) / 2));
    box-sizing: border-box;
}
.banner-section-child .banner-title-col .vc_column-inner .wpb_wrapper {
    max-width: 80%;
}
.banner-section-child .h-100 .vc_column-inner {
    height: 100%;
}
.banner-section-child .banner-icon-position .vc_column-inner {
    background-position: right center !important;
}
/* .banner-section-child .banner-image-col * {
    height: 100%;
    width: 100%;
} */
.banner-section-child .banner-image-col img {
    object-fit: cover;
    object-position: top;
    max-height: 375px; /*343px;*/
}
.banner-section-child .banner-image-col .vc_column-inner,
.banner-section-child .banner-image-col .wpb_wrapper,
.banner-section-child .banner-image-col .wpb_single_image,
.banner-section-child .banner-image-col .vc_single_image-wrapper,
.banner-section-child .banner-image-col .vc_single_image-wrapper  img {
    height: 100%;
    width: 100%;
}
/* Breadcrumb */
.moerlina-breadcrumb a, .moerlina-breadcrumb span {
    color: var(--color-white);
    font-size: 14px;
    font-family: var(--font-body);
} 
.moerlina-breadcrumb__link {
    text-decoration: none;
}
.moerlina-breadcrumb__sep {
    margin-left: 8px;
    margin-right: 8px;
}
.intro-section-child .wpb_wrapper {
    max-width: 995px;
}
.intro-section-child p {
    font-family: var(--font-body);
    font-size: 24px;
    line-height: 1.4;
    color: var(--color-charcoal);
}
/* Highlight section */
.highlight-section p {
    font-size: 24px;
    line-height: 1.4;
}
.highlight-img-left {
    position: absolute;
    bottom: 0;
    margin-bottom: 0;
    left: -100px;
}

.two-column-full-width .two-column-left-padding {
    padding-left: calc(15px + ((100% - 1230px) / 2));
    padding-right: 30px;
}
section.footer-cta-final {
    background-position: left bottom !important;
}
.footer-cta-final .ready-to-see-col {
    padding-left: calc(15px + ((100% - 1024px) / 2));
    padding-right: 30px;
}
.gform_wrapper { margin-bottom:50px;}
#form-enrol { display:none; }
#btn-enrol {}
.vc_row { padding-top: 60px; }
.page-banner-row { padding-top:0px; }
.moerlina-cta-section .vc_row { padding-top:0px; }
.moerlina-cta-section .ready-to-see-col { padding-left: calc(15px + ((100% - 1230px) / 2)); }
#banner-fix .vc_column-inner { background-position: right bottom !important; }
/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */
@media (max-width: 1260px) {
    .vc_row:not([data-vc-stretch-content="true"]):not(.vc_inner) {
        width: var(--container-max-width);
    }
    section.moerlina-testimonial-section .vc_row:not([data-vc-stretch-content="true"]):not(.vc_inner) {
        width: calc(var(--container-max-width) - 30px);
    }
    .banner-section-child .banner-title-col {
        padding-left: calc(15px + ((100% - var(--container-max-width)) / 2));
    }
    .two-column-full-width .two-column-left-padding {
        padding-left: calc(2% + 15px);
        padding-right: calc(2% + 15px);
    }
    .footer-cta-final .ready-to-see-col {
        padding-left: calc(2% + 15px);
        padding-right: calc(2% + 15px);
    }
}
@media (max-width: 1024px) {
    h1 {
        font-size: 48px !important;
    }

    h2 {
        font-size: 40px !important;
    }

    h3 {
        font-size: 32px !important;
    }

    h4 {
        font-size: 25px !important;
    }
    .site-header .header-image {
        width: 160px;
    }
    .header-btn a {
        padding: 12px 20px !important;
        font-size: 16px !important;    
    }
    .footer-widget-2 .widget-title {
        font-size: 16px !important;
    }
    /* section.moerlina-testimonial-section {
        padding-bottom: 0px !important;
    } */
    .intro-section-child p {
        font-size: 20px;
    }
    .highlight-section p {
        font-size: 20px;
    }
}
@media (max-width: 991px) {
    .highlight-img-left {
        position: inherit;
    }
    .highlight-section p {
        margin-top: 20px;
    }
    .highlight-section .highlight-img-bottom {
        margin-top: 30px !important;
        margin-bottom: 10px !important;
    }
    .two-column-full-width .responsive-padding .vc_column-inner {
        padding-top: 56.25%;
    }
    .two-column-full-width .two-column-left-padding .vc_column-inner {
        padding-bottom: 30px !important;
    }
}
@media (max-width: 900px) {
    .header-widget {
        display: none;
    }
}
.vc_tta-container h2::after {
	content: '';
    position: absolute;
    left: calc(100% - 21px);
    top: 50%;
    width: 17px;
    height: 17px;
    border-right: 4px solid var(--color-coral);
    border-bottom: 4px solid var(--color-coral);
    transform: translateY(-50%) rotate(45deg);
    transition: transform 0.3s ease;
}

/* The arrow in its OPEN state */
.vc_tta-container h2.heading-active::after {
  transform: translateY(-25%) rotate(-135deg); /* Rotates to point up when open */
}
/* ==========================================================================
   Responsive — Header & Footer
   ========================================================================== */
@media (max-width: 768px) {
    .main-navigation .main-nav ul li a {
        padding-right: 20px !important;
        line-height: 2;
    }
    .main-navigation.sub-menu-right.toggled {
        position: absolute;
        left: 0;
        right: 0;
        top: 60px;
        width: calc(100% - 30px);
        margin: auto;
    }
    .footer-widgets {
        padding-top: 48px !important;
        padding-bottom: 32px !important;
    }
    .footer-widget-1 .widget_text {
        margin-bottom: 0 !important;
    }
    .footer-widget-1 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-bottom: 0 !important;
    }
    .footer-widget-2 {
        margin-left: 0 !important;
        margin-bottom: 0 !important;
    }
    .moerlina-section-cta::before {
        display: none;
    }
    .hide-desktop {
        display: block;
    }
    .site-info .back-to-top-link {
        margin-right: 0;
    }
	/*.vc_btn3-container.vc_btn3-center, .vc_btn3-container { 	padding-bottom: 25px; }*/
	.vc_section.vc_section-has-fill, .vc_section.vc_section-has-fill+.vc_row-full-width+.vc_section,
	.vc_section.vc_section-has-fill+.vc_section { /*padding-top:20px !important; /*padding-bottom:20px !important;*/ }
	.vc_row:not([data-vc-stretch-content="true"]):not(.vc_inner) {
        width: 100%;
        padding-left: 20px;padding-right: 20px;
	}
	.moerlina-testimonial-section { padding-top: 40px !important;  }
}
@media (max-width: 767px) {
    body {
        font-size: 16px;
    }
    blockquote {
		padding-left: 20px;
	}
    h1 {
        font-size: 42px !important;
    }

    h2 {
        font-size: 36px !important;
    }

    h3 {
        font-size: 28px !important;
    }

    h4 {
        font-size: 22px !important;
    }
    section.p-sm-80, section.py-sm-80 {
        padding-top: 80px !important;
        padding-bottom: 0px !important; /*80px !important; JG*/
    }
    section.pt-sm-80 {
        padding-top: 80px !important;
    }
    section.pb-sm-80 {
        padding-bottom: 80px !important;
    }
    .vc_btn3.vc_btn3-size-md { font-size: 16px; }
    .vc_btn3.vc_btn3-size-lg { font-size: 18px; }
    .vc_btn3.vc_btn3-size-md .vc_btn3-icon { font-size: 18px; }
    .vc_btn3.vc_btn3-size-lg .vc_btn3-icon { font-size: 20px; }
    .gform-theme--foundation { --gf-form-gap-y: 25px !important; }
    .gform-theme--foundation .gform-grid-row { --gf-field-gap-y: 15px; }
    .gform_wrapper input[type="text"], .gform_wrapper input[type="email"], .gform_wrapper input[type="tel"], .gform_wrapper input[type="url"], .gform_wrapper input[type="number"], .gform_wrapper textarea, .gform_wrapper select {
        height: 50px !important;
    }
    .gform_wrapper .gfield_label,
    .gform_wrapper input[type="text"],
    .gform_wrapper input[type="email"],
    .gform_wrapper input[type="tel"],
    .gform_wrapper input[type="url"],
    .gform_wrapper input[type="number"],
    .gform_wrapper textarea,
    .gform_wrapper select,
    .gform_wrapper .gform_footer input[type="submit"],
    .gform_wrapper input[type="submit"].gform_button,
    .gform_wrapper .gfield_checkbox li label,
    .gform_wrapper .gfield_radio li label {
        font-size: 16px!important;
    }
    .gform_wrapper input::placeholder, .gform_wrapper textarea::placeholder {
        font-size: 16px!important;
    }
    .section-contact-us .contact-form { padding-top: 45px; }
    .location-map iframe { height: 400px; }
	#principles-accordion { padding-bottom: 0px; }
	.moerlina-testimonial-section { padding-bottom: 60px; padding-top: 60px; }
    /* FAQ Accordian */
	.accordion-column {
    	margin-top: 0px !important; 
	}
    .row-ms-faq-accordian .vc_tta-container h2 {
        font-size: 28px!important;
        margin-bottom: 30px;
    }
    .ms-faq-accordian.vc_tta-accordion .vc_tta-panel-title {
        font-size: 20px !important;
    }
    .ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body, .ms-faq-accordian.vc_tta-accordion .vc_tta-panel-body P {
        font-size: 16px !important;
    }
    .ms-faq-accordian.vc_tta-accordion .vc_tta-controls-icon {
        width: 18px !important;
        height: 18px!important;
    }
    .ms-faq-accordian.vc_tta-accordion .vc_tta-controls-icon.vc_tta-controls-icon-chevron:before {
        border-width: 0 3px 3px 0;
        bottom: 3px;
        right: 3px;
        left: 3px;
        top: 3px;
    }    
    .row-boxed-columns.vc_row {
        grid-template-columns: repeat(1,1fr)!important;
    }
    .moerlina-hero-title,
    .moerlina-section-hero h1,
    .moerlina-hero-banner h1 {
        font-size: 36px;
    }

    .moerlina-feature-heading h2 {
        font-size: 28px;
    }

    .moerlina-intro-heading h2 {
        font-size: 28px;
        margin-bottom: 24px;
    }

    .moerlina-cta-heading h2,
    .moerlina-section-cta h2 {
        font-size: 32px;
    }

    .moerlina-testimonial-quote-box blockquote {
        font-size: 18px;
    }

    .moerlina-section-hero,
    .moerlina-hero-banner {
        padding-top: 50px !important;
        padding-bottom: 20px !important;
        min-height: 400px;
    }
    .moerlina-btn-group .moerlina-btn:first-child {
        margin-right: 10px;
        margin-bottom: 15px;
    }
    .moerlina-welcome-subheading p {
        font-size: 16px;
    }
    .moerlina-welcome-heading p {
        font-size: 20px;
    }
    section.moerlina-section-welcome {
        background-size: 70% !important;
        background-position: 100% 400px !important;
        padding-top: 80px !important;
    }
    .moerlina-feature-explore .vc_row,
    .sm-column-reverse .vc_row,
    .sm-column-reverse.vc_row {
        flex-direction: column-reverse;
    }

    .moerlina-explore-body p {
        font-size: 18px;
    }

    .moerlina-cta-body p {
        line-height: 1.5;
        font-size: 18px;
    }
    .moerlina-testimonial-quote-box p {
        font-size: 20px;
    }
    .image-minus-top img {
        margin-top: 35px;
    }
    .banner-section-child .banner-title-col .vc_column-inner {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }
    .banner-section-child .banner-image-col .vc_figure,
    .banner-section-child .banner-image-col .vc_figure .vc_single_image-wrapper,
    .banner-section-child .banner-image-col .vc_figure .vc_single_image-wrapper img {
        width: 100%;
    }
    .banner-section-child .banner-title-col .breadcrumb-block {
        margin-top: 30px !important;
    }
    .intro-section-child p {
        font-size: 18px;
    }
    .highlight-section p {
        font-size: 18px;
    }
    .footer-cta-final .ready-to-see-image .vc_column-inner {
        padding-top: 56.25%;
    }
    .footer-cta-final .ready-to-see-col .vc_column-inner {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }
}
@media (max-width: 575px) {
    .site-info .inside-site-info,
    .site-info .inside-site-info .copyright-bar {
        display: block !important;
        flex-wrap: wrap !important;
        text-align: center !important;
    }
    .site-info .back-to-top-link {
        display: block;
        width: 100%;
        margin-top: 10px;
    }
    .site-info .site-by {
        margin-left: 15px;        
    }
	.vc_row { padding-top: 30px; }
	/*.wpb_content_element { margin-bottom: 0px; }*/
	.moerlina-cta-section {margin-top:30px; }
	.moerlina-testimonial-section { padding-bottom: 30px; padding-top:30px !important;  }
}
@media (max-width: 400px) {
    .site-info .site-by {
        margin-left: 0;
        width: 100% !important;
        display: block;
        margin-top: 10px;
    }
}
