*,
*::before,
*::after {
box-sizing: border-box;
}
:root { --color-primary: #007bff;
--color-secondary: #6c757d;
--color-tertiary: #28a745;
--color-text: #333333;
--color-text-dark: #f7f7f7;
--color-highlight: #ffc107;
--color-background: #ffffff;
--color-background-dark: #2b2a33; --spacing-xs: 0.5rem;
--spacing-sm: 1rem;
--spacing-md: 2rem;
--spacing-lg: 3rem;
--spacing-xl: 4rem; --font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
--font-family-heading: var(--font-family-base); --prospero-input-bg: color-mix(in srgb, var(--color-background) 92%, var(--color-text));
--prospero-input-border: color-mix(in srgb, var(--color-text) 55%, var(--color-background));
--prospero-input-border-hover: color-mix(in srgb, var(--color-text) 75%, var(--color-background));
--prospero-input-border-focus: var(--color-primary);
--prospero-input-text: var(--color-text);
--prospero-input-placeholder: color-mix(in srgb, var(--color-text) 65%, var(--color-background));
--prospero-input-focus-ring: color-mix(in srgb, var(--color-primary) 30%, transparent);
--prospero-input-radius: 6px;
--prospero-input-padding-y: 0.625rem;
--prospero-input-padding-x: 0.875rem;
}
body {
margin: 0;
font-family: var(--font-family-base);
font-size: 16px;
line-height: 1.6;
color: var(--color-text);
background-color: var(--color-background);
transition: background-color 0.3s ease, color 0.3s ease;
} h1, h2, h3, h4, h5, h6 {
font-family: var(--font-family-heading);
line-height: 1.2;
margin-top: 0;
margin-bottom: var(--spacing-sm);
}
h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }
p {
margin-top: 0;
margin-bottom: var(--spacing-sm);
}
a {
color: var(--color-primary);
text-decoration: none;
transition: color 0.3s ease;
}
a:hover,
a:focus {
color: var(--color-highlight);
} a[target="_blank"]:not(.no-external-icon)::after,
a[rel~="external"]:not(.no-external-icon)::after {
content: "\f147";
font-family: "prospero-icons" !important;
font-style: normal;
font-weight: normal;
margin-left: 0.25em;
font-size: 0.85em;
vertical-align: baseline;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
} .social-navigation a[target="_blank"]::after,
.btn[target="_blank"]::after,
.button[target="_blank"]::after,
button a[target="_blank"]::after,
.wp-block-button a[target="_blank"]::after,
.custom-logo-link[target="_blank"]::after,
.site-title a[target="_blank"]::after,
.partner-logo a[target="_blank"]::after,
.partner-item a[target="_blank"]::after,
.prospero-team .team-social-link[target="_blank"]::after,
.team-lightbox-social a[target="_blank"]::after {
content: none;
} @font-face {
font-family: "prospero-icons";
src: url(//air-coach.at/wp-content/themes/prospero-theme/assets/fonts/prospero-icons.woff2) format("woff2"),
url(//air-coach.at/wp-content/themes/prospero-theme/assets/fonts/prospero-icons.ttf) format("truetype"),
url(//air-coach.at/wp-content/themes/prospero-theme/assets/fonts/prospero-icons.woff) format("woff");
font-weight: normal;
font-style: normal;
font-display: block;
}
.icon,
[class^="icon-"],
[class*=" icon-"] {
font-family: "prospero-icons" !important;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
} .icon-facebook::before { content: "\f4d0"; }
.icon-instagram::before { content: "\f8a5"; }
.icon-linkedin::before { content: "\f23f"; }
.icon-xing::before { content: "\f3d3"; }
.icon-youtube::before { content: "\f379"; }
.icon-pinterest::before { content: "\f4ad"; }
.icon-whatsapp::before { content: "\f47a"; }
.icon-telegram::before { content: "\f744"; }
.icon-signal::before { content: "\f9a6"; } .icon-phone::before { content: "\f16f"; }
.icon-mail::before { content: "\f3bb"; }
.icon-globe::before { content: "\f0fd"; }
.icon-map-pin::before { content: "\f110"; }
.icon-map-pinned::before { content: "\f06d"; }
.icon-at-sign::before { content: "\f219"; } .icon-menu::before { content: "\f07c"; }
.icon-x::before { content: "\f44f"; }
.icon-search::before { content: "\f5ae"; }
.icon-external-link::before { content: "\f147"; }
.icon-link::before { content: "\f416"; } .icon-arrow-up::before { content: "\f129"; }
.icon-arrow-down::before { content: "\f598"; }
.icon-arrow-left::before { content: "\f0fc"; }
.icon-arrow-right::before { content: "\f401"; }
.icon-chevron-up::before { content: "\f46b"; }
.icon-chevron-down::before { content: "\f4fa"; }
.icon-chevron-left::before { content: "\f026"; }
.icon-chevron-right::before { content: "\f41e"; }
.icon-circle-arrow-up::before { content: "\f0f3"; }
.icon-circle-arrow-down::before { content: "\f19e"; }
.icon-circle-arrow-left::before { content: "\f389"; }
.icon-circle-arrow-right::before { content: "\f217"; }
.icon-circle-chevron-up::before { content: "\f2b2"; }
.icon-circle-chevron-down::before { content: "\f4c3"; }
.icon-circle-chevron-left::before { content: "\f060"; }
.icon-circle-chevron-right::before { content: "\f553"; } .icon-user::before { content: "\f53b"; }
.icon-users::before { content: "\f040"; }
.icon-circle-user::before { content: "\f181"; }
.icon-log-out::before { content: "\f3f6"; } .icon-plus::before { content: "\f317"; }
.icon-minus::before { content: "\f02f"; }
.icon-check::before { content: "\f313"; }
.icon-circle-plus::before { content: "\f1ea"; }
.icon-circle-minus::before { content: "\f0b1"; }
.icon-circle-check::before { content: "\f364"; }
.icon-circle-check-big::before { content: "\f540"; }
.icon-circle-x::before { content: "\f16e"; }
.icon-square-check-big::before { content: "\f3cd"; }
.icon-square-arrow-out-up-right::before { content: "\f2e5"; } .icon-heart::before { content: "\f001"; }
.icon-star::before { content: "\f1e4"; }
.icon-thumbs-up::before { content: "\f264"; }
.icon-thumbs-down::before { content: "\f3d7"; }
.icon-bookmark::before { content: "\f0ae"; }
.icon-flag::before { content: "\f34c"; } .icon-bell::before { content: "\f35f"; }
.icon-info::before { content: "\f2e0"; }
.icon-circle-help::before { content: "\f46a"; }
.icon-circle-alert::before { content: "\f4aa"; }
.icon-triangle-alert::before { content: "\f5b1"; }
.icon-shield-check::before { content: "\f05a"; } .icon-pencil::before { content: "\f18c"; }
.icon-quote::before { content: "\f0cd"; }
.icon-message-circle::before { content: "\f485"; }
.icon-hash::before { content: "\f31c"; }
.icon-paperclip::before { content: "\f275"; }
.icon-lightbulb::before { content: "\f28e"; }
.icon-milestone::before { content: "\f34e"; } .icon-files::before { content: "\f489"; }
.icon-folder-open::before { content: "\f457"; }
.icon-folder-down::before { content: "\f0df"; }
.icon-download::before { content: "\f3b7"; }
.icon-save::before { content: "\f289"; }
.icon-printer::before { content: "\f234"; } .icon-layout-grid::before { content: "\f520"; }
.icon-layout-list::before { content: "\f53d"; }
.icon-filter::before { content: "\f10e"; }
.icon-ellipsis::before { content: "\f0f0"; }
.icon-ellipsis-vertical::before { content: "\f4be"; } .icon-settings::before { content: "\f3dc"; }
.icon-settings-2::before { content: "\f355"; }
.icon-share::before { content: "\f131"; }
.icon-send::before { content: "\f24c"; }
.icon-shopping-cart::before { content: "\f067"; }
.icon-eye::before { content: "\f15e"; }
.icon-zoom-in::before { content: "\f2b3"; }
.icon-zoom-out::before { content: "\f267"; }
.icon-undo::before { content: "\f117"; }
.icon-rotate-cw::before { content: "\f4c0"; }
.icon-rotate-ccw::before { content: "\f30c"; }
.icon-refresh-cw::before { content: "\f422"; }
.icon-podcast::before { content: "\f34b"; } .icon-sun::before { content: "\f1dc"; }
.icon-moon::before { content: "\f023"; } .container {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
padding-left: var(--spacing-md);
padding-right: var(--spacing-md);
}
.site {
min-height: 100vh;
display: flex;
flex-direction: column;
}
.site-main {
flex: 1;
padding-top: var(--spacing-lg);
padding-bottom: var(--spacing-lg);
} .site-top-bar { background-color: color-mix(in srgb, var(--color-background) 94%, var(--color-text));
color: color-mix(in srgb, var(--color-text) 80%, var(--color-background));
font-size: 0.85rem;
line-height: 1.4;
border-bottom: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
}
.site-top-bar .top-bar-inner {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
align-items: center;
gap: var(--spacing-sm);
padding-top: 0.4rem;
padding-bottom: 0.4rem;
}
.site-top-bar .top-bar-link {
display: inline-flex;
align-items: center;
gap: 0.4rem;
color: inherit;
text-decoration: none;
transition: color 0.2s ease;
}
.site-top-bar .top-bar-link:hover,
.site-top-bar .top-bar-link:focus {
color: var(--color-text);
text-decoration: underline;
}
.site-top-bar .top-bar-link:focus-visible {
outline: 2px solid var(--color-primary);
outline-offset: 3px;
text-decoration: none;
}
.site-top-bar .top-bar-icon {
font-size: 1rem;
line-height: 1;
flex-shrink: 0;
}
.site-top-bar .top-bar-text {
display: inline-flex;
gap: 0.35rem;
}
.site-top-bar .top-bar-prefix {
color: color-mix(in srgb, var(--color-text) 60%, var(--color-background));
} @media (max-width: 767px) {
.site-top-bar .top-bar-inner {
justify-content: center;
gap: var(--spacing-md);
}
.site-top-bar .top-bar-text {
display: none;
}
.site-top-bar .top-bar-icon {
font-size: 1.125rem;
}
} .site-header {
background-color: var(--prospero-header-bg, var(--color-background));
color: var(--prospero-header-text, var(--color-text));
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
padding: var(--spacing-sm) 0;
transition: background-color 0.3s ease, color 0.3s ease;
} .site-header .site-title a {
color: var(--prospero-header-text, var(--color-text));
}
.site-header .menu-toggle-icon,
.site-header .header-search-toggle,
.site-header .dark-mode-toggle {
color: var(--prospero-header-text, var(--color-text));
}
.site-header .container {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
}
.site-branding {
display: flex;
align-items: center;
gap: var(--spacing-sm);
}
.custom-logo {
max-height: 60px;
width: auto;
} .custom-logo-link.logo-dark {
display: none;
}
.custom-logo-link.logo-light {
display: block;
}
.site-title {
margin: 0;
font-size: 1.5rem;
} .site-title a {
color: var(--color-text);
}
.site-description {
margin: 0;
font-size: 0.875rem;
color: var(--color-secondary);
} .site-header.sticky-header {
transition: transform 0.3s ease, box-shadow 0.3s ease, padding 0.3s ease;
}
.site-header.sticky-header.is-sticky {
position: fixed; top: var(--prospero-top-bar-height, 0px);
left: 0;
right: 0;
z-index: 1000;
box-shadow: 0 2px 20px rgba(0, 0, 0, 0.15);
padding: calc(var(--spacing-sm) * 0.6) 0;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px); background-color: color-mix(in srgb, var(--prospero-header-bg, var(--color-background)) 95%, transparent);
}
body.dark-mode .site-header.sticky-header.is-sticky {
background-color: color-mix(in srgb, var(--prospero-header-bg, var(--color-background-dark)) 95%, transparent);
box-shadow: 0 2px 20px rgba(0, 0, 0, 0.4);
} body.header-is-stuck .site-top-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1001;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px);
box-shadow: 0 1px 12px rgba(0, 0, 0, 0.08);
}
body.dark-mode.header-is-stuck .site-top-bar {
box-shadow: 0 1px 12px rgba(0, 0, 0, 0.3);
}
body.header-is-stuck {
padding-top: calc(var(--prospero-top-bar-height, 0px) + 90px);
}
.site-header.sticky-header.is-sticky .custom-logo {
max-height: 50px;
transition: max-height 0.3s ease;
} .site-header.sticky-header.logo-center .header-inner {
transition: row-gap 0.3s ease, gap 0.3s ease;
}
.site-header.sticky-header.logo-center.is-sticky .header-inner {
row-gap: var(--spacing-xs);
} .header-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--spacing-md);
}
.header-actions {
display: flex;
align-items: center;
gap: var(--spacing-sm);
flex-shrink: 0;
} .site-header.logo-left .header-inner {
flex-direction: row;
}
.site-header.logo-center .header-inner {
flex-wrap: wrap;
justify-content: center;
}
.site-header.logo-center .site-branding {
width: 100%;
justify-content: center;
order: 1;
}
.site-header.logo-center .main-navigation {
order: 2;
}
.site-header.logo-center .header-actions {
order: 3;
}
.site-header.logo-right .header-inner {
flex-direction: row-reverse;
} @media (min-width: 1025px) {
.site-header.menu-left .main-navigation {
margin-right: auto;
}
.site-header.menu-center .main-navigation {
position: absolute;
left: 50%;
transform: translateX(-50%);
}
.site-header.menu-center .header-inner {
position: relative;
}
.site-header.menu-right .main-navigation {
margin-left: auto;
} .site-header.logo-center.menu-center .main-navigation {
position: static;
transform: none;
}
} .desktop-menu {
display: none;
}
@media (min-width: 1025px) {
.desktop-menu {
display: flex;
align-items: center;
}
.desktop-menu ul {
display: flex;
list-style: none;
margin: 0;
padding: 0;
gap: var(--spacing-md);
}
.desktop-menu li {
position: relative;
}
.desktop-menu a {
display: block;
padding: var(--spacing-xs) 0;
color: var(--prospero-header-text, var(--color-text));
font-weight: 500;
white-space: nowrap;
text-decoration: none;
} .desktop-menu a:hover,
.desktop-menu a:focus {
color: var(--color-primary);
text-decoration: underline;
text-decoration-thickness: 2px;
text-underline-offset: 0.35em;
} .desktop-menu .sub-menu {
position: absolute;
top: 100%;
left: 0;
background: var(--color-background);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
min-width: 200px;
padding: var(--spacing-xs);
border-radius: 4px;
opacity: 0;
visibility: hidden;
transform: translateY(10px);
transition: all 0.2s ease;
z-index: 1000;
flex-direction: column;
gap: 0;
}
.desktop-menu li:hover > .sub-menu,
.desktop-menu li:focus-within > .sub-menu {
opacity: 1;
visibility: visible;
transform: translateY(0);
}
.desktop-menu .sub-menu a {
padding: var(--spacing-xs) var(--spacing-sm);
}
.desktop-menu .sub-menu .sub-menu {
top: 0;
left: 100%;
} .mobile-menu-toggle {
display: none;
} .has-hamburger-menu .desktop-menu {
display: none;
}
.has-hamburger-menu .mobile-menu-toggle {
display: flex;
}
} .mobile-menu-toggle {
display: none; align-items: center;
justify-content: center;
background: rgba(0, 0, 0, 0.05);
border: 2px solid transparent;
padding: 0.4rem;
cursor: pointer;
min-width: 40px;
min-height: 40px;
border-radius: 50%;
transition: all 0.2s ease;
flex-shrink: 0;
}
.mobile-menu-toggle:hover {
background-color: rgba(0, 0, 0, 0.1);
border-color: var(--color-primary);
}
.menu-toggle-icon {
font-size: 1.5rem;
color: var(--prospero-header-text, var(--color-text));
line-height: 1;
} .mobile-menu-toggle .icon-menu {
display: block;
}
.mobile-menu-toggle .icon-x {
display: none;
} .mobile-menu-toggle[aria-expanded="true"] .icon-menu {
display: none;
}
.mobile-menu-toggle[aria-expanded="true"] .icon-x {
display: block;
} .mobile-menu-panel {
position: fixed;
top: 0;
right: 0;
width: 100%;
max-width: 320px;
height: 100vh;
height: 100dvh;
background-color: var(--color-background);
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
z-index: 10000;
transform: translateX(100%);
transition: transform 0.3s ease;
overflow: hidden;
display: flex;
flex-direction: column;
}
.mobile-menu-panel.is-open {
transform: translateX(0);
}
.mobile-menu-header {
display: flex;
align-items: center;
justify-content: flex-end;
padding: var(--spacing-md);
border-bottom: 1px solid var(--color-border, #e0e0e0);
}
.mobile-menu-close {
display: flex;
align-items: center;
justify-content: center;
background: none;
border: none;
width: 44px;
height: 44px;
font-size: 1.75rem;
cursor: pointer;
color: var(--color-text);
border-radius: 4px;
transition: background-color 0.2s ease;
}
.mobile-menu-close:hover {
background-color: rgba(0, 0, 0, 0.05);
}
.mobile-menu-nav {
flex: 1;
overflow: hidden;
position: relative;
}
.mobile-menu-panels {
height: 100%;
position: relative;
}
.mobile-menu-panel-content {
height: 100%;
overflow-y: auto;
padding: var(--spacing-md);
} .mobile-menu-list {
list-style: none;
margin: 0;
padding: 0;
}
.mobile-menu-list li {
border-bottom: 1px solid var(--color-border, #e0e0e0);
}
.mobile-menu-list li:last-child {
border-bottom: none;
}
.mobile-menu-list a {
display: block;
padding: var(--spacing-sm) 0;
color: var(--color-text);
font-size: 1.0625rem;
font-weight: 500;
transition: color 0.2s ease;
}
.mobile-menu-list a:hover {
color: var(--color-primary);
} .mobile-menu-list .menu-item-inner {
display: flex;
align-items: center;
}
.mobile-menu-list .menu-item-inner a {
flex: 1;
}
.submenu-toggle {
display: flex;
align-items: center;
justify-content: center;
background: none;
border: none;
width: 44px;
height: 44px;
cursor: pointer;
color: var(--color-text);
font-size: 1.5rem;
transition: color 0.2s ease;
}
.submenu-toggle:hover {
color: var(--color-primary);
} .submenu-panel {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--color-background);
transform: translateX(100%);
transition: transform 0.3s ease;
overflow-y: auto;
padding: var(--spacing-md);
z-index: 1;
}
.submenu-panel.is-open {
transform: translateX(0);
}
.submenu-back {
display: flex;
align-items: center;
gap: var(--spacing-xs);
background: none;
border: none;
padding: var(--spacing-sm) 0;
margin-bottom: var(--spacing-sm);
cursor: pointer;
color: var(--color-primary);
font-size: 1rem;
font-weight: 500;
}
.submenu-back:hover {
text-decoration: underline;
}
.submenu-back-icon {
font-size: 1.25rem;
}
.submenu-panel .sub-menu {
list-style: none;
margin: 0;
padding: 0;
}
.submenu-panel .sub-menu li {
border-bottom: 1px solid var(--color-border, #e0e0e0);
}
.submenu-panel .sub-menu li:last-child {
border-bottom: none;
}
.submenu-panel .sub-menu a {
display: block;
padding: var(--spacing-sm) 0;
color: var(--color-text);
font-size: 1rem;
} .mobile-menu-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
z-index: 9999;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
}
.mobile-menu-overlay.is-visible {
opacity: 1;
visibility: visible;
} @media (min-width: 1025px) {
.mobile-menu-panel,
.mobile-menu-overlay {
display: none;
} .has-hamburger-menu .mobile-menu-panel,
.has-hamburger-menu .mobile-menu-overlay {
display: block;
}
} @media (max-width: 1024px) { .desktop-menu {
display: none !important;
} .mobile-menu-toggle {
display: flex !important;
}
.site-header .header-inner {
flex-wrap: nowrap;
gap: var(--spacing-sm);
} .site-branding {
flex: 1;
min-width: 0;
overflow: hidden;
}
.custom-logo-link {
display: block;
max-width: 100%;
}
.custom-logo {
max-height: 50px;
max-width: 100%;
height: auto;
width: auto;
} .site-header.logo-center .site-branding {
width: auto;
order: 0;
justify-content: flex-start;
}
.site-header.logo-center .header-actions {
order: 0;
}
.site-header.logo-right .header-inner {
flex-direction: row;
} .site-header:has(.custom-logo-link) .site-title-wrap {
display: none;
}
}  .button,
.wp-block-button__link,
input[type="submit"],
button[type="submit"],
.submit-button {
display: inline-block;
padding: 0.75rem 1.5rem;
font-size: 1rem;
font-weight: 600;
font-family: inherit;
text-align: center;
text-decoration: none;
cursor: pointer;
transition: all 0.3s ease;
background-color: var(--prospero-btn-primary-bg, var(--color-primary));
color: var(--prospero-btn-primary-text, #fff);
border: 2px solid var(--prospero-btn-primary-border, var(--color-primary));
border-radius: var(--prospero-btn-primary-radius, 4px);
text-transform: var(--prospero-btn-primary-text-transform, none);
letter-spacing: var(--prospero-btn-primary-letter-spacing, normal);
}
.button:hover,
.button:focus,
.button-primary:hover,
.button-primary:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button.is-style-primary .wp-block-button__link:hover,
.wp-block-button.is-style-primary .wp-block-button__link:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
button[type="submit"]:hover,
button[type="submit"]:focus,
.submit-button:hover,
.submit-button:focus {
background-color: var(--prospero-btn-primary-hover-bg, color-mix(in srgb, var(--color-primary) 80%, black));
color: var(--prospero-btn-primary-hover-text, var(--prospero-btn-primary-text, #fff));
}
.button-secondary,
.wp-block-button.is-style-secondary .wp-block-button__link {
background-color: var(--prospero-btn-secondary-bg, var(--color-secondary));
color: var(--prospero-btn-secondary-text, #fff);
border: 2px solid var(--prospero-btn-secondary-border, var(--color-secondary));
border-radius: var(--prospero-btn-secondary-radius, 4px);
text-transform: var(--prospero-btn-secondary-text-transform, none);
letter-spacing: var(--prospero-btn-secondary-letter-spacing, normal); padding: 0.625rem 1.25rem;
font-size: 0.9375rem;
}
.button-secondary:hover,
.button-secondary:focus,
.wp-block-button.is-style-secondary .wp-block-button__link:hover,
.wp-block-button.is-style-secondary .wp-block-button__link:focus {
background-color: var(--prospero-btn-secondary-hover-bg, color-mix(in srgb, var(--color-secondary) 80%, black));
color: var(--prospero-btn-secondary-hover-text, var(--prospero-btn-secondary-text, #fff));
}
.button-tertiary,
.wp-block-button.is-style-tertiary .wp-block-button__link {
background-color: var(--prospero-btn-tertiary-bg, var(--color-tertiary));
color: var(--prospero-btn-tertiary-text, #fff);
border: 2px solid var(--prospero-btn-tertiary-border, var(--color-tertiary));
border-radius: var(--prospero-btn-tertiary-radius, 4px);
text-transform: var(--prospero-btn-tertiary-text-transform, none);
letter-spacing: var(--prospero-btn-tertiary-letter-spacing, normal); padding: 0.5rem 1rem;
font-size: 0.875rem;
}
.button-tertiary:hover,
.button-tertiary:focus,
.wp-block-button.is-style-tertiary .wp-block-button__link:hover,
.wp-block-button.is-style-tertiary .wp-block-button__link:focus {
background-color: var(--prospero-btn-tertiary-hover-bg, color-mix(in srgb, var(--color-tertiary) 80%, black));
color: var(--prospero-btn-tertiary-hover-text, var(--prospero-btn-tertiary-text, #fff));
} input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="date"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"],
textarea,
select {
display: block;
width: 100%;
max-width: 100%;
padding: var(--prospero-input-padding-y) var(--prospero-input-padding-x);
font-family: inherit;
font-size: 1rem;
line-height: 1.5;
color: var(--prospero-input-text);
background-color: var(--prospero-input-bg); border: 1.5px solid var(--prospero-input-border);
border-radius: var(--prospero-input-radius);
transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
-webkit-appearance: none;
appearance: none;
}
input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="tel"]:hover,
input[type="url"]:hover,
input[type="number"]:hover,
input[type="date"]:hover,
input[type="datetime-local"]:hover,
input[type="month"]:hover,
input[type="week"]:hover,
input[type="time"]:hover,
textarea:hover,
select:hover {
border-color: var(--prospero-input-border-hover);
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
textarea:focus,
select:focus {
outline: none;
border-color: var(--prospero-input-border-focus);
box-shadow: 0 0 0 3px var(--prospero-input-focus-ring);
}
input::placeholder,
textarea::placeholder {
color: var(--prospero-input-placeholder);
opacity: 1; }
input:disabled,
textarea:disabled,
select:disabled {
opacity: 0.6;
cursor: not-allowed;
} select {
padding-right: 2.5rem;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 0.875rem center;
background-size: 12px 8px;
} textarea {
min-height: 7.5rem;
resize: vertical;
} input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill {
-webkit-box-shadow: 0 0 0 1000px var(--prospero-input-bg) inset;
-webkit-text-fill-color: var(--prospero-input-text);
transition: background-color 5000s ease-in-out 0s;
} .form-group label,
.form-field label,
form p > label {
display: inline-block;
margin-bottom: 0.35rem;
font-size: 0.9rem;
font-weight: 500;
} .screen-reader-text label,
label.screen-reader-text {
margin: 0;
} .site-footer {
background-color: var(--prospero-footer-bg, color-mix(in srgb, var(--color-background) 92%, black));
color: var(--prospero-footer-text, var(--color-text));
padding: var(--spacing-lg) 0 var(--spacing-md);
}
.footer-navigation ul {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-md);
list-style: none;
padding: 0;
margin: 0 0 var(--spacing-md);
}
.social-navigation ul {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-xs);
list-style: none;
padding: 0;
margin: 0 0 var(--spacing-md);
}
.footer-navigation a,
.social-navigation a {
color: inherit;
} .social-navigation ul {
justify-content: center;
}
.social-navigation a {
display: flex;
align-items: center;
justify-content: center;
width: 44px;
height: 44px;
border-radius: 50%;
background-color: rgba(0, 0, 0, 0.08);
transition: background-color 0.2s ease, transform 0.2s ease;
}
.social-navigation a:hover {
background-color: rgba(0, 0, 0, 0.15);
transform: scale(1.1);
}
.social-navigation a::before {
font-family: "prospero-icons" !important;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
font-size: 1.25rem;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
} .social-navigation a[href*="facebook.com"]::before { content: "\f4d0"; }
.social-navigation a[href*="instagram.com"]::before { content: "\f8a5"; }
.social-navigation a[href*="linkedin.com"]::before { content: "\f23f"; }
.social-navigation a[href*="xing.com"]::before { content: "\f3d3"; }
.social-navigation a[href*="youtube.com"]::before { content: "\f379"; }
.social-navigation a[href*="pinterest.com"]::before { content: "\f4ad"; }
.social-navigation a[href*="whatsapp.com"]::before,
.social-navigation a[href*="wa.me"]::before { content: "\f47a"; }
.social-navigation a[href*="t.me"]::before,
.social-navigation a[href*="telegram."]::before { content: "\f744"; }
.social-navigation a[href*="signal.org"]::before { content: "\f9a6"; }
.social-navigation a[href*="twitter.com"]::before,
.social-navigation a[href*="x.com"]::before { content: "\f3d3"; }
.social-navigation a[href*="tiktok.com"]::before { content: "\f379"; }
.social-navigation a[href*="vimeo.com"]::before { content: "\f379"; }
.social-navigation a[href*="threads.net"]::before { content: "\f219"; }
.social-navigation a[href*="mastodon"]::before { content: "\f219"; }
.social-navigation a[href*="bluesky"]::before,
.social-navigation a[href*="bsky.app"]::before { content: "\f219"; }
.social-navigation a[href^="mailto:"]::before { content: "\f3bb"; }
.social-navigation a[href^="tel:"]::before { content: "\f16f"; } .social-navigation a:not([href*="facebook"]):not([href*="instagram"]):not([href*="linkedin"]):not([href*="xing"]):not([href*="youtube"]):not([href*="pinterest"]):not([href*="whatsapp"]):not([href*="wa.me"]):not([href*="t.me"]):not([href*="telegram"]):not([href*="signal"]):not([href*="twitter"]):not([href*="x.com"]):not([href*="tiktok"]):not([href*="vimeo"]):not([href*="threads"]):not([href*="mastodon"]):not([href*="bluesky"]):not([href*="bsky.app"]):not([href^="mailto:"]):not([href^="tel:"])::before {
content: "\f416";
}
.site-info {
text-align: center;
font-size: 0.875rem;
opacity: 0.8;
} .skip-link {
position: absolute;
left: -9999px;
top: 2.5rem;
z-index: 999999999;
text-decoration: underline;
}
.skip-link:focus {
background-color: var(--color-background);
color: var(--color-text);
left: 6px;
padding: 15px 23px 14px;
text-decoration: none;
}
.screen-reader-text {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
word-wrap: normal !important;
}
.screen-reader-text:focus {
background-color: #f1f1f1;
border-radius: 3px;
box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
clip: auto !important;
clip-path: none;
color: #21759b;
display: block;
font-size: 0.875rem;
font-weight: 700;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000;
} .message {
padding: var(--spacing-sm) var(--spacing-md);
margin-bottom: var(--spacing-md);
border-radius: 4px;
border-left: 4px solid transparent;
}
.message.success {
background-color: #d4edda;
color: #155724;
border-left-color: #28a745;
}
.message.error {
background-color: #f8d7da;
color: #721c24;
border-left-color: #dc3545;
}
.message p:last-child {
margin-bottom: 0;
} body.dark-mode .message.success {
background-color: rgba(40, 167, 69, 0.2);
color: #8ae89f;
}
body.dark-mode .message.error {
background-color: rgba(220, 53, 69, 0.2);
color: #f5a6ae;
} .text-center {
text-align: center;
}
.text-left {
text-align: left;
}
.text-right {
text-align: right;
} .logged-in-navigation {
margin-bottom: var(--spacing-lg);
padding-bottom: var(--spacing-md);
border-bottom: 1px solid var(--color-border, #e0e0e0);
}
.logged-in-navigation ul {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-sm) var(--spacing-md);
list-style: none;
padding: 0;
margin: 0;
}
.logged-in-navigation a {
color: var(--color-text);
text-decoration: none;
padding: var(--spacing-xs) 0;
border-bottom: 2px solid transparent;
transition: border-color 0.2s ease, color 0.2s ease;
}
.logged-in-navigation a:hover,
.logged-in-navigation .current-menu-item a {
color: var(--color-primary);
border-bottom-color: var(--color-primary);
}
.logged-in-navigation .menu-item-logout a {
color: var(--color-error, #dc3545);
}
.logged-in-navigation .menu-item-logout a:hover {
border-bottom-color: var(--color-error, #dc3545);
} .account-navigation ul {
list-style: none;
padding: 0;
margin: 0;
}
.account-navigation li {
margin-bottom: var(--spacing-xs);
}
.account-navigation a {
display: block;
padding: var(--spacing-sm) var(--spacing-md);
color: var(--color-text);
text-decoration: none;
border-radius: 4px;
transition: background-color 0.2s ease, color 0.2s ease;
}
.account-navigation a:hover,
.account-navigation .current-menu-item a {
background-color: var(--color-primary);
color: #fff;
}
.account-navigation .menu-item-logout a {
color: var(--color-error, #dc3545);
}
.account-navigation .menu-item-logout a:hover {
background-color: var(--color-error, #dc3545);
color: #fff;
} .avatar-section {
margin-bottom: var(--spacing-lg);
}
.avatar-section h3 {
margin-bottom: var(--spacing-md);
}
.avatar-preview {
margin-bottom: var(--spacing-md);
}
.avatar-preview img {
border-radius: 50%;
object-fit: cover;
border: 3px solid var(--color-border, #e0e0e0);
}
.avatar-form .form-group {
margin-bottom: var(--spacing-sm);
}
.avatar-form input[type="file"] {
padding: var(--spacing-sm);
border: 2px dashed var(--color-border, #e0e0e0);
border-radius: 4px;
background: var(--color-background);
width: 100%;
cursor: pointer;
}
.avatar-form input[type="file"]:hover {
border-color: var(--color-primary);
}
.avatar-actions {
display: flex;
gap: var(--spacing-sm);
flex-wrap: wrap;
}
.section-divider {
border: none;
border-top: 1px solid var(--color-border, #e0e0e0);
margin: var(--spacing-lg) 0;
} .menu-item-user-account {
position: relative;
}
.menu-item-user-account > .sub-menu {
display: none;
position: absolute;
top: 100%;
right: 0;
background: var(--color-background);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
min-width: 150px;
padding: var(--spacing-xs);
border-radius: 4px;
z-index: 1000;
list-style: none;
}
.menu-item-user-account:hover > .sub-menu,
.menu-item-user-account:focus-within > .sub-menu {
display: block;
}
.menu-item-user-account > .sub-menu a {
display: block;
padding: var(--spacing-xs) var(--spacing-sm);
white-space: nowrap;
} .menu-item-login > a,
.menu-item-logout > a,
.menu-item-account > a,
.menu-item-user-account > a {
display: inline-flex;
align-items: center;
gap: 0.4em;
}
.menu-item-login > a [class^="icon-"],
.menu-item-logout > a [class^="icon-"],
.menu-item-account > a [class^="icon-"],
.menu-item-user-account > a [class^="icon-"] {
font-size: 1.15em;
line-height: 1;
display: inline-flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}  .desktop-menu li.menu-item-cta > a,
.mobile-menu-list li.menu-item-cta > a,
.mobile-menu-list li.menu-item-cta .menu-item-inner > a {
display: inline-flex;
align-items: center;
gap: 0.4em;
background-color: var(--prospero-btn-menu-cta-bg, var(--color-primary));
color: var(--prospero-btn-menu-cta-text, #fff);
border: 2px solid var(--prospero-btn-menu-cta-border, var(--color-primary));
border-radius: var(--prospero-btn-menu-cta-radius, 4px);
font-weight: 600;
text-decoration: none;
text-transform: var(--prospero-btn-menu-cta-text-transform, none);
letter-spacing: var(--prospero-btn-menu-cta-letter-spacing, normal);
transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.desktop-menu li.menu-item-cta > a {
padding: calc(var(--spacing-xs) - 2px) var(--spacing-sm);
}
.mobile-menu-list li.menu-item-cta > a,
.mobile-menu-list li.menu-item-cta .menu-item-inner > a {
padding: calc(var(--spacing-sm) - 2px) var(--spacing-sm);
}
.desktop-menu li.menu-item-cta > a:hover,
.desktop-menu li.menu-item-cta > a:focus,
.mobile-menu-list li.menu-item-cta > a:hover,
.mobile-menu-list li.menu-item-cta > a:focus,
.mobile-menu-list li.menu-item-cta .menu-item-inner > a:hover,
.mobile-menu-list li.menu-item-cta .menu-item-inner > a:focus {
background-color: var(--prospero-btn-menu-cta-hover-bg, color-mix(in srgb, var(--color-primary) 80%, black));
color: var(--prospero-btn-menu-cta-hover-text, var(--prospero-btn-menu-cta-text, #fff));
border-color: var(--prospero-btn-menu-cta-hover-bg, var(--prospero-btn-menu-cta-border, var(--color-primary))); text-decoration: none;
} .mobile-menu-list li.menu-item-cta {
border-bottom: none;
} .faq-accordion {
display: flex;
flex-direction: column;
gap: var(--spacing-xs);
margin: 0 0 var(--spacing-lg);
}
.faq-accordion-item {
border: 1px solid color-mix(in srgb, var(--color-text) 15%, transparent);
border-radius: 6px;
background: color-mix(in srgb, var(--color-background) 96%, var(--color-text));
overflow: hidden;
transition: border-color 0.2s ease, background-color 0.2s ease;
}
body.dark-mode .faq-accordion-item {
border-color: color-mix(in srgb, var(--color-text-dark) 15%, transparent);
background: color-mix(in srgb, var(--color-background-dark) 88%, var(--color-text-dark));
}
.faq-accordion-item:hover,
.faq-accordion-item:focus-within {
border-color: color-mix(in srgb, var(--color-text) 35%, transparent);
}
body.dark-mode .faq-accordion-item:hover,
body.dark-mode .faq-accordion-item:focus-within {
border-color: color-mix(in srgb, var(--color-text-dark) 35%, transparent);
}
.faq-accordion-item .faq-question {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--spacing-sm);
width: 100%;
padding: var(--spacing-sm);
background: transparent;
border: none;
color: inherit;
font-family: inherit;
font-size: 1.05rem;
font-weight: 500;
text-align: left;
line-height: 1.4;
cursor: pointer;
transition: color 0.2s ease;
}
.faq-accordion-item .faq-question:hover,
.faq-accordion-item .faq-question:focus {
color: var(--color-primary);
}
.faq-accordion-item .faq-question:focus-visible {
outline: 2px solid var(--color-primary);
outline-offset: -2px;
}
.faq-accordion-item .faq-question-text {
flex: 1;
min-width: 0;
}
.faq-accordion-item .faq-toggle {
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.75rem;
height: 1.75rem;
font-size: 1.25rem;
line-height: 1;
border-radius: 50%;
background-color: color-mix(in srgb, var(--color-text) 10%, transparent);
color: inherit;
transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
body.dark-mode .faq-accordion-item .faq-toggle {
background-color: color-mix(in srgb, var(--color-text-dark) 12%, transparent);
}
.faq-accordion-item .faq-question[aria-expanded="true"] .faq-toggle {
background-color: var(--color-primary);
color: #fff;
}
.faq-accordion-item .faq-answer {
padding: 0 var(--spacing-md) var(--spacing-md);
line-height: 1.7;
}
.faq-accordion-item .faq-answer > :first-child {
margin-top: 0;
}
.faq-accordion-item .faq-answer > :last-child {
margin-bottom: 0;
} .prospero-faq-list .faq-group-title {
margin: var(--spacing-lg) 0 var(--spacing-sm);
font-size: 1.25rem;
font-weight: 600;
color: var(--color-text);
}
.prospero-faq-list > .faq-group-title:first-child {
margin-top: 0;
}
body.dark-mode .prospero-faq-list .faq-group-title {
color: var(--color-text-dark);
} .faq-archive-template .page-header,
.single-faq .page-header {
margin-bottom: var(--spacing-lg);
}
.faq-archive-link {
margin: var(--spacing-sm) 0 0;
font-size: 0.9rem;
}
.faq-archive-link a {
color: color-mix(in srgb, var(--color-text) 70%, transparent);
text-decoration: none;
}
.faq-archive-link a:hover,
.faq-archive-link a:focus {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .faq-archive-link a {
color: color-mix(in srgb, var(--color-text-dark) 70%, transparent);
}
body.dark-mode .faq-archive-link a:hover,
body.dark-mode .faq-archive-link a:focus {
color: var(--color-text-dark);
}
.single-faq .faq-categories {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-xs);
margin-bottom: var(--spacing-xs);
}
.single-faq .faq-category {
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
text-decoration: none;
color: color-mix(in srgb, var(--color-text) 70%, transparent);
}
.single-faq .faq-category:hover,
.single-faq .faq-category:focus {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .single-faq .faq-category {
color: color-mix(in srgb, var(--color-text-dark) 70%, transparent);
}
body.dark-mode .single-faq .faq-category:hover,
body.dark-mode .single-faq .faq-category:focus {
color: var(--color-text-dark);
} .error-404-template {
padding: var(--spacing-xl) 0;
}
.error-404-content {
max-width: 600px;
margin: 0 auto;
text-align: center;
}
.error-code {
display: block;
font-size: 8rem;
font-weight: 700;
line-height: 1;
color: var(--color-primary);
opacity: 0.3;
margin-bottom: var(--spacing-sm);
}
.error-404-content .page-title {
margin-bottom: var(--spacing-md);
}
.error-message {
font-size: 1.125rem;
color: var(--color-text);
opacity: 0.8;
margin-bottom: var(--spacing-lg);
}
.error-search {
margin-bottom: var(--spacing-lg);
}
.error-search h2 {
font-size: 1.25rem;
margin-bottom: var(--spacing-sm);
}
.error-suggestions {
margin-bottom: var(--spacing-lg);
}
.error-suggestions h2 {
font-size: 1.25rem;
margin-bottom: var(--spacing-sm);
}
.suggestions-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--spacing-sm) var(--spacing-md);
}
.suggestions-list a {
color: var(--color-primary);
text-decoration: none;
}
.suggestions-list a:hover {
text-decoration: underline;
}
.error-back {
margin-top: var(--spacing-lg);
} .search-results-template {
padding: var(--spacing-lg) 0;
}
.search-results-template .page-header {
margin-bottom: var(--spacing-lg);
}
.search-results-template .page-title span {
color: var(--color-primary);
}
.search-form-header {
max-width: 500px;
margin-top: var(--spacing-md);
}
.results-count {
color: var(--color-text);
opacity: 0.7;
margin-bottom: var(--spacing-md);
}
.search-results-list {
display: flex;
flex-direction: column;
gap: var(--spacing-md);
}
.search-result-item {
display: flex;
gap: var(--spacing-md);
padding: var(--spacing-md);
background: var(--color-background);
border: 1px solid var(--color-border, #e0e0e0);
border-radius: 8px;
transition: box-shadow 0.2s ease;
}
.search-result-item:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.result-thumbnail {
flex-shrink: 0;
width: 100px;
}
.result-thumbnail img {
width: 100%;
height: auto;
border-radius: 4px;
object-fit: cover;
}
.result-content {
flex: 1;
min-width: 0;
}
.result-type {
display: inline-block;
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--color-primary);
margin-bottom: var(--spacing-xs);
}
.result-title {
font-size: 1.25rem;
margin: 0 0 var(--spacing-xs);
}
.result-title a {
color: var(--color-text);
text-decoration: none;
}
.result-title a:hover {
color: var(--color-primary);
}
.result-excerpt {
font-size: 0.9375rem;
color: var(--color-text);
opacity: 0.8;
margin-bottom: var(--spacing-sm);
}
.result-excerpt p {
margin: 0;
}
.result-meta {
display: flex;
align-items: center;
gap: var(--spacing-md);
font-size: 0.875rem;
}
.result-date {
color: var(--color-text);
opacity: 0.6;
}
.result-link {
color: var(--color-primary);
text-decoration: none;
font-weight: 500;
}
.result-link:hover {
text-decoration: underline;
}
.no-results {
text-align: center;
max-width: 500px;
margin: 0 auto;
padding: var(--spacing-lg) 0;
}
.no-results h2 {
margin-bottom: var(--spacing-sm);
}
.search-suggestions {
text-align: left;
background: var(--color-background);
border: 1px solid var(--color-border, #e0e0e0);
border-radius: 8px;
padding: var(--spacing-md);
margin: var(--spacing-lg) 0;
}
.search-suggestions h3 {
font-size: 1rem;
margin-bottom: var(--spacing-sm);
}
.search-suggestions ul {
margin: 0;
padding-left: var(--spacing-md);
}
.search-suggestions li {
margin-bottom: var(--spacing-xs);
} .search-form {
display: flex;
gap: var(--spacing-sm);
align-items: stretch;
}
.search-form label {
flex: 1;
}
.search-form .search-submit {
flex-shrink: 0;
} .header-search-toggle {
display: flex;
align-items: center;
justify-content: center;
background: rgba(0, 0, 0, 0.05);
border: 2px solid transparent;
padding: 0.4rem;
cursor: pointer;
font-size: 1.125rem;
color: var(--prospero-header-text, var(--color-text));
min-width: 40px;
min-height: 40px;
border-radius: 50%;
transition: all 0.2s ease;
flex-shrink: 0;
}
.header-search-toggle:hover {
background-color: rgba(0, 0, 0, 0.1);
border-color: var(--color-primary);
}
.header-search-toggle:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
} .search-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: color-mix(in srgb, var(--color-background) 98%, transparent);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
}
.search-overlay.is-open {
opacity: 1;
visibility: visible;
}
.search-overlay-inner {
width: 100%;
max-width: 700px;
padding: var(--spacing-lg);
position: relative;
}
.search-overlay-close {
position: absolute;
top: 0;
right: 0;
background: none;
border: none;
color: var(--color-text);
font-size: 2rem;
cursor: pointer;
padding: 0.5rem;
line-height: 1;
transition: opacity 0.2s ease;
}
.search-overlay-close:hover {
opacity: 0.7;
}
.search-overlay-close:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
.search-overlay-content {
margin-top: var(--spacing-lg);
}
.search-overlay .search-form {
flex-direction: column;
gap: var(--spacing-md);
}
.search-overlay .search-form label {
width: 100%;
} .search-overlay .search-field {
padding: var(--spacing-md) var(--spacing-lg);
font-size: 1.5rem;
border: none;
border-bottom: 2px solid var(--prospero-input-border);
background: transparent;
border-radius: 0;
box-shadow: none;
}
.search-overlay .search-field:hover {
border-bottom-color: var(--prospero-input-border-hover);
}
.search-overlay .search-field:focus {
border-color: transparent;
border-bottom-color: var(--prospero-input-border-focus);
box-shadow: none;
}
.search-overlay .search-submit {
align-self: flex-start;
padding: var(--spacing-sm) var(--spacing-lg);
font-size: 1rem;
} .back-to-top {
position: fixed;
bottom: var(--spacing-lg);
right: var(--spacing-lg);
width: 48px;
height: 48px;
border: none;
border-radius: 50%;
background-color: var(--color-primary);
color: #fff;
cursor: pointer;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
z-index: 999;
opacity: 0;
transform: translateY(20px);
transition: opacity 0.3s ease, transform 0.3s ease, background-color 0.2s ease;
}
.back-to-top.is-visible {
opacity: 1;
transform: translateY(0);
}
.back-to-top:hover {
background-color: color-mix(in srgb, var(--color-primary) 80%, black);
transform: translateY(-2px);
}
.back-to-top:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
.back-to-top-icon {
font-size: 1.5rem;
line-height: 1;
} .projects-template .page-header {
margin-bottom: var(--spacing-lg);
}
.projects-template .page-title {
margin-bottom: var(--spacing-sm);
}
.projects-template .page-description {
max-width: 800px;
margin-bottom: var(--spacing-lg);
} .projects-filters {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-xs);
margin-bottom: var(--spacing-lg);
}
.filter-button {
padding: var(--spacing-xs) var(--spacing-sm);
border: 1px solid color-mix(in srgb, var(--color-text) 25%, transparent);
background: transparent;
color: color-mix(in srgb, var(--color-text) 75%, transparent);
border-radius: 4px;
cursor: pointer;
font-size: 0.9rem;
font-weight: 500;
transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.filter-button:hover,
.filter-button:focus {
color: var(--color-text);
border-color: color-mix(in srgb, var(--color-text) 45%, transparent);
background: transparent;
}
.filter-button:focus-visible {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
.filter-button.active {
color: var(--color-primary);
border-color: var(--color-primary);
background: transparent;
}
body.dark-mode .filter-button {
border-color: color-mix(in srgb, var(--color-text-dark) 25%, transparent);
color: color-mix(in srgb, var(--color-text-dark) 75%, transparent);
}
body.dark-mode .filter-button:hover,
body.dark-mode .filter-button:focus {
color: var(--color-text-dark);
border-color: color-mix(in srgb, var(--color-text-dark) 45%, transparent);
background: transparent;
}
body.dark-mode .filter-button.active {
color: var(--color-primary);
border-color: var(--color-primary);
background: transparent;
} .projects-grid {
display: grid;
gap: var(--spacing-lg);
}
.projects-grid[data-columns="1"] { grid-template-columns: 1fr; }
.projects-grid[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
.projects-grid[data-columns="3"] { grid-template-columns: repeat(3, 1fr); }
.projects-grid[data-columns="4"] { grid-template-columns: repeat(4, 1fr); } .projects-grid .project-item {
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.dark-mode .projects-grid .project-item {
background: rgba(255, 255, 255, 0.05);
}
.projects-grid .project-item:hover {
transform: translateY(-5px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
body.dark-mode .projects-grid .project-item:hover {
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}
.projects-grid .project-card {
height: 100%;
display: flex;
flex-direction: column;
}
.projects-grid .project-image {
position: relative;
overflow: hidden;
aspect-ratio: 16 / 9;
background: var(--color-background);
}
body.dark-mode .projects-grid .project-image {
background: var(--color-background-dark);
}
.projects-grid .project-image a {
display: block;
height: 100%;
}
.projects-grid .project-thumbnail {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.projects-grid .project-image a:hover .project-thumbnail {
transform: scale(1.05);
}
.projects-grid .project-content {
padding: var(--spacing-md);
flex: 1;
display: flex;
flex-direction: column;
}
.projects-grid .project-title {
margin: 0 0 var(--spacing-xs);
font-size: 1.25rem;
}
.projects-grid .project-title a {
color: var(--color-text);
text-decoration: none;
transition: color 0.3s ease;
}
body.dark-mode .projects-grid .project-title a {
color: var(--color-text-dark);
}
.projects-grid .project-title a:hover {
color: var(--color-primary);
}
.projects-grid .project-tags {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-xs);
margin-bottom: var(--spacing-sm);
}
.projects-grid .project-tag {
font-size: 0.75rem;
padding: 2px 8px;
background: var(--color-primary);
color: #fff;
border-radius: 3px;
}
.projects-grid .project-excerpt {
flex: 1;
margin-bottom: var(--spacing-sm);
color: var(--color-secondary);
font-size: 0.9rem;
line-height: 1.5;
}
body.dark-mode .projects-grid .project-excerpt {
color: rgba(255, 255, 255, 0.7);
}
.projects-grid .project-link {
margin-top: auto;
} .projects-loading {
text-align: center;
padding: var(--spacing-lg);
color: var(--color-secondary);
}
.loading-spinner {
display: inline-block;
width: 40px;
height: 40px;
border: 3px solid rgba(0, 0, 0, 0.1);
border-top-color: var(--color-primary);
border-radius: 50%;
animation: spin 1s linear infinite;
}
body.dark-mode .loading-spinner {
border-color: rgba(255, 255, 255, 0.1);
border-top-color: var(--color-primary);
}
@keyframes spin {
to {
transform: rotate(360deg);
}
} .no-projects {
grid-column: 1 / -1;
text-align: center;
padding: var(--spacing-xl);
color: var(--color-secondary);
} .single-project .project-header {
padding: var(--spacing-lg) 0;
text-align: center;
}
.single-project .project-categories {
margin-bottom: var(--spacing-sm);
}
.single-project .project-category {
display: inline-block;
font-size: 0.875rem;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--color-primary);
margin: 0 var(--spacing-xs);
}
.single-project .project-category:hover {
color: var(--color-highlight);
}
.single-project .project-title {
font-size: 2.5rem;
margin-bottom: var(--spacing-sm);
}
.single-project .project-tags {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--spacing-xs);
}
.single-project .project-tag {
font-size: 0.75rem;
padding: 4px 12px;
background: var(--color-secondary);
color: #fff;
border-radius: 3px;
}
.single-project .project-featured-image {
margin-bottom: var(--spacing-lg);
}
.single-project .project-featured-image img {
width: 100%;
height: auto;
border-radius: 8px;
}
.single-project .project-content-wrapper {
padding: var(--spacing-lg) 0;
}
.single-project .project-content {
max-width: 800px;
margin: 0 auto var(--spacing-lg);
font-size: 1.1rem;
line-height: 1.8;
}
.single-project .project-website {
text-align: center;
margin-top: var(--spacing-lg);
} .single-project .project-gallery-section {
padding: var(--spacing-xl) 0;
background: rgba(0, 0, 0, 0.02);
}
body.dark-mode .single-project .project-gallery-section {
background: rgba(255, 255, 255, 0.02);
}
.single-project .section-title {
text-align: center;
margin-bottom: var(--spacing-lg);
}
.single-project .project-gallery {
column-count: 3;
column-gap: var(--spacing-md);
}
.single-project .gallery-item {
display: block;
overflow: hidden;
border-radius: 8px;
margin-bottom: var(--spacing-md);
break-inside: avoid;
}
.single-project .gallery-item img {
width: 100%;
height: auto;
display: block;
transition: transform 0.3s ease;
}
.single-project .gallery-item:hover img {
transform: scale(1.05);
} .single-project .project-testimonial-section {
padding: var(--spacing-xl) 0;
}
.single-project .project-testimonial {
max-width: 800px;
margin: 0 auto;
display: flex;
gap: var(--spacing-lg);
align-items: flex-start;
padding: var(--spacing-lg);
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
}
body.dark-mode .single-project .project-testimonial {
background: rgba(255, 255, 255, 0.05);
}
.single-project .project-testimonial .testimonial-image {
flex-shrink: 0;
}
.single-project .project-testimonial .testimonial-thumbnail {
width: 80px;
height: 80px;
border-radius: 50%;
object-fit: cover;
}
.single-project .project-testimonial .testimonial-text {
font-size: 1.1rem;
font-style: italic;
line-height: 1.6;
margin: 0 0 var(--spacing-sm);
}
.single-project .project-testimonial .testimonial-author {
display: block;
font-weight: 600;
font-style: normal;
color: var(--color-primary);
} .blog-template .blog-page-intro {
max-width: 800px;
margin-bottom: var(--spacing-lg);
padding-bottom: var(--spacing-lg);
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
color: var(--color-secondary);
line-height: 1.7;
}
body.dark-mode .blog-template .blog-page-intro {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
.blog-template .blog-page-intro p:last-child {
margin-bottom: 0;
}
.blog-template .page-header {
margin-bottom: var(--spacing-lg);
}
.blog-template .page-title {
margin-bottom: var(--spacing-sm);
}
.blog-template .page-description {
max-width: 700px;
} .blog-category-filter {
display: flex;
flex-wrap: wrap;
gap: var(--spacing-xs);
margin-bottom: var(--spacing-lg);
padding-bottom: var(--spacing-md);
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
body.dark-mode .blog-category-filter {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
.blog-category-filter .filter-button {
padding: 8px 16px;
border-radius: var(--border-radius, 4px);
} .blog-posts.loading {
opacity: 0.5;
pointer-events: none;
transition: opacity 0.2s ease;
} .blog-pagination {
margin-top: var(--spacing-xl);
}
.blog-pagination .nav-links {
display: flex;
justify-content: center;
gap: var(--spacing-xs);
flex-wrap: wrap;
}
.blog-pagination .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 40px;
height: 40px;
padding: 0 12px;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: var(--border-radius, 4px);
text-decoration: none;
color: var(--color-text);
transition: background-color 0.2s ease, border-color 0.2s ease;
}
body.dark-mode .blog-pagination .page-numbers {
border-color: rgba(255, 255, 255, 0.2);
}
.blog-pagination .page-numbers:hover,
.blog-pagination .page-numbers:focus {
background: rgba(0, 0, 0, 0.05);
border-color: var(--color-primary);
}
body.dark-mode .blog-pagination .page-numbers:hover,
body.dark-mode .blog-pagination .page-numbers:focus {
background: rgba(255, 255, 255, 0.1);
}
.blog-pagination .page-numbers.current {
background: var(--color-primary);
border-color: var(--color-primary);
color: #fff;
} .blog-pagination ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
gap: var(--spacing-xs);
flex-wrap: wrap;
}
.blog-pagination ul li {
margin: 0;
} .blog-template .posts-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--spacing-lg);
}
.blog-template .posts-grid[data-columns="2"] {
grid-template-columns: repeat(2, 1fr);
}
.blog-template .posts-grid[data-columns="4"] {
grid-template-columns: repeat(4, 1fr);
}
.blog-template .posts-grid .blog-post-item {
background: var(--color-background);
border-radius: var(--border-radius);
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: transform 0.3s ease, box-shadow 0.3s ease;
display: flex;
flex-direction: column;
}
body.dark-mode .blog-template .posts-grid .blog-post-item {
background: color-mix(in srgb, var(--color-background-dark) 90%, white);
}
.blog-template .posts-grid .blog-post-item:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
} .blog-template .posts-grid .blog-post-item.sticky-post {
grid-column: 1 / -1;
flex-direction: row;
}
.blog-template .posts-grid .blog-post-item.sticky-post .post-thumbnail {
flex: 0 0 50%;
max-width: 50%;
}
.blog-template .posts-grid .blog-post-item.sticky-post .post-content {
flex: 1;
display: flex;
flex-direction: column;
}
.blog-template .posts-grid .blog-post-item.sticky-post .entry-title {
font-size: 1.5rem;
}
.blog-template .posts-grid .post-thumbnail {
aspect-ratio: 16 / 10;
overflow: hidden;
}
.blog-template .posts-grid .post-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.blog-template .posts-grid .blog-post-item:hover .post-thumbnail img {
transform: scale(1.05);
}
.blog-template .posts-grid .post-content {
padding: var(--spacing-md);
flex: 1;
display: flex;
flex-direction: column;
}
.blog-template .sticky-label {
display: inline-block;
font-size: 0.7rem;
text-transform: uppercase;
letter-spacing: 0.05em;
font-weight: 600;
padding: 4px 8px;
background: var(--color-highlight);
color: var(--color-sticky-label-text, #1a1a1a);
border-radius: 3px;
margin-bottom: var(--spacing-xs);
}
.blog-template .posts-grid .sticky-label { }
.blog-template .posts-grid .entry-title {
margin: 0 0 var(--spacing-xs);
font-size: 1.1rem;
line-height: 1.3;
}
.blog-template .posts-grid .entry-title a {
color: var(--color-text);
text-decoration: none;
}
body.dark-mode .blog-template .posts-grid .entry-title a {
color: var(--color-text-dark);
}
.blog-template .posts-grid .entry-title a:hover {
color: var(--color-primary);
}
.blog-template .posts-grid .entry-meta {
font-size: 0.8rem;
color: color-mix(in srgb, var(--color-text) 60%, transparent);
margin-bottom: var(--spacing-sm);
}
body.dark-mode .blog-template .posts-grid .entry-meta {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
.blog-template .posts-grid .entry-summary {
flex: 1;
font-size: 0.9rem;
line-height: 1.5;
margin-bottom: var(--spacing-sm);
}
.blog-template .posts-grid .entry-footer {
margin-top: auto;
} .blog-template .posts-list {
display: flex;
flex-direction: column;
gap: var(--spacing-lg);
}
.blog-template .posts-list .blog-list-item {
display: flex;
gap: var(--spacing-lg);
padding: var(--spacing-lg);
background: var(--color-background);
border-radius: var(--border-radius);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: box-shadow 0.3s ease;
}
body.dark-mode .blog-template .posts-list .blog-list-item {
background: color-mix(in srgb, var(--color-background-dark) 90%, white);
}
.blog-template .posts-list .blog-list-item:hover {
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.blog-template .posts-list .blog-list-item.sticky-post {
border-left: 4px solid var(--color-primary);
} .blog-template .posts-list .post-thumbnail {
flex: 1 1 0;
aspect-ratio: 4 / 3;
overflow: hidden;
border-radius: var(--border-radius);
}
.blog-template .posts-list .post-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.blog-template .posts-list .blog-list-item:hover .post-thumbnail img {
transform: scale(1.05);
}
.blog-template .posts-list .post-content {
flex: 2 1 0;
min-width: 0;
display: flex;
flex-direction: column;
}
.blog-template .posts-list .sticky-label {
align-self: flex-start;
}
.blog-template .posts-list .entry-header {
margin-bottom: var(--spacing-sm);
}
.blog-template .posts-list .entry-title {
margin: 0 0 var(--spacing-xs);
font-size: 1.35rem;
line-height: 1.3;
}
.blog-template .posts-list .entry-title a {
color: var(--color-text);
text-decoration: none;
}
body.dark-mode .blog-template .posts-list .entry-title a {
color: var(--color-text-dark);
}
.blog-template .posts-list .entry-title a:hover {
color: var(--color-primary);
}
.blog-template .posts-list .entry-meta {
font-size: 0.85rem;
color: color-mix(in srgb, var(--color-text) 60%, transparent);
display: flex;
flex-wrap: wrap;
gap: var(--spacing-sm);
}
body.dark-mode .blog-template .posts-list .entry-meta {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
.blog-template .posts-list .entry-meta > span:not(:last-child)::after {
content: "";
margin-left: var(--spacing-sm);
}
.blog-template .posts-list .entry-summary {
flex: 1;
line-height: 1.6;
margin-bottom: var(--spacing-sm);
}
.blog-template .posts-list .entry-summary p {
margin: 0;
}
.blog-template .posts-list .entry-footer {
margin-top: auto;
} .blog-template .pagination {
margin-top: var(--spacing-xl);
} .blog-template .no-posts {
text-align: center;
padding: var(--spacing-xl);
color: var(--color-secondary);
} .related-projects {
padding: var(--spacing-xl) 0;
background: rgba(0, 0, 0, 0.02);
border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.dark-mode .related-projects {
background: rgba(255, 255, 255, 0.02);
border-top-color: rgba(255, 255, 255, 0.1);
}
.related-projects .section-title {
text-align: center;
margin-bottom: var(--spacing-lg);
}
.related-projects-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--spacing-lg);
}
.related-project-card {
background: var(--color-background);
border-radius: var(--border-radius);
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.dark-mode .related-project-card {
background: color-mix(in srgb, var(--color-background-dark) 90%, white);
}
.related-project-card:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
.related-project-link {
display: block;
text-decoration: none;
color: inherit;
}
.related-project-thumbnail {
aspect-ratio: 16 / 10;
overflow: hidden;
}
.related-project-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.related-project-card:hover .related-project-thumbnail img {
transform: scale(1.05);
}
.related-project-title {
padding: var(--spacing-md);
margin: 0;
font-size: 1rem;
font-weight: 600;
color: var(--color-text);
}
body.dark-mode .related-project-title {
color: var(--color-text-dark);
} .breadcrumbs {
padding-top: var(--spacing-sm);
padding-bottom: var(--spacing-sm);
margin-bottom: var(--spacing-sm);
}
.breadcrumb-trail {
display: flex;
flex-wrap: wrap;
align-items: center;
list-style: none;
margin: 0;
padding: 0;
font-size: 0.875rem;
gap: 0.25rem;
}
.breadcrumb-item {
display: inline-flex;
align-items: center;
} .breadcrumb-item a {
color: color-mix(in srgb, var(--color-text) 60%, transparent);
text-decoration: none;
transition: color 0.2s ease;
}
.breadcrumb-item a:hover,
.breadcrumb-item a:focus {
color: var(--color-text);
text-decoration: underline;
}
.breadcrumb-item-current span {
color: var(--color-text);
font-weight: 500;
}
body.dark-mode .breadcrumb-item a {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
body.dark-mode .breadcrumb-item a:hover,
body.dark-mode .breadcrumb-item a:focus {
color: var(--color-text-dark);
}
body.dark-mode .breadcrumb-item-current span {
color: var(--color-text-dark);
}
.breadcrumb-separator {
margin: 0 0.5rem;
color: color-mix(in srgb, var(--color-text) 45%, transparent);
}
body.dark-mode .breadcrumb-separator {
color: color-mix(in srgb, var(--color-text-dark) 45%, transparent);
} .breadcrumbs [itemscope] {
display: inline;
} .breadcrumbs .yoast-breadcrumb {
font-size: 0.875rem;
color: color-mix(in srgb, var(--color-text) 60%, transparent);
}
.breadcrumbs .yoast-breadcrumb a {
color: color-mix(in srgb, var(--color-text) 60%, transparent);
text-decoration: none;
}
.breadcrumbs .yoast-breadcrumb a:hover {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .breadcrumbs .yoast-breadcrumb,
body.dark-mode .breadcrumbs .yoast-breadcrumb a {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
body.dark-mode .breadcrumbs .yoast-breadcrumb a:hover {
color: var(--color-text-dark);
} .breadcrumbs .rank-math-breadcrumb {
font-size: 0.875rem;
}
.breadcrumbs .rank-math-breadcrumb a {
color: color-mix(in srgb, var(--color-text) 60%, transparent);
text-decoration: none;
}
.breadcrumbs .rank-math-breadcrumb a:hover {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .breadcrumbs .rank-math-breadcrumb a {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
body.dark-mode .breadcrumbs .rank-math-breadcrumb a:hover {
color: var(--color-text-dark);
} .single-post .post-header {
text-align: center;
padding: var(--spacing-xl) 0 var(--spacing-lg);
} .single-post .post-categories {
margin-bottom: var(--spacing-sm);
}
.single-post .post-category {
display: inline-block;
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
text-decoration: none;
color: color-mix(in srgb, var(--color-text) 70%, transparent);
margin: 0 0.75rem 0.25rem 0;
transition: color 0.2s ease;
}
.single-post .post-category:hover,
.single-post .post-category:focus {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .single-post .post-category {
color: color-mix(in srgb, var(--color-text-dark) 70%, transparent);
}
body.dark-mode .single-post .post-category:hover,
body.dark-mode .single-post .post-category:focus {
color: var(--color-text-dark);
}
.single-post .post-title {
font-size: 2.5rem;
line-height: 1.2;
margin-bottom: var(--spacing-md);
}
.single-post .post-meta {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: var(--spacing-sm) var(--spacing-md);
color: color-mix(in srgb, var(--color-text) 60%, transparent);
font-size: 0.9rem;
margin-bottom: var(--spacing-md);
}
body.dark-mode .single-post .post-meta {
color: color-mix(in srgb, var(--color-text-dark) 60%, transparent);
}
.single-post .post-meta a {
color: inherit;
text-decoration: none;
}
.single-post .post-meta a:hover,
.single-post .post-meta a:focus {
color: var(--color-text);
text-decoration: underline;
}
body.dark-mode .single-post .post-meta a:hover,
body.dark-mode .single-post .post-meta a:focus {
color: var(--color-text-dark);
}
.single-post .post-tags {
margin-top: var(--spacing-sm);
}
.single-post .post-tag {
display: inline-block;
padding: 0.2rem 0.5rem;
background: rgba(0, 0, 0, 0.05);
color: var(--color-secondary);
font-size: 0.8rem;
border-radius: 3px;
text-decoration: none;
margin: 0 0.25rem 0.25rem 0;
transition: background 0.2s ease, color 0.2s ease;
}
body.dark-mode .single-post .post-tag {
background: rgba(255, 255, 255, 0.1);
}
.single-post .post-tag:hover {
background: var(--color-primary);
color: #fff;
}
.single-post .post-featured-image {
margin-bottom: var(--spacing-lg);
}
.single-post .post-featured-image img {
width: 100%;
height: auto;
border-radius: var(--border-radius);
}
.single-post .post-content-wrapper {
padding-bottom: var(--spacing-lg);
}
.single-post .post-content {
max-width: 800px;
margin: 0 auto;
font-size: 1.1rem;
line-height: 1.8;
}
.single-post .page-links {
max-width: 800px;
margin: var(--spacing-lg) auto 0;
padding-top: var(--spacing-md);
border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.dark-mode .single-post .page-links {
border-top-color: rgba(255, 255, 255, 0.1);
}
.single-post .page-links-title {
font-weight: 600;
margin-right: var(--spacing-sm);
}
.single-post .page-link {
display: inline-block;
padding: 0.25rem 0.5rem;
margin: 0 0.25rem;
background: rgba(0, 0, 0, 0.05);
border-radius: 3px;
}
body.dark-mode .single-post .page-link {
background: rgba(255, 255, 255, 0.1);
} .single-post .post-footer {
padding: var(--spacing-lg) 0;
border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.dark-mode .single-post .post-footer {
border-top-color: rgba(255, 255, 255, 0.1);
}
.single-post .author-bio {
max-width: 800px;
margin: 0 auto;
display: flex;
align-items: flex-start;
gap: var(--spacing-md);
padding: var(--spacing-md);
background: rgba(0, 0, 0, 0.02);
border-radius: var(--border-radius);
}
body.dark-mode .single-post .author-bio {
background: rgba(255, 255, 255, 0.02);
}
.single-post .author-avatar img {
width: 80px;
height: 80px;
border-radius: 50%;
object-fit: cover;
}
.single-post .author-info {
flex: 1;
}
.single-post .author-name {
margin: 0 0 var(--spacing-xs);
font-size: 1.1rem;
}
.single-post .author-name a {
color: inherit;
text-decoration: none;
}
.single-post .author-name a:hover {
color: var(--color-primary);
}
.single-post .author-description {
margin: 0;
color: var(--color-secondary);
font-size: 0.95rem;
line-height: 1.6;
} .related-posts {
padding: var(--spacing-xl) 0;
background: rgba(0, 0, 0, 0.02);
border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.dark-mode .related-posts {
background: rgba(255, 255, 255, 0.02);
border-top-color: rgba(255, 255, 255, 0.1);
}
.related-posts .section-title {
text-align: center;
margin-bottom: var(--spacing-lg);
}
.related-posts-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--spacing-lg);
}
.related-post-card {
background: var(--color-background);
border-radius: var(--border-radius);
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.dark-mode .related-post-card {
background: color-mix(in srgb, var(--color-background-dark) 90%, white);
}
.related-post-card:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
.related-post-link {
display: block;
text-decoration: none;
color: inherit;
}
.related-post-thumbnail {
aspect-ratio: 16 / 10;
overflow: hidden;
}
.related-post-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.related-post-card:hover .related-post-thumbnail img {
transform: scale(1.05);
}
.related-post-content {
padding: var(--spacing-md);
}
.related-post-title {
margin: 0 0 var(--spacing-xs);
font-size: 1rem;
font-weight: 600;
color: var(--color-text);
line-height: 1.4;
}
body.dark-mode .related-post-title {
color: var(--color-text-dark);
}
.related-post-date {
font-size: 0.8rem;
color: var(--color-secondary);
} .pre-footer-area {
padding: var(--spacing-xl) 0;
background: rgba(0, 0, 0, 0.03);
border-top: 1px solid rgba(0, 0, 0, 0.08);
}
body.dark-mode .pre-footer-area {
background: rgba(255, 255, 255, 0.03);
border-top-color: rgba(255, 255, 255, 0.08);
}
.pre-footer-widgets {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--spacing-lg);
}
.pre-footer-widget {
grid-column: span 1;
}
.pre-footer-widget.span-2 {
grid-column: span 2;
}
.pre-footer-widget.span-3 {
grid-column: span 3;
}
.pre-footer-widget .widget-title {
margin: 0 0 var(--spacing-md);
font-size: 1.1rem;
font-weight: 600;
color: var(--color-text);
}
body.dark-mode .pre-footer-widget .widget-title {
color: var(--color-text-dark);
} .pre-footer-widget ul {
list-style: none;
padding: 0;
margin: 0;
}
.pre-footer-widget ul li {
padding: var(--spacing-xs) 0;
border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
body.dark-mode .pre-footer-widget ul li {
border-bottom-color: rgba(255, 255, 255, 0.06);
}
.pre-footer-widget ul li:last-child {
border-bottom: none;
}
.pre-footer-widget a {
color: var(--color-text);
text-decoration: none;
transition: color 0.2s ease;
}
body.dark-mode .pre-footer-widget a {
color: var(--color-text-dark);
}
.pre-footer-widget a:hover {
color: var(--color-primary);
} .pre-footer-widget.widget_text p:last-child {
margin-bottom: 0;
} .pre-footer-widget .search-form {
display: flex;
gap: var(--spacing-xs);
}
.pre-footer-widget .search-field {
flex: 1;
padding: var(--spacing-xs) var(--spacing-sm);
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: var(--border-radius);
background: var(--color-background);
color: var(--color-text);
}
body.dark-mode .pre-footer-widget .search-field {
background: var(--color-background-dark);
border-color: rgba(255, 255, 255, 0.15);
color: var(--color-text-dark);
} @media (max-width: 768px) {
:root {
--spacing-lg: 2rem;
--spacing-xl: 3rem;
}
h1 { font-size: 2rem; }
h2 { font-size: 1.75rem; }
h3 { font-size: 1.5rem; } .error-code {
font-size: 5rem;
} .search-result-item {
flex-direction: column;
}
.result-thumbnail {
width: 100%;
max-width: 150px;
}
.search-form {
flex-direction: column;
} .back-to-top {
bottom: var(--spacing-md);
right: var(--spacing-md);
width: 44px;
height: 44px;
} .projects-grid[data-columns="3"],
.projects-grid[data-columns="4"] {
grid-template-columns: repeat(2, 1fr);
} .single-project .project-title {
font-size: 2rem;
}
.single-project .project-gallery {
column-count: 2;
}
.single-project .project-testimonial {
flex-direction: column;
text-align: center;
}
.single-project .project-testimonial .testimonial-image {
margin: 0 auto;
} .related-projects-grid,
.related-posts-grid {
grid-template-columns: repeat(2, 1fr);
} .pre-footer-widgets {
grid-template-columns: repeat(2, 1fr);
}
.pre-footer-widget.span-3 {
grid-column: span 2;
} .blog-template .posts-grid,
.blog-template .posts-grid[data-columns="3"],
.blog-template .posts-grid[data-columns="4"] {
grid-template-columns: repeat(2, 1fr);
}
.blog-template .posts-grid .blog-post-item.sticky-post {
flex-direction: column;
}
.blog-template .posts-grid .blog-post-item.sticky-post .post-thumbnail {
flex: none;
max-width: 100%;
}  .single-post .post-title {
font-size: 2rem;
}
.single-post .post-meta {
flex-direction: column;
gap: var(--spacing-xs);
}
.single-post .author-bio {
flex-direction: column;
text-align: center;
}
.single-post .author-avatar {
margin: 0 auto;
}
}
@media (max-width: 480px) {
.container {
padding-left: var(--spacing-sm);
padding-right: var(--spacing-sm);
}
h1 { font-size: 1.75rem; }
h2 { font-size: 1.5rem; } .error-code {
font-size: 4rem;
} .projects-grid {
grid-template-columns: 1fr !important;
} .single-project .project-title {
font-size: 1.75rem;
}
.single-project .project-gallery {
column-count: 1;
} .related-projects-grid,
.related-posts-grid {
grid-template-columns: 1fr;
} .pre-footer-widgets {
grid-template-columns: 1fr;
}
.pre-footer-widget.span-2,
.pre-footer-widget.span-3 {
grid-column: span 1;
} .blog-template .posts-grid {
grid-template-columns: 1fr !important;
} .blog-template .posts-list .blog-list-item {
flex-direction: column;
}
.blog-template .posts-list .post-thumbnail {
flex: 0 0 auto;
width: 100%;
max-width: 300px;
}
.blog-template .posts-list .post-content {
flex: 0 0 auto;
width: 100%;
} .single-post .post-title {
font-size: 1.75rem;
}
} .prospero-lightbox {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
}
.prospero-lightbox.is-open {
opacity: 1;
visibility: visible;
}
.prospero-lightbox-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.9);
cursor: pointer;
}
.prospero-lightbox-content {
position: relative;
max-width: 90vw;
max-height: 90vh;
display: flex;
align-items: center;
justify-content: center;
}
.prospero-lightbox-figure {
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
}
.prospero-lightbox-image {
max-width: 90vw;
max-height: 85vh;
object-fit: contain;
border-radius: 4px;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}
.prospero-lightbox-caption {
margin-top: var(--spacing-sm);
color: #fff;
font-size: 0.9rem;
text-align: center;
max-width: 600px;
}
.prospero-lightbox-close,
.prospero-lightbox-prev,
.prospero-lightbox-next {
position: absolute;
background: rgba(255, 255, 255, 0.1);
border: none;
color: #fff;
cursor: pointer;
transition: background 0.2s ease, transform 0.2s ease;
z-index: 10;
}
.prospero-lightbox-close {
top: -50px;
right: 0;
width: 44px;
height: 44px;
border-radius: 50%;
font-size: 28px;
line-height: 40px;
}
.prospero-lightbox-prev,
.prospero-lightbox-next {
top: 50%;
transform: translateY(-50%);
width: 50px;
height: 80px;
font-size: 36px;
line-height: 80px;
}
.prospero-lightbox-prev {
left: -70px;
border-radius: 4px 0 0 4px;
}
.prospero-lightbox-next {
right: -70px;
border-radius: 0 4px 4px 0;
}
.prospero-lightbox-close:hover,
.prospero-lightbox-prev:hover,
.prospero-lightbox-next:hover {
background: rgba(255, 255, 255, 0.25);
}
.prospero-lightbox-close:focus,
.prospero-lightbox-prev:focus,
.prospero-lightbox-next:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
} @media (max-width: 768px) {
.prospero-lightbox-prev,
.prospero-lightbox-next {
top: auto;
bottom: 20px;
transform: none;
width: 60px;
height: 50px;
line-height: 50px;
border-radius: 4px;
}
.prospero-lightbox-prev {
left: 20px;
}
.prospero-lightbox-next {
right: 20px;
}
.prospero-lightbox-close {
top: 20px;
right: 20px;
}
.prospero-lightbox-image {
max-height: 70vh;
}
}body.dark-mode {
color: var(--color-text-dark);
background-color: var(--color-background-dark); --prospero-input-bg: color-mix(in srgb, var(--color-background-dark) 82%, var(--color-text-dark));
--prospero-input-border: color-mix(in srgb, var(--color-text-dark) 50%, var(--color-background-dark));
--prospero-input-border-hover: color-mix(in srgb, var(--color-text-dark) 75%, var(--color-background-dark));
--prospero-input-text: var(--color-text-dark);
--prospero-input-placeholder: color-mix(in srgb, var(--color-text-dark) 65%, var(--color-background-dark));
}
body.dark-mode .site-header {
background-color: var(--prospero-header-bg, var(--color-background-dark));
color: var(--prospero-header-text, var(--color-text-dark));
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .site-title a,
body.dark-mode .main-navigation a {
color: var(--prospero-header-text, var(--color-text-dark));
} body.dark-mode .desktop-menu li.menu-item-cta > a,
body.dark-mode .mobile-menu-list li.menu-item-cta > a,
body.dark-mode .mobile-menu-list li.menu-item-cta .menu-item-inner > a {
color: var(--prospero-btn-menu-cta-text, #fff);
}
body.dark-mode .desktop-menu li.menu-item-cta > a:hover,
body.dark-mode .desktop-menu li.menu-item-cta > a:focus,
body.dark-mode .mobile-menu-list li.menu-item-cta > a:hover,
body.dark-mode .mobile-menu-list li.menu-item-cta > a:focus,
body.dark-mode .mobile-menu-list li.menu-item-cta .menu-item-inner > a:hover,
body.dark-mode .mobile-menu-list li.menu-item-cta .menu-item-inner > a:focus {
color: var(--prospero-btn-menu-cta-hover-text, var(--prospero-btn-menu-cta-text, #fff));
}
body.dark-mode .site-description {
color: rgba(255, 255, 255, 0.6);
} body.dark-mode .custom-logo-link.logo-light {
display: none;
}
body.dark-mode .custom-logo-link.logo-dark {
display: block;
}
body.dark-mode .menu-toggle {
border-color: var(--color-text-dark);
color: var(--color-text-dark);
}
body.dark-mode .has-hamburger-menu .main-navigation ul {
background-color: var(--color-background-dark);
}
body.dark-mode .site-footer {
background-color: var(--prospero-footer-bg, color-mix(in srgb, var(--color-background-dark) 88%, white));
color: var(--prospero-footer-text, var(--color-text-dark));
} body.dark-mode .site-top-bar {
background-color: color-mix(in srgb, var(--color-background-dark) 88%, white);
color: color-mix(in srgb, var(--color-text-dark) 80%, var(--color-background-dark));
border-bottom-color: rgba(255, 255, 255, 0.08);
}
body.dark-mode .site-top-bar .top-bar-link:hover,
body.dark-mode .site-top-bar .top-bar-link:focus {
color: var(--color-text-dark);
}
body.dark-mode .site-top-bar .top-bar-prefix {
color: color-mix(in srgb, var(--color-text-dark) 60%, var(--color-background-dark));
}
body.dark-mode .social-navigation a {
background-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .social-navigation a:hover {
background-color: rgba(255, 255, 255, 0.2);
} .dark-mode-toggle {
background: rgba(0, 0, 0, 0.05);
border: 2px solid transparent;
border-radius: 50px;
cursor: pointer;
font-size: 1.125rem;
padding: 0.4rem 0.6rem;
display: flex;
align-items: center;
justify-content: center;
min-width: 40px;
min-height: 40px; color: var(--prospero-header-text, var(--color-text));
transition: all 0.3s ease;
flex-shrink: 0;
}
.dark-mode-toggle:hover {
background: rgba(0, 0, 0, 0.1);
border-color: var(--color-primary);
transform: scale(1.05);
}
.dark-mode-toggle:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
body.dark-mode .dark-mode-toggle {
background: rgba(255, 255, 255, 0.1);
color: var(--prospero-header-text, var(--color-text-dark));
}
body.dark-mode .dark-mode-toggle:hover {
background: rgba(255, 255, 255, 0.2);
}
.dark-mode-icon {
display: none;
line-height: 1;
} body.light-mode .dark-mode-icon.dark-icon,
body:not(.dark-mode):not(.light-mode) .dark-mode-icon.dark-icon {
display: inline;
} body.dark-mode .dark-mode-icon.light-icon {
display: inline;
} body.dark-mode .logged-in-navigation {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .logged-in-navigation a {
color: var(--color-text-dark);
}
body.dark-mode .account-navigation a {
color: var(--color-text-dark);
}
body.dark-mode .account-navigation a:hover,
body.dark-mode .account-navigation .current-menu-item a {
background-color: var(--color-primary);
color: #fff;
} body.dark-mode .avatar-preview img {
border-color: rgba(255, 255, 255, 0.2);
}
body.dark-mode .avatar-form input[type="file"] {
border-color: rgba(255, 255, 255, 0.2);
background: var(--color-background-dark);
color: var(--color-text-dark);
}
body.dark-mode .section-divider {
border-top-color: rgba(255, 255, 255, 0.1);
} body.dark-mode .menu-item-user-account > .sub-menu {
background: var(--color-background-dark);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
} body.dark-mode .error-message {
color: var(--color-text-dark);
}
body.dark-mode .error-search h2,
body.dark-mode .error-suggestions h2 {
color: var(--color-text-dark);
} body.dark-mode .search-result-item {
background: var(--color-background-dark);
border-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .search-result-item:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
body.dark-mode .result-title a {
color: var(--color-text-dark);
}
body.dark-mode .result-excerpt {
color: var(--color-text-dark);
}
body.dark-mode .results-count {
color: var(--color-text-dark);
}
body.dark-mode .search-suggestions {
background: var(--color-background-dark);
border-color: rgba(255, 255, 255, 0.1);
}  body.dark-mode .back-to-top {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
} body.dark-mode .search-overlay {
background: color-mix(in srgb, var(--color-background-dark) 98%, transparent);
}
body.dark-mode .search-overlay-close {
color: var(--color-text-dark);
}  body.dark-mode .mobile-menu-panel {
background-color: var(--color-background-dark);
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.4);
}
body.dark-mode .mobile-menu-header {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .mobile-menu-close {
color: var(--color-text-dark);
}
body.dark-mode .mobile-menu-close:hover {
background-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .mobile-menu-list li {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .mobile-menu-list a {
color: var(--color-text-dark);
}
body.dark-mode .submenu-toggle {
color: var(--color-text-dark);
}
body.dark-mode .submenu-panel {
background-color: var(--color-background-dark);
}
body.dark-mode .submenu-panel .sub-menu li {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .submenu-panel .sub-menu a {
color: var(--color-text-dark);
}
body.dark-mode .mobile-menu-toggle {
background: rgba(255, 255, 255, 0.1);
}
body.dark-mode .mobile-menu-toggle:hover {
background-color: rgba(255, 255, 255, 0.2);
}
body.dark-mode .menu-toggle-icon {
color: var(--prospero-header-text, var(--color-text-dark));
}
body.dark-mode .header-search-toggle {
background: rgba(255, 255, 255, 0.1);
color: var(--prospero-header-text, var(--color-text-dark));
}
body.dark-mode .header-search-toggle:hover {
background-color: rgba(255, 255, 255, 0.2);
} body.dark-mode .desktop-menu .sub-menu {
background: var(--color-background-dark);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
} * {
transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
} @media (prefers-reduced-motion: reduce) {
* {
transition: none !important;
}
} @media (max-width: 1024px) {
.header-actions {
flex-shrink: 0;
gap: var(--spacing-xs);
}
.mobile-menu-toggle,
.dark-mode-toggle,
.header-search-toggle {
min-width: 36px;
min-height: 36px;
padding: 0.35rem;
font-size: 1rem;
}
}.prospero-testimonials {
display: grid;
gap: var(--spacing-lg);
margin: var(--spacing-lg) 0;
} .prospero-slider-wrapper {
width: 100%;
max-width: 100%;
overflow: hidden;
margin: var(--spacing-lg) 0;
padding: 0; } .prospero-slider-wrapper:has(.prospero-slider) {
padding: 0 50px var(--spacing-lg) 50px;
} .prospero-slider-wrapper::after {
content: '';
display: table;
clear: both;
} .prospero-testimonials.prospero-slider,
.prospero-partners.prospero-slider,
.prospero-team.prospero-slider,
.prospero-projects.prospero-slider {
display: block;
margin: 0;
}  .prospero-testimonials.prospero-slider .testimonial-item {
min-width: 280px;
} .prospero-partners.prospero-slider .partner-item {
min-width: 120px;
} .prospero-team.prospero-slider .team-item {
min-width: 200px;
} .prospero-projects.prospero-slider .project-item {
min-width: 280px;
} .flickity-button {
background: var(--color-primary);
color: #fff;
transition: background-color 0.3s ease, opacity 0.3s ease;
}
.flickity-button:hover {
background: var(--color-secondary);
}
.flickity-button:disabled {
opacity: 0.3;
} .prospero-slider-wrapper .flickity-prev-next-button {
width: 40px;
height: 40px;
}
.prospero-slider-wrapper .flickity-prev-next-button.previous {
left: -50px;
}
.prospero-slider-wrapper .flickity-prev-next-button.next {
right: -50px;
} .prospero-slider-wrapper .flickity-page-dots {
position: static;
width: 100%;
margin-top: var(--spacing-md);
padding: 0;
bottom: auto;
}
.flickity-page-dots .dot {
background: var(--color-secondary);
opacity: 0.5;
transition: opacity 0.3s ease, background-color 0.3s ease;
}
.flickity-page-dots .dot.is-selected {
background: var(--color-primary);
opacity: 1;
}
.testimonial-item {
display: flex;
gap: var(--spacing-md);
padding: var(--spacing-md);
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
align-items: flex-start;
}
body.dark-mode .testimonial-item {
background: rgba(255, 255, 255, 0.05);
}
.testimonial-image {
flex-shrink: 0;
}
.testimonial-thumbnail {
border-radius: 50%;
width: 80px;
height: 80px;
object-fit: cover;
}
.testimonial-content {
flex: 1;
}
.testimonial-text {
font-style: italic;
margin: 0 0 var(--spacing-sm);
font-size: 1.1rem;
line-height: 1.6;
position: relative;
}
.testimonial-text::before {
content: '"';
font-size: 3rem;
line-height: 1;
opacity: 0.2;
position: absolute;
top: -10px;
left: -20px;
}
.testimonial-author {
display: block;
font-weight: 600;
font-style: normal;
color: var(--color-primary);
} .prospero-partners {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: var(--spacing-md);
margin: var(--spacing-lg) 0;
align-items: center;
justify-items: center;
}
.partner-item {
width: 100%;
text-align: center;
}
.partner-logo {
padding: var(--spacing-sm);
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.dark-mode .partner-logo {
background: rgba(255, 255, 255, 0.05);
}
.partner-logo:hover {
transform: translateY(-5px);
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}
body.dark-mode .partner-logo:hover {
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
}
.partner-logo a {
display: block;
}
.partner-thumbnail {
width: 100%;
height: auto;
max-width: 200px;
object-fit: contain;
mix-blend-mode: multiply;
}
body.dark-mode .partner-thumbnail {
mix-blend-mode: lighten;
opacity: 0.9;
} .prospero-team {
margin: var(--spacing-lg) 0;
} .prospero-team-grid {
display: grid;
gap: var(--spacing-lg);
}
.prospero-team-grid[data-columns="1"] { grid-template-columns: 1fr; }
.prospero-team-grid[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
.prospero-team-grid[data-columns="3"] { grid-template-columns: repeat(3, 1fr); }
.prospero-team-grid[data-columns="4"] { grid-template-columns: repeat(4, 1fr); }
.prospero-team-grid[data-columns="5"] { grid-template-columns: repeat(5, 1fr); }
.prospero-team-grid[data-columns="6"] { grid-template-columns: repeat(6, 1fr); } .prospero-team-list {
display: flex;
flex-direction: column;
gap: var(--spacing-md);
}
.prospero-team-list .team-item {
display: flex;
gap: var(--spacing-md);
align-items: flex-start;
padding: var(--spacing-md);
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
}
body.dark-mode .prospero-team-list .team-item {
background: rgba(255, 255, 255, 0.05);
}
.prospero-team-list .team-image {
flex-shrink: 0;
width: 120px;
} .prospero-team-simple {
display: grid;
gap: var(--spacing-md);
}
.prospero-team-simple[data-columns="1"] { grid-template-columns: 1fr; }
.prospero-team-simple[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
.prospero-team-simple[data-columns="3"] { grid-template-columns: repeat(3, 1fr); }
.prospero-team-simple[data-columns="4"] { grid-template-columns: repeat(4, 1fr); }
.prospero-team-simple[data-columns="5"] { grid-template-columns: repeat(5, 1fr); }
.prospero-team-simple[data-columns="6"] { grid-template-columns: repeat(6, 1fr); } .team-item {
text-align: center;
}
.team-image {
margin-bottom: var(--spacing-sm);
overflow: hidden;
border-radius: 8px;
}
.team-image a {
display: block;
position: relative;
overflow: hidden;
}
.team-thumbnail {
width: 100%;
height: auto;
transition: transform 0.3s ease;
display: block;
}
.team-image a:hover .team-thumbnail {
transform: scale(1.05);
}
.team-content {
padding: var(--spacing-sm);
}
.team-name {
margin: 0 0 var(--spacing-xs);
font-size: 1.25rem;
}
.team-name a {
color: var(--color-text);
text-decoration: none;
transition: color 0.3s ease;
}
body.dark-mode .team-name a {
color: var(--color-text-dark);
}
.team-name a:hover {
color: var(--color-primary);
}
.team-excerpt {
font-size: 0.95rem;
line-height: 1.5;
color: var(--color-secondary);
}
body.dark-mode .team-excerpt {
color: rgba(255, 255, 255, 0.7);
} .prospero-projects {
display: grid;
gap: var(--spacing-lg);
margin: var(--spacing-lg) 0;
}
.prospero-projects[data-columns="1"] { grid-template-columns: 1fr; }
.prospero-projects[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
.prospero-projects[data-columns="3"] { grid-template-columns: repeat(3, 1fr); }
.prospero-projects[data-columns="4"] { grid-template-columns: repeat(4, 1fr); }
.prospero-projects[data-columns="5"] { grid-template-columns: repeat(5, 1fr); }
.prospero-projects[data-columns="6"] { grid-template-columns: repeat(6, 1fr); }
.project-item {
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.dark-mode .project-item {
background: rgba(255, 255, 255, 0.05);
}
.project-item:hover {
transform: translateY(-5px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
body.dark-mode .project-item:hover {
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}
.project-image {
position: relative;
overflow: hidden;
aspect-ratio: 16 / 9;
background: var(--color-background);
}
body.dark-mode .project-image {
background: var(--color-background-dark);
}
.project-image a {
display: block;
height: 100%;
}
.project-thumbnail {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.project-image a:hover .project-thumbnail {
transform: scale(1.05);
}
.project-content {
padding: var(--spacing-md);
}
.project-title {
margin: 0 0 var(--spacing-sm);
font-size: 1.5rem;
}
.project-title a {
color: var(--color-text);
text-decoration: none;
transition: color 0.3s ease;
}
body.dark-mode .project-title a {
color: var(--color-text-dark);
}
.project-title a:hover {
color: var(--color-primary);
}
.project-excerpt {
margin-bottom: var(--spacing-md);
color: var(--color-secondary);
line-height: 1.6;
}
body.dark-mode .project-excerpt {
color: rgba(255, 255, 255, 0.7);
}
.project-link {
display: inline-block;
} @media (max-width: 768px) { .testimonial-item {
flex-direction: column;
text-align: center;
}
.testimonial-image {
margin: 0 auto;
}
.testimonial-text::before {
left: 50%;
transform: translateX(-50%);
} .prospero-partners {
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
} .prospero-team-grid[data-columns="3"],
.prospero-team-grid[data-columns="4"],
.prospero-team-grid[data-columns="5"],
.prospero-team-grid[data-columns="6"] {
grid-template-columns: repeat(2, 1fr);
} .prospero-team-simple[data-columns="3"],
.prospero-team-simple[data-columns="4"],
.prospero-team-simple[data-columns="5"],
.prospero-team-simple[data-columns="6"] {
grid-template-columns: repeat(2, 1fr);
} .prospero-team-list .team-item {
flex-direction: column;
text-align: center;
}
.prospero-team-list .team-image {
width: 100%;
max-width: 200px;
margin: 0 auto;
} .prospero-projects[data-columns="3"],
.prospero-projects[data-columns="4"],
.prospero-projects[data-columns="5"],
.prospero-projects[data-columns="6"] {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 480px) { .prospero-team-grid,
.prospero-team-simple,
.prospero-projects {
grid-template-columns: 1fr !important;
}
.prospero-partners {
grid-template-columns: repeat(2, 1fr);
}
}.prospero-cta {
position: relative;
padding: var(--spacing-xl, 3rem) var(--spacing-md, 1.5rem);
margin: var(--spacing-lg, 2rem) 0;
background-size: cover;
background-position: center;
overflow: hidden;
} .prospero-cta.has-primary-background-color {
background-color: var(--wp--preset--color--primary, var(--color-primary, #007bff));
}
.prospero-cta.has-secondary-background-color {
background-color: var(--wp--preset--color--secondary, var(--color-secondary, #6c757d));
}
.prospero-cta.has-tertiary-background-color {
background-color: var(--wp--preset--color--tertiary, var(--color-tertiary, #28a745));
}
.prospero-cta.has-highlight-background-color {
background-color: var(--wp--preset--color--highlight, var(--color-highlight, #ffc107));
} .prospero-cta .has-light-text,
.prospero-cta .has-light-text .prospero-cta-heading,
.prospero-cta .has-light-text .prospero-cta-text {
color: #ffffff;
} .prospero-cta-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 1;
}
.prospero-cta.has-background-image .prospero-cta-content,
.prospero-cta.has-background-image .prospero-cta-image {
position: relative;
z-index: 2;
}
.prospero-cta.has-background-image .prospero-cta-heading,
.prospero-cta.has-background-image .prospero-cta-text {
color: #ffffff;
} .prospero-cta-inner {
max-width: var(--content-width, 1200px);
margin: 0 auto;
padding: 0 var(--spacing-md, 1rem);
position: relative;
z-index: 2;
} .prospero-cta-center {
text-align: center;
}
.prospero-cta-center .prospero-cta-content {
max-width: 800px;
margin: 0 auto;
}
.prospero-cta-center .prospero-cta-image-center {
margin-bottom: var(--spacing-md, 1.5rem);
}
.prospero-cta-center .prospero-cta-image-center img {
max-width: 300px;
height: auto;
margin: 0 auto;
display: block;
} .prospero-cta-left .prospero-cta-inner {
display: flex;
align-items: center;
gap: var(--spacing-lg, 2rem);
}
.prospero-cta-left .prospero-cta-image {
flex: 0 0 40%;
max-width: 40%;
}
.prospero-cta-left .prospero-cta-image img {
width: 100%;
height: auto;
display: block;
}
.prospero-cta-left .prospero-cta-content {
flex: 1;
text-align: left;
} .prospero-cta-right .prospero-cta-inner {
display: flex;
align-items: center;
flex-direction: row-reverse;
gap: var(--spacing-lg, 2rem);
}
.prospero-cta-right .prospero-cta-image {
flex: 0 0 40%;
max-width: 40%;
}
.prospero-cta-right .prospero-cta-image img {
width: 100%;
height: auto;
display: block;
}
.prospero-cta-right .prospero-cta-content {
flex: 1;
text-align: left;
} .prospero-cta-heading {
margin: 0 0 var(--spacing-md, 1rem);
font-size: 2rem;
line-height: 1.2;
}
.prospero-cta-text {
margin-bottom: var(--spacing-md, 1rem);
font-size: 1.1rem;
line-height: 1.6;
}
.prospero-cta-text p:last-child {
margin-bottom: 0;
}
.prospero-cta-button {
margin-top: var(--spacing-md, 1rem);
} @media (max-width: 768px) {
.prospero-cta {
padding: var(--spacing-lg, 2rem) var(--spacing-sm, 1rem);
}
.prospero-cta-left .prospero-cta-inner,
.prospero-cta-right .prospero-cta-inner {
flex-direction: column;
text-align: center;
}
.prospero-cta-left .prospero-cta-image,
.prospero-cta-right .prospero-cta-image {
flex: 0 0 100%;
max-width: 100%;
margin-bottom: var(--spacing-md, 1rem);
}
.prospero-cta-left .prospero-cta-content,
.prospero-cta-right .prospero-cta-content {
text-align: center;
}
.prospero-cta-heading {
font-size: 1.5rem;
}
.prospero-cta-text {
font-size: 1rem;
}
} .prospero-cta .prospero-placeholder {
opacity: 0.5;
} .prospero-testimonial-block {
display: flex;
gap: var(--spacing-md);
padding: var(--spacing-md);
margin: var(--spacing-lg) 0;
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
align-items: flex-start;
}
body.dark-mode .prospero-testimonial-block {
background: rgba(255, 255, 255, 0.05);
}
.prospero-testimonial-block .testimonial-image {
flex-shrink: 0;
}
.prospero-testimonial-block .testimonial-thumbnail {
border-radius: 50%;
width: 80px;
height: 80px;
object-fit: cover;
}
.prospero-testimonial-block .testimonial-content {
flex: 1;
}
.prospero-testimonial-block .testimonial-text {
font-style: italic;
margin: 0 0 var(--spacing-sm);
font-size: 1.1rem;
line-height: 1.6;
position: relative;
}
.prospero-testimonial-block .testimonial-text::before {
content: '"';
font-size: 3rem;
line-height: 1;
opacity: 0.2;
position: absolute;
top: -10px;
left: -20px;
}
.prospero-testimonial-block .testimonial-author {
display: block;
font-weight: 600;
font-style: normal;
color: var(--color-primary);
}
@media (max-width: 768px) {
.prospero-testimonial-block {
flex-direction: column;
text-align: center;
}
.prospero-testimonial-block .testimonial-image {
margin: 0 auto;
}
.prospero-testimonial-block .testimonial-text::before {
left: 50%;
transform: translateX(-50%);
}
} .testimonial-ratings {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
gap: var(--spacing-xs, 0.5rem) var(--spacing-md, 1.5rem);
margin-top: var(--spacing-sm, 0.75rem);
}
.testimonial-rating-item {
display: inline-flex;
align-items: center;
gap: 0.5rem;
font-size: 0.9rem;
flex: 0 0 auto;
}
.testimonial-rating-item .rating-label {
font-weight: 500;
color: var(--color-text);
}
body.dark-mode .testimonial-rating-item .rating-label {
color: var(--color-text-dark);
}
.testimonial-rating-item .rating-stars {
display: inline-flex;
align-items: center;
gap: 0.15rem;
line-height: 1;
} .testimonial-rating-item .rating-star {
display: inline-block;
width: 1.25rem;
height: 1.25rem;
flex-shrink: 0;
background-color: currentColor;
-webkit-mask-repeat: no-repeat;
-webkit-mask-position: center;
-webkit-mask-size: contain;
mask-repeat: no-repeat;
mask-position: center;
mask-size: contain;
} .testimonial-rating-item .rating-star.is-filled {
color: var(--color-highlight, #f5c518);
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2' fill='black' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2' fill='black' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
} .testimonial-rating-item .rating-star.is-empty {
color: color-mix(in srgb, var(--color-text) 35%, transparent);
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body.dark-mode .testimonial-rating-item .rating-star.is-empty {
color: color-mix(in srgb, var(--color-text-dark) 35%, transparent);
} @media (max-width: 600px) {
.testimonial-ratings {
flex-direction: column;
align-items: flex-start;
gap: var(--spacing-xs, 0.5rem);
}
} .prospero-testimonials[data-columns="1"] .testimonial-ratings,
.prospero-slider .testimonial-ratings {
justify-content: flex-start;
} .prospero-team-member-block {
margin: var(--spacing-lg) 0;
text-align: center;
}
.prospero-team-member-block.prospero-team-member-card {
background: rgba(0, 0, 0, 0.02);
border-radius: 8px;
padding: var(--spacing-md);
}
body.dark-mode .prospero-team-member-block.prospero-team-member-card {
background: rgba(255, 255, 255, 0.05);
}
.prospero-team-member-block .team-member-image {
margin-bottom: var(--spacing-sm);
overflow: hidden;
border-radius: 8px;
}
.prospero-team-member-block .team-member-image a {
display: block;
position: relative;
overflow: hidden;
}
.prospero-team-member-block .team-member-thumbnail {
width: 100%;
height: auto;
transition: transform 0.3s ease;
display: block;
}
.prospero-team-member-block .team-member-image a:hover .team-member-thumbnail {
transform: scale(1.05);
}
.prospero-team-member-block .team-member-name {
margin: 0 0 var(--spacing-xs);
font-size: 1.25rem;
}
.prospero-team-member-block .team-member-name a {
color: var(--color-text);
text-decoration: none;
transition: color 0.3s ease;
}
body.dark-mode .prospero-team-member-block .team-member-name a {
color: var(--color-text-dark);
}
.prospero-team-member-block .team-member-name a:hover {
color: var(--color-primary);
}
.prospero-team-member-block .team-member-excerpt {
font-size: 0.95rem;
line-height: 1.5;
color: var(--color-secondary);
}
body.dark-mode .prospero-team-member-block .team-member-excerpt {
color: rgba(255, 255, 255, 0.7);
} .prospero-member-content {
padding: var(--spacing-md, 1rem);
margin: var(--spacing-lg, 2rem) 0;
}
.prospero-member-content-login,
.prospero-member-content-restricted {
padding: var(--spacing-md, 1.5rem);
margin: var(--spacing-lg, 2rem) 0;
background: #fff3cd;
border-left: 4px solid #ffc107;
border-radius: 4px;
text-align: center;
}
body.dark-mode .prospero-member-content-login,
body.dark-mode .prospero-member-content-restricted {
background: rgba(255, 193, 7, 0.2);
color: var(--color-text-dark);
}
.prospero-member-content-login p,
.prospero-member-content-restricted p {
margin: 0 0 var(--spacing-sm, 1rem);
font-weight: 500;
}
.prospero-member-content-login p:last-child {
margin-bottom: 0;
}
.prospero-member-content-form {
margin-top: var(--spacing-md, 1rem);
text-align: left;
} .prospero-member-content-wrapper {
border: 2px dashed #ffc107;
border-radius: 4px;
padding: 0;
margin: var(--spacing-lg, 2rem) 0;
background: rgba(255, 193, 7, 0.05);
}
.prospero-member-content-header {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 12px;
background: rgba(255, 193, 7, 0.2);
border-bottom: 1px solid rgba(255, 193, 7, 0.3);
font-size: 13px;
font-weight: 500;
color: #856404;
}
.prospero-member-content-icon {
width: 16px;
height: 16px;
background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23856404"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/></svg>') no-repeat center;
}
.prospero-member-content-label {
flex: 1;
}
.prospero-member-content-inner {
padding: var(--spacing-md, 1rem);
min-height: 100px;
}
.prospero-member-content-fallback-preview {
padding: 8px 12px;
background: rgba(0, 0, 0, 0.05);
border-top: 1px solid rgba(0, 0, 0, 0.1);
font-size: 12px;
color: #666;
} .prospero-cta-editor,
.prospero-testimonial-editor,
.prospero-testimonials-list-editor,
.prospero-team-member-editor,
.prospero-member-content-editor {
min-height: 100px;
}
.prospero-member-content-editor {
position: relative;
}
.prospero-member-content-editor::before {
content: '';
position: absolute;
top: 10px;
right: 10px;
width: 24px;
height: 24px;
background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23666"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/></svg>') no-repeat center;
opacity: 0.3;
} .prospero-text-content {
margin: var(--spacing-lg, 2rem) 0;
}
.prospero-text-content > *:first-child {
margin-top: 0;
}
.prospero-text-content > *:last-child {
margin-bottom: 0;
} .prospero-text-content h1,
.prospero-text-content h2,
.prospero-text-content h3,
.prospero-text-content h4,
.prospero-text-content h5,
.prospero-text-content h6 {
margin-top: 1.5em;
margin-bottom: 0.5em;
}
.prospero-text-content p {
margin-bottom: 1em;
line-height: 1.7;
}
.prospero-text-content ul,
.prospero-text-content ol {
margin-bottom: 1em;
padding-left: 1.5em;
}
.prospero-text-content li {
margin-bottom: 0.5em;
} .prospero-text-content.alignwide {
max-width: var(--wp--style--global--wide-size, 1200px);
margin-left: auto;
margin-right: auto;
}
.prospero-text-content.alignfull {
max-width: none;
width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
} .wp-block-prospero-text-content {
border: 1px dashed #ddd;
padding: var(--spacing-sm, 1rem);
border-radius: 4px;
min-height: 100px;
}
.wp-block-prospero-text-content:focus-within {
border-color: var(--wp--preset--color--primary, #007bff);
}  .prospero-team {
margin: var(--spacing-lg, 2rem) 0;
} .prospero-team-columns {
display: grid;
gap: var(--spacing-md, 1.5rem);
}
.prospero-team-columns[data-columns="2"] {
grid-template-columns: repeat(2, 1fr);
}
.prospero-team-columns[data-columns="3"] {
grid-template-columns: repeat(3, 1fr);
}
.prospero-team-columns[data-columns="4"] {
grid-template-columns: repeat(4, 1fr);
}
.prospero-team-columns[data-columns="5"] {
grid-template-columns: repeat(5, 1fr);
}
.prospero-team-columns[data-columns="6"] {
grid-template-columns: repeat(6, 1fr);
} @media (max-width: 991px) {
.prospero-team-columns[data-columns="4"],
.prospero-team-columns[data-columns="5"],
.prospero-team-columns[data-columns="6"] {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 767px) {
.prospero-team-columns[data-columns="3"],
.prospero-team-columns[data-columns="4"],
.prospero-team-columns[data-columns="5"],
.prospero-team-columns[data-columns="6"] {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 480px) {
.prospero-team-columns {
grid-template-columns: 1fr !important;
}
} .prospero-team-list {
display: flex;
flex-direction: column;
gap: var(--spacing-md, 1.5rem);
}
.prospero-team-list .team-member-card {
display: flex;
gap: var(--spacing-md, 1.5rem);
align-items: flex-start;
width: 100%;
}
.prospero-team-list .team-image {
flex: 0 0 180px;
max-width: 180px;
margin-bottom: 0;
}
.prospero-team-list .team-content {
flex: 1;
padding-top: 0;
}
@media (max-width: 480px) {
.prospero-team-list .team-member-card {
flex-direction: column;
}
.prospero-team-list .team-image {
flex: 0 0 auto;
max-width: 100%;
width: 100%;
}
} .prospero-team .team-item {
text-align: center;
}
.prospero-team .team-member-card {
background: rgba(0, 0, 0, 0.03);
border-radius: 8px;
padding: var(--spacing-md, 1.5rem);
height: 100%;
}
body.dark-mode .prospero-team .team-member-card {
background: rgba(255, 255, 255, 0.05);
}
.prospero-team-list .team-item {
text-align: left;
}
.prospero-team .team-image {
margin-bottom: var(--spacing-sm, 1rem);
overflow: hidden;
} .prospero-team .team-image-container {
display: block;
width: 100%;
overflow: hidden;
position: relative;
}
.prospero-team .team-image-container img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s ease;
}
.prospero-team .team-image a:hover img,
.prospero-team .team-image button:hover img {
transform: scale(1.05);
} .prospero-team .team-image-square .team-image-container {
aspect-ratio: 1 / 1;
} .prospero-team .team-image-round .team-image-container {
aspect-ratio: 1 / 1;
border-radius: 50%;
} .prospero-team .team-image-portrait .team-image-container {
aspect-ratio: 3 / 4;
} .prospero-team .team-content {
padding: var(--spacing-xs, 0.5rem) 0;
}
.prospero-team .team-name {
margin: 0 0 var(--spacing-xs, 0.5rem);
font-size: 1.125rem;
}
.prospero-team .team-name a,
.prospero-team .team-name button {
color: inherit;
text-decoration: none;
background: none;
border: none;
padding: 0;
font: inherit;
cursor: pointer;
}
.prospero-team .team-name a:hover,
.prospero-team .team-name button:hover {
color: var(--color-primary, #007bff);
}
.prospero-team .team-position {
margin: 0 0 var(--spacing-sm, 0.75rem);
font-size: 0.875rem;
color: var(--color-text-muted, #666);
font-style: italic;
}
body.dark-mode .prospero-team .team-position {
color: rgba(255, 255, 255, 0.6);
}
.prospero-team .team-excerpt {
font-size: 0.9375rem;
color: var(--color-text-muted, #666);
margin-bottom: var(--spacing-sm, 0.75rem);
}
body.dark-mode .prospero-team .team-excerpt {
color: rgba(255, 255, 255, 0.7);
} .prospero-team .team-contact {
display: flex;
flex-direction: column;
align-items: center;
gap: 0.25rem;
margin-bottom: var(--spacing-sm, 0.75rem);
}
.prospero-team-list .team-contact {
align-items: flex-start;
}
.prospero-team .team-contact .team-contact-link {
display: inline-flex !important;
align-items: center;
justify-content: center;
gap: 0.5rem;
width: auto !important;
height: auto !important;
max-width: 100%;
border-radius: 0 !important;
background: none !important;
color: var(--color-text, #333);
text-decoration: none;
transition: color 0.2s ease;
}
.prospero-team-list .team-contact .team-contact-link {
justify-content: flex-start;
}
.prospero-team .team-contact .team-contact-link:hover {
color: var(--color-primary, #007bff);
text-decoration: underline;
text-underline-offset: 2px;
}
.prospero-team .team-contact .team-contact-link [class^="icon-"] {
font-size: 1rem;
width: 1.25rem;
flex: 0 0 1.25rem;
}
.prospero-team .team-contact .team-contact-text {
font-size: inherit;
color: inherit;
overflow-wrap: anywhere;
}
body.dark-mode .prospero-team .team-contact .team-contact-link {
color: var(--color-text-dark, #fff);
}
body.dark-mode .prospero-team .team-contact .team-contact-link:hover {
color: var(--color-primary, #007bff);
} .prospero-team .team-social {
display: flex;
justify-content: center;
gap: var(--spacing-xs, 0.5rem);
margin-bottom: var(--spacing-sm, 0.75rem);
}
.prospero-team-list .team-social {
justify-content: flex-start;
}
.prospero-team .team-social-link {
display: inline-flex;
align-items: center;
justify-content: center;
width: 2.5rem;
height: 2.5rem;
border-radius: 50%;
background: rgba(0, 0, 0, 0.05);
color: var(--color-text, #333);
transition: background-color 0.2s ease, color 0.2s ease;
text-decoration: none;
}
.prospero-team .team-social-link:hover {
background: var(--color-primary, #007bff);
color: #fff;
}
.prospero-team .team-social-link [class^="icon-"] {
font-size: 1.25rem;
}
body.dark-mode .prospero-team .team-social-link {
background: rgba(255, 255, 255, 0.1);
color: var(--color-text-dark, #fff);
}
body.dark-mode .prospero-team .team-social-link:hover {
background: var(--color-primary, #007bff);
color: #fff;
} .prospero-team .team-link {
margin-top: var(--spacing-xs, 0.5rem);
} .prospero-team .team-lightbox-trigger {
background: none;
border: none;
padding: 0;
cursor: pointer;
font: inherit;
color: inherit;
text-align: inherit;
width: 100%;
}
.prospero-team .team-image .team-lightbox-trigger {
display: block;
}
.prospero-team .team-lightbox-content {
display: none;
} .prospero-team-lightbox-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.85);
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
padding: var(--spacing-md, 1.5rem);
overflow-y: auto;
}
.prospero-team-lightbox-overlay[hidden] {
display: none;
}
.prospero-team-lightbox-modal {
background: var(--color-background, #fff);
max-width: 900px;
width: 100%;
max-height: 90vh;
overflow-y: auto;
border-radius: 8px;
position: relative;
}
body.dark-mode .prospero-team-lightbox-modal {
background: var(--color-background-dark, #1a1a1a);
color: var(--color-text-dark, #fff);
}
.prospero-team-lightbox-close {
position: absolute;
top: var(--spacing-sm, 1rem);
right: var(--spacing-sm, 1rem);
background: none;
border: none;
font-size: 2rem;
line-height: 1;
cursor: pointer;
color: var(--color-text, #333);
z-index: 1;
padding: 0.25rem;
}
body.dark-mode .prospero-team-lightbox-close {
color: var(--color-text-dark, #fff);
}
.prospero-team-lightbox-close:hover {
opacity: 0.7;
}
.team-lightbox-inner {
display: flex;
flex-direction: column;
padding: var(--spacing-lg, 2rem);
gap: var(--spacing-md, 1.5rem);
} .team-lightbox-top {
display: flex;
gap: var(--spacing-lg, 2rem);
align-items: flex-start;
} .team-lightbox-image {
flex: 0 0 240px;
max-width: 240px;
}
.team-lightbox-image .team-image-container {
display: block;
overflow: hidden;
}
.team-lightbox-image .team-image-container img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.team-lightbox-image.team-image-square .team-image-container {
aspect-ratio: 1 / 1;
}
.team-lightbox-image.team-image-round .team-image-container {
aspect-ratio: 1 / 1;
border-radius: 50%;
}
.team-lightbox-image.team-image-portrait .team-image-container {
aspect-ratio: 3 / 4;
}
.team-lightbox-details {
flex: 1;
}
.team-lightbox-name {
margin: 0 0 0.25rem;
}
.team-lightbox-position {
margin: 0 0 var(--spacing-md, 1rem);
font-size: 1.1rem;
color: var(--color-text-muted, #666);
font-style: italic;
}
body.dark-mode .team-lightbox-position {
color: rgba(255, 255, 255, 0.6);
} .team-lightbox-contact {
display: flex;
flex-direction: column;
gap: var(--spacing-xs, 0.5rem);
margin-bottom: var(--spacing-md, 1rem);
}
.team-lightbox-contact .team-contact-link {
display: inline-flex;
align-items: center;
gap: 0.5rem;
color: var(--color-text, #333);
text-decoration: none;
transition: color 0.2s ease;
}
.team-lightbox-contact .team-contact-link:hover {
color: var(--color-primary, #007bff);
}
.team-lightbox-contact .team-contact-link [class^="icon-"] {
font-size: 1rem;
width: 1.25rem;
}
body.dark-mode .team-lightbox-contact .team-contact-link {
color: var(--color-text-dark, #fff);
}
body.dark-mode .team-lightbox-contact .team-contact-link:hover {
color: var(--color-primary, #007bff);
} .team-lightbox-social {
display: flex;
gap: var(--spacing-xs, 0.5rem);
margin-bottom: var(--spacing-md, 1rem);
}
.team-lightbox-social .team-social-link {
display: inline-flex;
align-items: center;
justify-content: center;
width: 2.25rem;
height: 2.25rem;
border-radius: 50%;
background: rgba(0, 0, 0, 0.05);
color: var(--color-text, #333);
transition: background-color 0.2s ease, color 0.2s ease;
text-decoration: none;
}
.team-lightbox-social .team-social-link:hover {
background: var(--color-primary, #007bff);
color: #fff;
}
.team-lightbox-social .team-social-link [class^="icon-"] {
font-size: 1rem;
}
body.dark-mode .team-lightbox-social .team-social-link {
background: rgba(255, 255, 255, 0.1);
color: var(--color-text-dark, #fff);
}
body.dark-mode .team-lightbox-social .team-social-link:hover {
background: var(--color-primary, #007bff);
color: #fff;
}
.team-lightbox-bio {
line-height: 1.7;
padding-top: var(--spacing-md, 1.5rem);
} .single-team-profile .team-lightbox-inner {
padding: 0;
}
.single-team-profile .team-lightbox-image {
flex: 0 0 300px;
max-width: 300px;
}
@media (max-width: 767px) {
.team-lightbox-top {
flex-direction: column;
align-items: center;
}
.team-lightbox-image {
flex: 0 0 auto;
max-width: 200px;
width: 100%;
}
.team-lightbox-details {
width: 100%;
}
.team-lightbox-contact,
.team-lightbox-social {
justify-content: center;
}
.single-team-profile .team-lightbox-image {
flex: 0 0 auto;
max-width: 250px;
width: 100%;
}
} .prospero-team .team-lightbox-trigger:focus-visible {
outline: 2px solid var(--color-primary, #007bff);
outline-offset: 2px;
}
.prospero-team-lightbox-close:focus-visible {
outline: 2px solid var(--color-primary, #007bff);
outline-offset: 2px;
}  .alignwide {
max-width: var(--wp--style--global--wide-size, calc(var(--content-width, 1200px) + 200px));
margin-left: auto;
margin-right: auto;
width: calc(100% + var(--spacing-lg, 2rem));
margin-left: calc(-1 * var(--spacing-md, 1rem));
} .alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
position: relative;
} .alignfull > .wp-block-group__inner-container,
.alignfull > .wp-block-cover__inner-container,
.alignfull > .wp-block-columns,
.alignfull .alignfull-content,
.alignfull > *:not(.alignfull-background) {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
} .prospero-cta.alignfull {
border-radius: 0;
margin-left: calc(-50vw + 50%);
margin-right: 0;
width: 100vw;
max-width: 100vw;
padding-left: 0;
padding-right: 0;
}
.prospero-cta.alignfull .prospero-cta-inner {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.prospero-cta.alignfull.prospero-cta-center .prospero-cta-content {
max-width: 800px;
} .prospero-text-content.alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: 0;
padding-right: 0;
}
.prospero-text-content.alignfull > * {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
} .prospero-team.alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.prospero-team.alignfull .prospero-team-columns,
.prospero-team.alignfull .prospero-team-list,
.prospero-team.alignfull .prospero-team-slider {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
} .prospero-testimonials.alignfull,
.prospero-testimonial-single.alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.prospero-testimonials.alignfull > *,
.prospero-testimonial-single.alignfull .prospero-testimonial {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
} .prospero-partners.alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.prospero-partners.alignfull > * {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
} .prospero-partner-single {
display: flex;
gap: var(--spacing-md, 1.5rem);
align-items: center;
margin: var(--spacing-md, 1.5rem) 0;
}
.prospero-partner-single.partner-single-logo-right {
flex-direction: row-reverse;
}
.prospero-partner-single.partner-single-no-logo {
display: block;
}
.prospero-partner-single .partner-logo {
flex: 0 0 auto;
max-width: 220px;
width: 30%;
min-width: 140px;
}
.prospero-partner-single .partner-logo a {
display: block;
}
.prospero-partner-single .partner-logo img {
display: block;
width: 100%;
height: auto;
}
.prospero-partner-single .partner-content {
flex: 1 1 auto;
min-width: 0;
}
.prospero-partner-single .partner-name {
margin-top: 0;
margin-bottom: var(--spacing-xs, 0.5rem);
}
.prospero-partner-single .partner-description > :last-child {
margin-bottom: 0;
}
.prospero-partner-single .partner-visit {
margin: var(--spacing-sm, 1rem) 0 0;
} @media (max-width: 600px) {
.prospero-partner-single,
.prospero-partner-single.partner-single-logo-right {
flex-direction: column;
align-items: flex-start;
}
.prospero-partner-single .partner-logo {
width: auto;
max-width: 160px;
}
} .prospero-faqs.alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(-50vw + 50%);
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.prospero-faqs.alignfull .prospero-faq-list {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
}  .wp-block-group.alignfull {
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.wp-block-group.alignfull > .wp-block-group__inner-container {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
} .wp-block-cover.alignfull > .wp-block-cover__inner-container {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
} .wp-block-columns.alignfull {
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
} .wp-block-image.alignfull img,
.wp-block-gallery.alignfull {
width: 100%;
max-width: 100%;
} .wp-block-gallery.is-style-slider,
.wp-block-gallery.is-style-slider-autoplay,
.wp-block-gallery.prospero-gallery-slider,
.gallery.prospero-gallery-slider { display: block;
}
.wp-block-gallery.is-style-slider > .wp-block-image,
.wp-block-gallery.is-style-slider-autoplay > .wp-block-image,
.wp-block-gallery.prospero-gallery-slider > .wp-block-image,
.wp-block-gallery.is-style-slider .blocks-gallery-grid > .blocks-gallery-item,
.wp-block-gallery.is-style-slider-autoplay .blocks-gallery-grid > .blocks-gallery-item,
.wp-block-gallery.prospero-gallery-slider .blocks-gallery-grid > .blocks-gallery-item,
.gallery.prospero-gallery-slider > .gallery-item { margin: 0; max-width: none;
}
.wp-block-gallery.is-style-slider img,
.wp-block-gallery.is-style-slider-autoplay img,
.wp-block-gallery.prospero-gallery-slider img,
.gallery.prospero-gallery-slider img {
width: 100%;
height: auto;
display: block;
} .gallery.prospero-gallery-slider > .gallery-item .gallery-icon {
margin: 0;
width: 100%;
} .wp-block-gallery.is-style-slider .wp-block-image figcaption,
.wp-block-gallery.is-style-slider-autoplay .wp-block-image figcaption,
.wp-block-gallery.prospero-gallery-slider .wp-block-image figcaption,
.gallery.prospero-gallery-slider .gallery-item .wp-caption-text {
margin-top: var(--spacing-xs, 0.5rem);
margin-bottom: 0;
} .wp-block-gallery.is-style-slider:not(.prospero-gallery-slider-init) > .wp-block-image:not(:first-child),
.wp-block-gallery.is-style-slider-autoplay:not(.prospero-gallery-slider-init) > .wp-block-image:not(:first-child),
.wp-block-gallery.prospero-gallery-slider:not(.prospero-gallery-slider-init) > .wp-block-image:not(:first-child),
.gallery.prospero-gallery-slider:not(.prospero-gallery-slider-init) > .gallery-item:not(:first-child) {
visibility: hidden;
} .wp-block-video.alignfull,
.wp-block-embed.alignfull {
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
}
.wp-block-video.alignfull > *,
.wp-block-embed.alignfull .wp-block-embed__wrapper {
max-width: var(--content-width, 1200px);
margin-left: auto;
margin-right: auto;
} .wp-block-buttons.alignfull {
padding-left: var(--spacing-md, 1rem);
padding-right: var(--spacing-md, 1rem);
justify-content: center;
} .wp-block-group.alignwide > .wp-block-group__inner-container,
.wp-block-cover.alignwide > .wp-block-cover__inner-container {
max-width: 100%;
} @media (max-width: 1024px) {
.alignwide {
width: calc(100% + var(--spacing-md, 1rem));
margin-left: calc(-0.5 * var(--spacing-md, 1rem));
}
}
@media (max-width: 767px) { .alignfull,
.prospero-cta.alignfull,
.prospero-team.alignfull,
.prospero-testimonials.alignfull,
.prospero-partners.alignfull,
.prospero-faqs.alignfull,
.wp-block-group.alignfull,
.wp-block-cover.alignfull {
padding-left: var(--spacing-sm, 0.75rem);
padding-right: var(--spacing-sm, 0.75rem);
}
.alignfull > .wp-block-group__inner-container,
.alignfull > .wp-block-cover__inner-container,
.prospero-cta.alignfull .prospero-cta-content,
.prospero-text-content.alignfull > * {
padding-left: var(--spacing-sm, 0.75rem);
padding-right: var(--spacing-sm, 0.75rem);
} .alignwide {
width: 100%;
margin-left: 0;
}
}body{
font-size: 1.25rem;
}
h1, h2, h3, h4, h5, h6{
margin-top: 1rem;
margin-bottom: 1.5rem;
}
.pre-footer-area{
padding-top: 1rem;
}
.site-title {
margin: 0;
font-size: 2.125rem;
line-height: 1;
font-family: var(--font-family-heading);
font-weight: bold;
}
.site-header .site-title a{
color: var(--color-primary);
}
.site-description {
margin: 0;
font-size: 1.25rem;
color: var(--color-secondary);
font-family: var(--font-family-heading);
font-weight: 500;
}.flickity-enabled{position:relative}.flickity-enabled:focus{outline:0}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}.flickity-button{position:absolute;background:hsla(0,0%,100%,.75);border:none;color:#333}.flickity-button:hover{background:#fff;cursor:pointer}.flickity-button:focus{outline:0;box-shadow:0 0 0 5px #19f}.flickity-button:active{opacity:.6}.flickity-button:disabled{opacity:.3;cursor:auto;pointer-events:none}.flickity-button-icon{fill:currentColor}.flickity-prev-next-button{top:50%;width:44px;height:44px;border-radius:50%;transform:translateY(-50%)}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}