/* Sarkom Seitenwelten · Events: 1180px in every region, original theme hero intact. */
.sswf-events-root{--se-accent:var(--region-accent,#2763b5);--se-dark:var(--navy,#203d6b);--se-light:var(--surface,#f1f7ff);--se-border:var(--line,#dfe9f5);--se-soft:#fff;--se-text:#2b3950;color:var(--se-text)}
body.region-sn .sswf-events-root,body[class*="sachsen"] .sswf-events-root{--se-accent:#c05d23;--se-dark:#783d21;--se-light:#fff6ef;--se-border:#f3dcca}
body.region-th .sswf-events-root,body[class*="thueringen"] .sswf-events-root{--se-accent:#824abe;--se-dark:#523378;--se-light:#faf5ff;--se-border:#e8d8f6}
.sswf-events-root,.sswf-events-root *{box-sizing:border-box}
.sswf-events-root .sswf-events-width{max-width:1180px!important;width:calc(100% - 40px)!important;margin-inline:auto!important;padding-inline:0!important}
.sswf-events-root .sarkom-detail-hero{margin-bottom:0}
.sswf-events-root .sarkom-detail-hero .sswf-events-width{position:relative;z-index:1}
.sswf-events-root .sarkom-detail-hero h1{max-width:1120px;color:var(--se-dark)}
.sswf-events-root .sarkom-section{padding:52px 20px}
.sswf-events-root .sswf-events-intro-section{padding-top:56px;padding-bottom:16px}
.sswf-events-intro-section .sswf-events-editor-intro,.sswf-events-intro-section .sswf-events-intro-fallback{max-width:1180px;margin:0 auto;padding:36px clamp(23px,4vw,55px);background:radial-gradient(circle at 100% 0%,rgba(255,214,134,.29),transparent 41%),linear-gradient(115deg,var(--se-light),#fff 74%);border:1px solid var(--se-border);border-radius:26px}
.sswf-events-root .sswf-events-eyebrow{font-size:.73rem!important;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--se-accent);margin:0 0 10px}
.sswf-events-intro-section h2,.sswf-events-list-heading h2,.sswf-events-ending h2{font-size:clamp(1.6rem,3.5vw,2.6rem);line-height:1.16;letter-spacing:-.03em;color:var(--se-dark);margin:4px 0 14px}
.sswf-events-intro-section p:not(.sswf-events-eyebrow),.sswf-events-ending p:not(.sswf-events-eyebrow){font-size:1.07rem;line-height:1.75;max-width:850px}
.sswf-events-intro-section .wp-block-buttons{margin-top:21px}
.sswf-events-intro-section .sswf-events-button a{border-radius:99px;background:var(--se-accent);color:#fff;padding:13px 23px;font-weight:700;text-decoration:none}
.sswf-events-list-section{padding-top:30px!important}
.sswf-events-list-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:24px}
.sswf-events-list-heading p{margin:8px 0 0;line-height:1.6}
.sswf-events-count{white-space:nowrap;font-weight:800;font-size:.87rem;color:var(--se-dark);background:var(--se-light);border:1px solid var(--se-border);border-radius:999px;padding:9px 15px}
.sswf-events-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:13px;margin-bottom:27px}
.sswf-events-switch,.sswf-events-filters{display:flex;gap:6px;flex-wrap:wrap}
.sswf-events-root button.sswf-events-tab,.sswf-events-root button.sswf-events-filter{font:inherit;line-height:1.3;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid var(--se-border);border-radius:999px;padding:10px 16px;color:var(--se-dark);cursor:pointer;transition:background .12s ease}
.sswf-events-root button.sswf-events-tab.is-active,.sswf-events-root button.sswf-events-filter.is-active{background:var(--se-accent);border-color:var(--se-accent);color:#fff}
.sswf-events-root button:focus-visible,.sswf-events-root a:focus-visible{outline:3px solid var(--se-accent);outline-offset:3px}
.sswf-events-root [hidden]{display:none!important}
.sswf-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.sswf-event-card{display:flex;flex-direction:column;min-width:0;padding:26px;background:#fff;border:1px solid var(--se-border);border-radius:24px;box-shadow:0 10px 32px rgba(34,55,85,.07);transition:transform .12s ease}
.sswf-event-card:hover{transform:translateY(-2px)}
.sswf-event-card-top{display:flex;gap:19px;align-items:flex-start}
.sswf-event-datebox{width:78px;min-width:78px;display:flex;flex-direction:column;text-align:center;justify-content:center;align-items:center;gap:1px;border-radius:15px;padding:11px 6px;background:var(--se-light);border:1px solid var(--se-border);color:var(--se-dark)}
.sswf-event-datebox strong{font-size:2.05rem;line-height:1;font-weight:800}.sswf-event-datebox span{font-size:.78rem;text-transform:uppercase;font-weight:800;letter-spacing:.06em}.sswf-event-datebox small{font-size:.7rem;opacity:.72}
.sswf-event-card-head{min-width:0;flex:1}
.sswf-event-card-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.sswf-event-card-tags span{font-size:.7rem;font-weight:800;border-radius:999px;padding:5px 9px;background:var(--se-light);color:var(--se-dark);line-height:1.25}
.sswf-event-card-tags .sswf-event-warning,.sswf-event-warning{background:#fff2de;color:#8a480a;border:1px solid #f3d1a1}
.sswf-event-card h3{font-size:1.24rem;line-height:1.35;margin:0!important;overflow-wrap:anywhere;color:var(--se-dark)}
.sswf-event-card h3 a{color:inherit;text-decoration:none}.sswf-event-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.sswf-event-card-meta{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:18px;color:#4e5b6e;font-size:.94rem;font-weight:600}
.sswf-event-card-desc{line-height:1.65;color:#586376;font-size:.94rem;margin:15px 0 14px;overflow-wrap:anywhere}
.sswf-event-card-footer{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-top:18px}
.sswf-event-detail-link{display:inline-block;font-weight:800;color:var(--se-accent)!important;text-decoration:none}.sswf-event-detail-link:hover{text-decoration:underline}
.sswf-event-calendar-link{font-size:.86rem;color:var(--se-dark)!important;text-decoration:underline;text-underline-offset:3px}
.sswf-events-empty,.sswf-events-filter-empty,.sswf-events-hint{padding:22px;background:var(--se-light);border:1px solid var(--se-border);border-radius:18px;line-height:1.65}
.sswf-events-end{padding-top:0!important}.sswf-events-ending{border-radius:26px;padding:36px clamp(22px,4vw,52px);background:linear-gradient(110deg,var(--se-dark),var(--se-accent));color:#fff}
.sswf-events-ending .sswf-events-eyebrow,.sswf-events-ending h2,.sswf-events-ending p{color:#fff!important}
.sswf-events-ending-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.sswf-events-ending-actions a{display:inline-flex;border-radius:999px;padding:12px 18px;background:#fff;color:var(--se-dark);text-decoration:none;font-weight:800}.sswf-events-ending-actions a+ a{background:transparent;border:1px solid rgba(255,255,255,.65);color:#fff}
.sswf-event-detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.8fr);gap:32px;align-items:start}
.sswf-event-main-content,.sswf-event-facts{min-width:0}
/* 1.5.1: Event description receives a proper card beside the existing facts card.
   This presentation affects only the single-event template; event data stay editable. */
.sswf-single-event .sswf-event-main-content{
  align-self:stretch;
  padding:clamp(24px,3.1vw,38px);
  border:1px solid var(--se-border);
  border-radius:24px;
  background:radial-gradient(circle at 0% 0%,var(--se-light),transparent 36%),#fff;
  box-shadow:0 10px 32px rgba(34,55,85,.07);
}
.sswf-single-event .sswf-event-main-label{margin:0 0 20px!important}
.sswf-single-event .sswf-event-editor-content{max-width:100%;width:100%}
.sswf-single-event .sswf-event-editor-content > :first-child{margin-top:0}
.sswf-single-event .sswf-event-editor-content > :last-child{margin-bottom:0}

.sswf-event-editor-content{font-size:1.075rem;line-height:1.77;overflow-wrap:anywhere}.sswf-event-editor-content >*{max-width:100%}.sswf-event-editor-content img{max-width:100%;height:auto}
.sswf-event-featured{margin:0 0 26px}.sswf-event-featured img{width:100%;height:auto;max-height:490px;object-fit:cover;border-radius:24px;display:block}.sswf-event-featured figcaption{font-size:.85rem;color:#6b7280;margin-top:10px}
.sswf-event-facts{padding:28px 27px;background:var(--se-light);border-radius:24px;border:1px solid var(--se-border)}
.sswf-event-facts h2{margin:0 0 19px!important;font-size:1.7rem;color:var(--se-dark);line-height:1.2}.sswf-event-facts dl{margin:0 0 22px}.sswf-event-facts dl>div{border-bottom:1px solid var(--se-border);padding:12px 0}.sswf-event-facts dt{font-weight:800;font-size:.78rem;color:#5e6c82;margin-bottom:5px}.sswf-event-facts dd{margin:0;font-size:1.04rem;line-height:1.55;font-weight:600;overflow-wrap:anywhere}
.sswf-event-facts .sswf-event-warning{display:inline-block;border-radius:12px;padding:8px 12px;font-weight:800}
.sswf-event-primary-action,.sswf-event-secondary-action{display:block;text-align:center;border-radius:14px;padding:12px 16px;margin:11px 0 0;text-decoration:none!important;font-weight:800;line-height:1.45;overflow-wrap:anywhere}
.sswf-event-primary-action{background:var(--se-accent);color:#fff!important}.sswf-event-secondary-action{background:#fff;color:var(--se-dark)!important;border:1px solid var(--se-border)}
.sswf-event-facts-note{font-size:.83rem;line-height:1.55;color:#687384;margin-top:18px}
.sswf-event-bottom-nav{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:25px 0;margin-top:28px;border-top:1px solid var(--se-border)}.sswf-event-bottom-nav a{font-weight:800;color:var(--se-accent);text-decoration:none}
@media(max-width:860px){.sswf-events-grid{grid-template-columns:1fr}.sswf-event-detail-layout{grid-template-columns:1fr}.sswf-event-facts{order:-1}.sswf-events-list-heading{align-items:flex-start;flex-direction:column}.sswf-events-count{margin:0!important}}
@media(max-width:580px){.sswf-single-event .sswf-event-main-content{padding:23px 21px;border-radius:20px}.sswf-events-root .sswf-events-width{width:calc(100% - 28px)!important}.sswf-events-root .sarkom-section{padding:36px 0}.sswf-event-card{padding:20px}.sswf-event-card-top{gap:12px}.sswf-event-datebox{min-width:67px;width:67px}.sswf-event-card h3{font-size:1.14rem}.sswf-events-controls{display:block}.sswf-events-filters{margin-top:12px}.sswf-events-root button.sswf-events-tab,.sswf-events-root button.sswf-events-filter{padding:9px 12px;font-size:.87rem}.sswf-events-ending{padding:28px 22px}}
