.pnwo-form{max-width:900px}.pnwo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pnwo-full{grid-column:1/-1}.pnwo-form label{display:block;font-weight:700;margin-bottom:6px}.pnwo-form input,.pnwo-form textarea,.pnwo-form select{width:100%;padding:11px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.pnwo-button{display:inline-block;background:#111;color:#fff!important;border:0;padding:12px 20px;border-radius:4px;font-weight:800;cursor:pointer;text-decoration:none}.pnwo-note{font-size:.9em;color:#666}.pnwo-hp{position:absolute!important;left:-9999px!important}.pnwo-success,.pnwo-error{padding:14px 16px;margin:0 0 20px;border-radius:4px}.pnwo-success{background:#eef8ee}.pnwo-error{background:#fff0f0}.pnwo-choice{font-weight:400!important;border:1px solid #ddd;padding:12px;margin:8px 0;border-radius:5px}.pnwo-choice input{width:auto!important}


.pnwo-directory-header{display:flex;justify-content:center;align-items:center;margin:0 0 28px;padding:6px 0}.pnwo-submit-event-button{display:inline-block;background:#0b5fa5;color:#fff!important;text-decoration:none!important;font-weight:900;letter-spacing:.04em;font-size:1rem;padding:16px 30px;border-radius:4px;box-shadow:0 5px 16px rgba(0,0,0,.12);transition:transform .15s ease,box-shadow .15s ease}.pnwo-submit-event-button:hover{color:#fff!important;transform:translateY(-1px);box-shadow:0 7px 20px rgba(0,0,0,.17)}

.pnwo-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.pnwo-card{border:1px solid #e6e6e6;background:#fff;overflow:hidden;position:relative;box-shadow:0 2px 10px rgba(0,0,0,.04)}.pnwo-card-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#f1f1f1;text-decoration:none}.pnwo-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}.pnwo-card:hover .pnwo-card-image img{transform:scale(1.025)}.pnwo-image-placeholder{display:flex;height:100%;align-items:center;justify-content:center;font-weight:900;letter-spacing:.12em;color:#777}.pnwo-card-body{padding:18px}.pnwo-card h3{font-size:1.25rem;line-height:1.2;margin:.35em 0 .5em}.pnwo-card h3 a{color:inherit;text-decoration:none}.pnwo-date{font-weight:800;text-transform:uppercase;font-size:.78rem;letter-spacing:.06em}.pnwo-card-place{color:#666;margin:.35rem 0 1rem}.pnwo-card-footer{border-top:1px solid #eee;margin-top:14px;padding-top:13px;display:flex;justify-content:space-between;gap:14px;align-items:center}.pnwo-card-footer a{font-weight:800;text-decoration:none}.pnwo-highlighted{border:2px solid #111;box-shadow:0 8px 24px rgba(0,0,0,.12)}.pnwo-highlight-badge{font-weight:900;letter-spacing:.055em;padding:9px 12px;background:#111;color:#fff;font-size:.74rem}.pnwo-highlighted .pnwo-card-body{padding-top:18px}

.pnwo-single-page{width:calc(100% - 36px);max-width:960px;margin:0 auto;padding:18px 18px 32px;box-sizing:border-box;background:#fff}.pnwo-single{width:100%;max-width:924px;margin:0 auto;padding:0;box-sizing:border-box;background:#fff}.pnwo-event-shell{width:100%;margin:0 auto}.pnwo-event-hero{display:grid;border:1px solid #ececec;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.08);overflow:hidden}.pnwo-event-hero-copy{padding:42px 38px;display:flex;flex-direction:column;justify-content:center}.pnwo-event-hero h1{font-size:clamp(2.05rem,3.3vw,3.75rem);line-height:.98;margin:10px 0 22px;letter-spacing:-.035em}.pnwo-event-hero-image{min-height:390px;background:#ddd}.pnwo-event-hero-image img{display:block;width:100%;height:100%;object-fit:cover}.pnwo-kicker{display:inline-block;align-self:flex-start;background:#111;color:#fff;padding:7px 10px;font-size:.76rem;font-weight:900;letter-spacing:.08em;margin-bottom:10px}.pnwo-event-cats{text-transform:uppercase;font-size:.76rem;letter-spacing:.09em;font-weight:800;color:#666}.pnwo-hero-date{font-size:1.22rem;font-weight:900}.pnwo-hero-time,.pnwo-hero-place{font-size:1.06rem;margin-top:5px;color:#555}.pnwo-hero-price{font-size:1.28rem;font-weight:900;margin-top:18px}.pnwo-hero-cta{margin-top:8px;padding:14px 24px}

.pnwo-event-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.8fr);gap:28px;margin-top:28px;align-items:start}.pnwo-event-main,.pnwo-info-card{background:#fff}.pnwo-event-section{padding:30px 32px;margin-bottom:26px}.pnwo-event-section h2,.pnwo-more-events h2{font-size:1.55rem;margin:0 0 20px}.pnwo-event-description{font-size:1.05rem;line-height:1.75}.pnwo-event-description>p:first-child{margin-top:0}.pnwo-event-sidebar{display:grid;gap:18px;position:sticky;top:24px}.pnwo-info-card{padding:24px 25px;border-top:4px solid #111}.pnwo-info-card h3{text-transform:uppercase;font-size:.79rem;letter-spacing:.08em;margin:0 0 15px}.pnwo-info-card p{margin:.3rem 0}.pnwo-info-strong{font-weight:800}.pnwo-info-price{font-size:1.35rem;font-weight:900}.pnwo-block-button{display:block;text-align:center;margin-top:16px}.pnwo-organiser-logo{max-width:160px;max-height:90px;width:auto;height:auto;object-fit:contain;margin:0 0 15px}.pnwo-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pnwo-gallery img{display:block;width:100%;height:280px;object-fit:cover}.pnwo-gallery img:first-child:nth-last-child(3){grid-column:span 2}.pnwo-more-events{margin-top:46px}.pnwo-section-heading{border-bottom:3px solid #111;margin-bottom:22px}.pnwo-section-heading h2{display:inline-block;margin:0;background:#111;color:#fff;padding:10px 15px;font-size:1rem;text-transform:uppercase;letter-spacing:.05em}.pnwo-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:900px){.pnwo-event-hero{grid-template-columns:1fr}.pnwo-event-hero-image{min-height:320px;order:-1}.pnwo-event-hero-copy{padding:32px 28px}.pnwo-event-layout{grid-template-columns:1fr}.pnwo-event-sidebar{position:static}.pnwo-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.pnwo-grid,.pnwo-directory,.pnwo-related-grid{grid-template-columns:1fr}.pnwo-single-page{width:calc(100% - 20px);margin:0 auto;padding:18px 10px 28px;background:#fff}.pnwo-single{width:100%;margin:0 auto;padding:0}.pnwo-event-hero-copy{padding:26px 22px}.pnwo-event-hero h1{font-size:2.35rem}.pnwo-event-hero-image{min-height:240px}.pnwo-event-section{padding:25px 22px}.pnwo-gallery{grid-template-columns:1fr}.pnwo-gallery img,.pnwo-gallery img:first-child:nth-last-child(3){height:auto;grid-column:auto}.pnwo-card-footer{align-items:flex-start;flex-direction:column}}

/* v0.5 directory call-to-action and filters */
.pnwo-directory-cta{margin:34px 0 38px;padding:0 10px}.pnwo-directory-cta-inner{max-width:920px;margin:0 auto;text-align:center;padding:40px 34px;border-radius:18px;background:linear-gradient(135deg,#eef6fc 0%,#f8fbfe 48%,#e7f2fa 100%);border:1px solid #d7e8f5;box-shadow:0 10px 30px rgba(11,95,165,.08)}.pnwo-directory-cta-eyebrow{font-size:.74rem;font-weight:900;letter-spacing:.12em;color:#0b5fa5;margin-bottom:9px}.pnwo-directory-cta h2{font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.05;margin:0 0 10px;letter-spacing:-.025em}.pnwo-directory-cta p{max-width:620px;margin:0 auto 22px;color:#4f5962;font-size:1.04rem}.pnwo-directory-cta .pnwo-submit-event-button{margin:0 auto;padding:16px 31px;border-radius:999px;background:#0b5fa5;box-shadow:0 8px 22px rgba(11,95,165,.2)}.pnwo-directory-cta-note{margin-top:13px;font-size:.88rem;color:#64707a}.pnwo-directory-filters{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:0 0 28px;padding:18px 20px;background:#fff;border:1px solid #e6e9ec;border-radius:10px}.pnwo-directory-filters label{display:flex;flex-direction:column;gap:7px;font-weight:800}.pnwo-directory-filters label span{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#555}.pnwo-directory-filters select{min-width:220px;padding:11px 38px 11px 12px;border:1px solid #ccd2d7;border-radius:6px;background:#fff;font:inherit}.pnwo-clear-filter{font-weight:800;text-decoration:none}.pnwo-no-events{grid-column:1/-1;padding:24px;background:#f7f7f7;text-align:center}.pnwo-date-chips{display:flex;flex-wrap:wrap;gap:10px}.pnwo-date-chips span{display:inline-block;padding:9px 12px;border:1px solid #dfe4e8;border-radius:999px;background:#f7f9fa;font-weight:800;font-size:.9rem}
@media(max-width:700px){.pnwo-directory-cta{margin:24px 0 28px;padding:0}.pnwo-directory-cta-inner{padding:30px 20px;border-radius:12px}.pnwo-directory-filters{align-items:stretch;flex-direction:column}.pnwo-directory-filters select{width:100%;min-width:0}}

/* v0.5.3 compact directory call-to-action */
.pnwo-directory-cta{margin:22px 0 26px;padding:0 10px}
.pnwo-directory-cta-inner{max-width:720px;padding:24px 28px;border-radius:14px}
.pnwo-directory-cta-eyebrow{font-size:.7rem;margin-bottom:6px}
.pnwo-directory-cta h2{font-size:clamp(1.45rem,2.4vw,1.9rem);margin-bottom:7px}
.pnwo-directory-cta p{max-width:560px;margin-bottom:15px;font-size:.96rem}
.pnwo-directory-cta .pnwo-submit-event-button{padding:12px 24px;font-size:.9rem}
.pnwo-directory-cta-note{margin-top:9px;font-size:.82rem}
@media(max-width:700px){
  .pnwo-directory-cta{margin:18px 0 22px;padding:0}
  .pnwo-directory-cta-inner{padding:22px 18px;border-radius:12px}
}


/* v0.6.1 directory event modal */
body.pnwo-modal-open{overflow:hidden}
.pnwo-modal-overlay{position:fixed;inset:0;z-index:999999;background:rgba(15,23,32,.76);display:flex;align-items:flex-start;justify-content:center;padding:42px 18px;overflow-y:auto;backdrop-filter:blur(4px)}
.pnwo-modal-shell{position:relative;width:min(900px,100%);background:#fff;border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.35);overflow:hidden}
.pnwo-modal-close{position:absolute;right:14px;top:14px;z-index:4;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.78);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.pnwo-modal-loading{padding:80px 30px;text-align:center;font-weight:800}
.pnwo-modal-hero img{display:block;width:100%;max-height:430px;object-fit:cover}
.pnwo-modal-content{padding:30px 34px 34px}
.pnwo-modal-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:1px solid #e8ebed;padding-bottom:22px;margin-bottom:22px}
.pnwo-modal-heading h2{font-size:clamp(1.9rem,4vw,3rem);line-height:1.02;letter-spacing:-.03em;margin:5px 0 12px}
.pnwo-modal-date{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#0b5fa5}
.pnwo-modal-meta{font-weight:700;color:#555;margin-top:5px}
.pnwo-modal-price{font-size:1.35rem;font-weight:900;white-space:nowrap}
.pnwo-modal-book{display:inline-block;text-decoration:none!important}
.pnwo-modal-description{font-size:1.03rem;line-height:1.7}
.pnwo-modal-section{border-top:1px solid #e8ebed;margin-top:26px;padding-top:22px}
.pnwo-modal-section h3{margin:0 0 13px;font-size:1.15rem}
.pnwo-modal-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pnwo-modal-gallery img{display:block;width:100%;height:230px;object-fit:cover}
.pnwo-modal-footer{border-top:1px solid #e8ebed;margin-top:28px;padding-top:20px;text-align:right}
.pnwo-modal-footer a{font-weight:800}
@media(max-width:700px){
  .pnwo-modal-overlay{padding:12px 8px;align-items:flex-start}
  .pnwo-modal-shell{border-radius:10px}
  .pnwo-modal-content{padding:24px 20px 26px}
  .pnwo-modal-heading{display:block}
  .pnwo-modal-price{margin-top:14px}
  .pnwo-modal-gallery{grid-template-columns:1fr}
  .pnwo-modal-gallery img{height:auto}
}
