/* Markets & Events (Fairs): /events/, /events/add/ and single fair pages. Builds on brand.css shop classes. */

.fairpage .fnotice{margin:18px 0 0}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:14px}
.fmonth{font-family:var(--body);font-size:15px;font-weight:700;letter-spacing:0;color:var(--sea);margin:22px 0 0;padding-bottom:8px;border-bottom:1px solid var(--line)}
.shopsec h2 + .fmonth{margin-top:12px}

.fcard{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:var(--surface);min-width:0}
.fdate{flex:0 0 58px;display:grid;justify-items:center;align-content:center;min-height:62px;border-radius:12px;background:var(--sea);color:#fff;text-align:center;line-height:1}
.fdate b{font-size:24px;font-weight:800}
.fdate span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;color:var(--gold)}
.fdate.weekly{background:var(--gold-soft)}
.fdate.weekly span{color:var(--sea);margin:0;font-size:13px;padding:0 4px}
.fdate.yearly span{margin:0;font-size:15px}
.fmonthpick{margin-top:16px}
.fbody{display:grid;gap:4px;min-width:0}
.fbody h3{font-family:var(--body);font-size:16px;font-weight:700;letter-spacing:0;line-height:1.3}
.fbody h3 a{color:var(--fg);text-decoration:none}
.fbody h3 a:hover{text-decoration:underline}
.fwhen{font-size:14px;font-weight:600;color:var(--sea)}
.fwhere{font-size:13px;color:var(--muted)}
.fsell{justify-self:start;margin-top:6px;font-size:13px;font-weight:700;color:var(--sea);background:var(--gold);border-radius:999px;padding:7px 14px;text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
.fsell:hover{background:#F2B800}
.faddband{margin-top:40px}

.fhead{display:grid;gap:8px;justify-items:start}
.fhead h1{font-family:var(--body);font-weight:800;font-size:clamp(28px,4vw,40px);letter-spacing:-.03em}
.fhead .fwhen{font-size:17px;margin:0}
.fairone .idetails{padding-top:28px}
.stallbox{background:var(--gold-soft);border:2px solid var(--gold);scroll-margin-top:20px}
.stallbox h3{font-size:18px;color:var(--sea)}
.stallbox p{margin:0;font-size:14px;line-height:1.6;color:#333}
.stallbox .kv{grid-template-columns:96px minmax(0,1fr)}
.stallbox .cta-buy{display:grid;gap:8px;margin-top:4px}
.stallbox .fnote{font-size:12.5px;color:var(--muted)}
.fcheck{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;margin:0;padding-top:14px;border-top:1px solid var(--line)}
.fcheck a{color:var(--sea);font-weight:600}
.fwrong{display:grid;gap:4px;font-size:14px}
.fwrong p{margin:0;color:var(--muted)}
.fwrong a{justify-self:start;color:var(--sea);font-weight:700}
.fsignin .anav{margin-top:4px}

.fairform .seg3{grid-template-columns:repeat(3,1fr)}
.fairform .fstack{display:grid;gap:14px}

/* Auctions */
.fcard.auction{border-color:var(--gold)}
.fcard.auction .fbody{flex:1}
.fcard.auction .badge{justify-self:start}
.fthumb{flex:0 0 72px;width:72px;height:72px;border-radius:10px;overflow:hidden;background:var(--line)}
.fthumb img{width:100%;height:100%;object-fit:cover;display:block}
.fposter{display:block;margin:0 0 18px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#f4f4f2}
.fposter img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain}
.flots,.fphotos,.fbefore{display:grid;gap:10px;margin-top:22px}
.flots h2 .muted{font-size:14px;font-weight:600}
.flots ul{margin:0;padding:0;list-style:none;columns:2;column-gap:24px}
.flots li{break-inside:avoid;padding:7px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.flots .field{max-width:360px}
.fphotogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.fphotogrid a{display:block;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--line)}
.fphotogrid img{width:100%;height:100%;object-fit:cover;display:block}
.auctionbox{scroll-margin-top:20px}
.auctionbox form{margin:0}
.auctionbox .fremind{width:100%}
.auctionbox .cta-two a:only-child{grid-column:1/-1}
.fairform input[type=file]{padding:10px}

@media (max-width:700px){
  .flots ul{columns:1}
  .fthumb{flex-basis:56px;width:56px;height:56px}
  .fgrid{grid-template-columns:1fr}
  .fcard{padding:14px}
}
