/*
Theme Name: Pixel & Code Studio
Theme URI: https://pixelandcodestudio.com/
Author: Pixel & Code Studio
Author URI: https://pixelandcodestudio.com/
Description: A modern, lightweight block theme built for Pixel & Code Studio. Designed around native WordPress blocks, editable patterns, accessibility, and long-term maintainability.
Version: 0.10.0
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pixel-code-studio
Tags: block-patterns, block-styles, full-site-editing, accessibility-ready, custom-colors, custom-logo, editor-style, featured-images, wide-blocks
*/

/* Native block layouts, based on the original site's 1170px container. */
html{scroll-padding-top:24px}
body{margin:0;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
a{text-underline-offset:.2em}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #b84b43;outline-offset:4px}
img{max-width:100%;height:auto}
.wp-site-blocks>*,.pcs-main,.pcs-main>.wp-block-post-content{margin-block:0}
.pcs-site-header{position:relative;z-index:20;background:#fff}
.pcs-utility-bar{background:#333741;color:#fff;font-size:12px}
.pcs-utility-inner,.pcs-header-inner,.pcs-footer-inner{max-width:1170px;margin:auto;display:flex;align-items:center;gap:28px;padding:8px 15px}
.pcs-utility-inner,.pcs-header-inner{max-width:none;width:100%;margin:0}
.pcs-utility-inner{min-height:51px;padding:0 15px 0 30px;gap:30px}
.pcs-utility-inner p{margin:0}
.pcs-utility-inner>p{display:flex;align-items:center;gap:12px;white-space:nowrap;font-family:"Varela Round",Arial,sans-serif;font-size:12px;font-weight:400;line-height:31px;letter-spacing:0}
.pcs-utility-inner>p::before{content:"";display:block;flex:none;width:18px;height:18px;background:var(--pcs-burnt-orange,#c54c27);mask:center/contain no-repeat;-webkit-mask:center/contain no-repeat}
.pcs-utility-inner>p:nth-of-type(1)::before{mask-image:url(assets/icons/phone.svg);-webkit-mask-image:url(assets/icons/phone.svg)}
.pcs-utility-inner>p:nth-of-type(2)::before{mask-image:url(assets/icons/mail.svg);-webkit-mask-image:url(assets/icons/mail.svg)}
.pcs-utility-inner>p:nth-of-type(3)::before{mask-image:url(assets/icons/location.svg);-webkit-mask-image:url(assets/icons/location.svg)}
.pcs-utility-bar a,.pcs-site-footer a{color:#fff;text-decoration:none}
.pcs-utility-inner .wp-block-social-links{margin-left:auto}
.wp-block-social-links{gap:16px;margin-block:0;font-size:18px}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-block-social-links{gap:0;align-self:stretch;align-items:stretch;font-size:13px;flex-wrap:nowrap}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link{display:flex;width:50px;margin:0;border-left:1px solid rgba(255,255,255,.1);border-radius:0;transition:none}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link:last-child{border-right:1px solid rgba(255,255,255,.1)}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link:hover{transform:none}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link a{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:0;transition:color .2s ease-in-out,background-color .2s ease-in-out}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link svg{width:13px;height:13px}
:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link a:hover,:is(.pcs-utility-inner,.pcs-footer-inner) .wp-social-link a:focus-visible{color:#fff;background:var(--pcs-burnt-orange,#c54c27)}
.pcs-header-inner{min-height:83px;justify-content:space-between;gap:20px;padding:14px 0 14px 30px;box-shadow:0 -115px 60px -120px rgba(0,0,0,.05) inset}
.pcs-header-inner .wp-block-site-logo{flex-shrink:0}
.pcs-header-inner .wp-block-site-logo img{width:auto;height:55px;display:block}
.pcs-site-header .wp-block-navigation{color:#333741;font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:400;line-height:22px;letter-spacing:1px}
.pcs-site-header .wp-block-navigation__container{gap:0}
.pcs-site-header .wp-block-navigation-item__content{text-decoration:none}
.pcs-site-header .wp-block-navigation a:hover,.pcs-site-header .wp-block-navigation button:hover{color:var(--pcs-burnt-orange,#c54c27)}
.pcs-site-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container{min-width:220px;background:#333741;color:#fff;padding:0;border:0;font-family:"Varela Round",Arial,sans-serif;font-size:14px;font-weight:400;line-height:20px;letter-spacing:0}
.pcs-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item{padding:0}
.pcs-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:15px 20px}
.pcs-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item:hover{background:#383e4a}
.pcs-site-header .wp-block-navigation__submenu-container a:is(:hover,:focus-visible){color:#fff;text-decoration:underline}
@media(min-width:981px){
 .pcs-site-header .wp-block-navigation{padding:0}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content{padding:14px 20px}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-submenu__toggle{margin-left:-12px;margin-right:8px}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item::before{content:"";position:absolute;top:0;left:20px;width:0;height:2px;background:var(--pcs-burnt-orange,#c54c27);transition:width .3s ease-in-out;pointer-events:none}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item:is(.current-menu-item,.current-menu-ancestor,.pcs-current-navigation,:hover,:focus-within)::before,
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item:has(> [aria-current="page"])::before{width:20px}
 .pcs-site-header .wp-block-navigation__submenu-container{transition:opacity .2s ease-in-out,visibility .2s ease-in-out}
 .pcs-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{transition:color .1s ease-in-out,background-color .2s ease-in-out}
}
.pcs-site-footer{background:#333741;color:#fff;padding:35px 0}
.pcs-footer-inner{justify-content:space-between}
.pcs-footer-inner p{font-size:12px;line-height:2;margin:0}
.pcs-footer-inner p span{color:inherit}
.pcs-footer-inner p span[data-pcs-year]{color:inherit;font:inherit;letter-spacing:inherit}
.pcs-section,.pcs-social-section{padding:40px max(20px,calc((100% - 1170px)/2));margin:0}
.pcs-row{display:flex;flex-wrap:wrap;align-items:stretch;margin:0 -15px}
.pcs-row>.pcs-column{padding:0 15px;min-width:0;margin:0}
.pcs-column-content>*+*,.pcs-project-detail .wp-block-post-content>*+*{margin-top:20px}
.pcs-col-12{width:100%}.pcs-col-9{width:75%}.pcs-col-8{width:66.6667%}.pcs-col-6{width:50%}.pcs-col-4{width:33.3333%}.pcs-col-3{width:25%}.pcs-col-2{width:16.6667%}
.pcs-column-content{height:100%}
.pcs-main p{margin-top:0;margin-bottom:20px}
.pcs-main h2{font-size:clamp(30px,4vw,50px);line-height:1.2;letter-spacing:-2px;margin:0 0 25px}
.pcs-main h3{font-family:Hind,Arial,sans-serif;font-size:20px;line-height:30px;letter-spacing:-.5px}
.pcs-main h4{font-family:"Open Sans",Arial,sans-serif;font-size:24px;line-height:1.3}
.pcs-main h5{font-size:20px;line-height:1.4}
.pcs-main .wp-block-image{margin:0;text-align:center}
.pcs-main .wp-block-image img{vertical-align:middle}
.pcs-main .wp-block-buttons{margin-block:25px;justify-content:center}
.wp-block-button__link{padding:15px 30px;font-family:"Varela Round",Arial,sans-serif;font-size:15px}
.pcs-home-hero{margin:0;background:#efefef}
.pcs-home-photo img{display:block;width:100%;aspect-ratio:1200/650;object-fit:cover}
.pcs-home-section-1{background:#efefef;padding-top:100px;padding-bottom:100px;text-align:center}
.pcs-service-card .wp-block-image img{width:100px;height:100px;object-fit:contain;padding:25px;border-radius:50%;background:var(--pcs-burnt-orange,#c54c27)}
.pcs-service-card p a{display:block;margin-top:10px}
.pcs-service-card h3{margin:20px 0 10px}
.pcs-home-section-2,.pcs-home-section-3{padding:0;background:#333741;color:#fff}
.pcs-home-section-2>.pcs-row,.pcs-home-section-3>.pcs-row{margin:0}
.pcs-home-section-2 .pcs-column,.pcs-home-section-3 .pcs-column{padding:0}
.pcs-service-tile{position:relative;min-height:400px;isolation:isolate;padding:32px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#333741;color:#fff;overflow:hidden}
.pcs-service-tile>.wp-block-image{position:absolute;inset:0;z-index:-1;opacity:.4}
.pcs-service-tile>.wp-block-image img{width:100%;height:100%;object-fit:cover}
.pcs-service-tile h5{color:#fff;margin:0 0 15px}
.pcs-service-tile p{font-size:14px;line-height:1.5}
.pcs-service-tile .wp-block-buttons{margin:10px 0 0}
.pcs-home-section-3 .pcs-col-6{padding:35px}
.pcs-home-section-4{padding-top:60px;padding-bottom:40px}
.pcs-home-section-5{background:#efefef;text-align:center;padding-top:30px;padding-bottom:80px}
.pcs-home-section-5 .pcs-col-6>.pcs-column-content{padding:35px;background:#383e4a;color:#fff}
.pcs-home-section-5 h4{color:var(--pcs-burnt-orange,#c54c27);margin-bottom:10px}
.pcs-home-section-5 .wp-block-image img{width:250px;height:250px;border-radius:50%;object-fit:cover}
.pcs-profile-links{display:flex;gap:16px;justify-content:center;font-size:13px}
/* Also suppress cached/editor previews; render filter omits this image on the front end. */
.pcs-main .pcs-facebook-callout{display:none!important}
.pcs-home-section-6{padding-top:80px;padding-bottom:80px}
.pcs-home-section-6 h3{font-family:"Open Sans",Arial,sans-serif;font-weight:700}
.pcs-home-section-6 .pcs-col-4{align-self:center}
.pcs-home-section-8{background:#efefef;padding-block:70px}
.pcs-social-section{padding-block:70px}
.pcs-services-hero img{width:100%;max-height:430px;object-fit:cover}
.pcs-services-hero{position:relative;background:#eee}
.pcs-services-mobile{display:none}
.pcs-services-title{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.pcs-services-title p{font-size:28px}
.pcs-services-title h2{color:var(--pcs-burnt-orange,#c54c27)}
.pcs-website-process-section-3{padding:0}
.pcs-website-process-section-3 .pcs-row{margin:0;gap:0}
.pcs-website-process-section-3 .pcs-column{padding:0}
.pcs-website-process-section-3 .pcs-column-content{padding:45px;color:#fff}
.pcs-website-process-section-3 h4{color:#fff}
[class*="pcs-our-services-section-"]{padding-block:65px}
[class*="pcs-our-services-section-"]:nth-child(even){background:#efefef}
[class*="pcs-our-services-section-"] .pcs-row{align-items:center}
[class*="pcs-our-services-section-"] .wp-block-image img{max-width:380px}
.pcs-process-gallery,.pcs-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.pcs-process-gallery.pcs-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:25px}
.pcs-carousel>.wp-block-image{flex:0 0 calc((100% - 50px)/3);scroll-snap-align:start}
.pcs-gallery-controls{display:flex;gap:12px;justify-content:center;margin-bottom:20px}
.pcs-gallery-controls button{border:0;padding:10px 20px;font:inherit;background:#333741;color:#fff;cursor:pointer}
.pcs-gallery-controls button:disabled{opacity:.45;cursor:default}
.wp-block-details{border-top:1px solid #ddd;padding:15px 0;margin:0}
.wp-block-details summary{font-family:Hind,Arial,sans-serif;font-size:20px;cursor:pointer}
.wp-block-details[open] summary{margin-bottom:20px;color:#b84b43}
.pcs-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 20px}
.pcs-project-card{font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:1.7;text-align:center}
.pcs-project-card{text-align:left}
.pcs-project-card img{width:100%;aspect-ratio:800/721;object-fit:cover;display:block}
.pcs-project-card h2{font-family:Montserrat,Arial,sans-serif;font-size:18px;letter-spacing:0;font-weight:400;margin:20px 0 12px}
.pcs-project-card h2 a{color:#383e4a;text-decoration:none}
.pcs-project-filters,.pcs-pagination{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:25px 0 40px}
.pcs-project-filters a,.pcs-pagination a,.pcs-pagination span{padding:8px 16px;border:1px solid #ddd;text-decoration:none}
.pcs-project-filters [aria-current],.pcs-pagination .current{background:#333741;color:#fff}
.pcs-project-detail{max-width:800px;margin:auto;padding:50px 20px;text-align:center}
.pcs-project-layout{display:flex;gap:40px;max-width:1170px;margin:auto;padding:50px 20px}
.pcs-project-layout .pcs-project-detail{width:68%;min-width:0;margin:0;padding:0}
.pcs-project-sidebar{width:32%;min-width:0;padding-left:10px;font-size:14px}
.pcs-project-sidebar>*+*{margin-top:30px}
.pcs-project-sidebar h2{font-size:20px;letter-spacing:0}
.pcs-sidebar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;text-align:center}
.pcs-sidebar-grid img{aspect-ratio:1;object-fit:cover}
.pcs-project-detail h1{font-size:28px;line-height:1.3;margin:30px 0}
.pcs-project-detail .wp-block-post-featured-image{margin:0}
.pcs-project-detail .wp-block-post-content .wp-block-image img{max-height:800px;width:auto}
.pcs-contact{max-width:780px;margin:auto}
.pcs-contact label{display:block}
.pcs-contact input:not([type=checkbox]),.pcs-contact textarea{width:100%;padding:12px;background:#fff;border:1px solid #bbb;border-radius:0;font:inherit;color:#383e4a}
.pcs-contact fieldset{border:0;padding:0;margin:0 0 25px}
.pcs-contact .pcs-checkbox{display:inline-block;margin-right:20px}
.pcs-contact input[type=checkbox]{width:18px;height:18px;vertical-align:middle}
.pcs-contact button{cursor:pointer;border:0}
.pcs-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.pcs-form-status{padding:20px;background:#fff;border-left:4px solid var(--pcs-burnt-orange,#c54c27)}
@media(min-width:782px){.pcs-home-section-2 .pcs-col-3{width:25%}}
@media(min-width:981px) and (max-width:1200px){
 .pcs-header-inner .wp-block-site-logo img{width:220px;height:auto}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content{padding-inline:10px}
 .pcs-site-header .wp-block-navigation__container>.wp-block-navigation-item::before{left:10px}
}
@media(max-width:980px){
 .pcs-utility-inner{justify-content:center;gap:12px;flex-wrap:wrap}.pcs-utility-inner .wp-block-social-links{margin-left:0}
 .pcs-header-inner{min-height:83px;padding:14px 20px}.pcs-header-inner .wp-block-site-logo img{width:250px;height:auto}
 .pcs-site-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .pcs-site-header .wp-block-navigation__responsive-container-open{display:flex!important}
 .pcs-site-header .wp-block-navigation__responsive-container.is-menu-open{padding:30px;background:#333741;color:#fff}
 .pcs-site-header .is-menu-open .wp-block-navigation__container{align-items:flex-start;width:100%}
 .pcs-site-header .is-menu-open .wp-block-navigation__container{gap:24px}
 .pcs-site-header .is-menu-open .wp-block-navigation-item{align-items:flex-start}
 .pcs-site-header .is-menu-open .wp-block-navigation__submenu-container{padding:12px 20px}
}
@media(max-width:781px){
 .pcs-main .pcs-facebook-callout{display:none}
 .pcs-project-layout{display:block;padding:30px 20px}.pcs-project-layout .pcs-project-detail,.pcs-project-sidebar{width:100%;padding:0}.pcs-project-sidebar{margin-top:40px}
 .pcs-carousel>.wp-block-image{flex-basis:calc((100% - 25px)/2)}
 .pcs-services-desktop,.pcs-services-title{display:none}.pcs-services-mobile{display:block}
 .pcs-utility-bar{height:10px;overflow:hidden}.pcs-utility-inner{display:none}
 .pcs-section,.pcs-social-section{padding:30px 20px}
 .pcs-row{margin:0;gap:25px}.pcs-row>.pcs-column{width:100%;padding:0}
 .pcs-home-section-2,.pcs-home-section-3{padding:0}.pcs-home-section-2 .pcs-row,.pcs-home-section-3 .pcs-row{gap:0}
 .pcs-home-section-3 .pcs-col-6{padding:30px 20px}
 .pcs-service-card{max-width:420px;margin:auto}.pcs-service-card h3{margin-top:18px}
 .pcs-home-section-5 .pcs-col-6>.pcs-column-content{padding:25px}
 .pcs-process-gallery,.pcs-project-gallery,.pcs-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pcs-footer-inner{flex-direction:column;text-align:center}
 .pcs-main h2{letter-spacing:-1px}.pcs-service-tile{min-height:350px}
}
@media(max-width:480px){.pcs-project-grid,.pcs-process-gallery,.pcs-project-gallery{grid-template-columns:1fr}.pcs-header-inner .wp-block-site-logo img{width:220px}.pcs-carousel>.wp-block-image{flex-basis:100%}}
/* Source menu/button color fades and service-icon fadeInUp, without builder libraries. */
.pcs-site-header .wp-block-navigation-item__content,.wp-block-button__link{transition:color .2s ease-in-out,background-color .2s ease-in-out}
.pcs-reveal-icon{animation:pcs-icon-in .6s ease-out both}
@keyframes pcs-icon-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 0.7.6: scoped regular copy; headings and inherited control colors stay unchanged. */
:root{--pcs-body-text-light:#525760;--pcs-body-text-dark:#d9dde3}
/* Existing light surfaces, including the Contact photograph/sidebar and About copy.
 * Intentionally white text, service sections and differently colored nested blocks
 * are excluded. !important handles only neutral Gutenberg text-color overrides. */
:is(.pcs-home-section-1,.pcs-home-section-4,.pcs-home-section-6,.pcs-home-section-8,
 .pcs-contact-us-section-1>.pcs-row>.pcs-col-4,.pcs-meet-pixel-and-code-section-1,.pcs-meet-pixel-and-code-section-2,
 .pcs-meet-bruce-section-1,.pcs-meet-vanessa-section-1,.pcs-bio-layout,.pcs-kind-words-section-1,
 .pcs-services-intro,.pcs-our-services-section-10,.pcs-logo-process-section-1,.pcs-logo-process-section-2,.pcs-logo-process-section-3,
 .pcs-website-process-section-0,.pcs-website-process-section-1,.pcs-website-process-section-2,.pcs-website-process-section-4,
 .pcs-content-section,.pcs-testimonial,.pcs-project-detail,.pcs-project-sidebar,.pcs-project-caption,.pcs-e-intro,.pcs-e-service-copy,.pcs-e-quote,
 .pcs-e-testimonial-copy,.pcs-e-project-copy,.pcs-cbg-details,.pcs-website-preview,.pcs-art-information,
 .has-white-background-color,.has-mist-background-color,.has-sand-background-color)
 :is(p,li,figcaption,dd,cite):is(:not(.has-text-color):not([style*="color:"]),.has-muted-color,[style^="color:#999"],[style^="color: #999"],[style^="color:#666"],[style^="color: #666"]):not(:where(nav *,form *,a *,button *,label *,.wp-block-buttons *,.pcs-bio-contact>p,.pcs-e-link,.pcs-e-quote-mark,.pcs-cbg-explore,.pcs-project-eyebrow,.pcs-landing-featured,.pcs-website-categories,.pcs-handwriting-hero *)):not(:has(label,input,textarea,select,button)):not(:where(.has-white-color,.has-white-color *,[style^="color:#fff"],[style^="color:#fff"] *,[style^="color: #fff"],[style^="color: #fff"] *,.pcs-section-type-on-dark *,.pcs-service-tile *,.pcs-services-hero *,[class*="pcs-our-services-section-"]:not(.pcs-our-services-section-10) *,.pcs-our-portfolio-section-3 *,.pcs-e-portfolio-copy *,.pcs-source-1512739740580 *,.has-background:not(:is(.has-white-background-color,.has-mist-background-color,.has-sand-background-color,[style*="background-color:#fff"],[style*="background-color: #fff"],[style*="background-color:#efefef"],[style*="background-color: #efefef"],[style*="background-color:#f7f7f7"],[style*="background-color: #f7f7f7"],[style*="background-color:#f3eee8"],[style*="background-color:#e5f0f4"])) *)){color:var(--pcs-body-text-light)!important}
/* Dark supporting copy is opt-in by component, never by global background color.
 * Form descendants, contact links, service text and white headings keep their styles. */
:is(.pcs-contact-us-section-1>.pcs-row>.pcs-col-7,.pcs-contact-us-section-0 .pcs-service-card,
 .pcs-home-section-3,.pcs-home-section-5 .pcs-col-6>.pcs-column-content)
 p:is(:not(.has-text-color):not([style*="color:"]),.has-muted-color,[style^="color:#999"],[style^="color: #999"],[style^="color:#666"],[style^="color: #666"]):not(:where(nav *,form *,a *,button *,label *,.wp-block-buttons *,.pcs-bio-contact>p,.pcs-e-link,.pcs-e-quote-mark,.pcs-cbg-explore,.pcs-project-eyebrow,.pcs-landing-featured,.pcs-website-categories,.pcs-handwriting-hero *)):not(:has(label,input,textarea,select,button)):not(:where(.pcs-service-tile *,.has-background *)){color:var(--pcs-body-text-dark)!important}
/* Native light status panel within the dark Contact section. */
.pcs-contact .pcs-form-status{color:var(--pcs-body-text-light)!important}
/* Retain inherited inline link colors in the affected light Concept E copy. */
.pcs-e.pcs-e :is(.pcs-e-intro,.pcs-e-service-copy,.pcs-e-quote,.pcs-e-testimonial-copy,.pcs-e-project-copy) p a:not(:hover){color:var(--pcs-section-body,#666)}
.pcs-cbg-cards.pcs-cbg-cards .pcs-cbg-item-label a{color:var(--pcs-card-ink)}
