.tlw-directory .tlw-directory-hero{padding:56px 0 38px;max-width:780px}
.tlw-directory .tlw-directory-hero h1{max-width:none;margin-bottom:18px}
.tlw-directory .tlw-directory-hero>p:not(.tlw-eyebrow){color:var(--muted);font-size:18px;line-height:1.65}
.tlw-directory .tlw-directory-timezone{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}
.tlw-directory svg{width:20px;height:20px;flex:none}
.tlw-directory-list{display:grid;gap:30px;padding-bottom:64px;scroll-margin-top:40px}
.tlw-directory-card{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.tlw-directory-art{background:#f7f5fb;padding:24px;display:flex;align-items:flex-start;justify-content:center}
.tlw-directory-art img{width:100%;max-height:400px;object-fit:contain;border-radius:8px}
.tlw-directory-copy{min-width:0;padding:30px}
.tlw-directory .tlw-directory-copy h2{font-size:29px;line-height:1.25;margin-bottom:16px;overflow-wrap:anywhere}
.tlw-directory .tlw-directory-copy h2 a{color:var(--ink)}
.tlw-directory .tlw-directory-intro{font-size:16px;color:var(--muted);margin-bottom:20px}
.tlw-directory-overview{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:22px}
.tlw-directory .tlw-directory-price{margin:0;line-height:1.4;flex-shrink:0}
.tlw-directory-price strong{display:block;font-size:27px;color:var(--purple)}
.tlw-directory-price span{font-size:13px;color:var(--muted)}
.tlw-directory a.tlw-directory-detail{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:14px;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.tlw-directory-sessions{border-top:1px solid var(--line);padding-top:20px}
.tlw-directory-sessions summary{display:list-item;cursor:pointer;font-size:17px;font-weight:650;padding:4px 0 10px;min-height:44px;list-style-position:inside}
.tlw-directory-sessions summary>span{display:inline-block;font-size:12px;font-weight:500;background:var(--pale);border-radius:6px;padding:3px 8px;margin-left:8px;color:var(--purple)}
.tlw-directory-sessions ul{list-style:none;padding:0;margin:10px 0 0}
.tlw-directory-sessions li{padding:18px 0;border-top:1px solid var(--line)}
.tlw-directory .tlw-directory-date{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;font-size:15px;line-height:1.5;color:var(--ink)}
.tlw-directory-date svg{margin-top:2px;color:var(--purple)}
.tlw-directory-date strong,.tlw-directory-date span>span{display:block}
.tlw-directory-date .tlw-directory-slot-title{font-size:13px;color:var(--muted);margin-top:4px}
.tlw-directory-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}
.tlw-directory .tlw-directory-slot{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:3px 10px;padding:13px 15px;min-height:72px;border:1px solid var(--purple);border-radius:9px;background:var(--purple);color:white;line-height:1.4;text-decoration:none}
.tlw-directory-slot strong{font-size:15px;grid-column:1}
.tlw-directory-slot span{font-size:12px;grid-column:1}
.tlw-directory-slot svg{grid-column:2;grid-row:1/3}
.tlw-directory a.tlw-directory-slot:hover{background:#453b7c;color:#fff}
.tlw-directory .tlw-directory-slot-closed{background:#f6f5f8;color:var(--muted);border-color:var(--line)}
.tlw-directory .tlw-directory-note{margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.tlw-directory .tlw-directory-no-sessions{margin:0;padding:16px;background:var(--pale);border-radius:8px;color:var(--muted);font-size:15px}
.tlw-directory-card-no-image{grid-template-columns:1fr}
.tlw-directory-empty{background:var(--pale);border-radius:18px;padding:36px}
.tlw-directory .tlw-directory-empty h2{font-size:29px}
.tlw-directory-empty p{max-width:600px;color:var(--muted)}
@media(max-width:800px){.tlw-directory .tlw-directory-hero{padding:32px 0}.tlw-directory-card{grid-template-columns:1fr}.tlw-directory-art{padding:20px}.tlw-directory-art img{max-height:340px}.tlw-directory-copy{padding:24px}.tlw-directory .tlw-directory-copy h2{font-size:26px}.tlw-directory-list{padding-bottom:40px}}
@media(max-width:420px){.tlw-directory-copy{padding:20px}.tlw-directory-overview{flex-wrap:wrap;gap:8px}.tlw-directory-sessions summary>span{margin-left:3px}.tlw-directory-options{grid-template-columns:1fr}.tlw-directory-empty{padding:24px}.tlw-directory .tlw-directory-hero>p:not(.tlw-eyebrow){font-size:16px}}
