/* NewAnimeFig v0.2.0 - page-specific add-on for JIN. No site-wide selectors. */
body.naf-landing-page { background: #f4f7fb !important; background-image: none !important; }
body.naf-landing-page #wrapper { background-image: none !important; }
body.naf-landing-page .naf-home,
body.naf-landing-page .naf-home * { box-sizing: border-box; }
body.naf-landing-page .naf-home { color:#22384e; font-family:inherit; width:100%; max-width:1050px; margin:0 auto 36px; }
body.naf-landing-page .naf-home-hero { position:relative; overflow:hidden; border-radius:19px; background:#173351 !important; background-image:radial-gradient(circle at 95% 10%,rgba(90,165,231,.27),transparent 46%),linear-gradient(125deg,#173351,#245683) !important; padding:clamp(26px,5vw,46px); margin:0 0 30px; color:white !important; }
body.naf-landing-page .naf-home-hero::before { content:"";position:absolute;right:-48px;top:-65px;width:220px;height:220px;border:1px solid rgba(255,255,255,.22);border-radius:50%;pointer-events:none; }
body.naf-landing-page .naf-home-kicker {display:inline-block;border:1px solid rgba(255,255,255,.35);padding:5px 12px;border-radius:40px;font-weight:700;font-size:12px;line-height:1.5;color:#deedff;letter-spacing:.045em;}
body.naf-landing-page .naf-home .naf-home-hero h1 { background:none !important;border:0 !important;box-shadow:none !important;clear:none !important;margin:18px 0 11px !important;padding:0 !important;color:#fff !important;font-size:clamp(27px,4vw,39px) !important;line-height:1.46 !important;letter-spacing:.01em;font-weight:800 !important;}
body.naf-landing-page .naf-home .naf-home-hero h1::before,body.naf-landing-page .naf-home .naf-home-hero h1::after {content:none !important;display:none !important;}
body.naf-landing-page .naf-home-hero p {color:#e1eeff !important;max-width:550px;font-size:15px;line-height:1.85;margin:0 !important;}
body.naf-landing-page .naf-home-block {margin:0 0 35px;scroll-margin-top:22px;}
body.naf-landing-page .naf-home-section-heading {margin:0 0 15px;padding:0 0 9px;border-bottom:1px solid #e2eaf4;}
body.naf-landing-page .naf-home .naf-home-section-heading h2 {margin:0 !important;padding:0 !important;font-size:22px !important;font-weight:800 !important;color:#203955 !important;border:0 !important;background:transparent !important;box-shadow:none !important;line-height:1.55 !important;letter-spacing:.02em;}
body.naf-landing-page .naf-home .naf-home-section-heading h2::before,body.naf-landing-page .naf-home .naf-home-section-heading h2::after {content:none !important;display:none !important;}
body.naf-landing-page .naf-home-section-heading p {font-size:13px;color:#6b788a;margin:4px 0 0 !important;line-height:1.65;}
body.naf-landing-page .naf-purpose-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;}
body.naf-landing-page .naf-purpose-tile {display:flex;align-items:center;gap:11px;padding:17px 13px !important;border:1px solid #dce7f4;background:#fff !important;border-radius:13px;text-decoration:none !important;color:#243c55 !important;min-width:0;box-shadow:0 3px 12px rgba(20,50,88,.025);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;}
body.naf-landing-page .naf-purpose-tile:hover,body.naf-landing-page .naf-purpose-tile:focus-visible {transform:translateY(-2px);border-color:#88b4e3;box-shadow:0 5px 17px rgba(25,73,132,.12);}
body.naf-landing-page .naf-purpose-symbol {display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:10px;width:39px;height:39px;background:#eaf3fe;color:#286cb2;font-size:21px;font-weight:800;line-height:1;}
body.naf-landing-page .naf-purpose-text {display:flex;flex-direction:column;flex:1;min-width:0;gap:4px;}
body.naf-landing-page .naf-purpose-text strong {font-size:14px;color:#1e3d5f;font-weight:750;line-height:1.4;}
body.naf-landing-page .naf-purpose-text small {font-size:11px;line-height:1.5;color:#718095;}
body.naf-landing-page .naf-purpose-arrow {color:#3176c2;flex-shrink:0;font-size:17px;}
body.naf-landing-page .naf-home-card-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
body.naf-landing-page .naf-post-card {display:flex;flex-direction:column;min-width:0;padding:0 !important;border:1px solid #e1e8f1;overflow:hidden;border-radius:12px;background:#fff !important;text-decoration:none !important;box-shadow:0 4px 18px rgba(34,60,95,.035);transition:transform .15s ease, box-shadow .15s ease;}
body.naf-landing-page .naf-post-card:hover,body.naf-landing-page .naf-post-card:focus-visible {transform:translateY(-3px);box-shadow:0 6px 24px rgba(24,58,96,.11);}
body.naf-landing-page .naf-post-card-media {aspect-ratio:16/9;display:block;overflow:hidden;background:#e7eff8;}
body.naf-landing-page .naf-post-card-media img {height:100% !important;width:100% !important;object-fit:cover;display:block;margin:0 !important;border:0 !important;transition:transform .2s ease;}
body.naf-landing-page .naf-post-card:hover .naf-post-card-media img {transform:scale(1.025);}
body.naf-landing-page .naf-post-card-placeholder {display:flex;height:100%;align-items:center;justify-content:center;color:#6c9ed0;font-size:18px;font-weight:800;letter-spacing:.12em;text-align:center;line-height:1.25;background:linear-gradient(125deg,#e2effc,#f3f7fd);}
body.naf-landing-page .naf-post-card-meta {display:block;margin:12px 13px 5px;color:#377bb8;font-size:11px;line-height:1.5;font-weight:700;}
body.naf-landing-page .naf-post-card-title {display:block;padding:0 13px 14px;color:#263a4f;font-size:14px;font-weight:700;line-height:1.65;}
body.naf-landing-page .naf-home-topic {padding-top:3px;}
body.naf-landing-page .naf-home-card-grid-compact {grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
body.naf-landing-page .naf-home-card-grid-compact .naf-post-card-title {font-size:13px;}
body.naf-landing-page .naf-home-empty {font-size:14px;color:#758397;padding:14px;background:#fff;border:1px dashed #d8e2ef;border-radius:10px;}
body.naf-landing-page .naf-home-search {padding:18px;border:1px solid #e1eaf5;background:#fff;border-radius:13px;}
body.naf-landing-page .naf-home-search .naf-home-section-heading {margin-bottom:12px;}
body.naf-landing-page .naf-home-search form {display:flex;gap:9px;}
body.naf-landing-page .naf-home-search input[type=search] {flex:1;min-width:0;background:#fff !important;border:1px solid #cfdae8 !important;padding:12px 15px !important;min-height:43px;border-radius:9px !important;font-size:14px !important;box-shadow:none !important;color:#263c50 !important;}
body.naf-landing-page .naf-home-search button {border:0;border-radius:9px;padding:10px 18px;background:#2266af !important;color:#fff !important;font-weight:700;cursor:pointer;}
/* Shared shop heading for imported and opted-in hand-written posts. */
body.naf-site-shop-guide .naf-shop-summary {display:flex;align-items:flex-start;gap:18px;background:#f7fbff !important;border:1px solid #dce8f5;border-radius:13px;padding:20px;margin:0 0 21px;box-sizing:border-box;color:#223c59;}
body.naf-site-shop-guide .naf-shop-summary-logo {flex:0 0 85px;width:85px;height:85px;display:flex;align-items:center;justify-content:center;border:1px solid #dbe6f2;border-radius:12px;background:#fff;overflow:hidden;}
body.naf-site-shop-guide .naf-shop-summary-logo img {display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
body.naf-site-shop-guide .naf-shop-logo-fallback {display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:33px;font-weight:800;color:#4180bb;background:#eaf3fe;}
body.naf-site-shop-guide .naf-shop-summary-body {flex:1;min-width:0;}
body.naf-site-shop-guide .naf-shop-eyebrow {font-size:11px;color:#2b77b9;font-weight:700;letter-spacing:.06em;}
body.naf-site-shop-guide .naf-shop-summary p.naf-shop-summary-title {font-size:19px !important;color:#173651 !important;font-weight:800 !important;line-height:1.5 !important;margin:4px 0 7px !important;padding:0 !important;}
body.naf-site-shop-guide .naf-shop-summary p.naf-shop-summary-sub {font-size:13px !important;line-height:1.7 !important;margin:0 0 13px !important;color:#55697d !important;}
body.naf-site-shop-guide .naf-shop-primary-link {display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2268b2 !important;color:#fff !important;border-radius:9px;padding:10px 16px !important;text-decoration:none !important;font-size:14px !important;font-weight:700;}
body.naf-site-shop-guide .naf-shop-primary-link:hover,body.naf-site-shop-guide .naf-shop-primary-link:focus-visible {background:#174e90 !important;color:#fff !important;}
/* Sidebar clean-up strictly limited to guide content and the opt-in landing page. */
body.naf-site-shop-guide .sidebar .widget,
body.naf-landing-page .sidebar .widget,
body.naf-site-shop-guide #sidebar .widget,
body.naf-landing-page #sidebar .widget {background:#fff;border:1px solid #e7ebf2;border-radius:10px;padding:16px;margin-bottom:18px;box-sizing:border-box;box-shadow:0 3px 10px rgba(10,40,80,.025);}
body.naf-site-shop-guide .sidebar .widget-title,
body.naf-landing-page .sidebar .widget-title,
body.naf-site-shop-guide #sidebar .widget-title,
body.naf-landing-page #sidebar .widget-title {font-size:17px !important;color:#244562 !important;}
body.naf-hide-archive-widget .widget_archive {display:none !important;}
@media(max-width:900px) {
 body.naf-landing-page .naf-purpose-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.naf-landing-page .naf-home-card-grid-compact {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:650px) {
 body.naf-landing-page .naf-home-hero {padding:24px 19px;margin-bottom:22px;border-radius:13px;}
 body.naf-landing-page .naf-home .naf-home-hero h1 {font-size:27px !important;}
 body.naf-landing-page .naf-home .naf-home-section-heading h2 {font-size:20px !important;}
 body.naf-landing-page .naf-purpose-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
 body.naf-landing-page .naf-purpose-tile {padding:13px 9px !important;gap:7px;align-items:flex-start;min-height:92px;}
 body.naf-landing-page .naf-purpose-symbol {height:30px;width:30px;font-size:17px;border-radius:7px;}
 body.naf-landing-page .naf-purpose-text strong {font-size:12px;}
 body.naf-landing-page .naf-purpose-text small {font-size:10px;}
 body.naf-landing-page .naf-purpose-arrow {display:none;}
 body.naf-landing-page .naf-home-card-grid,body.naf-landing-page .naf-home-card-grid-compact {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 body.naf-landing-page .naf-post-card-title {font-size:12.5px;line-height:1.6;padding:0 9px 12px;}
 body.naf-landing-page .naf-post-card-meta {font-size:10px;margin:9px 9px 3px;}
 body.naf-site-shop-guide .naf-shop-summary {padding:13px;gap:12px;margin-bottom:17px;}
 body.naf-site-shop-guide .naf-shop-summary-logo {flex-basis:60px;width:60px;height:60px;border-radius:9px;}
 body.naf-site-shop-guide .naf-shop-logo-fallback {font-size:24px;}
 body.naf-site-shop-guide .naf-shop-summary p.naf-shop-summary-title {font-size:17px !important;}
 body.naf-site-shop-guide .naf-shop-summary p.naf-shop-summary-sub {font-size:12px !important;}
 body.naf-site-shop-guide .naf-shop-primary-link {padding:9px 12px !important;font-size:12px !important;}
 body.naf-landing-page .naf-home-search form {flex-direction:column;}
}
/* Featured carousel - contains ordinary and importer-created WP posts alike. */
body.naf-landing-page .naf-home-heading-with-controls {display:flex;justify-content:space-between;align-items:center;gap:12px;}
body.naf-landing-page .naf-home .naf-carousel-controls {display:flex;gap:7px;}
body.naf-landing-page .naf-home .naf-carousel-controls button {border:1px solid #d4e1f0;background:#fff !important;box-shadow:none !important;border-radius:50%;width:33px;height:33px;display:flex;align-items:center;justify-content:center;color:#2a608e;font-size:25px;line-height:1;cursor:pointer;padding:0;}
body.naf-landing-page .naf-home .naf-carousel-controls button:hover {background:#edf5fe !important;}
body.naf-landing-page .naf-home .naf-home-carousel {display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:10px;}
body.naf-landing-page .naf-home .naf-home-carousel .naf-post-card {flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start;}
@media(max-width:900px){body.naf-landing-page .naf-home .naf-home-carousel .naf-post-card {flex-basis:calc((100% - 16px)/2);}}
@media(max-width:650px){body.naf-landing-page .naf-home .naf-home-carousel {gap:10px;}body.naf-landing-page .naf-home .naf-home-carousel .naf-post-card {flex-basis:calc((100% - 10px)/2);}}
/* The JIN fixed-page title would duplicate the custom landing hero. */
body.naf-landing-page h1.entry-title,
body.naf-landing-page h1.post-title,
body.naf-landing-page .cps-post-title,
body.naf-landing-page .cps-post-main > h1 {display:none !important;}
/* JIN commonly uses .widgettitle instead of .widget-title. */
body.naf-site-shop-guide .sidebar .widgettitle,
body.naf-landing-page .sidebar .widgettitle,
body.naf-site-shop-guide #sidebar .widgettitle,
body.naf-landing-page #sidebar .widgettitle {font-size:17px !important;color:#244562 !important;}
