/* Fontana Catalog — front-end styles for the Roses, Summer Crops, Farm and
   Blog views, plus the shared popup. Colours live on :root (prefixed --fc-
   to avoid clashing with the theme) so they're available both inside the
   .fontana-catalog container AND inside the popup, which is appended
   separately onto <body> and is NOT a descendant of .fontana-catalog --
   a custom property only reaches its own descendants, so defining colours
   only on .fontana-catalog silently broke every colour inside the popup.
   Loaded as a real plugin stylesheet, so unlike Additional CSS this one
   can safely use anything -- nothing here goes through WordPress's
   post-content filter. */

:root{
  --fc-forest:#1b4332;
  --fc-forest-deep:#12291f;
  --fc-sage:#7fa88f;
  --fc-cream:#f6f2e9;
  --fc-paper:#fffdf8;
  --fc-gold:#b8923f;
  --fc-ink:#20261f;
  --fc-line:rgba(27,67,50,.14);
  --fc-shadow:0 18px 40px -22px rgba(18,41,31,.35);
}

.fontana-catalog{
  font-family:'Work Sans', sans-serif;
  color:var(--fc-ink);
  line-height:1.55;
}
.fontana-catalog *{box-sizing:border-box}
.fontana-catalog h2,
.fontana-catalog h3{font-family:'Fraunces', serif}
.fontana-catalog img,
.fontana-catalog svg{display:block;max-width:100%}
.fontana-catalog button{font-family:inherit;cursor:pointer;border:none;background:none}

/* shared by both the grid cards AND the popup, so these are NOT scoped
   under .fontana-catalog -- the popup lives outside it */
.fc-tag{display:inline-block;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fc-gold);background:rgba(184,146,63,.12);padding:4px 10px;margin-bottom:10px}
.fc-sheen{position:absolute;inset:0;background:linear-gradient(140deg, rgba(255,255,255,.35), transparent 55%)}

/* filter chips */
.fontana-catalog .fc-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px;border-bottom:1px solid var(--fc-line);padding-bottom:22px}
.fontana-catalog .fc-chip{padding:9px 18px;font-size:.83rem;color:var(--fc-forest);border:1px solid var(--fc-line);border-radius:999px;transition:all .2s ease}
.fontana-catalog .fc-chip:hover{border-color:var(--fc-forest)}
.fontana-catalog .fc-chip.active{background:var(--fc-forest);color:#fff;border-color:var(--fc-forest)}

/* grid + cards */
.fontana-catalog .fc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fontana-catalog .fc-card{background:var(--fc-paper);cursor:pointer;box-shadow:var(--fc-shadow);overflow:hidden;transition:transform .25s ease;text-decoration:none;color:inherit;display:block}
.fontana-catalog .fc-card:hover{transform:translateY(-5px)}
.fontana-catalog .fc-thumb{aspect-ratio:4/3;position:relative;overflow:hidden;background:linear-gradient(135deg,#c9c2ae,#e8e2d4)}
.fontana-catalog .fc-thumb.wide{aspect-ratio:16/9}
.fontana-catalog .fc-thumb img{width:100%;height:100%;object-fit:cover}
.fontana-catalog .fc-body{padding:18px 20px 22px}
.fontana-catalog .fc-body h3{font-size:1.1rem;font-weight:500}
.fontana-catalog .fc-body p{font-size:.82rem;color:#788572;margin-top:6px}
.fontana-catalog .fc-empty{color:#788572;font-size:.9rem;padding:26px 0}

/* farm header (single-farm view) */
.fontana-catalog .fc-farmhead{margin-bottom:40px}
.fontana-catalog .fc-farmhead .fc-logo{width:64px;height:64px;border-radius:50%;background:rgba(184,146,63,.12);border:1px solid var(--fc-gold);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;color:var(--fc-forest);margin-bottom:16px;overflow:hidden}
.fontana-catalog .fc-farmhead .fc-logo img{width:100%;height:100%;object-fit:cover}
.fontana-catalog .fc-farmhead h2{font-size:2rem;font-weight:600;margin-bottom:10px}
.fontana-catalog .fc-farmhead p{color:#4b5749;max-width:60ch}
.fontana-catalog .fc-farmhead .fc-elev{color:#7a8577;font-size:.85rem;margin-top:10px}

/* farm card grid (Home / Growers) */
.fontana-catalog .fc-farm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px;background:var(--fc-line)}
.fontana-catalog .fc-farm-card{display:block;background:var(--fc-paper);padding:30px 26px;text-decoration:none;color:inherit;transition:background .2s ease}
.fontana-catalog .fc-farm-card:hover{background:#fbf8f1}
.fontana-catalog .fc-farm-card .fc-farm-logo{width:52px;height:52px;border-radius:50%;background:rgba(184,146,63,.12);border:1px solid var(--fc-gold);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;font-size:.85rem;color:var(--fc-forest);margin-bottom:16px;overflow:hidden}
.fontana-catalog .fc-farm-card .fc-farm-logo img{width:100%;height:100%;object-fit:cover}
.fontana-catalog .fc-farm-card h3{font-size:1.2rem;font-weight:500;margin-bottom:6px}
.fontana-catalog .fc-farm-card .fc-farm-elev{color:#7a8577;font-size:.76rem;margin-bottom:10px}
.fontana-catalog .fc-farm-card p{color:#586355;font-size:.85rem}
.fontana-catalog .fc-farm-card .fc-farm-link{display:inline-block;margin-top:16px;font-size:.78rem;color:var(--fc-gold);font-family:'Fraunces',serif;font-style:italic}
.fontana-catalog .fc-farm-card:hover .fc-farm-link{text-decoration:underline}

/* single post view */
.fontana-catalog .fc-post{max-width:760px}
.fontana-catalog .fc-post-hero{aspect-ratio:21/9;position:relative;overflow:hidden;margin-bottom:40px;background:linear-gradient(135deg,#c9c2ae,#e8e2d4)}
.fontana-catalog .fc-post-hero img{width:100%;height:100%;object-fit:cover}
.fontana-catalog .fc-post-meta{color:#788572;font-size:.85rem;margin-bottom:10px}
.fontana-catalog .fc-post-title{font-family:'Fraunces',serif;font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:600;margin-bottom:28px;max-width:24ch;color:var(--fc-ink)}
.fontana-catalog .fc-post-body{color:#3c4639;font-size:1rem;line-height:1.7}
.fontana-catalog .fc-post-body p{margin-bottom:20px;max-width:70ch}
.fontana-catalog .fc-post-body h2,
.fontana-catalog .fc-post-body h3{font-family:'Fraunces',serif;margin:32px 0 14px;color:var(--fc-forest)}
.fontana-catalog .fc-post-body a{color:var(--fc-forest);text-decoration:underline}
.fontana-catalog .fc-post-body img{margin:20px 0;max-width:100%}
.fontana-catalog .fc-post-back{display:inline-block;margin-top:10px;padding:13px 28px;border:1px solid var(--fc-line);color:var(--fc-forest);text-decoration:none;font-size:.9rem}
.fontana-catalog .fc-post-back:hover{border-color:var(--fc-forest)}
.fontana-catalog .fc-post-media{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:30px 0}
.fontana-catalog .fc-post-media img,
.fontana-catalog .fc-post-media video{width:100%;height:220px;object-fit:cover;background:#000;border-radius:2px}

/* popup -- note: NOT nested inside .fontana-catalog, see note at top */
.fontana-catalog-overlay{position:fixed;inset:0;background:rgba(18,29,22,.68);z-index:999999;display:none;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(2px)}
.fontana-catalog-overlay.open{display:flex}
.fontana-catalog-overlay .fc-modal{background:var(--fc-paper);max-width:900px;width:100%;max-height:88vh;overflow:auto;display:grid;grid-template-columns:1.1fr 1fr;box-shadow:0 40px 80px -20px rgba(0,0,0,.5);font-family:'Work Sans',sans-serif;color:var(--fc-ink)}
.fontana-catalog-overlay .fc-visual{background:var(--fc-forest-deep);padding:26px;display:flex;flex-direction:column;gap:14px}
.fontana-catalog-overlay .fc-preview{aspect-ratio:1/1;position:relative;overflow:hidden;border-radius:2px}
.fontana-catalog-overlay .fc-view-caption{color:var(--fc-cream);font-family:'Fraunces',serif;font-style:italic;font-size:.95rem;text-align:center}
.fontana-catalog-overlay .fc-strip{display:flex;gap:10px}
.fontana-catalog-overlay .fc-strip-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer}
.fontana-catalog-overlay .fc-strip-thumb{width:100%;aspect-ratio:1/1;border:2px solid transparent;opacity:.6;position:relative;overflow:hidden;border-radius:2px;transition:opacity .2s ease, border-color .2s ease}
.fontana-catalog-overlay .fc-strip-caption{font-size:.68rem;color:#cfd9d0;text-align:center}
.fontana-catalog-overlay .fc-info{padding:32px 30px;position:relative;font-family:'Work Sans',sans-serif}
.fontana-catalog-overlay .fc-close{position:absolute;top:16px;right:16px;font-size:1.4rem;color:#8a9384;width:34px;height:34px;cursor:pointer;background:none;border:none}
.fontana-catalog-overlay .fc-info h2{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:500;margin-bottom:12px}
.fontana-catalog-overlay .fc-desc{color:#556151;font-size:.9rem;margin-bottom:20px}
.fontana-catalog-overlay .fc-spec{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--fc-line);font-size:.85rem}
.fontana-catalog-overlay .fc-spec span:first-child{color:#7a8577}
.fontana-catalog-overlay .fc-spec span:last-child{font-weight:500;color:var(--fc-forest)}
.fontana-catalog-overlay .fc-quote{margin-top:22px;width:100%;padding:13px 0;background:var(--fc-gold);color:var(--fc-forest-deep);font-weight:600;text-align:center;border:none;cursor:pointer;font-family:'Work Sans',sans-serif;font-size:1rem}

@media (max-width:900px){
  .fontana-catalog .fc-grid{grid-template-columns:1fr 1fr}
  .fontana-catalog-overlay .fc-modal{grid-template-columns:1fr}
}
@media (max-width:600px){
  .fontana-catalog .fc-grid{grid-template-columns:1fr}
}
