/* Authoritative shared roles. Edit tokens here or Appearance > Studio Design System. */
:root{--pws-shadow-color:rgba(0,0,0,.7);
 --pws-font-display:"Amatic SC",cursive;--pws-font-heading:"Barlow Condensed",sans-serif;--pws-font-body:"Space Grotesk",sans-serif;--pws-font-ui:"Space Mono",monospace;
 --pws-color-ink:#111;--pws-color-dark:#262625;--pws-color-accent:#cf4ee8;--pws-color-link:#a328b8;--pws-color-link-dark:#e487f4;--pws-color-paper:#f4f0eb;--pws-color-muted:#555;
 --pws-size-title:clamp(56px,6vw,82px);--pws-size-display:clamp(72px,8.75vw,126px);--pws-size-section:clamp(36px,4.2vw,64px);--pws-size-card:23px;--pws-size-body:18px;--pws-size-compact:16px;--pws-size-ui:12px;
 --pws-weight-heading:800;--pws-leading-title:1;--pws-leading-section:1.05;--pws-leading-body:1.6;--pws-tracking-heading:-1px;--pws-tracking-ui:.6px;
 --pws-container:1200px;--pws-container-editorial:720px;--pws-gutter:32px;--pws-section-space:64px;--pws-gap:24px;
 --pws-card-radius:20px;--pws-card-border:1px solid var(--pws-color-ink);--pws-card-shadow:6px 6px 0 var(--pws-shadow-color);--pws-card-padding:24px;
 --pws-control-height:46px;--pws-control-radius:999px;--pws-control-border:1px solid var(--pws-color-ink);--pws-control-shadow:6px 6px 0 var(--pws-shadow-color);--pws-control-padding:13px 24px;--pws-focus:3px solid var(--pws-color-link);
 --pws-paper-width:1384px;--pws-paper-height:82px;--pws-paper-offset:-16px;
}
/* One scrollbar-aware breakout. JS initializes before body and refreshes on resize. */
:root:root:root :is(.pws-home.alignfull,.pws-comics-page,.pws-contact,.pws-live,.pws-reader){box-sizing:border-box;position:relative!important;left:50%!important;width:var(--pws-viewport-width,100%)!important;max-width:none!important;margin-left:calc(var(--pws-viewport-width,100%) / -2)!important;margin-right:0!important;padding-inline:0!important}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) :is(.alignfull,.pws-live__section,.pws-live__hero){width:100%!important;max-width:none!important;left:auto!important;margin-inline:0!important}
:root:root:root :is(.pws-home-container,.pws-comics-container,.pws-contact-container){box-sizing:border-box;width:min(calc(100% - 2 * var(--pws-gutter)),var(--pws-container))!important;max-width:var(--pws-container)!important;padding-inline:0!important;margin-inline:auto!important}
:root:root:root :is(.site-header__inner,.site-footer__inner){box-sizing:border-box;width:min(calc(100% - 2 * var(--pws-gutter)),var(--pws-container))!important;max-width:var(--pws-container)!important;margin-inline:auto!important}
:root:root:root .pws-live .pws-live__inner{width:min(100%,var(--pws-container))!important;max-width:var(--pws-container)!important;margin-inline:auto!important}
:root:root:root .pws-live .pws-live__section{padding:var(--pws-section-space) var(--pws-gutter)!important}
:root:root:root .pws-live .pws-live__clients{padding-block:24px!important;background:#fff!important}
:root:root:root .pws-reader-hero__inner{padding-inline:max(var(--pws-gutter),calc((var(--pws-viewport-width,100%) - var(--pws-container))/2))!important}
/* Page titles and explicit display variant. */
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader){font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) p{font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) h3{font:700 var(--pws-size-card)/1.2 var(--pws-font-body)!important}
:root:root:root :is(.pws-home-hero__subtitle,.pws-about-subtitle){font:800 clamp(22px,2.5vw,32px)/1.2 var(--pws-font-heading)!important;letter-spacing:-.5px!important;text-transform:uppercase}
:root:root:root .pws-live__hero-subtitle{font:500 clamp(20px,2.4vw,28px)/1.35 var(--pws-font-body)!important}
:root:root:root .site-header__nav{font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important}
:root:root:root .site-header__nav .wp-block-navigation-item__content{font-size:var(--pws-size-ui)!important}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),textarea){box-sizing:border-box;max-width:100%;min-height:var(--pws-control-height);padding:12px 14px;border:2px solid var(--pws-color-ink);border-radius:0;background:#fff;font:400 var(--pws-size-compact)/1.4 var(--pws-font-body)}
:root:root:root .pws-contact .ff-btn-submit{min-height:var(--pws-control-height)!important;padding:var(--pws-control-padding)!important;border:var(--pws-control-border)!important;border-radius:var(--pws-control-radius)!important;background:var(--pws-color-accent)!important;color:var(--pws-color-ink)!important;box-shadow:var(--pws-control-shadow)!important;font:700 var(--pws-size-ui)/1.4 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important}
:root:root:root .pws-contact .ff-btn-submit:hover{background:#efd4f5!important;transform:translate(3px,3px);box-shadow:2px 2px 0 var(--pws-shadow-color)!important}
:root:root:root :is(.pws-contact-header,.pws-reader-hero,.pws-live__hero) h1,:root:root:root .pws-type-title{font:400 var(--pws-size-title)/var(--pws-leading-title) var(--pws-font-display)!important;letter-spacing:0!important;text-transform:uppercase;overflow-wrap:break-word}
:root:root:root :is(.pws-home-hero,.pws-about-copy) h1,:root:root:root .pws-type-display{font:400 var(--pws-size-display)/.92 var(--pws-font-display)!important;letter-spacing:-1px!important;text-transform:uppercase}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) h2,:root:root:root .pws-type-section{font:var(--pws-weight-heading) var(--pws-size-section)/var(--pws-leading-section) var(--pws-font-heading)!important;letter-spacing:var(--pws-tracking-heading)!important;text-transform:uppercase}
:root:root:root :is(.pws-comics-gallery__copy h2,.pws-card__title,.pws-home-project-card__title,.pws-home-sample-card strong,.pws-strips-card strong,.pws-live__benefit h3,.pws-live__service h3,.pws-live__profile-details h3,.pws-live__booking-copy h3,.pws-live__press-copy h4,.pws-type-card){font:700 var(--pws-size-card)/1.2 var(--pws-font-body)!important;letter-spacing:-.5px!important;text-transform:none!important}
:root:root:root :is(.pws-home-feature__body,.pws-home-live p,.pws-about-copy p:not(.pws-about-subtitle),.pws-comics-feature__copy p,.pws-reader__note p,.pws-type-body){font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)!important}
:root:root:root :is(.pws-live__benefit p,.pws-live__testimonial p,.pws-live__booking-copy p,.pws-comics-gallery__excerpt,.pws-portfolio__excerpt){font:400 var(--pws-size-compact)/1.5 var(--pws-font-body)!important}
:root:root:root :is(.pws-home-eyebrow,.pws-meta,.pws-card__meta,.pws-comics-gallery__label,.pws-comics-signup__label,.pws-reader-hero__eyebrow,.pws-reader-hero__label,.pws-reader__page figcaption,.pws-strips-card__label,.pws-home-text-link,.pws-comics-gallery__read,.pws-strips-card__read,.pws-type-label){font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-transform:uppercase}
:root:root:root :is(.pws-home-text-link a,.pws-comics-gallery__read,.pws-strips-card__read,.pws-home-eyebrow,.pws-comics-signup__label,.pws-live__press-copy .pws-live__link a){color:var(--pws-color-link)!important}
:root:root:root :is(.pws-reader-hero__eyebrow,.pws-about-subtitle){color:var(--pws-color-link-dark)!important}
:root:root:root .pws-home .pws-home-chronic-band .pws-home-eyebrow{color:var(--pws-color-ink)!important}
/* Pill controls. Compact toolbar is an explicit variant, not another system. */
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) :is(.wp-block-button__link,a.pws-home-button,.pws-reader-control),:root:root:root .pws-newsletter button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:var(--pws-control-height)!important;padding:var(--pws-control-padding)!important;border:var(--pws-control-border)!important;border-radius:var(--pws-control-radius)!important;box-shadow:var(--pws-control-shadow)!important;background:#fff!important;color:var(--pws-color-ink)!important;font:700 var(--pws-size-ui)/1.4 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-transform:uppercase;text-decoration:none!important;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}
:root:root:root :is(.pws-home-button--primary,.pws-about-actions,.pws-home-contact,.pws-comics-contact) .wp-block-button__link,:root:root:root .pws-newsletter button{background:var(--pws-color-accent)!important}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader) :is(.wp-block-button__link,a.pws-home-button,.pws-reader-control):hover,:root:root:root .pws-newsletter button:hover{background:#efd4f5!important;transform:translate(3px,3px);box-shadow:2px 2px 0 var(--pws-shadow-color)!important}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter,.site-footer) :is(a,button,input,select,textarea):focus-visible{outline:var(--pws-focus)!important;outline-offset:4px!important}
:root:root:root :is(.pws-home-hero,.pws-contact-header,.pws-reader-hero,.pws-live__hero,.pws-live__about,.site-footer) :is(a,button,input,select,textarea):focus-visible{outline-color:var(--pws-color-link-dark)!important}
:root:root:root .site-footer a:hover{color:var(--pws-color-link-dark)!important}
:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(button,input,select):disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}
:root:root:root :is(.pws-comics-gallery__tabs a,.pws-comics-gallery__pagination a,.pws-portfolio__pagination a,.pws-comics-gallery__sort select,.pws-comics-gallery__sort button,.pws-portfolio__filters select,.pws-portfolio__filters button,.pws-marquee-toggle,.pws-gallery-reset){box-sizing:border-box;min-height:44px!important;padding:10px 14px!important;border:2px solid var(--pws-color-ink)!important;border-radius:0!important;background:#fff!important;color:var(--pws-color-ink)!important;font:700 var(--pws-size-ui)/1.4 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-transform:uppercase;cursor:pointer}
:root:root:root :is(.pws-comics-gallery__sort select,.pws-portfolio__filters select){padding-right:40px!important;background-position:right 14px center!important;max-width:100%}
:root:root:root :is(.pws-comics-gallery__sort label,.pws-portfolio__filters label,.pws-gallery-results){font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important}
:root:root:root :is(.pws-comics-gallery__tabs,.pws-comics-gallery__pagination,.pws-portfolio__pagination) a[aria-current]{background:var(--pws-color-accent)!important}
/* Shared cards; existing content geometry and masonry remain. */
:root:root:root :is(.pws-comics-gallery__card,.pws-portfolio__card,.pws-home-project-card,.pws-home-sample-card,.pws-strips-card,.pws-live__benefit,.pws-live__testimonial,.pws-live__press-card,.pws-about-reach-card){border:var(--pws-card-border)!important;border-radius:var(--pws-card-radius)!important;box-shadow:var(--pws-card-shadow)!important;background:#fff}
:root:root:root :is(.pws-comics-gallery__copy,.pws-live__benefit,.pws-live__testimonial,.pws-live__press-copy){padding:var(--pws-card-padding)!important}
:root:root:root .pws-about-reach-card{max-width:var(--pws-container-editorial);padding:48px 32px!important}
:root:root:root .pws-home-hero__inner{--pws-hero-gutter:max(var(--pws-gutter),calc((var(--pws-viewport-width,100%) - var(--pws-container))/2));padding-inline:var(--pws-hero-gutter)!important}
:root:root:root :is(.pws-home-samples,.pws-comics-archive,.pws-about-reach){padding-block:var(--pws-section-space)!important}
/* Shared newsletter, including its heading/copy wrappers. */
:root:root:root :is(.pws-home-signup,.pws-comics-signup){padding:var(--pws-section-space) var(--pws-gutter)!important;text-align:center}
:root:root:root :is(.pws-home-signup,.pws-comics-signup) h2{margin:12px 0 16px!important}
:root:root:root :is(.pws-home-signup,.pws-comics-signup)>p:not(.pws-home-eyebrow):not(.pws-comics-signup__label){font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)!important}
:root:root:root .pws-newsletter{display:block!important;box-sizing:border-box;width:min(100%,620px)!important;max-width:620px!important;margin:24px auto 0!important;text-align:left}
:root:root:root .pws-newsletter form{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
:root:root:root .pws-newsletter label{display:block;font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui);margin-bottom:8px}
:root:root:root .pws-newsletter__row{display:flex!important;width:100%!important;gap:16px;align-items:center}
:root:root:root .pws-newsletter input[type=email]{box-sizing:border-box;flex:1;min-width:0;width:100%!important;max-width:none!important;height:var(--pws-control-height)!important;min-height:var(--pws-control-height)!important;border:2px solid var(--pws-color-ink)!important;border-radius:0!important;background:#fff!important;color:var(--pws-color-ink);padding:10px 14px!important;font:400 var(--pws-size-compact)/1.25 var(--pws-font-body)!important}
:root:root:root .pws-newsletter button{flex-shrink:0}
.pws-newsletter__status{font:400 var(--pws-size-compact)/1.5 var(--pws-font-body)}
:root:root:root :is(.pws-home-contact,.pws-comics-contact){padding-block:var(--pws-section-space)!important}
:root:root:root :is(.pws-home-contact,.pws-comics-contact) p{font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)!important}
/* Existing hand-drawn social artwork, not substituted platform glyphs. */
:root:root:root :is(.site-footer__social-button,.pws-live__social figure,.pws-about-social .wp-block-button){width:auto!important;margin:0!important}
:root:root:root :is(.site-footer__social-button,.pws-live__social,.pws-about-social) a{display:inline-flex!important;width:46px!important;height:46px!important;min-height:46px!important;align-items:center!important;justify-content:center!important;padding:8px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;transform:none!important}
:root:root:root :is(.pws-social-icon,.pws-live__social img){width:30px!important;height:30px!important;object-fit:contain!important}
:root:root:root .pws-live__social img,:root:root:root .site-footer .pws-social-icon{filter:invert(1)}
.pws-client-marquee[data-paused=true] .pws-client-marquee__track{animation-play-state:paused!important}
.pws-marquee-toggle{display:none;margin-top:16px}.pws-marquee-toggle.is-ready{display:inline-flex}
.pws-marquee-toggle[hidden]{display:none!important}
.pws-reader__transcript{max-width:780px;margin:24px auto;padding:16px;border:1px solid var(--pws-color-ink);font:400 var(--pws-size-body)/var(--pws-leading-body) var(--pws-font-body)}
@media(max-width:700px){:root{--pws-gutter:24px;--pws-section-space:48px;--pws-size-display:clamp(56px,14vw,82px)}.pws-newsletter__row{flex-direction:column;align-items:stretch}:root:root:root .pws-newsletter button{width:100%}:root:root:root .pws-portfolio__filters label{max-width:100%;margin-left:0!important}:root:root:root .pws-about-portrait{width:calc(100% + var(--pws-gutter))!important}}
@media(prefers-reduced-motion:reduce){:root:root:root *{scroll-behavior:auto!important}.pws-client-marquee__track{animation:none!important}:root:root:root :is(.wp-block-button__link,.pws-reader-control,.pws-newsletter button){transition:none!important;transform:none!important}}

:root:root:root :is(.site-header__brand,.site-header__brand a,.site-footer__brand,.site-footer__brand a){font:700 24px/1.2 var(--pws-font-ui)!important;letter-spacing:-1px!important;text-transform:uppercase}
:root:root:root .site-footer__nav-items{font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important}
:root:root:root .pws-gallery-reset{display:inline-flex;align-items:center;text-decoration:none}

/* Button decoration belongs to the clickable link, never its Gutenberg wrapper. */
:root:root:root .wp-block-button.pws-home-button{display:inline-block!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;transform:none!important}
:root:root:root :is(.site-header,.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(.wp-block-button__link,a.pws-home-button,.pws-reader-control,.ff-btn-submit,.pws-newsletter button):focus{outline:none!important}
:root:root:root :is(.site-header,.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(.wp-block-button__link,a.pws-home-button,.pws-reader-control,.ff-btn-submit,.pws-newsletter button):focus-visible{outline:none!important;box-shadow:var(--pws-control-shadow),inset 0 0 0 2px var(--pws-color-ink)!important}
/* Keyboard focus on unframed navigation links stays visible. */
:root:root:root .site-header__nav :is(a,button):focus-visible{outline:2px solid var(--pws-color-link)!important;outline-offset:4px}
/* Contact CTA is a Navigation link, not a Gutenberg Button block. */
:root:root:root .site-header .site-header__nav .site-header__contact-link > .wp-block-navigation-item__content:is(:focus,:active){outline:none!important;outline-offset:0!important;text-decoration:none!important}
:root:root:root .site-header .site-header__nav .site-header__contact-link > .wp-block-navigation-item__content:focus-visible{outline:none!important;outline-offset:0!important;box-shadow:var(--pws-control-shadow),inset 0 0 0 2px var(--pws-color-ink)!important;text-decoration:none!important}

/* Mobile navigation: paper list variant of the shared header component.
   WordPress retains its native dialog, submenu toggle and focus management. */
:root{--pws-menu-size:16px;--pws-menu-row-space:24px;--pws-home-mobile-hero-height:640px;--pws-home-mobile-gap-reduction:calc(var(--pws-gap) * 1.5)}
@media(max-width:1200px){
 :root:root:root .site-header .site-header__inner{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;padding-inline:0!important;gap:16px!important}
 :root:root:root .site-header .site-header__brand{flex:0 1 auto!important;margin:0 auto 0 0!important;min-width:0;text-align:left!important}
 :root:root:root .site-header .site-header__nav{flex:0 0 auto!important;margin:0!important}
}
@media(max-width:640px){
 :root:root:root .site-header .site-header__brand,:root:root:root .site-header .site-header__brand a{font-size:clamp(14px,4.3vw,20px)!important;letter-spacing:-.6px!important;white-space:nowrap}
 :root:root:root .site-header .site-header__nav{margin-left:auto!important}
}
:root:root:root .site-header__nav .wp-block-navigation__responsive-container.is-menu-open{padding:96px var(--pws-gutter) var(--pws-section-space)!important;background:var(--pws-color-paper)!important;color:var(--pws-color-ink)!important}
:root:root:root .site-header__nav .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:0!important;align-items:stretch!important;gap:0!important}
:root:root:root .site-header__nav .is-menu-open .wp-block-navigation__container{width:100%!important;max-width:560px!important;margin-left:auto!important;align-items:stretch!important;gap:0!important}
:root:root:root .site-header__nav .is-menu-open .wp-block-navigation-item{box-sizing:border-box;width:100%!important;justify-content:flex-end!important;border:0!important;border-bottom:1px solid var(--pws-color-muted)!important}
:root:root:root .site-header__nav .is-menu-open .wp-block-navigation-item__content{font:700 var(--pws-menu-size)/1.5 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-transform:uppercase;text-align:right!important;min-height:44px;box-sizing:border-box}
:root:root:root .site-header__nav .is-menu-open li.site-header__work-menu{border-top:1px solid var(--pws-color-muted)!important;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;padding-top:var(--pws-menu-row-space)!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu > button.wp-block-navigation-item__content{display:block!important;width:100%!important;text-align:right!important;min-height:44px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:none!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu > button.wp-block-navigation-item__content:focus-visible{outline:var(--pws-focus)!important;outline-offset:4px!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu > .wp-block-navigation__submenu-icon{display:none!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu > .wp-block-navigation__submenu-container{box-sizing:border-box;flex-basis:100%!important;width:100%!important;min-width:0!important;padding:8px 40px var(--pws-menu-row-space) 0!important;margin:0!important;gap:8px!important;background:transparent!important;color:var(--pws-color-muted)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu .wp-block-navigation__submenu-container .wp-block-navigation-item{border:0!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content{width:100%!important;color:var(--pws-color-muted)!important;text-align:right!important;padding:12px 0!important;white-space:normal!important}
:root:root:root .site-header__nav .is-menu-open .site-header__work-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{color:var(--pws-color-link)!important}
:root:root:root .site-header__nav .is-menu-open .site-header__contact-link{border:0!important;margin-top:var(--pws-gap)!important;align-items:flex-end!important}
:root:root:root .site-header__nav .is-menu-open .site-header__contact-link > .wp-block-navigation-item__content{display:inline-flex!important;width:auto!important;min-height:var(--pws-control-height)!important;padding:var(--pws-control-padding)!important;border:var(--pws-control-border)!important;border-radius:var(--pws-control-radius)!important;box-shadow:var(--pws-control-shadow)!important;background:var(--pws-color-accent)!important;color:var(--pws-color-ink)!important;font-size:var(--pws-size-ui)!important}
:root:root:root .site-header__nav .is-menu-open .wp-block-navigation__responsive-container-close{right:var(--pws-gutter)!important}
/* Portrait remains bottom anchored; reducing the hero height removes half the
   existing 72px mobile gap without resizing the photo or changing the tear. */
@media(max-width:767px){
 :root:root:root .pws-home .pws-home-hero__inner{min-height:calc(var(--pws-home-mobile-hero-height) - var(--pws-home-mobile-gap-reduction))!important}
}

/* Mobile About: portrait-first editorial layout and progressive disclosure. */
:root:root:root .pws-about-more{margin:0!important}
:root:root:root .pws-about-more > summary{display:none}
@media(max-width:850px){
 :root:root:root .pws-about-page .pws-contact-header__face{padding:var(--pws-section-space) 0!important}
 :root:root:root .pws-about-page .pws-about-hero__inner{grid-template-columns:minmax(0,1fr)!important;gap:var(--pws-section-space)!important}
 :root:root:root .pws-about-page .pws-about-portrait{grid-row:1!important;width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;justify-self:stretch!important}
 :root:root:root .pws-about-page .pws-about-copy{grid-row:2!important}
 :root:root:root .pws-about-more > summary{display:flex!important;align-items:center;min-height:44px;width:fit-content;padding:0!important;list-style:none;cursor:pointer;color:var(--pws-color-link-dark)!important;font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui);text-transform:uppercase}
 .pws-about-more > summary::-webkit-details-marker{display:none}
 .pws-about-more > summary::after{content:' ›';margin-left:8px}
 .pws-about-more[open] > summary::after{content:' −'}
 :root:root:root .pws-about-more > summary:focus-visible{outline:var(--pws-focus)!important;outline-color:var(--pws-color-link-dark)!important;outline-offset:4px}
 :root:root:root .pws-about-more__content{margin-top:16px!important}
}

/* Shared keyboard focus: understated treatment, independent of selection.
   These tokens are the single adjustment point for thickness and spacing. */
:root{--pws-focus-line:2px;--pws-focus-inset:2px;--pws-focus-underline-offset:4px;--pws-focus-field:var(--pws-color-link)}
:root:root:root:root:root:root :is(.site-header,.site-footer,.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(a,button,input,select,textarea,summary):focus:not(:focus-visible){outline:none!important}
/* Ordinary text links use an underline, including navigation and disclosure. */
:root:root:root:root:root:root :is(.site-header,.site-footer,.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) a:focus-visible,
:root:root:root:root:root:root .site-header__nav .site-header__work-menu > button:focus-visible,
:root:root:root:root:root:root .pws-about-more > summary:focus-visible{outline:none!important;text-decoration:underline!important;text-decoration-thickness:var(--pws-focus-line)!important;text-underline-offset:var(--pws-focus-underline-offset)!important}
/* Decoration stays on the clickable control. Native buttons still work with
   Enter/Space; focus is shown only when the browser determines it is needed. */
:root:root:root:root:root:root :is(.site-header,.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(.wp-block-button__link,a.pws-home-button,.pws-reader-control,.ff-btn-submit,.pws-newsletter button,.pws-gallery-reset,.pws-comics-gallery__tabs a,.pws-comics-gallery__pagination a,.pws-portfolio__pagination a,.pws-comics-gallery__sort button,.pws-portfolio__filters button,.site-header__contact-link > .wp-block-navigation-item__content):focus-visible{outline:none!important;text-decoration:none!important;box-shadow:var(--pws-control-shadow),inset 0 0 0 var(--pws-focus-inset) var(--pws-control-focus-ink,var(--pws-color-ink))!important}
/* Compact toolbar controls retain their flat geometry. */
:root:root:root:root:root:root :is(.pws-gallery-reset,.pws-comics-gallery__tabs a,.pws-comics-gallery__pagination a,.pws-portfolio__pagination a,.pws-comics-gallery__sort button,.pws-portfolio__filters button):focus-visible{box-shadow:inset 0 0 0 var(--pws-focus-inset) var(--pws-color-ink)!important}
.pws-control--dark{--pws-control-focus-ink:#fff}
/* Change the existing field border, adding only a thin matching ring. */
:root:root:root:root:root:root :is(.pws-home,.pws-comics-page,.pws-contact,.pws-live,.pws-reader,.pws-newsletter) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea):focus-visible{border-color:var(--pws-focus-field)!important;outline:1px solid var(--pws-focus-field)!important;outline-offset:1px!important;box-shadow:none!important}
/* Icon-only links need a visible shape rather than an invisible underline. */
:root:root:root:root:root:root :is(.site-footer__social-button,.pws-live__social,.pws-about-social) a:focus-visible{outline:2px solid currentColor!important;outline-offset:0!important;text-decoration:none!important}
:root:root:root:root:root:root .site-header__nav :is(.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close):focus-visible{outline:none!important;box-shadow:inset 0 0 0 var(--pws-focus-inset) var(--pws-color-ink)!important}

/* One filter/sort menu model, progressive enhancement of GET controls. */
:root:root:root:root:root:root .pws-choice-original{display:none!important}
:root:root:root:root:root:root :is(.pws-comics-gallery__toolbar,.pws-comics-gallery__sort,.pws-portfolio__filters){display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;justify-content:flex-start!important;gap:16px!important}
.pws-choice{position:relative;z-index:5;margin:0!important;min-width:140px}
.pws-choice[open]{z-index:10}
:root:root:root:root:root:root .pws-choice > summary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:var(--pws-control-height);box-sizing:border-box;padding:var(--pws-control-padding);border:var(--pws-control-border);border-radius:var(--pws-control-radius);background:#fff;color:var(--pws-color-ink);box-shadow:var(--pws-control-shadow);font:700 var(--pws-size-ui)/1.4 var(--pws-font-ui);letter-spacing:var(--pws-tracking-ui);text-transform:uppercase;list-style:none;cursor:pointer}
.pws-choice > summary::-webkit-details-marker{display:none}
.pws-choice > summary::after{content:'';width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor}
:root:root:root:root:root:root .pws-choice > summary:focus-visible{outline:none!important;box-shadow:var(--pws-control-shadow),inset 0 0 0 2px var(--pws-color-ink)!important}
.pws-choice__options{position:absolute;top:calc(100% + 12px);left:0;box-sizing:border-box;width:max-content;min-width:200px;max-width:min(300px,calc(100vw - 48px));padding:12px;border-radius:var(--pws-card-radius);background:var(--pws-color-ink);color:#fff;box-shadow:6px 6px 0 var(--pws-shadow-color)}
:root:root:root:root:root:root .pws-choice__options :is(a,button){display:block!important;box-sizing:border-box;width:100%!important;min-height:44px!important;padding:12px 16px!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;background:transparent!important;color:#fff!important;font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-align:left!important;text-transform:uppercase!important;text-decoration:none!important;cursor:pointer;white-space:normal!important}
:root:root:root:root:root:root .pws-choice__options :is([aria-current],[aria-pressed=true]){color:var(--pws-color-link-dark)!important}
:root:root:root:root:root:root .pws-choice__options :is(a,button):is(:hover,:focus-visible){text-decoration:underline!important;text-underline-offset:4px!important;outline:none!important;background:#262625!important}
/* No-JS fallback is a text action rather than another outlined button. */
:root:root:root:root:root:root :is(.pws-comics-gallery__sort,.pws-portfolio__filters) > button[type=submit]{border:0!important;box-shadow:none!important;background:transparent!important;padding:12px 0!important;text-decoration:underline!important;border-radius:0!important}
:root:root:root:root:root:root .pws-about-social.pws-social-row{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:16px!important;margin-top:32px!important}
:root:root:root:root:root:root .pws-about-social.pws-social-row a{color:var(--pws-color-ink)!important;font-size:24px!important;filter:none!important;text-decoration:none!important}
:root:root:root:root:root:root .pws-about-social.pws-social-row :is(img,svg){width:30px!important;height:30px!important;object-fit:contain!important;filter:brightness(0)!important}
/* Gallery images fill the frame; authored crops override the original source. */
:root:root:root:root:root:root :is(.pws-comics-gallery__cover,.pws-portfolio__image){display:block!important;overflow:hidden!important;padding:0!important;aspect-ratio:4/3!important}
:root:root:root:root:root:root :is(.pws-comics-gallery__cover,.pws-portfolio__image) img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center!important;margin:0!important}
/* Reader: share beside the title; text previous/next at both story ends. */
.pws-reader-title-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.pws-reader-title-row h1{flex:0 1 auto}
.pws-reader-share-wrap{position:relative;flex:0 0 auto}
.pws-reader-share-wrap .pws-reader-share-status{position:absolute;top:100%;left:0;min-width:180px;font:400 12px/1.4 var(--pws-font-body);color:#fff}
:root:root:root:root:root:root .pws-reader-controls{width:min(calc(100% - 2 * var(--pws-gutter)),780px)!important;display:flex!important;justify-content:space-between!important;gap:24px!important;margin:var(--pws-section-space) auto 0!important}
:root:root:root:root:root:root .pws-reader-step{display:inline-flex!important;align-items:center!important;min-height:44px!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:var(--pws-color-link)!important;font:700 var(--pws-size-ui)/1.5 var(--pws-font-ui)!important;letter-spacing:var(--pws-tracking-ui)!important;text-transform:uppercase;transform:none!important;text-decoration:none!important}
:root:root:root:root:root:root .pws-reader-step[aria-disabled=true]{color:var(--pws-color-muted)!important;cursor:default!important}
:root:root:root:root:root:root .pws-reader-step:is(:hover,:focus-visible){box-shadow:none!important;text-decoration:underline!important;text-underline-offset:4px!important;outline:none!important}
:root:root:root:root:root:root .pws-reader-hero__art{aspect-ratio:1.9!important}
:root:root:root:root:root:root .pws-reader-hero__art img{width:100%!important;height:100%!important;object-fit:cover!important}
@media(max-width:767px){.pws-reader-title-row{justify-content:center;gap:24px}.pws-reader-title-row h1{flex-basis:100%}:root:root:root:root:root:root .pws-reader-hero__art{max-width:none!important;width:100%!important}.pws-choice{min-width:128px}.pws-choice__options{min-width:180px}:root:root:root:root:root:root .pws-reader-controls{margin-top:32px!important}}

/* Right anchor the second dropdown so it stays inside narrow viewports. */
.pws-choice--sort .pws-choice__options{left:auto;right:0}

/* Reset uses the All option in the Filter menu; no separate reset action. */
:root:root:root:root:root:root .pws-gallery-reset{display:none!important}
/* One gallery-image frame across every instance of the card pattern. */
:root:root:root:root:root:root :is(.pws-home-project-card__image,.pws-home-feature__art,.pws-strips-card figure,.pws-comics-gallery__cover,.pws-portfolio__image){display:block!important;overflow:hidden!important;width:100%!important;aspect-ratio:4/3!important;padding:0!important;margin:0!important;background:#fff!important}
:root:root:root:root:root:root :is(.pws-home-project-card__image,.pws-home-feature__art,.pws-strips-card figure,.pws-comics-gallery__cover,.pws-portfolio__image) img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;margin:0!important}
/* Compact feature spacing follows the shared spacing scale. */
:root:root:root:root:root:root .pws-comics-page .pws-comics-feature{padding-top:var(--pws-gap)!important}
@media(max-width:650px){:root:root:root:root:root:root .pws-comics-page .pws-comics-feature__inner{gap:16px!important}}
:root:root:root:root:root:root .pws-reader-step--prev{margin-right:auto!important}
:root:root:root:root:root:root .pws-reader-step--next{margin-left:auto!important}
:root:root:root:root:root:root .pws-reader-controls:not(:has(a)){display:none!important}

/* Polaroid card: one shared frame, inset photograph and generous caption. */
:root{--pws-card-radius:2px;--pws-card-inset:20px;--pws-card-border:1px solid #555;--pws-card-shadow:6px 6px 0 var(--pws-shadow-color);--pws-card-image-ratio:16/9}
:root:root:root:root:root:root :is(.pws-comics-gallery__card,.pws-portfolio__card,.pws-home-project-card,.pws-home-sample-card,.pws-strips-card,.pws-live__benefit,.pws-live__testimonial,.pws-live__press-card,.pws-about-reach-card,.pws-reader-hero__art){border:var(--pws-card-border)!important;border-radius:var(--pws-card-radius)!important;box-shadow:var(--pws-card-shadow)!important;background:#fff!important}
:root:root:root:root:root:root :is(.pws-comics-gallery__card,.pws-portfolio__card,.pws-home-project-card,.pws-home-sample-card,.pws-strips-card){box-sizing:border-box;padding:var(--pws-card-inset)!important;overflow:hidden!important}
:root:root:root:root:root:root :is(.pws-home-project-card__image,.pws-strips-card figure,.pws-comics-gallery__cover,.pws-portfolio__image){aspect-ratio:var(--pws-card-image-ratio)!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}
:root:root:root:root:root:root :is(.pws-home-project-card__image,.pws-home-feature__art,.pws-strips-card figure,.pws-comics-gallery__cover,.pws-portfolio__image,.pws-live__press-image,.pws-reader-hero__art) img{border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}
:root:root:root:root:root:root .pws-comics-gallery__copy{padding:24px 24px 16px!important}
:root:root:root:root:root:root :is(.pws-home-project-card,.pws-strips-card)>:not(figure):not(.pws-home-project-card__image){margin-inline:24px!important}
:root:root:root:root:root:root .pws-home-project-card .pws-home-eyebrow{margin-top:24px!important}
:root:root:root:root:root:root .pws-strips-card__label{margin-top:24px!important}
:root:root:root:root:root:root .pws-home-feature__art{box-sizing:border-box;border:var(--pws-card-border)!important;border-radius:var(--pws-card-radius)!important;padding:var(--pws-card-inset)!important;box-shadow:var(--pws-card-shadow)!important;aspect-ratio:var(--pws-card-image-ratio)!important}
:root:root:root:root:root:root .pws-reader-hero__art{box-sizing:border-box;padding:12px!important;border-radius:var(--pws-card-radius)!important}
:root:root:root:root:root:root .pws-live__press-image{padding:var(--pws-card-inset)!important;border:0!important;border-radius:0!important;box-sizing:border-box}
/* Framed single-image variants calculate their image ratio inside the inset. */
:root:root:root:root:root:root :is(.pws-home-feature__art,.pws-reader-hero__art){aspect-ratio:auto!important}
:root:root:root:root:root:root .pws-home-feature__art img{aspect-ratio:var(--pws-card-image-ratio)!important;height:auto!important;object-fit:cover!important}
:root:root:root:root:root:root .pws-reader-hero__art img{aspect-ratio:1.9!important;height:auto!important;object-fit:cover!important}
:root:root:root:root:root:root :is(.pws-card,.home-chapter-card){border:var(--pws-card-border)!important;border-radius:var(--pws-card-radius)!important;box-shadow:var(--pws-card-shadow)!important;background:#fff!important}
:root:root:root:root:root:root .home-chapter-card{padding:var(--pws-card-inset)!important}
:root:root:root:root:root:root .home-chapter-card .home-image-slot{aspect-ratio:var(--pws-card-image-ratio)!important;border:0!important;border-radius:0!important;overflow:hidden!important;padding:0!important;background:#fff!important}
:root:root:root:root:root:root .home-chapter-card .home-image-slot img{width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;border-radius:0!important;box-shadow:none!important}
:root:root:root:root:root:root .pws-live__press-photo{padding:var(--pws-card-inset)!important;box-sizing:border-box;border:0!important}
:root:root:root:root:root:root .pws-live__press-photo img{border:0!important;border-radius:0!important;box-shadow:none!important}

/* Canonical site-wide drop shadow; inset keyboard focus rings remain independent. */
:root{--pws-shadow:6px 6px 0 var(--pws-shadow-color);--pws-card-shadow:var(--pws-shadow);--pws-control-shadow:var(--pws-shadow)}
:root:root:root:root:root:root .wp-block-button__link,
:root:root:root:root:root:root .site-header__contact-link > .wp-block-navigation-item__content,
:root:root:root:root:root:root :is(.pws-reader__page img,.pws-reader__strip-content .wp-block-image img,.pws-chronic-reader__image,.pws-live__calendar){box-shadow:var(--pws-shadow)!important}
:root:root:root:root:root:root .wp-block-button__link:hover,
:root:root:root:root:root:root .site-header__contact-link > .wp-block-navigation-item__content:hover{box-shadow:2px 2px 0 var(--pws-shadow-color)!important}
:root:root:root:root:root:root .wp-block-button__link:focus-visible,
:root:root:root:root:root:root .site-header__contact-link > .wp-block-navigation-item__content:focus-visible{box-shadow:var(--pws-shadow),inset 0 0 0 var(--pws-focus-inset,2px) var(--pws-color-ink)!important}
/* Social icon links are unframed and have no drop shadow. */
:root:root:root:root:root:root :is(.site-footer__social-button,.pws-live__social,.pws-about-social) a{box-shadow:none!important}

/* Mobile menu: black surface, white links, and no group-wide tap/focus box. */
:root:root:root:root:root:root:root .site-header__nav .wp-block-navigation__responsive-container.is-menu-open{background:#000!important;color:#fff!important}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open :is(.wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-dialog,.wp-block-navigation__container,.wp-block-navigation__submenu-container,.site-header__work-menu){outline:none!important;box-shadow:none!important}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open .wp-block-navigation__submenu-container{background:transparent!important;color:#fff!important;border:0!important}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open :is(.wp-block-navigation-item__content,.wp-block-navigation__responsive-container-close){color:#fff!important;-webkit-tap-highlight-color:transparent}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open .wp-block-navigation-item__content:focus{outline:none!important;box-shadow:none!important}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open .wp-block-navigation-item__content:focus-visible{text-decoration:underline!important;text-underline-offset:4px!important;text-decoration-thickness:1px!important}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open .wp-block-navigation__responsive-container-close:focus-visible{outline:none!important;box-shadow:none!important;filter:drop-shadow(0 0 3px rgb(255 255 255 / .7))}
:root:root:root:root:root:root:root .site-header__nav .is-menu-open .site-header__contact-link > .wp-block-navigation-item__content{background:#000!important;color:#fff!important;border:1px solid #fff!important}

/* Header content shares the hero container without a second inset. */
:root:root:root:root:root:root:root .site-header .site-header__inner{box-sizing:border-box;width:min(calc(100% - 2 * var(--pws-gutter)),var(--pws-container))!important;max-width:var(--pws-container)!important;margin-inline:auto!important;padding-inline:0!important}
/* About copy starts at the hero's upper gutter rather than the portrait's bottom. */
@media(min-width:851px){:root:root:root:root:root:root:root .pws-about-page .pws-about-copy{align-self:start!important;margin-top:0!important;padding-top:0!important}}

/* Shared social artwork stays visible and uses the proper surface color. */
:root:root:root:root:root:root:root :is(.site-footer__social,.pws-about-social,.pws-live__social) img{display:block!important;width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;object-fit:contain!important;opacity:1!important;visibility:visible!important;contain-intrinsic-size:none!important}
:root:root:root:root:root:root:root :is(.site-footer__social,.pws-live__social) img{filter:brightness(0) invert(1)!important}
:root:root:root:root:root:root:root .pws-about-social img{filter:brightness(0)!important}
:root:root:root:root:root:root:root :is(.site-footer__social,.pws-about-social,.pws-live__social) a{display:inline-flex!important;box-sizing:border-box!important;width:46px!important;height:46px!important;min-height:46px!important;align-items:center!important;justify-content:center!important;padding:8px!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important}

/* Header Contact is the same interactive pill as page CTAs. */
:root{--pws-color-button-hover:#efd4f5}
:root:root:root:root:root:root:root:root:root:root :is(.site-header__contact-link>.wp-block-navigation-item__content,.site-header__compact-cta .wp-block-button__link){transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer;text-decoration:none!important}
:root:root:root:root:root:root:root:root:root:root :is(.site-header__contact-link>.wp-block-navigation-item__content,.site-header__compact-cta .wp-block-button__link,.pws-home .wp-block-button__link,.pws-comics-page .wp-block-button__link,.pws-contact .wp-block-button__link,.pws-live .wp-block-button__link,.pws-reader .wp-block-button__link,a.pws-home-button,.pws-reader-control:not(.pws-reader-step),.pws-newsletter button[type=submit],.pws-contact .ff-btn-submit):hover{
 background:var(--pws-color-button-hover)!important;transform:translate(3px,3px)!important;box-shadow:2px 2px 0 var(--pws-shadow-color)!important;text-decoration:none!important;
}
:root:root:root:root:root:root:root:root:root:root :is(.site-header__contact-link>.wp-block-navigation-item__content,.site-header__compact-cta .wp-block-button__link):focus-visible{outline:none!important;box-shadow:var(--pws-control-shadow),inset 0 0 0 2px var(--pws-color-ink)!important}
:root:root:root:root:root:root:root:root:root:root :is(.site-header__contact-link>.wp-block-navigation-item__content,.site-header__compact-cta .wp-block-button__link):hover:focus-visible{box-shadow:2px 2px 0 var(--pws-shadow-color),inset 0 0 0 2px var(--pws-color-ink)!important}
@media(prefers-reduced-motion:reduce){:root:root:root:root:root:root:root:root:root:root :is(.site-header__contact-link>.wp-block-navigation-item__content,.site-header__compact-cta .wp-block-button__link,.pws-home .wp-block-button__link,.pws-comics-page .wp-block-button__link,.pws-contact .wp-block-button__link,.pws-live .wp-block-button__link,.pws-reader .wp-block-button__link,a.pws-home-button,.pws-reader-control:not(.pws-reader-step),.pws-newsletter button[type=submit],.pws-contact .ff-btn-submit){transition:none!important;transform:none!important}}
