.article-header {
padding: var(--space-2xl) var(--space-2xl) var(--space-3xl) var(--space-2xl);
text-align: center;
background: linear-gradient(135deg, #1e3a8a 0%, #1e40af 50%, #3b82f6 100%);
position: relative;
overflow: hidden;
margin-top: 72px;
}
.container--narrow {
max-width: 900px;
margin: 0 auto;
padding: 0 var(--container-padding);
}
.blog-container {
width: 100%;
max-width: var(--container-max);
margin: 0 auto;
padding: 0 var(--container-padding);
}
.article-breadcrumb {
display: flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
flex-wrap: wrap;
font-size: 0.85rem;
margin-bottom: var(--space-lg);
}
.article-breadcrumb a {
color: var(--color-accent);
text-decoration: none;
font-weight: 500;
transition: color var(--transition-fast);
}
.article-breadcrumb a:hover {
color: #10E7BD;
}
.article-breadcrumb span {
color: var(--color-text-muted);
}
.article-breadcrumb svg,
.article-breadcrumb i {
width: 14px;
height: 14px;
color: #CDCDCD;
flex-shrink: 0;
}
.wave-separator {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 80px;
overflow: hidden;
}
.wave-separator svg {
position: absolute;
bottom: 0;
width: 100%;
height: 80px;
}
.article-header h1 {
font-family: var(--font-heading);
font-size: clamp(1.8rem, 4vw, 2.6rem);
font-weight: 800;
line-height: 1.2;
color: var(--color-bg);
margin-bottom: var(--space-md);
}
.article-header h1 .accent {
color: var(--color-primary);
}
.article-excerpt {
font-size: 1.1rem;
line-height: 1.7;
color: #CDCDCD;
max-width: 700px;
margin: 0 auto var(--space-lg);
}
.article-meta {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: var(--space-xl);
}
.meta-item {
display: flex;
align-items: center;
gap: 0.5rem;
font-size: 0.88rem;
color: #CDCDCD;
}
.service-price-tag {
font-family: var(--font-heading);
font-weight: 700;
color: var(--color-bg);
font-size: 1rem;
line-height: 1.2;
}
.meta-item svg,
.meta-item i {
width: 16px;
height: 16px;
flex-shrink: 0;
}
.author-avatar {
width: 40px;
height: 40px;
border-radius: 50%;
background: var(--color-primary);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
flex-shrink: 0;
letter-spacing: 0.02em;
}
.service-price-icon {
width: 40px;
height: 40px;
border-radius: 50%;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
font-size: 1rem;
}
.author-info {
text-align: left;
}
.author-name {
font-family: var(--font-heading);
font-weight: 700;
color: var(--color-bg);
font-size: 0.9rem;
line-height: 1.2;
}
.author-role {
font-size: 0.78rem;
color: #CDCDCD;
line-height: 1.2;
}
.article-wrapper {
padding-top: var(--space-2xl);
background-color: #f8fafc;
}
.article-layout {
display: grid;
grid-template-columns: 1fr 340px;
gap: var(--space-2xl);
align-items: start;
}
.article-content {
background: white;
border-radius: var(--radius-xl);
padding: var(--space-xl);
box-shadow: var(--shadow-md);
overflow-x: auto;
}
.featured-image {
overflow: hidden;
margin: -2.5rem -2.5rem 2.5rem -2.5rem;
border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}
.featured-image img {
width: 100%;
height: 400px;
object-fit: cover;
}
.toc-inline {
background: #FDFDFD;
border: 1px solid var(--color-border-light);
border-left: 3px solid var(--color-primary);
border-radius: var(--radius-md);
padding: var(--space-lg);
margin-bottom: var(--space-xl);
box-shadow: var(--shadow-md);
}
.toc-inline h4 {
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--color-text);
margin-bottom: var(--space-md);
}
.toc-inline ul {
list-style: none;
display: flex;
flex-direction: column;
gap: 0.4rem;
}
.toc-inline a {
font-size: 0.9rem;
color: var(--color-text-secondary);
text-decoration: none;
transition: all var(--transition-fast);
display: inline-block;
}
.toc-inline a:hover {
color: var(--color-primary);
padding-left: 0.4rem;
}
.article-body p {
font-size: 1rem;
line-height: 1.8;
color: var(--color-text-secondary);
margin-bottom: var(--space-md);
}
.article-body h2 {
font-family: var(--font-heading);
font-size: 1.4rem;
font-weight: 800;
color: var(--color-text);
margin: var(--space-2xl) 0 var(--space-md);
line-height: 1.3;
}
.article-body h2:first-of-type {
margin-top: 0;
}
.article-body h3 {
font-family: var(--font-heading);
font-size: 1.15rem;
font-weight: 700;
color: var(--color-text);
margin: var(--space-xl) 0 var(--space-sm);
line-height: 1.4;
}
.article-body h4 {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-text);
margin: var(--space-lg) 0 var(--space-sm);
line-height: 1.4;
}
.article-body b,
.article-body strong {
color: var(--color-text);
font-weight: 700;
}
.article-body i,
.article-body em {
font-style: italic;
}
.article-body u {
text-decoration: underline;
text-underline-offset: 2px;
}
.article-body a {
color: var(--color-primary);
text-decoration: underline;
text-underline-offset: 2px;
font-weight: 500;
}
.article-body a:hover {
color: var(--color-primary-hover);
}
.article-body ul,
.article-body ol {
margin: 0 0 var(--space-lg) var(--space-lg);
line-height: 1.75;
}
.article-body li {
font-size: 1rem;
color: var(--color-text-secondary);
margin-bottom: 0.4rem;
padding-left: 0.3rem;
}
.article-body ul li::marker {
color: var(--color-primary);
}
.article-body ol li::marker {
color: var(--color-primary);
font-weight: 700;
}
.article-body li > ul,
.article-body li > ol {
margin-top: 0.4rem;
margin-bottom: 0;
}
.article-carousel {
position: relative;
overflow: hidden;
border-radius: var(--radius-lg);
margin-bottom: var(--space-xl);
box-shadow: var(--shadow-md);
}
.article-carousel .carousel-track {
display: flex;
transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
will-change: transform;
}
.article-carousel .carousel-slide {
min-width: 100%;
position: relative;
}
.article-carousel .carousel-slide img {
width: 100%;
height: 420px;
display: block;
}
.article-carousel .carousel-caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: var(--space-xl) var(--space-lg) var(--space-lg);
background: linear-gradient(transparent, rgba(0,0,0,0.75));
color: #fff;
font-family: var(--font-heading);
font-weight: 700;
font-size: 1.05rem;
line-height: 1.4;
}
.article-carousel .carousel-btn {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 44px;
height: 44px;
border-radius: 50%;
background: rgba(255,255,255,0.85);
border: none;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.3rem;
color: var(--color-text);
transition: all var(--transition-fast);
z-index: 2;
backdrop-filter: blur(4px);
}
.article-carousel .carousel-btn:hover {
background: #fff;
box-shadow: var(--shadow-lg);
transform: translateY(-50%) scale(1.08);
}
.article-carousel .carousel-btn.prev {
left: 12px;
}
.article-carousel .carousel-btn.next {
right: 12px;
}
.article-carousel .carousel-dots {
display: flex;
justify-content: center;
gap: 0.5rem;
padding: var(--space-sm) 0;
position: absolute;
bottom: 0;
left: 0;
right: 0;
z-index: 2;
}
.article-carousel .carousel-dot {
width: 10px;
height: 10px;
border-radius: 50%;
background: rgba(255,255,255,0.45);
border: 2px solid rgba(255,255,255,0.6);
cursor: pointer;
transition: all var(--transition-fast);
padding: 0;
}
.article-carousel .carousel-dot.active {
background: #fff;
border-color: #fff;
transform: scale(1.25);
}
.copy-toast {
position: fixed;
bottom: 50%;
left: 50%;
transform: translateX(-50%);
background-color: #333333;
color: #ffffff;
padding: 10px 20px;
border-radius: 8px;
font-size: 14px;
font-family: sans-serif;
z-index: 9999;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
animation: fadeInOut 2s ease-in-out;
}
@keyframes fadeInOut {
0% { opacity: 0; transform: translate(-50__, 10px); }
15% { opacity: 1; transform: translate(-50__, 0); }
85% { opacity: 1; transform: translate(-50__, 0); }
100% { opacity: 0; transform: translate(-50__, -10px); }
}
@media (max-width: 767px) {
.article-carousel .carousel-slide img {
height: 240px;
}
.article-carousel .carousel-caption {
font-size: 0.9rem;
padding: var(--space-md) var(--space-md) var(--space-md);
}
.article-carousel .carousel-btn {
width: 34px;
height: 34px;
font-size: 1rem;
}
.article-carousel .carousel-btn.prev {
left: 6px;
}
.article-carousel .carousel-btn.next {
right: 6px;
}
}
.article-body blockquote {
margin: var(--space-xl) 0;
padding: var(--space-lg) var(--space-xl);
background: #FDFDFD;
border-left: 4px solid var(--color-primary);
border-radius: 0 var(--radius-md) var(--radius-md) 0;
box-shadow: var(--shadow-md);
}
.article-body blockquote p {
margin-bottom: 0;
font-size: 0.95rem;
color: var(--color-text);
line-height: 1.7;
}
.article-body blockquote strong {
color: var(--color-primary);
}
.article-content-text ul li{
position: relative;
}
.article-content-text ol li{
position: relative;
counter-increment: ol-counter;
padding-left: 0.7rem;
}
.article-content-text ul li::before {
content: '';
position: absolute;
left: -15px;
top: 10px;
width: 8px;
height: 8px;
background: var(--color-accent);
border-radius: 50%;
}
.article-content-text ol li::before {
content: counter(ol-counter);
position: absolute;
left: -25px;
top: 2px;
width: 26px;
height: 26px;
background: var(--color-accent);
color: white;
font-size: 0.85rem;
font-weight: 600;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.article-content-text figure{
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
margin: var(--space-xl) 0;
}
.article-content-text figure img{
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
}
.article-content-text figcaption{
font-size: 0.85rem;
color: var(--color-text-muted);
margin-top: 0.5rem;
padding: 0.5rem;
text-align: center;
}
.article-content-text figure table{
margin-bottom: unset;
margin-top: var(--space-sm);
}
.author-insight {
margin: var(--space-xl) 0;
padding: var(--space-lg) var(--space-xl);
background: #F3FBF5;
border-left: 4px solid var(--color-accent);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
}
.blog-table-wrap {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
border-radius: var(--radius-lg);
border: 1px solid var(--color-border-light);
box-shadow: var(--shadow-md);
background: var(--color-bg);
margin: var(--space-xl) 0;
}
.article-content-text table {
width: 100%;
border-collapse: collapse;
font-size: 0.85rem;
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
background: var(--color-bg);
margin: var(--space-xl) 0;
table-layout: fixed;
overflow: hidden;
}
.article-content-text table thead {
background: var(--color-accent);
}
.article-content-text table thead th {
padding: 0.75rem 1rem;
font-family: var(--font-heading);
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
color: #ffffff;
text-align: left;
}
.article-content-text table thead th:first-child {
border-radius: var(--radius-lg) 0 0 0;
}
.article-content-text table thead th:last-child {
border-radius: 0 var(--radius-lg) 0 0;
}
.article-content-text table tbody tr {
border-bottom: 1px solid var(--color-border-light);
transition: background var(--transition-fast);
}
.article-content-text table tbody tr:last-child {
border-bottom: none;
}
.article-content-text table tbody tr:hover {
background: var(--color-primary-bg);
}
.article-content-text table tbody td {
padding: 0.75rem 1rem;
vertical-align: middle;
color: var(--color-text-secondary);
}
.blog-table-row--featured {
background: var(--color-primary-light);
}
.blog-table-row--featured:hover {
background: #dceefb;
}
.table-badge-tag {
display: inline-block;
font-family: var(--font-heading);
font-size: 0.65rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
padding: 0.2rem 0.5rem;
border-radius: var(--radius-full);
white-space: nowrap;
}
.badge-tag--gold {
color: #fff;
background: #E6A817;
}
.badge-tag--silver {
color: #fff;
background: #7B8D9E;
}
.badge-tag--bronze {
color: #fff;
background: #B87333;
}
.badge-tag--none {
color: var(--color-text-muted);
background: var(--color-border-light);
}
.share-section {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: var(--space-md);
padding: var(--space-lg) 0;
margin-top: var(--space-xl);
border-top: 1px solid var(--color-border-light);
border-bottom: 1px solid var(--color-border-light);
}
.share-section > span {
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
color: var(--color-text);
}
.share-buttons {
display: flex;
gap: 0.5rem;
align-items: center;
}
.share-btn {
width: 36px;
height: 36px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
border: none;
cursor: pointer;
transition: all var(--transition-fast);
text-decoration: none;
background: var(--color-bg-alt);
}
.share-btn svg,
.share-btn i {
width: 16px;
height: 16px;
color: var(--color-text-muted);
transition: color var(--transition-fast);
}
.share-btn:hover {
background: var(--color-primary);
}
.share-btn:hover svg,
.share-btn:hover i {
color: #fff;
}
.share-btn.twitter:hover { background: #1DA1F2; }
.share-btn.facebook:hover { background: #1877F2; }
.share-btn.linkedin:hover { background: #0A66C2; }
.share-btn.copy:hover { background: var(--color-text); }
.author-bio-section {
margin-top: var(--space-md);
padding: var(--space-xl);
background: var(--color-bg-alt);
border-radius: var(--radius-lg);
border: 1px solid var(--color-border-light);
}
.author-bio-content {
display: flex;
gap: var(--space-lg);
align-items: flex-start;
}
.author-bio-avatar {
width: 56px;
height: 56px;
border-radius: 50%;
background: var(--color-primary);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-heading);
font-size: 1.1rem;
font-weight: 700;
flex-shrink: 0;
letter-spacing: 0.02em;
}
.author-bio-info h4 {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-text);
margin: 0 0 0.15rem;
}
.author-bio-role {
font-size: 0.82rem;
color: var(--color-primary);
font-weight: 600;
margin-bottom: var(--space-sm);
}
.author-bio-info p {
font-size: 0.9rem;
line-height: 1.65;
color: var(--color-text-secondary);
margin-bottom: var(--space-md);
}
.author-bio-social {
display: flex;
gap: 0.6rem;
}
.author-bio-social a {
width: 32px;
height: 32px;
border-radius: 50%;
background: var(--color-bg);
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--color-border-light);
transition: all var(--transition-fast);
}
.author-bio-social a svg,
.author-bio-social a i {
width: 15px;
height: 15px;
color: var(--color-text-muted);
transition: color var(--transition-fast);
}
.author-bio-social a:hover {
background: var(--color-primary);
border-color: var(--color-primary);
}
.author-bio-social a:hover svg,
.author-bio-social a:hover i {
color: #fff;
}
.article-sidebar {
position: sticky;
top: calc(var(--header-height) + var(--space-lg));
display: flex;
flex-direction: column;
gap: var(--space-lg);
}
.sidebar-widget {
background: var(--color-bg);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-lg);
padding: 2rem var(--space-lg);
box-shadow: var(--shadow-md);
}
.sidebar-widget h4 {
font-family: var(--font-heading);
font-size: 0.88rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--color-text);
margin-bottom: var(--space-md);
padding-bottom: var(--space-sm);
border-bottom: 2px solid var(--color-primary-light);
}
.author-widget {
text-align: center;
}
.author-widget h4 {
text-align: left;
}
.author-avatar-large {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--color-primary-light);
display: flex;
align-items: center;
justify-content: center;
margin: var(--space-sm) auto var(--space-md);
}
.author-avatar-large svg,
.author-avatar-large i {
width: 28px;
height: 28px;
color: var(--color-primary);
}
.author-widget h5 {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-text);
margin-bottom: 0.35rem;
}
.sidebar-service-role {
font-size: 0.9rem;
font-weight: 600;
color: var(--color-primary);
margin-bottom: var(--space-sm);
}
.author-widget p {
font-size: 0.85rem;
color: var(--color-text-secondary);
line-height: 1.6;
margin-bottom: var(--space-lg);
text-align: left;
}
.author-social {
display: flex;
justify-content: center;
}
.blog-service-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.4rem;
font-family: var(--font-heading);
font-size: 0.88rem;
font-weight: 700;
color: #fff;
background: var(--color-primary);
padding: 0.65rem;
border-radius: var(--radius-full);
text-decoration: none;
transition: all var(--transition-fast);
width: 48%;
}
.blog-service-btn:hover {
background: var(--color-primary-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-md);
}
.related-widget ul {
list-style: none;
}
.related-widget ul li {
margin-bottom: 0.25rem;
}
.related-post {
display: flex;
gap: var(--space-sm);
padding: 0.55rem var(--space-sm);
border-radius: var(--radius-sm);
text-decoration: none;
transition: background var(--transition-fast);
align-items: flex-start;
}
.related-post:hover {
background: var(--color-primary-bg);
}
.related-post-image {
width: 36px;
height: 40px;
border-radius: var(--radius-sm);
background: var(--color-bg-alt);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.related-post-image svg,
.related-post-image i {
width: 16px;
height: 16px;
color: var(--color-text-muted);
}
.related-post:hover .related-post-image svg,
.related-post:hover .related-post-image i {
color: var(--color-primary);
}
.related-post-content {
flex: 1;
min-width: 0;
}
.related-post-content h5 {
font-family: var(--font-heading);
font-size: 0.82rem;
font-weight: 600;
color: var(--color-text);
line-height: 1.35;
margin-bottom: 0.15rem;
}
.related-post-content span {
font-size: 0.75rem;
color: var(--color-text-muted);
}
.cta-widget {
background: linear-gradient(135deg, var(--color-primary-bg) 0%, var(--color-bg) 100%);
border-color: var(--color-primary);
}
.cta-widget h4 {
color: var(--color-primary);
border-bottom-color: var(--color-primary-light);
}
.cta-widget > p {
font-size: 0.85rem;
color: var(--color-text-secondary);
line-height: 1.6;
margin-bottom: var(--space-md);
}
.cta-widget > ul {
list-style: none;
margin-bottom: var(--space-lg);
}
.cta-widget > ul li {
margin-bottom: 0.5rem;
}
.cta-widget > ul a {
color: var(--color-primary);
display: flex;
align-items: center;
gap: 10px;
padding: 12px 16px;
background: rgba(255, 255, 255, 0.1);
border-radius: var(--radius-md);
font-size: 0.9rem;
font-weight: 500;
text-decoration: none;
transition: var(--transition-fast);
border: 1px solid rgba(255, 255, 255, 0.15);
box-shadow: var(--shadow-md);
}
.cta-widget > ul a::before{
content: '→';
font-size: 1.1rem;
font-weight: 700;
opacity: 0.8;
transition: var(--transition-fast);
}
.cta-widget > ul a:hover {
padding-left: 0.5rem;
color: var(--color-primary-hover);
}
.sidebar-cta-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
font-family: var(--font-heading);
font-size: 0.9rem;
font-weight: 700;
color: #fff;
background: var(--color-accent);
padding: 0.65rem 1.5rem;
border-radius: var(--radius-full);
text-decoration: none;
transition: all var(--transition-fast);
width: 100%;
box-sizing: border-box;
}
.sidebar-cta-btn:hover {
background: #00a381;
transform: translateY(-1px);
box-shadow: var(--shadow-md);
}
.sidebar-cta-btn svg,
.sidebar-cta-btn i {
width: 16px;
height: 16px;
}
.faq-widget .faq-list {
display: flex;
flex-direction: column;
gap: 1px;
}
.faq-widget details.faq-item {
background: var(--color-bg);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-md);
overflow: hidden;
transition: border-color var(--transition-fast);
margin-bottom: 0.3rem;
}
.faq-widget details.faq-item:hover {
border-color: var(--color-primary-light);
}
.faq-widget details.faq-item[open] {
border-color: var(--color-primary);
}
.faq-widget details.faq-item summary {
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
color: var(--color-text);
padding: 0.75rem 1rem;
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 0.5rem;
transition: color var(--transition-fast), background var(--transition-fast);
line-height: 1.4;
}
.faq-widget details.faq-item summary::-webkit-details-marker {
display: none;
}
.faq-widget details.faq-item summary::after {
content: '+';
font-size: 1.1rem;
font-weight: 700;
color: var(--color-primary);
flex-shrink: 0;
line-height: 1;
transition: transform var(--transition-fast);
}
.faq-widget details.faq-item[open] summary::after {
content: '\2212';
}
.faq-widget details.faq-item[open] summary {
color: var(--color-primary);
background: var(--color-primary-bg);
}
.faq-widget details.faq-item summary:hover {
color: var(--color-primary);
}
.faq-widget details.faq-item .faq-answer {
padding: 0 1rem 0.85rem 1rem;
font-size: 0.82rem;
line-height: 1.65;
color: var(--color-text-secondary);
}
.metrics-widget .metrics-list {
display: flex;
flex-direction: column;
gap: var(--space-md);
}
.metrics-widget .metric-item {
display: flex;
flex-direction: column;
gap: 0.35rem;
}
.metrics-widget .metric-label {
display: flex;
justify-content: space-between;
align-items: baseline;
font-size: 0.8rem;
font-weight: 600;
color: var(--color-text);
}
.metrics-widget .metric-value {
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 800;
color: var(--color-primary);
}
.metrics-widget .metric-bar {
width: 100%;
height: 6px;
background: var(--color-border-light);
border-radius: var(--radius-full);
overflow: hidden;
}
.metrics-widget .metric-bar-fill {
height: 100%;
border-radius: var(--radius-full);
background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 100%);
transition: width 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}
.metrics-widget .metrics-cta {
display: flex;
gap: 4%;
margin-top: var(--space-md);
}
.metrics-widget .metrics-pricing-btn {
background: var(--color-bg);
color: var(--color-primary);
border: 1.5px solid var(--color-primary);
}
.metrics-widget .metrics-pricing-btn:hover {
background: var(--color-primary-bg);
color: var(--color-primary-hover);
border-color: var(--color-primary-hover);
}
.related-articles {
padding: var(--space-2xl) 0 var(--space-3xl);
background: var(--color-bg-alt);
}
.related-header {
text-align: center;
margin-bottom: var(--space-2xl);
}
.section-tag {
display: inline-block;
font-family: var(--font-heading);
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--color-primary);
background: #FDFDFD;
padding: 0.3rem 0.8rem;
border-radius: var(--radius-full);
margin-bottom: var(--space-sm);
box-shadow: var(--shadow-md);
}
.related-title {
font-family: var(--font-heading);
font-size: clamp(1.4rem, 2.5vw, 1.8rem);
font-weight: 800;
color: var(--color-text);
}
.related-title .accent {
color: var(--color-primary);
}
.related-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--space-lg);
}
.related-card {
background: var(--color-bg);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-lg);
overflow: hidden;
transition: all var(--transition-base);
}
.related-card:hover {
box-shadow: var(--shadow-lg);
transform: translateY(-4px);
border-color: var(--color-primary);
}
.related-card-image {
position: relative;
height: 180px;
overflow: hidden;
}
.related-card-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.related-card-content {
padding: var(--space-lg);
}
.related-card-meta {
display: flex;
align-items: center;
gap: var(--space-md);
font-size: 0.78rem;
color: #566F93;
margin-bottom: var(--space-sm);
}
.related-card-meta span:first-child::after {
content: '·';
margin-left: var(--space-md);
}
.related-card-content h3 {
font-family: var(--font-heading);
font-size: 1rem;
font-weight: 700;
color: var(--color-text);
line-height: 1.35;
margin-bottom: var(--space-sm);
}
.related-card-content h3:hover {
color: var(--color-primary);
}
.related-card-content p {
font-size: 0.85rem;
color: var(--color-text-secondary);
line-height: 1.55;
margin-bottom: var(--space-lg);
}
.read-more {
display: inline-flex;
align-items: center;
gap: 0.4rem;
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
color: var(--color-primary);
text-decoration: none;
transition: gap var(--transition-fast);
}
.read-more svg,
.read-more i {
width: 15px;
height: 15px;
transition: transform var(--transition-fast);
}
.read-more:hover {
gap: 0.7rem;
}
.read-more:hover svg,
.read-more:hover i {
transform: translateX(3px);
}
.nav-link.active,
.mobile-nav-link.active {
color: var(--color-primary);
}
.comments-section {
margin-top: var(--space-2xl);
padding-top: var(--space-2xl);
border-top: 1px solid var(--color-border-light);
}
.comments-header h3 {
font-family: var(--font-heading);
font-size: 1.3rem;
font-weight: 700;
color: var(--color-text);
display: flex;
align-items: center;
gap: 0.5rem;
margin-bottom: var(--space-lg);
}
.comments-header h3 svg,
.comments-header h3 i {
width: 22px;
height: 22px;
color: var(--color-primary);
flex-shrink: 0;
}
.comment-form {
background: var(--color-bg-alt);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-lg);
padding: var(--space-xl);
margin-bottom: var(--space-2xl);
}
.comment-form h4 {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-text);
margin-bottom: var(--space-xs);
}
.comment-form-note {
font-size: 0.82rem;
color: var(--color-text-muted);
margin-bottom: var(--space-lg);
}
.comment-form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--space-md);
margin-bottom: var(--space-md);
}
.comment-form-field {
display: flex;
flex-direction: column;
}
.comment-form-field label {
font-family: var(--font-heading);
font-size: 0.8rem;
font-weight: 600;
color: var(--color-text);
margin-bottom: 0.35rem;
}
.comment-form-field input,
.comment-form-field textarea {
font-family: var(--font-body);
font-size: 0.9rem;
color: var(--color-text);
background: var(--color-bg);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-sm);
padding: 0.6rem 0.75rem;
outline: none;
transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.comment-form-field input:focus,
.comment-form-field textarea:focus {
border-color: var(--color-primary);
box-shadow: 0 0 0 3px var(--color-primary-light);
}
.comment-form-field textarea {
resize: vertical;
min-height: 100px;
}
.comment-submit-btn {
display: inline-flex;
align-items: center;
gap: 0.4rem;
font-family: var(--font-heading);
font-size: 0.88rem;
font-weight: 700;
color: #fff;
background: var(--color-primary);
border: none;
padding: 0.65rem 1.5rem;
border-radius: var(--radius-full);
cursor: pointer;
transition: all var(--transition-fast);
margin-top: var(--space-md);
}
.comment-submit-btn svg,
.comment-submit-btn i {
width: 16px;
height: 16px;
}
.comment-submit-btn:hover {
background: var(--color-primary-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-md);
}
.comments-list {
display: flex;
flex-direction: column;
gap: var(--space-lg);
}
.comment-item {
display: flex;
gap: var(--space-md);
align-items: flex-start;
}
.comment-avatar {
width: 44px;
height: 44px;
border-radius: 50%;
background: var(--color-primary);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-heading);
font-size: 0.82rem;
font-weight: 700;
flex-shrink: 0;
letter-spacing: 0.02em;
}
.comment-avatar-sm {
width: 34px;
height: 34px;
font-size: 0.7rem;
}
.comment-body {
flex: 1;
min-width: 0;
}
.comment-meta {
display: flex;
align-items: center;
gap: var(--space-sm);
margin-bottom: var(--space-xs);
flex-wrap: wrap;
}
.comment-author {
font-family: var(--font-heading);
font-size: 0.92rem;
font-weight: 700;
color: var(--color-text);
}
.comment-author-badge {
font-size: 0.65rem;
font-weight: 700;
color: #fff;
background: var(--color-primary);
padding: 0.1rem 0.45rem;
border-radius: var(--radius-full);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.comment-date {
font-size: 0.8rem;
color: var(--color-text-muted);
}
.comment-text {
font-size: 0.92rem;
line-height: 1.65;
color: var(--color-text-secondary);
margin-bottom: var(--space-sm);
}
.comment-reply-btn {
display: inline-flex;
align-items: center;
gap: 0.3rem;
font-family: var(--font-heading);
font-size: 0.8rem;
font-weight: 600;
color: var(--color-primary);
background: none;
border: none;
cursor: pointer;
padding: 0;
transition: color var(--transition-fast);
}
.comment-reply-btn:hover {
color: var(--color-primary-hover);
}
.comment-reply-btn svg,
.comment-reply-btn i {
width: 14px;
height: 14px;
}
.comment-reply-thread {
margin-top: var(--space-md);
padding-left: var(--space-xl);
border-left: 2px solid var(--color-border-light);
display: flex;
flex-direction: column;
gap: var(--space-md);
}
.comment-reply-thread.hidden {
display: none;
}
.clear.bottom{
padding: 2rem;
background-color: #f8fafc;
}
@media (max-width: 1023px) {
.article-layout {
grid-template-columns: 1fr 280px;
gap: var(--space-xl);
}
.related-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 767px) {
.blog-container {
padding: unset;
}
.article-content{
padding:1.2rem;
}
.article-wrapper {
padding-top: var(--space-md);
}
.blog-table-wrap {
border: none;
box-shadow: none;
background: transparent;
margin: var(--space-xl) 0;
display: flex;
flex-direction: column;
gap: var(--space-md);
}
.article-content-text table {
border-collapse: separate;
border-spacing: 0;
}
.article-content-text table thead {
display: block;
}
.article-content-text table tbody {
display: flex;
flex-direction: column;
gap: var(--space-md);
}
.article-content-text table tbody tr {
display: flex;
flex-direction: column;
background: var(--color-bg);
border: 1px solid var(--color-border-light);
border-radius: var(--radius-lg);
overflow: hidden;
box-shadow: var(--shadow-sm);
}
.article-content-text table tbody tr:hover {
box-shadow: var(--shadow-md);
}
.blog-table-row--featured {
border-color: var(--color-primary);
background: var(--color-primary-bg);
}
.blog-table-row--featured:hover {
background: var(--color-primary-bg);
}
.article-content-text table tbody td {
display: flex;
flex-direction: column;
padding: var(--space-sm) var(--space-md);
border-bottom: 1px solid var(--color-border-light);
color: var(--color-text-secondary);
}
.article-content-text table tbody td:last-child {
border-bottom: none;
}
.article-content-text table tbody td::before {
content: attr(data-label);
font-family: var(--font-heading);
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--color-primary);
margin-bottom: 0.25rem;
display: block;
}
.article-header {
padding: var(--space-xl) 0 var(--space-2xl) 0;
}
.article-header h1 {
font-size: 1.5rem;
}
.article-excerpt {
font-size: 0.95rem;
}
.article-meta {
gap: var(--space-md);
}
.article-layout {
grid-template-columns: 1fr;
}
.article-sidebar {
position: static;
}
.sidebar-widget {
padding: var(--space-lg);
}
.featured-image {
border-radius: var(--radius-md);
margin: -1.2rem -1.2rem 1.2rem -1.2rem;
}
.featured-image img {
height: 200px;
}
.article-body h2 {
font-size: 1.25rem;
}
.article-body h3 {
font-size: 1.05rem;
}
.article-body ul {
margin-left: var(--space-md);
}
.article-body blockquote {
padding: var(--space-md);
margin: var(--space-lg) 0;
}
.share-section {
flex-direction: column;
align-items: flex-start;
}
.author-bio-content {
flex-direction: column;
align-items: center;
text-align: center;
}
.author-bio-social {
justify-content: center;
}
.related-grid {
grid-template-columns: 1fr;
}
.related-card-image {
height: 200px;
}
.comment-form-row {
grid-template-columns: 1fr;
}
.comment-item {
gap: var(--space-sm);
}
.comment-avatar {
width: 36px;
height: 36px;
font-size: 0.72rem;
}
.comment-avatar-sm {
width: 28px;
height: 28px;
font-size: 0.65rem;
}
.comment-reply-thread {
padding-left: var(--space-lg);
}
.comment-author {
font-size: 0.85rem;
}
.comment-text {
font-size: 0.87rem;
}
}
@media (max-width: 360px) {
.article-header h1 {
font-size: 1.3rem;
}
.article-body h2 {
font-size: 1.1rem;
}
.article-body h3 {
font-size: 1rem;
}
.article-body p,
.article-body li {
font-size: 0.92rem;
}
.article-content-text table {
font-size: 0.75rem;
}
.article-content-text table thead th,
.article-content-text table tbody td {
padding: 0.5rem 0.55rem;
}
.author-bio-section {
padding: var(--space-md);
}
}
