/* Phase 9.9.8 — EP28 Rhythm Core landing. Scoped only to .sym-ep28-v1 */

.sym-ep28-v1,
.sym-ep28-v1 *{box-sizing:border-box}

.sym-ep28-v1{
    --ep-text:#10151c;
    --ep-muted:rgba(16,21,28,.68);
    --ep-soft:rgba(255,255,255,.78);
    --ep-border:rgba(9,18,28,.10);
    --ep-green:#12e6ad;
    --ep-green2:#78ffcf;
    --ep-pink:#ff4de3;
    --ep-purple:#b020ff;
    --ep-red:#ff2a17;
    --ep-cyan:#43f7ff;
    width:min(1480px,calc(100vw - 56px));
    max-width:none;
    margin:clamp(8px,2vw,24px) auto clamp(70px,8vw,120px);
    color:var(--ep-text);
    font-family:Manrope,Inter,system-ui,sans-serif;
}

html[data-theme="dark"] .sym-ep28-v1{
    --ep-text:#f4f7fb;
    --ep-muted:rgba(244,247,251,.68);
    --ep-soft:rgba(255,255,255,.065);
    --ep-border:rgba(255,255,255,.12);
}

.sym-ep28-v1 a{text-decoration:none!important;color:inherit}

body:has(.sym-ep28-v1) .wp-block-post-title,
body:has(.sym-ep28-v1) .entry-title,
body:has(.sym-ep28-v1) .page-title{display:none!important}

body:has(.sym-ep28-v1) .wp-block-post-content,
body:has(.sym-ep28-v1) .entry-content,
body:has(.sym-ep28-v1) .wp-site-blocks main.wp-block-group{overflow:visible!important}

.sym-ep28-v1.alignfull,
.wp-block-post-content > .sym-ep28-v1,
.entry-content > .sym-ep28-v1{
    width:min(1480px,calc(100vw - 56px))!important;
    max-width:none!important;
    margin-left:calc(50% - min(740px,calc(50vw - 28px)))!important;
    margin-right:calc(50% - min(740px,calc(50vw - 28px)))!important;
}

.sym-ep28-v1__hero{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
    gap:clamp(22px,3vw,42px);
    min-height:560px;
    padding:clamp(30px,4vw,64px);
    border:1px solid var(--ep-border);
    border-radius:34px;
    background:
        radial-gradient(circle at 82% 16%,rgba(18,230,173,.30),transparent 32%),
        radial-gradient(circle at 20% 90%,rgba(255,77,227,.14),transparent 34%),
        linear-gradient(135deg,rgba(255,255,255,.96),rgba(224,255,247,.72));
    box-shadow:0 30px 90px rgba(15,28,44,.14);
}

html[data-theme="dark"] .sym-ep28-v1__hero{
    background:
        radial-gradient(circle at 82% 16%,rgba(18,230,173,.17),transparent 32%),
        radial-gradient(circle at 20% 90%,rgba(255,77,227,.12),transparent 34%),
        linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
    box-shadow:0 30px 90px rgba(0,0,0,.32);
}

.sym-ep28-v1__hero:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.22;
    background:
        linear-gradient(rgba(10,22,32,.08) 1px, transparent 1px),
        linear-gradient(90deg,rgba(10,22,32,.08) 1px, transparent 1px);
    background-size:34px 34px;
    mask-image:linear-gradient(90deg,transparent,black 18%,black 82%,transparent);
}

.sym-ep28-v1__hero-copy,
.sym-ep28-v1__artifact-visual{position:relative;z-index:1}

.sym-ep28-v1__eyebrow{
    margin:0 0 16px;
    color:var(--ep-green);
    font-size:12px;
    line-height:1;
    font-weight:950;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.sym-ep28-v1 h1{
    max-width:900px;
    margin:0;
    color:var(--ep-text);
    font-size:clamp(70px,7vw,126px);
    line-height:.82;
    font-weight:900;
    letter-spacing:-.07em;
    text-transform:uppercase;
}

.sym-ep28-v1 h2{
    margin:0 0 14px;
    color:var(--ep-text);
    font-size:clamp(30px,3vw,48px);
    line-height:.95;
    font-weight:850;
    letter-spacing:-.04em;
}

.sym-ep28-v1 h3{
    margin:0 0 14px;
    color:var(--ep-text);
    font-size:24px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.035em;
}

.sym-ep28-v1 p{
    margin:0 0 14px;
    color:var(--ep-muted);
    font-size:16px;
    line-height:1.52;
    font-weight:650;
}

.sym-ep28-v1__lead{
    margin-top:24px!important;
    max-width:860px;
    font-size:clamp(18px,1.35vw,24px)!important;
    color:var(--ep-text)!important;
}

.sym-ep28-v1__facts{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:24px 0 0;
}

.sym-ep28-v1__facts span{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:9px 12px;
    border:1px solid rgba(18,230,173,.26);
    border-radius:999px;
    color:var(--ep-text);
    background:rgba(255,255,255,.34);
    font-size:12px;
    line-height:1;
    font-weight:900;
    letter-spacing:.05em;
    text-transform:uppercase;
}

html[data-theme="dark"] .sym-ep28-v1__facts span{background:rgba(255,255,255,.06)}

.sym-ep28-v1__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:24px;
}

.sym-ep28-v1__button,
.sym-ep28-v1__compact a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:12px 18px;
    border:1px solid rgba(18,230,173,.34);
    border-radius:999px;
    color:var(--ep-text);
    background:rgba(255,255,255,.30);
    font-size:13px;
    line-height:1;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
    transition:transform .18s ease, box-shadow .18s ease;
}

.sym-ep28-v1__button:hover,
.sym-ep28-v1__compact a:hover{
    transform:translateY(-1px);
    box-shadow:0 0 24px rgba(18,230,173,.22);
}

.sym-ep28-v1__button--primary{
    border-color:rgba(18,230,173,.58);
    color:#04110e!important;
    background:linear-gradient(135deg,var(--ep-green),var(--ep-green2));
    box-shadow:0 0 30px rgba(18,230,173,.24);
}

.sym-ep28-v1__artifact-visual{
    min-height:100%;
    display:grid;
    place-items:center;
    align-content:center;
    gap:22px;
    border:1px solid rgba(18,230,173,.22);
    border-radius:28px;
    background:
        radial-gradient(circle at center,rgba(18,230,173,.18),transparent 36%),
        linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.08));
    overflow:hidden;
}

.sym-ep28-v1__artifact-visual:before,
.sym-ep28-v1__artifact-visual:after{
    content:"";
    position:absolute;
    inset:50% auto auto 50%;
    width:390px;
    height:390px;
    border:1px solid rgba(18,230,173,.32);
    border-radius:50%;
    transform:translate(-50%,-50%);
}
.sym-ep28-v1__artifact-visual:after{
    width:260px;
    height:260px;
    border-color:rgba(255,77,227,.22);
}

.sym-ep28-v1__signal,
.sym-ep28-v1__status{
    position:relative;
    z-index:2;
    color:var(--ep-green);
    font-size:11px;
    font-weight:950;
    letter-spacing:.18em;
}

.sym-ep28-v1__core{
    position:relative;
    z-index:2;
    width:240px;
    height:240px;
    display:grid;
    place-items:center;
    border-radius:38% 62% 56% 44% / 46% 42% 58% 54%;
    background:
        radial-gradient(circle at 40% 38%,rgba(255,255,255,.92),rgba(18,230,173,.82) 34%,rgba(143,105,255,.70) 68%,rgba(16,21,28,.96));
    box-shadow:0 0 42px rgba(18,230,173,.44), inset 0 0 36px rgba(255,255,255,.28);
    animation:symEp28Pulse 2.6s ease-in-out infinite;
}
.sym-ep28-v1__core b{
    color:#06100e;
    font-size:48px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.06em;
}
.sym-ep28-v1__core span{
    position:absolute;
    inset:-22px;
    border:1px solid rgba(18,230,173,.22);
    border-radius:inherit;
    animation:symEp28Rotate 8s linear infinite;
}
.sym-ep28-v1__core span:nth-child(2){inset:-42px;border-color:rgba(255,77,227,.18);animation-duration:12s;animation-direction:reverse}
.sym-ep28-v1__core span:nth-child(3){inset:-62px;border-color:rgba(255,255,255,.20);animation-duration:16s}

@keyframes symEp28Pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.035);filter:saturate(1.18)}}
@keyframes symEp28Rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.sym-ep28-v1__compact{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    margin:18px 0;
    padding:20px 24px;
    border:1px solid var(--ep-border);
    border-radius:24px;
    background:var(--ep-soft);
    box-shadow:0 18px 48px rgba(15,28,44,.08);
}
.sym-ep28-v1__compact span{
    display:block;
    margin:0 0 6px;
    color:var(--ep-text);
    font-size:24px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}
.sym-ep28-v1__compact p{margin:0}

.sym-ep28-v1__event{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin:0 0 18px;
}

.sym-ep28-v1__event-card{
    min-height:128px;
    padding:18px;
    border:1px solid var(--ep-border);
    border-radius:22px;
    background:
        radial-gradient(circle at 100% 0%,rgba(18,230,173,.13),transparent 45%),
        var(--ep-soft);
    box-shadow:0 18px 44px rgba(15,28,44,.08);
}

.sym-ep28-v1__event-card b{
    display:block;
    margin-bottom:9px;
    color:var(--ep-text);
    font-size:24px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}

.sym-ep28-v1__event-card span{
    display:block;
    color:var(--ep-muted);
    font-size:13px;
    line-height:1.35;
    font-weight:700;
}

.sym-ep28-v1__grid{
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:18px;
}
.sym-ep28-v1__panel{
    grid-column:span 6;
    padding:clamp(22px,2vw,32px);
    border:1px solid var(--ep-border);
    border-radius:28px;
    background:var(--ep-soft);
    box-shadow:0 18px 54px rgba(15,28,44,.10);
}
.sym-ep28-v1__panel--wide,
.sym-ep28-v1__claim{grid-column:1 / -1}
.sym-ep28-v1__section-title{
    margin:0 0 18px;
    color:var(--ep-green);
    font-size:15px;
    line-height:1;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.sym-ep28-v1__tag{
    display:inline-flex;
    margin-top:8px;
    padding:9px 12px;
    border-radius:999px;
    color:#04110e;
    background:linear-gradient(135deg,var(--ep-green),var(--ep-green2));
    font-size:12px;
    line-height:1;
    font-weight:950;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.sym-ep28-v1__factions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.sym-ep28-v1__faction{
    min-height:58px;
    display:flex;
    align-items:center;
    padding:12px;
    border:1px solid var(--ep-border);
    border-radius:16px;
    color:var(--ep-text);
    background:rgba(255,255,255,.36);
    font-size:13px;
    line-height:1.2;
    font-weight:850;
}
html[data-theme="dark"] .sym-ep28-v1__faction{background:rgba(255,255,255,.055)}
.sym-ep28-v1__faction--purple{box-shadow:inset 4px 0 0 var(--ep-purple)}
.sym-ep28-v1__faction--silver{box-shadow:inset 4px 0 0 #cdd5dd}
.sym-ep28-v1__faction--black{box-shadow:inset 4px 0 0 #10151c}
.sym-ep28-v1__faction--red{box-shadow:inset 4px 0 0 var(--ep-red)}

.sym-ep28-v1__lineup-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}

.sym-ep28-v1__lineup-side{
    padding:16px;
    border:1px solid var(--ep-border);
    border-radius:20px;
    background:rgba(255,255,255,.32);
}

html[data-theme="dark"] .sym-ep28-v1__lineup-side{background:rgba(255,255,255,.05)}

.sym-ep28-v1__lineup-side--purple{box-shadow:inset 0 4px 0 var(--ep-purple)}
.sym-ep28-v1__lineup-side--silver{box-shadow:inset 0 4px 0 #cdd5dd}
.sym-ep28-v1__lineup-side--black{box-shadow:inset 0 4px 0 #10151c}
.sym-ep28-v1__lineup-side--red{box-shadow:inset 0 4px 0 var(--ep-red)}

.sym-ep28-v1__lineup-side p{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin:0 0 8px;
    padding:8px 0;
    border-bottom:1px solid var(--ep-border);
    color:var(--ep-text);
    font-size:14px;
    font-weight:800;
}
.sym-ep28-v1__lineup-side p:last-child{margin-bottom:0;border-bottom:0}
.sym-ep28-v1__lineup-side p b{
    color:var(--ep-green);
    font-weight:950;
}

.sym-ep28-v1__list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin:0;
    padding:0;
    list-style:none;
}
.sym-ep28-v1__list li{
    padding:12px 12px 12px 34px;
    border:1px solid var(--ep-border);
    border-radius:16px;
    color:var(--ep-muted);
    background:rgba(255,255,255,.28);
    font-size:14px;
    line-height:1.35;
    font-weight:700;
    position:relative;
}
html[data-theme="dark"] .sym-ep28-v1__list li{background:rgba(255,255,255,.05)}
.sym-ep28-v1__list li:before{
    content:"";
    position:absolute;
    left:14px;
    top:17px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--ep-green);
    box-shadow:0 0 12px rgba(18,230,173,.55);
}

.sym-ep28-v1__claim{
    display:grid;
    grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
    gap:22px;
    align-items:start;
    background:
        radial-gradient(circle at 90% 10%,rgba(18,230,173,.18),transparent 30%),
        var(--ep-soft);
}

.sym-ep28-v1__fluentform{margin-top:0}
.sym-ep28-v1__fluentform .fluentform,
.sym-ep28-v1__fluentform form,
.sym-ep28-v1__fluentform .frm-fluent-form{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}
.sym-ep28-v1__fluentform form{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:start!important;
}
.sym-ep28-v1__fluentform .ff-el-group{
    width:100%!important;
    margin-bottom:0!important;
}
.sym-ep28-v1__fluentform .ff-el-group:has(textarea),
.sym-ep28-v1__fluentform .ff_submit_btn_wrapper,
.sym-ep28-v1__fluentform .ff-el-group:last-child{
    grid-column:1 / -1!important;
}
.sym-ep28-v1__fluentform .ff-el-input--label label,
.sym-ep28-v1__fluentform label{
    color:var(--ep-text)!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:850!important;
}
.sym-ep28-v1__fluentform .ff-el-form-control,
.sym-ep28-v1__fluentform input[type=email],
.sym-ep28-v1__fluentform input[type=text],
.sym-ep28-v1__fluentform input[type=tel],
.sym-ep28-v1__fluentform textarea,
.sym-ep28-v1__fluentform select{
    width:100%!important;
    min-height:50px!important;
    padding:12px 14px!important;
    border:1px solid var(--ep-border)!important;
    border-radius:14px!important;
    outline:none!important;
    background:rgba(255,255,255,.72)!important;
    color:var(--ep-text)!important;
    box-shadow:none!important;
    font:700 14px/1.2 Manrope,Inter,system-ui,sans-serif!important;
}
html[data-theme="dark"] .sym-ep28-v1__fluentform .ff-el-form-control,
html[data-theme="dark"] .sym-ep28-v1__fluentform input[type=email],
html[data-theme="dark"] .sym-ep28-v1__fluentform input[type=text],
html[data-theme="dark"] .sym-ep28-v1__fluentform input[type=tel],
html[data-theme="dark"] .sym-ep28-v1__fluentform textarea,
html[data-theme="dark"] .sym-ep28-v1__fluentform select{background:rgba(255,255,255,.08)!important}
.sym-ep28-v1__fluentform textarea{min-height:120px!important}
.sym-ep28-v1__fluentform .ff-btn-submit,
.sym-ep28-v1__fluentform button[type=submit],
.sym-ep28-v1__fluentform input[type=submit]{
    width:100%!important;
    min-height:54px!important;
    border:0!important;
    border-radius:16px!important;
    cursor:pointer!important;
    color:#04110e!important;
    background:linear-gradient(135deg,var(--ep-green),var(--ep-green2))!important;
    box-shadow:0 0 30px rgba(18,230,173,.24)!important;
    font:950 14px/1 Manrope,Inter,system-ui,sans-serif!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
}
.sym-ep28-v1__fluentform .ff-message-success{
    padding:18px!important;
    border:1px solid rgba(18,230,173,.28)!important;
    border-radius:18px!important;
    background:rgba(18,230,173,.10)!important;
    color:var(--ep-text)!important;
    font-weight:750!important;
}
.sym-ep28-v1__notice{
    padding:14px;
    border:1px solid rgba(255,52,79,.25);
    border-radius:14px;
    color:#ff344f;
    background:rgba(255,52,79,.08);
    font-size:14px;
    font-weight:800;
}

@media(max-width:1200px){
    .sym-ep28-v1.alignfull,
    .wp-block-post-content > .sym-ep28-v1,
    .entry-content > .sym-ep28-v1{
        width:min(1100px,calc(100vw - 36px))!important;
        margin-left:calc(50% - min(550px,calc(50vw - 18px)))!important;
        margin-right:calc(50% - min(550px,calc(50vw - 18px)))!important;
    }
    .sym-ep28-v1__event{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sym-ep28-v1__lineup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
    .sym-ep28-v1.alignfull,
    .wp-block-post-content > .sym-ep28-v1,
    .entry-content > .sym-ep28-v1{
        width:min(720px,calc(100vw - 24px))!important;
        margin-left:calc(50% - min(360px,calc(50vw - 12px)))!important;
        margin-right:calc(50% - min(360px,calc(50vw - 12px)))!important;
    }

    .sym-ep28-v1__hero,
    .sym-ep28-v1__compact,
    .sym-ep28-v1__claim{grid-template-columns:1fr}
    .sym-ep28-v1__hero{min-height:auto;border-radius:28px}
    .sym-ep28-v1__artifact-visual{min-height:320px}
    .sym-ep28-v1__panel{grid-column:1 / -1}
    .sym-ep28-v1__list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:640px){
    .sym-ep28-v1.alignfull,
    .wp-block-post-content > .sym-ep28-v1,
    .entry-content > .sym-ep28-v1{
        width:calc(100vw - 18px)!important;
        margin-left:calc(50% - 50vw + 9px)!important;
        margin-right:calc(50% - 50vw + 9px)!important;
    }

    .sym-ep28-v1{margin-top:8px}
    .sym-ep28-v1__hero,
    .sym-ep28-v1__panel,
    .sym-ep28-v1__compact{padding:18px;border-radius:22px}
    .sym-ep28-v1 h1{font-size:clamp(42px,15vw,70px)}
    .sym-ep28-v1 h2{font-size:32px}
    .sym-ep28-v1__lead{font-size:17px!important;margin-top:16px!important}
    .sym-ep28-v1 p{font-size:14px;line-height:1.46}
    .sym-ep28-v1__facts,
    .sym-ep28-v1__actions{display:grid;grid-template-columns:1fr}
    .sym-ep28-v1__button,
    .sym-ep28-v1__compact a{width:100%}
    .sym-ep28-v1__artifact-visual{min-height:235px;border-radius:20px}
    .sym-ep28-v1__core{width:150px;height:150px}
    .sym-ep28-v1__core b{font-size:31px}
    .sym-ep28-v1__event,
    .sym-ep28-v1__lineup-grid,
    .sym-ep28-v1__factions,
    .sym-ep28-v1__list,
    .sym-ep28-v1__fluentform form{grid-template-columns:1fr!important}
    .sym-ep28-v1__section-title{font-size:12px;margin-bottom:12px}
}
