/*
Theme Name: Chester Stagecraft
Theme URI: https://theentertainer.ca
Author: Custom design for Chester McBain
Description: A custom editorial, classic-show-business WordPress theme. Designed for staging review.
Version: 0.5.0
Requires at least: 6.0
Text Domain: chester-stagecraft
*/
:root{--ink:#172126;--cream:#f6f1e8;--paper:#fffaf1;--burgundy:#682d34;--brass:#a7834d;--muted:#65635f;--line:#d9cdbb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.65}a{color:inherit}img{max-width:100%;height:auto}.container{width:min(1160px,calc(100% - 40px));margin:auto}.eyebrow,.nav,.button,.meta,.site-footer,.section-kicker,.utility{font-family:Arial,Helvetica,sans-serif}.utility{background:var(--ink);color:#f6f1e8;text-align:center;padding:8px 12px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.masthead{background:var(--paper);border-bottom:1px solid var(--line)}.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.05}.brand strong{font-size:clamp(23px,3vw,34px);font-weight:normal;letter-spacing:-.04em}.brand span{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.27em;text-transform:uppercase;color:var(--burgundy);margin-top:7px}.nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:12px;text-transform:uppercase;letter-spacing:.09em}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav .book{background:var(--burgundy);color:white;padding:12px 17px}.hero{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.hero-copy{padding:95px 55px 90px 0;align-self:center}.eyebrow{color:#d8b88a;font-size:11px;text-transform:uppercase;letter-spacing:.24em;font-weight:bold}.hero h1{font-size:clamp(48px,6.1vw,91px);font-weight:normal;letter-spacing:-.065em;line-height:1.02;margin:22px 0}.hero p{font-size:18px;color:#e6ded2;max-width:510px}.hero-media{position:relative;min-height:480px;background:linear-gradient(135deg,#3a3532,#171f22)}.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(1.06)}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,33,38,.35),transparent 45%)}.hero-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:30px;color:#b9b1a4;font-family:Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:12px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;padding:13px 21px;background:var(--brass);color:#161b1d;text-decoration:none;font-size:12px;font-weight:bold;letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--brass)}.button.outline{background:transparent;color:var(--paper);border-color:#a8a093}.button.dark{background:var(--burgundy);color:white;border-color:var(--burgundy)}.chapter{padding:86px 0}.section-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:var(--burgundy);font-weight:bold}.chapter h2,.page-heading h1{font-size:clamp(37px,4vw,60px);font-weight:normal;line-height:1.1;letter-spacing:-.04em;margin:13px 0 22px}.chapter-intro{max-width:680px;color:#575550;font-size:18px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}.feature-card{background:var(--paper);border:1px solid var(--line);padding:33px;min-height:250px}.feature-card .number{font-family:Arial,sans-serif;color:var(--burgundy);font-size:12px;letter-spacing:.2em}.feature-card h3{font-size:28px;font-weight:normal;line-height:1.15;margin:26px 0 10px}.feature-card p{color:#66625d;font-size:15px}.feature-card a{text-decoration:none;border-bottom:1px solid var(--brass)}.dark-section{background:#20282b;color:#f7f0e6}.dark-section .section-kicker{color:#c9a575}.dark-section .chapter-intro{color:#c8c5bd}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo-tile{aspect-ratio:4/3;background:#3a3630;display:flex;align-items:center;justify-content:center;color:#e6d9c8;text-align:center;font:12px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;overflow:hidden}.photo-tile img{width:100%;height:100%;object-fit:cover}.archive-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.archive-links a{border:1px solid #847a6f;text-decoration:none;padding:12px 17px;font:12px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.closing{background:#e7d8c2;border-top:1px solid #cbbca8;text-align:center}.closing h2{max-width:850px;margin:12px auto 26px}.site-footer{background:#111b1f;color:#e9e3d9;padding:38px 0;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.site-footer a{color:#e9e3d9}.page-heading{background:#20282b;color:white;padding:65px 0}.content-wrap{padding:55px 0 90px;max-width:920px}.content-wrap img{height:auto}.content-wrap a{color:var(--burgundy)}.wp-block-button__link{border-radius:0}.edit-link{display:block;margin-top:30px}.sr-only{position:absolute;left:-9999px}body.admin-bar .masthead{top:32px}@media(max-width:850px){.hero-grid,.split{grid-template-columns:1fr}.hero-copy{padding:65px 0}.hero-media{min-height:330px}.cards{grid-template-columns:1fr}.masthead-inner{align-items:flex-start;flex-direction:column}.nav{gap:12px}.chapter{padding:58px 0}}@media(max-width:480px){.hero h1{font-size:50px}.hero-media{min-height:260px}.feature-card{min-height:0}.nav{font-size:11px}.utility{font-size:10px}}

/* Rotating homepage photography */
.hero-media .chester-slide{opacity:0;transition:opacity 1.1s ease;z-index:0;object-position:center center;filter:none}.hero-media .chester-slide.is-active{opacity:1}.hero-media:after{pointer-events:none}.gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);background:rgba(15,20,23,.65);border:1px solid rgba(255,255,255,.4);color:#fff;padding:12px 14px;font-size:23px;cursor:pointer}.gallery-prev{left:12px}.gallery-next{right:12px}.gallery-arrow:focus-visible{outline:3px solid #d8b88a}.gallery-counter{position:absolute;z-index:3;bottom:15px;right:16px;background:rgba(15,20,23,.7);color:white;padding:6px 12px;font:12px Arial,sans-serif;letter-spacing:.12em}@media(prefers-reduced-motion:reduce){.hero-media .chester-slide{transition:none}}

/* v0.3.0: make the active photograph the top visible layer. */
.hero-media .chester-slide{z-index:0;pointer-events:none}
.hero-media .chester-slide.is-active{z-index:1}

/* v0.4.0: only one photograph is displayed at a time; avoid image stacking artifacts. */
.hero-media img.chester-slide{display:none;opacity:1;transition:none;z-index:1}
.hero-media img.chester-slide.is-active{display:block;opacity:1}

/* Version 0.5 / The Experience: editorial event-planner presentation */
.experience-hero{background:#172126;color:#fffaf1;padding:100px 0 110px;border-bottom:6px solid #a7834d}.experience-hero-inner{max-width:1050px}.experience-hero .section-kicker{color:#d7b783}.experience-hero h1{font-size:clamp(60px,9vw,124px);font-weight:normal;line-height:.98;letter-spacing:-.065em;margin:24px 0 32px}.experience-hero h1 em{font-weight:normal;color:#d9b77e}.experience-hero p{max-width:670px;font-size:21px;color:#e4dbcf;margin-bottom:30px}.experience-intro{padding:95px 0;background:#fffaf1}.experience-intro-grid{display:grid;grid-template-columns:1fr 2fr;gap:50px}.experience-intro h2,.experience-panel h2,.experience-finale h2{font-weight:normal;font-size:clamp(39px,5vw,70px);letter-spacing:-.045em;line-height:1.1;margin:0 0 25px}.experience-intro p,.experience-panel p,.experience-finale p{font-size:19px;max-width:680px}.experience-panel{padding:90px 0;border-top:1px solid #d9cdbb}.experience-panel-alt{background:#e9ded0}.experience-panel-grid{display:grid;grid-template-columns:1fr 2fr;gap:50px}.experience-index{font:12px Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#682d34;padding-top:10px}.experience-panel .section-kicker{margin-bottom:15px}.experience-panel p{color:#575550}.experience-link{display:inline-block;margin-top:20px;text-decoration:none;font:700 13px Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;border-bottom:2px solid #a7834d;padding-bottom:10px}.experience-finale{padding:90px 0;background:#20282b;color:#fffaf1}.experience-finale .section-kicker{color:#d7b783}.experience-finale p{color:#ddd5c9}.experience-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px}.experience-actions a{border:1px solid #a7834d;padding:15px 20px;text-decoration:none;font:12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em}.experience-actions a:hover{background:#a7834d;color:#172126}@media(max-width:760px){.experience-hero{padding:65px 0}.experience-intro,.experience-panel,.experience-finale{padding:55px 0}.experience-intro-grid,.experience-panel-grid{grid-template-columns:1fr;gap:18px}.experience-hero h1{font-size:clamp(50px,12vw,80px)}}


/* Homepage announcement banner — below navigation, above hero */
.chester-announcement{background:#752e3b;color:#fff5e8;border-top:1px solid #a35b62;border-bottom:3px solid #c4a274}
.announcement-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:27px;padding-bottom:29px}
.announcement-copy{min-width:0;flex:1}
.announcement-eyebrow{font:700 11px/1.5 Arial,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:#f3d49e;margin-bottom:7px}
.chester-announcement h2{color:#fff9f0;font:normal clamp(25px,3vw,39px)/1.12 Georgia,serif;margin:0 0 8px}
.chester-announcement p{font:16px/1.55 Arial,sans-serif;color:#f8e9df;margin:0;max-width:850px}
.announcement-button{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;background:#f0d6ad;color:#332321!important;border:1px solid #f0d6ad;border-radius:3px;padding:15px 22px;font:700 13px/1.2 Arial,sans-serif;text-decoration:none;transition:background .2s ease}
.announcement-button:hover,.announcement-button:focus{background:#fff4dd;color:#332321!important}
@media(max-width:700px){.announcement-inner{display:block;padding-top:22px;padding-bottom:24px}.announcement-button{margin-top:19px}.chester-announcement h2{font-size:27px}}
