/**
 * Single Event Edition — WTE Dark Design
 * Matches worldtattooevents.com exactly: black bg, gold headings, cream text.
 * Extracted tokens: body #000, text #d7d2c8, h2 #c6a972, h1 #ffcc0d, widget #ffcc0d
 * Version 5.0.0
 */

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
--wte-bg:            #000000;
--wte-ink:           #d7d2c8;
--wte-muted:         rgba(215, 210, 200, 0.6);
--wte-accent:        #ffcc0d;   /* gold – section headings */
--wte-gold-bright:   #ffcc0d;   /* bright gold – H1, widget titles */
--wte-gold-border:   #ffcc0d;   /* button / widget border */
--wte-link:          #c6a972;
--wte-link-hover:    #ffcc0d;
--wte-rule:          #333333;
--wte-badge-bg:      rgba(255,255,255,0.05);
--wte-section-bg:    rgba(255,255,255,0.03);

--wte-font-sans:     "Inter", "Roboto", system-ui, sans-serif;
--wte-font-display:  "Oswald", sans-serif;

--wte-h1:            20px;
--wte-h2:            20px;
--wte-h3:            18px;
--wte-h4:            18px;
--wte-body:          18px;
--wte-line:          1.7;

--wte-container:     1200px;
--wte-sidebar:       300px;
--wte-gutter:        40px;
}

/* ============================================================
   BODY
   ============================================================ */
body {
background: var(--wte-bg) !important;
color: var(--wte-ink) !important;
}

.wte-page {
background: var(--wte-bg);
color: var(--wte-ink);
font-family: var(--wte-font-sans);
font-size: var(--wte-body);
line-height: var(--wte-line);
}

/* ============================================================
   LAYOUT
   ============================================================ */
.wte-container {
max-width: var(--wte-container);
margin: 0 auto;
padding: 0 20px;
}

.wte-layout {
display: flex;
align-items: flex-start;
gap: 24px;
padding: 32px 0 64px;
}

.wte-sidebar {
width: 160px;
flex-shrink: 0;
position: sticky;
top: 20px;
}

.wte-main { flex: 1 1 0; min-width: 0; max-width: 860px; margin: 0 auto; }

/* ── Avada theme overrides ────────────────────────────────────────────────
   Avada's style.min.css applies display:flex to .fusion-row and float:left
   to post content elements. These rules neutralise that for our single pages. */
.single-wte_event_edition #main .fusion-row { display: block !important; }
.single-wte_event_edition .wte-main        { float: none !important; }

/* Filter section on single pages: full archive filter visible, all clicks navigate to archive */

/* ============================================================
   H1 EVENT TITLE
   ============================================================ */
.wte-event-title {
font-family: var(--wte-font-display);
font-size: var(--wte-h1);
font-weight: 400;
color: var(--wte-gold-bright);
text-align: center;
margin: 0 0 16px;
line-height: 1.2;
}

/* ============================================================
   PREV / NEXT NAV
   ============================================================ */
.wte-prevnext {
display: none;
}

.wte-prevnext__link {
color: var(--wte-accent);
text-decoration: none;
transition: color 0.2s;
}

.wte-prevnext__link:hover  { color: var(--wte-gold-bright); }
.wte-prevnext__link--next  { margin-left: auto; }

/* ============================================================
   LAST UPDATED
   ============================================================ */
.wte-last-updated {
display: none;
}

/* ============================================================
   DATE HEADLINE
   ============================================================ */
.wte-date-headline {
font-family: var(--wte-font-display);
font-size: var(--wte-h2);
font-weight: 400;
color: var(--wte-accent);
text-align: center;
letter-spacing: 0.2px;
margin: 0 0 22px;
padding-bottom: 5px;
}

/* ============================================================
   HERO IMAGE
   ============================================================ */
.wte-hero         { margin: 0 0 28px; text-align: center; }

.wte-hero__img {
max-width: 100%;
width: auto;
max-height: 520px;
height: auto;
display: block;
margin: 0 auto;
}

/* ============================================================
   SECTIONS
   ============================================================ */
.wte-section { margin: 0 0 40px; text-align: center; }

.wte-section__heading {
font-family: var(--wte-font-display);
font-size: var(--wte-h2);
font-weight: 400;
letter-spacing: 0.2px;
color: var(--wte-accent);
text-align: center;
margin: 0 0 22px;
padding-bottom: 5px;
display: block;
}

/* ============================================================
   LOCATION
   ============================================================ */
.wte-venue-name    { font-weight: 600; margin: 0 0 4px; color: var(--wte-accent); }
.wte-venue-address { color: var(--wte-ink); margin: 0 0 4px; }
.wte-venue-country { font-weight: 600; margin: 0; }

/* ============================================================
   LINKS
   ============================================================ */
.wte-link {
color: var(--wte-link);
text-decoration: underline;
text-underline-offset: 2px;
transition: color 0.2s;
}

.wte-link:hover  { color: var(--wte-link-hover); }
.wte-link--venue { font-weight: 600; }
.wte-link--bold  { font-weight: 700; }

/* ============================================================
   CONTACT BUTTONS
   ============================================================ */
.wte-contact-links {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin: 0;
justify-content: center;
}

.wte-contact-links__btn {
display: inline-block;
padding: 8px 20px;
border: 2px solid var(--wte-gold-border);
background: var(--wte-bg);
color: var(--wte-accent);
font-family: var(--wte-font-display);
font-size: 14px;
font-weight: 600;
letter-spacing: 0.1em;
text-decoration: none;
text-transform: uppercase;
transition: background 0.2s, color 0.2s;
}

.wte-contact-links__btn:hover {
background: var(--wte-gold-bright);
color: #000;
}

/* ============================================================
   SHOW INFO
   ============================================================ */
.wte-show-info { line-height: 1.4; text-align: left; }
.wte-show-info p { margin: 0 0 10px; color: #ffffff; }
.wte-show-info a  { color: var(--wte-accent); text-decoration: underline; }

/* ============================================================
   BOOTH REGISTRATION
   ============================================================ */
.wte-booth-block        { margin: 0 0 24px; }

/* 2-column booth grid */
.wte-booth-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 0 0 24px;
  text-align: center;
}
.wte-booth-col { }

@media (max-width: 600px) {
  .wte-booth-cols { grid-template-columns: 1fr; }
}

.wte-booth-block__label {
margin: 0 0 8px;
font-size: 14px;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--wte-accent);
font-family: var(--wte-font-display);
font-weight: 600;
}
.wte-booth-block__img { max-width: 100%; width: 100%; height: auto; display: block; }

/* ============================================================
   APPLICATION FORM
   ============================================================ */
.wte-application-form { padding: 20px 0; text-align: left; }

/* ============================================================
   NEWSFEED
   ============================================================ */
.wte-newsfeed { min-height: 120px; padding: 12px 0; }

/* ============================================================
   PAST EDITIONS
   ============================================================ */
.wte-past-editions {
display: flex;
flex-wrap: wrap;
gap: 16px;
justify-content: center;
}

.wte-past-editions__item { text-align: center; }

.wte-past-editions__link {
display: block;
text-decoration: none;
color: var(--wte-ink);
}

.wte-past-editions__img {
width: 120px;
height: 150px;
object-fit: cover;
display: block;
margin: 0 auto 6px;
transition: opacity 0.2s, transform 0.2s;
}

.wte-past-editions__link:hover .wte-past-editions__img {
opacity: 0.85;
transform: scale(1.03);
}

.wte-past-editions__year {
font-family: var(--wte-font-display);
font-size: 13px;
font-weight: 600;
color: var(--wte-accent);
letter-spacing: 0.05em;
}

/* ============================================================
   HORIZONTAL RULE
   ============================================================ */
.wte-rule { border: none; border-top: 1px solid var(--wte-rule); margin: 32px 0; }

/* ============================================================
   SEE MORE LINKS
   ============================================================ */
.wte-see-more { margin: 0 0 24px; font-size: 15px; line-height: 2.2; text-align: center; }

/* ============================================================
   AUTHOR BYLINE
   ============================================================ */
.wte-byline {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 12px;
margin: 0 0 32px;
font-size: 13px;
color: var(--wte-muted);
}

.wte-byline__author { display: flex; align-items: center; gap: 8px; }
.wte-byline__avatar { border-radius: 50%; width: 32px; height: 32px; }
.wte-byline__date   { color: var(--wte-muted); }

.wte-byline__category {
display: inline-block;
padding: 2px 10px;
background: var(--wte-badge-bg);
border: 1px solid var(--wte-rule);
color: var(--wte-accent);
text-decoration: none;
font-weight: 600;
font-size: 12px;
text-transform: uppercase;
letter-spacing: 0.04em;
transition: background 0.2s, color 0.2s;
}

.wte-byline__category:hover { background: var(--wte-gold-bright); color: #000; }

/* ============================================================
   RELATED POSTS
   ============================================================ */
.wte-related { margin: 0 0 32px; }

.wte-related__heading {
font-family: var(--wte-font-display);
font-size: var(--wte-h3);
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--wte-gold-bright);
margin: 0 0 16px;
padding-bottom: 6px;
border-bottom: 2px solid var(--wte-rule);
}

.wte-related__grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
gap: 16px;
}

.wte-related__card       { text-align: center; }
.wte-related__card-link  { display: block; text-decoration: none; color: var(--wte-ink); }

.wte-related__img {
width: 100%;
aspect-ratio: 3/4;
object-fit: cover;
display: block;
margin-bottom: 8px;
transition: box-shadow 0.2s, transform 0.2s;
}

.wte-related__card-link:hover .wte-related__img {
transform: translateY(-2px);
box-shadow: 0 4px 16px rgba(255, 204, 13, 0.2);
}

.wte-related__title { font-size: 12px; font-weight: 600; line-height: 1.4; margin: 0; color: var(--wte-accent); }

/* ============================================================
   COMMENTS
   ============================================================ */
.wte-comments { margin: 0 0 32px; }

.wte-comments .comments-title,
.wte-comments #reply-title {
font-family: var(--wte-font-display);
font-size: var(--wte-h3);
font-weight: 700;
text-transform: uppercase;
color: var(--wte-gold-bright);
border-bottom: 2px solid var(--wte-rule);
display: block;
padding-bottom: 8px;
margin-bottom: 20px;
}

.wte-comments .comment-author b { color: var(--wte-accent); font-weight: 700; }
.wte-comments .comment-content  { color: var(--wte-ink); }

/* ============================================================
   GENERAL BUTTON
   ============================================================ */
.wte-btn {
display: inline-block;
padding: 10px 24px;
background: transparent;
border: 2px solid var(--wte-gold-border);
color: var(--wte-accent);
font-family: var(--wte-font-display);
font-size: 14px;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
text-decoration: none;
transition: background 0.2s, color 0.2s;
cursor: pointer;
}

.wte-btn:hover { background: var(--wte-gold-bright); color: #000; }

/* ============================================================
   SIDEBAR WIDGETS (archived — sidebar removed from single page)
   ============================================================ */

.wte-widget {
margin-bottom: 32px;
}

.wte-widget__title {
font-family: var(--wte-font-display);
font-size: var(--wte-h4);
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--wte-gold-bright);
margin: 0 0 14px;
padding-bottom: 8px;
border-bottom: 2px solid var(--wte-rule);
}

.wte-widget__select {
width: 100%;
padding: 8px 10px;
border: 1px solid var(--wte-rule);
font-family: var(--wte-font-sans);
font-size: 14px;
color: var(--wte-ink);
background: #111;
cursor: pointer;
}

.wte-widget__form { width: 100%; }

/* Featured grid */
.wte-widget__featured {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 6px;
}

.wte-widget__featured-item {
display: block;
overflow: hidden;
aspect-ratio: 3/4;
}

.wte-widget__featured-img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.2s;
}

.wte-widget__featured-item:hover .wte-widget__featured-img { transform: scale(1.05); }

.wte-widget__featured-placeholder {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
background: #111;
font-size: 10px;
text-align: center;
padding: 4px;
color: var(--wte-muted);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 991px) {
.wte-layout {
flex-direction: column;
}
.wte-sidebar {
width: 100%;
position: static;
}
}

@media (max-width: 767px) {
.wte-past-editions__img { width: 90px; height: 113px; }
.wte-related__grid      { grid-template-columns: repeat(2, 1fr); }
.wte-layout             { padding: 20px 0 40px; }
}

@media (max-width: 479px) {
.wte-past-editions    { gap: 10px; }
.wte-widget__featured { grid-template-columns: repeat(2, 1fr); }
}