
/* JFD FC2 faithful layout. Scoped to the shortcode only. */
.jfd-fc2{--pink:#ff1493;--soft:#fff5fa;--ink:#222;max-width:1200px;margin:0 auto 50px;font-family:Arial,"Noto Sans JP",sans-serif;color:var(--ink);font-size:16px;font-weight:500;line-height:1.65}
.jfd-fc2 *{box-sizing:border-box}.jfd-fc2 a{text-decoration:none;color:inherit}.jfd-fc2 a:hover{opacity:.85}.jfd-fc2 .jfd-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;color:#d6003b}.jfd-fc2 .jfd-brand{font-size:24px;font-weight:900}.jfd-fc2 .jfd-brand small{font-size:13px;color:#555;font-weight:600}.jfd-fc2 .jfd-blacknav{background:#292929;color:white;display:flex;gap:0;flex-wrap:wrap;justify-content:center;margin:0 calc((min(1200px,100vw) - 100vw)/2) 14px;padding:0 10px}.jfd-fc2 .jfd-blacknav a{font-size:13px;padding:10px 16px}.jfd-fc2 .jfd-blacknav a:hover{background:#444}.jfd-fc2 .jfd-leadrow{display:grid;grid-template-columns:2fr 1fr;gap:12px;align-items:stretch;margin:10px 0 28px}.jfd-fc2 .jfd-lead{border-left:5px solid var(--pink);border-right:5px solid var(--pink);border-radius:10px;background:#fff7fb;padding:10px 16px}.jfd-fc2 .jfd-lead strong{display:block;font-size:22px;color:var(--pink);line-height:1.45}.jfd-fc2 .jfd-lead span{font-size:13px}.jfd-fc2 .jfd-disclosure{display:grid;grid-template-columns:1fr 1fr;gap:5px;align-content:start}.jfd-fc2 .jfd-disclosure span{font-size:11px;border:1px solid #f5d1e2;border-radius:6px;background:white;padding:7px 5px}.jfd-fc2 .jfd-disclosure .wide{grid-column:1/-1}.jfd-fc2 .jfd-head{font-size:20px;font-weight:800;color:var(--pink);border-bottom:2px solid var(--pink);padding:5px 3px 8px;margin:0 0 12px}.jfd-fc2 .jfd-bandhead{background:#fff2f8;padding:8px 12px;border-bottom:2px solid var(--pink);margin:0;font-size:20px;color:var(--pink)}.jfd-fc2 .jfd-feature{margin-bottom:32px}.jfd-fc2 .jfd-featuregrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.jfd-fc2 .jfd-featurecard{border:1px solid #f1ccde;border-radius:8px;overflow:hidden;background:#fff;text-align:center}.jfd-fc2 .jfd-featurecard .jfd-cardcopy{padding:10px}.jfd-fc2 .jfd-featurecard strong{color:var(--pink);display:block}.jfd-fc2 .jfd-featurecard img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.jfd-fc2 .jfd-featurecard .jfd-emptyimage{aspect-ratio:16/9;background:#fff0f7;display:grid;place-items:center;color:#ce679c}.jfd-fc2 .jfd-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}.jfd-fc2 .jfd-duo>section+section{border-left:2px solid var(--pink);padding-left:12px}.jfd-fc2 .jfd-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.jfd-fc2 .jfd-card{border-radius:9px;overflow:hidden;background:white;border:1px solid #eee;box-shadow:0 2px 7px #0000000a}.jfd-fc2 .jfd-card img,.jfd-fc2 .jfd-card .jfd-noimage{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.jfd-fc2 .jfd-card .jfd-noimage{display:grid;place-items:center;background:#fff0f7;color:#d272a5}.jfd-fc2 .jfd-card strong{display:block;font-size:14px;line-height:1.55;padding:9px 10px 12px}.jfd-fc2 .jfd-button{display:block;text-align:center;background:var(--pink);color:white!important;padding:11px;margin-top:10px;border-radius:7px;font-size:14px;font-weight:800}.jfd-fc2 .jfd-lower{margin-top:34px}.jfd-fc2 .jfd-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.jfd-fc2 .jfd-pick{border:2px solid var(--pink);border-radius:9px;text-align:center;padding:12px 9px;background:white}.jfd-fc2 .jfd-pick strong{color:var(--pink);display:block}.jfd-fc2 .jfd-pick span{display:block;font-size:13px}.jfd-fc2 .jfd-creator-group{background:white;border:1px solid #eee;border-radius:10px;padding:14px;margin:14px 0}.jfd-fc2 .jfd-creator-group h3{background:#fff0f7;border-left:4px solid var(--pink);padding:8px 10px;font-size:16px;margin:0 0 10px}.jfd-fc2 .jfd-creator-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.jfd-fc2 .jfd-creator-card{border:1px solid #eee;border-radius:7px;overflow:hidden}.jfd-fc2 .jfd-creator-card img,.jfd-fc2 .jfd-creator-card .jfd-noimage{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.jfd-fc2 .jfd-creator-card .jfd-noimage{display:grid;place-items:center;background:#fff0f7;color:#ce679c}.jfd-fc2 .jfd-creator-card strong{font-size:13px;display:block;padding:7px}.jfd-fc2 .jfd-genres{display:flex;flex-wrap:wrap;gap:8px}.jfd-fc2 .jfd-genres a{border:1px solid #efb7d0;padding:9px 13px;border-radius:6px;background:#fff7fb;color:#a81859;font-weight:700;font-size:14px}.jfd-fc2 .jfd-footnote{margin-top:30px;font-size:12px;color:#555}.jfd-fc2 .jfd-featurecard a:focus-visible,.jfd-fc2 a:focus-visible{outline:3px solid #9b2467;outline-offset:2px}
@media(max-width:800px){.jfd-fc2 .jfd-leadrow{grid-template-columns:1fr}.jfd-fc2 .jfd-creator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jfd-fc2 .jfd-duo{grid-template-columns:1fr}.jfd-fc2 .jfd-duo>section+section{border-left:0;padding-left:0;border-top:2px solid #f3d2e1;padding-top:15px}}@media(max-width:520px){.jfd-fc2{padding:0 10px}.jfd-fc2 .jfd-topline{display:block}.jfd-fc2 .jfd-brand{font-size:19px}.jfd-fc2 .jfd-featuregrid{grid-template-columns:1fr 1fr}.jfd-fc2 .jfd-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.jfd-fc2 .jfd-grid{gap:8px}.jfd-fc2 .jfd-card strong{font-size:12px}.jfd-fc2 .jfd-head{font-size:18px}}

/* v1.0.1: Ensure 2-column cards inside both homepage panels despite theme styles. */
.jfd-fc2 .jfd-duo > section { min-width:0; }
.jfd-fc2 .jfd-duo > section .jfd-grid {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  width:100%;
  align-items:start;
}
.jfd-fc2 .jfd-duo > section .jfd-grid > * {min-width:0;max-width:100%;width:100%;margin:0;}
.jfd-fc2 .jfd-duo > section .jfd-grid .jfd-card img {width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;}
@media(max-width:800px){.jfd-fc2 .jfd-duo > section .jfd-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:380px){.jfd-fc2 .jfd-duo > section .jfd-grid{gap:8px !important;}}

/* v1.0.2: reinforce layout against Kadence and editor content CSS. */
.jfd-fc2 .jfd-duo > section .jfd-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-auto-flow:row !important;gap:12px !important;}
.jfd-fc2 .jfd-duo > section .jfd-grid > a.jfd-card{grid-column:auto !important;grid-row:auto !important;float:none !important;display:block !important;min-width:0 !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;}

/* v1.0.4: use flexbox for homepage cards, bypass grid placement interference. */
.jfd-fc2 .jfd-duo > section .jfd-grid {display:flex !important;flex-wrap:wrap !important;align-items:flex-start !important;gap:12px !important;grid-template-columns:none !important;}
.jfd-fc2 .jfd-duo > section .jfd-grid > a.jfd-card {display:block !important;flex:0 0 calc(50% - 6px) !important;width:calc(50% - 6px) !important;max-width:calc(50% - 6px) !important;min-width:0 !important;float:none !important;clear:none !important;margin:0 !important;}
.jfd-fc2 .jfd-duo > section .jfd-grid > a.jfd-card img {display:block !important;width:100% !important;height:auto !important;aspect-ratio:16/9;object-fit:cover;}
