/* Layout helpers applied by the CMS editor (class names only; the sanitizer keeps classes). */
[data-cms-region] img { max-width: 100%; height: auto; }
.cms-img-left { float: left; margin: .25rem 1.5rem 1rem 0; max-width: 50%; }
.cms-img-right { float: right; margin: .25rem 0 1rem 1.5rem; max-width: 50%; }
.cms-img-center { display: block; float: none; margin: 1rem auto; }
.cms-w-25 { width: 25%; }
.cms-w-50 { width: 50%; }
.cms-w-75 { width: 75%; }
.cms-w-100 { width: 100%; max-width: 100%; }
.cms-clear { clear: both; }
.cms-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; margin: 1.5rem 0; clear: both; }
.cms-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cms-cols > * > :first-child { margin-top: 0; }
.cms-box { background: #f5f0eb; border-left: 3px solid #997a3e; padding: 1rem 1.25rem; margin: 1.5rem 0; border-radius: 4px; }
.cms-button { display: inline-block; background: #997a3e; color: #fff !important; padding: .75rem 1.5rem; border-radius: 4px; text-decoration: none !important; font-weight: 600; letter-spacing: .5px; }
.cms-button:hover, .cms-button:focus { background: #7d6332; }
.gr-price-note { text-align: center; max-width: 820px; margin: -10px auto 20px; color: #555; }
.gr-footer-facebook a { display: inline-flex; align-items: center; }
@media (max-width: 700px) {
    .cms-cols, .cms-cols-3 { grid-template-columns: 1fr; }
    .cms-img-left, .cms-img-right { float: none; display: block; max-width: 100%; margin: 1rem auto; }
    .cms-w-25, .cms-w-50, .cms-w-75 { width: 100%; }
}

/* "Privatumo nustatymai" panel (site.js). Colours follow the site: text #1f2a2e, gold #997a3e. */
.gr-privacy-overlay { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 16px; box-sizing: border-box; background: rgba(31, 42, 46, .55); }
.gr-privacy-overlay[hidden] { display: none; }
.gr-privacy-dialog { position: relative; width: 100%; max-width: 440px; max-height: calc(100vh - 32px); overflow-y: auto; box-sizing: border-box; padding: 24px; background: #fff; color: #1f2a2e; border-radius: 14px; box-shadow: 0 12px 40px rgba(0, 0, 0, .25); text-align: left; font: 16px/1.55 "Open Sans", Arial, sans-serif; }
.gr-privacy-dialog p { margin: 0 0 12px; }
.gr-privacy-title { margin: 0 0 12px; font: 600 1.35rem/1.3 "Playfair Display", Georgia, serif; color: #1f2a2e; }
.gr-privacy-option { display: flex; align-items: flex-start; gap: 10px; margin: 16px 0 8px; font-weight: 600; cursor: pointer; }
.gr-privacy-option input { width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 auto; accent-color: #997a3e; cursor: pointer; }
.gr-privacy-option input:disabled { cursor: not-allowed; }
.gr-privacy-option input:focus-visible { outline: 3px solid #997a3e; outline-offset: 2px; }
.gr-privacy-note { font-size: .9rem; color: #4a5659; }
.gr-privacy-links a { color: #997a3e; font-weight: 600; text-decoration: underline; }
.gr-privacy-links a:hover, .gr-privacy-links a:focus { color: #7d6332; }
.gr-privacy-links a:focus-visible, .gr-privacy-close:focus-visible { outline: 3px solid #997a3e; outline-offset: 2px; }
.gr-privacy-actions { display: flex; justify-content: flex-end; margin-top: 8px; }
.gr-privacy-close { min-height: 44px; padding: .6rem 1.4rem; border: 0; border-radius: 14px; background: #997a3e; color: #fff; font: 600 1rem/1 "Open Sans", Arial, sans-serif; letter-spacing: .3px; cursor: pointer; }
.gr-privacy-close:hover { background: #7d6332; }
@media (max-width: 480px) {
    .gr-privacy-dialog { padding: 20px 18px; }
    .gr-privacy-close { width: 100%; }
}

/* Numbered lists in page text (references, steps). The imported theme removed their
   numbers and spacing; restore them for content columns only, not menus. */
.wpb_text_column ol, .gr-cms-service-extra ol, .cms-content ol {
    list-style: decimal outside !important; padding-left: 1.75em !important; margin: .4em 0 1.6em !important;
}
.wpb_text_column ol > li, .gr-cms-service-extra ol > li, .cms-content ol > li {
    display: list-item !important; list-style: inherit !important; margin: 0 0 .7em !important; padding-left: .35em !important; line-height: 1.6;
}
.wpb_text_column ol > li::before, .gr-cms-service-extra ol > li::before, .cms-content ol > li::before { content: none !important; }
.wpb_text_column ol > li::marker, .gr-cms-service-extra ol > li::marker, .cms-content ol > li::marker { color: #997a3e; font-weight: 600; }
