/*
Theme Name: Navid Newspaper
Theme URI: https://wpmatcha.com/wordpress-themes/navid/
Author: WP Matcha
Author URI: https://wpmatcha.com
Description: Navid Newspaper is a classic, editorial child theme for Navid. Designed specifically for publishers, journalists, and news portals, it features a traditional newspaper grid layout, classic serif typography, and sharp structural borders for a premium reading experience.
Template: navid
Version: 1.0.3
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: navid-newspaper
Tags: blog, news, grid-layout, custom-colors, custom-logo, custom-menu, featured-images, full-width-template, theme-options, translation-ready
*/

/* ==========================================================================
   Editorial Overrides for Navid News
   ========================================================================== */

/* Classic Single Border for Header and Topbar */
.site-header {
    border-bottom: 1px solid var(--border);
    border-top: 1px solid var(--border);
}

.top-bar {
    border-bottom: none;
}

/* Editorial Borders for the Newspaper Grid */
.hero-newspaper-grid {
    border-top: none !important;
    border-bottom: 3px double var(--border) !important;
}



body:not(.dark-mode) {
    background-color: #faf9f7;
    /* Slight off-white paper texture feel */
}

/* Ensure sharp corners for all images by default */
.post-thumbnail,
.post-card,
.bento-item,
.category-card,
.wp-block-image img,
.entry-content img,
.woocommerce-product-gallery__image img,
.hero-ticker-thumb img {
    border-radius: 0 !important;
}

/* Editorial Double Borders for Images */
.category-card {
    border: 3px double var(--border) !important;
    box-sizing: border-box;
}

/* Apply border to wrappers, NOT the image directly, for clean inner-zoom without clipping */
.post-card-img-wrap,
.newspaper-img-wrapper {
    padding: 0 !important;
    border: 3px double var(--border) !important;
    box-sizing: border-box;
    border-radius: 0 !important;
}

.post-card-img-wrap img,
.newspaper-img-wrapper img {
    border: none !important;
}

/* Remove post-card-body padding in list posts layouts specifically for the child theme */
.feed-layout-list .post-card-body,
.feed-layout-newspaper .post-card-body {
    padding: 0 !important;
}

/* Newspaper Grid Typography Tweaks */
.newspaper-excerpt {
    font-family: var(--font-serif);
    color: var(--charcoal);
    text-align: center;
}

.newspaper-title-large em {
    font-style: italic;
    font-weight: 500;
    color: var(--charcoal);
}

/* Disable problematic drop-cap by default in child theme */
.newspaper-excerpt::first-letter {
    float: none;
    font-size: inherit;
    line-height: inherit;
    margin: 0;
}

/* Fix double underline issue on newspaper titles and apply animated primary color on hover */
.newspaper-title-large a,
.newspaper-title-small a {
    text-decoration: none !important;
    background-image: linear-gradient(transparent calc(100% - 2px), var(--terracotta) 2px) !important;
    background-size: 0% 100% !important;
    background-repeat: no-repeat !important;
    transition: background-size 0.4s cubic-bezier(0.25, 1, 0.5, 1), color 0.4s ease !important;
}

.newspaper-title-large a:hover,
.newspaper-title-small a:hover {
    color: var(--terracotta) !important;
    background-size: 100% 100% !important;
}

/* ==========================================================================
   Breaking News Top Ticker
   ========================================================================== */

.breaking-news-ticker-wrap {
    background-color: #1a1a1a;
    /* Hardcoded dark instead of --charcoal to prevent inverting in dark mode */
    color: #fff;
    font-family: var(--font-sans);
    font-size: 13px;
    letter-spacing: 0.05em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.breaking-news-inner {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 40px);
    display: flex;
    align-items: stretch;
    height: 40px;
    position: relative;
}

/* Ensure all core containers in child theme align perfectly with parent theme container padding */
.top-bar-inner,
.hero-newspaper-wrapper {
    padding-left: clamp(20px, 4vw, 40px) !important;
    padding-right: clamp(20px, 4vw, 40px) !important;
}

.breaking-news-label {
    color: #fff;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
    white-space: nowrap;
    padding-right: 20px;
}

/* Minimal sleek blinking dot */
.pulse-dot {
    width: 6px;
    height: 6px;
    background-color: var(--terracotta);
    border-radius: 50%;
    display: inline-block;
    margin-right: 10px;
    box-shadow: 0 0 0 0 rgba(217, 48, 37, 0.7);
    animation: pulseRed 2s infinite;
}

@keyframes pulseRed {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(217, 48, 37, 0.7);
    }

    70% {
        transform: scale(1);
        box-shadow: 0 0 0 6px rgba(217, 48, 37, 0);
    }

    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(217, 48, 37, 0);
    }
}

.breaking-news-content {
    flex-grow: 1;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    padding-left: 20px;
}

.breaking-news-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    animation: breakingMarquee 120s linear infinite;
    width: max-content;
}

.breaking-news-list:hover {
    animation-play-state: paused;
}

.breaking-news-list li {
    display: inline-flex;
    align-items: center;
    padding: 0 25px;
    position: relative;
}

.breaking-news-list li::after {
    content: "—";
    position: absolute;
    right: -5px;
    color: rgba(255, 255, 255, 0.15);
}

.breaking-news-list li:last-child::after {
    display: none;
}

.breaking-news-list li a {
    display: inline-flex;
    align-items: center;
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    font-family: var(--font-serif);
    font-size: 14px;
    text-transform: none;
    letter-spacing: 0;
    transition: color 0.3s ease;
}

.breaking-thumb {
    display: inline-flex;
    margin-right: 12px;
    border-radius: 50%;
    overflow: hidden;
    width: 24px;
    height: 24px;
}

.breaking-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.breaking-news-list li a:hover {
    color: var(--terracotta);
    text-decoration: none;
}

@keyframes breakingMarquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@media (max-width: 768px) {
    .breaking-news-label {
        font-size: 11px;
        padding-right: 10px;
    }

    .breaking-news-content {
        padding-left: 10px;
    }
}

/* ==========================================================================
   Stacked Header Layout (Native to Child Theme)
   ========================================================================== */
body.header-layout-stacked .site-header {
    padding: 30px 0 0 0;
}

body.header-layout-stacked .header-inner {
    flex-direction: column;
    justify-content: center;
    gap: 30px;
    position: relative;
    width: 100%;
}

body.header-layout-stacked .header-inner>.logo-wrapper {
    margin: 0 auto;
    text-align: center;
    width: 100%;
}

body.header-layout-stacked .header-inner .logo {
    display: inline-flex;
    justify-content: center;
    margin: 0 auto;
    max-width: 100%;
}

body.header-layout-stacked .header-inner>nav {
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

body.dark-mode.header-layout-stacked .header-inner>nav {
    border-color: rgba(255, 255, 255, 0.05);
}

body.header-layout-stacked .nav-menu {
    justify-content: center;
}

body.header-layout-stacked .header-inner>.js-search-toggle {
    position: absolute;
    top: 5px;
    left: clamp(20px, 4vw, 40px);
    z-index: 100;
}

body.header-layout-stacked .header-actions {
    position: absolute;
    top: 5px;
    right: clamp(20px, 4vw, 40px);
    left: auto;
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 100;
}

@media (max-width: 991px) {
    body.header-layout-stacked .site-header {
        padding: 20px 0;
    }

    body.header-layout-stacked .header-inner {
        flex-direction: row;
        justify-content: space-between;
    }

    body.header-layout-stacked .header-inner>.js-search-toggle {
        position: static;
        order: -1;
    }

    body.header-layout-stacked .header-actions {
        position: static;
        left: auto;
        right: auto;
    }
}
/* ===== SundayMorning Hero v1 ===== */

.hero-newspaper-wrapper{
    max-width:1600px;
    margin:40px auto;
    padding:0 24px;
}

.hero-newspaper-grid{
    display:grid;
    grid-template-columns:1fr 2fr 1fr;
    gap:36px;
}

.newspaper-card-featured img{
    width:100%;
    height:560px;
    object-fit:cover;
}

.hero-title{
    font-size:44px;
    line-height:1.1;
    margin-top:16px;
}

.hero-excerpt{
    font-size:18px;
    line-height:1.8;
}

.newspaper-title-small{
    font-size:22px;
    line-height:1.5;
}


/* ===== SundayMorning Layout Override ===== */

.hero-newspaper-wrapper{
    max-width:1700px !important;
    width:100% !important;
}

.hero-newspaper-grid{
    max-width:1700px !important;
    width:100% !important;
}


/* ===========================
   SundayMorning Newspaper V2
=========================== */

.sm-news-home{
    max-width:1600px;
    margin:60px auto;
    padding:0 40px;
}

.sm-front-page{
    margin-bottom:80px;
}

.sm-section-heading{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:30px;
    border-bottom:3px solid #111;
    padding-bottom:12px;
}

.sm-section-heading h1,
.sm-section-heading h2{
    margin:0;
    font-size:40px;
    font-family:Georgia,serif;
}

.sm-lead-grid{
    display:grid;
    grid-template-columns:320px minmax(0,1fr) 320px;
    gap:40px;
}

.sm-side-story{
    border-bottom:1px solid #ddd;
    padding:18px 0;
}

.sm-side-story h2{
    font-size:22px;
    line-height:1.45;
    margin:8px 0;
}

.sm-main-story img{
    width:100%;
    height:620px;
    object-fit:cover;
}

.sm-main-story h2{
    font-size:54px;
    line-height:1.15;
    margin:20px 0;
}

.sm-main-story p{
    font-size:17px;
    line-height:1.9;
    color:#555;
}

.sm-category-section{
    margin:80px 0;
}

.sm-category-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:30px;
}

.sm-category-card img{
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
}

@media (max-width:1100px){
    .sm-lead-grid{
        grid-template-columns:1fr;
    }

    .sm-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .sm-main-story img{
        height:auto;
    }
}

@media (max-width:700px){
    .sm-news-home{
        margin:30px auto;
        padding:0 18px;
    }

    .sm-category-grid{
        grid-template-columns:1fr;
    }

    .sm-main-story h2{
        font-size:31px;
    }
}


/* ===============================
   SundayMorning Layout Upgrade
================================ */

.sm-news-home{
    max-width:1800px;
    width:96%;
    margin:50px auto 80px;
    padding:0;
}

.sm-front-page{
    margin-top:20px;
}

.sm-lead-grid{
    display:grid;
    grid-template-columns:340px minmax(0,1fr) 340px;
    gap:40px;
    align-items:start;
}

.sm-main-story img{
    width:100%;
    height:720px;
    object-fit:cover;
}

.sm-main-story h2{
    font-size:64px;
    font-weight:800;
    line-height:1.08;
    margin:24px 0;
}

.sm-main-story p{
    font-size:22px;
    line-height:1.8;
}

.sm-side-story{
    padding:22px 0;
    border-bottom:1px solid #e6e6e6;
}

.sm-side-story h2{
    font-size:28px;
    line-height:1.35;
    margin:8px 0;
}

.sm-category{
    display:block;
    font-size:12px;
    letter-spacing:2px;
    color:#777;
    text-transform:uppercase;
    margin-bottom:10px;
}

.sm-section-heading{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    border-bottom:3px solid #111;
    margin-bottom:35px;
    padding-bottom:14px;
}

.sm-section-heading h1,
.sm-section-heading h2{
    font-size:46px;
    margin:0;
    font-family:Georgia,serif;
}


/* ==================================================
   SundayMorning Newspaper Reference Layout
   기준: Navid Newspaper 공식 3단 신문형 샘플
================================================== */

.sm-news-home{
    width:calc(100% - 48px) !important;
    max-width:1420px !important;
    margin:64px auto 100px !important;
    padding:0 !important;
    color:#171717;
}

.sm-front-page{
    margin:0 !important;
    padding:0 0 28px !important;
    border-bottom:4px double #d8d4cc;
}

/* 기존 임시 제목 영역 최소화 */
.sm-front-page > .sm-section-heading{
    display:none !important;
}

/* 3단 신문 레이아웃 */
.sm-lead-grid{
    display:grid !important;
    grid-template-columns:280px minmax(0,1fr) 280px !important;
    gap:36px !important;
    align-items:stretch !important;
}

/* 좌우 기사 칼럼 */
.sm-side-column{
    min-width:0;
}

.sm-side-column:first-child{
    padding-right:34px;
    border-right:1px solid #d8d4cc;
}

.sm-side-column:last-child{
    padding-left:34px;
    border-left:1px solid #d8d4cc;
}

.sm-side-story{
    padding:0 0 26px !important;
    margin:0 0 26px !important;
    border-bottom:1px solid #ddd9d1 !important;
}

.sm-side-story:last-child{
    margin-bottom:0 !important;
    border-bottom:0 !important;
}

.sm-side-story .sm-category{
    display:block;
    margin:0 0 13px !important;
    color:#ba1b1b !important;
    font-family:Arial,sans-serif !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    letter-spacing:1.5px !important;
    text-transform:uppercase;
}

.sm-side-story h2{
    margin:0 0 13px !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:22px !important;
    font-weight:400 !important;
    font-style:italic;
    line-height:1.28 !important;
    letter-spacing:-0.3px;
}

.sm-side-story h2 a{
    color:#171717 !important;
    text-decoration:none !important;
}

.sm-side-story time{
    color:#777 !important;
    font-family:Arial,sans-serif !important;
    font-size:12px !important;
    font-weight:600;
    letter-spacing:.6px;
    text-transform:uppercase;
}

/* 중앙 대표 기사 */
.sm-main-column{
    min-width:0;
    text-align:center;
}

.sm-main-story{
    margin:0 !important;
}

.sm-main-story .sm-main-image{
    display:block;
    padding:3px;
    border:1px solid #c7c3bb;
    background:#fff;
}

.sm-main-story img{
    display:block;
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 9;
    object-fit:cover !important;
}

.sm-main-story > .sm-category{
    display:block;
    margin:34px 0 18px !important;
    color:#ba1b1b !important;
    font-family:Arial,sans-serif !important;
    font-size:12px !important;
    font-weight:700 !important;
    letter-spacing:1.7px !important;
    text-transform:uppercase;
}

.sm-main-story h2{
    max-width:820px;
    margin:0 auto 18px !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:58px !important;
    font-weight:400 !important;
    font-style:italic;
    line-height:1.04 !important;
    letter-spacing:-1.5px;
}

.sm-main-story h2 a{
    color:#171717 !important;
    text-decoration:none !important;
}

.sm-main-story p{
    max-width:720px;
    margin:0 auto !important;
    color:#444 !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:18px !important;
    font-style:italic;
    line-height:1.7 !important;
}

/* 아래 카테고리 섹션 */
.sm-category-section{
    max-width:1420px;
    margin:72px auto 0 !important;
}

.sm-category-section .sm-section-heading{
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    margin:0 0 28px !important;
    padding:0 0 13px !important;
    border-bottom:3px solid #171717 !important;
}

.sm-category-section .sm-section-heading h2{
    margin:0 !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:31px !important;
    font-weight:400 !important;
    font-style:italic;
    line-height:1 !important;
}

.sm-category-section .sm-section-heading a{
    color:#555 !important;
    font-size:12px !important;
    text-decoration:none !important;
}

.sm-category-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:28px !important;
}

.sm-category-card{
    min-width:0;
}

.sm-category-card img{
    display:block;
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10;
    object-fit:cover !important;
}

.sm-category-card h3{
    margin:15px 0 9px !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:22px !important;
    font-weight:400 !important;
    line-height:1.35 !important;
}

.sm-category-card h3 a{
    color:#171717 !important;
    text-decoration:none !important;
}

.sm-category-card time{
    color:#888;
    font-family:Arial,sans-serif;
    font-size:11px;
    letter-spacing:.4px;
}

/* 태블릿 */
@media (max-width:1100px){
    .sm-lead-grid{
        grid-template-columns:220px minmax(0,1fr) 220px !important;
        gap:24px !important;
    }

    .sm-side-column:first-child{
        padding-right:22px;
    }

    .sm-side-column:last-child{
        padding-left:22px;
    }

    .sm-main-story h2{
        font-size:44px !important;
    }

    .sm-side-story h2{
        font-size:18px !important;
    }
}

/* 모바일 */
@media (max-width:780px){
    .sm-news-home{
        width:auto !important;
        margin:32px 18px 70px !important;
    }

    .sm-lead-grid{
        display:flex !important;
        flex-direction:column !important;
        gap:38px !important;
    }

    .sm-main-column{
        order:-1;
    }

    .sm-side-column:first-child,
    .sm-side-column:last-child{
        padding:0 !important;
        border:0 !important;
    }

    .sm-main-story h2{
        font-size:38px !important;
        letter-spacing:-.8px;
    }

    .sm-main-story p{
        font-size:16px !important;
    }

    .sm-category-grid{
        grid-template-columns:1fr !important;
    }
}


/* ==================================================
   SundayMorning Newspaper Refine V2
================================================== */

/* 중앙 대표기사 제목 폭과 크기 조정 */
.sm-main-story h2{
    max-width:760px !important;
    margin:0 auto 16px !important;
    font-size:52px !important;
    line-height:1.08 !important;
    letter-spacing:-1.1px !important;
}

/* 중앙 요약문을 짧고 가볍게 */
.sm-main-story p{
    max-width:650px !important;
    margin:0 auto !important;
    font-size:16px !important;
    line-height:1.65 !important;
    color:#666 !important;
}

/* 중앙 이미지 비율을 샘플처럼 안정적으로 */
.sm-main-story img{
    aspect-ratio:16 / 9 !important;
    max-height:520px !important;
}

/* 중앙 카테고리 간격 축소 */
.sm-main-story > .sm-category{
    margin:24px 0 14px !important;
}

/* 좌우 기사 간격 확대 */
.sm-side-story{
    padding-bottom:30px !important;
    margin-bottom:30px !important;
}

/* 좌우 제목 크기 미세 조정 */
.sm-side-story h2{
    font-size:22px !important;
    line-height:1.32 !important;
}

/* 하단 섹션 카드 제목 통일 */
.sm-category-card h3{
    font-size:18px !important;
    line-height:1.38 !important;
}

/* 상단 메인 블록 하단 여백 */
.sm-front-page{
    padding-bottom:34px !important;
}

/* 모바일 보정 */
@media (max-width:780px){
    .sm-main-story h2{
        font-size:31px !important;
    }

    .sm-main-story img{
        max-height:none !important;
    }
}


/* ==================================================
   SundayMorning Category Archive Centering
================================================== */

body.category .site-content,
body.archive .site-content{
    width:calc(100% - 48px) !important;
    max-width:1420px !important;
    margin:0 auto !important;
    padding:0 !important;
}

body.category .content-area,
body.archive .content-area{
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    float:none !important;
}

body.category main,
body.archive main{
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
}

/* 상단 최근 글 영역 */
body.category .archive-header,
body.archive .archive-header,
body.category .page-header,
body.archive .page-header{
    max-width:900px !important;
    margin:0 auto 48px !important;
    text-align:center !important;
}

/* 카드 목록 전체 중앙 배치 */
body.category .posts-grid,
body.archive .posts-grid,
body.category .blog-grid,
body.archive .blog-grid,
body.category .grid-posts,
body.archive .grid-posts{
    width:100% !important;
    max-width:1180px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:44px 28px !important;
}

/* 카드 자체 */
body.category article,
body.archive article{
    min-width:0 !important;
}

body.category article img,
body.archive article img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10;
    object-fit:cover !important;
}

/* 카드 제목 */
body.category article h2,
body.archive article h2,
body.category article h3,
body.archive article h3{
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:22px !important;
    line-height:1.3 !important;
}

/* 사이드바 제거 또는 밀림 방지 */
body.category .widget-area,
body.archive .widget-area,
body.category aside,
body.archive aside{
    display:none !important;
}

/* 태블릿 */
@media (max-width:1000px){
    body.category .posts-grid,
    body.archive .posts-grid,
    body.category .blog-grid,
    body.archive .blog-grid,
    body.category .grid-posts,
    body.archive .grid-posts{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

/* 모바일 */
@media (max-width:700px){
    body.category .site-content,
    body.archive .site-content{
        width:auto !important;
        margin:0 18px !important;
    }

    body.category .posts-grid,
    body.archive .posts-grid,
    body.category .blog-grid,
    body.archive .blog-grid,
    body.category .grid-posts,
    body.archive .grid-posts{
        grid-template-columns:1fr !important;
    }
}


/* ==================================================
   SundayMorning Exact Archive Layout Fix
   Navid Newspaper 1.0.3 실제 클래스 기준
================================================== */

/* 아카이브 전체 영역 중앙 정렬 */
body.category #site-content,
body.archive #site-content{
    width:100% !important;
}

body.category .site-content,
body.archive .site-content,
body.category .site-main,
body.archive .site-main{
    width:calc(100% - 48px) !important;
    max-width:1420px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
}

/* 부모 테마의 사이드바용 2열 구조 제거 */
body.category .content-sidebar-wrap,
body.archive .content-sidebar-wrap,
body.category .site-content-inner,
body.archive .site-content-inner{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    grid-template-columns:none !important;
}

/* 콘텐츠 영역 폭 강제 확장 */
body.category .content-area,
body.archive .content-area,
body.category .primary-content,
body.archive .primary-content{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
}

/* 실제 Navid Newspaper 아카이브 카드 그리드 */
body.category .feed-layout-newspaper,
body.archive .feed-layout-newspaper{
    width:100% !important;
    max-width:1180px !important;
    margin:56px auto 0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    column-gap:30px !important;
    row-gap:52px !important;
    justify-content:center !important;
}

/* 카드 폭이 부모 규칙에 묶이지 않도록 해제 */
body.category .feed-layout-newspaper > *,
body.archive .feed-layout-newspaper > *,
body.category .feed-layout-newspaper .post-card,
body.archive .feed-layout-newspaper .post-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
}

/* 카드 이미지 */
body.category .feed-layout-newspaper .post-card-img-wrap,
body.archive .feed-layout-newspaper .post-card-img-wrap{
    width:100% !important;
}

body.category .feed-layout-newspaper .post-card-img-wrap img,
body.archive .feed-layout-newspaper .post-card-img-wrap img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10 !important;
    object-fit:cover !important;
}

/* 카드 텍스트 */
body.category .feed-layout-newspaper .post-card-body,
body.archive .feed-layout-newspaper .post-card-body{
    width:100% !important;
    padding-top:18px !important;
}

body.category .feed-layout-newspaper .post-card-title,
body.archive .feed-layout-newspaper .post-card-title{
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:25px !important;
    line-height:1.28 !important;
}

/* 아카이브 헤더와 최근 글 */
body.category .archive-header,
body.archive .archive-header,
body.category .page-header,
body.archive .page-header{
    width:100% !important;
    max-width:900px !important;
    margin:56px auto 0 !important;
    text-align:center !important;
}

body.category .recent-posts,
body.archive .recent-posts{
    width:100% !important;
    max-width:760px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* 사이드바 완전 제거 */
body.category .widget-area,
body.archive .widget-area,
body.category .sidebar,
body.archive .sidebar{
    display:none !important;
}

/* 태블릿 */
@media (max-width:1000px){
    body.category .feed-layout-newspaper,
    body.archive .feed-layout-newspaper{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        max-width:820px !important;
    }
}

/* 모바일 */
@media (max-width:700px){
    body.category .site-content,
    body.archive .site-content,
    body.category .site-main,
    body.archive .site-main{
        width:auto !important;
        margin-left:18px !important;
        margin-right:18px !important;
    }

    body.category .feed-layout-newspaper,
    body.archive .feed-layout-newspaper{
        grid-template-columns:1fr !important;
        max-width:420px !important;
    }
}


/* ==================================================
   SundayMorning Author Avatar Size Fix
================================================== */

body.category .avatar,
body.archive .avatar,
body.category .author-avatar img,
body.archive .author-avatar img,
body.category .post-author img,
body.archive .post-author img,
body.category .post-card-author img,
body.archive .post-card-author img,
body.category .entry-meta img,
body.archive .entry-meta img,
body.category .post-card-meta img,
body.archive .post-card-meta img{
    display:inline-block !important;
    width:24px !important;
    min-width:24px !important;
    max-width:24px !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    aspect-ratio:1 / 1 !important;
    object-fit:cover !important;
    border-radius:50% !important;
    margin:0 7px 0 0 !important;
    vertical-align:middle !important;
}

/* 작성자 정보 줄 정렬 */
body.category .post-author,
body.archive .post-author,
body.category .post-card-author,
body.archive .post-card-author,
body.category .entry-meta,
body.archive .entry-meta,
body.category .post-card-meta,
body.archive .post-card-meta{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
}

/* 프로필 사진에는 카드 이미지 테두리·비율 적용 금지 */
body.category img.avatar,
body.archive img.avatar{
    padding:0 !important;
    border:0 !important;
}


/* ==================================================
   SundayMorning Clean Category Grid
================================================== */

.sm-category-archive{
    width:calc(100% - 48px);
    max-width:1420px;
    margin:64px auto 100px;
}

.sm-archive-header{
    max-width:820px;
    margin:0 auto 56px;
    padding-bottom:28px;
    text-align:center;
    border-bottom:4px double #d8d4cc;
}

.sm-archive-label{
    display:block;
    margin-bottom:14px;
    color:#b31b1b;
    font-family:Arial,sans-serif;
    font-size:11px;
    font-weight:700;
    letter-spacing:2px;
}

.sm-archive-title{
    margin:0;
    font-family:Georgia,"Times New Roman",serif;
    font-size:54px;
    font-weight:400;
    font-style:italic;
    line-height:1.05;
}

.sm-archive-description{
    margin-top:18px;
    color:#666;
    font-family:Georgia,"Times New Roman",serif;
    font-size:17px;
    line-height:1.7;
}

.sm-archive-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:56px 30px;
    width:100%;
    margin:0 auto;
}

.sm-archive-card{
    min-width:0;
    margin:0;
}

.sm-archive-image{
    display:block;
    padding:3px;
    border:1px solid #d0ccc4;
    background:#fff;
    overflow:hidden;
}

.sm-archive-image img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:16 / 10;
    object-fit:cover;
}

.sm-archive-card-body{
    padding-top:18px;
}

.sm-archive-category{
    display:block;
    margin-bottom:10px;
    color:#b31b1b;
    font-family:Arial,sans-serif;
    font-size:11px;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.sm-archive-card-title{
    margin:0 0 12px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:27px;
    font-weight:400;
    font-style:italic;
    line-height:1.25;
}

.sm-archive-card-title a{
    color:#171717;
    text-decoration:none;
}

.sm-archive-excerpt{
    margin:0 0 16px;
    color:#555;
    font-family:Georgia,"Times New Roman",serif;
    font-size:15px;
    line-height:1.65;
}

.sm-archive-meta{
    display:flex;
    align-items:center;
    gap:7px;
    color:#777;
    font-family:Arial,sans-serif;
    font-size:11px;
}

.sm-archive-meta img.avatar{
    width:24px !important;
    min-width:24px !important;
    max-width:24px !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:50% !important;
    object-fit:cover !important;
}

.sm-archive-meta time{
    margin-left:auto;
}

.sm-archive-pagination{
    margin-top:72px;
    text-align:center;
}

.sm-archive-pagination .nav-links{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
}

.sm-archive-pagination .page-numbers{
    padding:9px 13px;
    border:1px solid #d8d4cc;
    color:#222;
    text-decoration:none;
}

.sm-archive-pagination .current{
    color:#fff;
    background:#171717;
    border-color:#171717;
}

@media (max-width:1000px){
    .sm-archive-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:680px){
    .sm-category-archive{
        width:auto;
        margin:36px 18px 70px;
    }

    .sm-archive-title{
        font-size:40px;
    }

    .sm-archive-grid{
        grid-template-columns:1fr;
        gap:46px;
    }
}


/* ==================================================
   SundayMorning Category Spacing Cleanup
================================================== */

.sm-category-archive{
    max-width:1280px !important;
    padding:0 28px !important;
}

.sm-archive-header{
    max-width:760px !important;
    margin-bottom:72px !important;
}

.sm-archive-description{
    margin-top:16px !important;
}

/* 불필요한 기존 최근글/태그 블록 숨김 */
.sm-category-archive .recent-posts,
.sm-category-archive .latest-posts,
.sm-category-archive .archive-recent,
.sm-category-archive .category-tags,
.sm-category-archive .tag-list,
.sm-category-archive .archive-news-list{
    display:none !important;
}

/* 3열 카드 영역 폭 축소 및 중앙 정렬 */
.sm-archive-grid{
    max-width:1160px !important;
    margin:0 auto !important;
    gap:64px 32px !important;
}

/* 카드가 화면에 붙지 않도록 */
.sm-archive-card{
    width:100% !important;
}

/* 카드 이미지와 본문 사이 여백 */
.sm-archive-card-body{
    padding:20px 8px 0 !important;
}

@media (max-width:1000px){
    .sm-category-archive{
        max-width:900px !important;
    }

    .sm-archive-grid{
        max-width:820px !important;
    }
}

@media (max-width:680px){
    .sm-category-archive{
        padding:0 !important;
    }

    .sm-archive-grid{
        max-width:100% !important;
    }
}


/* ==================================================
   SundayMorning Custom Layout — Dark Mode
   Navid 방식: body.dark-mode
================================================== */

body.dark-mode .sm-news-home,
body.dark-mode .sm-category-archive{
    color:#f2f2f2 !important;
}

/* 홈페이지 대표기사 */
body.dark-mode .sm-main-story h2,
body.dark-mode .sm-main-story h2 a,
body.dark-mode .sm-side-story h2,
body.dark-mode .sm-side-story h2 a,
body.dark-mode .sm-category-section h2,
body.dark-mode .sm-category-card h3,
body.dark-mode .sm-category-card h3 a{
    color:#f5f5f5 !important;
}

body.dark-mode .sm-main-story p,
body.dark-mode .sm-category-card time,
body.dark-mode .sm-side-story time{
    color:#b8b8b8 !important;
}

/* 카테고리 페이지 */
body.dark-mode .sm-archive-title,
body.dark-mode .sm-archive-card-title,
body.dark-mode .sm-archive-card-title a{
    color:#f5f5f5 !important;
}

body.dark-mode .sm-archive-description,
body.dark-mode .sm-archive-excerpt,
body.dark-mode .sm-archive-meta,
body.dark-mode .sm-archive-meta time{
    color:#bcbcbc !important;
}

/* 이미지 프레임 */
body.dark-mode .sm-main-story .sm-main-image,
body.dark-mode .sm-archive-image{
    background:#181818 !important;
    border-color:#555 !important;
}

/* 구분선 */
body.dark-mode .sm-side-column:first-child,
body.dark-mode .sm-side-column:last-child,
body.dark-mode .sm-side-story,
body.dark-mode .sm-front-page,
body.dark-mode .sm-archive-header,
body.dark-mode .sm-section-heading{
    border-color:#555 !important;
}

/* 카드 배경이 부모 CSS로 밝게 남는 경우 방지 */
body.dark-mode .sm-archive-card,
body.dark-mode .sm-category-card,
body.dark-mode .sm-archive-card-body{
    background:transparent !important;
}

/* 페이지네이션 */
body.dark-mode .sm-archive-pagination .page-numbers{
    color:#eee !important;
    border-color:#555 !important;
    background:transparent !important;
}

body.dark-mode .sm-archive-pagination .current{
    color:#111 !important;
    background:#f2f2f2 !important;
    border-color:#f2f2f2 !important;
}

/* 카테고리와 섹션 라벨은 붉은 포인트 유지 */
body.dark-mode .sm-category,
body.dark-mode .sm-archive-category,
body.dark-mode .sm-archive-label,
body.dark-mode .sm-main-story > .sm-category{
    color:#e05a52 !important;
}


/* ==================================================
   SundayMorning Korean Typography Fix
================================================== */

/* 한글 기사 제목: 고딕 계열 */
.sm-main-story h2,
.sm-main-story h2 a,
.sm-side-story h2,
.sm-side-story h2 a,
.sm-category-card h3,
.sm-category-card h3 a,
.sm-archive-card-title,
.sm-archive-card-title a{
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-style:normal !important;
    font-weight:700 !important;
    letter-spacing:-0.035em !important;
    word-break:keep-all !important;
}

/* 메인 기사 제목 */
.sm-main-story h2{
    font-size:44px !important;
    line-height:1.25 !important;
    max-width:820px !important;
}

/* 좌우 기사 제목 */
.sm-side-story h2{
    font-size:17px !important;
    line-height:1.48 !important;
}

/* 홈 카테고리 카드 제목 */
.sm-category-card h3{
    font-size:18px !important;
    line-height:1.45 !important;
}

/* 카테고리 페이지 카드 제목 */
.sm-archive-card-title{
    font-size:22px !important;
    line-height:1.42 !important;
}

/* 한글 요약문 */
.sm-main-story p,
.sm-archive-excerpt,
.sm-archive-description{
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-style:normal !important;
    letter-spacing:-0.02em !important;
    word-break:keep-all !important;
}

/* 영문 브랜드·섹션명은 기존 신문체 유지 */
.site-title,
.site-title a,
.sm-section-heading h1,
.sm-section-heading h2,
.sm-archive-title{
    font-family:Georgia,"Times New Roman",serif !important;
    font-style:italic !important;
}

/* 모바일 */
@media (max-width:780px){
    .sm-main-story h2{
        font-size:31px !important;
        line-height:1.3 !important;
    }

    .sm-side-story h2{
        font-size:17px !important;
    }

    .sm-archive-card-title{
        font-size:22px !important;
    }
}


/* SundayMorning 상단 안내바 */
.topbar-close,
.top-bar-close,
.header-top-close,
.announcement-close,
.topbar-dismiss,
.top-bar-dismiss{
    display:none !important;
}


/* ===== 상단 X 버튼 완전 제거 ===== */

.close-icon,
.topbar .close-icon,
.top-bar .close-icon{
    display:none !important;
}

.topbar button,
.top-bar button,
.topbar-close,
.top-bar-close,
.header-top button:last-child{
    display:none !important;
}


/* 상단 X(구 트위터) 링크 제거 */
.top-bar-socials a[href*="twitter.com/wpmatcha"],
.top-bar-socials a[href*="x.com/wpmatcha"],
.top-bar a[href*="twitter.com/wpmatcha"],
.top-bar a[href*="x.com/wpmatcha"]{
    display:none !important;
}


/* ==================================================
   SundayMorning Footer Cleanup
================================================== */

.site-footer{
    margin-top:90px !important;
    padding:54px 0 24px !important;
    border-top:1px solid #d9d5cd !important;
    background:#f7f4ee !important;
}

.footer-widgets,
.footer-widgets-container,
.inside-footer-widgets{
    width:calc(100% - 48px) !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:1.4fr 1fr 1fr !important;
    gap:56px !important;
    align-items:start !important;
}

.footer-widgets .widget,
.footer-widgets .footer-widget{
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
}

.footer-widgets .widget-title{
    display:block !important;
    margin:0 0 16px !important;
    color:#222 !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;
    letter-spacing:-0.02em !important;
}

.footer-widgets p,
.footer-widgets li,
.footer-widgets a{
    color:#666 !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:13px !important;
    line-height:1.75 !important;
    text-decoration:none !important;
}

.footer-widgets ul{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.footer-widgets li{
    margin:0 0 7px !important;
}

.footer-widgets a:hover{
    color:#b31b1b !important;
}

.site-info{
    width:calc(100% - 48px) !important;
    max-width:1120px !important;
    margin:38px auto 0 !important;
    padding:20px 0 0 !important;
    border-top:1px solid #d9d5cd !important;
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:24px !important;
    color:#777 !important;
    font-size:12px !important;
}

.site-info::before{
    content:"SundayMorning";
    color:#222;
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
    font-style:italic;
}

.site-info a{
    color:inherit !important;
    text-decoration:none !important;
}

/* 중복 문구와 불필요한 요소 숨김 */
.site-footer .widget_recent_entries,
.site-footer .widget_categories,
.site-footer .widget_meta,
.site-footer .widget_search,
.site-footer .footer-socials,
.site-footer .social-links{
    display:none !important;
}

/* 다크모드 */
body.dark-mode .site-footer{
    background:#151515 !important;
    border-color:#444 !important;
}

body.dark-mode .footer-widgets .widget-title,
body.dark-mode .site-info::before{
    color:#f2f2f2 !important;
}

body.dark-mode .footer-widgets p,
body.dark-mode .footer-widgets li,
body.dark-mode .footer-widgets a,
body.dark-mode .site-info{
    color:#aaa !important;
}

body.dark-mode .site-info{
    border-color:#444 !important;
}

/* 모바일 */
@media (max-width:780px){
    .site-footer{
        padding:42px 18px 20px !important;
    }

    .footer-widgets,
    .footer-widgets-container,
    .inside-footer-widgets{
        width:100% !important;
        grid-template-columns:1fr !important;
        gap:30px !important;
    }

    .site-info{
        width:100% !important;
        margin-top:30px !important;
        display:block !important;
        text-align:left !important;
    }

    .site-info::before{
        display:block;
        margin-bottom:10px;
    }
}


/* ==================================================
   SundayMorning Footer Exact Fix
   실제 Navid footer.php 구조 기준
================================================== */

.site-footer{
    margin-top:80px !important;
    padding:48px 0 22px !important;
    background:#f7f4ee !important;
    border-top:1px solid #ddd7ce !important;
}

.site-footer > .container,
.site-footer > .container-fluid{
    width:calc(100% - 48px) !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:0 !important;
}

/* 실제 위젯 영역 */
.footer-widgets-area{
    display:grid !important;
    grid-template-columns:1.4fr 1fr 1fr !important;
    gap:48px !important;
    margin:0 0 34px !important;
    padding:0 !important;
}

.footer-widgets-area .widget{
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
}

.footer-widgets-area .widget-title{
    margin:0 0 14px !important;
    color:#222 !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;
}

.footer-widgets-area p,
.footer-widgets-area li,
.footer-widgets-area a{
    color:#666 !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:13px !important;
    line-height:1.7 !important;
    text-decoration:none !important;
}

.footer-widgets-area ul{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

/* 하단 로고·저작권·메뉴 */
.footer-inner{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:24px !important;
    margin:0 !important;
    padding:20px 0 0 !important;
    border-top:1px solid #ddd7ce !important;
}

.footer-logo{
    color:#222 !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:20px !important;
    font-style:italic !important;
}

.footer-copy{
    margin-left:auto !important;
    color:#777 !important;
    font-size:12px !important;
}

.footer-links{
    display:flex !important;
    gap:18px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.footer-links a{
    color:#666 !important;
    font-size:12px !important;
    text-decoration:none !important;
}

.footer-links a:hover{
    color:#b31b1b !important;
}

/* 불필요한 기본 위젯 숨김 */
.footer-widgets-area .widget_recent_entries,
.footer-widgets-area .widget_categories,
.footer-widgets-area .widget_meta,
.footer-widgets-area .widget_search{
    display:none !important;
}

/* 다크모드 */
body.dark-mode .site-footer{
    background:#151515 !important;
    border-color:#444 !important;
}

body.dark-mode .footer-widgets-area .widget-title,
body.dark-mode .footer-logo{
    color:#f1f1f1 !important;
}

body.dark-mode .footer-widgets-area p,
body.dark-mode .footer-widgets-area li,
body.dark-mode .footer-widgets-area a,
body.dark-mode .footer-copy,
body.dark-mode .footer-links a{
    color:#aaa !important;
}

body.dark-mode .footer-inner{
    border-color:#444 !important;
}

/* 모바일 */
@media (max-width:780px){
    .site-footer{
        padding:38px 18px 20px !important;
    }

    .site-footer > .container,
    .site-footer > .container-fluid{
        width:100% !important;
    }

    .footer-widgets-area{
        grid-template-columns:1fr !important;
        gap:28px !important;
    }

    .footer-inner{
        display:block !important;
    }

    .footer-copy{
        display:block !important;
        margin:10px 0 0 !important;
    }

    .footer-links{
        margin-top:14px !important;
        flex-wrap:wrap !important;
    }
}


/* ==================================================
   SundayMorning Custom Footer
================================================== */

.sm-site-footer{
    margin-top:90px;
    padding:58px 24px 26px;
    border-top:1px solid #d8d4cc;
    background:#f4f0e8;
}

.sm-footer-inner{
    width:100%;
    max-width:1180px;
    margin:0 auto;
}

.sm-footer-top{
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:70px;
    padding-bottom:42px;
}

.sm-footer-brand > a{
    color:#171717;
    font-family:Georgia,"Times New Roman",serif;
    font-size:30px;
    font-style:italic;
    text-decoration:none;
}

.sm-footer-brand p{
    margin:18px 0 0;
    color:#666;
    font-size:14px;
    line-height:1.8;
}

.sm-footer-column{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:9px;
}

.sm-footer-column h2{
    margin:0 0 9px;
    color:#171717;
    font-size:14px;
    font-weight:700;
}

.sm-footer-column a{
    color:#666;
    font-size:13px;
    line-height:1.55;
    text-decoration:none;
}

.sm-footer-column a:hover{
    color:#b31b1b;
}

.sm-footer-bottom{
    display:flex;
    justify-content:space-between;
    gap:50px;
    padding-top:24px;
    border-top:1px solid #d8d4cc;
}

.sm-footer-copyright{
    flex:0 0 auto;
    color:#777;
    font-size:12px;
}

.sm-footer-notice{
    max-width:680px;
    text-align:right;
}

.sm-footer-notice p{
    margin:0 0 5px;
    color:#777;
    font-size:11px;
    line-height:1.6;
}

body.dark-mode .sm-site-footer{
    background:#151515;
    border-color:#444;
}

body.dark-mode .sm-footer-brand > a,
body.dark-mode .sm-footer-column h2{
    color:#f3f3f3;
}

body.dark-mode .sm-footer-brand p,
body.dark-mode .sm-footer-column a,
body.dark-mode .sm-footer-copyright,
body.dark-mode .sm-footer-notice p{
    color:#aaa;
}

body.dark-mode .sm-footer-bottom{
    border-color:#444;
}

@media (max-width:780px){
    .sm-site-footer{
        margin-top:60px;
        padding:42px 20px 24px;
    }

    .sm-footer-top{
        grid-template-columns:1fr 1fr;
        gap:34px 28px;
    }

    .sm-footer-brand{
        grid-column:1 / -1;
    }

    .sm-footer-bottom{
        display:block;
    }

    .sm-footer-notice{
        margin-top:16px;
        text-align:left;
    }
}


/* ==================================================
   SundayMorning Logo
================================================== */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&display=swap');

.site-branding .site-title,
.site-branding .site-title a,
.site-title,
.site-title a,
.site-logo,
.site-logo a{

    font-family:'Cormorant Garamond', serif !important;
    font-style:italic;
    font-weight:600;
    letter-spacing:1px;
    line-height:1;
    transform:skewX(-3deg);

}

.site-branding .site-title a,
.site-title a{

    font-size:72px;

}

@media (max-width:768px){

.site-branding .site-title a,
.site-title a{

    font-size:48px;

}

}


/* ==================================================
   SundayMorning Script Text Logo
================================================== */

@import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');

.sm-script-logo{
    display:inline-block;
    color:#171717 !important;
    font-family:'Allura', cursive !important;
    font-size:88px !important;
    font-weight:400 !important;
    line-height:.9 !important;
    letter-spacing:1px !important;
    text-transform:none !important;
    text-decoration:none !important;
    white-space:nowrap;
    transform:rotate(-1deg);
}

.sm-script-logo:hover{
    color:#171717 !important;
}

body.dark-mode .sm-script-logo{
    color:#f3f3f3 !important;
}

@media (max-width:900px){
    .sm-script-logo{
        font-size:70px !important;
    }
}

@media (max-width:600px){
    .sm-script-logo{
        font-size:52px !important;
    }
}


/* ===== SundayMorning 실제 필기체 로고 강제 적용 ===== */

.site-header .sm-script-logo,
.header-main .sm-script-logo,
.site-branding .sm-script-logo,
a.sm-script-logo{
    display:inline-block !important;
    font-family:"Allura", cursive !important;
    font-size:92px !important;
    font-style:normal !important;
    font-weight:400 !important;
    line-height:.85 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    text-decoration:none !important;
    color:#171717 !important;
    transform:none !important;
    white-space:nowrap !important;
}

body.dark-mode .sm-script-logo{
    color:#f5f5f5 !important;
}

@media (max-width:900px){
    .site-header .sm-script-logo,
    a.sm-script-logo{
        font-size:72px !important;
    }
}

@media (max-width:600px){
    .site-header .sm-script-logo,
    a.sm-script-logo{
        font-size:54px !important;
    }
}


/* ==================================================
   SundayMorning 필기체 로고 최종 강제 적용
   외부 폰트 없이 시스템 필기체 사용
================================================== */

html body .site-header a.sm-script-logo,
html body .header-main a.sm-script-logo,
html body a.sm-script-logo{
    display:inline-block !important;

    font-family:
        "Snell Roundhand",
        "Apple Chancery",
        "Segoe Script",
        "Brush Script MT",
        cursive !important;

    font-size:82px !important;
    font-style:normal !important;
    font-weight:400 !important;
    line-height:.85 !important;

    letter-spacing:-2px !important;
    text-transform:lowercase !important;
    text-decoration:none !important;

    color:#171717 !important;
    transform:rotate(-2deg) skewX(-5deg) !important;
    transform-origin:center !important;

    white-space:nowrap !important;
}

html body.dark-mode a.sm-script-logo{
    color:#f5f5f5 !important;
}

@media (max-width:900px){
    html body a.sm-script-logo{
        font-size:66px !important;
    }
}

@media (max-width:600px){
    html body a.sm-script-logo{
        font-size:48px !important;
        letter-spacing:-1px !important;
    }
}


/* SundayMorning 로고 필기체 최종 강제 적용 */
html body header.site-header .logo-wrapper .logo > a.sm-script-logo{
    display:inline-block !important;
    font-family:"Snell Roundhand","Apple Chancery","Segoe Script","Brush Script MT",cursive !important;
    font-size:82px !important;
    font-style:normal !important;
    font-weight:400 !important;
    line-height:.82 !important;
    letter-spacing:-3px !important;
    text-transform:none !important;
    color:#171717 !important;
    text-decoration:none !important;
    transform:rotate(-2deg) !important;
    white-space:nowrap !important;
}

html body.dark-mode header.site-header .logo-wrapper .logo > a.sm-script-logo{
    color:#f5f5f5 !important;
}

@media (max-width:768px){
    html body header.site-header .logo-wrapper .logo > a.sm-script-logo{
        font-size:58px !important;
        letter-spacing:-2px !important;
    }
}


/* ==================================================
   SundayMorning Subtle Newspaper Paper Texture
   이미지 없이 CSS 패턴만 사용
================================================== */

:root{
    --sm-paper:#f3eee4;
    --sm-paper-dark:#171614;
    --sm-ink:#171717;
}

/* 전체 종이색 */
html,
body{
    background-color:var(--sm-paper) !important;
}

/* 매우 은은한 종이 섬유 질감 */
body::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;

    background-color:var(--sm-paper);

    background-image:
        radial-gradient(
            circle at 20% 30%,
            rgba(80,60,35,.035) 0,
            rgba(80,60,35,.035) .6px,
            transparent .8px
        ),
        radial-gradient(
            circle at 70% 65%,
            rgba(255,255,255,.32) 0,
            rgba(255,255,255,.32) .7px,
            transparent .9px
        ),
        repeating-linear-gradient(
            0deg,
            rgba(90,70,45,.018) 0,
            rgba(90,70,45,.018) 1px,
            transparent 1px,
            transparent 4px
        );

    background-size:
        7px 7px,
        11px 11px,
        100% 5px;
}

/* 주요 영역의 순백색 제거 */
.site-header,
#site-content,
.sm-news-home,
.sm-category-archive,
.sm-site-footer{
    background-color:transparent !important;
}

/* 카드·기사 영역도 종이색과 자연스럽게 연결 */
.sm-main-story,
.sm-side-story,
.sm-category-card,
.sm-archive-card,
.sm-archive-card-body{
    background:transparent !important;
}

/* 이미지 프레임은 약간 따뜻하게 */
.sm-main-story .sm-main-image,
.sm-archive-image{
    background:#f8f4ec !important;
    border-color:#cfc5b6 !important;
}

/* 구분선도 완전 검정보다 부드럽게 */
.sm-side-column:first-child,
.sm-side-column:last-child,
.sm-side-story,
.sm-front-page,
.sm-section-heading,
.sm-archive-header,
.sm-footer-bottom{
    border-color:#cfc5b6 !important;
}

/* 헤더 아래 영역도 종이색 유지 */
.site-header,
.header-main,
.main-navigation{
    box-shadow:none !important;
}

/* 다크모드 */
body.dark-mode{
    background-color:var(--sm-paper-dark) !important;
}

body.dark-mode::before{
    background-color:var(--sm-paper-dark);

    background-image:
        radial-gradient(
            circle at 20% 30%,
            rgba(255,255,255,.025) 0,
            rgba(255,255,255,.025) .6px,
            transparent .8px
        ),
        radial-gradient(
            circle at 70% 65%,
            rgba(255,255,255,.018) 0,
            rgba(255,255,255,.018) .7px,
            transparent .9px
        ),
        repeating-linear-gradient(
            0deg,
            rgba(255,255,255,.012) 0,
            rgba(255,255,255,.012) 1px,
            transparent 1px,
            transparent 4px
        );

    background-size:
        7px 7px,
        11px 11px,
        100% 5px;
}

body.dark-mode .sm-main-story .sm-main-image,
body.dark-mode .sm-archive-image{
    background:#1d1b18 !important;
    border-color:#4d4942 !important;
}

@media (max-width:780px){
    body::before{
        background-size:
            8px 8px,
            12px 12px,
            100% 6px;
    }
}


/* ==================================================
   SundayMorning Paper Texture V2
   이미지 없이 CSS만 사용
================================================== */

html,
body{
    background:#f2eadc !important;
}

/* 종이 결 레이어 */
body::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-2;
    pointer-events:none;

    background-color:#f2eadc;

    background-image:
        /* 미세한 종이 섬유 */
        repeating-linear-gradient(
            12deg,
            rgba(92,69,40,.035) 0,
            rgba(92,69,40,.035) 1px,
            transparent 1px,
            transparent 5px
        ),

        repeating-linear-gradient(
            96deg,
            rgba(255,255,255,.18) 0,
            rgba(255,255,255,.18) 1px,
            transparent 1px,
            transparent 7px
        ),

        /* 종이 점 입자 */
        radial-gradient(
            circle at 15% 20%,
            rgba(105,78,45,.10) 0,
            rgba(105,78,45,.10) .7px,
            transparent .9px
        ),

        radial-gradient(
            circle at 70% 65%,
            rgba(255,255,255,.35) 0,
            rgba(255,255,255,.35) .8px,
            transparent 1px
        ),

        /* 약한 얼룩 */
        radial-gradient(
            ellipse at 20% 15%,
            rgba(122,92,48,.055) 0,
            transparent 42%
        ),

        radial-gradient(
            ellipse at 80% 75%,
            rgba(255,255,255,.20) 0,
            transparent 45%
        );

    background-size:
        18px 18px,
        24px 24px,
        8px 8px,
        13px 13px,
        520px 420px,
        620px 480px;

    opacity:.95;
}

/* 아주 약한 인쇄지 노이즈 */
body::after{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;

    background-image:
        repeating-linear-gradient(
            0deg,
            rgba(80,60,35,.018) 0,
            rgba(80,60,35,.018) 1px,
            transparent 1px,
            transparent 3px
        ),
        repeating-linear-gradient(
            90deg,
            rgba(255,255,255,.025) 0,
            rgba(255,255,255,.025) 1px,
            transparent 1px,
            transparent 4px
        );

    mix-blend-mode:multiply;
    opacity:.42;
}

/* 주요 영역은 투명 유지 */
.site-header,
.header-main,
.main-navigation,
#site-content,
.sm-news-home,
.sm-category-archive,
.sm-site-footer{
    background:transparent !important;
}

/* 카드에 종이색이 끊기지 않도록 */
.sm-main-story,
.sm-side-story,
.sm-category-card,
.sm-archive-card,
.sm-archive-card-body{
    background:transparent !important;
}

/* 다크모드 */
body.dark-mode{
    background:#171512 !important;
}

body.dark-mode::before{
    background-color:#171512;

    background-image:
        repeating-linear-gradient(
            12deg,
            rgba(255,255,255,.025) 0,
            rgba(255,255,255,.025) 1px,
            transparent 1px,
            transparent 6px
        ),
        repeating-linear-gradient(
            96deg,
            rgba(255,255,255,.015) 0,
            rgba(255,255,255,.015) 1px,
            transparent 1px,
            transparent 8px
        ),
        radial-gradient(
            circle at 15% 20%,
            rgba(255,255,255,.035) 0,
            rgba(255,255,255,.035) .7px,
            transparent .9px
        ),
        radial-gradient(
            ellipse at 20% 15%,
            rgba(255,255,255,.025) 0,
            transparent 42%
        );

    opacity:.8;
}

body.dark-mode::after{
    opacity:.18;
}


/* ==================================================
   SundayMorning Previous / Next Post Navigation
================================================== */

.post-navigation,
.navigation.post-navigation{
    margin:48px 0 72px !important;
    padding:24px 0 !important;
    border-top:1px solid #cfc5b6 !important;
    border-bottom:1px solid #cfc5b6 !important;
}

.post-navigation .nav-links,
.navigation.post-navigation .nav-links{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:36px !important;
    align-items:start !important;
}

.post-navigation .nav-previous,
.post-navigation .nav-next{
    min-width:0 !important;
    margin:0 !important;
}

.post-navigation .nav-next{
    text-align:right !important;
}

.post-navigation .nav-subtitle{
    display:block !important;
    margin-bottom:8px !important;
    color:#b31b1b !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.08em !important;
    text-transform:none !important;
}

/* 제목 최대 2줄 */
.post-navigation .nav-title{
    display:-webkit-box !important;
    overflow:hidden !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;

    color:#222 !important;
    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:16px !important;
    font-weight:600 !important;
    line-height:1.45 !important;
    letter-spacing:-0.03em !important;
    word-break:keep-all !important;
}

.post-navigation a{
    text-decoration:none !important;
}

.post-navigation a:hover .nav-title{
    color:#b31b1b !important;
}

/* 영문 라벨 숨기고 한글로 교체 */
.post-navigation .nav-previous .nav-subtitle{
    font-size:0 !important;
}

.post-navigation .nav-previous .nav-subtitle::before{
    content:"← 이전 글";
    font-size:11px;
}

.post-navigation .nav-next .nav-subtitle{
    font-size:0 !important;
}

.post-navigation .nav-next .nav-subtitle::before{
    content:"다음 글 →";
    font-size:11px;
}

/* 다크모드 */
body.dark-mode .post-navigation,
body.dark-mode .navigation.post-navigation{
    border-color:#4b4740 !important;
}

body.dark-mode .post-navigation .nav-title{
    color:#f2f2f2 !important;
}

/* 모바일 */
@media (max-width:680px){
    .post-navigation .nav-links,
    .navigation.post-navigation .nav-links{
        grid-template-columns:1fr !important;
        gap:22px !important;
    }

    .post-navigation .nav-next{
        text-align:left !important;
        padding-top:22px !important;
        border-top:1px solid #cfc5b6 !important;
    }

    .post-navigation .nav-title{
        font-size:15px !important;
    }
}


/* ==================================================
   SundayMorning 실제 이전글 / 다음글 디자인
================================================== */

.post-nav{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:36px !important;
    margin:48px 0 72px !important;
    padding:24px 0 !important;
    border-top:1px solid #cfc5b6 !important;
    border-bottom:1px solid #cfc5b6 !important;
}

.post-nav-prev,
.post-nav-next{
    display:block !important;
    min-width:0 !important;
    color:inherit !important;
    text-decoration:none !important;
}

.post-nav-next{
    text-align:right !important;
}

.post-nav-label{
    display:block !important;
    margin-bottom:8px !important;
    color:#b31b1b !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.06em !important;
}

.post-nav-title{
    display:-webkit-box !important;
    overflow:hidden !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;

    font-family:
        Pretendard,
        "Noto Sans KR",
        "Apple SD Gothic Neo",
        "Malgun Gothic",
        sans-serif !important;
    font-size:16px !important;
    font-weight:600 !important;
    line-height:1.45 !important;
    letter-spacing:-0.03em !important;
    word-break:keep-all !important;
}

.post-nav-prev:hover .post-nav-title,
.post-nav-next:hover .post-nav-title{
    color:#b31b1b !important;
}

body.dark-mode .post-nav{
    border-color:#4b4740 !important;
}

body.dark-mode .post-nav-title{
    color:#f2f2f2 !important;
}

@media (max-width:680px){
    .post-nav{
        grid-template-columns:1fr !important;
        gap:22px !important;
    }

    .post-nav-next{
        padding-top:22px !important;
        border-top:1px solid #cfc5b6 !important;
        text-align:left !important;
    }

    .post-nav-title{
        font-size:15px !important;
    }
}


/* =========================================
   SundayMorning Footer Tone Separation
========================================= */

.sm-site-footer{
    background:#e6dccf !important;
    border-top:1px solid #c8baa7 !important;
}

.sm-site-footer .sm-footer-inner{
    background:transparent !important;
}

.sm-site-footer .sm-footer-brand > a,
.sm-site-footer .sm-footer-column h2{
    color:#2f2a24 !important;
}

.sm-site-footer .sm-footer-brand p,
.sm-site-footer .sm-footer-column a,
.sm-site-footer .sm-footer-copyright,
.sm-site-footer .sm-footer-notice p{
    color:#6f665b !important;
}

.sm-site-footer .sm-footer-bottom{
    border-top-color:#c3b49f !important;
}

.sm-site-footer .sm-footer-column a:hover{
    color:#a33a2d !important;
}

body.dark-mode .sm-site-footer{
    background:#11100e !important;
    border-top-color:#3f3b35 !important;
}

body.dark-mode .sm-site-footer .sm-footer-brand > a,
body.dark-mode .sm-site-footer .sm-footer-column h2{
    color:#f0ece5 !important;
}

body.dark-mode .sm-site-footer .sm-footer-brand p,
body.dark-mode .sm-site-footer .sm-footer-column a,
body.dark-mode .sm-site-footer .sm-footer-copyright,
body.dark-mode .sm-site-footer .sm-footer-notice p{
    color:#aaa196 !important;
}


/* =========================================
   SundayMorning Back To Top
========================================= */

.sm-back-to-top{
    position:fixed;
    right:28px;
    bottom:28px;
    z-index:9999;

    display:flex;
    align-items:center;
    justify-content:center;

    width:44px;
    height:44px;
    padding:0;

    color:#f7f1e7;
    background:#2f2a24;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    box-shadow:0 6px 18px rgba(50,40,28,.18);

    font-family:Arial,sans-serif;
    font-size:21px;
    line-height:1;

    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease,
        background-color .18s ease;
}

.sm-back-to-top.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.sm-back-to-top:hover{
    background:#a33a2d;
}

.sm-back-to-top:focus-visible{
    outline:2px solid #a33a2d;
    outline-offset:3px;
}

.sm-back-to-top span{
    display:block;
    transform:translateY(-1px);
}

/* 다크모드 */
body.dark-mode .sm-back-to-top{
    color:#171512;
    background:#eee6da;
    border-color:#555047;
}

body.dark-mode .sm-back-to-top:hover{
    color:#fff;
    background:#a33a2d;
}

/* 모바일 */
@media (max-width:680px){
    .sm-back-to-top{
        right:18px;
        bottom:18px;
        width:40px;
        height:40px;
        font-size:19px;
    }
}

