/* Moban 8-2-26 | D4 Japanese + Fullscreen + Timeline */

*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Lato',sans-serif;background:#FFF8E1;color:#3E2723;line-height:1.6}
a{color:#5D4037;text-decoration:none;transition:color .3s}
a:hover{color:#A1887F}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
h1,h2,h3,h4,h5,h6{font-family:'Oswald',sans-serif;font-weight:700;color:#4E342E;text-transform:uppercase;letter-spacing:.03em}

.section-bar{max-width:900px;margin:0 auto;padding:0 24px}

/* Header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,248,225,.95);backdrop-filter:blur(6px);border-bottom:1px solid rgba(93,64,55,.1)}
.header-bar{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;height:64px}
.logo-img{height:36px;width:auto}
.header-actions{display:flex;gap:10px}
.btn-hdr{display:inline-block;padding:8px 22px;background:#5D4037;color:#FFF8E1;font-family:'Oswald',sans-serif;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:background .3s}
.btn-hdr:hover{background:#4E342E;color:#FFF8E1}
.btn-hdr-outline{background:transparent;border:2px solid #5D4037;color:#5D4037}
.btn-hdr-outline:hover{background:#5D4037;color:#FFF8E1}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px}
.nav-toggle .bar{display:block;width:22px;height:2px;background:#5D4037;position:relative}
.nav-toggle .bar::before,.nav-toggle .bar::after{content:'';position:absolute;left:0;width:22px;height:2px;background:#5D4037}
.nav-toggle .bar::before{top:-6px}
.nav-toggle .bar::after{top:6px}

/* Fullscreen Overlay N06 */
.fullscreen-overlay{position:fixed;inset:0;background:rgba(62,39,35,.97);z-index:999;display:none;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .4s}
.fullscreen-overlay.active{display:flex;opacity:1}
.overlay-close{position:absolute;top:24px;right:28px;background:none;border:none;color:#FFF8E1;font-size:2.5rem;cursor:pointer;line-height:1}
.overlay-menu{list-style:none;text-align:center;display:flex;flex-direction:column;gap:28px}
.overlay-menu a{color:#FFF8E1;font-family:'Oswald',sans-serif;font-size:1.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:color .3s}
.overlay-menu a:hover{color:#A1887F}
.overlay-actions{margin-top:48px;display:flex;flex-direction:column;gap:16px;align-items:center}
.btn-ov{display:inline-block;padding:14px 44px;background:#5D4037;color:#FFF8E1;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;text-decoration:none;transition:background .3s}
.btn-ov:hover{background:#4E342E;color:#FFF8E1}
.btn-ov-outline{background:transparent;border:2px solid #A1887F;color:#A1887F}
.btn-ov-outline:hover{background:#A1887F;color:#3E2723}

.section-title{font-size:1.8rem;color:#5D4037;margin-bottom:48px;position:relative;padding-bottom:14px}
.section-title::after{content:'';position:absolute;bottom:0;left:0;width:60px;height:3px;background:#A1887F}

/* Search Hero IA04 */
.search-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;background-attachment:fixed}
.search-hero-overlay{position:relative;z-index:2;text-align:center;padding:80px 24px;width:100%;max-width:700px}
.search-hero::before{content:'';position:absolute;inset:0;background:rgba(62,39,35,.88);z-index:1}
.search-title{font-size:3rem;color:#FFF8E1;margin-bottom:16px}
.search-sub{font-size:1.1rem;color:#A1887F;margin-bottom:36px}
.search-form{display:flex;max-width:500px;margin:0 auto 32px;border:2px solid #A1887F;overflow:hidden}
.search-input{flex:1;padding:14px 20px;background:rgba(255,248,225,.1);color:#FFF8E1;border:none;font-family:'Lato',sans-serif;font-size:1rem;outline:none}
.search-input::placeholder{color:rgba(161,136,127,.7)}
.search-btn{padding:14px 28px;background:#A1887F;color:#FFF8E1;border:none;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:background .3s;font-size:.9rem}
.search-btn:hover{background:#8D6E63}
.search-actions{display:flex;gap:12px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}
.btn-jp{display:inline-block;padding:12px 32px;background:#5D4037;color:#FFF8E1;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;text-decoration:none;transition:background .3s}
.btn-jp:hover{background:#4E342E;color:#FFF8E1}
.btn-jp-outline{background:transparent;border:2px solid #A1887F;color:#A1887F}
.btn-jp-outline:hover{background:#A1887F;color:#3E2723}
.search-meta{font-size:.85rem;color:rgba(161,136,127,.7);display:block}

/* Hscroll C02 */
.hscroll-section{padding:100px 0;background:#fff}
.hscroll-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0 24px 14px;scrollbar-width:thin;scrollbar-color:#A1887F transparent}
.hscroll-track::-webkit-scrollbar{height:6px}
.hscroll-track::-webkit-scrollbar-thumb{background:#A1887F;border-radius:3px}
.hscroll-item{flex:0 0 280px;scroll-snap-align:start;overflow:hidden;border-radius:6px}
.hscroll-item img{width:280px;height:400px;object-fit:cover}

/* Card Grid C01 */
.cardgrid-section{padding:100px 0;background:#FFF8E1}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card-item{background:#fff;border-radius:6px;overflow:hidden;text-align:center;transition:transform .3s}
.card-item:hover{transform:translateY(-3px)}
.card-item img{width:100%;aspect-ratio:1;object-fit:cover}
.card-label{display:block;padding:14px 8px 6px;font-size:.85rem;font-weight:600;color:#4E342E}
.card-btn{display:inline-block;margin:0 0 16px;padding:8px 22px;background:#5D4037;color:#FFF8E1;font-size:.75rem;font-weight:600;border-radius:4px;text-decoration:none;transition:background .3s;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em}
.card-btn:hover{background:#4E342E;color:#FFF8E1}

/* Timeline C06 */
.timeline-section{padding:100px 0;background:#fff}
.timeline{position:relative;padding-left:40px;max-width:700px;margin:0 auto}
.timeline::before{content:'';position:absolute;left:16px;top:0;bottom:0;width:2px;background:#A1887F}
.timeline-item{position:relative;padding-bottom:48px}
.timeline-item:last-child{padding-bottom:0}
.tl-dot{position:absolute;left:-32px;top:4px;width:14px;height:14px;background:#5D4037;border:3px solid #A1887F;border-radius:50%}
.tl-content{background:#FFF8E1;padding:24px;border-radius:6px}
.tl-date{font-family:'Oswald',sans-serif;font-size:.82rem;color:#A1887F;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:8px}
.tl-content h3{font-size:1.1rem;margin-bottom:10px;color:#5D4037}
.tl-content p{font-size:.9rem;color:#6D4C41;line-height:1.6}

/* Progress Bar I10 */
.progress-bar{height:4px;background:#EFEBE9;margin-top:12px;overflow:hidden;border-radius:2px}
.progress-fill{height:100%;background:#5D4037;width:0;transition:width 1.2s ease}

/* News */
.news-section{padding:100px 0;background:#FFF8E1}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.news-card{background:#fff;border-radius:6px;overflow:hidden;transition:transform .3s}
.news-card:hover{transform:translateY(-3px)}
.news-link{text-decoration:none;color:inherit;display:block}
.news-thumb{overflow:hidden}
.news-thumb img{width:100%;height:180px;object-fit:cover}
.news-body{padding:18px}
.news-body h3{font-size:1rem;font-weight:600;color:#4E342E;margin-bottom:8px;line-height:1.4}
.news-date{font-size:.8rem;color:#A1887F}
.btn-viewall{display:block;width:fit-content;margin:48px auto 0;padding:14px 44px;background:#5D4037;color:#FFF8E1;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;text-decoration:none;transition:background .3s}
.btn-viewall:hover{background:#4E342E;color:#FFF8E1}
.no-posts{grid-column:1/-1;text-align:center;padding:60px 0;color:#A1887F;font-size:1rem}

/* Archive */
.archive-header{padding:100px 24px 48px;background:#5D4037;text-align:center}
.archive-title{font-size:2.2rem;color:#FFF8E1}
.archive-section{padding:80px 0}
.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card{background:#fff;border-radius:6px;overflow:hidden;transition:transform .3s}
.post-card:hover{transform:translateY(-3px)}
.post-link{text-decoration:none;color:inherit;display:block;padding:18px}
.post-thumb{overflow:hidden;border-radius:6px;margin-bottom:14px}
.post-thumb img{width:100%;height:160px;object-fit:cover}
.post-title{font-size:1rem;font-weight:600;color:#4E342E;margin-bottom:8px;line-height:1.4}
.post-date{font-size:.8rem;color:#A1887F;display:block}
.post-excerpt{font-size:.88rem;color:#6D4C41;margin-top:8px;line-height:1.5}

/* Single */
.single-post{padding:100px 0 60px;background:#fff}
.single-title{font-size:2.2rem;line-height:1.2;margin-bottom:16px}
.single-meta{display:flex;gap:12px;font-size:.85rem;color:#A1887F;margin-bottom:32px;flex-wrap:wrap}
.single-thumb{margin-bottom:40px;overflow:hidden;border-radius:6px}
.single-thumb img{width:100%;height:auto}
.post-content{font-size:1.05rem;line-height:1.85;color:#3E2723}
.post-content p{margin-bottom:20px}
.post-content img{border-radius:6px;margin:24px 0}
.post-content h2,.post-content h3{margin:32px 0 16px;color:#5D4037}
.post-content h2{font-size:1.6rem}
.post-content h3{font-size:1.25rem}
.post-content a{color:#5D4037;text-decoration:underline}
.post-content blockquote{border-left:4px solid #A1887F;padding:14px 22px;margin:24px 0;background:#FFF8E1;font-style:italic;border-radius:0 6px 6px 0}
.post-content ul,.post-content ol{padding-left:24px;margin-bottom:20px}
.related-section{padding:60px 0 80px;background:#FFF8E1}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.page-article{padding:100px 0;background:#fff}

/* Pagination */
.pagination,.wp-pagination{text-align:center;margin:48px 0}
.page-numbers{display:inline-block;padding:10px 18px;margin:0 4px;border-radius:6px;background:#fff;color:#5D4037;text-decoration:none;border:2px solid #A1887F;font-weight:600;transition:all .3s}
.page-numbers.current{background:#5D4037;color:#FFF8E1;border-color:#5D4037}
a.page-numbers:hover{background:#A1887F;color:#fff}

/* Footer */
.site-footer{background:#3E2723;color:#FFF8E1;padding:60px 0 32px}
.footer-bar{max-width:900px;margin:0 auto;padding:0 24px}
.footer-widgets{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-bottom:40px}
.footer-widget h3,.widget-title{color:#A1887F;font-size:1rem;margin-bottom:16px;font-weight:700;text-transform:uppercase}
.footer-widget ul{list-style:none}
.footer-widget ul li{margin-bottom:10px}
.footer-widget ul li a,.footer-widget a{color:rgba(255,248,225,.75);text-decoration:none;transition:color .3s}
.footer-widget ul li a:hover,.footer-widget a:hover{color:#A1887F}
.footer-widget p{color:rgba(255,248,225,.75);line-height:1.6}
.footer-bottom{text-align:center;border-top:1px solid rgba(161,136,127,.2);padding-top:32px}
.footer-bottom a{display:inline-block;margin-bottom:12px}
.disclaimer-text{color:rgba(255,248,225,.6);font-size:.83rem;max-width:680px;margin:16px auto 0;line-height:1.6}

/* Scroll Reveal */
.scroll-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.scroll-reveal.visible{opacity:1;transform:translateY(0)}

.site-main{min-height:400px}
