/* ==========================================================================
   Theme Overrides - OurDream AI / Reboot Theme
   Extracted from ourdreamai-app.com inline WordPress styles

   This file contains all inline styles NOT present in style.min.css:
   - CSS custom properties for re-skinning
   - WordPress block library core styles
   - Global WP preset variables & utility classes
   - Theme color overrides (header, nav, footer, accents)
   - Custom CSS additions (wp-custom-css)
   - Block layout flex styles
   ========================================================================== */


/* ==========================================================================
   1. CSS Custom Properties (Site Colors)
   Change these 7 values to re-skin the entire site.
   ========================================================================== */

:root {
    --site-header-bg: #000138;
    --site-nav-bg: #160038;
    --site-footer-bg: #230042;
    --site-accent: #012f77;
    --site-link-hover: #49bcff;
    --site-cta-primary: #FB3365;
    --site-cta-secondary: #29e499;
}


/* ==========================================================================
   2. WordPress Block Library Core (C3)
   Essential block defaults from wp-block-library
   ========================================================================== */

:root {
    --wp--preset--font-size--normal: 16px;
    --wp--preset--font-size--huge: 42px;
}

.has-regular-font-size { font-size: 1em; }
.has-larger-font-size { font-size: 2.625em; }
.has-normal-font-size { font-size: var(--wp--preset--font-size--normal); }
.has-huge-font-size { font-size: var(--wp--preset--font-size--huge); }

:root .has-text-align-center { text-align: center; }
:root .has-text-align-left { text-align: left; }
:root .has-text-align-right { text-align: right; }

.aligncenter { clear: both; }

.screen-reader-text {
    word-wrap: normal !important;
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

html :where(img[class*=wp-image-]) {
    height: auto;
    max-width: 100%;
}

:where(figure) { margin: 0 0 1em; }


/* ==========================================================================
   3. wp-block-button (C4)
   ========================================================================== */

.wp-block-button__link {
    align-content: center;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    height: 100%;
    text-align: center;
    word-break: break-word;
}

:where(.wp-block-button__link) {
    border-radius: 9999px;
    box-shadow: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    text-decoration: none;
}

.wp-block-buttons > .wp-block-button {
    display: inline-block;
    margin: 0;
}

.wp-block-buttons > .wp-block-button.has-custom-width { max-width: none; }

.wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link { width: 100%; }

.wp-block-buttons > .wp-block-button.wp-block-button__width-100 {
    flex-basis: 100%;
    width: 100%;
}

:root :where(.wp-block-button .wp-block-button__link.is-style-outline) {
    border: 2px solid;
    padding: .667em 1.333em;
}

:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)) {
    color: currentColor;
}

:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)) {
    background-color: initial;
}


/* ==========================================================================
   4. wp-block-heading (C5)
   ========================================================================== */

h1:where(.wp-block-heading).has-background,
h2:where(.wp-block-heading).has-background,
h3:where(.wp-block-heading).has-background,
h4:where(.wp-block-heading).has-background,
h5:where(.wp-block-heading).has-background,
h6:where(.wp-block-heading).has-background {
    padding: 1.25em 2.375em;
}


/* ==========================================================================
   5. wp-block-image (C6)
   ========================================================================== */

.wp-block-image img {
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
}

.wp-block-image.aligncenter { text-align: center; }
.wp-block-image .aligncenter { margin-left: auto; margin-right: auto; }
.wp-block-image .alignleft { float: left; margin: .5em 1em .5em 0; }
.wp-block-image .alignright { float: right; margin: .5em 0 .5em 1em; }
.wp-block-image :where(figcaption) { margin-bottom: 1em; margin-top: .5em; }
.wp-block-image figure { margin: 0; }
.wp-block-image { margin: 0 0 1em; }

:root :where(.wp-block-image figcaption) {
    color: #555;
    font-size: 13px;
    text-align: center;
}


/* ==========================================================================
   6. wp-block-list (C7)
   ========================================================================== */

ol, ul { box-sizing: border-box; }

:root :where(.wp-block-list.has-background) { padding: 1.25em 2.375em; }


/* ==========================================================================
   7. wp-block-paragraph (C8)
   ========================================================================== */

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; }


/* ==========================================================================
   8. wp-block-buttons layout (C9)
   ========================================================================== */

.wp-block-buttons { box-sizing: border-box; }

.wp-block-buttons > .wp-block-button {
    display: inline-block;
    margin: 0;
}

.wp-block-buttons.is-content-justification-center { justify-content: center; }
.wp-block-buttons.aligncenter { text-align: center; }

.wp-block-buttons:not(
    .is-content-justification-space-between,
    .is-content-justification-right,
    .is-content-justification-left,
    .is-content-justification-center
) .wp-block-button.aligncenter {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.wp-block-buttons .wp-block-button__link { width: 100%; }


/* ==========================================================================
   9. wp-block-columns (C10)
   ========================================================================== */

.wp-block-columns {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap !important;
    align-items: normal !important;
}

@media (min-width: 782px) {
    .wp-block-columns { flex-wrap: nowrap !important; }
}

@media (max-width: 781px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }
}

@media (min-width: 782px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 0;
        flex-grow: 1;
    }
}

:where(.wp-block-columns) { margin-bottom: 1.75em; }

:where(.wp-block-columns.has-background) { padding: 1.25em 2.375em; }

.wp-block-column {
    flex-grow: 1;
    min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}

.wp-block-column.is-vertically-aligned-center { align-self: center; }


/* ==========================================================================
   10. wp-block-table (C11)
   ========================================================================== */

.wp-block-table {
    overflow-x: auto;
    margin: 0 0 1em;
}

.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
}

.wp-block-table thead { border-bottom: 3px solid; }
.wp-block-table tfoot { border-top: 3px solid; }

.wp-block-table td,
.wp-block-table th {
    border: 1px solid;
    padding: .5em;
    word-break: normal;
}

.wp-block-table .has-fixed-layout {
    table-layout: fixed;
    width: 100%;
}

.wp-block-table .has-fixed-layout td,
.wp-block-table .has-fixed-layout th {
    word-break: break-word;
}


/* ==========================================================================
   11. Classic Theme Styles + Global Styles (C12 + C13)
   Default button appearance & WP preset custom properties
   ========================================================================== */

/* Classic theme button defaults */
.wp-block-button__link {
    color: #fff;
    background-color: #32373c;
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    font-size: 1.125em;
}

/* WordPress global preset custom properties */
:root {
    /* Colors */
    --wp--preset--color--black: #000000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #ffffff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;

    /* Font sizes */
    --wp--preset--font-size--small: 19.5px;
    --wp--preset--font-size--medium: 20px;
    --wp--preset--font-size--large: 36.5px;
    --wp--preset--font-size--x-large: 42px;

    /* Spacing */
    --wp--preset--spacing--20: 0.44rem;
    --wp--preset--spacing--30: 0.67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
}

/* WP .has-* color utility classes */
.has-black-color { color: var(--wp--preset--color--black) !important; }
.has-cyan-bluish-gray-color { color: var(--wp--preset--color--cyan-bluish-gray) !important; }
.has-white-color { color: var(--wp--preset--color--white) !important; }
.has-pale-pink-color { color: var(--wp--preset--color--pale-pink) !important; }
.has-vivid-red-color { color: var(--wp--preset--color--vivid-red) !important; }
.has-luminous-vivid-orange-color { color: var(--wp--preset--color--luminous-vivid-orange) !important; }
.has-luminous-vivid-amber-color { color: var(--wp--preset--color--luminous-vivid-amber) !important; }
.has-light-green-cyan-color { color: var(--wp--preset--color--light-green-cyan) !important; }
.has-vivid-green-cyan-color { color: var(--wp--preset--color--vivid-green-cyan) !important; }
.has-pale-cyan-blue-color { color: var(--wp--preset--color--pale-cyan-blue) !important; }
.has-vivid-cyan-blue-color { color: var(--wp--preset--color--vivid-cyan-blue) !important; }
.has-vivid-purple-color { color: var(--wp--preset--color--vivid-purple) !important; }

.has-black-background-color { background-color: var(--wp--preset--color--black) !important; }
.has-cyan-bluish-gray-background-color { background-color: var(--wp--preset--color--cyan-bluish-gray) !important; }
.has-white-background-color { background-color: var(--wp--preset--color--white) !important; }
.has-pale-pink-background-color { background-color: var(--wp--preset--color--pale-pink) !important; }
.has-vivid-red-background-color { background-color: var(--wp--preset--color--vivid-red) !important; }
.has-luminous-vivid-orange-background-color { background-color: var(--wp--preset--color--luminous-vivid-orange) !important; }
.has-luminous-vivid-amber-background-color { background-color: var(--wp--preset--color--luminous-vivid-amber) !important; }
.has-light-green-cyan-background-color { background-color: var(--wp--preset--color--light-green-cyan) !important; }
.has-vivid-green-cyan-background-color { background-color: var(--wp--preset--color--vivid-green-cyan) !important; }
.has-pale-cyan-blue-background-color { background-color: var(--wp--preset--color--pale-cyan-blue) !important; }
.has-vivid-cyan-blue-background-color { background-color: var(--wp--preset--color--vivid-cyan-blue) !important; }
.has-vivid-purple-background-color { background-color: var(--wp--preset--color--vivid-purple) !important; }

/* Font size utility classes */
.has-small-font-size { font-size: var(--wp--preset--font-size--small) !important; }
.has-medium-font-size { font-size: var(--wp--preset--font-size--medium) !important; }
.has-large-font-size { font-size: var(--wp--preset--font-size--large) !important; }
.has-x-large-font-size { font-size: var(--wp--preset--font-size--x-large) !important; }


/* ==========================================================================
   12. Pseudo-Clearfy Links (C14)
   ========================================================================== */

.pseudo-clearfy-link {
    color: #0058cf;
    cursor: pointer;
    text-decoration: none;
}

.pseudo-clearfy-link:hover {
    color: #2900cf;
    text-decoration: none;
}

.wp-block-button__link.pseudo-clearfy-link {
    color: var(--wp-block-button-pseudo-color, #fff);
    text-decoration: inherit;
}

.wp-block-button__link.pseudo-clearfy-link:hover {
    color: var(--wp-block-button-pseudo-color-hover, #fff);
}


/* ==========================================================================
   13. Theme Color Overrides (C15)
   The key block that customizes the entire Reboot theme look.
   All hardcoded colors replaced with var() references where applicable.
   ========================================================================== */

/* Logo max height */
.site-logotype img { max-height: 70px; }

/* Scroll-to-top button — override theme display:none!important */
.scrolltop { display: none !important; }
.scrolltop.visible { display: block !important; opacity: .7; }
.scrolltop:hover { opacity: 1; transform: translateY(-3px); }
.scrolltop:before { color: var(--site-accent); }

/* --- Selection + accent backgrounds --- */
::selection,
.card-slider__category,
.card-slider-container .swiper-pagination-bullet-active,
.post-card--grid .post-card__thumbnail:before,
.post-card:not(.post-card--small) .post-card__thumbnail a:before,
.post-card:not(.post-card--small) .post-card__category,
.post-box--high .post-box__category span,
.post-box--wide .post-box__category span,
.page-separator,
.pagination .nav-links .page-numbers:not(.dots):not(.current):before,
.btn,
.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle,
.comment-respond .form-submit input,
.page-links__item:hover {
    background-color: var(--site-accent);
}

/* --- List bullet backgrounds --- */
.entry-image--big .entry-image__body .post-card__category a,
.home-text ul:not([class]) > li:before,
.home-text ul.wp-block-list > li:before,
.page-content ul:not([class]) > li:before,
.page-content ul.wp-block-list > li:before,
.taxonomy-description ul:not([class]) > li:before,
.taxonomy-description ul.wp-block-list > li:before,
.widget-area .widget_categories ul.menu li a:before,
.widget-area .widget_categories ul.menu li span:before,
.widget-area .widget_categories > ul li a:before,
.widget-area .widget_categories > ul li span:before,
.widget-area .widget_nav_menu ul.menu li a:before,
.widget-area .widget_nav_menu ul.menu li span:before,
.widget-area .widget_nav_menu > ul li a:before,
.widget-area .widget_nav_menu > ul li span:before,
.page-links .page-numbers:not(.dots):not(.current):before,
.page-links .post-page-numbers:not(.dots):not(.current):before,
.pagination .nav-links .page-numbers:not(.dots):not(.current):before,
.pagination .nav-links .post-page-numbers:not(.dots):not(.current):before,
.entry-image--full .entry-image__body .post-card__category a,
.entry-image--fullscreen .entry-image__body .post-card__category a,
.entry-image--wide .entry-image__body .post-card__category a {
    background-color: var(--site-accent);
}

/* --- Border accent color --- */
.comment-respond input:focus,
select:focus,
textarea:focus,
.post-card--grid.post-card--thumbnail-no,
.post-card--standard:after,
.post-card--related.post-card--thumbnail-no:hover,
.spoiler-box,
.btn-primary,
.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle,
.inp:focus,
.entry-tag:focus,
.entry-tag:hover,
.search-screen .search-form .search-field:focus,
.entry-content ul:not([class]) > li:before,
.entry-content ul.wp-block-list > li:before,
.text-content ul:not([class]) > li:before,
.text-content ul.wp-block-list > li:before,
.page-content ul:not([class]) > li:before,
.page-content ul.wp-block-list > li:before,
.taxonomy-description ul:not([class]) > li:before,
.taxonomy-description ul.wp-block-list > li:before,
.entry-content blockquote:not(.wpremark),
.input:focus,
input[type=color]:focus,
input[type=date]:focus,
input[type=datetime-local]:focus,
input[type=datetime]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=range]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=week]:focus,
select:focus,
textarea:focus {
    border-color: var(--site-accent) !important;
}

/* --- Icon/text accent color --- */
.post-card--small .post-card__category,
.post-card__author:before,
.post-card__comments:before,
.post-card__date:before,
.post-card__like:before,
.post-card__views:before,
.entry-author:before,
.entry-date:before,
.entry-time:before,
.entry-views:before,
.entry-comments:before,
.entry-content ol:not([class]) > li:before,
.entry-content ol.wp-block-list > li:before,
.text-content ol:not([class]) > li:before,
.text-content ol.wp-block-list > li:before,
.entry-content blockquote:before,
.spoiler-box__title:after,
.search-icon:hover:before,
.search-form .search-submit:hover:before,
.star-rating-item.hover,
.comment-list .bypostauthor > .comment-body .comment-author:after,
.breadcrumb a,
.breadcrumb span,
.search-screen .search-form .search-submit:before,
.star-rating--score-1:not(.hover) .star-rating-item:nth-child(1),
.star-rating--score-2:not(.hover) .star-rating-item:nth-child(1),
.star-rating--score-2:not(.hover) .star-rating-item:nth-child(2),
.star-rating--score-3:not(.hover) .star-rating-item:nth-child(1),
.star-rating--score-3:not(.hover) .star-rating-item:nth-child(2),
.star-rating--score-3:not(.hover) .star-rating-item:nth-child(3),
.star-rating--score-4:not(.hover) .star-rating-item:nth-child(1),
.star-rating--score-4:not(.hover) .star-rating-item:nth-child(2),
.star-rating--score-4:not(.hover) .star-rating-item:nth-child(3),
.star-rating--score-4:not(.hover) .star-rating-item:nth-child(4),
.star-rating--score-5:not(.hover) .star-rating-item:nth-child(1),
.star-rating--score-5:not(.hover) .star-rating-item:nth-child(2),
.star-rating--score-5:not(.hover) .star-rating-item:nth-child(3),
.star-rating--score-5:not(.hover) .star-rating-item:nth-child(4),
.star-rating--score-5:not(.hover) .star-rating-item:nth-child(5) {
    color: var(--site-accent);
}

/* --- Link hover color --- */
a:hover,
a:focus,
a:active,
.spanlink:hover,
.entry-content a:not(.wp-block-button__link):hover,
.entry-content a:not(.wp-block-button__link):focus,
.entry-content a:not(.wp-block-button__link):active,
.top-menu ul li > a:hover,
.top-menu ul li > span:hover,
.main-navigation ul li a:hover,
.main-navigation ul li span:hover,
.footer-navigation ul li a:hover,
.footer-navigation ul li span:hover,
.comment-reply-link:hover,
.pseudo-link:hover,
.child-categories ul li a:hover {
    color: var(--site-link-hover);
}

/* --- Top-menu underline effect --- */
.top-menu > ul > li > a:before,
.top-menu > ul > li > span:before {
    background: var(--site-link-hover);
}

/* --- Hover border accents --- */
.child-categories ul li a:hover,
.post-box--no-thumb a:hover {
    border-color: var(--site-link-hover);
}

.post-box--card:hover {
    box-shadow: inset 0 0 0 1px var(--site-link-hover);
}

/* --- Structural backgrounds --- */
.site-header {
    background-color: var(--site-header-bg);
}

@media (min-width: 992px) {
    .top-menu ul li .sub-menu {
        background-color: var(--site-header-bg);
    }
}

.main-navigation,
.footer-navigation,
.footer-navigation .removed-link,
.main-navigation .removed-link,
.main-navigation ul li > a,
.footer-navigation ul li > a {
    color: #ffffff;
}

.main-navigation,
.main-navigation ul li .sub-menu li,
.main-navigation ul li.menu-item-has-children:before,
.footer-navigation,
.footer-navigation ul li .sub-menu li,
.footer-navigation ul li.menu-item-has-children:before {
    background-color: var(--site-nav-bg);
}

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

/* --- Font override --- */
body {
    font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}


/* ==========================================================================
   14. Custom CSS (C16 - wp-custom-css)
   ========================================================================== */

.author-box .author-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 25px;
    margin-top: 35px;
}

.site-header {
    box-shadow: none;
}

.humburger span:nth-child(2) {
    top: 50%;
    margin-top: -1px;
}

.humburger span {
    background: #ffff;
}

.widget {
    margin-bottom: 1.5rem;
}

.comment-respond .form-submit input {
    background: #2A91F4;
}

.entry-content .wp-block-button,
.entry-content p,
.home-text .wp-block-button,
.home-text p,
.taxonomy-description .wp-block-button,
.taxonomy-description p {
    margin-bottom: 0.8em;
}

@media (max-width: 768px) {
    .footer-widget {
        margin-bottom: 40px;
    }
}

.link-footer {
    display: inline-block;
    margin-right: 10px;
    text-decoration: none;
}


/* ==========================================================================
   15. wp-block-columns Layout Flex (C18)
   Per-page layout overrides for flex containers
   ========================================================================== */

/* Flex layout utilities for WP block editor */
.wp-block-buttons.is-layout-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
}

.wp-block-buttons.is-layout-flex.is-content-justification-center {
    justify-content: center;
}

.wp-block-columns.is-layout-flex {
    display: flex;
    gap: 2em;
}

.wp-block-column.is-layout-flow > :first-child { margin-top: 0; }
.wp-block-column.is-layout-flow > :last-child { margin-bottom: 0; }

/* Specific layout instances (can be removed if not needed) */
.wp-container-core-buttons-is-layout-fe48e5de { justify-content: center; }
.wp-container-core-columns-is-layout-8f761849 { flex-wrap: nowrap; }


/* ==========================================================================
   16. Cookie Banner (optional module)
   ========================================================================== */

.clearfy-cookie {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 12px;
    color: #555555;
    background: #ffffff;
    box-shadow: 0 3px 20px -5px rgba(41, 44, 56, 0.2);
    z-index: 9999;
    font-size: 13px;
    border-radius: 12px;
    transition: .3s;
}

.clearfy-cookie--left {
    left: 20px;
    bottom: 20px;
    right: auto;
    max-width: 400px;
    margin-right: 20px;
}

.clearfy-cookie--right {
    left: auto;
    bottom: 20px;
    right: 20px;
    max-width: 400px;
    margin-left: 20px;
}

.clearfy-cookie.clearfy-cookie-hide {
    transform: translateY(150%) translateZ(0);
    opacity: 0;
}

.clearfy-cookie-container {
    max-width: 1170px;
    margin: 0 auto;
    text-align: center;
}


/* ==========================================================================
   17b. Language Switcher
   ========================================================================== */

.lang-switcher {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 12px;
    z-index: 800;
}

.lang-switcher__toggle {
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.25);
    color: #fff;
    padding: 5px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px;
    font-family: inherit;
    white-space: nowrap;
    transition: background .2s;
}

.lang-switcher__toggle:hover {
    background: rgba(255,255,255,0.22);
}

.lang-switcher__list {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    background: var(--site-nav-bg, #160038);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 8px;
    list-style: none;
    margin: 4px 0 0;
    padding: 6px 0;
    min-width: 160px;
    max-height: 320px;
    overflow-y: auto;
    box-shadow: 0 8px 24px rgba(0,0,0,0.4);
}

.lang-switcher:hover .lang-switcher__list,
.lang-switcher.open .lang-switcher__list {
    display: block;
}

.lang-switcher__list li a {
    display: block;
    padding: 6px 16px;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
    transition: background .15s;
}

.lang-switcher__list li a:hover {
    background: rgba(255,255,255,0.1);
    color: var(--site-link-hover, #49bcff);
}

.lang-switcher__list li.active a {
    color: var(--site-link-hover, #49bcff);
    font-weight: 700;
}

/* All content images: adaptive, never stretch */
.entry-content img,
.wp-block-image img {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain;
    border-radius: 8px;
}

/* CTA banner logo — constrain */
.wp-block-columns.has-background .wp-block-image img {
    max-height: 120px !important;
    max-width: 170px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
}

/* Kill ALL horizontal rules in content */
.entry-content hr,
.entry-content .wp-block-separator,
hr.wp-block-separator,
.entry-content > hr {
    display: none !important;
    border: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Footer: never overlap content — override theme's position:absolute */
.site-footer-container,
.site-footer-container:not(.site-footer-container--disable-sticky) {
    position: relative !important;
    bottom: auto !important;
    z-index: 1;
    margin-top: 40px;
}

/* Page wrapper needs relative + auto height to contain footer */
#page.site {
    position: relative;
    min-height: auto;
}

/* Ensure content area has enough bottom padding */
.site-content {
    padding-bottom: 60px;
}

/* Lang switcher — flag images */
.lang-flag {
    display: inline-block;
    width: 20px;
    height: 14px;
    vertical-align: middle;
    margin-right: 4px;
    border-radius: 2px;
    background-size: cover;
    background-position: center;
}

/* Sticky nav bar — follows header on scroll */
.main-navigation.stuck {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}
.main-navigation.stuck + .mobile-menu-placeholder {
    display: block;
}

/* ==========================================================================
   18. Mobile Header Fixes
   ========================================================================== */

@media (max-width: 991px) {
    /* Header layout: flex row, logo left, CTA + burger right */
    .site-header-inner {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        padding: 8px 15px;
        flex-wrap: nowrap;
        position: relative;
    }

    /* Shrink logo */
    .site-logotype img {
        max-height: 45px !important;
        width: auto;
    }

    /* CTA + burger group on the right */
    .header-html-2 {
        margin-left: auto;
        margin-right: 0;
    }

    /* Shrink CTA button */
    .header-html-2 .wp-block-button__link {
        font-size: 13px !important;
        padding: 8px 14px !important;
    }

    /* Hamburger: show, position right, keep relative for span children */
    .humburger {
        display: inline-block !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 24px;
        height: 16px;
        margin-left: 15px;
        cursor: pointer;
        z-index: 700;
        vertical-align: middle;
        flex-shrink: 0;
    }

    .humburger span {
        position: absolute;
        display: block;
        width: 100%;
        height: 2px;
        background: #fff;
        left: 0;
        margin-left: 0;
        transition: transform .3s, opacity .3s;
    }
    .humburger span:first-child { top: 0; }
    .humburger span:nth-child(2) { top: 50%; margin-top: -1px; }
    .humburger span:last-child { bottom: 0; }

    .humburger.open span:first-child { transform: translateY(7px) rotate(45deg); }
    .humburger.open span:nth-child(2) { opacity: 0; }
    .humburger.open span:last-child { transform: translateY(-7px) rotate(-45deg); }

    /* Hide desktop nav on mobile */
    #site-navigation { display: none !important; }

    /* Mobile nav dropdown styling */
    #site-navigation-mobile {
        background-color: var(--site-nav-bg, #160038);
        overflow: hidden;
    }
    #site-navigation-mobile .menu {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    #site-navigation-mobile .menu li {
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    #site-navigation-mobile .menu li a,
    #site-navigation-mobile .menu li .removed-link {
        display: block;
        padding: 12px 20px;
        color: #fff;
        text-decoration: none;
        font-size: 15px;
        font-weight: 700;
    }
    #site-navigation-mobile .menu li a:hover {
        color: var(--site-link-hover, #49bcff);
    }
}

/* Desktop: hide hamburger */
@media (min-width: 992px) {
    .humburger { display: none !important; }
    #site-navigation-mobile { display: none !important; }
}

.clearfy-cookie-accept {
    background: #f200d5;
    color: #fff;
    border: 0;
    padding: .2em .8em;
    margin: 0 0 0 .5em;
    font-size: 13px;
    border-radius: 4px;
    cursor: pointer;
}

.clearfy-cookie-accept:hover,
.clearfy-cookie-accept:focus {
    opacity: .9;
}


/* ==========================================================================
   17. Image auto-sizes (modern browsers)
   ========================================================================== */

img:is([sizes=auto i], [sizes^="auto," i]) {
    contain-intrinsic-size: 3000px 1500px;
}
