:root{
  --pl360-primary:#f07c00;
  --pl360-secondary:#101622;
  --pl360-text:#182230;
  --pl360-muted:#667085;
  --pl360-bg:#ffffff;
  --pl360-soft:#f8fafc;
  --pl360-border:#e7eaef;
  --pl360-radius:24px;
}

.pl360-site-main{display:block; width:100%;}
.pl360-archive-wrap,
.pl360-single-wrap{
  max-width:var(--pl360-container-max,1180px) !important;
  width:calc(100% - 32px) !important;
  margin:34px auto 52px !important;
  padding:0 !important;
  box-sizing:border-box !important;
  color:var(--pl360-text);
}
.pl360-archive-wrap *, .pl360-single-wrap *{box-sizing:border-box}

.pl360-archive-header,
.pl360-panel,
.pl360-single-hero,
.pl360-description-panel,
.pl360-event-card{border-radius:var(--pl360-radius)}

.pl360-archive-header{
  padding:28px 34px !important;
  background:linear-gradient(180deg,#fff,#fff8ef) !important;
  border:1px solid var(--pl360-border) !important;
  box-shadow:0 12px 32px rgba(16,24,40,.06) !important;
  margin-bottom:18px !important;
}
.pl360-archive-kicker{
  display:inline-flex; align-items:center; gap:8px; padding:8px 14px;
  border-radius:999px; background:#fff3e8; color:#c75c00; font-size:11px;
  font-weight:800; letter-spacing:.12em; text-transform:uppercase; margin-bottom:14px;
}
.pl360-archive-header h1{
  margin:0 0 10px !important; color:var(--pl360-archive-title-color,#0f1728) !important;
  font-size:clamp(28px,3.6vw,var(--pl360-archive-title-size,46px)) !important; line-height:1.02 !important;
  font-weight:var(--pl360-archive-title-weight,800) !important; letter-spacing:-.04em !important; font-family:var(--pl360-archive-title-family,inherit) !important;
}
.pl360-archive-intro{margin:0 !important; color:var(--pl360-archive-intro-color,#566174) !important; font-size:var(--pl360-archive-intro-size,16px) !important; line-height:1.6 !important}
.pl360-results-count{margin:0 0 24px !important; color:var(--pl360-muted) !important; font-size:14px !important}

.pl360-btn{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  min-height:48px !important; padding:0 20px !important; border-radius:14px !important;
  border:1px solid transparent !important; background:linear-gradient(180deg,var(--pl360-primary),#d86500) !important;
  color:#fff !important; font-size:13px !important; font-weight:800 !important; letter-spacing:.05em !important;
  text-transform:uppercase !important; text-decoration:none !important;
  box-shadow:0 10px 24px rgba(240,124,0,.22); transition:transform .15s ease, box-shadow .15s ease;
}
.pl360-btn:hover{transform:translateY(-2px); box-shadow:0 16px 30px rgba(240,124,0,.28)}
.pl360-btn-outline{background:#fff !important; color:var(--pl360-primary) !important; border-color:var(--pl360-primary) !important; box-shadow:none !important}
.pl360-btn-small{min-height:44px !important; padding:0 18px !important; border-radius:12px !important; font-size:12px !important}

.pl360-events-grid{display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:36px !important; align-items:stretch !important}
.pl360-events-grid--related{grid-template-columns:repeat(3,minmax(0,1fr)) !important}

.pl360-event-card{position:relative !important; background:#fff !important; border:none !important; box-shadow:none !important; overflow:visible !important; display:flex !important; flex-direction:column !important; height:100% !important}
.pl360-event-card--mag .pl360-event-card-image{
  position:relative !important; display:block !important; aspect-ratio:var(--pl360-card-ratio,1/.72) !important;
  overflow:hidden !important; border-radius:0 !important; background:#eef2f7 !important; text-decoration:none !important;
}
.pl360-event-card--mag .pl360-event-card-image img, .pl360-no-thumb{width:100% !important; height:100% !important; display:block !important; object-fit:cover !important}
.pl360-image-category{
  position:absolute !important; left:14px !important; top:14px !important; z-index:3;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:10px 15px !important; border-radius:999px !important; font-size:11px !important;
  font-weight:900 !important; letter-spacing:.08em !important; text-transform:uppercase !important;
  box-shadow:0 12px 24px rgba(0,0,0,.18) !important; border:3px solid rgba(255,255,255,.98) !important;
}
.pl360-card-category{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:8px 14px !important; border-radius:999px !important; font-size:12px !important;
  font-weight:800 !important; letter-spacing:.08em !important; text-transform:uppercase !important;
}
.pl360-badge--concert{background:#fff3e8 !important;color:#cc5a00 !important}
.pl360-badge--soiree{background:#fff0f7 !important;color:#b42372 !important}
.pl360-badge--salon{background:#eef4ff !important;color:#175cd3 !important}
.pl360-badge--sport{background:#ecfdf3 !important;color:#027a48 !important}
.pl360-badge--default{background:#f2f4f7 !important;color:#344054 !important}
.pl360-date-badge{
  position:absolute !important; right:16px !important; bottom:16px !important; z-index:3;
  width:96px !important; height:96px !important; border-radius:999px !important;
  background:linear-gradient(180deg,var(--pl360-date-badge-bg,var(--pl360-primary)),#d96500) !important; color:var(--pl360-date-badge-text,#fff) !important; display:flex !important;
  flex-direction:column !important; align-items:center !important; justify-content:center !important;
  border:5px solid rgba(255,255,255,.98) !important; box-shadow:0 18px 34px rgba(240,124,0,.35) !important;
}
.pl360-date-badge strong{font-size:30px !important; line-height:1 !important; font-weight:900 !important; text-shadow:0 2px 8px rgba(0,0,0,.14) !important}
.pl360-date-badge small{font-size:14px !important; line-height:1 !important; margin-top:4px !important; font-weight:800 !important; text-shadow:0 2px 8px rgba(0,0,0,.14) !important}
.pl360-event-card-content{padding:28px 0 0 !important; display:flex !important; flex-direction:column !important; flex:1 1 auto !important}
.pl360-event-card h3{
  margin:0 0 10px !important; font-size:clamp(18px,1.7vw,24px) !important; line-height:1.1 !important;
  font-weight:700 !important; letter-spacing:-.02em !important; text-transform:none !important; color:#0f1728 !important;
}
.pl360-event-card h3 a{color:inherit !important; text-decoration:none !important}
.pl360-card-summary{margin:0 0 16px !important; color:#4b5565 !important; font-size:15px !important; line-height:1.55 !important; display:-webkit-box !important; -webkit-line-clamp:var(--pl360-summary-lines,3) !important; -webkit-box-orient:vertical !important; overflow:hidden !important; min-height:calc(1.55em * var(--pl360-summary-lines,3)) !important}

.pl360-single-hero--premium,
.pl360-single-hero--dark{
  display:grid !important; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr) !important; gap:30px !important; align-items:center !important;
  padding:34px !important; background:radial-gradient(circle at top left,rgba(240,124,0,.16),transparent 28%), linear-gradient(135deg,#0d1018 0%,#111827 45%,#1d2940 100%) !important;
  border:none !important; box-shadow:0 22px 60px rgba(10,15,30,.22) !important; color:#fff !important;
}
.pl360-hero-chip-row{display:flex !important; flex-wrap:wrap !important; gap:10px !important; margin:0 0 16px !important}
.pl360-hero-chip{display:inline-flex !important; align-items:center !important; gap:8px !important; padding:8px 14px !important; border-radius:999px !important; font-size:12px !important; font-weight:700 !important}
.pl360-hero-chip--light{background:rgba(255,255,255,.12) !important; color:#fff !important; border:1px solid rgba(255,255,255,.14) !important}
.pl360-hero-chip .dashicons{font-size:15px !important; width:15px !important; height:15px !important}
.pl360-single-hero h1{margin:0 0 12px !important; color:#fff !important; font-size:clamp(30px,3.2vw,48px) !important; line-height:1.02 !important; letter-spacing:-.035em !important; font-weight:800 !important; text-transform:none !important}
.pl360-published{margin:0 0 12px !important; color:rgba(255,255,255,.72) !important; font-size:13px !important}
.pl360-hero-summary{margin:0 !important; color:rgba(255,255,255,.88) !important; font-size:17px !important; line-height:1.75 !important; max-width:760px !important}
.pl360-hero-mini-actions{display:flex !important; flex-wrap:wrap !important; gap:12px !important; margin-top:22px !important}
.pl360-single-hero-image img{width:100% !important; height:auto !important; display:block !important; border-radius:22px !important; box-shadow:0 22px 45px rgba(0,0,0,.28) !important}

.pl360-single-layout{display:grid !important; grid-template-columns:minmax(0,1fr) 320px !important; gap:24px !important; margin-top:24px !important}
.pl360-panel,.pl360-description-panel{background:#fff !important; border:1px solid var(--pl360-border) !important; box-shadow:0 12px 28px rgba(16,24,40,.05) !important; padding:24px !important}
.pl360-description-panel h2,.pl360-related-block h2{margin:0 0 14px !important; font-size:clamp(24px,2.2vw,32px) !important; line-height:1.05 !important; letter-spacing:-.03em !important; font-weight:800 !important; color:#0f1728 !important}
.pl360-richtext{font-size:16px !important; line-height:1.8 !important; color:#344054 !important}
.pl360-info-grid{display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:18px !important}
.pl360-panel h3{margin:0 0 10px !important; font-size:18px !important; line-height:1.15 !important; color:#0f1728 !important; font-weight:800 !important}
.pl360-panel p{margin:0 0 8px !important; font-size:15px !important; line-height:1.7 !important; color:#344054 !important}
.pl360-panel a{color:var(--pl360-primary) !important; text-decoration:none !important; font-weight:700 !important}
.pl360-actions-panel{display:flex !important; flex-direction:column !important; gap:12px !important; position:sticky !important; top:24px !important}
.pl360-back-link{margin-top:6px !important; color:#0f1728 !important; font-weight:800 !important; text-decoration:none !important}
.pl360-related-block{margin-top:30px !important}

.pl360-carousel-shell{overflow-x:auto !important; padding:8px 0 14px !important; scrollbar-width:thin}
.pl360-carousel-track{display:flex !important; gap:28px !important; min-width:min-content !important}
.pl360-carousel-item{flex:0 0 min(360px,88vw) !important}
.pl360-carousel-item .pl360-event-card{height:100% !important}

@media (max-width:1100px){
  .pl360-events-grid,.pl360-events-grid--related{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .pl360-single-hero--premium,.pl360-single-hero--dark{grid-template-columns:1fr !important}
  .pl360-single-layout{grid-template-columns:1fr !important}
  .pl360-actions-panel{position:static !important}
}
@media (max-width:760px){
  .pl360-archive-wrap,.pl360-single-wrap{width:calc(100% - 20px) !important; margin:20px auto 32px !important}
  .pl360-archive-header{padding:22px !important}
  .pl360-archive-header h1{font-size:34px !important}
  .pl360-events-grid,.pl360-events-grid--related{grid-template-columns:1fr !important; gap:28px !important}
  .pl360-date-badge{width:82px !important; height:82px !important; right:12px !important; bottom:-22px !important}
  .pl360-image-category{bottom:-10px !important}
  .pl360-single-hero--premium,.pl360-single-hero--dark{padding:22px !important; gap:18px !important}
  .pl360-single-hero h1{font-size:34px !important}
  .pl360-hero-summary{font-size:16px !important}
  .pl360-hero-mini-actions{flex-direction:column !important}
  .pl360-info-grid{grid-template-columns:1fr !important}
  .pl360-panel,.pl360-description-panel{padding:20px !important}
}

.pl360-event-card--mag .pl360-event-card-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,30,.06),transparent 45%,rgba(10,18,30,.10));pointer-events:none;}
.pl360-actions-panel .pl360-btn,.pl360-hero-mini-actions .pl360-btn{color:#fff !important;-webkit-text-fill-color:#fff !important;}
.pl360-actions-panel .pl360-btn-outline,.pl360-hero-mini-actions .pl360-btn-outline{color:var(--pl360-primary) !important;-webkit-text-fill-color:var(--pl360-primary) !important;background:#fff !important;}
.pl360-actions-panel .pl360-btn:hover,.pl360-hero-mini-actions .pl360-btn:hover{opacity:1 !important;}

.pl360-date-badge{outline:3px solid rgba(255,255,255,.98) !important; overflow:hidden !important;}
.pl360-image-category{background:#fff !important; color:var(--pl360-primary) !important; text-shadow:none !important; box-shadow:0 14px 28px rgba(0,0,0,.22) !important;}
.pl360-actions-panel .pl360-btn, .pl360-actions-panel .pl360-btn-outline{width:100% !important; text-align:center !important; white-space:normal !important; line-height:1.25 !important; padding:12px 18px !important; min-height:50px !important;}
.pl360-archive-header--premium{background:linear-gradient(180deg,#fff9f3 0%, #fff 100%) !important;}
.pl360-archive-kicker{display:inline-flex !important; align-items:center !important; gap:8px !important;}

.pl360-event-card .pl360-btn{margin-top:auto !important; align-self:flex-start !important;}
.pl360-image-category.pl360-badge--concert,.pl360-card-category.pl360-badge--concert{background:var(--pl360-badge-concert-bg,#f07c00) !important;color:var(--pl360-badge-text,#fff) !important;}
.pl360-image-category.pl360-badge--soiree,.pl360-card-category.pl360-badge--soiree{background:var(--pl360-badge-soiree-bg,#b42372) !important;color:var(--pl360-badge-text,#fff) !important;}
.pl360-image-category.pl360-badge--salon,.pl360-card-category.pl360-badge--salon{background:var(--pl360-badge-salon-bg,#175cd3) !important;color:var(--pl360-badge-text,#fff) !important;}
.pl360-image-category.pl360-badge--sport,.pl360-card-category.pl360-badge--sport{background:var(--pl360-badge-sport-bg,#027a48) !important;color:var(--pl360-badge-text,#fff) !important;}
.pl360-image-category.pl360-badge--default,.pl360-card-category.pl360-badge--default{background:var(--pl360-badge-default-bg,#344054) !important;color:var(--pl360-badge-text,#fff) !important;}
.pl360-single-hero h1{font-size:clamp(30px,3.2vw,var(--pl360-single-title-size,54px)) !important; font-weight:var(--pl360-single-title-weight,800) !important; text-transform:var(--pl360-single-title-transform,none) !important;}
.pl360-hero-mini-actions .pl360-btn,.pl360-actions-panel .pl360-btn{white-space:normal !important;}


/* True carousel */
.pl360-carousel{position:relative !important; width:100% !important; margin:0 auto !important;}
.pl360-carousel-viewport{overflow:hidden !important; width:100% !important;}
.pl360-carousel-track{display:flex !important; gap:28px !important; transition:transform .35s ease !important; will-change:transform; touch-action:pan-y !important;}
.pl360-carousel-item{flex:0 0 calc((100% - 56px)/3) !important; min-width:0 !important;}
.pl360-carousel-item .pl360-event-card{height:100% !important;}
.pl360-event-card--carousel .pl360-event-card-image{cursor:pointer !important;}
.pl360-event-card--carousel .pl360-event-card-content{padding-bottom:0 !important;}
.pl360-carousel-arrow{position:absolute !important; top:34% !important; transform:translateY(-50%) !important; width:44px !important; height:44px !important; border-radius:999px !important; border:1px solid rgba(240,124,0,.25) !important; background:#fff !important; color:var(--pl360-primary) !important; display:flex !important; align-items:center !important; justify-content:center !important; cursor:pointer !important; box-shadow:0 8px 22px rgba(15,23,40,.12) !important; z-index:20 !important;}
.pl360-carousel-arrow--prev{left:-12px !important;}
.pl360-carousel-arrow--next{right:-12px !important;}
.pl360-carousel-arrow:disabled{opacity:.45 !important; cursor:not-allowed !important;}
.pl360-carousel-dots{display:flex !important; justify-content:center !important; gap:10px !important; margin-top:18px !important;}
.pl360-carousel-dot{width:10px !important; height:10px !important; border:none !important; border-radius:999px !important; background:#d0d5dd !important; padding:0 !important; cursor:pointer !important;}
.pl360-carousel-dot.is-active{background:var(--pl360-primary) !important; width:28px !important;}

@media (max-width:1024px){
  .pl360-carousel-item{flex-basis:calc((100% - 28px)/2) !important;}
}
@media (max-width:767px){
  .pl360-carousel-item{flex-basis:100% !important;}
  .pl360-carousel-track{gap:18px !important;}
  .pl360-carousel-arrow{width:38px !important; height:38px !important; top:30% !important;}
  .pl360-carousel-arrow--prev{left:6px !important;}
  .pl360-carousel-arrow--next{right:6px !important;}
}


/* V13.2.9 clean final card layout */
.pl360-event-card{
  min-height: 440px !important;
  display:flex !important;
  flex-direction:column !important;
}
.pl360-event-card-content{
  padding:18px 0 0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  flex:1 1 auto !important;
  align-items:flex-start !important;
}
.pl360-event-card h3{
  width:100% !important;
  margin:0 !important;
  font-size:clamp(18px,1.6vw,22px) !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
  min-height:calc(1.15em * 2) !important;
}
.pl360-event-card h3 a{
  color:inherit !important;
  text-decoration:none !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:normal !important;
  word-break:break-word !important;
}
.pl360-card-summary{
  width:100% !important;
  margin:0 !important;
  color:#4b5565 !important;
  font-size:15px !important;
  line-height:1.5 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  min-height:calc(1.5em * 2) !important;
}
.pl360-event-card .pl360-btn{
  margin-top:6px !important;
  align-self:flex-start !important;
}
.pl360-event-card--mag .pl360-event-card-image{
  aspect-ratio:16/9 !important;
}
.pl360-events-grid--related .pl360-btn{
  display:none !important;
}
.pl360-events-grid--related .pl360-event-card{
  min-height:auto !important;
}
.pl360-events-grid--related .pl360-event-card h3{
  font-size:clamp(16px,1.4vw,20px) !important;
}
.pl360-events-grid--related .pl360-card-summary{
  font-size:14px !important;
  min-height:calc(1.45em * 2) !important;
}
.pl360-single-layout{align-items:start !important;}
.pl360-single-content{min-width:0 !important;}
.pl360-single-sidebar{min-width:0 !important;}
@media (max-width:760px){
  .pl360-event-card{
    min-height:auto !important;
  }
  .pl360-event-card-content{
    padding:14px 0 0 !important;
    gap:8px !important;
  }
  .pl360-event-card h3{
    font-size:clamp(18px,5.4vw,24px) !important;
    min-height:auto !important;
  }
  .pl360-event-card h3 a{
    -webkit-line-clamp:2 !important;
  }
  .pl360-card-summary{
    min-height:auto !important;
    -webkit-line-clamp:2 !important;
  }
  .pl360-event-card .pl360-btn{
    width:100% !important;
  }
  .pl360-image-category{
    left:12px !important;
    top:12px !important;
    bottom:auto !important;
    padding:8px 12px !important;
    border-width:3px !important;
    font-size:11px !important;
  }
  .pl360-date-badge{
    width:78px !important;
    height:78px !important;
    right:12px !important;
    bottom:12px !important;
    border-width:4px !important;
  }
  .pl360-date-badge strong{font-size:28px !important;}
  .pl360-date-badge small{font-size:12px !important;}
  .pl360-single-hero--premium,.pl360-single-hero--dark{
    padding:20px !important;
  }
  .pl360-single-hero h1{
    font-size:clamp(28px,8vw,36px) !important;
  }
}
/* keep carousel true carousel visible on mobile */
@media (max-width:767px){
  .pl360-carousel{
    overflow:hidden !important;
  }
  .pl360-carousel-viewport{
    overflow:hidden !important;
  }
  .pl360-carousel-item{
    flex-basis:100% !important;
  }
}
