.sw-breadcrumbs {
    padding: 14px 0;
    background: var(--card);
    border-bottom: 1px solid var(--border)
}

.sw-breadcrumb-item {
    list-style: none
}

.sw-breadcrumb-item:not(:last-child)::after {
    content: "›";
    margin: 0 8px;
    color: var(--ink4)
}

.sw-breadcrumb-item a {
    text-decoration: none;
    color: var(--ink3);
    font-size: 14px;
    font-weight: 500;
    transition: color var(--t)
}

.sw-breadcrumb-item a:hover {
    color: var(--red)
}

.sw-breadcrumb-item.sw-active {
    color: var(--ink);
    font-weight: 600;
    font-size: 14px
}

.sw-static-page {
    background: var(--bg);
    min-height: 400px
}

.sw-page-content {
    padding: 30px 0 50px
}

.sw-page-article {
    background: var(--card);
    border-radius: var(--r);
    box-shadow: var(--sh);
    overflow: hidden;
    margin-bottom: 30px
}

.sw-page-header {
    padding: 24px 28px 0
}

.sw-page-title {
    font-size: 30px;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.4;
    margin: 0
}

.sw-page-featured-image {
    margin: 0 28px 20px;
    border-radius: var(--r);
    overflow: hidden
}

.sw-page-body {
    padding: 0 28px 28px;
    font-size: 1.1rem;
    line-height: 1.9;
    color: var(--ink)
}

.sw-page-body p {
    margin-bottom: 1.2em
}

.sw-page-body h2,
.sw-page-body h3,
.sw-page-body h4 {
    margin: 1.5em 0 .8em;
    font-weight: 600;
    color: var(--ink)
}

.sw-page-body img {
    max-width: 100%;
    height: auto;
    border-radius: var(--r);
    margin: 16px 0
}

.sw-post-content div:not([class*="custom-card"]):not([class*="sw-media"]) {
    margin-bottom: 1.25em;
    line-height: 1.7
}

.sw-post-content>div {
    margin-bottom: 1.25rem
}

.sw-single-post-content,
.sw-post-content-page {
    padding: 30px 0;
    background: var(--bg)
}

.sw-post-content-page .sw-post-article {
    background: var(--card);
    border-radius: var(--r);
    box-shadow: var(--sh);
    overflow: hidden;
    margin-bottom: 30px
}

.sw-post-image {
    padding: 0
}

.sw-post-heading {
    padding: 20px 25px 0
}

.sw-subtitle {
    font-size: 18px;
    color: var(--ink3);
    font-weight: 600;
    margin-bottom: 8px
}

.sw-topic-date {
    font-size: 13px;
    color: var(--ink4);
    margin-bottom: 16px
}

.sw-writers-related {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 10px
}

.sw-writers-section {
    display: flex;
    align-items: center;
    gap: 12px
}

.sw-writer-item {
    display: flex;
    align-items: center;
    gap: 10px
}

.sw-writer-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover
}

.sw-writer-name a {
    font-weight: 600;
    color: var(--ink);
    font-size: 14px
}

.sw-writer-name a:hover {
    color: var(--red)
}

.sw-publish-date {
    display: flex;
    align-items: center;
    gap: 6px
}

.sw-post-main-photo {
    width: 100%;
    border-radius: var(--r)
}

.sw-image-desc,
.sw-image-caption {
    font-size: 13px;
    color: var(--ink4);
    text-align: center;
    margin: 8px 25px 0;
    font-style: italic
}

.sw-article-body,
.sw-article-content {
    padding: 0 25px 25px;
    font-size: 1.15rem;
    line-height: 1.9;
    color: var(--ink)
}

.sw-article-body p,
.sw-article-content p {
    margin-bottom: 1.2em;
    text-indent: 15px
}

.sw-article-body h2,
.sw-article-body h3,
.sw-article-body h4,
.sw-article-content h2,
.sw-article-content h3,
.sw-article-content h4 {
    margin: 1.5em 0 .8em;
    font-weight: 600
}

.sw-article-body img,
.sw-article-content img {
    max-width: 100%;
    height: auto;
    border-radius: var(--r);
    margin: 20px 0
}

.sw-article-body blockquote,
.sw-article-content blockquote {
    background: var(--g100);
    border-right: 4px solid var(--red);
    padding: 15px 25px;
    margin: 20px 0;
    font-style: italic;
    color: var(--ink2);
    border-radius: var(--r)
}

.sw-customBlockQuote {
    background: var(--g100);
    border-right: 4px solid var(--red);
    padding: 15px 25px;
    margin: 20px 0;
    font-style: italic;
    color: var(--ink2);
    border-radius: var(--r)
}

.sw-tags-title {
    font-size: 16px;
    font-weight: 600;
    margin: 20px 0 10px;
    color: var(--ink)
}

.sw-tags-topic,
.sw-tags-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 25px 20px
}

.sw-tag-link {
    background: var(--g200);
    color: var(--ink2);
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    transition: all var(--t)
}

.sw-tag-link:hover {
    background: var(--red);
    color: #fff
}

.sw-bottom-article {
    padding: 0 25px 25px;
    border-top: 1px solid var(--border);
    margin-top: 16px
}

.sw-social-share {
    text-align: center;
    padding: 20px 0 10px
}

.sw-share-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink4);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-bottom: 12px
}

.sw-social-network,
.sw-share {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0
}

.sw-social-network li,
.sw-share li {
    list-style: none
}

.sw-share-facebook,
.sw-share-whatsapp,
.sw-share-twitter,
.sw-share-linkedin {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #fff;
    transition: all var(--t);
    cursor: pointer
}

.sw-share-facebook {
    background: #1877f2
}

.sw-share-facebook:hover {
    background: #1565c0
}

.sw-share-whatsapp {
    background: #067f4b
}

.sw-share-whatsapp:hover {
    background: #055a34
}

.sw-share-twitter {
    background: #1da1f2
}

.sw-share-twitter:hover {
    background: #0d8bd9
}

.sw-share-linkedin {
    background: #0077b5
}

.sw-share-linkedin:hover {
    background: #005e93
}

.sw-related-section {
    padding: 30px 0 0
}

.sw-related-header {
    margin-bottom: 20px
}

.sw-related-header h3 {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink);
    padding-bottom: 12px;
    border-bottom: 2px solid var(--border);
    position: relative
}

.sw-related-header h3::after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: 0;
    width: 70px;
    height: 2px;
    background: var(--red)
}

.sw-related-posts {
    display: flex;
    flex-wrap: wrap;
    gap: 20px
}

.sw-col-left,
.sw-related-item {
    flex: 0 0 calc(33.333% - 14px)
}

.sw-img-hover-container {
    display: block;
    border-radius: var(--r);
    overflow: hidden;
    transition: transform var(--t)
}

.sw-img-hover-container:hover {
    transform: translateY(-3px)
}

.sw-topics-card,
.sw-related-image {
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: var(--r)
}

.sw-text-title,
.sw-related-title {
    font-size: 15px;
    font-weight: 600;
    color: var(--ink);
    line-height: 1.5;
    margin-top: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.sw-text-title a,
.sw-related-title a {
    color: var(--ink);
    text-decoration: none;
    transition: color var(--t)
}

.sw-text-title a:hover,
.sw-related-title a:hover {
    color: var(--red)
}

.sw-post-sidebar,
.sw-right-sidebar {
    background: var(--card);
    border-radius: var(--r);
    box-shadow: var(--sh);
    overflow: hidden
}

.sw-sidebar-widget {
    background: #f4f5f60a !important;
    border-radius: var(--r);
    box-shadow: var(--sh);
    margin-bottom: 22px;
    overflow: hidden;
    transition: box-shadow var(--t)
}

.sw-sidebar-widget:hover {
    box-shadow: var(--sh2)
}

.sw-sidebar-widget-header {
    background: var(--dark);
    padding: 14px 20px;
    border-bottom: 3px solid var(--red)
}

.sw-sidebar-widget-header h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 600;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 8px
}

.sw-sidebar-widget-header h3 i {
    color: var(--red);
    font-size: 18px
}

.sw-sidebar-widget-content {
    padding: 12px 0
}

.sw-sidebar-post-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.sw-sidebar-post-item {
    padding: 12px 16px;
    border-bottom: 1px solid var(--border);
    transition: background var(--t)
}

.sw-sidebar-post-item:last-child {
    border-bottom: none
}

.sw-sidebar-post-item:hover {
    background: var(--g100)
}

.sw-sidebar-post-link {
    display: flex;
    gap: 12px;
    text-decoration: none;
    align-items: flex-start
}

.sw-sidebar-post-number {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    background: var(--g200);
    color: var(--ink3);
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: all var(--t)
}

.sw-sidebar-post-item:hover .sw-sidebar-post-number {
    background: var(--red);
    color: #fff
}

.sw-sidebar-post-content {
    flex: 1
}

.sw-sidebar-post-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--ink);
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
    transition: color var(--t)
}

.sw-sidebar-post-link:hover .sw-sidebar-post-title {
    color: var(--red)
}

.sw-sidebar-post-stats {
    font-size: 12px;
    color: var(--ink4)
}

.sw-sidebar-empty-message {
    padding: 30px 16px;
    text-align: center;
    color: var(--ink4);
    font-size: 14px
}

.sw-sidebar-post-link-simple {
    display: block;
    padding: 10px 16px;
    border-bottom: 1px solid var(--border);
    text-decoration: none;
    transition: background var(--t)
}

.sw-sidebar-post-link-simple:last-child {
    border-bottom: none
}

.sw-sidebar-post-link-simple:hover {
    background: var(--g100)
}

.sw-sidebar-post-link-simple .sw-sidebar-post-title {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink);
    line-height: 1.5;
    margin-bottom: 4px;
    transition: color var(--t)
}

.sw-sidebar-post-link-simple:hover .sw-sidebar-post-title {
    color: var(--red)
}

.sw-post-article {
    background: var(--card);
    border-radius: var(--r);
    box-shadow: var(--sh);
    overflow: hidden;
    margin-bottom: 30px
}

.sw-post-header {
    padding: 20px 25px 0
}

.sw-post-category {
    margin-bottom: 12px
}

.sw-post-category a {
    display: inline-block;
    background: var(--red);
    color: #fff !important;
    font-size: 13px;
    font-weight: 600;
    padding: 4px 14px;
    border-radius: 20px;
    transition: background var(--t)
}

.sw-post-category a:hover {
    background: var(--red-d)
}

.sw-post-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--ink);
    margin-bottom: 16px
}

.sw-post-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border);
    margin-bottom: 20px
}

.sw-post-author {
    display: flex;
    align-items: center;
    gap: 10px
}

.sw-author-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    object-fit: cover
}

.sw-post-article .sw-author-avatar {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover
}

.sw-post-article .sw-author-name a {
    font-size: 16px
}

.sw-post-views {
    display: none
}

.sw-author-name a {
    font-weight: 600;
    color: var(--ink);
    font-size: 14px
}

.sw-author-name a:hover {
    color: var(--red)
}

.sw-post-date,
.sw-post-views {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--ink4)
}

.sw-post-date i,
.sw-post-views i {
    font-size: 14px
}

.sw-post-featured-image {
    margin: 0 25px 20px;
    border-radius: var(--r);
    overflow: hidden
}

.sw-featured-image {
    width: 100%;
    height: auto
}

.sw-post-excerpt {
    background: var(--g100);
    padding: 18px 25px;
    margin: 0 25px 20px;
    border-right: 4px solid var(--red);
    font-size: 16px;
    font-weight: 600;
    color: var(--ink2);
    border-radius: var(--r)
}

.sw-post-content {
    padding: 0 25px 20px;
    font-size: 1.15rem;
    line-height: 1.9;
    color: var(--ink)
}

.sw-post-content p {
    margin-bottom: 1.2em;
    text-indent: 15px
}

.sw-post-content h2,
.sw-post-content h3,
.sw-post-content h4 {
    margin: 1.5em 0 .8em;
    font-weight: 600
}

.sw-post-content img {
    max-width: 100%;
    height: auto;
    border-radius: var(--r);
    margin: 20px 0
}

.sw-post-content blockquote {
    background: var(--g100);
    border-right: 4px solid var(--red);
    padding: 15px 25px;
    margin: 20px 0;
    font-style: italic;
    color: var(--ink2);
    border-radius: var(--r)
}

.sw-post-footer {
    padding: 0 25px 25px;
    border-top: 1px solid var(--border);
    margin-top: 20px
}

.sw-post-tags {
    margin: 25px 0 20px
}

.sw-post-tags h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--ink)
}

.sw-tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.sw-post-share {
    margin: 20px 0
}

.sw-post-share h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--ink)
}

.sw-share-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px
}

.sw-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--g200);
    color: var(--ink2);
    font-size: 18px;
    transition: all var(--t)
}

.sw-share-btn.sw-share-btn-facebook:hover {
    background: #1877f2;
    color: #fff
}

.sw-share-btn.sw-share-btn-twitter:hover {
    background: #000;
    color: #fff
}

.sw-share-btn.sw-share-btn-whatsapp:hover {
    background: #25d366;
    color: #fff
}

.sw-share-btn.sw-share-btn-linkedin:hover {
    background: #0077b5;
    color: #fff
}

.sw-share-btn.sw-share-btn-telegram:hover {
    background: #0088cc;
    color: #fff
}

.sw-related-posts,
.sw-author-posts {
    background: var(--card);
    border-radius: var(--r);
    box-shadow: var(--sh);
    padding: 20px 25px;
    margin-bottom: 30px
}

.sw-section-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink);
    padding-bottom: 12px;
    border-bottom: 2px solid var(--border);
    position: relative;
    padding: 15px
}

.sw-related-card {
    background: var(--bg);
    border-radius: var(--r);
    overflow: hidden;
    transition: transform var(--t), box-shadow var(--t);
    height: 100%
}

.sw-related-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--sh2)
}

.sw-related-card .card-link {
    display: block;
    text-decoration: none
}

.sw-related-card .card-img-top {
    width: 100%;
    height: 180px;
    object-fit: cover
}

.sw-related-card .card-body {
    padding: 12px
}

.sw-related-card .card-title {
    font-size: 15px;
    font-weight: 600;
    color: var(--ink);
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.sw-archive-page {
    background: var(--bg);
    min-height: 500px
}

.sw-archive-content {
    padding: 30px 0 50px
}

.sw-archive-header {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border)
}

.sw-archive-title-box {
    margin-bottom: 12px
}

.sw-lines-deco {
    display: flex;
    gap: 6px;
    margin-bottom: 12px
}

.sw-line-black {
    width: 40px;
    height: 3px;
    background: var(--ink)
}

.sw-line-gray {
    width: 40px;
    height: 3px;
    background: var(--ink4)
}

.sw-line-red {
    width: 50px;
    height: 3px;
    background: var(--red)
}

.sw-archive-name {
    font-size: 32px;
    font-weight: 700;
    color: var(--ink);
    margin: 0;
    line-height: 1.3
}

.sw-archive-description {
    font-size: 16px;
    color: var(--ink3);
    margin: 10px 0;
    line-height: 1.7
}

.sw-archive-stats {
    display: flex;
    gap: 20px;
    font-size: 14px;
    color: var(--ink4);
    margin-top: 8px
}

.sw-archive-stats span {
    display: inline-flex;
    align-items: center;
    gap: 5px
}

.sw-archive-stats i {
    font-size: 14px
}

.sw-writer-header {
    display: flex;
    gap: 24px;
    align-items: center;
    margin-bottom: 12px
}

.sw-writer-avatar-large {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--red);
    flex-shrink: 0
}

.sw-writer-header-info {
    flex: 1
}

.sw-writer-role {
    font-size: 14px;
    color: var(--ink4);
    font-weight: 600;
    margin-bottom: 6px
}

.sw-child-items {
    margin-bottom: 30px;
    overflow-x: auto;
}

.sw-child-items::-webkit-scrollbar {
    height: 4px
}

.sw-child-items::-webkit-scrollbar-thumb {
    background: var(--ink5);
    border-radius: 4px
}

.sw-child-items-scroll {
    display: flex;
    gap: 10px;
    padding-bottom: 8px;
    min-width: min-content
}

.sw-child-item-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 18px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 40px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    text-decoration: none;
    white-space: nowrap;
    transition: all .2s
}

.sw-child-item-link:hover,
.sw-child-item-link.sw-active {
    background: var(--red);
    border-color: var(--red);
    color: #fff
}

.sw-child-item-count {
    font-size: 11px;
    opacity: .6;
    font-weight: 500
}

.sw-archive-layout {
    display: flex;
    gap: 35px;
    flex-wrap: wrap
}

.sw-archive-posts-list {
    flex: 2;
    min-width: 0
}

.sw-archive-sidebar {
    flex: 1;
    min-width: 260px
}

.sw-posts-grid {
    display: flex;
    flex-direction: column;
    gap: 22px
}

.sw-archive-post-item {
    background: var(--card);
    border-radius: var(--r);
    overflow: hidden;
    box-shadow: var(--sh);
    transition: transform .2s, box-shadow .2s
}

.sw-archive-post-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--sh2)
}

.sw-archive-post-card {
    display: flex;
    gap: 20px;
    padding: 18px;
    flex-wrap: wrap
}

.sw-archive-post-image {
    flex: 0 0 220px
}

.sw-archive-post-img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    border-radius: var(--r);
    transition: transform .3s
}

.sw-archive-post-card:hover .sw-archive-post-img {
    transform: scale(1.02)
}

.sw-archive-post-content {
    flex: 1;
    min-width: 180px
}

.sw-archive-post-title {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 10px;
    line-height: 1.4
}

.sw-archive-post-title a {
    color: var(--ink);
    text-decoration: none;
    transition: color .2s
}

.sw-archive-post-title a:hover {
    color: var(--red)
}

.sw-archive-post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    font-size: 13px;
    color: var(--ink4);
    margin-bottom: 10px
}

.sw-archive-post-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px
}

.sw-archive-post-meta a {
    color: var(--ink4);
    text-decoration: none
}

.sw-archive-post-meta a:hover {
    color: var(--red)
}

.sw-archive-post-excerpt {
    font-size: 15px;
    line-height: 1.7;
    color: var(--ink2);
    margin: 0
}

.sw-read-more {
    display: inline-block;
    margin-top: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--red);
    text-decoration: none
}

.sw-read-more:hover {
    text-decoration: underline
}

.sw-load-more-wrapper {
    text-align: center;
    margin-top: 35px
}

.sw-load-more-btn {
    background: var(--red);
    color: #fff;
    border: none;
    padding: 12px 32px;
    border-radius: 40px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s;
    display: inline-flex;
    align-items: center;
    gap: 8px
}

.sw-load-more-btn:hover {
    background: var(--red-d)
}

.sw-pagination-nav {
    margin-top: 40px;
    text-align: center
}

.sw-pagination-list {
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0
}

.sw-pagination-link {
    display: inline-block;
    padding: 8px 14px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    text-decoration: none;
    transition: all .2s
}

.sw-pagination-link:hover {
    background: var(--red);
    border-color: var(--red);
    color: #fff
}

.sw-pagination-link.sw-current {
    background: var(--red);
    border-color: var(--red);
    color: #fff;
    cursor: default
}

.sw-pagination-dots {
    padding: 8px 4px;
    color: var(--ink4)
}

.sw-no-posts-message {
    background: var(--card);
    border-radius: var(--r);
    padding: 40px 20px;
    text-align: center
}

.sw-empty-state i {
    font-size: 48px;
    color: var(--ink4);
    margin-bottom: 20px
}

.sw-empty-state h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--ink)
}

.sw-empty-state p {
    color: var(--ink3);
    margin-bottom: 25px
}

.sw-sidebar-widgets {
    display: flex;
    flex-direction: column;
    gap: 28px
}

.sw-widget-header {
    background: var(--dark);
    padding: 12px 18px;
    border-bottom: 3px solid var(--red)
}

.sw-widget-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #fff
}

.sw-widget-body {
    padding: 12px 0
}

@media (max-width:992px) {
    .sw-archive-layout {
        flex-direction: column
    }

    .sw-archive-post-card {
        flex-direction: column
    }

    .sw-archive-post-image {
        flex: 0 0 auto;
        width: 100%
    }

    .sw-archive-post-img {
        height: auto;
        max-height: 220px
    }

    .sw-writer-header {
        flex-direction: column;
        text-align: center
    }

    .sw-writer-avatar-large {
        width: 80px;
        height: 80px
    }

    .sw-related-item {
        flex: 0 0 calc(50% - 10px)
    }
}

@media (max-width:768px) {

    .sw-post-title,
    .sw-archive-name {
        font-size: 24px
    }

    .sw-post-meta {
        gap: 12px;
        flex-wrap: wrap
    }

    .sw-post-header,
    .sw-post-featured-image,
    .sw-post-excerpt,
    .sw-post-content,
    .sw-post-footer,
    .sw-article-body,
    .sw-article-content {
        padding-left: 15px;
        padding-right: 15px;
        margin-left: 0;
        margin-right: 0
    }

    .sw-main-title {
        font-size: 24px
    }

    .sw-share-btn {
        width: 38px;
        height: 38px;
        font-size: 16px
    }

    .sw-related-card .card-img-top {
        height: 150px
    }

    .sw-section-title {
        font-size: 18px
    }

    .sw-archive-header {
        margin-bottom: 20px
    }

    .sw-archive-name {
        font-size: 22px
    }

    .sw-archive-post-title {
        font-size: 18px
    }

    .sw-archive-post-meta {
        gap: 10px;
        font-size: 12px
    }

    .sw-archive-post-excerpt {
        font-size: 14px
    }

    .sw-widget-header h3 {
        font-size: 16px
    }

    .sw-pagination-link {
        padding: 6px 12px;
        font-size: 13px
    }

    .sw-page-title {
        font-size: 24px
    }

    .sw-page-header,
    .sw-page-featured-image,
    .sw-page-body {
        padding-left: 15px;
        padding-right: 15px;
        margin-left: 0;
        margin-right: 0
    }
}

@media (max-width:576px) {
    .sw-related-item {
        flex: 0 0 100%
    }

    .sw-writers-related {
        flex-direction: column;
        gap: 10px
    }
}

.pdf-archive-main {
    padding: 2rem 0
}

.pdf-archive-breadcrumbs {
    margin-bottom: 1.5rem;
    font-size: .9rem
}

.pdf-archive-breadcrumbs a {
    text-decoration: none;
    color: #333
}

.pdf-archive-breadcrumbs .separator {
    margin: 0 .5rem;
    color: #999
}

.pdf-archive-header {
    text-align: center;
    margin-bottom: 2.5rem
}

.pdf-archive-header h1 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: .5rem
}

.pdf-archive-header p {
    color: #666
}

.pdf-issues-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem
}

.pdf-issue-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
    transition: transform .2s ease, box-shadow .2s ease
}

.pdf-issue-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .12)
}

.pdf-issue-cover {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f5f5f5
}

.pdf-issue-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease
}

.pdf-issue-card:hover .pdf-issue-cover img {
    transform: scale(1.03)
}

.pdf-issue-info {
    padding: 1rem
}

.pdf-issue-title {
    font-size: 1.1rem;
    margin: 0 0 .5rem;
    line-height: 1.4
}

.pdf-issue-title a {
    text-decoration: none;
    color: #1a1a1a
}

.pdf-issue-title a:hover {
    color: #c00
}

.pdf-issue-meta {
    font-size: .8rem;
    color: #777;
    margin-bottom: .75rem
}

.pdf-issue-meta i {
    margin-left: .25rem;
    margin-right: .25rem
}

.pdf-issue-action {
    margin-top: .5rem
}

.btn-pdf-download {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: #e74c3c;
    color: #fff;
    padding: .4rem 1rem;
    border-radius: 40px;
    text-decoration: none;
    font-size: .85rem;
    font-weight: 500;
    transition: background .2s
}

.btn-pdf-download:hover {
    background: #c0392b;
    color: #fff
}

.pdf-no-issues {
    text-align: center;
    padding: 4rem 1rem;
    background: #f9f9f9;
    border-radius: 12px
}

.btn-back-home {
    display: inline-block;
    margin-top: 1rem;
    background: #3498db;
    color: #fff;
    padding: .5rem 1.5rem;
    border-radius: 40px;
    text-decoration: none
}

.btn-back-home:hover {
    background: #2980b9
}

[dir="rtl"] .pdf-issue-action .btn-pdf-download i {
    margin-left: .5rem;
    margin-right: 0
}

.sw-pdf-single {
    padding: 2rem 0
}

.sw-pdf-card-single {
    background: var(--card, #ffffff);
    border-radius: var(--r, 8px);
    padding: 2rem;
    box-shadow: var(--sh, 0 2px 10px rgba(0, 0, 0, .07));
    margin-bottom: 2rem
}

.sw-pdf-title {
    font-size: 2rem;
    font-weight: 700;
    color: var(--ink, #1c1c1c);
    margin-bottom: .5rem;
    line-height: 1.3
}

.sw-pdf-meta {
    font-size: .9rem;
    color: var(--ink4, #999);
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap
}

.sw-pdf-meta i {
    margin-left: .25rem;
    margin-right: .25rem
}

.sw-pdf-cover {
    margin: 1.5rem 0
}

.sw-pdf-cover img {
    max-height: 600px;
    width: auto;
    max-width: 100%;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    transition: transform .2s ease
}

.sw-pdf-cover img:hover {
    transform: scale(1.01)
}

.btn-pdf-download-large {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: var(--red, #b71c1c);
    color: #fff;
    padding: 12px 30px;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: bold;
    text-decoration: none;
    transition: background .2s, transform .1s;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1)
}

.btn-pdf-download-large:hover {
    background: var(--red-d, #7f0000);
    color: #fff;
    transform: translateY(-2px)
}

.btn-pdf-download-large:active {
    transform: translateY(1px)
}

.sw-pdf-description {
    background: var(--g100, #f8f9fa);
    border-radius: var(--r, 8px);
    padding: 1.5rem;
    font-size: 1rem;
    line-height: 1.7;
    color: var(--ink2, #3a3a3a);
    border-right: 3px solid var(--red, #b71c1c)
}

.sw-breadcrumb-wrap {
    margin: 20px 0 10px
}

.sw-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: .85rem
}

.sw-breadcrumb-list li {
    position: relative;
    padding-left: .75rem;
    margin-left: .5rem;
    color: var(--ink4, #999)
}

.sw-breadcrumb-list li:not(:first-child)::before {
    content: "/";
    position: absolute;
    right: -.5rem;
    color: var(--ink5, #ccc)
}

.sw-breadcrumb-list li:first-child {
    padding-left: 0;
    margin-left: 0
}

.sw-breadcrumb-list li:first-child::before {
    display: none
}

.sw-breadcrumb-list a {
    color: var(--ink3, #666);
    text-decoration: none;
    transition: color .2s
}

.sw-breadcrumb-list a:hover {
    color: var(--red, #b71c1c)
}

.sw-breadcrumb-list .sw-active {
    color: var(--ink, #1c1c1c);
    font-weight: 600
}

@media (max-width:768px) {
    .sw-pdf-single {
        padding: 1rem 0
    }

    .sw-pdf-card-single {
        padding: 1.2rem
    }

    .sw-pdf-title {
        font-size: 1.6rem
    }

    .btn-pdf-download-large {
        padding: 10px 24px;
        font-size: 1rem
    }

    .sw-pdf-cover img {
        max-height: 400px
    }

    .sw-pdf-meta {
        flex-direction: column;
        gap: .3rem;
        align-items: center
    }
}

@media (max-width:576px) {
    .sw-pdf-title {
        font-size: 1.4rem
    }

    .sw-pdf-card-single {
        padding: 1rem
    }

    .btn-pdf-download-large {
        width: 100%;
        justify-content: center
    }
}

.sw-pdf-cover {
    text-align: center;
    margin: 1.5rem auto
}

.sw-pdf-cover a {
    display: inline-block;
    max-width: 100%
}

.sw-pdf-cover img {
    display: block;
    max-height: 600px;
    width: auto;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    transition: transform .2s ease
}

.sw-pdf-cover img:hover {
    transform: scale(1.01)
}

.sw-publication-card {
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .06);
    overflow: hidden
}

.sw-publication-cover-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 320px;
    background-color: #f8f9fa;
    padding: 2rem
}

.sw-publication-cover-img {
    display: block;
    max-height: 420px;
    width: auto;
    max-width: 100%;
    border-radius: .75rem;
    box-shadow: 0 10px 20px -8px rgba(0, 0, 0, .12);
    transition: transform .3s ease, box-shadow .3s ease;
    margin: 0 auto
}

.sw-publication-cover-img:hover {
    transform: scale(1.02);
    box-shadow: 0 16px 32px -12px rgba(0, 0, 0, .2)
}

.sw-publication-body {
    padding: 2.5rem 2rem
}

.sw-publication-title {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 1rem;
    color: #1a1a1a
}

.sw-publication-desc {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.7
}

.sw-btn-download {
    display: inline-flex;
    align-items: center;
    background-color: var(--red, #dc3545);
    color: #fff;
    border-radius: 50px;
    padding: .8rem 2.5rem;
    font-weight: 600;
    font-size: 1.1rem;
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(220, 53, 69, .3);
    transition: background .2s, transform .2s, box-shadow .2s;
    margin-top: 1rem
}

.sw-btn-download:hover {
    background-color: #c82333;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(220, 53, 69, .4)
}

.sw-divider-light {
    margin: 2rem 0 .5rem;
    border-color: #eee;
    opacity: .6
}

@media (max-width:768px) {
    .sw-publication-cover-wrap {
        min-height: 220px;
        padding: 1.2rem
    }

    .sw-publication-title {
        font-size: 1.6rem
    }

    .sw-btn-download {
        padding: .7rem 1.8rem;
        font-size: 1rem
    }
}

.sw-breadcrumb-list li {
    padding-right: 10px
}

.sw-post-article {
    font-family: "Readex Pro", sans-serif;
    line-height: inherit
}

.sw-post-article h3 {
    font-size: 22px
}

.sw-post-article h4 {
    font-size: 20px
}

.sw-post-article h5 a {
    color: #3f1616;
    margin: 0;
    font-size: 24px
}

.sw-post-article h5 ul {
    background: #f3f3f3
}

.sw-post-article strong {
    font-family: "Readex Pro", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-variation-settings: "HEXP" 0;
    font-weight: 500
}

.sw-post-article p,
.sw-post-article br,
.sw-post-article div {
    font-weight: 300;
    margin-bottom: 1rem
}

.sw-post-article h3,
.sw-post-article h4 {
    border-right: solid #551b1b 6px;
    padding-right: 10px;
    font-weight: 400
}

.sw-post-article p a,
.sw-post-article p img {
    display: initial
}

.sw-post-article a {
    color: #2775c3
}

.sw-post-article figure {
    margin: 0;
    padding: 0;
    display: block;
    position: relative
}

.sw-post-article::after {
    content: '';
    display: table;
    clear: both
}

.topic-page p,
.topic-page .sw-post-article {
    margin-bottom: 1rem;
    word-wrap: break-word;
    font-size: 20px;
    line-height: 1.8
}

.topic-page p,
.topic-page .sw-post-article p,
.topic-page .sw-post-article br {
    text-indent: 15px
}

.topic-page br,
.sw-post-article br {
    margin-bottom: 20px;
    text-indent: 15px
}

.sw_title_desc_img {
    background-color: rgba(0, 0, 0, .75);
    color: #fff;
    border: none;
    margin-top: -30px !important;
    position: relative;
    width: 100%;
    float: left;
    padding-right: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 16px;
    margin-bottom: 20px
}

.sw_title_desc_img::before {
    content: url("https://www.alndaa.net/uploads/Camera_Icon16.png")
}

.post-main-photo {
    width: 100%;
    max-height: 600px
}

.img_hover_container .topics_card.h-100.w-100.writer {
    max-width: 200px;
    max-height: 200px;
    border-radius: 80%
}

.topics_card.h-100.w-100.writer {
    width: 100% !important;
    height: auto !important;
    max-width: 200px !important;
    max-height: 200px !important;
    border-radius: 80% !important;
    object-fit: cover !important
}

.image-container.undefined {
    text-indent: initial
}

@media (max-width:768px) {
    .image-container.undefined {
        display: inline-block
    }

    .sw-post-article h3 {
        font-size: 22px
    }
}

.smart-figure {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .08);
    overflow: hidden;
    margin: 20px 0;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    position: relative;
    border: 1px solid rgba(0, 0, 0, .05)
}

.smart-figure:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, .15)
}

.smart-figure.size-small {
    max-width: 280px;
    float: right;
    margin: 15px 0 25px 25px;
    clear: right
}

.smart-figure.size-medium {
    max-width: 380px;
    float: right;
    margin: 15px 0 25px 30px;
    clear: right
}

.smart-figure.size-large {
    width: 100%;
    max-width: 750px;
    margin: 35px auto;
    float: none;
    clear: both
}

.smart-figure.size-full {
    width: 100%;
    max-width: 700px;
    margin: 40px auto;
    float: none;
    clear: both
}

.smart-figure .image-container {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    display: block;
    line-height: 0
}

.smart-figure .image-container::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .02) 100%);
    pointer-events: none
}

.smart-figure img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    border: none;
    margin: 0;
    padding: 0;
}

.smart-figure .image-container:hover img {
    transform: scale(1.03)
}

.smart-figure .zoom-icon {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(0, 0, 0, .75);
    color: #fff;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all .3s;
    font-size: 16px;
    font-weight: 600;
    z-index: 3;
    cursor: pointer;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255, 255, 255, .2)
}

.smart-figure:hover .zoom-icon {
    opacity: 1;
    transform: scale(1.1)
}

.smart-figure .zoom-icon:hover {
    background: rgba(0, 123, 255, .9);
    transform: scale(1.2)
}

.smart-figure figcaption {
    padding: 18px 22px;
    background: linear-gradient(135deg, rgba(248, 249, 250, .95) 0%, rgba(233, 236, 239, .95) 100%);
    border-top: 1px solid rgba(222, 226, 230, .6);
    font-size: 14px;
    line-height: 1.7;
    color: #495057;
    text-align: center;
    font-weight: 500;
    position: relative;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px)
}

.smart-figure figcaption::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #007bff 0%, #0056b3 50%, #007bff 100%);
    border-radius: 2px;
    opacity: .8
}

.smart-figure.size-small figcaption {
    padding: 14px 18px;
    font-size: 13px
}

.smart-figure.size-small .zoom-icon {
    width: 32px;
    height: 32px;
    font-size: 14px;
    top: 10px;
    left: 10px
}

.smart-figure.size-large figcaption,
.smart-figure.size-full figcaption {
    padding: 22px 28px;
    font-size: 15px
}

.smart-figure.size-large figcaption::before,
.smart-figure.size-full figcaption::before {
    width: 80px;
    height: 4px
}

.smart-figure.entering {
    opacity: 0;
    transform: translateY(30px)
}

.smart-figure.entered {
    opacity: 1;
    transform: translateY(0)
}

.smart-figure .loading-placeholder {
    background: linear-gradient(90deg, #f0f0f0 25%, rgba(240, 240, 240, .5) 37%, #f0f0f0 63%);
    background-size: 400% 100%;
    animation: shimmer 1.8s ease-in-out infinite;
    min-height: 200px
}

@keyframes shimmer {
    0% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0 50%
    }
}

.smart-figure.error img {
    opacity: .6;
    filter: grayscale(80%)
}

.smart-figure.error .image-container {
    background: #f8d7da
}

.smart-figure.error figcaption {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    color: #721c24;
    border-top-color: #f5c6cb
}

.smart-figure.error figcaption::before {
    background: linear-gradient(90deg, #dc3545 0%, #c82333 100%)
}

.smart-figure+p,
.smart-figure+h1,
.smart-figure+h2,
.smart-figure+h3,
.smart-figure+h4,
.smart-figure+h5,
.smart-figure+h6,
.smart-figure+div {
    clear: none;
    margin-top: 0
}

.smart-figure.size-large+p,
.smart-figure.size-full+p {
    margin-top: 25px
}

.smart-figure img {
    will-change: transform
}

.smart-figure:not(:hover) img {
    will-change: auto
}

@media (max-width:768px) {

    .smart-figure,
    .smart-figure.size-small,
    .smart-figure.size-medium,
    .smart-figure.size-large,
    .smart-figure.size-full {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin: 25px 0 !important;
        clear: both
    }

    .smart-figure figcaption {
        padding: 16px 20px;
        font-size: 14px
    }

    .smart-figure .zoom-icon {
        top: 15px;
        left: 15px;
        width: 40px;
        height: 40px;
        font-size: 16px
    }

    .smart-figure:hover {
        transform: translateY(-1px)
    }
}

@media (max-width:480px) {
    .smart-figure {
        border-radius: 8px;
        margin: 20px 0 !important;
        box-shadow: 0 2px 15px rgba(0, 0, 0, .1)
    }

    .smart-figure figcaption {
        padding: 14px 16px;
        font-size: 13px
    }

    .smart-figure .zoom-icon {
        width: 36px;
        height: 36px;
        font-size: 15px;
        top: 12px;
        left: 12px
    }
}

@media print {
    .smart-figure {
        box-shadow: none !important;
        border: 1px solid #ccc !important;
        page-break-inside: avoid;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 15px 0 !important;
        transform: none !important
    }

    .smart-figure .zoom-icon {
        display: none !important
    }

    .smart-figure img {
        transform: none !important
    }

    .smart-figure figcaption {
        background: #f8f9fa !important;
        color: #333 !important
    }
}

@media (-webkit-min-device-pixel-ratio:2),
(min-resolution:192dpi) {
    .smart-figure {
        box-shadow: 0 2px 10px rgba(0, 0, 0, .08)
    }

    .smart-figure:hover {
        box-shadow: 0 6px 25px rgba(0, 0, 0, .12)
    }
}

@media (prefers-color-scheme:dark) {
    .smart-figure {
        background: #2d2d2d;
        border-color: rgba(255, 255, 255, .1)
    }

    .smart-figure .image-container {
        background: linear-gradient(135deg, #404040 0%, #2d2d2d 100%)
    }

    .smart-figure figcaption {
        background: linear-gradient(135deg, rgba(45, 45, 45, .95) 0%, rgba(64, 64, 64, .95) 100%);
        color: #e9ecef;
        border-top-color: rgba(255, 255, 255, .1)
    }
}

.smart-figure:focus-within {
    outline: 3px solid #007bff;
    outline-offset: 2px
}

.smart-figure .zoom-icon:focus {
    outline: 2px solid #fff;
    outline-offset: 2px
}

@media (prefers-reduced-motion:reduce) {

    .smart-figure,
    .smart-figure img,
    .smart-figure .zoom-icon {
        transition: none !important;
        animation: none !important
    }

    .smart-figure:hover {
        transform: none !important
    }

    .smart-figure .image-container:hover img {
        transform: none !important
    }
}

.custom-card {
    margin: 25px 0;
    padding: 25px;
    border-radius: 10px;
    transition: transform .3s, box-shadow .3s
}

.custom-card:hover {
    transform: translateY(-2px)
}

.custom-card .card-title {
    margin: 0 0 15px;
    font-size: 22px;
    font-weight: 600;
    color: #2c3e50
}

.custom-card-quote {
    background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
    border-right: 5px solid #3182ce;
    font-style: italic;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .05)
}

.custom-card-quote:hover {
    box-shadow: 0 4px 20px rgba(49, 130, 206, .15)
}

.card-quote-text {
    font-size: 19px;
    line-height: 1.9;
    margin: 15px 0;
    color: #2c3e50;
    position: relative;
    padding-right: 20px
}

.card-quote-text::before {
    content: '"';
    position: absolute;
    right: -5px;
    top: -10px;
    font-size: 50px;
    color: #3182ce;
    opacity: .3;
    font-family: Georgia, serif
}

.card-quote-author {
    display: block;
    text-align: left;
    color: #4a5568;
    font-size: 15px;
    margin-top: 20px;
    font-weight: 600;
    font-style: normal
}

.custom-card-about {
    background: linear-gradient(135deg, #ebf8ff 0%, #bee3f8 100%);
    border: 2px solid #3182ce;
    box-shadow: 0 2px 10px rgba(49, 130, 206, .1)
}

.custom-card-about:hover {
    box-shadow: 0 4px 20px rgba(49, 130, 206, .2)
}

.card-about-icon {
    font-size: 40px;
    margin-bottom: 15px;
    display: none;
    animation: pulse 2s infinite
}

@keyframes pulse {

    0%,
    100% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.1)
    }
}

.card-about-text {
    color: #2c5aa0;
    line-height: 1.9;
    font-size: 16px
}

.custom-card-featured {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #fff;
    box-shadow: 0 5px 20px rgba(102, 126, 234, .4);
    position: relative;
    overflow: hidden
}

.custom-card-featured::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, .1) 0%, transparent 70%);
    animation: rotate 20s linear infinite
}

@keyframes rotate {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

.custom-card-featured .card-title {
    color: #fff;
    border-bottom: 2px solid rgba(255, 255, 255, .3);
    padding-bottom: 12px;
    margin-bottom: 18px;
    position: relative;
    z-index: 1
}

.card-featured-text {
    line-height: 1.9;
    font-size: 16px;
    position: relative;
    z-index: 1
}

.custom-card-featured:hover {
    box-shadow: 0 8px 30px rgba(102, 126, 234, .6)
}

.custom-card-footnote {
    background: linear-gradient(135deg, #fffbeb 0%, #aab5a959 100%);
    border-right: 4px solid #807460;
    font-size: 15px;
    position: relative;
    box-shadow: 0 2px 10px rgba(245, 158, 11, .1)
}

.custom-card-footnote:hover {
    box-shadow: 0 4px 20px rgba(245, 158, 11, .2)
}

.card-footnote-marker {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #53514d;
    color: #fff;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 16px;
    box-shadow: 0 2px 8px rgba(245, 158, 11, .3)
}

.custom-card-footnote .card-footnote-text,
.custom-card-footnote .card-footnote-text p,
.custom-card-footnote .card-footnote-text span,
.custom-card-footnote .card-footnote-text a,
.custom-card-footnote .card-footnote-text li {
    font-size: 15px;
    line-height: 1.85;
    color: #292f4d;
    margin: 0 0 .75em;
    word-break: break-word;
    -webkit-hyphens: auto;
    hyphens: auto;
}

.custom-card-footnote .card-footnote-text {
    padding-right: 10px;
    display: block;
    white-space: normal
}

.custom-card-footnote .card-footnote-text p {
    margin-top: 0;
    margin-bottom: .75em
}

.custom-card-footnote .card-footnote-text a {
    color: inherit;
    text-decoration: underline
}

.custom-card-footnote .card-footnote-text>*:first-child {
    margin-top: 0
}

.custom-card-text-image {
    background: #fff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 3px 15px rgba(0, 0, 0, .08)
}

.custom-card-text-image:hover {
    box-shadow: 0 5px 25px rgba(0, 0, 0, .12)
}

.card-content-wrapper {
    display: flex;
    gap: 25px;
    align-items: flex-start
}

.card-text-content {
    flex: 1;
    line-height: 1.9;
    font-size: 16px;
    color: #2d3748
}

.card-image {
    flex: 0 0 320px;
    overflow: hidden;
    border-radius: 10px
}

.card-image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    transition: transform .3s
}

.card-image img:hover {
    transform: scale(1.05)
}

.card-image-left .card-content-wrapper {
    flex-direction: row-reverse
}

@media (max-width:992px) {
    .card-image {
        flex: 0 0 250px
    }
}

@media (max-width:768px) {
    .custom-card {
        padding: 20px;
        margin: 20px 0
    }

    .custom-card .card-title {
        font-size: 19px
    }

    .card-quote-text {
        font-size: 17px
    }

    .card-content-wrapper {
        flex-direction: column !important
    }

    .card-image {
        flex: 0 0 auto;
        width: 100%
    }

    .card-about-icon {
        font-size: 32px
    }

    .card-footnote-marker {
        width: 25px;
        height: 25px;
        font-size: 14px
    }

    .card-footnote-text {
        padding-right: 40px;
        font-size: 14px
    }
}

@media (max-width:576px) {
    .custom-card {
        padding: 15px;
        border-radius: 8px
    }

    .custom-card .card-title {
        font-size: 17px;
        margin-bottom: 12px
    }

    .card-quote-text {
        font-size: 16px;
        padding-right: 15px
    }

    .card-text-content,
    .card-about-text,
    .card-featured-text {
        font-size: 15px
    }
}

@media print {
    .custom-card {
        break-inside: avoid;
        page-break-inside: avoid
    }

    .custom-card-featured {
        background: #f7fafc !important;
        color: #2c3e50 !important;
        border: 2px solid #667eea
    }

    .custom-card-featured .card-title {
        color: #2c3e50 !important;
        border-bottom-color: #667eea !important
    }
}

@media (prefers-color-scheme:dark) {
    .custom-card-quote {
        background: linear-gradient(135deg, #2d3748 0%, #1a202c 100%);
        border-right-color: #4299e1
    }

    .card-quote-text {
        color: #e2e8f0
    }

    .custom-card-text-image {
        background: #2d3748;
        border-color: #4a5568
    }

    .card-text-content {
        color: #e2e8f0
    }

    .custom-card .card-title {
        color: #f7fafc
    }
}

h2 {
    font-size: 26px
}

h3 {
    font-size: 24px
}

h4 {
    font-size: 22px
}

.sw_title_sub {
    font-size: 28px
}

.sw-social-share a {
    text-align: center;
    padding: 20px 0 10px;
    color: #000 !important
}