
/* Only actual footer elements may receive the dark footer skin. Blocksy also
 * puts data-footer on <body>; never style that attribute as a page surface. */
footer#footer,
footer.site-footer {
    --pl-footer-text: #C8D0D7;
    --pl-footer-link: #E4EAEE;
    --theme-text-color: var(--pl-footer-text);
    --theme-headings-color: #fff;
    --theme-link-initial-color: var(--pl-footer-link);
    --theme-link-hover-color: #9DEAE2;
    --theme-border-color: #3D4A56;
    --theme-icon-color: currentColor;
    background: var(--pl-graphite, #18232E) !important;
    color: var(--pl-footer-text) !important;
    border-top: 1px solid #2D3A46;
    font-family: var(--pl-font, "Cairo", Tahoma, Arial, sans-serif);
    font-size: 14px;
    line-height: 1.8;
    /* Grid column counts and widget visibility stay owned by Footer Builder. */
}
footer#footer > [data-row],
footer.site-footer > [data-row] {
    background: transparent !important;
    color: inherit;
}
footer#footer > [data-row="middle"] > :is(.ct-container, .ct-container-fluid),
footer.site-footer > [data-row="middle"] > :is(.ct-container, .ct-container-fluid) {
    padding-block: clamp(24px, 3vw, 36px) !important;
}
footer#footer > [data-row="bottom"] > :is(.ct-container, .ct-container-fluid),
footer.site-footer > [data-row="bottom"] > :is(.ct-container, .ct-container-fluid) {
    padding-block: 16px !important;
}
footer#footer :where(h1,h2,h3,h4,h5,h6),
footer.site-footer :where(h1,h2,h3,h4,h5,h6) {
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0;
}
footer#footer .widget-title,
footer.site-footer .widget-title {
    margin-block: 0 12px !important;
    font-size: 16px !important;
}
footer#footer :where(p, li),
footer.site-footer :where(p, li) {
    color: var(--pl-footer-text) !important;
    font-size: 14px;
    line-height: 1.8;
    overflow-wrap: anywhere;
    word-break: normal;
}
footer#footer a:not(.button):not(.wp-element-button),
footer.site-footer a:not(.button):not(.wp-element-button) {
    color: var(--pl-footer-link) !important;
    text-decoration: none;
    text-underline-offset: 4px;
    transition: color .15s ease;
}
footer#footer a:not(.button):not(.wp-element-button):is(:hover, :focus-visible),
footer.site-footer a:not(.button):not(.wp-element-button):is(:hover, :focus-visible) {
    color: #9DEAE2 !important;
    text-decoration: underline;
}
footer#footer :is(.widget_nav_menu ul, .ct-footer-menu ul),
footer.site-footer :is(.widget_nav_menu ul, .ct-footer-menu ul) {
    list-style: none;
    margin: 0;
    padding: 0;
}
footer#footer :is(.widget_nav_menu li, .ct-footer-menu li),
footer.site-footer :is(.widget_nav_menu li, .ct-footer-menu li) { margin-block: 0 8px; }
footer#footer :is(.ct-footer-copyright, .plsn-footer-copyright),
footer.site-footer :is(.ct-footer-copyright, .plsn-footer-copyright) {
    color: var(--pl-footer-text) !important;
    font-size: 13px !important;
    line-height: 1.8;
}
footer#footer [data-row="bottom"],
footer.site-footer [data-row="bottom"] { border-top: 1px solid #3D4A56 !important; }
footer#footer img,
footer.site-footer img { max-width: 100%; height: auto; }
footer#footer :where(a, button, input, select, textarea):focus-visible,
footer.site-footer :where(a, button, input, select, textarea):focus-visible {
    outline: 2px solid #9DEAE2 !important;
    outline-offset: 3px !important;
}
/* Preserve each social provider's SVG; only give the control readable contrast. */
footer#footer .ct-social-box a,
footer.site-footer .ct-social-box a {
    --theme-icon-color: #E4EAEE;
    --theme-icon-hover-color: #18232E;
    --background-color: #2D3A46;
    --background-hover-color: #9DEAE2;
    color: #E4EAEE !important;
    background: #2D3A46 !important;
    border-radius: 50%;
}
footer#footer .ct-social-box a:is(:hover, :focus-visible),
footer.site-footer .ct-social-box a:is(:hover, :focus-visible) {
    color: #18232E !important;
    background: #9DEAE2 !important;
    text-decoration: none;
}
footer#footer .ct-social-box a svg,
footer.site-footer .ct-social-box a svg { fill: currentColor; }
@media (max-width: 767px) {
    footer#footer :is(.widget, .ct-footer-copyright),
    footer.site-footer :is(.widget, .ct-footer-copyright) { text-align: start; }
    footer#footer :is(.ct-footer-copyright, .plsn-footer-copyright),
    footer.site-footer :is(.ct-footer-copyright, .plsn-footer-copyright) { font-size: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
    footer#footer a,
    footer.site-footer a { transition: none !important; }
}
