/* General Styles & Neuomorphism Base */
:root {
    /* Bright Color Scheme - Primary (Teal/Turquoise) */
    --primary-color: #18E0C4; /* Bright Teal */
    --primary-color-dark: #14B89E; /* Darker Teal */
    --primary-color-light: #66E9D6; /* Lighter Teal */
    --primary-color-rgb: 24, 224, 196; /* For rgba usage */

    /* Accent Colors - Secondary (Vibrant Coral/Orange & Gold) */
    --accent-color-1: #FF7F50; /* Coral */
    --accent-color-1-dark: #E57248;
    --accent-color-2: #FFD700; /* Gold - for highlights */

    /* Neuomorphism Base & Text */
    --background-color: #EBF2F7; /* Light, slightly cool off-white */
    --text-color: #333E48; /* Dark Blue-Gray for high contrast */
    --text-color-light: #FFFFFF;
    --text-color-muted: #6C7A89; /* Muted gray for less important text */
    --text-color-headings: #222A31; /* Even darker for headings */

    /* Neuomorphism Shadows */
    --neu-shadow-light: rgba(255, 255, 255, 0.8);
    --neu-shadow-dark: rgba(174, 190, 206, 0.6);
    --neu-shadow-inset-light: rgba(255, 255, 255, 0.9);
    --neu-shadow-inset-dark: rgba(190, 202, 218, 0.7);

    /* Borders & Radius */
    --border-radius: 20px;
    --border-color: #D1D9E6;

    /* Fonts */
    --font-heading: 'Archivo Black', sans-serif;
    --font-body: 'Roboto', sans-serif;

    /* Transitions & Animations */
    --transition-speed: 0.35s;
    --transition-easing: cubic-bezier(0.68, -0.6, 0.32, 1.6); /* Bouncy */

    /* Spacing */
    --spacing-unit: 8px;
    --header-height: 70px;
}

/*==========================================================================
  GLOBAL RESETS & BASE STYLES
==========================================================================*/
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    font-size: 16px;
}

body {
    font-family: var(--font-body);
    background-color: var(--background-color);
    color: var(--text-color);
    line-height: 1.7;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.has-hyperrealistic-textures {
    /* Example: subtle paper texture
    background-image: linear-gradient(rgba(235, 242, 247, 0.97), rgba(235, 242, 247, 0.97)), url('image/light_paper_texture.jpg');
    background-blend-mode: multiply;
    background-size: auto;
    background-repeat: repeat;
    background-attachment: fixed;
    */
}

/* Headings */
h1, h2, h3, h4, h5, h6, .title, .subtitle {
    font-family: var(--font-heading);
    color: var(--text-color-headings);
    line-height: 1.3;
    margin-bottom: calc(var(--spacing-unit) * 2);
    text-shadow: 1px 1px 2px rgba(0,0,0,0.05);
}
.title { font-weight: normal; } /* Archivo Black is already bold */
.title.is-1 { font-size: 3rem; }
.title.is-2 { font-size: 2.5rem; }
.title.is-3 { font-size: 2rem; }
.title.is-4 { font-size: 1.5rem; }
.title.is-5 { font-size: 1.25rem; }
.subtitle { font-family: var(--font-body); color: var(--text-color-muted); } /* Subtitles use Roboto */

p {
    margin-bottom: calc(var(--spacing-unit) * 2);
    font-size: 1.05rem;
}

a {
    color: var(--primary-color);
    text-decoration: none;
    transition: color var(--transition-speed) ease;
}
a:hover {
    color: var(--primary-color-dark);
    text-decoration: underline;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.container { max-width: 1200px; margin-left: auto; margin-right: auto; }
.section { padding: calc(var(--spacing-unit) * 6) calc(var(--spacing-unit) * 2); }
.section-title { margin-bottom: calc(var(--spacing-unit) * 5) !important; }

.architext { font-family: var(--font-heading); color: var(--text-color-headings); }
.robotext { font-family: var(--font-body); color: var(--text-color); }
.robotext.has-text-centered { text-align: center; }
.robotext.contact-intro a { font-weight: bold; }

/*==========================================================================
  NEUMORPHISM STYLES
==========================================================================*/
.neu-element, .neu-card, .neu-button, .neu-input, .neu-textarea,
.neu-header, .neu-footer, .neu-section, .neu-tabs li a, .neu-form, .neu-checkbox {
    background-color: var(--background-color);
    border-radius: var(--border-radius);
    box-shadow: calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-light);
    transition: all var(--transition-speed) var(--transition-easing);
}
.neu-element:hover, .neu-card:hover, .neu-button:hover:not(:active), .neu-tabs li a:hover:not(.is-active) {
    box-shadow: calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-light);
    transform: translateY(-2px) scale(1.01);
}
.neu-button:active, .neu-input:focus, .neu-textarea:focus, .neu-tabs li.is-active a {
    box-shadow: inset calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-inset-dark),
                inset calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-inset-light);
    transform: translateY(1px) scale(0.99);
}
.neu-section { padding: calc(var(--spacing-unit) * 7) calc(var(--spacing-unit) * 3); margin-bottom: calc(var(--spacing-unit) * 3); }

/*==========================================================================
  GLOBAL BUTTON STYLES
==========================================================================*/
.button, button, input[type="submit"], input[type="button"], .neu-button {
    border: none;
    padding: calc(var(--spacing-unit) * 1.5) calc(var(--spacing-unit) * 3);
    font-family: var(--font-body);
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    line-height: 1.5;
    background-color: var(--background-color);
    color: var(--primary-color);
    border-radius: var(--border-radius);
    box-shadow: calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-light);
    transition: all var(--transition-speed) var(--transition-easing);
}
.button:hover:not(:active), button:hover:not(:active), input[type="submit"]:hover:not(:active), input[type="button"]:hover:not(:active), .neu-button:hover:not(:active) {
    box-shadow: calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-light);
    transform: translateY(-3px) scale(1.03);
    color: var(--primary-color-dark);
}
.button:active, button:active, input[type="submit"]:active, input[type="button"]:active, .neu-button:active {
    box-shadow: inset calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-inset-dark),
                inset calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-inset-light);
    transform: translateY(2px) scale(0.98);
    color: var(--primary-color-dark);
}
.button.is-primary, .neu-button.is-primary {
    background-color: var(--primary-color);
    color: var(--text-color-light);
    box-shadow: calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1.25) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1.25) var(--neu-shadow-light),
                0 0 0 2px var(--background-color);
}
.button.is-primary:hover:not(:active), .neu-button.is-primary:hover:not(:active) {
    background-color: var(--primary-color-dark);
    color: var(--text-color-light);
    transform: translateY(-3px) scale(1.03);
     box-shadow: calc(var(--spacing-unit) * 0.4) calc(var(--spacing-unit) * 0.4) calc(var(--spacing-unit) * 1) var(--neu-shadow-dark),
                calc(var(--spacing-unit) * -0.4) calc(var(--spacing-unit) * -0.4) calc(var(--spacing-unit) * 1) var(--neu-shadow-light),
                0 0 0 3px var(--background-color);
}
.button.is-primary:active, .neu-button.is-primary:active {
    background-color: var(--primary-color-dark);
    color: var(--text-color-light);
    box-shadow: inset calc(var(--spacing-unit) * 0.6) calc(var(--spacing-unit) * 0.6) calc(var(--spacing-unit) * 1.2) var(--neu-shadow-dark),
                inset calc(var(--spacing-unit) * -0.6) calc(var(--spacing-unit) * -0.6) calc(var(--spacing-unit) * 1.2) rgba(255,255,255,0.4);
    transform: translateY(2px) scale(0.98);
}
.button.is-outlined, .neu-button-outlined {
    background-color: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    box-shadow: none;
}
.button.is-outlined:hover:not(:active), .neu-button-outlined:hover:not(:active) {
    background-color: var(--primary-color-light);
    color: var(--primary-color-dark);
    border-color: var(--primary-color-dark);
    transform: translateY(-2px) scale(1.02);
    box-shadow: none;
}
.button.is-outlined:active, .neu-button-outlined:active {
    background-color: var(--primary-color);
    color: var(--text-color-light);
    border-color: var(--primary-color);
    transform: translateY(1px) scale(0.99);
    box-shadow: none;
}
.read-more-link, a.button.is-link.is-outlined {
    font-weight: bold;
    color: var(--accent-color-1);
    border-color: var(--accent-color-1);
    padding: calc(var(--spacing-unit)*1) calc(var(--spacing-unit)*2);
    font-size: 0.9rem;
}
.read-more-link:hover, a.button.is-link.is-outlined:hover {
    color: var(--text-color-light);
    background-color: var(--accent-color-1);
    border-color: var(--accent-color-1);
    text-decoration: none;
}

/*==========================================================================
  HEADER / NAVIGATION
==========================================================================*/
.header.is-fixed-top { position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; padding: calc(var(--spacing-unit) * 0.5) 0; }
.neu-navbar { min-height: var(--header-height); }
.navbar-brand .navbar-item.logo-text { font-family: var(--font-heading); font-size: 2rem; color: var(--text-color-headings) !important; font-weight: bold; padding-left: 0; }
.logo-accent { color: var(--primary-color); }
.navbar-menu { background-color: transparent; box-shadow: none; }
.navbar-item { font-family: var(--font-body); font-weight: 700; color: var(--text-color) !important; transition: color var(--transition-speed) ease, transform var(--transition-speed) var(--transition-easing); padding: calc(var(--spacing-unit)*1) calc(var(--spacing-unit)*2); border-radius: calc(var(--border-radius) / 2); }
.navbar-item:hover, .navbar-item.is-active { background-color: transparent !important; color: var(--primary-color) !important; transform: translateY(-2px) scale(1.05); }
.navbar-burger { color: var(--text-color-headings); width: var(--header-height); height: var(--header-height); }
.navbar-burger span { height: 3px; background-color: var(--text-color-headings); transition: all var(--transition-speed) ease; }
.navbar-burger:hover { background-color: transparent !important; }
.navbar-burger.is-active span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.navbar-burger.is-active span:nth-child(2) { opacity: 0; }
.navbar-burger.is-active span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
.main-content { padding-top: var(--header-height); }
main.page-padding, /* Class for main element on subpages */
body[class*="-page"] .main-content { /* Target specific body classes for privacy/terms */
    padding-top: calc(var(--header-height) + 40px); /* General padding for subpages */
}
body.privacy-page .main-content, /* Specific for privacy */
body.terms-page .main-content { /* Specific for terms */
    padding-top: 100px; /* Strict requirement */
}

/*==========================================================================
  HERO SECTION
==========================================================================*/
.hero { position: relative; background-size: cover; background-position: center center; background-repeat: no-repeat; color: var(--text-color-light); }
.hero.is-fullheight { min-height: 100vh; display: flex; align-items: center; justify-content: center; }
.hero .hero-body { padding: calc(var(--spacing-unit) * 4); position: relative; z-index: 2; }
.has-parallax-background { background-attachment: fixed; }
.hero-text-overlay { background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.7)); padding: calc(var(--spacing-unit) * 4) calc(var(--spacing-unit) * 5); border-radius: var(--border-radius); display: inline-block; text-align: center; box-shadow: inset 3px 3px 6px rgba(0,0,0,0.4), inset -3px -3px 6px rgba(50,50,50,0.3); }
.hero-title { color: var(--text-color-light) !important; font-size: 3.5rem; margin-bottom: calc(var(--spacing-unit) * 2) !important; text-shadow: 2px 2px 8px rgba(0,0,0,0.7); animation: slideInUp 0.8s var(--transition-easing) forwards; }
.hero-subtitle { color: var(--text-color-light) !important; font-size: 1.5rem; margin-bottom: calc(var(--spacing-unit) * 4) !important; text-shadow: 1px 1px 4px rgba(0,0,0,0.6); animation: slideInUp 1s var(--transition-easing) 0.2s forwards; }
.hero-cta { animation: bounceIn 1.2s var(--transition-easing) 0.5s forwards; font-size: 1.2rem; padding: calc(var(--spacing-unit) * 1.8) calc(var(--spacing-unit) * 3.5); }

/*==========================================================================
  CARD STYLES
==========================================================================*/
.card.neu-card { height: 100%; display: flex; flex-direction: column; text-align: center; overflow: hidden; }
.card .card-image { margin-left: auto; margin-right: auto; overflow: hidden; }
.card .card-image .image-container { width: 100%; position: relative; overflow: hidden; border-top-left-radius: var(--border-radius); border-top-right-radius: var(--border-radius); }
.card .card-image img { width: 100%; height: 100%; object-fit: cover; display: block; margin: 0 auto; transition: transform 0.4s ease; }
.card:hover .card-image img { transform: scale(1.05); }
.team-card .card-image .image-container, .news-card .card-image .image-container { height: 250px; }
.event-card .card-image .image-container { height: 220px; }
.card .card-content { flex-grow: 1; padding: calc(var(--spacing-unit) * 2.5); display: flex; flex-direction: column; justify-content: space-between; }
.card .card-content .media + .content { margin-top: calc(var(--spacing-unit)*1.5); }
.card .card-content .title { margin-bottom: calc(var(--spacing-unit)*0.5); }
.card .card-content .subtitle { color: var(--text-color-muted); margin-bottom: var(--spacing-unit); }
.card .card-content .content { font-size: 0.95rem; text-align: left; margin-bottom: calc(var(--spacing-unit)*1.5); }
.card .card-content .button { margin-top: auto; align-self: center; }
.testimonial-card .media-left .image-container { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; margin: 0 auto calc(var(--spacing-unit)*1.5) auto; box-shadow: 0 0 0 4px var(--background-color), calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-dark), calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * -0.5) calc(var(--spacing-unit) * 1) var(--neu-shadow-light); }
.testimonial-card .media-left img.is-rounded { border-radius: 50%; }
.testimonial-card .media-content { text-align: center; }
.testimonial-card .content { font-style: italic; font-size: 1.1rem; color: var(--text-color-muted); text-align: center; padding: 0 calc(var(--spacing-unit)*2); }
.testimonial-card .media { display: flex; flex-direction: column; align-items: center; }
.resource-card .card-content { text-align: left; }
.resource-card .title a { color: var(--primary-color); }
.resource-card .title a:hover { color: var(--primary-color-dark); }

/*==========================================================================
  TABS (FOR EVENTS)
==========================================================================*/
.neu-tabs ul { border-bottom: none; display: flex; justify-content: center; margin-bottom: calc(var(--spacing-unit) * 4); }
.neu-tabs li { margin: 0 calc(var(--spacing-unit) * 0.5); }
.neu-tabs li a { border: none; padding: calc(var(--spacing-unit)*1.25) calc(var(--spacing-unit)*2.5); font-family: var(--font-body); font-weight: bold; color: var(--text-color); }
.neu-tabs li.is-active a { color: var(--text-color-light); background-color: var(--primary-color); }
.neu-tabs li a:hover:not(.is-active) { color: var(--primary-color); }
.neu-tabs li.is-active a:hover { background-color: var(--primary-color-dark); color: var(--text-color-light); }

/*==========================================================================
  FORM STYLES
==========================================================================*/
.neu-form { padding: calc(var(--spacing-unit) * 4); margin-top: calc(var(--spacing-unit) * 3); }
.neu-form .field:not(:last-child) { margin-bottom: calc(var(--spacing-unit) * 2.5); }
.neu-label, .label { color: var(--text-color-headings); font-weight: bold; font-size: 1rem; display: block; margin-bottom: var(--spacing-unit); font-family: var(--font-body); }
.neu-input, .input, .neu-textarea, .textarea { border: none; padding: calc(var(--spacing-unit)*1.5) calc(var(--spacing-unit)*2); width: 100%; font-family: var(--font-body); font-size: 1rem; line-height: 1.5; }
.neu-input::placeholder, .neu-textarea::placeholder { color: var(--text-color-muted); opacity: 0.8; }
.neu-checkbox { display: inline-flex; align-items: center; cursor: pointer; padding: calc(var(--spacing-unit)*1); }
.neu-checkbox-input { opacity: 0; width: 0; height: 0; position: absolute; }
.neu-checkbox .robotext { margin-left: var(--spacing-unit); font-size: 0.9rem; }

/*==========================================================================
  COMMUNITY SECTION
==========================================================================*/
.community-image-wrapper { margin: calc(var(--spacing-unit)*3) auto; max-width: 700px; border-radius: var(--border-radius); overflow: hidden; background-color: var(--background-color); box-shadow: calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-dark), calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * -0.75) calc(var(--spacing-unit) * 1.5) var(--neu-shadow-light); transition: all var(--transition-speed) var(--transition-easing); }
.community-image-wrapper:hover { transform: scale(1.02) translateY(-3px); }
.community-image { display: block; width: 100%; height: auto; border-radius: var(--border-radius); }

/*==========================================================================
  FOOTER
==========================================================================*/
.neu-footer { padding: calc(var(--spacing-unit)*5) calc(var(--spacing-unit)*2) calc(var(--spacing-unit)*3); margin-top: calc(var(--spacing-unit)*5); text-align: center; }
.neu-footer .columns { text-align: left; }
.neu-footer .title.is-5 { color: var(--text-color-headings); margin-bottom: var(--spacing-unit) * 1.5; font-size: 1.3rem; }
.neu-footer p.robotext, .neu-footer ul.robotext li { font-size: 0.95rem; color: var(--text-color); }
.neu-footer ul { list-style: none; margin-left: 0; padding-left: 0; }
.neu-footer li { margin-bottom: var(--spacing-unit); }
.neu-footer a { color: var(--text-color); text-decoration: none; transition: color var(--transition-speed) ease, transform var(--transition-speed) var(--transition-easing); display: inline-block; }
.neu-footer a:hover { color: var(--primary-color); text-decoration: none; transform: translateX(3px) scale(1.03); }
.social-links a { font-weight: bold; }
.neu-hr { height: 3px; background-color: var(--background-color); border: none; margin: calc(var(--spacing-unit)*3) 0; border-radius: 2px; box-shadow: inset calc(var(--spacing-unit)*0.25) calc(var(--spacing-unit)*0.25) calc(var(--spacing-unit)*0.5) var(--neu-shadow-inset-dark), inset calc(var(--spacing-unit)*-0.25) calc(var(--spacing-unit)*-0.25) calc(var(--spacing-unit)*0.5) var(--neu-shadow-inset-light); }
.neu-footer .content.has-text-centered p { font-size: 0.9rem; color: var(--text-color-muted); }

/*==========================================================================
  PAGE SPECIFIC STYLES
==========================================================================*/
/* Success Page */
main.success-page-content { /* Add this class to <main> on success.html */
    min-height: calc(100vh - var(--header-height)); /* Full viewport minus header */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.success-page-content .section.neu-section { /* Target the section inside */
    width: 100%;
    max-width: 700px; /* Limit width of content box */
    flex-grow: 0; /* Don't let section grow, rely on main for centering */
}
.success-message-box { /* This is the .neu-card on success.html */
    padding: calc(var(--spacing-unit)*5) !important;
    margin: 0 auto; /* Center the card itself */
}
.success-message-box .image.is-128x128 { margin-bottom: calc(var(--spacing-unit)*3) !important; }
.success-message-box .button { margin-top: calc(var(--spacing-unit)*3) !important; }

/*==========================================================================
  UTILITIES & HELPERS
==========================================================================*/
#page-transition-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--background-color); z-index: 10000; opacity: 1; transition: opacity 0.5s ease-in-out; pointer-events: none; }
body.loaded #page-transition-overlay { opacity: 0; }
body:not(.loaded) #page-transition-overlay { pointer-events: all; }
#cookie-consent-popup p { margin-bottom: calc(var(--spacing-unit)*1.5) !important; color: var(--text-color-light) !important; }
#accept-cookie-consent { padding: calc(var(--spacing-unit)*1) calc(var(--spacing-unit)*2.5) !important; font-size: 0.9rem !important; }
.sr-bottom, .sr-left, .sr-right, .sr-top { visibility: hidden; }

/*==========================================================================
  ANIMATIONS
==========================================================================*/
@keyframes slideInUp { from { transform: translateY(70px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@keyframes bounceIn { 0% { transform: scale(0.3); opacity: 0; } 40% { transform: scale(1.1); } 60% { transform: scale(0.9); } 80% { transform: scale(1.05); } 100% { transform: scale(1); opacity: 1; } }

/*==========================================================================
  RESPONSIVE STYLES
==========================================================================*/
@media screen and (max-width: 1023px) {
    .navbar-menu { background-color: var(--background-color); box-shadow: 0 8px 16px rgba(10,10,10,.1); padding: 0.5rem 0; border-radius: 0 0 var(--border-radius) var(--border-radius); }
    .navbar-item { padding: calc(var(--spacing-unit)*1.25) calc(var(--spacing-unit)*2); }
    .navbar-item:hover, .navbar-item.is-active { transform: translateX(5px); }
}
@media screen and (max-width: 768px) {
    .section { padding: calc(var(--spacing-unit) * 4) calc(var(--spacing-unit) * 1.5); }
    .hero.is-fullheight .hero-body { padding: calc(var(--spacing-unit) * 3) calc(var(--spacing-unit) * 1.5); }
    .hero-title { font-size: 2.5rem; }
    .hero-subtitle { font-size: 1.2rem; }
    .title.is-1 { font-size: 2.5rem; } .title.is-2 { font-size: 2rem; } .title.is-3 { font-size: 1.75rem; }
    .columns.is-multiline .column { width: 100% !important; margin-bottom: calc(var(--spacing-unit) * 3); }
    .columns.is-multiline .column:last-child { margin-bottom: 0; }
    .neu-footer .columns { text-align: center; }
    .neu-footer .column { margin-bottom: calc(var(--spacing-unit) * 3); }
    .neu-form { padding: calc(var(--spacing-unit) * 2.5); }
    .neu-tabs ul { flex-wrap: wrap; }
    .neu-tabs li { margin-bottom: var(--spacing-unit); }
}
*{
    opacity: 1 !important;
    visibility: visible !important;
}