/*
Theme Name: Chicago Workshop
Version: 1.1.0
Requires at least: 7.1
Requires PHP: 8.4
Text Domain: chicago-workshop
License: GPL-2.0-or-later
*/
@font-face{font-family:Barlow Condensed;src:url(assets/fonts/BarlowCondensed-SemiBold.ttf) format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Barlow Condensed;src:url(assets/fonts/BarlowCondensed-Bold.ttf) format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--paper:#fff;--ink:#20252c;--muted:#535c68;--accent:#87213d;--tint:#f6eef1;--line:#d8dce1;--blue:#1f466c;--soft:#f4f6f8;--max:1220px;--display:'Barlow Condensed','Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.23em}a:hover{color:var(--blue)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #1f70af;outline-offset:4px}h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.04;margin:0 0 .55em;letter-spacing:-.015em;text-wrap:balance}h1{font-size:clamp(3.2rem,7.3vw,6rem)}h2{font-size:clamp(2.1rem,4.2vw,3.6rem)}h3{font-size:1.9rem}p{margin:0 0 1.25em}p,li{max-width:72ch}.skip-link{position:absolute;top:-100px;left:15px;padding:12px 18px;background:#fff;z-index:100}.skip-link:focus{top:10px}.site-header{max-width:var(--max);padding:23px 30px 0;margin:auto}.header-main{display:flex;gap:30px;align-items:center;justify-content:space-between;padding-bottom:22px}.brand{color:var(--ink);text-decoration:none;display:flex;flex-direction:column;line-height:1}.brand strong{font:700 clamp(1.6rem,2.8vw,2.45rem)/1 var(--display);text-transform:uppercase;letter-spacing:-.02em}.brand small{font-size:12px;letter-spacing:.05em;line-height:1.5;margin-top:7px}.header-contact{font-weight:600;font-size:15px}.header-contact a{text-decoration:none}.navigation{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.navigation ul{display:flex;list-style:none;gap:0;margin:0;padding:0}.navigation a{display:block;padding:13px 28px;color:var(--ink);font-size:15px;font-weight:600;text-decoration:none;border-right:1px solid var(--line);min-height:50px}.navigation a:hover,.navigation .current-menu-item a{color:var(--accent);text-decoration:underline}.site-main{max-width:var(--max);padding:58px 30px 85px;margin:auto}.home .site-main{padding-top:0}.entry-title{max-width:18ch;margin:0 0 35px}.entry-content>*{margin-bottom:30px}.entry-content>.wp-block-heading{margin-top:50px;margin-bottom:20px}.entry-content>p,.entry-content>ol,.entry-content>ul{max-width:75ch}.hero-catalogue{display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center;padding:55px 0 58px;border-bottom:1px solid var(--ink);margin-bottom:0}.hero-copy h1{max-width:9ch;margin-bottom:24px}.hero-copy>p{max-width:39ch;font-size:19px;color:var(--muted);line-height:1.6}.hero-photo{position:relative;background:#191416;padding:0 34px;min-height:540px;display:grid;place-items:center;margin:0}.hero-photo img{width:auto;height:540px;object-fit:contain;max-width:100%}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:9px 14px;color:#fff;background:#251b21e6;font-size:12px;line-height:1.4;text-align:left}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 0}.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border-radius:0;background:var(--accent);padding:12px 23px;text-decoration:none;color:#fff;font-size:15px;font-weight:650;transition:background .18s ease-out}.wp-block-button__link:hover{background:var(--blue);color:#fff}.is-style-outline .wp-block-button__link{background:#fff;color:var(--ink);border:1px solid var(--ink)}.is-style-outline .wp-block-button__link:hover{background:var(--soft)}.service-index{display:grid;grid-template-columns:1.05fr 1.95fr;gap:65px;padding:60px 0;border-bottom:1px solid var(--line)}.service-index h2{max-width:9ch}.service-list{list-style:none;padding:0;margin:0}.service-list li{border-bottom:1px solid var(--line);max-width:none}.service-list li:first-child{border-top:1px solid var(--line)}.service-list a{display:flex;justify-content:space-between;gap:24px;padding:16px 0;text-decoration:none;font:600 1.8rem/1.2 var(--display);color:var(--ink)}.service-list a:hover{color:var(--accent)}.service-list svg{width:25px;height:25px;flex-shrink:0;align-self:center}.workshop-feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:62px 0 25px}.workshop-feature figure{margin:0;background:var(--soft)}.entry-content .workshop-feature img{width:100%;height:auto;max-height:none;aspect-ratio:1;object-fit:cover}.workshop-feature h2{max-width:10ch}.workshop-feature p{color:var(--muted)}.content-notice{background:var(--tint);padding:20px 24px;margin:25px 0;color:#572035;font-size:15px;line-height:1.55}.content-notice p:last-child{margin:0}.source-label{font-size:14px;color:var(--muted);margin:0 0 25px}.wp-block-image{margin:28px 0}.wp-block-image figcaption{font-size:14px;color:var(--muted);margin-top:10px}.entry-content .wp-block-image img{max-height:560px;object-fit:contain}.repair-list{columns:2;column-gap:50px}.repair-list li{break-inside:avoid;margin:0 0 10px}.wp-block-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.wp-block-details summary{font-weight:650;cursor:pointer;padding:7px 0}.wp-block-details[open] summary{margin-bottom:18px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}.gallery-grid figure{margin:0}.gallery-grid a{display:block;background:var(--soft)}.gallery-grid img{height:310px;width:100%;object-fit:contain}.gallery-grid figcaption{font-size:14px;line-height:1.4;margin-top:10px;color:var(--muted)}.gallery-grid a:hover{box-shadow:inset 0 0 0 2px var(--accent)}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);padding:25px 0}.contact-grid h2{font-size:2.2rem}.contact-grid a{overflow-wrap:anywhere}.site-footer{background:var(--blue);color:white}.footer-inner{max-width:var(--max);padding:45px 30px 25px;margin:auto}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:flex-start;padding-bottom:30px;border-bottom:1px solid #688097}.footer-top h2{font-size:2.3rem;max-width:13ch}.footer-top p{font-size:14px;margin:0;color:#e5edf4}.site-footer a{color:white}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;font-size:12px;color:#dfe8f0}.search-form{display:flex;gap:10px;flex-wrap:wrap}.search-field{padding:12px;border:1px solid var(--line)}.search-submit{padding:10px 20px;background:var(--accent);border:0;color:#fff;cursor:pointer}.search-item{padding:25px 0;border-bottom:1px solid var(--line)}.search-item h2{font-size:2rem}.photo-viewer{width:min(1180px,calc(100% - 30px));max-height:calc(100dvh - 30px);border:0;padding:0;background:#11151a;color:#fff}.photo-viewer::backdrop{background:#10151be8}.viewer-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 20px;border-bottom:1px solid #3d4652}.viewer-top p{font-size:14px;margin:0}.viewer-close,.viewer-prev,.viewer-next{min-width:48px;min-height:48px;background:transparent;border:1px solid #7b8795;color:#fff;cursor:pointer;display:grid;place-items:center}.viewer-close svg,.viewer-prev svg,.viewer-next svg{width:24px;height:24px}.viewer-stage{display:grid;grid-template-columns:65px 1fr 65px;align-items:center;gap:15px;padding:15px}.viewer-stage img{width:100%;height:min(67dvh,680px);object-fit:contain}.viewer-caption{padding:0 95px 20px}.viewer-caption h2{font-size:2rem;margin-bottom:6px}.viewer-caption p{margin:0;color:#d4dce5;font-size:14px}.viewer-error{padding:0 95px;color:#ffe0e0}.photo-viewer button:hover{background:#263140}body.viewer-open{overflow:hidden}.site-header,.site-main,.site-footer{animation:catalogue-open .24s ease-out}@keyframes catalogue-open{from{clip-path:inset(0 0 3% 0)}to{clip-path:inset(0 0 0 0)}}
@media(max-width:900px){.hero-catalogue{gap:25px}.hero-photo{padding:0;min-height:440px}.hero-photo img{height:440px}.service-index{gap:30px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid img{height:280px}.header-contact{max-width:185px;text-align:right}.workshop-feature{gap:35px}}
@media(max-width:620px){body{font-size:16px}.site-header{padding:20px 20px 0}.header-main{gap:12px;padding-bottom:20px}.header-contact{font-size:13px;max-width:125px}.brand small{font-size:10px;letter-spacing:0}.navigation ul{flex-wrap:wrap;justify-content:space-between}.navigation a{padding:13px 10px;border-right:0;font-size:13px}.site-main{padding:38px 20px 55px}.hero-catalogue{grid-template-columns:1fr;padding:35px 0;gap:30px}.hero-copy h1{font-size:4.2rem;max-width:10ch}.hero-copy>p{font-size:17px}.hero-photo{min-height:380px;max-width:100%;padding:0 25px}.hero-photo img{height:410px}.service-index{grid-template-columns:1fr;gap:22px;padding:40px 0}.service-index h2,.workshop-feature h2{max-width:none}.service-list a{font-size:1.7rem}.workshop-feature{grid-template-columns:1fr;gap:28px;padding-top:40px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.gallery-grid img{height:260px}.repair-list{columns:1}.contact-grid{grid-template-columns:1fr;gap:30px}.footer-inner{padding:35px 20px 20px}.footer-top,.footer-bottom{flex-direction:column;gap:20px}.viewer-top{padding:10px}.viewer-stage{grid-template-columns:45px 1fr 45px;gap:5px;padding:10px 5px}.viewer-prev,.viewer-next{min-width:44px;min-height:48px}.viewer-caption{padding:0 20px 20px}.viewer-stage img{height:55dvh}.viewer-error{padding:0 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* WordPress legacy Group wrapper uses one inner container. Keep the catalogue grid across it. */
.hero-catalogue>.wp-block-group__inner-container,.service-index>.wp-block-group__inner-container,.workshop-feature>.wp-block-group__inner-container,.contact-grid>.wp-block-group__inner-container{display:contents}
.hero-copy p{max-width:39ch;font-size:19px;color:var(--muted);line-height:1.6}
.hero-catalogue .hero-photo{margin:0}
.entry-content .hero-photo figcaption{color:#fff}
.hero-copy h1{font-size:clamp(3.2rem,6.5vw,5.4rem);max-width:14ch}
@media(max-width:620px){.hero-copy h1{font-size:clamp(2.8rem,13.5vw,3.7rem);max-width:none}.hero-copy p{font-size:17px}}

.wp-block-gallery.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px;align-items:start}
.wp-block-gallery.gallery-grid figure.wp-block-image{width:auto!important;margin:0!important;display:block;align-self:start;flex-grow:0}
.wp-block-gallery.gallery-grid figure.wp-block-image img{height:310px;width:100%;object-fit:contain}
.wp-block-gallery.gallery-grid figure.wp-block-image figcaption{position:static;background:none;color:var(--muted);padding:0;font-size:14px;text-align:left;max-height:none;overflow:visible;margin-top:10px}
@media(max-width:900px){.wp-block-gallery.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.wp-block-gallery.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.wp-block-gallery.gallery-grid figure.wp-block-image img{height:260px}}

.header-contact a{display:inline-flex;min-height:44px;align-items:center}.contact-methods a{display:inline-flex;min-height:44px;align-items:center}.footer-top a{display:inline-flex;min-height:44px;align-items:center}

.workshop-introduction{padding-top:48px;border-top:1px solid var(--line)}.workshop-introduction p{max-width:72ch}

/* Owner-approved charcoal, burgundy and light underlined link treatment. */
:root{--paper:#121214;--ink:#f2efeb;--muted:#c1bdbb;--accent:#9e2d4c;--action-label:#fff;--tint:#2a1d1d;--line:#706b72;--blue:var(--accent);--soft:#1b1a1e;color-scheme:dark}
html,body{background:var(--paper);color:var(--ink)}
a{color:var(--ink);text-decoration:underline;text-underline-offset:.23em;text-decoration-thickness:1px}
a:hover{color:#fff;text-decoration-thickness:2px}
.site-header,.site-main{background:var(--paper)}
.navigation{border-color:var(--line)}
.navigation a,.header-contact a{color:var(--ink);text-decoration:underline}
.navigation a:hover,.navigation .current-menu-item a{background:var(--accent);color:#fff;text-decoration:underline;text-decoration-thickness:2px}
.hero-catalogue{border-bottom-color:var(--line)}
.brand,.brand:hover{color:var(--ink);text-decoration:none}
.wp-block-button__link,.search-submit{background:var(--accent);color:#fff}
.wp-block-button__link:hover,.search-submit:hover{background:var(--accent);color:#fff;box-shadow:inset 0 0 0 2px var(--ink)}
.is-style-outline .wp-block-button__link{background:transparent;color:var(--ink);border-color:var(--ink)}
.is-style-outline .wp-block-button__link:hover{background:var(--accent);color:#fff}
.service-list a,.service-list a:hover{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px}
.service-list a:hover{text-decoration-thickness:2px}
.hero-photo{background:#171315}
.site-footer{background:#1b181c;color:var(--ink);border-top:1px solid var(--line)}
.footer-top{border-bottom-color:var(--line)}
.footer-top p,.footer-bottom{color:var(--muted)}
.site-footer a{color:var(--ink)}
.search-field{background:var(--paper);color:var(--ink);border-color:var(--line)}
.search-field::placeholder{color:var(--muted)}
.skip-link{background:#242027;color:#fff}
.content-notice{color:var(--ink)}
:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.gallery-grid a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.photo-viewer button:hover{background:var(--accent)}
.editor-styles-wrapper{background:var(--paper);color:var(--ink)}
