/* Palm Beach color accents — only loaded when COLORS_ENABLED=1.
   Keeps navy + gold brand; adds pink, coral/orange, and palm green.
   Classy (Lilly Pulitzer / Palm Beach), not childish. WCAG AA text contrast. */

:root{
  --pink:#E94B8A;
  --pink-soft:#F28AB2;
  --pink-deep:#B8326A;
  --pink-tint:#FDF0F5;
  --coral:#F47B3E;
  --coral-deep:#C85A22;
  --coral-tint:#FFF1E8;
  --peach:#FFE4D1;
  --palm:#2E9E6B;
  --palm-deep:#1F7A52;
  --mint:#E6F6EE;
  --lime:#A8E6C5;
}

/* ----- Global: richer category pills ----- */
body.pb-colors .pill.c-music{background:#16384f;color:#F6E7C4}
body.pb-colors .pill.c-theater-dance{background:#B8326A;color:#FFF0F6}
body.pb-colors .pill.c-arts-culture{background:#C85A22;color:#FFF5EB}
body.pb-colors .pill.c-food-drink{background:#E94B8A;color:#FFF5F9}
body.pb-colors .pill.c-outdoors-lifestyle{background:#1F7A52;color:#E6F6EE}
body.pb-colors .pill.c-family-community{background:#2C6B8A;color:#E8F4FA}
body.pb-colors .pill.c-galas-charity{background:#0f2a3d;color:#F28AB2}
body.pb-colors .pill.c-nightlife{background:#5A2E6B;color:#F3E8FA}

/* Town / generic pills get a soft peach wash */
body.pb-colors .pill:not([class*="c-"]):not(.feat):not(.reg):not(.ecat){
  background:var(--peach);color:#7A3E18
}
body.pb-colors .pill.reg{background:var(--mint);color:var(--palm-deep)}
body.pb-colors .free{background:var(--mint);color:var(--palm-deep)}

/* ----- Section eyebrows + heading underlines ----- */
body.pb-colors .sec-head h2,
body.pb-colors .local-section h2,
body.pb-colors .seo-sec > h2,
body.pb-colors .list-month{
  position:relative;padding-bottom:.35em
}
body.pb-colors .sec-head h2::after,
body.pb-colors .local-section h2::after,
body.pb-colors .seo-sec > h2::after{
  content:"";display:block;width:48px;height:3px;border-radius:2px;margin-top:.45em;
  background:linear-gradient(90deg,var(--pink),var(--coral))
}
body.pb-colors .eyebrow{letter-spacing:.14em}

/* ----- Cards: soft hover border in accent ----- */
body.pb-colors .card{
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease
}
body.pb-colors .card:hover{
  border-color:var(--pink-soft);
  box-shadow:0 6px 18px rgba(233,75,138,.10)
}
body.pb-colors .card.feat,
body.pb-colors .card.li.feat-on,
body.pb-colors .transport-spot{
  /* keep gold featured / USA Transportation look intact */
  border-color:var(--gold)!important
}
body.pb-colors .card.feat:hover,
body.pb-colors .card.li.feat-on:hover,
body.pb-colors .transport-spot:hover{
  border-color:var(--gold)!important;
  box-shadow:0 6px 18px rgba(201,164,92,.18)
}

/* ----- Buttons ----- */
body.pb-colors .btn{
  background:linear-gradient(135deg,var(--coral),#F5A05A);
  color:#1a1208
}
body.pb-colors .btn:hover{filter:brightness(1.05)}
body.pb-colors .btn.dark{
  background:var(--navy);color:#fff
}
body.pb-colors .btn.ghost{
  background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)
}
body.pb-colors .btn.ghost.dk{
  color:var(--navy);border-color:var(--navy)
}
body.pb-colors .btn.pink{
  background:linear-gradient(135deg,var(--pink),var(--pink-soft));color:#fff
}
body.pb-colors .btn.palm{
  background:linear-gradient(135deg,var(--palm-deep),var(--palm));color:#fff
}
body.pb-colors .nav a.cta{
  background:linear-gradient(135deg,var(--coral),#F5A05A);color:#1a1208
}
body.pb-colors .nav a.cta:hover,
body.pb-colors .nav a.cta.on{
  background:linear-gradient(135deg,var(--pink),var(--coral));color:#fff
}

/* ----- Tinted bands / alternating section washes ----- */
body.pb-colors .band.nlband,
body.pb-colors .submit-band{
  background:linear-gradient(135deg,#0f2a3d 0%,#1d4a63 55%,#2E5A4A 100%)
}
body.pb-colors main > section:nth-of-type(even):not(.evmain){
  background:linear-gradient(180deg,transparent,var(--pink-tint) 40%,transparent)
}
body.pb-colors .lead{
  background:var(--peach);border-left:3px solid var(--coral)
}
body.pb-colors .quick-take{
  background:var(--mint);border-left-color:var(--palm)
}
body.pb-colors .inqside{
  background:var(--pink-tint)
}
body.pb-colors .sp-offer{
  background:linear-gradient(135deg,#fffdf8,var(--pink-tint));
  border-color:var(--pink-soft)
}
body.pb-colors .sp-offer .eyebrow{color:var(--pink-deep)}

/* Category tiles get a rainbow of Palm Beach hues */
body.pb-colors .cat:nth-child(3n+1){background:linear-gradient(140deg,#0f2a3d,#2c5f75)}
body.pb-colors .cat:nth-child(3n+2){background:linear-gradient(140deg,#B8326A,#E94B8A)}
body.pb-colors .cat:nth-child(3n){background:linear-gradient(140deg,#C85A22,#F47B3E)}
body.pb-colors .cat:nth-child(3n+4){background:linear-gradient(140deg,#1F7A52,#2E9E6B)}

/* Filter chips when active */
body.pb-colors .filters a.on,
body.pb-colors .filters button.on{
  background:var(--coral-deep);border-color:var(--coral-deep);color:#fff
}
body.pb-colors .filters a.on .n{background:#fff;color:var(--coral-deep)}
body.pb-colors .guides a:hover,
body.pb-colors .guides a.on,
body.pb-colors .cat-chip:hover,
body.pb-colors .cat-chip:focus{
  background:var(--pink);color:#fff;border-color:var(--pink)
}

/* Date blocks stay navy with a coral accent day */
body.pb-colors .date .d{background:linear-gradient(180deg,#16384f,#0f2a3d)}
body.pb-colors .date .d small{color:var(--pink-soft)}
body.pb-colors .twd{background:linear-gradient(180deg,#16384f,#0f2a3d)}
body.pb-colors .twd small{color:var(--pink-soft)}

/* See-pricing reveal keeps classy, gets a soft pink outline */
body.pb-colors .sp-reveal > summary{
  border-color:var(--pink);color:var(--pink-deep);background:var(--pink-tint)
}
body.pb-colors .sp-reveal > summary:hover{
  background:var(--pink);color:#fff
}

/* Counter buttons pick up coral */
body.pb-colors .agenda-counter{
  border-color:var(--coral)!important;color:var(--coral-deep)!important
}
body.pb-colors .agenda-counter[aria-pressed="true"]{
  background:var(--coral-tint)!important;border-color:var(--coral)!important
}

/* ========== Page accents ========== */

/* HOME — coral CTAs, soft pink wash on browse */
body.pb-colors.accent-home .eyebrow{color:var(--pink-soft)}
body.pb-colors.accent-home .hero .eyebrow{color:var(--pink-soft)}
body.pb-colors.accent-home .sec-head h2::after{
  background:linear-gradient(90deg,var(--coral),var(--pink))
}

/* EVENTS / weekend / calendar — coral */
body.pb-colors.accent-events .page-head .eyebrow,
body.pb-colors.accent-events .hero .eyebrow{color:#FFB088}
body.pb-colors.accent-events .sec-head h2::after,
body.pb-colors.accent-events .seo-sec > h2::after,
body.pb-colors.accent-events .list-month::after{
  background:linear-gradient(90deg,var(--coral),#F5A05A)
}
body.pb-colors.accent-events .card:hover{border-color:var(--coral);box-shadow:0 6px 18px rgba(244,123,62,.14)}
body.pb-colors.accent-events .filters a.on,
body.pb-colors.accent-events .filters button.on{
  background:var(--coral);border-color:var(--coral)
}
body.pb-colors.accent-events .btn:not(.dark):not(.ghost){
  background:linear-gradient(135deg,var(--coral-deep),var(--coral));color:#fff
}
body.pb-colors.accent-events main > section:nth-of-type(even):not(.evmain){
  background:linear-gradient(180deg,transparent,var(--coral-tint) 45%,transparent)
}
body.pb-colors.accent-events .page-head.has-img::before,
body.pb-colors.accent-events .hero.has-img::before{
  background:linear-gradient(100deg,rgba(15,42,61,.92) 0%,rgba(200,90,34,.55) 55%,rgba(244,123,62,.35) 100%)
}

/* SHOP LOCAL — palm green */
body.pb-colors.accent-local .page-head .eyebrow{color:var(--lime)}
body.pb-colors.accent-local .sec-head h2::after,
body.pb-colors.accent-local .local-section h2::after{
  background:linear-gradient(90deg,var(--palm-deep),var(--palm))
}
body.pb-colors.accent-local .card:hover{border-color:var(--palm);box-shadow:0 6px 18px rgba(46,158,107,.14)}
body.pb-colors.accent-local .btn:not(.dark):not(.ghost){
  background:linear-gradient(135deg,var(--palm-deep),var(--palm));color:#fff
}
body.pb-colors.accent-local .filters a.on,
body.pb-colors.accent-local .cat-chip:hover{
  background:var(--palm);border-color:var(--palm);color:#fff
}
body.pb-colors.accent-local main > section:nth-of-type(even),
body.pb-colors.accent-local .local-section:nth-of-type(even){
  background:linear-gradient(180deg,transparent,var(--mint) 50%,transparent)
}
body.pb-colors.accent-local .page-head.has-img::before{
  background:linear-gradient(100deg,rgba(15,42,61,.92) 0%,rgba(31,122,82,.55) 55%,rgba(46,158,107,.35) 100%)
}
body.pb-colors.accent-local .pill{
  background:var(--mint);color:var(--palm-deep)
}

/* GUIDES (place guides) — pink */
body.pb-colors.accent-guides .page-head .eyebrow{color:var(--pink-soft)}
body.pb-colors.accent-guides .sec-head h2::after,
body.pb-colors.accent-guides .seo-sec > h2::after{
  background:linear-gradient(90deg,var(--pink-deep),var(--pink))
}
body.pb-colors.accent-guides .card:hover{border-color:var(--pink);box-shadow:0 6px 18px rgba(233,75,138,.14)}
body.pb-colors.accent-guides .btn:not(.dark):not(.ghost){
  background:linear-gradient(135deg,var(--pink-deep),var(--pink));color:#fff
}
body.pb-colors.accent-guides .guides a.on,
body.pb-colors.accent-guides .guides a:hover{
  background:var(--pink);border-color:var(--pink);color:#fff
}
body.pb-colors.accent-guides main > section:nth-of-type(even){
  background:linear-gradient(180deg,transparent,var(--pink-tint) 50%,transparent)
}
body.pb-colors.accent-guides .page-head.has-img::before{
  background:linear-gradient(100deg,rgba(15,42,61,.92) 0%,rgba(184,50,106,.5) 55%,rgba(233,75,138,.32) 100%)
}

/* ADVERTISE — navy + pink */
body.pb-colors.accent-advertise .page-head .eyebrow{color:var(--pink-soft)}
body.pb-colors.accent-advertise .sec-head h2::after,
body.pb-colors.accent-advertise .sp-offer h2::after{
  background:linear-gradient(90deg,var(--navy),var(--pink))
}
body.pb-colors.accent-advertise .btn:not(.dark):not(.ghost),
body.pb-colors.accent-advertise .btn.sp-buy{
  background:linear-gradient(135deg,var(--pink-deep),var(--pink));color:#fff
}
body.pb-colors.accent-advertise .card.sp-pop{
  border-color:var(--pink);box-shadow:0 6px 18px rgba(233,75,138,.16)
}
body.pb-colors.accent-advertise .sp-stat b{color:var(--pink-deep)}
body.pb-colors.accent-advertise .page-head.has-img::before{
  background:linear-gradient(100deg,rgba(15,42,61,.94) 0%,rgba(15,42,61,.75) 40%,rgba(184,50,106,.4) 100%)
}

/* DIRECTORY — orange/coral */
body.pb-colors.accent-directory .page-head .eyebrow{color:#FFB088}
body.pb-colors.accent-directory .sec-head h2::after{
  background:linear-gradient(90deg,var(--coral),var(--pink))
}
body.pb-colors.accent-directory .card:hover{border-color:var(--coral)}
body.pb-colors.accent-directory .cat-chip:hover{
  background:var(--coral);border-color:var(--coral);color:#fff
}

/* Soft focus outlines stay gold for accessibility */
body.pb-colors .filters a:focus-visible,
body.pb-colors .filters button:focus-visible,
body.pb-colors .btn:focus-visible{
  outline:3px solid var(--gold);outline-offset:2px
}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
  body.pb-colors .card{transition:none}
}
