/* ==========================================================================
   Chenies Events: single event page
   Palette: #5D6D6B (deep), #7B8E8C (mid), #91A19F (light), white.
   Pinned against page-builder styles so it looks the same wherever placed.
   ========================================================================== */
/* Type scale (shared by all Chenies Events styles): .875rem small, 1rem body, 1.25rem subheading, clamp(1.5rem,1.2rem + 1vw,1.75rem) section heading, clamp(1.75rem,1.3rem + 1.6vw,2.25rem) page heading. */

.ce-ev{--ce-d:#5D6D6B;--ce-m:#7B8E8C;--ce-g:#91A19F;--ce-w:#fff;--ce-r:5px;width:100%;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:40px;color:var(--ce-w);font-size:1rem!important;font-weight:300!important;line-height:1.6!important;text-align:left!important}
.ce-ev *,.ce-ev *::before,.ce-ev *::after{box-sizing:border-box}
.ce-ev h1,.ce-ev h2{font-family:'Marcellus',serif!important;font-weight:400!important;text-transform:none!important;text-align:left!important;letter-spacing:normal!important;color:var(--ce-w)!important;margin:0!important;line-height:1.1!important}
.ce-ev p,.ce-ev span,.ce-ev b,.ce-ev li{text-align:left!important;text-transform:none!important;color:var(--ce-w)}
.ce-ev p{margin:0}
.ce-ev p,.ce-ev li,.ce-ev td,.ce-ev th,.ce-ev span,.ce-ev b{line-height:1.6!important}
.ce-ev a{text-decoration:none!important;color:var(--ce-w)}
.ce-ev a:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px var(--ce-d)}

.ce-ev-panel{background:var(--ce-d);border-radius:var(--ce-r);overflow:hidden}

/* hero: picture left with title and dates over it, details right */
.ce-ev-hero{display:grid;grid-template-columns:1fr 1fr}
.ce-ev-hero.ce-ev-nopic{grid-template-columns:1fr}
.ce-ev-pic{position:relative;margin:0;min-height:460px}
.ce-ev-pic img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover;display:block}
.ce-ev-title{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.25rem)!important}
.ce-ev-dates{font-family:'Marcellus',serif;font-size:1.25rem;line-height:1.3!important}
.ce-ev-body > .ce-ev-title + .ce-ev-dates{margin-top:8px}
.ce-ev-body{padding:clamp(24px,3.5vw,44px);display:flex;flex-direction:column;gap:20px}
.ce-ev-text p{margin:0 0 .8em}
.ce-ev-text p:last-child{margin-bottom:0}

/* features */
.ce-ev .ce-features{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px}
.ce-ev .ce-features__item{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;background:none;border:0}
.ce-ev .ce-features__item svg,.ce-ev .ce-feature-icon{width:22px;height:22px;fill:currentColor;flex:none;object-fit:contain}

/* ---- right-hand panel: tidy rhythm, price table, icon grid ---- */
.ce-ev-body{gap:0!important}
.ce-ev-body > *{margin:0}
.ce-ev-body > * + *{margin-top:20px}
.ce-ev-text{max-width:62ch}
.ce-ev-prices,.ce-ev .ce-features,.ce-ev-acts {padding-top:24px;margin-top:24px!important;border-top:1px solid rgba(255,255,255,.3)}

.ce-ev-ptable{width:100%;border-collapse:collapse;table-layout:auto}
.ce-ev-ptable th,.ce-ev-ptable td{padding:11px 0;border-bottom:1px solid rgba(255,255,255,.22);text-align:left!important;vertical-align:baseline;font-weight:300}
.ce-ev-ptable thead th,.ce-ev-ptable thead td{font-weight:400;padding-top:0;font-family:'Marcellus',serif;font-size:1rem;letter-spacing:.06em;text-align:right!important;width:96px}
.ce-ev-ptable thead th.ce-ev-ptable__h{text-align:left!important;width:auto}
.ce-ev-ptable tbody th{font-weight:300;padding-right:16px}
.ce-ev-ptable tbody td{font-weight:400;font-family:'Marcellus',serif;font-size:1.25rem;text-align:right!important;white-space:nowrap}
.ce-ev-ptable .ce-ev-ptable__extra th{font-size:1rem}
.ce-ev-ptable th small{display:block;font-size:.875rem;opacity:.85;margin-top:2px}
.ce-ev-ptable .ce-ev-ptable__extra td{text-align:right!important}

.ce-ev .ce-features{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;list-style:none;margin:0;padding-left:0;padding-right:0;padding-bottom:0}
.ce-ev .ce-features__item{display:flex;align-items:center;gap:12px;font-size:1rem}
.ce-ev .ce-features__item svg{width:26px;height:26px;flex:none}
.ce-ev .ce-features__item img,.ce-ev .ce-feature-icon{width:26px;height:26px;object-fit:contain;flex:none;filter:brightness(0) invert(1)}
.ce-ev-acts{border-top:0!important;padding-top:0}
@media (max-width:860px){.ce-ev .ce-features{grid-template-columns:1fr}}

/* buttons */
.ce-ev-acts{margin-top:4px}
.ce-ev-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 24px;background:#fff;color:var(--ce-d)!important;border-radius:var(--ce-r);font-weight:500;font-size:1rem;transition:background .25s}
.ce-ev-btn:hover{background:#e8edec}
.ce-ev-btn svg{width:18px;height:18px;flex:none}
.ce-ev-btn svg.ce-tick{width:22px;height:22px}

/* photo collage */
.ce-ev-gallery{display:grid;gap:40px}
.ce-ev-shot{display:block;overflow:hidden;border-radius:var(--ce-r);background:var(--ce-d);aspect-ratio:4/3}
.ce-ev-shot img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.ce-ev-shot:hover img{transform:scale(1.04)}
.ce-ev-gallery--1{grid-template-columns:repeat(1,1fr)}
.ce-ev-gallery--2{grid-template-columns:repeat(2,1fr)}
.ce-ev-gallery--3{grid-template-columns:repeat(3,1fr)}
.ce-ev-gallery--4{grid-template-columns:repeat(4,1fr)}
.ce-ev-shot{cursor:zoom-in}

/* spacing rule: 40px between blocks, rows and columns */
/* highlight line */
.ce-ev .ce-ev-kicker{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase!important;opacity:.9;margin:0 0 -8px}


/* visiting questions */
.ce-ev-faq{padding:clamp(24px,4vw,48px)}
.ce-ev-faq h2{font-size:clamp(1.5rem,1.2rem + 1vw,1.75rem)!important;margin-bottom:32px!important}
.ce-ev-faq__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.ce-ev-faq__item{padding:22px 0 26px;border-top:1px solid rgba(255,255,255,.28)}
.ce-ev-faq__item h3{font-family:'Marcellus',serif!important;font-weight:400!important;font-size:1.25rem!important;line-height:1.25!important;margin:0 0 10px!important;color:var(--ce-w)!important;text-transform:none!important;text-align:left!important}
.ce-ev-faq__item p{font-size:1rem;max-width:56ch}

/* photo captions */
.ce-ev-shot{position:relative}
.ce-ev-cap{z-index:2;position:absolute;left:10px;bottom:10px;max-width:calc(100% - 20px);padding:4px 10px;background:rgba(0,0,0,.62);color:#fff;border-radius:var(--ce-r);font-size:.875rem;line-height:1.3}

/* caption pill on the main picture sits bottom right, clear of the title */
.ce-ev-cap--right{left:auto;right:12px;bottom:12px}
@media (max-width:860px){.ce-ev-cap--right{bottom:auto;top:12px}}
/* stat band */
.ce-ev-stats{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;padding:clamp(24px,3vw,36px) clamp(16px,3vw,32px)}
.ce-ev-stats--1{grid-template-columns:1fr}.ce-ev-stats--2{grid-template-columns:repeat(2,1fr)}.ce-ev-stats--3{grid-template-columns:repeat(3,1fr)}
.ce-ev-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;gap:4px;padding:0 12px;text-align:center}
.ce-ev-stats .ce-ev-stat b,.ce-ev-stats .ce-ev-stat span{text-align:center!important}
.ce-ev-stat b{font-family:'Marcellus',serif;font-weight:400;font-size:clamp(1.5rem,1.2rem + 1vw,1.75rem);line-height:1.15;text-wrap:balance}
.ce-ev-stat span{font-size:.875rem;letter-spacing:.08em;text-transform:uppercase!important;line-height:1.4}
.ce-ev-stat + .ce-ev-stat{border-left:1px solid rgba(255,255,255,.35)}

/* extra section */
.ce-ev-extra{display:grid;grid-template-columns:1fr 1fr}
.ce-ev-extra.ce-ev-nopic{grid-template-columns:1fr}
.ce-ev-extra__text{padding:clamp(24px,4vw,48px);display:flex;flex-direction:column;gap:12px;justify-content:center}
.ce-ev-extra__text h2{font-size:clamp(1.5rem,1.2rem + 1vw,1.75rem)!important}
.ce-ev-extra__text .ce-ev-text{max-width:62ch}
.ce-ev-extra__pic{margin:0;position:relative;min-height:280px}
.ce-ev-extra__pic img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover;display:block}
@media (max-width:860px){
 .ce-ev-faq__grid,.ce-ev-extra{grid-template-columns:1fr}
 .ce-ev-stats{grid-template-columns:repeat(2,1fr);gap:22px 0}
 .ce-ev-stat:nth-child(odd){border-left:0}.ce-ev-stat + .ce-ev-stat{border-left:1px solid rgba(255,255,255,.35)}.ce-ev-stat:nth-child(2n+1){border-left:0}
 .ce-ev-extra__pic{min-height:0;aspect-ratio:3/2}
}

.ce-ev .ce-ev-onsale{display:flex;align-items:center;gap:18px;margin:0 0 28px!important;padding:20px 24px;background:var(--ce-m);border-radius:var(--ce-r)}
.ce-ev .ce-ev-onsale svg{width:36px;height:36px;flex:none}
.ce-ev .ce-ev-onsale__txt{display:flex;flex-direction:column;gap:2px}
.ce-ev .ce-ev-onsale__lead{font-size:.875rem;font-weight:400}
.ce-ev .ce-ev-onsale + .ce-ev-onsale{margin-top:-12px!important}
.ce-ev .ce-ev-dates + .ce-ev-onsale{margin-top:24px!important}
.ce-ev .ce-ev-bloom__note{font-size:.875rem;margin-top:4px}
.ce-ev .ce-ev-onsale__date{font-family:'Marcellus',serif;font-weight:400;font-size:1.25rem;line-height:1.15;color:var(--ce-w)}
/* on-sale date and bloom status side by side, stacked when narrow */
.ce-ev .ce-ev-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:24px 0 28px!important}
.ce-ev .ce-ev-status > .ce-ev-onsale{margin:0!important}
.ce-ev .ce-ev-status:has(+ .ce-ev-status-note){margin-bottom:10px!important}
.ce-ev .ce-ev-status-note{margin:0 0 28px!important;font-size:.875rem}
.ce-ev .ce-ev-status > .ce-ev-onsale{align-items:flex-start;gap:14px;padding:18px 20px}
.ce-ev .ce-ev-status svg{width:28px;height:28px;margin-top:2px}

/* closing call to action */
.ce-ev-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;padding:clamp(24px,3.5vw,40px)}
.ce-ev-cta h2{font-size:clamp(1.5rem,1.2rem + 1vw,1.75rem)!important}

@media (max-width:860px){
 .ce-ev-hero{grid-template-columns:1fr}
 .ce-ev-pic{min-height:0;aspect-ratio:4/3}
 .ce-ev-gallery{gap:16px}
 .ce-ev-gallery--2,.ce-ev-gallery--3,.ce-ev-gallery--4{grid-template-columns:repeat(2,1fr)}
 .ce-ev-btn{width:100%}
 .ce-ev-cta{flex-direction:column;align-items:stretch}
}
@media (prefers-reduced-motion:reduce){.ce-ev *{transition:none!important}}

/* All buttons use Marcellus (one weight, so no faux bold) */
.ce-ev .ce-ev-btn{font-family:'Marcellus',serif!important;font-weight:400!important}

/* What to expect: soft tiles. One line only between prices and this block. */
.ce-ev .ce-wte{margin-top:24px!important;padding-top:24px;border-top:1px solid rgba(255,255,255,.3)}
.ce-ev .ce-wte .ce-features{padding:0!important;margin:0!important;border-top:0!important;gap:12px!important}
.ce-ev .ce-wte .ce-features__item{gap:12px;padding:12px 14px;background:rgba(123,142,140,.45);border-radius:var(--ce-r);font-family:'Marcellus',serif;font-size:1rem;line-height:1.25}
.ce-ev .ce-wte .ce-features__item svg,.ce-ev .ce-wte .ce-features__item img,.ce-ev .ce-wte .ce-feature-icon{width:30px;height:30px}
.ce-ev-ptable tbody tr:last-child th,.ce-ev-ptable tbody tr:last-child td{border-bottom:0}
