html { scroll-behavior: smooth; }
body:not(.boxed):not(.framed) { margin: 0; }
#layout-import-preview { min-height: 100vh; overflow: clip; }
.layout-importer-screen-reader-title {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
}
a[data-preview-link="disabled"] { cursor: default; }
.preview-removed-embed {
    align-items: center;
    aspect-ratio: var(--preview-embed-aspect, 16 / 9);
    background: #0f0f0f;
    box-sizing: border-box;
    color: #fff;
    display: flex !important;
    font: 600 14px/1.4 Arial, sans-serif;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    padding: 24px;
    text-align: center;
    width: var(--preview-embed-width, 560px);
}
.no-results > .page-content > [data-preview-form="disabled"] { margin-bottom: 1.3em; }
.wp-site-blocks, .wp-block-post-content { margin: 0; padding: 0; }
.flickity-enabled > .flickity-viewport { height: auto !important; }
.flickity-enabled > .flickity-viewport > .flickity-slider {
    display: flex !important; height: auto !important; position: relative !important;
    transform: none !important; width: 100% !important;
}
.flickity-enabled > .flickity-viewport > .flickity-slider > * { display: none !important; }
.flickity-enabled > .flickity-viewport > .flickity-slider > .is-selected {
    display: block !important;
    flex: 0 0 calc(100% / var(--pbc-preview-selected-count, 1));
    left: auto !important;
    max-width: calc(100% / var(--pbc-preview-selected-count, 1));
    position: relative !important;
}
.layout-importer-mobile-nav { display: none; }
@media (max-width: 1024px) {
    .elementor-widget-nav-menu { position: relative; z-index: 1000; }
    .elementor-menu-toggle {
        align-items: center; color: #ffca00; display: flex; font-size: 1.75rem;
        justify-content: center; line-height: 1; min-height: 2.75rem; min-width: 2.75rem;
        animation-duration: .001ms !important; transition-duration: .001ms !important;
    }
    [aria-label="Menu toggle"], [aria-label="Menu toggle"] * {
        animation: none !important; transition: none !important;
    }
    .elementor-menu-toggle .pbc-preview-menu-icon::before { content: "☰"; }
    .elementor-menu-toggle.elementor-active .pbc-preview-menu-icon::before { content: "×"; }
    .elementor-nav-menu--dropdown.pbc-preview-menu-open {
        display: block !important; left: 0 !important; max-height: 70vh !important;
        opacity: 1 !important; overflow: auto !important; position: absolute !important;
        top: 100% !important; transform: scaleY(1) !important; visibility: visible !important;
        width: 100% !important; z-index: 10000 !important; --menu-height: auto !important;
        animation-duration: .001ms !important; transition-duration: .001ms !important;
    }
    .layout-importer-mobile-nav.pbc-preview-menu-open {
        background: #111; display: block !important; left: 0; max-height: 70vh;
        overflow: auto; padding: 1rem; position: fixed; right: 0; top: 4.5rem;
        z-index: 10000;
    }
    .layout-importer-mobile-menu { display: block; list-style: none; margin: 0; padding: 0; }
    .layout-importer-mobile-menu li { display: block; margin: 0; }
    .layout-importer-mobile-menu a { display: block; padding: .75rem 1rem; }
}

/* PBV88 site08 canary: approved-copy rebinding inside the captured shell. */
.pbv08-page { background: #fff; color: #1b2b43; font: 16px/1.65 Arial, sans-serif; }
.pbv08-page * { box-sizing: border-box; }
.pbv08-container { max-width: 1180px; margin: 0 auto; padding: 24px 20px 70px; }
.pbv08-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; color: #697b91; font-size: 13px; margin-bottom: 18px; }
.pbv08-breadcrumb a { color: #176cce; text-decoration: none; }
.pbv08-hero { margin-bottom: 28px; }
.pbv08-hero img { display: block; width: 100%; height: auto; border-radius: 4px; }
.pbv08-grid { display: grid; grid-template-columns: minmax(0, 1fr) 228px; gap: 34px; align-items: start; }
.pbv08-main { min-width: 0; }
.pbv08-lead-image { margin: 0 0 25px; }
.pbv08-lead-image img { width: 100%; max-height: 405px; object-fit: cover; display: block; border-radius: 5px; }
.pbv08-article { border: 2px solid #226bd9; border-radius: 24px; padding: 26px 34px; background: #fff; }
.pbv08-article h1, .pbv08-article h2 { color: #176ac7; font-family: Arial, sans-serif; line-height: 1.35; }
.pbv08-article h1 { font-size: clamp(25px, 2.3vw, 33px); margin: 0 0 18px; }
.pbv08-article h2 { font-size: clamp(21px, 1.9vw, 27px); margin: 32px 0 12px; }
.pbv08-article p, .pbv08-article ul { color: #29384e; font-size: 16px; margin: 0 0 16px; }
.pbv08-article ul { padding-left: 24px; }
.pbv08-article li { margin-bottom: 7px; }
.pbv08-inline-image { margin: 25px auto; }
.pbv08-inline-image img { display: block; width: 100%; max-height: 420px; object-fit: cover; border-radius: 7px; }
.pbv08-aside h2 { color: #121f34; font-size: 18px; line-height: 1.4; margin: 0 0 13px; text-transform: uppercase; }
.pbv08-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pbv08-card { position: relative; overflow: hidden; border-radius: 7px; border: 1px solid #bdd4f7; }
.pbv08-card img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.pbv08-card span { position: absolute; bottom: 4px; left: 4px; right: 4px; color: #fff; font-size: 13px; font-weight: 800; line-height: 1.2; text-align: center; text-shadow: 0 2px 3px #092451; }
.pbv08-notice { border-left: 3px solid #176ac7; color: #4c5b6f; font-size: 13px; line-height: 1.5; margin-top: 26px; padding: 7px 0 7px 11px; }
@media (max-width: 850px) {
    .pbv08-grid { grid-template-columns: 1fr; gap: 25px; }
    .pbv08-article { padding: 22px; }
    .pbv08-cards { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 520px) {
    .pbv08-container { padding: 15px 14px 48px; }
    .pbv08-breadcrumb { margin-bottom: 13px; }
    .pbv08-hero { margin-bottom: 20px; }
    .pbv08-article { border-radius: 15px; padding: 17px; }
    .pbv08-article p, .pbv08-article ul { font-size: 15px; }
    .pbv08-cards { grid-template-columns: repeat(2, 1fr); }
}
