/* Shortt Events theme — layout (header, hero, sections, footer).
   Components live in the Core plugin's core.css. */
:root{
	--se-navy:#0F2D52; --se-navy-2:#143a68; --se-gold:#C9A04A; --se-cream:#fbfaf7;
	--se-border:#e3ddd0; --se-ink:#1f2933; --se-muted:#5b6573;
	--se-font-head:'Cormorant Garamond',Georgia,serif; --se-font-body:'Jost',-apple-system,BlinkMacSystemFont,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body.se-site{font-family:var(--se-font-body);color:var(--se-ink);background:var(--se-cream);line-height:1.55}
img{max-width:100%;height:auto}
a{color:var(--se-navy)}
::selection{background:var(--se-gold);color:#fff}
.se-container{max-width:1240px;margin:0 auto;padding:0 24px}
.se-skip{position:absolute;left:-9999px;top:0;background:#fff;padding:10px 16px;z-index:1000}
.se-skip:focus{left:8px;top:8px}

/* Header */
.se-header{position:sticky;top:0;z-index:200;background:rgba(251,250,247,.92);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--se-border)}
.se-header__inner{display:flex;align-items:center;gap:24px;height:72px}
.se-header__brand{flex:none}
.se-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.se-logo__mark{font-family:var(--se-font-head);font-weight:700;font-size:26px;color:var(--se-navy);letter-spacing:1px}
.se-logo__mark::first-letter{color:var(--se-navy)}
.se-logo__word{font-family:var(--se-font-head);font-weight:600;font-size:21px;letter-spacing:3px;color:var(--se-navy)}
.se-logo__word em{font-style:normal;color:var(--se-gold)}
.se-logo--light .se-logo__word{color:#fff}
.se-header__nav{flex:1}
.se-menu{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.se-menu a{text-decoration:none;color:var(--se-navy);font-weight:500;font-size:15px;padding:6px 0;position:relative}
.se-menu a:hover{color:var(--se-gold)}
.se-menu .current-menu-item>a{color:var(--se-gold)}
.se-header__actions{display:flex;align-items:center;gap:12px;flex:none}
.se-nav-link{text-decoration:none;font-weight:500;font-size:15px;color:var(--se-navy)}
.se-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.se-burger span{width:24px;height:2px;background:var(--se-navy);display:block;transition:.2s}
.se-mobile-nav{border-top:1px solid var(--se-border);background:var(--se-cream);padding:18px 24px}
.se-mobile-nav .se-menu{flex-direction:column;gap:14px}
.se-mobile-nav__actions{display:flex;gap:10px;margin-top:16px}

/* Buttons (shared with core.css but defined here too for theme-only pages) */
.se-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--se-font-body);font-weight:600;font-size:15px;border:1px solid transparent;border-radius:9px;padding:12px 22px;cursor:pointer;text-decoration:none;transition:.15s ease;line-height:1}
.se-btn--gold{background:var(--se-gold);color:#3a2c08}
.se-btn--gold:hover{background:#b98f3c}
.se-btn--navy{background:var(--se-navy);color:#fff}
.se-btn--ghost{background:#fff;border-color:var(--se-border);color:var(--se-navy)}
.se-btn--ghost:hover{border-color:var(--se-gold)}
.se-btn--sm{padding:8px 14px;font-size:13px}
.se-btn--block{display:flex;width:100%}

/* Section headings */
.se-section{padding:64px 0}
.se-section--cream{background:#f4efe6}
.se-section--navy{background:var(--se-navy);color:#fff}
.se-section--navy .se-shead__title,.se-section--navy h2,.se-section--navy h3{color:#fff}
.se-shead{text-align:center;margin-bottom:34px}
.se-shead__eyebrow{display:inline-block;color:var(--se-gold);letter-spacing:.24em;text-transform:uppercase;font-size:12px;font-weight:600;margin-bottom:10px}
.se-shead__title{font-family:var(--se-font-head);font-weight:600;font-size:42px;line-height:1.05;color:var(--se-navy);margin:0}

/* Hero */
.se-hero{position:relative;min-height:600px;display:flex;align-items:center;overflow:hidden;background:var(--se-navy);background-image:linear-gradient(135deg,#0b2138,#0F2D52 60%,#143a68)}
.se-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.se-hero__overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(105deg,rgba(8,26,49,.92) 0%,rgba(11,33,60,.82) 42%,rgba(15,45,82,.55) 100%)}
.se-hero__inner{z-index:2}
.se-hero__inner{position:relative;width:100%;padding:80px 24px}
.se-hero__copy{max-width:680px;margin-bottom:34px}
.se-hero__eyebrow{display:inline-block;color:var(--se-gold);letter-spacing:.28em;text-transform:uppercase;font-size:13px;font-weight:500;margin-bottom:20px}
.se-hero__title{font-family:var(--se-font-head);color:#fff;font-size:60px;line-height:1.04;font-weight:600;margin:0 0 20px}
.se-hero__accent{color:var(--se-gold)}
.se-hero__sub{color:#d7dfea;font-size:19px;line-height:1.6;margin:0;max-width:560px}

/* How it works */
.se-hiw{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px}
.se-hiw__step{text-align:center;color:#dfe7f1}
.se-hiw__n{display:inline-flex;width:48px;height:48px;border-radius:50%;background:rgba(201,160,74,.16);color:var(--se-gold);align-items:center;justify-content:center;font-family:var(--se-font-head);font-size:22px;font-weight:700;margin-bottom:12px}
.se-hiw__step h3{font-family:var(--se-font-head);font-size:24px;margin:0 0 6px;color:#fff}
.se-hiw__step p{margin:0;font-size:15px;color:#aebbcd}

/* CTA section */
.se-cta-section__inner{display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(120deg,#0F2D52,#143a68);color:#fff;border-radius:20px;padding:42px 44px;flex-wrap:wrap}
.se-cta-section__title{font-family:var(--se-font-head);font-size:34px;margin:8px 0 8px;color:#fff}
.se-cta-section__inner p{color:#cdd8e6;margin:0;max-width:520px}

/* Page hero (directory, category) */
.se-page-hero{background:#f4efe6;border-bottom:1px solid var(--se-border);padding:46px 0}

/* Breadcrumb image hero (directory, category, search) */
.se-pagehero{position:relative;min-height:300px;display:flex;align-items:flex-end;overflow:hidden;background:var(--se-navy)}
.se-pagehero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.se-pagehero__overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(8,24,46,.92),rgba(8,24,46,.40))}
.se-pagehero__inner{position:relative;z-index:2;width:100%;padding:0 24px 34px}
.se-pagehero__title{font-family:var(--se-font-head);color:#fff;font-size:46px;font-weight:600;line-height:1.05;margin:0}
.se-pagehero__sub{color:#cdd6e2;font-size:16px;margin:8px 0 0}
.se-breadcrumb{font-size:13px;color:#cdd6e2;margin-bottom:12px}
.se-breadcrumb a{color:#cdd6e2;text-decoration:none}
.se-breadcrumb a:hover{color:var(--se-gold)}
.se-breadcrumb .sep{color:#7e90a8;margin:0 4px}
.se-breadcrumb .current{color:var(--se-gold)}

/* Category filter bar (sticky) */
.se-catbar{background:#fff;border-bottom:1px solid var(--se-border);position:sticky;top:72px;z-index:20}
.se-catbar__inner{display:grid;grid-template-columns:1.4fr 1fr 1.1fr auto;gap:10px;align-items:center;padding:14px 24px}
.se-catbar input,.se-catbar select{border:1px solid var(--se-border);border-radius:8px;padding:11px 12px;font-size:14.5px;font-family:var(--se-font-body);outline:none;background:#fff;color:var(--se-ink)}
.se-catbar input:focus,.se-catbar select:focus{border-color:var(--se-gold)}
.se-catbar__clear{background:#f3eee3;color:var(--se-navy);border:none;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;text-align:center;font-family:var(--se-font-body);white-space:nowrap}
.se-catbar__clear:hover{background:#ece5d4}
@media(max-width:820px){.se-catbar__inner{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.se-catbar__inner{grid-template-columns:1fr}}

/* Vendor profile */
.se-vp-hero{background:linear-gradient(120deg,#0F2D52,#143a68);color:#fff;padding:42px 0}
.se-vp-hero__top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.se-vp-hero__cat{display:inline-block;background:rgba(201,160,74,.2);color:var(--se-gold);font-size:12px;padding:5px 12px;border-radius:30px;margin-bottom:10px}
.se-vp-hero__title{font-family:var(--se-font-head);font-size:46px;font-weight:600;margin:0 0 10px;color:#fff}
.se-vp-hero__meta{display:flex;gap:16px;align-items:center;color:#cdd8e6;flex-wrap:wrap}
.se-fav--lg{position:static;width:46px;height:46px;font-size:22px}
.se-vp{display:grid;grid-template-columns:1.7fr 1fr;gap:36px;align-items:start}
.se-vp-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:30px}
.se-vp-gallery__item{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:1/1}
.se-vp-gallery__item.is-main{grid-column:span 3;aspect-ratio:16/9}
.se-vp-gallery__item img{width:100%;height:100%;object-fit:cover}
.se-vp-block{margin-bottom:34px}
.se-chips{display:flex;flex-wrap:wrap;gap:8px}
.se-chip{background:#f3efe7;border:1px solid var(--se-border);color:var(--se-navy);font-size:13px;padding:6px 13px;border-radius:30px}
.se-chip--area{background:#fff}
.se-vp__aside{position:sticky;top:90px}
.se-vp-book__price{font-family:var(--se-font-head);font-size:26px;color:var(--se-navy);font-weight:600;margin:0 0 4px}
.se-vp-book__deposit{color:var(--se-muted);font-size:14px;margin:0 0 16px}
.se-vp-contact{list-style:none;padding:0;margin:18px 0 0;font-size:14px;line-height:2}
.se-vp-contact a{text-decoration:none}

/* Footer */
.se-footer{background:var(--se-navy);color:#aebbcd;margin-top:0}
.se-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px;padding:56px 24px 36px}
.se-footer__tag{color:var(--se-gold);font-style:italic;font-family:var(--se-font-head);font-size:18px;margin-top:10px}
.se-foot-title{color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.se-footer__col ul{list-style:none;padding:0;margin:0;line-height:2.1}
.se-footer__col a,.se-foot-widget a{color:#aebbcd;text-decoration:none}
.se-footer__col a:hover{color:var(--se-gold)}
.se-footer__bar{border-top:1px solid rgba(255,255,255,.08)}
.se-footer__bar-inner{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;font-size:13px;flex-wrap:wrap;gap:10px}
.se-footer__legal{display:flex;gap:18px;list-style:none;margin:0;padding:0}
.se-footer__legal a{color:#aebbcd;text-decoration:none}

/* Prose */
.se-prose p{margin:0 0 14px}
.se-page__head{margin-bottom:20px}

@media(max-width:980px){
	.se-vp{grid-template-columns:1fr}
	.se-vp__aside{position:static}
	.se-footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
	.se-header__nav,.se-header__actions{display:none}
	.se-burger{display:flex}
	.se-hero__title{font-size:42px}
	.se-shead__title{font-size:32px}
	.se-pagehero{min-height:230px}
	.se-pagehero__title{font-size:32px}
	.se-cta-section__inner{padding:30px}
}
@media(max-width:560px){
	.se-footer__grid{grid-template-columns:1fr}
	.se-vp-gallery{grid-template-columns:1fr 1fr}
}
