
/*
 * Pica Integrated Event Layout
 * Scoped so only pica_event detail pages are affected.
 */
.piel-event-page{
    --piel-indigo:var(--indigo,#1b104c);
    --piel-magenta:var(--magenta,#ce3483);
    --piel-soft:var(--ink-soft,#878787);
    --piel-line:var(--line,#e3e3e3);
    --piel-card:var(--card,#fff);
    --piel-paper:var(--paper-2,#f7f6fa);
    --piel-shadow:var(--shadow,0 14px 30px rgba(27,16,76,.10));
    color:var(--ink,var(--piel-indigo));
}
.piel-event-page *,
.piel-event-page *::before,
.piel-event-page *::after{box-sizing:border-box}

.piel-event-page .piel-crumb{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    align-items:center;
    padding-top:20px;
    font-size:13.5px;
    color:var(--piel-soft)
}
.piel-event-page .piel-crumb a{
    color:var(--piel-indigo);
    font-weight:600;
    text-decoration:none
}

.piel-event-page .piel-hero{padding:22px 0 34px}
.piel-event-page .piel-badge{
    display:inline-block;
    margin-bottom:16px;
    padding:5px 11px;
    border-radius:999px;
    background:var(--piel-magenta);
    color:#fff;
    font-size:11.5px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase
}
.piel-event-page .piel-hero h1{
    max-width:16ch;
    margin:0;
    font-size:clamp(34px,5.6vw,60px);
    font-weight:800;
    line-height:1.02;
    letter-spacing:-.035em
}
.piel-event-page .piel-mark{
    position:relative;
    z-index:0
}
.piel-event-page .piel-mark::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:-.03em;
    right:-.03em;
    bottom:.08em;
    height:.22em;
    border-radius:999px;
    background:var(--piel-magenta);
    opacity:.22
}
.piel-event-page .piel-fastfacts{
    display:flex;
    flex-wrap:wrap;
    gap:10px 26px;
    margin-top:22px;
    color:var(--piel-soft);
    font-size:16px
}
.piel-event-page .piel-fastfacts>span{
    display:inline-flex;
    gap:9px;
    align-items:center
}
.piel-event-page .piel-fastfacts b{
    color:var(--ink,var(--piel-indigo));
    font-weight:700
}

.piel-event-page .piel-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:44px;
    align-items:start;
    padding:8px 0 90px
}
.piel-event-page .piel-content>section{
    padding:30px 0;
    border-top:1px solid var(--piel-line)
}
.piel-event-page .piel-content>section:first-child{
    padding-top:6px;
    border-top:0
}
.piel-event-page .piel-content h2,
.piel-event-page .piel-related h2{
    margin:0 0 14px;
    font-size:26px;
    line-height:1.2;
    font-weight:800
}
.piel-event-page .piel-read{
    font-family:inherit;
    font-size:18px;
    line-height:1.7
}
.piel-event-page .piel-read>*:first-child{margin-top:0}
.piel-event-page .piel-read>*:last-child{margin-bottom:0}

.piel-event-page .piel-forwho{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:6px
}
.piel-event-page .piel-forwho span{
    padding:8px 15px;
    border:1px solid var(--piel-line);
    border-radius:999px;
    background:var(--piel-card);
    font-size:14.5px;
    font-weight:600
}

.piel-event-page .piel-goals{
    margin:8px 0 0;
    padding:0;
    list-style:none
}
.piel-event-page .piel-goals li{
    display:flex;
    gap:11px;
    align-items:flex-start;
    margin-top:10px;
    font-family:"Newsreader",Georgia,serif;
    font-size:17px;
    line-height:1.5
}
.piel-event-page .piel-goals li::before{
    content:"✔";
    color:var(--piel-indigo);
    font-family:inherit;
    font-weight:700
}

.piel-event-page .piel-program{margin-top:8px}
.piel-event-page .piel-program-row{
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    gap:18px;
    padding:14px 0;
    border-bottom:1px dashed var(--piel-line)
}
.piel-event-page .piel-program-row:last-child{border-bottom:0}
.piel-event-page .piel-program-time{
    color:var(--piel-indigo);
    font-size:15px;
    font-weight:700
}
.piel-event-page .piel-program-row h4{
    margin:0;
    font-size:17px;
    font-weight:700
}
.piel-event-page .piel-program-who{
    margin-top:3px;
    color:var(--piel-soft);
    font-family:"Newsreader",Georgia,serif;
    font-size:15px;
    font-style:italic
}

.piel-event-page .piel-speakers{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-top:8px
}
.piel-event-page .piel-speaker{
    display:flex;
    flex-direction:column;
    align-items:center;
    min-width:0;
    padding:16px;
    border:1px solid var(--piel-line);
    border-radius:12px;
    background:var(--piel-card);
    color:inherit;
    text-align:center;
    text-decoration:none;
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease
}
.piel-event-page .piel-speaker:hover{
    transform:translateY(-2px);
    border-color:var(--piel-indigo);
    box-shadow:var(--piel-shadow)
}
.piel-event-page .piel-speaker-avatar,
.piel-event-page .piel-speaker-photo{
    display:flex;
    width:64px;
    height:64px;
    margin:0 auto 10px;
    border-radius:50%;
    object-fit:cover
}
.piel-event-page .piel-speaker-avatar{
    align-items:center;
    justify-content:center;
    background:linear-gradient(150deg,var(--piel-paper),#e7e3f0);
    color:var(--piel-indigo);
    font-size:22px;
    font-weight:800
}
.piel-event-page .piel-speaker-name{
    font-size:15px;
    font-weight:700
}
.piel-event-page .piel-speaker-role{
    margin-top:3px;
    color:var(--piel-soft);
    font-family:"Newsreader",Georgia,serif;
    font-size:13px;
    line-height:1.35
}

.piel-event-page .piel-practical{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-top:6px
}
.piel-event-page .piel-location-panel{
    grid-column:1/-1;
    min-height:150px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:24px;
    border:1px solid var(--piel-line);
    border-radius:12px;
    background:
        repeating-linear-gradient(0deg,transparent,transparent 26px,rgba(27,17,80,.045) 27px),
        repeating-linear-gradient(90deg,transparent,transparent 26px,rgba(27,17,80,.045) 27px),
        var(--piel-paper);
    color:var(--piel-soft);
    text-align:center
}
.piel-event-page .piel-location-panel strong{color:var(--ink,var(--piel-indigo))}
.piel-event-page .piel-location-pin{font-size:30px}
.piel-event-page .piel-practical-cell{
    padding:18px;
    border:1px solid var(--piel-line);
    border-radius:12px;
    background:var(--piel-card)
}
.piel-event-page .piel-practical-cell h4{
    margin:0 0 8px;
    color:var(--piel-indigo);
    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase
}
.piel-event-page .piel-practical-cell p{
    margin:0;
    color:var(--piel-soft);
    font-size:15px;
    line-height:1.55
}

.piel-event-page .piel-aside{
    position:sticky;
    top:92px
}
.piel-event-page .piel-register{
    overflow:hidden;
    border:1px solid var(--piel-line);
    border-radius:16px;
    background:var(--piel-card);
    box-shadow:var(--piel-shadow)
}
.piel-event-page .piel-register-top{
    padding:20px 22px;
    background:var(--piel-indigo);
    color:#fff
}
.piel-event-page .piel-price{
    font-size:31px;
    font-weight:800;
    line-height:1.18;
    letter-spacing:-.03em
}
.piel-event-page .piel-price-note{
    margin-top:5px;
    font-size:13px;
    line-height:1.4;
    opacity:.85
}
.piel-event-page .piel-register-body{padding:18px 22px 22px}
.piel-event-page .piel-register-line{
    display:flex;
    gap:11px;
    align-items:flex-start;
    padding:9px 0;
    border-bottom:1px solid var(--piel-line);
    color:var(--piel-soft);
    font-size:14.5px
}
.piel-event-page .piel-register-line span:last-child{
    display:flex;
    flex-direction:column
}
.piel-event-page .piel-register-line b{
    display:block;
    color:var(--ink,var(--piel-indigo));
    font-weight:700
}
.piel-event-page .piel-register-icon{
    flex:0 0 18px;
    width:18px;
    color:var(--piel-indigo);
    text-align:center
}
.piel-event-page .piel-register-button{
    display:flex;
    justify-content:center;
    width:100%;
    margin-top:16px;
    padding:14px;
    font-size:16px
}
.piel-event-page .piel-crkbo{
    margin-top:14px;
    color:var(--piel-soft);
    font-size:12.5px;
    text-align:center
}

.piel-event-page .piel-related{
    padding:44px 0 70px;
    border-top:1px solid var(--piel-line)
}
.piel-event-page .piel-related-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px
}
.piel-event-page .piel-related-card{
    display:block;
    padding:18px;
    border:1px solid var(--piel-line);
    border-radius:12px;
    background:var(--piel-card);
    color:inherit;
    text-decoration:none;
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease
}
.piel-event-page .piel-related-card:hover{
    transform:translateY(-2px);
    border-color:var(--piel-indigo);
    box-shadow:var(--piel-shadow)
}
.piel-event-page .piel-related-date{
    color:var(--piel-indigo);
    font-size:13px;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase
}
.piel-event-page .piel-related-card h3{
    margin:8px 0 6px;
    font-size:17px;
    line-height:1.25;
    font-weight:700
}
.piel-event-page .piel-related-meta{
    color:var(--piel-soft);
    font-family:"Newsreader",Georgia,serif;
    font-size:14px
}

@media (max-width:980px){
    .piel-event-page .piel-layout{
        grid-template-columns:1fr;
        gap:26px;
        padding-bottom:60px
    }
    .piel-event-page .piel-aside{
        position:static;
        order:-1
    }
    .piel-event-page .piel-register{
        max-width:560px
    }
    .piel-event-page .piel-speakers{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .piel-event-page .piel-related-grid{
        grid-template-columns:1fr
    }
}

@media (max-width:620px){
    .piel-event-page .piel-hero{
        padding-top:18px;
        padding-bottom:26px
    }
    .piel-event-page .piel-fastfacts{
        flex-direction:column;
        gap:7px
    }
    .piel-event-page .piel-content>section{
        padding:24px 0
    }
    .piel-event-page .piel-content h2,
    .piel-event-page .piel-related h2{
        font-size:23px
    }
    .piel-event-page .piel-read{font-size:17px}
    .piel-event-page .piel-program-row{
        grid-template-columns:64px minmax(0,1fr);
        gap:12px
    }
    .piel-event-page .piel-speakers{
        grid-template-columns:1fr 1fr;
        gap:10px
    }
    .piel-event-page .piel-practical{
        grid-template-columns:1fr
    }
}


/* Same-domain Events Planner registration page */
body.page .epl_main_container,
body.page #epl_main_container{
    max-width:920px;
    margin:28px auto 70px;
}
body.page #events_planner_shopping_cart{
    max-width:100%;
}
body.page #epl_main_container .epl_button,
body.page #epl_main_container input.epl_button{
    border:0;
    border-radius:999px;
    background:var(--magenta,#ce3483);
    color:#fff;
    padding:12px 24px;
    text-decoration:none;
    cursor:pointer;
}


/* Dedicated same-domain Events Planner registration screen */
.piel-registration-page{
    padding-top:42px;
    padding-bottom:80px;
}
.piel-registration-shell{
    max-width:920px;
    margin:0 auto;
}
.piel-registration-shell h1{
    margin:8px 0 30px;
    font-size:clamp(32px,5vw,52px);
    line-height:1.05;
    letter-spacing:-.03em;
}
.piel-registration-content{
    min-height:180px;
}
.piel-registration-error{
    padding:18px 20px;
    border:1px solid #e3e3e3;
    border-radius:12px;
    background:#fff;
    color:#721c24;
}
.piel-registration-content #events_planner_shopping_cart,
.piel-registration-content .epl_main_container,
.piel-registration-content #epl_main_container{
    max-width:100%;
    margin-left:0;
    margin-right:0;
}


/* 1.2.2 — polished Events Planner registration flow inside Pica */
.piel-registration-shell{
    max-width:1080px;
}
.piel-registration-content{
    --piel-reg-indigo:var(--indigo,#1b104c);
    --piel-reg-magenta:var(--magenta,#ce3483);
    --piel-reg-teal:#11a9ac;
    --piel-reg-line:#e5e2ea;
    --piel-reg-soft:#77727f;
    --piel-reg-paper:#f8f7fa;
    color:var(--piel-reg-indigo);
}
.piel-registration-content #epl_main_container{
    margin:0 !important;
    padding:0 !important;
    font-family:inherit;
    color:inherit;
}
.piel-registration-content #epl_ajax_content{
    margin:0;
    padding:0;
}
.piel-registration-content form#events_planner_shopping_cart{
    margin:0;
}
.piel-registration-content .epl_cart_wrapper{
    margin:0;
}
.piel-registration-content .epl_cart_wrapper > p:first-child{
    display:none;
}
.piel-registration-content .epl_cart_wrapper > .section,
.piel-registration-content .epl_cart_wrapper > .event-dates{
    margin:0 0 18px;
    padding:22px;
    border:1px solid var(--piel-reg-line);
    border-radius:14px;
    background:#fff;
}
.piel-registration-content .event-dates > div{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:28px;
    font-size:16px;
    font-weight:700;
}
.piel-registration-content .event-dates input[type="radio"]{
    width:18px;
    height:18px;
    accent-color:var(--piel-reg-magenta);
}
.piel-registration-content .epl_prices_table,
.piel-registration-content .epl_totals_table,
.piel-registration-content table.epl_error{
    width:100%;
    margin:0;
    border-collapse:separate;
    border-spacing:0;
    border:1px solid var(--piel-reg-line) !important;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
}
.piel-registration-content .epl_prices_table th{
    padding:12px 14px;
    border:0;
    border-bottom:1px solid var(--piel-reg-line);
    background:var(--piel-reg-indigo);
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-align:left;
}
.piel-registration-content .epl_prices_table td{
    padding:14px;
    border:0;
    border-bottom:1px solid var(--piel-reg-line);
    background:#fff;
    color:var(--piel-reg-indigo);
    font-size:16px;
}
.piel-registration-content .epl_prices_table tr:last-child td{
    border-bottom:0;
}
.piel-registration-content select.epl_att_qty_dd,
.piel-registration-content select,
.piel-registration-content input[type="text"],
.piel-registration-content input[type="email"],
.piel-registration-content input[type="tel"],
.piel-registration-content textarea{
    min-height:42px;
    padding:8px 11px;
    border:1px solid #cfcbd7;
    border-radius:8px;
    background:#fff;
    color:var(--piel-reg-indigo);
    font:inherit;
}
.piel-registration-content select.epl_att_qty_dd{
    min-width:86px;
}
.piel-registration-content .epl_button_wrapper{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    margin:22px 0 0;
}
.piel-registration-content a.epl_button,
.piel-registration-content input.epl_button,
.piel-registration-content .epl_button_small{
    float:none !important;
    margin:0 !important;
    padding:12px 22px !important;
    border:0 !important;
    border-radius:999px !important;
    background:var(--piel-reg-magenta) !important;
    color:#fff !important;
    box-shadow:none !important;
    font-family:inherit !important;
    font-size:15px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    text-decoration:none !important;
}
.piel-registration-content a.epl_button:hover,
.piel-registration-content input.epl_button:hover,
.piel-registration-content .epl_button_small:hover{
    filter:brightness(.94);
}
.piel-registration-content #calculate_total_due{
    display:none;
}
.piel-registration-content table.epl_error{
    border:1px solid #e9a7b5 !important;
    background:#fff4f6;
}
.piel-registration-content table.epl_error td,
.piel-registration-content table.epl_error th{
    padding:14px 16px !important;
    border:0 !important;
    background:#fff4f6 !important;
    color:#8b1934 !important;
    font-family:inherit;
    font-size:15px;
}
.piel-registration-content .epl_regis_field_wrapper{
    margin:0 0 22px;
    padding:24px;
    border:1px solid var(--piel-reg-line);
    border-radius:14px;
    background:#fff;
}
.piel-registration-content .epl_regis_field_wrapper .header h1{
    margin:0 0 18px;
    color:var(--piel-reg-indigo);
    font-size:24px;
    line-height:1.2;
}
.piel-registration-content .epl_regis_field_wrapper .header h2{
    margin:0 0 16px;
    color:var(--piel-reg-indigo);
    font-size:19px;
}
.piel-registration-content fieldset.epl_fieldset{
    margin:0;
    padding:0;
    border:0;
}
.piel-registration-content .row_wrapper{
    display:grid;
    grid-template-columns:minmax(180px,260px) minmax(0,1fr);
    gap:18px;
    align-items:start;
    padding:11px 0;
    border-bottom:1px solid #efedf2;
}
.piel-registration-content .row_wrapper:last-child{
    border-bottom:0;
}
.piel-registration-content .row_wrapper label{
    padding-top:9px;
    color:var(--piel-reg-indigo);
    font-weight:700;
}
.piel-registration-content .field_wrapper{
    min-width:0;
}
.piel-registration-content .field_wrapper input,
.piel-registration-content .field_wrapper select,
.piel-registration-content .field_wrapper textarea{
    width:100%;
    max-width:560px;
}
.piel-registration-content .field_wrapper small{
    display:block;
    margin-top:5px;
    color:var(--piel-reg-soft);
}
.piel-registration-content .epl_totals_table td{
    padding:13px 14px;
    border:0;
    background:var(--piel-reg-paper);
    color:var(--piel-reg-indigo);
    font-weight:700;
}
.piel-registration-content .epl_thank_you_page{
    padding:24px;
    border:1px solid var(--piel-reg-line);
    border-radius:14px;
    background:#fff;
}
.piel-registration-content .thank_you_message{
    color:var(--piel-reg-indigo);
    font-size:24px;
    font-weight:800;
}
@media (max-width:700px){
    .piel-registration-shell{
        max-width:100%;
    }
    .piel-registration-content .row_wrapper{
        grid-template-columns:1fr;
        gap:4px;
    }
    .piel-registration-content .row_wrapper label{
        padding-top:0;
    }
    .piel-registration-content .epl_prices_table{
        font-size:14px;
    }
    .piel-registration-content .epl_prices_table th,
    .piel-registration-content .epl_prices_table td{
        padding:10px;
    }
    .piel-registration-content .epl_button_wrapper{
        justify-content:space-between;
        flex-wrap:wrap;
    }
}


/* ============================================================
 * 1.3.1 — approved demo-style event landing page
 * ============================================================ */
.piel-demo-event{
    --pd-indigo:#17104b;
    --pd-magenta:#cf2f7d;
    --pd-teal:#22aeb0;
    --pd-teal-dark:#14989b;
    --pd-pink:#fff4f8;
    --pd-lilac:#f4f5ff;
    --pd-ink:#17104b;
    --pd-muted:#6f6b79;
    --pd-line:#e8e5ee;
    --pd-white:#fff;
    color:var(--pd-ink);
    background:#fff;
}
.piel-demo-event .wrap{
    width:min(1180px,calc(100% - 48px));
    margin-left:auto;
    margin-right:auto;
}
.piel-demo-event svg{
    display:block;
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* Hero */
.piel-demo-hero{
    position:relative;
    min-height:238px;
    margin-top:22px;
    overflow:hidden;
    border-radius:10px;
    background:
        linear-gradient(90deg,var(--pd-teal) 0%,var(--pd-teal) 62%,#2caeb1 100%);
    color:var(--pd-indigo);
}
.piel-demo-hero-copy{
    position:relative;
    z-index:4;
    width:72%;
    padding:28px 42px 30px;
}
.piel-demo-hero-date{
    margin-bottom:12px;
    color:#fff;
    font-family:"Newsreader",Georgia,serif;
    font-size:27px;
    font-weight:700;
    line-height:1.1;
}
.piel-demo-title-wrap{
    position:relative;
    display:inline-block;
    max-width:820px;
}
.piel-demo-title-small{
    font-size:46px;
    font-weight:400;
    line-height:1;
    letter-spacing:-.025em;
}
.piel-demo-hero h1{
    margin:4px 0 0;
    max-width:none;
    color:var(--pd-indigo);
    font-size:clamp(42px,5vw,68px);
    font-weight:850;
    line-height:.97;
    letter-spacing:-.045em;
}
.piel-demo-status{
    position:absolute;
    top:12px;
    right:-118px;
    transform:rotate(3deg);
    padding:10px 23px;
    border-radius:999px;
    background:var(--pd-magenta);
    color:#fff;
    box-shadow:0 3px 0 rgba(23,16,75,.09);
    font-size:14px;
    font-weight:800;
    letter-spacing:.04em;
    white-space:nowrap;
}
.piel-demo-edition{
    position:absolute;
    z-index:5;
    top:22px;
    right:28px;
    display:flex;
    width:132px;
    height:132px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:3px solid var(--pd-indigo);
    border-radius:50%;
    background:#fff;
    transform:rotate(-5deg);
    box-shadow:0 5px 0 rgba(23,16,75,.08);
    font-family:"Comic Sans MS","Bradley Hand",cursive;
    font-size:23px;
    font-weight:700;
    line-height:1.02;
    text-align:center;
}
.piel-demo-edition span:first-child,
.piel-demo-edition span:nth-child(2){color:var(--pd-magenta)}
.piel-demo-edition span:last-child{color:var(--pd-indigo)}

/* CSS crowd illustration, based on the approved line-art composition. */
.piel-demo-crowd{
    position:absolute;
    right:64px;
    bottom:-8px;
    z-index:2;
    display:flex;
    width:500px;
    max-width:46%;
    height:160px;
    flex-wrap:wrap;
    align-content:flex-end;
    justify-content:flex-end;
    gap:0 1px;
    opacity:.28;
    transform:skewX(-2deg);
}
.piel-demo-crowd i{
    position:relative;
    display:block;
    width:54px;
    height:62px;
    margin-left:-11px;
}
.piel-demo-crowd i::before{
    content:"";
    position:absolute;
    top:2px;
    left:19px;
    width:18px;
    height:18px;
    border:2px solid #d7f3f3;
    border-radius:50%;
}
.piel-demo-crowd i::after{
    content:"";
    position:absolute;
    left:7px;
    bottom:2px;
    width:42px;
    height:34px;
    border:2px solid #d7f3f3;
    border-bottom:0;
    border-radius:26px 26px 0 0;
}
.piel-demo-crowd i:nth-child(3n){transform:translateY(-9px) scale(.9)}
.piel-demo-crowd i:nth-child(4n){transform:translateY(5px) scale(1.08)}
.piel-demo-crowd i:nth-child(5n){opacity:.6}

/* Hero metadata bar */
.piel-demo-meta-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:14px 0 17px;
    border-bottom:1px solid var(--pd-line);
}
.piel-demo-meta-items{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:20px 38px;
}
.piel-demo-meta-items>span{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--pd-muted);
    font-size:14px;
}
.piel-demo-meta-items svg{color:var(--pd-indigo)}
.piel-demo-meta-items b{
    color:var(--pd-muted);
    font-weight:650;
}
.piel-demo-cta,
.piel-demo-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:7px;
    background:var(--pd-magenta);
    color:#fff !important;
    font-size:14px;
    font-weight:750;
    line-height:1;
    text-decoration:none !important;
    transition:transform .15s ease,filter .15s ease;
}
.piel-demo-cta{padding:13px 25px}
.piel-demo-btn{
    margin-top:10px;
    padding:13px 23px;
}
.piel-demo-cta:hover,
.piel-demo-btn:hover{
    transform:translateY(-1px);
    filter:brightness(.96);
}

/* Alternating promo sections */
.piel-demo-band{
    padding:34px 0;
    border-bottom:1px solid var(--pd-line);
    background:#fff;
}
.piel-demo-band-soft{
    background:linear-gradient(90deg,#fff 0%,#fbfbfe 45%,#f8f9ff 100%);
}
.piel-demo-split{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(380px,1.1fr);
    gap:64px;
    align-items:center;
}
.piel-demo-copy h2{
    margin:0;
    color:var(--pd-indigo);
    font-size:clamp(31px,3.4vw,43px);
    font-weight:850;
    line-height:1.02;
    letter-spacing:-.035em;
}
.piel-demo-rule{
    width:42px;
    height:3px;
    margin:13px 0 16px;
    border-radius:99px;
    background:var(--pd-magenta);
}
.piel-demo-copy p,
.piel-demo-intro{
    max-width:580px;
    color:#615e69;
    font-size:15px;
    line-height:1.56;
}
.piel-demo-intro p{margin:0 0 11px}
.piel-demo-intro p:last-child{margin-bottom:0}

/* About visual */
.piel-demo-visual,
.piel-demo-workshop-visual{
    position:relative;
    overflow:hidden;
    min-height:290px;
    border-radius:9px;
    background:
        radial-gradient(circle at 25% 15%,rgba(255,255,255,.92),rgba(255,255,255,0) 28%),
        linear-gradient(145deg,#ebf2f2,#dbe8ea 45%,#efdfd6);
}
.piel-demo-visual>img{
    width:100%;
    height:100%;
    min-height:290px;
    object-fit:cover;
}
.piel-demo-avatar-mosaic,
.piel-demo-workshop-bubbles{
    position:absolute;
    inset:0;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    padding:24px;
    background:
        linear-gradient(135deg,rgba(25,174,176,.15),rgba(207,47,125,.08)),
        #eef3f4;
}
.piel-demo-avatar-mosaic span,
.piel-demo-workshop-bubbles span{
    overflow:hidden;
    border:5px solid rgba(255,255,255,.9);
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 18px rgba(23,16,75,.08);
}
.piel-demo-avatar-mosaic img,
.piel-demo-workshop-bubbles img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.piel-demo-avatar-mosaic b,
.piel-demo-workshop-bubbles b{
    display:grid;
    width:100%;
    height:100%;
    place-items:center;
    color:var(--pd-indigo);
    font-size:24px;
}

/* Benefits */
.piel-demo-benefits{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:24px;
}
.piel-demo-benefit{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:10px;
    align-items:center;
    color:var(--pd-indigo);
    font-size:13px;
    font-weight:650;
    line-height:1.25;
}
.piel-demo-benefit-icon{
    display:grid;
    width:42px;
    height:42px;
    place-items:center;
    border-radius:50%;
    background:#fff0f7;
    color:var(--pd-magenta);
}
.piel-demo-benefit-icon svg{width:24px;height:24px}

/* Program preview */
.piel-demo-program-preview{
    padding:18px 24px;
    border-radius:10px;
    background:linear-gradient(145deg,#f5f5ff,#eef0fb);
}
.piel-demo-program-line{
    display:grid;
    grid-template-columns:130px 1fr;
    gap:10px;
    padding:9px 0;
    border-bottom:1px solid #dde0ef;
    color:var(--pd-indigo);
    font-size:14px;
}
.piel-demo-program-line:last-of-type{border-bottom:0}
.piel-demo-program-line span{font-size:12px}
.piel-demo-program-line b{font-weight:550}
.piel-demo-more{
    padding-top:8px;
    color:var(--pd-indigo);
    font-size:13px;
    text-align:center;
}

/* Workshops promo */
.piel-demo-workshop-visual{
    min-height:240px;
    background:linear-gradient(145deg,#eaded2,#dfe9e8);
}
.piel-demo-workshop-bubbles{
    grid-template-columns:repeat(4,1fr);
    gap:8px;
    padding:16px;
    filter:saturate(.85);
}
.piel-demo-workshop-bubbles span{
    min-height:95px;
    border:3px solid rgba(255,255,255,.8);
    border-radius:12px;
}
.piel-demo-workshop-overlay{
    position:absolute;
    right:18px;
    bottom:18px;
    display:flex;
    align-items:baseline;
    gap:8px;
    padding:10px 15px;
    border-radius:999px;
    background:rgba(23,16,75,.92);
    color:#fff;
}
.piel-demo-workshop-overlay strong{font-size:24px}
.piel-demo-workshop-overlay span{font-size:13px}

/* Speaker promo */
.piel-demo-speaker-row{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
.piel-demo-speaker-row a,
.piel-demo-speaker-grid a{
    color:var(--pd-indigo);
    text-decoration:none !important;
}
.piel-demo-speaker-row a{
    text-align:center;
}
.piel-demo-speaker-photo{
    display:grid;
    overflow:hidden;
    width:112px;
    height:112px;
    margin:0 auto 9px;
    place-items:center;
    border-radius:50%;
    background:#e9e8ec;
}
.piel-demo-speaker-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.piel-demo-speaker-photo b{
    color:var(--pd-indigo);
    font-size:28px;
}
.piel-demo-speaker-row strong{
    display:block;
    font-size:13px;
    line-height:1.2;
}

/* Practical card */
.piel-demo-practical-card{
    display:grid;
    gap:3px;
    padding:18px 22px;
    border-radius:10px;
    background:linear-gradient(135deg,#fff8fc,#faf0f8);
}
.piel-demo-practical-card>div{
    display:grid;
    grid-template-columns:25px 1fr;
    gap:11px;
    align-items:center;
    padding:8px 0;
    color:#5e5b68;
    font-size:14px;
}
.piel-demo-practical-card svg{color:var(--pd-magenta)}

/* Free book strip */
.piel-demo-book-band{
    overflow:hidden;
    background:linear-gradient(100deg,#eef7ff 0%,#f4f8ff 38%,#fff 100%);
    border-bottom:1px solid var(--pd-line);
}
.piel-demo-book-inner{
    display:grid;
    grid-template-columns:220px 1fr;
    gap:34px;
    align-items:center;
    min-height:155px;
}
.piel-demo-book-art{
    position:relative;
    height:155px;
}
.piel-demo-book-cover{
    position:absolute;
    left:34px;
    bottom:-34px;
    width:128px;
    height:174px;
    padding:15px 13px;
    transform:rotate(-6deg);
    border:1px solid #ddd;
    background:#fff;
    box-shadow:0 10px 20px rgba(23,16,75,.14);
    color:#111;
}
.piel-demo-book-cover small{
    display:block;
    margin-bottom:12px;
    color:#d65a43;
    font-size:6px;
}
.piel-demo-book-cover strong{
    display:block;
    font-size:16px;
    line-height:1.05;
}
.piel-demo-book-cover span{
    display:block;
    margin-top:4px;
    font-size:9px;
}
.piel-demo-book-cover i{
    position:absolute;
    right:-2px;
    bottom:0;
    width:72px;
    height:96px;
    background:linear-gradient(180deg,#f5ddec 0 62%,#df4c75 62%);
    clip-path:polygon(0 0,100% 0,100% 100%,32% 100%,32% 35%,0 35%);
}
.piel-demo-book-inner h3{
    margin:0 0 9px;
    color:var(--pd-indigo);
    font-size:25px;
}
.piel-demo-book-inner p{
    margin:0;
    color:#62606a;
    font-size:15px;
    line-height:1.5;
}

/* Full detail area below the visual landing portion */
.piel-demo-details{
    padding-top:48px;
    padding-bottom:28px;
}
.piel-demo-detail-section{
    padding:34px 0 44px;
    border-bottom:1px solid var(--pd-line);
    scroll-margin-top:110px;
}
.piel-demo-detail-section .eyebrow{
    display:inline-block;
    margin-bottom:8px;
    color:var(--pd-magenta);
    font-size:12px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.piel-demo-detail-section>h2{
    margin:0 0 22px;
    color:var(--pd-indigo);
    font-size:34px;
    line-height:1.1;
}
.piel-demo-program-full{
    border-top:1px solid var(--pd-line);
}
.piel-demo-program-full>div{
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:22px;
    padding:14px 0;
    border-bottom:1px solid var(--pd-line);
}
.piel-demo-program-full time{
    color:var(--pd-indigo);
    font-weight:750;
}
.piel-demo-program-full span{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.piel-demo-program-full small{
    color:var(--pd-muted);
    font-style:italic;
}
.piel-demo-rich{
    color:#4f4c58;
    line-height:1.65;
}
.piel-demo-rich h2,
.piel-demo-rich h3{
    color:var(--pd-indigo);
}
.piel-demo-rich table{
    width:100%;
    border-collapse:collapse;
    margin:18px 0 28px;
}
.piel-demo-rich th,
.piel-demo-rich td{
    padding:10px 12px;
    border-bottom:1px solid var(--pd-line);
    text-align:left;
}
.piel-demo-speaker-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
.piel-demo-speaker-grid a{
    padding:18px;
    border:1px solid var(--pd-line);
    border-radius:12px;
    text-align:center;
}
.piel-demo-speaker-grid small{
    display:block;
    margin-top:6px;
    color:var(--pd-muted);
    font-size:12px;
    line-height:1.35;
}
.piel-demo-practical-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.piel-demo-practical-grid>div{
    padding:20px;
    border:1px solid var(--pd-line);
    border-radius:12px;
    background:#fff;
}
.piel-demo-practical-grid h3{
    margin:0 0 8px;
    color:var(--pd-indigo);
    font-size:17px;
}
.piel-demo-practical-grid p{
    margin:0;
    color:#67636f;
    line-height:1.55;
}
.piel-demo-related{
    padding-top:34px;
    padding-bottom:70px;
}

@media (max-width:980px){
    .piel-demo-hero-copy{width:82%;padding-right:20px}
    .piel-demo-status{right:-45px}
    .piel-demo-crowd{right:0;max-width:42%;opacity:.18}
    .piel-demo-edition{width:112px;height:112px;font-size:19px}
    .piel-demo-split{grid-template-columns:1fr;gap:28px}
    .piel-demo-visual,
    .piel-demo-workshop-visual{min-height:260px}
    .piel-demo-speaker-row{max-width:650px}
}
@media (max-width:760px){
    .piel-demo-event .wrap{width:min(100% - 28px,1180px)}
    .piel-demo-hero{min-height:300px}
    .piel-demo-hero-copy{width:100%;padding:24px 22px 120px}
    .piel-demo-hero-date{font-size:21px}
    .piel-demo-title-small{font-size:34px}
    .piel-demo-hero h1{font-size:43px}
    .piel-demo-status{
        position:static;
        display:inline-flex;
        margin-top:14px;
        transform:none;
        font-size:12px;
    }
    .piel-demo-edition{top:auto;right:18px;bottom:14px}
    .piel-demo-crowd{
        right:86px;
        bottom:-15px;
        width:70%;
        max-width:70%;
        height:120px;
    }
    .piel-demo-meta-bar{
        align-items:flex-start;
        flex-direction:column;
    }
    .piel-demo-meta-items{
        flex-direction:column;
        align-items:flex-start;
        gap:11px;
    }
    .piel-demo-cta{width:100%}
    .piel-demo-band{padding:29px 0}
    .piel-demo-copy h2{font-size:32px}
    .piel-demo-benefits{grid-template-columns:1fr}
    .piel-demo-program-line{grid-template-columns:105px 1fr}
    .piel-demo-speaker-row,
    .piel-demo-speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .piel-demo-speaker-photo{width:90px;height:90px}
    .piel-demo-book-inner{grid-template-columns:120px 1fr;gap:15px}
    .piel-demo-book-cover{left:8px;width:102px;height:144px}
    .piel-demo-practical-grid{grid-template-columns:1fr}
    .piel-demo-program-full>div{grid-template-columns:100px minmax(0,1fr)}
}
@media (max-width:480px){
    .piel-demo-title-small{font-size:30px}
    .piel-demo-hero h1{font-size:36px}
    .piel-demo-edition{width:92px;height:92px;font-size:16px}
    .piel-demo-speaker-row,
    .piel-demo-speaker-grid{grid-template-columns:1fr 1fr}
    .piel-demo-workshop-bubbles{grid-template-columns:repeat(3,1fr)}
}


/* ============================================================
 * 1.3.3 — practical card alignment fix
 * ============================================================ */
.piel-demo-practical-card{
    width:100%;
    min-width:0;
    align-self:stretch;
    justify-self:stretch;
    padding:20px 24px;
}
.piel-demo-practical-card>div{
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    align-items:center !important;
    column-gap:12px !important;
}
.piel-demo-practical-card>div>svg{
    width:20px !important;
    height:20px !important;
    min-width:20px !important;
    max-width:20px !important;
}
.piel-demo-practical-card>div>span{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    line-height:1.45 !important;
}


/* ============================================================
 * 1.3.4 — alignment + repeated-speaker cleanup
 * ============================================================ */

/* The active theme still imposed its own max-width on .wrap.
 * Force the event landing page to use the proportions of the approved demo. */
.piel-demo-event .wrap{
    width:calc(100% - 64px) !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.piel-demo-event .piel-demo-split{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr) !important;
    gap:56px !important;
}
.piel-demo-event .piel-demo-split > *{
    min-width:0;
}

/* About fallback illustration. No speaker portraits here anymore. */
.piel-demo-classroom-scene{
    position:absolute;
    inset:0;
    overflow:hidden;
    background:
        linear-gradient(145deg,rgba(255,255,255,.3),rgba(255,255,255,0)),
        linear-gradient(135deg,#dfe9ea 0%,#eef3f0 48%,#e7d7cf 100%);
}
.piel-scene-board{
    position:absolute;
    top:26px;
    left:34px;
    width:46%;
    height:42%;
    border-radius:10px;
    background:linear-gradient(135deg,#1d625f,#2d8580);
    box-shadow:0 10px 24px rgba(23,16,75,.08);
}
.piel-scene-board::after{
    content:"";
    position:absolute;
    left:14%;
    right:14%;
    top:30%;
    height:4px;
    border-radius:99px;
    background:rgba(255,255,255,.55);
    box-shadow:0 22px 0 rgba(255,255,255,.38);
}
.piel-scene-person{
    position:absolute;
    bottom:42px;
    width:58px;
    height:92px;
    border-radius:30px 30px 14px 14px;
    background:#b65c66;
    box-shadow:0 10px 20px rgba(23,16,75,.08);
}
.piel-scene-person::before{
    content:"";
    position:absolute;
    top:-28px;
    left:12px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#e8c5ad;
}
.piel-scene-person-a{left:58%;background:#bd746b}
.piel-scene-person-b{left:72%;bottom:28px;background:#6f8f9c;transform:scale(.9)}
.piel-scene-person-c{left:84%;bottom:48px;background:#9b6f87;transform:scale(.78)}
.piel-scene-desk{
    position:absolute;
    bottom:26px;
    width:140px;
    height:22px;
    border-radius:6px;
    background:#c9a98a;
}
.piel-scene-desk-a{left:50%}
.piel-scene-desk-b{left:73%;bottom:18px;width:120px}

/* Workshop fallback illustration. Also no speaker portraits. */
.piel-demo-workshop-scene{
    position:absolute;
    inset:0;
    overflow:hidden;
    background:
        radial-gradient(circle at 70% 24%,rgba(255,255,255,.72),rgba(255,255,255,0) 26%),
        linear-gradient(135deg,#e6d7ca,#dae8e5 55%,#d9d1d7);
}
.piel-workshop-card{
    position:absolute;
    top:24px;
    width:108px;
    height:74px;
    border-radius:9px;
    background:#fff;
    box-shadow:0 8px 18px rgba(23,16,75,.09);
    transform:rotate(-3deg);
}
.piel-workshop-card::before,
.piel-workshop-card::after{
    content:"";
    position:absolute;
    left:14px;
    right:14px;
    height:5px;
    border-radius:99px;
    background:#e5e2eb;
}
.piel-workshop-card::before{top:22px}
.piel-workshop-card::after{top:38px;width:55%}
.piel-workshop-card-a{left:8%}
.piel-workshop-card-b{left:39%;top:40px;transform:rotate(2deg)}
.piel-workshop-card-c{right:8%;top:20px;transform:rotate(4deg)}
.piel-workshop-person{
    position:absolute;
    bottom:-10px;
    width:76px;
    height:120px;
    border-radius:38px 38px 16px 16px;
    background:#708f9b;
}
.piel-workshop-person::before{
    content:"";
    position:absolute;
    top:-34px;
    left:19px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:#e0b79d;
}
.piel-workshop-person-a{left:13%;background:#a86f71}
.piel-workshop-person-b{left:34%;bottom:-22px;background:#697c99;transform:scale(.9)}
.piel-workshop-person-c{left:58%;background:#9c7d64;transform:scale(.96)}
.piel-workshop-person-d{right:8%;bottom:-18px;background:#7e687d;transform:scale(.84)}

/* Practical card: explicit rows + div text, so theme span rules cannot collapse it. */
.piel-demo-event .piel-demo-practical-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:2px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    padding:20px 26px !important;
}
.piel-demo-event .piel-demo-practical-row{
    display:grid !important;
    grid-template-columns:26px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:center !important;
    width:100% !important;
    min-width:0 !important;
    padding:9px 0 !important;
}
.piel-demo-event .piel-demo-practical-row svg{
    width:20px !important;
    height:20px !important;
    color:var(--pd-magenta) !important;
}
.piel-demo-event .piel-demo-practical-text{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    color:#5e5b68 !important;
    font-size:14px !important;
    line-height:1.42 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
}

/* Remove old mosaic rules from the visual flow if cached markup ever survives. */
.piel-demo-about-visual .piel-demo-avatar-mosaic{
    display:none !important;
}

@media (max-width:760px){
    .piel-demo-event .wrap{
        width:calc(100% - 28px) !important;
    }
    .piel-demo-event .piel-demo-split{
        grid-template-columns:1fr !important;
        gap:28px !important;
    }
}


/* ============================================================
 * 1.4.0 — scalable event navigation + child sections
 * ============================================================ */
.piel-event-nav{
    position:sticky;
    top:0;
    z-index:80;
    border-top:1px solid #ece9f0;
    border-bottom:1px solid #dfdbe6;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(10px);
}
.admin-bar .piel-event-nav{top:32px}
.piel-event-nav-inner{
    display:flex;
    align-items:center;
    gap:2px;
    overflow-x:auto;
    scrollbar-width:thin;
}
.piel-event-nav-link{
    position:relative;
    flex:0 0 auto;
    padding:15px 18px 14px;
    color:#17104b !important;
    font-size:14px;
    font-weight:750;
    text-decoration:none !important;
    white-space:nowrap;
}
.piel-event-nav-link::after{
    content:"";
    position:absolute;
    left:18px;
    right:18px;
    bottom:-1px;
    height:3px;
    border-radius:3px 3px 0 0;
    background:transparent;
}
.piel-event-nav-link:hover,
.piel-event-nav-link.is-active{color:#cf2f7d !important}
.piel-event-nav-link.is-active::after{background:#cf2f7d}
.piel-event-nav-link:last-child{
    margin-left:auto;
    color:#fff !important;
    background:#cf2f7d;
}
.piel-event-nav-link:last-child::after{display:none}
.piel-event-nav-link:last-child:hover{filter:brightness(.96)}

.piel-event-context{
    padding:28px 0 20px;
    background:#fff;
}
.piel-event-context-inner{display:grid;gap:9px}
.piel-event-breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
    color:#797481;
    font-size:12px;
}
.piel-event-breadcrumb a{color:#797481;text-decoration:none}
.piel-event-breadcrumb strong{color:#17104b}
.piel-event-context-title{
    max-width:900px;
    color:#17104b !important;
    font-size:clamp(27px,4vw,44px);
    font-weight:850;
    line-height:1.05;
    letter-spacing:-.035em;
    text-decoration:none !important;
}
.piel-event-context-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 22px;
    color:#77727f;
    font-size:13px;
}

.piel-event-section-page{background:#fff}
.piel-event-section-content{
    max-width:1180px;
    padding-top:46px;
    padding-bottom:72px;
}
.piel-section-heading{
    max-width:760px;
    margin-bottom:34px;
}
.piel-section-heading .eyebrow{
    display:inline-block;
    margin-bottom:8px;
    color:#cf2f7d;
    font-size:12px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.piel-section-heading h1{
    margin:0 0 12px;
    color:#17104b;
    font-size:clamp(36px,5vw,58px);
    font-weight:850;
    line-height:1.02;
    letter-spacing:-.045em;
}
.piel-section-heading p{
    margin:0;
    color:#6f6b79;
    font-size:17px;
    line-height:1.55;
}

.piel-section-program{
    max-width:980px;
    border-top:1px solid #e8e5ee;
}
.piel-section-program-row{
    display:grid;
    grid-template-columns:145px minmax(0,1fr);
    gap:28px;
    padding:20px 4px;
    border-bottom:1px solid #e8e5ee;
}
.piel-section-program-row time{
    color:#17104b;
    font-size:15px;
    font-weight:800;
}
.piel-section-program-row h2{
    margin:0;
    color:#17104b;
    font-size:19px;
    line-height:1.3;
}
.piel-section-program-row p{
    margin:5px 0 0;
    color:#77727f;
    font-size:14px;
}

.piel-section-rich{
    max-width:980px;
    color:#4f4c58;
    font-size:16px;
    line-height:1.7;
}
.piel-section-rich h2,
.piel-section-rich h3,
.piel-section-rich h4{color:#17104b}
.piel-section-rich table{width:100%;border-collapse:collapse;margin:20px 0 30px}
.piel-section-rich th,
.piel-section-rich td{padding:12px 14px;border-bottom:1px solid #e8e5ee;text-align:left;vertical-align:top}
.piel-section-subsection{
    max-width:980px;
    margin-top:50px;
    padding-top:34px;
    border-top:1px solid #e8e5ee;
}
.piel-section-subsection h2{color:#17104b;font-size:30px}
.piel-section-empty{
    max-width:780px;
    padding:24px;
    border:1px solid #e8e5ee;
    border-radius:12px;
    background:#faf9fb;
    color:#6f6b79;
}

.piel-section-speaker-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
.piel-section-speaker{
    display:flex;
    min-width:0;
    flex-direction:column;
    padding:18px;
    border:1px solid #e8e5ee;
    border-radius:14px;
    background:#fff;
    color:#17104b !important;
    text-decoration:none !important;
    transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.piel-section-speaker:hover{
    transform:translateY(-2px);
    border-color:#cf2f7d;
    box-shadow:0 12px 28px rgba(23,16,75,.08);
}
.piel-section-speaker-photo{
    display:grid;
    overflow:hidden;
    width:100%;
    aspect-ratio:1/1;
    margin-bottom:14px;
    place-items:center;
    border-radius:10px;
    background:#f0eef3;
}
.piel-section-speaker-photo img{width:100%;height:100%;object-fit:cover}
.piel-section-speaker-photo b{font-size:36px}
.piel-section-speaker-copy{display:flex;min-width:0;flex-direction:column;gap:5px}
.piel-section-speaker-copy strong{font-size:16px;line-height:1.25}
.piel-section-speaker-copy small{color:#77727f;font-size:13px;line-height:1.4}

.piel-section-practical-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:980px;
}
.piel-section-practical-grid>section{
    padding:24px;
    border:1px solid #e8e5ee;
    border-radius:14px;
    background:#fff;
}
.piel-section-practical-grid h2{margin:0 0 10px;color:#17104b;font-size:20px}
.piel-section-practical-grid p{margin:0;color:#686470;line-height:1.65}

.piel-section-footer{
    margin-top:54px;
    padding-top:24px;
    border-top:1px solid #e8e5ee;
}
.piel-section-footer a{
    display:inline-flex;
    padding:11px 17px;
    border:1px solid #dcd7e2;
    border-radius:999px;
    color:#17104b !important;
    font-weight:750;
    text-decoration:none !important;
}
.piel-section-footer a:hover{border-color:#cf2f7d;color:#cf2f7d !important}

/* Overview is deliberately concise in 1.4.0: no repeated full-content block. */
.piel-demo-details{display:none !important}

@media (max-width:980px){
    .piel-section-speaker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:782px){
    .admin-bar .piel-event-nav{top:46px}
    .piel-event-nav-inner{padding-right:0}
    .piel-event-nav-link{padding:13px 13px 12px}
    .piel-event-nav-link::after{left:13px;right:13px}
    .piel-event-nav-link:last-child{margin-left:0}
    .piel-event-context{padding:22px 0 16px}
    .piel-event-section-content{padding-top:32px;padding-bottom:52px}
    .piel-section-program-row{grid-template-columns:100px minmax(0,1fr);gap:16px}
    .piel-section-speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .piel-section-practical-grid{grid-template-columns:1fr}
}
@media (max-width:480px){
    .piel-section-speaker-grid{grid-template-columns:1fr 1fr;gap:10px}
    .piel-section-speaker{padding:10px}
    .piel-section-program-row{grid-template-columns:1fr;gap:6px}
}


/* ============================================================
 * 1.4.1 — single registration CTA + matching registration hero
 * ============================================================ */
.piel-demo-meta-bar-no-cta,
.piel-demo-event > .piel-demo-meta-bar{
    justify-content:flex-start;
}
.piel-demo-event > .piel-demo-meta-bar .piel-demo-meta-items{
    width:100%;
}
.piel-registration-event-page{
    background:#fff;
}
.piel-registration-event-page .piel-registration-page{
    padding-top:42px;
}
.piel-registration-heading{
    margin:0 0 24px;
    color:#17104b;
    font-size:clamp(32px,4vw,48px);
    font-weight:850;
    line-height:1.04;
    letter-spacing:-.035em;
}
.piel-registration-shell > .eyebrow{
    margin-bottom:8px;
}
@media (max-width:760px){
    .piel-registration-event-page .piel-registration-page{
        padding-top:28px;
    }
}
