/*
Theme Name: ZT Theatre
Theme URI: https://example.com/
Author: OpenAI
Description: A dark, calendar-led theatre theme inspired by the ZT Theatre reference layout.
Version: 1.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: zt-theatre
*/
:root{--bg:#171717;--panel:#0d0d0d;--panel2:#202020;--line:#3b3b3b;--text:#ededed;--muted:#a0a0a0;--red:#711e21;--red-bright:#a12d31;--wrap:1120px;--font:Arial,"Helvetica Neue",sans-serif;--cond:"Arial Narrow",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.4 var(--font)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}a:hover{color:#f0a3a3}.wrap{width:min(var(--wrap),calc(100% - 40px));margin-inline:auto}.site-header{background:#111;color:#ddd}.header-top{min-height:188px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:22px 0 26px}.header-contact{font-size:12px;color:#a9a9a9;line-height:1.6}.header-contact strong{display:block;color:#bbb;font-size:15px;letter-spacing:.09em;font-weight:600;margin-bottom:4px}.header-contact span{display:block}.header-contact:last-child{text-align:right}.brand{display:flex;align-items:center;gap:19px;min-width:430px;justify-content:center;text-align:left}.brand img{width:auto;height:auto;max-width:165px;max-height:100px;object-fit:contain}.brand-mark{width:160px;height:90px;display:grid;place-items:center;color:#eee;font:700 31px/1 var(--cond);letter-spacing:.08em;border:3px double #ddd;clip-path:polygon(4% 88%,13% 88%,13% 22%,24% 22%,24% 11%,75% 11%,75% 22%,87% 22%,87% 88%,97% 88%,97% 95%,4% 95%)}.brand-name{font:500 16px/1.45 var(--cond);letter-spacing:.07em;text-transform:uppercase;color:#eee;max-width:300px}.brand-name small{display:block;margin-top:4px;font:13px/1.35 var(--cond);letter-spacing:.06em;color:#c5c5c5}.header-rule{height:2px;background:#aaa;width:min(1300px,calc(100% - 48px));margin:auto}
.site-shell{display:grid;grid-template-columns:176px minmax(0,1fr);gap:20px;padding-top:42px;padding-bottom:60px}.site-sidebar{align-self:start;position:sticky;top:16px}.main-nav ul{list-style:none;padding:0;margin:0 0 28px}.main-nav li{border-bottom:1px solid #4a4a4a}.main-nav a{display:block;padding:4px 8px 5px;font:22px/1.15 var(--cond);color:#eee}.main-nav a:hover{color:#e97070;background:#222}.main-nav .current-menu-item>a{color:#e97070}.mobile-toggle{display:none}.search-form{position:relative;margin:26px 3px 24px}.search-form label{display:block}.search-form .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.search-form input[type=search]{width:100%;height:31px;border:1px solid #999;border-radius:4px;background:#101010;color:white;padding:4px 30px 4px 8px;font-size:12px}.search-form input[type=submit]{position:absolute;right:3px;top:4px;width:23px;height:23px;padding:0;opacity:0;cursor:pointer}.search-form:after{content:"⌕";position:absolute;right:8px;top:0;color:#ccc;font-size:24px;line-height:24px;pointer-events:none}.calendar{font-size:12px;color:#ddd}.calendar-title{text-align:center;font-size:16px;margin:0 0 16px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-day{height:30px;display:grid;place-items:center;border:1px solid #777;color:#ddd;font-size:12px}.calendar-day.has-event{background:var(--red);border-color:#a34a4c;color:#fff}.calendar-day.is-today{outline:1px solid #eee;outline-offset:1px}.calendar-weekday{color:#8f8f8f;text-align:center;font-size:9px;padding-bottom:3px}.site-main{min-width:0}.hero{min-height:400px;position:relative;overflow:hidden;display:grid;grid-template-columns:58% 42%;background:#111}.hero-image{min-height:400px;position:relative;background:linear-gradient(90deg,transparent 55%,#111 100%),linear-gradient(0deg,#1115,#1115),radial-gradient(ellipse at 52% 30%,#886b55 0,#55483e 30%,#292827 72%)}.hero-image:before{content:"";position:absolute;inset:20% 12% 10%;background:repeating-linear-gradient(90deg,transparent 0 9%,#171717 9.4% 10%,transparent 10.4% 19%),linear-gradient(180deg,#a39380 0,#7d7369 62%,#332e2b 63%);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);opacity:.62}.hero-image:after{content:"";position:absolute;inset:15% 8% 7%;border-top:7px solid #d3c3aa;opacity:.42;clip-path:polygon(9% 0,91% 0,100% 100%,0 100%)}.hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:34px 32px 34px 8px;background:linear-gradient(90deg,transparent,#111 15%)}.hero h1{font:700 clamp(32px,3.2vw,43px)/1.08 var(--cond);margin:0 0 16px;color:#f3f3f3}.hero p{font-size:15px;line-height:1.35;color:#ddd;margin:0}.hero-actions{display:flex;gap:8px;margin-top:23px}.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;background:var(--red);color:#fff;border:0;font:16px/1 var(--cond);text-transform:uppercase;letter-spacing:.02em;transition:background .2s}.button:hover{background:var(--red-bright);color:#fff}.button-outline{background:transparent;border:1px solid #999}.button-outline:hover{background:var(--red);border-color:var(--red)}.welcome-copy{margin:18px 0 34px;background:#202020;padding:14px 17px;color:#c7c7c7;font-size:14px}.welcome-copy a{color:#d16568}.section{margin:38px 0 50px}.section-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #555;margin-bottom:18px;padding-bottom:8px}.section-title{font:700 25px/1 var(--cond);text-transform:uppercase;margin:0;color:#eee}.section-kicker{display:none}.text-link{font:14px var(--cond);color:#db696c;text-transform:uppercase}.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.news-card{display:grid;grid-template-columns:130px 1fr;gap:12px;background:#1e1e1e;min-height:92px;padding:8px}.news-image{background:linear-gradient(140deg,#48423b,#151515);min-height:78px;display:grid;place-items:center}.news-image img{width:100%;height:100%;object-fit:cover}.news-body h3{font:18px/1.1 var(--cond);color:#d66e71;margin:3px 0 5px}.news-excerpt{font-size:12px;color:#ddd;line-height:1.25;margin:0}.news-meta{font-size:11px;color:#999;margin-top:6px}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.event-card{position:relative;display:grid;grid-template-columns:minmax(120px,40%) 1fr;min-height:255px;background:#0c0c0c;overflow:visible}.event-poster{display:block;min-height:255px;background:linear-gradient(140deg,#33251f,#161616);overflow:hidden}.event-poster img,.play-poster img{width:100%;height:100%;object-fit:cover}.poster-placeholder{height:100%;min-height:255px;display:grid;place-items:center;color:#bbb;font:700 20px/1.2 var(--cond);text-transform:uppercase;text-align:center;padding:16px;background:radial-gradient(ellipse at center,#39302b,#151515 72%)}.event-body{padding:16px 12px 14px;position:relative}.event-date{position:absolute;right:12px;top:-13px;min-width:55px;padding:6px 7px;background:var(--red);color:#eee;text-align:center;font:18px/1 var(--cond)}.event-date small{display:block;font:11px/1.2 var(--cond);margin-top:3px}.event-card h3,.play-card h3{font:700 19px/1.05 var(--cond);color:#d56a6d;text-decoration:underline;margin:12px 0 8px;padding-right:44px}.event-excerpt,.play-excerpt{font:14px/1.15 var(--cond);color:#eee;margin:0}.event-foot{display:flex;gap:3px;margin-top:18px}.event-foot .button{flex:1;padding:12px 5px;font-size:14px}.event-time{display:none}.repertoire-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.play-card{background:#101010}.play-poster{display:block;aspect-ratio:3/4;overflow:hidden;background:#222}.play-card h3{padding:0;margin:9px 0}.play-body{padding:2px 10px 12px}.play-excerpt{font-size:12px}.site-footer{background:#101010;border-top:1px solid #555;padding:30px 0 18px;color:#aaa}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px}.footer-heading{font:700 16px var(--cond);text-transform:uppercase;color:#ddd;margin-bottom:9px}.footer-copy,.footer-links{font:13px/1.5 var(--font);color:#aaa}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:4px 0}.footer-bottom{border-top:1px solid #333;margin-top:20px;padding-top:12px;display:flex;justify-content:space-between;font-size:11px;color:#777}.page-hero{margin-bottom:24px;padding:16px 0 12px;border-bottom:1px solid #555}.breadcrumbs{font:12px var(--cond);text-transform:uppercase;color:#999}.page-hero h1{font:700 31px/1.1 var(--cond);margin:7px 0 5px;color:#eee}.page-hero p{margin:0;color:#aaa}.archive-toolbar{display:flex;gap:5px;margin:15px 0}.filter-chip{border:1px solid #666;color:#ccc;padding:6px 10px;font:13px var(--cond)}.filter-chip.active{background:var(--red);border-color:var(--red);color:#fff}.single-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:18px}.single-content{color:#ddd}.single-content h2{font:700 25px var(--cond);color:#eee}.single-content img{margin-bottom:18px}.event-sidebar{background:#101010;border:1px solid #333;padding:16px;height:max-content}.event-sidebar h2{font:22px var(--cond)}.meta-row{padding:9px 0;border-bottom:1px solid #333;display:flex;justify-content:space-between;gap:10px;font-size:13px}.meta-row span{color:#999}.event-sidebar .button{width:100%;margin-top:14px}.empty-state{grid-column:1/-1;padding:20px;background:#111;border:1px solid #333;color:#aaa}.pagination{margin-top:24px}.pagination .nav-links{display:flex;gap:6px}.page-numbers{padding:6px 10px;background:#222;border:1px solid #444;color:#ddd}.page-numbers.current{background:var(--red)}
@media(max-width:900px){.header-top{min-height:150px;gap:16px}.brand{min-width:340px;gap:10px}.brand-mark{width:110px;height:70px;font-size:24px}.brand-name{font-size:13px}.site-shell{grid-template-columns:150px minmax(0,1fr);gap:14px}.main-nav a{font-size:19px}.hero{grid-template-columns:53% 47%}.hero-image{min-height:330px}.hero-copy{padding-right:18px}.hero h1{font-size:34px}.event-grid{grid-template-columns:1fr}.event-card{min-height:230px}.event-poster,.poster-placeholder{min-height:230px}.news-grid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:calc(100% - 24px)}.header-top{min-height:125px;grid-template-columns:1fr auto 1fr;gap:7px;padding:15px 0}.header-contact{font-size:9px}.header-contact strong{font-size:10px}.brand{min-width:0;flex-direction:column;gap:6px;text-align:center}.brand-mark{width:80px;height:47px;font-size:18px}.brand-name{font-size:10px;line-height:1.2}.brand-name small{font-size:9px}.header-rule{width:calc(100% - 24px)}.site-shell{display:block;padding-top:10px}.site-sidebar{position:relative;top:auto;margin-bottom:16px}.mobile-toggle{display:block;width:100%;border:1px solid #666;background:#151515;color:#eee;text-align:left;padding:8px 10px;font:18px var(--cond)}.main-nav{display:none;background:#111;padding:8px;margin:0}.main-nav.is-open{display:block}.main-nav ul{margin:0}.main-nav a{font-size:19px}.search-form{margin:10px 0}.calendar{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-image{min-height:210px;background:linear-gradient(0deg,#111 0%,transparent 40%),radial-gradient(ellipse at 52% 30%,#806850,#332a25 72%)}.hero-image:before{inset:18% 12% 7%}.hero-copy{padding:8px 17px 22px;background:#111}.hero h1{font-size:31px}.hero p{font-size:13px}.hero-actions{margin-top:14px}.button{font-size:14px}.welcome-copy{font-size:12px;margin:12px 0 22px}.section{margin:28px 0 36px}.section-title{font-size:22px}.event-grid{grid-template-columns:1fr;gap:17px}.event-card{grid-template-columns:38% 1fr;min-height:215px}.event-poster,.poster-placeholder{min-height:215px}.event-body{padding:14px 10px 10px}.event-card h3{font-size:18px}.event-excerpt{font-size:13px}.event-foot{margin-top:12px}.event-foot .button{font-size:13px;padding:10px 4px}.repertoire-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card{grid-template-columns:100px 1fr}.news-body h3{font-size:16px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.single-layout{grid-template-columns:1fr}}
.hero-image.has-photo:before,.hero-image.has-photo:after{display:none}
