/* Portal — light, high-density news portal */
html[data-theme="portal"] { --portal-ink:#12213f; --portal-blue:#156ff5; --portal-sky:#eaf3ff; --portal-paper:#f7faff; --portal-card:#fff; --portal-line:#dfe8f5; --portal-muted:#70809b; background:var(--portal-paper); }
html[data-theme="portal"] body { background:linear-gradient(180deg,#fff 0,#f5f8fd 100%); color:var(--portal-ink); }
html[data-theme="portal"] #mega-menu-wrapper { background:#fff; border-bottom:1px solid var(--portal-line); box-shadow:0 4px 18px rgba(18,33,63,.05); }
html[data-theme="portal"] .navbar { min-height:78px; }
html[data-theme="portal"] .navbar-nav .nav-link { color:var(--portal-ink); font-weight:700; }
html[data-theme="portal"] .navbar-nav .nav-link:hover, html[data-theme="portal"] .navbar-nav .nav-item.active .nav-link { color:var(--portal-blue); }
html[data-theme="portal"] .btn-nav-subscribe, html[data-theme="portal"] .btn-search { background:var(--portal-blue); color:#fff; border:0; border-radius:12px; font-weight:700; }
html[data-theme="portal"] main { padding:28px 0 68px; }
html[data-theme="portal"] .title-index { max-width:1280px; margin:0 auto 20px; padding:0 20px; color:var(--portal-ink); font-size:clamp(1.85rem,3.4vw,3rem); font-weight:850; letter-spacing:-.055em; }
html[data-theme="portal"] .featured-section { max-width:1280px; margin:0 auto 34px; padding:8px; border:1px solid var(--portal-line); border-radius:20px; background:#fff; box-shadow:0 14px 40px rgba(34,76,130,.08); overflow:hidden; }
html[data-theme="portal"] .featured-section > .container-xl { width:100%; max-width:none; padding-right:0; padding-left:0; }
html[data-theme="portal"] .featured-section .fs-card { border-radius:14px; overflow:hidden; }
html[data-theme="portal"] .featured-section .fs-content { background:linear-gradient(180deg,transparent 15%,rgba(8,22,50,.94) 100%) !important; }
html[data-theme="portal"] .featured-section .fs-badge { align-self:flex-start; width:max-content; }
html[data-theme="portal"] .featured-section .fs-title, html[data-theme="portal"] .featured-section .fs-title a { color:#fff !important; text-shadow:0 2px 14px rgba(0,0,0,.72); }
html[data-theme="portal"] .featured-section .fs-meta, html[data-theme="portal"] .featured-section .fs-meta a, html[data-theme="portal"] .featured-section .fs-meta span, html[data-theme="portal"] .featured-section .fs-meta i { color:rgba(255,255,255,.86) !important; }
html[data-theme="portal"] .section { max-width:1280px; margin:0 auto 32px; }
html[data-theme="portal"] .section-content { background:var(--portal-card); border:1px solid var(--portal-line); border-radius:22px; box-shadow:0 10px 30px rgba(34,76,130,.06); }
html[data-theme="portal"] .section-title { padding:19px 24px 12px; }
html[data-theme="portal"] .section-title .title { color:var(--portal-ink); font-weight:850; }
html[data-theme="portal"] .section-title:after { height:4px; border-radius:99px; background:var(--portal-blue); }
html[data-theme="portal"] .post-item { height:100%; padding-bottom:17px; background:#fff; border:1px solid var(--portal-line); border-radius:18px; overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
html[data-theme="portal"] .post-item:hover { transform:translateY(-4px); box-shadow:0 16px 30px rgba(34,76,130,.12); }
html[data-theme="portal"] .post-item .image { border-radius:16px; overflow:hidden; }
html[data-theme="portal"] .post-item .title, html[data-theme="portal"] .post-item .description, html[data-theme="portal"] .post-item .post-meta { padding-left:17px; padding-right:17px; }
html[data-theme="portal"] .post-item .title a { color:var(--portal-ink); font-weight:800; }
html[data-theme="portal"] .post-item .description, html[data-theme="portal"] .post-meta { color:var(--portal-muted); }
html[data-theme="portal"] .section-content [id^="content_cat_"] { padding:0 .75rem 1rem; }
html[data-theme="portal"] .section-content [id^="content_cat_"] > .row { --bs-gutter-x:1.5rem; --bs-gutter-y:1.5rem; }
html[data-theme="portal"] .section-content [id^="content_cat_"] > .row + .row { margin-top:1.5rem; }
html[data-theme="portal"] .section-content [id^="content_cat_"] .post-item { margin-bottom:0; }
html[data-theme="portal"] .section-related-posts .section-content > .row { --bs-gutter-x:1.5rem; --bs-gutter-y:1.5rem; }
html[data-theme="portal"] .section-related-posts .post-item { margin-bottom:0; }
html[data-theme="portal"] .badge-category { border-radius:999px; }
html[data-theme="portal"] #footer { margin-top:28px; background:#102347; color:#eaf2ff; }
html[data-theme="portal"] .footer-widget, html[data-theme="portal"] .footer-about, html[data-theme="portal"] .copyright { color:#b9c8e2; }
html[data-theme="portal"] .mobile-header { background:#fff; border-bottom:1px solid var(--portal-line); }
html[data-theme="portal"] .custom-offcanvas { background:#fff; color:var(--portal-ink); }
@media (max-width:767.98px) { html[data-theme="portal"] main{padding-top:16px;} html[data-theme="portal"] .title-index{padding:0 14px;} html[data-theme="portal"] .featured-section{margin-bottom:22px;border-radius:16px;padding:6px;} html[data-theme="portal"] .featured-section .fs-card{border-radius:12px;} html[data-theme="portal"] .section{margin-bottom:22px;} html[data-theme="portal"] .section-content{border-radius:18px;} }

html[data-theme="portal"][data-bs-theme="dark"] {
    --portal-ink: #eef4ff;
    --portal-blue: #70a5ff;
    --portal-sky: #172944;
    --portal-paper: #0e1726;
    --portal-card: #172338;
    --portal-line: #344967;
    --portal-muted: #aebbd0;
    color-scheme: dark;
}

html[data-theme="portal"][data-bs-theme="dark"] body {
    color: var(--portal-ink);
    background:
        radial-gradient(circle at 10% 0, rgba(112,165,255,.13), transparent 28rem),
        linear-gradient(180deg, #111e32 0, var(--portal-paper) 100%);
}

html[data-theme="portal"][data-bs-theme="dark"] #mega-menu-wrapper,
html[data-theme="portal"][data-bs-theme="dark"] .featured-section,
html[data-theme="portal"][data-bs-theme="dark"] .section-content,
html[data-theme="portal"][data-bs-theme="dark"] .sidebar-widget,
html[data-theme="portal"][data-bs-theme="dark"] .post-item,
html[data-theme="portal"][data-bs-theme="dark"] .post-item-horizontal {
    border-color: var(--portal-line);
    background: var(--portal-card);
    color: var(--portal-ink);
}

html[data-theme="portal"][data-bs-theme="dark"] .navbar-nav .nav-link,
html[data-theme="portal"][data-bs-theme="dark"] .search-icon-btn {
    color: var(--portal-ink) !important;
}

html[data-theme="portal"][data-bs-theme="dark"] .title-index,
html[data-theme="portal"][data-bs-theme="dark"] .section-title .title,
html[data-theme="portal"][data-bs-theme="dark"] .post-item .title a,
html[data-theme="portal"][data-bs-theme="dark"] .post-item-horizontal .title a,
html[data-theme="portal"][data-bs-theme="dark"] .sidebar-widget .title {
    color: var(--portal-ink) !important;
}

html[data-theme="portal"][data-bs-theme="dark"] .post-item .description,
html[data-theme="portal"][data-bs-theme="dark"] .post-item .post-meta,
html[data-theme="portal"][data-bs-theme="dark"] .post-item-horizontal .description,
html[data-theme="portal"][data-bs-theme="dark"] .post-item-horizontal .post-meta,
html[data-theme="portal"][data-bs-theme="dark"] .sidebar-widget {
    color: var(--portal-muted);
}

html[data-theme="portal"][data-bs-theme="dark"] .section-title,
html[data-theme="portal"][data-bs-theme="dark"] .sidebar-widget .widget-head {
    border-color: var(--portal-line) !important;
}

html[data-theme="portal"][data-bs-theme="dark"] .mobile-header,
html[data-theme="portal"][data-bs-theme="dark"] .custom-offcanvas {
    background: #12213f;
    color: var(--portal-ink);
}

html[data-theme="portal"][data-bs-theme="dark"] .form-input,
html[data-theme="portal"][data-bs-theme="dark"] .form-control,
html[data-theme="portal"][data-bs-theme="dark"] select,
html[data-theme="portal"][data-bs-theme="dark"] textarea {
    border-color: var(--portal-line);
    background: #101d31;
    color: var(--portal-ink);
}

/* Portal header refresh: a compact utility bar and a calmer, app-like nav. */
html[data-theme="portal"] .topbar {
    --tb-bg: #0d1733;
    --tb-height: 44px;
    --tb-text: rgba(235, 242, 255, .78);
    --tb-text-hover: #fff;
    --tb-left-menu-gap: 3px;
    background: linear-gradient(100deg, #0b1530 0%, #14264f 58%, #102047 100%);
    border-bottom: 1px solid rgba(140, 181, 255, .18);
    box-shadow: 0 5px 18px rgba(8, 20, 52, .16);
    font-size: .76rem;
    letter-spacing: .01em;
}

html[data-theme="portal"] .topbar > .container-xl > .d-flex {
    min-height: 44px;
}

html[data-theme="portal"] .topbar .left-menu a,
html[data-theme="portal"] .topbar > .container-xl > .d-flex > .d-flex > a,
html[data-theme="portal"] .topbar > .container-xl > .d-flex > .d-flex > .dropdown > a {
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: var(--tb-text);
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

html[data-theme="portal"] .topbar .left-menu a:hover,
html[data-theme="portal"] .topbar > .container-xl > .d-flex > .d-flex > a:hover,
html[data-theme="portal"] .topbar > .container-xl > .d-flex > .d-flex > .dropdown > a:hover {
    border-color: rgba(160, 196, 255, .2);
    color: #fff !important;
    background: rgba(255, 255, 255, .09);
}

html[data-theme="portal"] .topbar .left-menu {
    gap: var(--tb-left-menu-gap);
}

html[data-theme="portal"] .topbar > .container-xl > .d-flex > .d-flex {
    gap: 4px !important;
}

html[data-theme="portal"] .topbar .user-avatar-sm {
    width: 28px;
    height: 28px;
    border: 2px solid rgba(255, 255, 255, .72);
    box-shadow: 0 0 0 2px rgba(93, 154, 255, .22);
}

html[data-theme="portal"] .topbar .theme-toggle-btn {
    width: 32px;
    height: 32px;
    justify-content: center;
    border: 1px solid rgba(160, 196, 255, .22);
    border-radius: 9px;
    color: rgba(235, 242, 255, .8);
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

html[data-theme="portal"] .topbar .theme-toggle-btn:hover {
    border-color: rgba(160, 196, 255, .48);
    color: #fff;
    background: rgba(255, 255, 255, .1);
}

html[data-theme="portal"] #mega-menu-wrapper {
    --mn-bg-nav: rgba(255, 255, 255, .96);
    --mn-bg-dropdown: #fff;
    --mn-text-main: var(--portal-ink);
    --mn-text-sub: var(--portal-muted);
    --mn-border: var(--portal-line);
    --mn-min-height: 84px;
    --mn-padding-nav-link: .65rem .82rem;
    --mn-margin-bottom: 0;
    background: var(--mn-bg-nav);
    border-bottom: 1px solid var(--portal-line);
    box-shadow: 0 10px 28px rgba(23, 54, 103, .08);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

html[data-theme="portal"] #mega-menu-wrapper .navbar {
    min-height: 84px;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-brand {
    display: inline-flex;
    align-items: center;
    height: 64px;
    margin-right: .8rem;
    padding: 4px 0;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-brand .logo {
    width: auto !important;
    max-width: 205px;
    height: 58px !important;
    object-fit: contain;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav {
    gap: 3px;
    margin-left: .7rem !important;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-item {
    display: flex;
    align-items: center;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-link {
    min-height: 42px;
    padding: .65rem .86rem !important;
    border: 1px solid transparent;
    border-radius: 11px;
    color: var(--portal-ink);
    font-size: .9rem;
    font-weight: 750;
    line-height: 1.1rem;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-link:hover,
html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-item.dropdown:hover > .nav-link,
html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-item.active > .nav-link {
    border-color: color-mix(in srgb, var(--portal-blue), transparent 82%);
    color: var(--portal-blue) !important;
    background: color-mix(in srgb, var(--portal-blue), transparent 92%);
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-link:hover {
    transform: translateY(-1px);
}

html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-link .mn-icon {
    width: 15px;
    height: 15px;
    margin-left: 3px;
    opacity: .8;
}

html[data-theme="portal"] #mega-menu-wrapper .search-icon-btn {
    width: 42px;
    height: 42px;
    margin-right: 4px;
    padding: 0;
    justify-content: center;
    border: 1px solid var(--portal-line);
    border-radius: 12px;
    color: var(--portal-ink);
    background: color-mix(in srgb, var(--portal-card), var(--portal-blue) 3%);
    transition: color .2s ease, border-color .2s ease, background-color .2s ease, transform .2s ease;
}

html[data-theme="portal"] #mega-menu-wrapper .search-icon-btn:hover,
html[data-theme="portal"] #mega-menu-wrapper .search-icon-btn.active {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--portal-blue), transparent 55%);
    color: var(--portal-blue);
    background: color-mix(in srgb, var(--portal-blue), transparent 92%);
}

html[data-theme="portal"] #mega-menu-wrapper .btn-nav-subscribe {
    min-height: 42px;
    padding: .65rem 1.1rem;
    border: 0;
    border-radius: 12px;
    color: #fff !important;
    background: linear-gradient(135deg, #08a878 0%, #12bf91 100%);
    box-shadow: 0 8px 18px rgba(10, 169, 125, .2);
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .02em;
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

html[data-theme="portal"] #mega-menu-wrapper .btn-nav-subscribe:hover {
    transform: translateY(-2px);
    filter: saturate(1.08);
    box-shadow: 0 12px 24px rgba(10, 169, 125, .28);
}

html[data-theme="portal"] #mega-menu-wrapper .header-search-dropdown {
    margin-top: 8px;
    border: 1px solid var(--portal-line);
    border-top: 3px solid var(--portal-blue);
    border-radius: 0 0 14px 14px;
    background: var(--portal-card);
    box-shadow: 0 18px 40px rgba(24, 61, 118, .16);
}

html[data-theme="portal"][data-bs-theme="dark"] #mega-menu-wrapper {
    --mn-bg-nav: rgba(23, 35, 56, .94);
    --mn-bg-dropdown: var(--portal-card);
    background: var(--mn-bg-nav);
    border-bottom-color: var(--portal-line);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    html[data-theme="portal"] #mega-menu-wrapper .navbar-nav .nav-link {
        padding-left: .58rem !important;
        padding-right: .58rem !important;
        font-size: .82rem;
    }

    html[data-theme="portal"] #mega-menu-wrapper .navbar-brand .logo {
        max-width: 180px;
    }
}

/* Portal footer refresh: clearer hierarchy, denser content and a stronger close. */
html[data-theme="portal"] #footer.portal-footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 64px;
    border-top: 0;
    color: #eaf2ff;
    background: #0b1835;
}

html[data-theme="portal"] #footer.portal-footer::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    content: "";
    background: linear-gradient(90deg, #156ff5 0%, #36a0ff 48%, #0dbb89 100%);
}

html[data-theme="portal"] #footer.portal-footer::after {
    position: absolute;
    z-index: -1;
    top: -180px;
    right: -100px;
    width: 500px;
    height: 500px;
    content: "";
    border-radius: 50%;
    opacity: .65;
    background: radial-gradient(circle, rgba(47, 122, 255, .2), transparent 68%);
    pointer-events: none;
}

html[data-theme="portal"] #footer.portal-footer .footer-inner {
    padding: 72px 0 56px;
}

html[data-theme="portal"] #footer.portal-footer .portal-footer-grid {
    --bs-gutter-x: 0;
    --bs-gutter-y: 42px;
    align-items: stretch;
}

html[data-theme="portal"] #footer.portal-footer .footer-widget {
    margin-top: 0;
    padding: 0 32px;
}

html[data-theme="portal"] #footer.portal-footer .footer-widget:first-child {
    padding-inline-start: 0;
}

html[data-theme="portal"] #footer.portal-footer .footer-widget + .footer-widget {
    border-inline-start: 1px solid rgba(169, 199, 245, .15);
}

html[data-theme="portal"] #footer.portal-footer .footer-widget:last-child {
    padding-inline-end: 0;
}

html[data-theme="portal"] #footer.portal-footer .footer-logo {
    display: flex;
    align-items: center;
    min-height: 58px;
    margin-bottom: 20px;
    text-align: start;
}

html[data-theme="portal"] #footer.portal-footer .footer-logo img {
    width: auto !important;
    max-width: 210px;
    height: auto !important;
    max-height: 58px;
    object-fit: contain;
}

html[data-theme="portal"] #footer.portal-footer .footer-about {
    max-width: 350px;
    color: #b8c8e0;
    font-size: .88rem;
    line-height: 1.7;
}

html[data-theme="portal"] #footer.portal-footer .footer-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 26px;
}

html[data-theme="portal"] #footer.portal-footer .footer-social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(169, 199, 245, .2);
    border-radius: 11px;
    color: #b8c8e0;
    background: rgba(255, 255, 255, .055);
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}

html[data-theme="portal"] #footer.portal-footer .footer-social-links a:hover {
    transform: translateY(-3px);
    border-color: rgba(112, 165, 255, .62);
    color: #fff !important;
    background: var(--portal-blue);
}

html[data-theme="portal"] #footer.portal-footer .footer-widget .widget-title {
    margin: 2px 0 24px;
    color: #fff;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .12em;
    line-height: 1.2;
    text-transform: uppercase;
}

html[data-theme="portal"] #footer.portal-footer .footer-widget .widget-title::after {
    display: block;
    width: 38px;
    height: 3px;
    margin-top: 11px;
    border-radius: 99px;
    content: "";
    background: linear-gradient(90deg, var(--portal-blue), #39a5ff);
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small {
    min-height: 68px;
    margin-bottom: 0 !important;
    padding: 0 0 14px;
    border-bottom: 1px solid rgba(169, 199, 245, .13);
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small + .post-item-small {
    padding-top: 14px;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small:last-child {
    border-bottom: 0;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .image {
    width: 76px;
    height: 54px;
    flex: 0 0 76px;
    border-radius: 10px;
    background: #172b4f;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .title {
    margin: -2px 0 5px;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.3;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .title a {
    display: -webkit-box;
    overflow: hidden;
    color: #eaf2ff;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .title a:hover {
    color: #78b2ff;
}

html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .post-meta,
html[data-theme="portal"] #footer.portal-footer .footer-posts .post-item-small .post-meta a {
    color: #8298b9;
    font-size: .68rem;
}

html[data-theme="portal"] #footer.portal-footer .newsletter {
    padding: 21px;
    border: 1px solid rgba(169, 199, 245, .16);
    border-radius: 17px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .035));
}

html[data-theme="portal"] #footer.portal-footer .newsletter .description {
    margin: 0 0 19px;
    color: #b8c8e0;
    font-size: .84rem;
    line-height: 1.6;
}

html[data-theme="portal"] #footer.portal-footer .newsletter .newsletter-inputs {
    display: flex;
    flex-wrap: nowrap;
    gap: 7px;
    align-items: center;
}

html[data-theme="portal"] #footer.portal-footer .newsletter .newsletter-inputs input,
html[data-theme="portal"] #footer.portal-footer .newsletter .form-input {
    min-width: 0;
    min-height: 43px;
    padding: .65rem .85rem;
    border: 1px solid rgba(169, 199, 245, .2);
    border-radius: 10px;
    color: #f5f9ff;
    background: rgba(5, 15, 37, .44);
    box-shadow: none !important;
}

html[data-theme="portal"] #footer.portal-footer .newsletter .newsletter-inputs input::placeholder {
    color: #8298b9;
}

html[data-theme="portal"] #footer.portal-footer .newsletter .newsletter-inputs input:focus {
    border-color: var(--portal-blue);
    outline: 0;
}

html[data-theme="portal"] #footer.portal-footer .newsletter .newsletter-inputs button {
    flex: 0 0 auto;
    min-height: 43px;
    padding: .65rem .95rem;
    border: 0;
    border-radius: 10px;
    color: #fff;
    background: linear-gradient(135deg, #156ff5, #2d8cff);
    font-size: .74rem;
    font-weight: 800;
}

html[data-theme="portal"] #footer.portal-footer .footer-copyright {
    padding: 22px 0;
    border-top: 1px solid rgba(169, 199, 245, .15);
}

html[data-theme="portal"] #footer.portal-footer .footer-copyright .copyright,
html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer a {
    color: #8298b9;
    font-size: .75rem;
    line-height: 1.5;
}

html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px 18px;
}

html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer ul li {
    margin: 0;
}

html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer a:hover {
    color: #fff;
}

@media (max-width: 991.98px) {
    html[data-theme="portal"] #footer.portal-footer .footer-widget {
        padding: 0 20px;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-widget:nth-child(odd) {
        padding-inline-start: 0;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-widget:nth-child(even) {
        padding-inline-end: 0;
    }
}

@media (max-width: 767.98px) {
    html[data-theme="portal"] #footer.portal-footer {
        margin-top: 42px;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-inner {
        padding: 52px 0 30px;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-widget,
    html[data-theme="portal"] #footer.portal-footer .footer-widget:nth-child(odd),
    html[data-theme="portal"] #footer.portal-footer .footer-widget:nth-child(even) {
        padding: 0;
        border-inline-start: 0;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-widget-newsletter {
        margin-top: 8px;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-copyright .copyright,
    html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer {
        text-align: center !important;
    }

    html[data-theme="portal"] #footer.portal-footer .footer-copyright .nav-footer ul {
        justify-content: center;
        margin-top: 12px;
    }
}

/* Floating WhatsApp contact for the Portal footer. */
html[data-theme="portal"] .portal-whatsapp-float {
    position: fixed;
    right: 20px;
    bottom: 84px;
    z-index: 9998;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 52px;
    padding: 0 18px 0 14px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: linear-gradient(135deg, #25d366, #13a952);
    color: #fff;
    box-shadow: 0 12px 28px rgba(12, 104, 55, .28), 0 0 0 5px rgba(37, 211, 102, .10);
    font-size: .82rem;
    font-weight: 750;
    letter-spacing: .01em;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

html[data-theme="portal"] .portal-whatsapp-float svg {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    fill: currentColor;
}

html[data-theme="portal"] .portal-whatsapp-float:hover,
html[data-theme="portal"] .portal-whatsapp-float:focus-visible {
    color: #fff;
    filter: brightness(1.06);
    transform: translateY(-3px);
    box-shadow: 0 16px 32px rgba(12, 104, 55, .34), 0 0 0 6px rgba(37, 211, 102, .14);
}

html[data-theme="portal"] .portal-whatsapp-float:focus-visible {
    outline: 3px solid rgba(37, 211, 102, .32);
    outline-offset: 3px;
}

@media (max-width: 767.98px) {
    html[data-theme="portal"] .portal-whatsapp-float {
        right: 14px;
        bottom: 78px;
        min-height: 50px;
        padding: 0 15px 0 13px;
    }
}

@media (max-width: 420px) {
    html[data-theme="portal"] .portal-whatsapp-float span {
        display: none;
    }

    html[data-theme="portal"] .portal-whatsapp-float {
        width: 52px;
        bottom: 76px;
        padding: 0;
        justify-content: center;
    }
}

/* Portal comments refresh: one clear composer card instead of nested panels. */
html[data-theme="portal"] .comments-module {
    margin-bottom: 42px;
}

html[data-theme="portal"] .comments-module .section-title {
    padding: 0 28px 14px;
    margin-bottom: 22px;
}

html[data-theme="portal"] .comments-module .section-content {
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

html[data-theme="portal"] .comments-module .modern-editor-wrapper {
    margin-bottom: 30px;
    padding: 22px;
    border: 1px solid var(--portal-line);
    border-radius: 22px;
    background: var(--portal-card);
    box-shadow: 0 12px 30px rgba(34, 76, 130, .07);
}

html[data-theme="portal"] .comments-module .modern-editor-wrapper form > .d-flex {
    gap: 16px;
}

html[data-theme="portal"] .comments-module .modern-editor-wrapper .avatar-container {
    padding-top: 0 !important;
    margin-inline-end: 0;
}

html[data-theme="portal"] .comments-module .modern-editor-wrapper .avatar-img {
    width: 46px;
    height: 46px;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(21, 111, 245, .18);
}

html[data-theme="portal"] .comments-module .modern-editor-wrapper .flex-grow-1.ms-3 {
    margin-inline-start: 0 !important;
}

html[data-theme="portal"] .comments-module .editor-container {
    border-color: var(--portal-line);
    border-radius: 16px;
    background: var(--portal-paper);
    box-shadow: none;
}

html[data-theme="portal"] .comments-module .editor-container.focused {
    border-color: var(--portal-blue) !important;
    box-shadow: 0 0 0 4px rgba(21, 111, 245, .11) !important;
}

html[data-theme="portal"] .comments-module .editor-textarea {
    min-height: 112px;
    padding: 17px 19px;
    color: var(--portal-ink);
}

html[data-theme="portal"] .comments-module .editor-textarea::placeholder {
    color: var(--portal-muted);
}

html[data-theme="portal"] .comments-module .form-footer-actions {
    margin-top: 14px !important;
}

html[data-theme="portal"] .comments-module .btn-post-comment {
    min-height: 48px;
    padding: 0 22px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #156ff5, #0b55d1);
    color: #fff;
    font-weight: 750;
    box-shadow: 0 8px 18px rgba(21, 111, 245, .22);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

html[data-theme="portal"] .comments-module .btn-post-comment:hover {
    color: #fff;
    filter: brightness(1.05);
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(21, 111, 245, .28);
}

html[data-theme="portal"] .comments-module .btn-post-comment:focus-visible {
    outline: 3px solid rgba(21, 111, 245, .24);
    outline-offset: 2px;
}

html[data-theme="portal"] .comments-module #commentsList {
    padding: 0 12px;
}

html[data-theme="portal"] .comments-module .comment-item {
    padding: 18px 0;
    margin-bottom: 0;
    border-bottom: 1px solid var(--portal-line);
}

html[data-theme="portal"] .comments-module .comment-item:last-child {
    border-bottom: 0;
}

html[data-theme="portal"][data-bs-theme="dark"] .comments-module .modern-editor-wrapper {
    background: var(--portal-card);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .16);
}

html[data-theme="portal"][data-bs-theme="dark"] .comments-module .editor-container {
    background: #101d31;
}

html[data-theme="portal"][data-bs-theme="dark"] .comments-module .modern-editor-wrapper .avatar-img {
    border-color: var(--portal-card);
}

@media (max-width: 767.98px) {
    html[data-theme="portal"] .comments-module .section-title {
        padding: 0 14px 12px;
    }

    html[data-theme="portal"] .comments-module .modern-editor-wrapper {
        padding: 16px;
        border-radius: 18px;
    }

    html[data-theme="portal"] .comments-module .modern-editor-wrapper form > .d-flex {
        gap: 10px;
    }

    html[data-theme="portal"] .comments-module .modern-editor-wrapper .avatar-img {
        width: 38px;
        height: 38px;
    }

    html[data-theme="portal"] .comments-module .btn-post-comment {
        width: 100%;
    }

    html[data-theme="portal"] .comments-module #commentsList {
        padding: 0;
    }
}
