/*
Theme Name: Chuck Price Foundation
Author: Measurable SEO LLC
Description: Restrained native block-theme foundation for chuckprice.org. Shared shell only.
Version: 1.0.4
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: chuck-price-foundation
*/
:root{--cp-reading:46rem;--cp-wide:76rem;--cp-gutter:clamp(1.25rem,4vw,3rem);--cp-section:clamp(3rem,7vw,6rem)}
*{box-sizing:border-box}
html{scroll-padding-top:2rem}
body{overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{ text-wrap:balance }
p,li{ text-wrap:pretty }
a{text-underline-offset:.22em;text-decoration-thickness:.08em}
a:hover{text-decoration-thickness:.14em}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #234f46;outline-offset:4px}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks>main{flex:1}
.cp-header,.cp-footer{padding-inline:var(--cp-gutter)}
.cp-header{border-top:4px solid #234f46;border-bottom:1px solid #c4cdc7;padding-block:1.55rem}
.cp-header-inner,.cp-footer-inner{max-width:var(--cp-wide);margin-inline:auto}
.cp-brand{gap:.25rem;flex-shrink:0}
.cp-brand .wp-block-site-title{font-family:Georgia,'Times New Roman',serif;font-size:1.8rem;line-height:1.15;letter-spacing:-.04em}
.cp-brand .wp-block-site-title a{text-decoration:none}
.cp-byline{font-size:.78rem;line-height:1.5;color:#53645e;margin:0}
.cp-navigation{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.88rem;font-weight:600}
.cp-navigation .wp-block-navigation__container{gap:1.25rem}
.cp-navigation .wp-block-navigation-item__content{padding-block:.65rem;text-decoration:none}
.cp-navigation .wp-block-navigation-item__content:hover{text-decoration:underline}
.cp-navigation .wp-block-navigation__submenu-container{padding:.6rem;min-width:16rem;border:1px solid #c4cdc7!important;background:#faf9f5!important;box-shadow:0 8px 24px #172b2a12}
.cp-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:.65rem .8rem}
.cp-navigation .wp-block-navigation-submenu__toggle{min-width:32px;min-height:44px;margin-left:0}
.cp-nav-cta>.wp-block-navigation-item__content{background:#234f46;color:#fff!important;padding:.8rem 1.1rem!important;border:1px solid #234f46;border-radius:3px}
.cp-nav-cta>.wp-block-navigation-item__content:hover{background:#172b2a}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;align-items:center;justify-content:center}
.wp-block-navigation__responsive-container.is-menu-open{padding:1.5rem var(--cp-gutter);background:#faf9f5;color:#172b2a}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:stretch;width:100%;gap:.6rem}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{align-items:flex-start}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{border:0!important;box-shadow:none;padding:.25rem 0 .75rem 1rem}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{min-height:44px;display:flex;align-items:center}
.cp-main{padding:2.5rem var(--cp-gutter) var(--cp-section)}
.cp-home-shell{min-height:30vh}
.cp-breadcrumbs{font-size:.82rem;color:#53645e;margin-bottom:2.5rem}
.cp-breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0}
.cp-breadcrumbs li+li:before{content:'/';margin-right:.5rem;color:#53645e}
.cp-breadcrumbs a{color:inherit}
.cp-section{padding-block:var(--cp-section)}
.cp-section+.cp-section{border-top:1px solid #c4cdc7}
.cp-reading{max-width:var(--cp-reading);margin-inline:auto}
.cp-wide{max-width:var(--cp-wide);margin-inline:auto}
.cp-note{border-left:3px solid #234f46;padding:1.5rem 1.75rem;background:#edf0e9}
.cp-footer{border-top:1px solid #c4cdc7;padding-block:3rem 1.5rem;background:#edf0e9}
.cp-footer-top{gap:2rem;align-items:flex-start}
.cp-footer .wp-block-site-title{font-family:Georgia,'Times New Roman',serif;font-size:1.65rem;line-height:1.2}
.cp-footer .wp-block-site-title a{text-decoration:none}
.cp-footer a{color:#234f46}
.cp-footer .wp-block-navigation{font-size:.9rem;gap:.25rem}
.cp-footer .wp-block-navigation-item__content{padding-block:.35rem}
.cp-footer p{font-size:.88rem;line-height:1.7}
.cp-footer-bottom{border-top:1px solid #c4cdc7;margin-top:2.5rem;padding-top:1rem;color:#53645e;font-size:.78rem}
.wp-block-button__link{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;text-decoration:none;font-weight:600}
.wp-block-button.is-style-outline .wp-block-button__link{color:#234f46;background:transparent;border:1px solid #234f46}
.wp-block-button__link:hover{background:#172b2a;color:#fff}
.wp-block-details{border-block-end:1px solid #c4cdc7;padding-block:1rem}
.wp-block-details summary{min-height:44px;font-weight:600;cursor:pointer}
.cp-main .wp-block-post-title{margin-top:0;margin-bottom:2rem}
.wp-block-columns{gap:2rem}
@media(max-width:1100px){
 .cp-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .cp-navigation .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
 .cp-header-inner{gap:1rem}
}
@media(max-width:600px){.cp-header{padding-block:1.2rem}.cp-brand .wp-block-site-title{font-size:1.6rem}.cp-footer-top{flex-direction:column}.cp-footer-bottom{align-items:flex-start}.cp-main{padding-top:1.75rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.cp-footer-inner > .cp-footer-top,.cp-footer-inner > .cp-footer-bottom{max-width:none}

.cp-footer > .cp-footer-inner{max-width:var(--cp-wide);width:100%}
.cp-navigation .is-menu-open .wp-block-navigation__responsive-container-content,.cp-navigation .is-menu-open .wp-block-navigation__container,.cp-navigation .is-menu-open .wp-block-navigation__submenu-container{align-items:flex-start!important;text-align:left}
.cp-navigation .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:3rem}

/* Approved refinement: commercial pages, editorial articles retain 46rem. */
:root{--cp-commercial:54rem}
body.page,body.home{--wp--style--global--content-size:var(--cp-commercial)}
.cp-commercial{max-width:var(--cp-commercial);margin-inline:auto;--wp--style--global--content-size:var(--cp-commercial)}
.cp-reading{--wp--style--global--content-size:var(--cp-reading)}
body.page .cp-main .cp-reading{max-width:var(--cp-reading)}
@media(min-width:1024px){.cp-main h1{font-size:3.75rem;line-height:1.12}.cp-section+.cp-section{padding-top:3rem}}
.cp-footer-group{min-width:12rem}
.cp-footer-group .cp-footer-heading{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:1rem;font-weight:700;line-height:1.5;margin:0 0 .75rem}
.cp-footer-group .cp-footer-heading a{text-decoration:none}
.cp-main .wp-block-table{overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain}
.cp-main .wp-block-table table{min-width:32rem;font-size:inherit}
.cp-table-cards td::before{display:none}
@media(max-width:600px){
.cp-table-cards table,.cp-table-cards tbody,.cp-table-cards tr,.cp-table-cards td{display:block;min-width:0!important;width:100%}
.cp-table-cards thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cp-table-cards tr{border:1px solid #c4cdc7;padding:1rem;margin-bottom:1rem}
.cp-table-cards td{border:0;padding:.5rem 0}
.cp-table-cards td[data-label]::before{display:block;content:attr(data-label);font-weight:700;margin-bottom:.25rem}
}
.cp-inquiry-preview{border:1px solid #c4cdc7;padding:1.5rem}
.cp-inquiry-preview label{display:block;margin-top:1rem;font-weight:600}
.cp-inquiry-preview input,.cp-inquiry-preview textarea,.cp-inquiry-preview select{width:100%;padding:.7rem;font:inherit;color:#172b2a;background:#faf9f5;border:1px solid #53645e;border-radius:3px;opacity:1}
.cp-inquiry-preview button{font:inherit;padding:.8rem 1.1rem;margin-top:1.5rem;color:#53645e;background:#edf0e9;border:1px solid #53645e;border-radius:3px}

.cp-footer-top{display:grid!important;grid-template-columns:1.2fr 1fr 1fr}.cp-footer-top>.wp-block-group{margin:0!important;width:auto;max-width:none}@media(max-width:600px){.cp-footer-top{grid-template-columns:1fr}}

/* Focused density refinement: preserve research rhythm and mobile cards. */
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-main{--cp-section:clamp(2rem,4vw,4rem)}
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-section{padding-block:var(--cp-section);margin-block-start:1rem}
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-section+.cp-section{padding-block-start:2rem}
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-section>:first-child{margin-block-start:0}
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-section>:last-child{margin-block-end:0}
body:is(.home,.page):not(.page-id-25):not(.page-id-56) .cp-section>h2+*{margin-block-start:1rem}
@media(min-width:601px){
.cp-main .cp-table-cards table{width:100%;table-layout:fixed}
.cp-main .cp-table-cards th,.cp-main .cp-table-cards td{padding:1rem 1.25rem;text-align:left;vertical-align:top;line-height:1.6}
.cp-main .cp-table-cards th{font-weight:700;border-bottom:2px solid #53645e}
.page-id-10 .cp-table-cards :is(th,td):nth-child(1){width:35%}
.page-id-10 .cp-table-cards :is(th,td):nth-child(2){width:25%}
.page-id-10 .cp-table-cards :is(th,td):nth-child(3){width:40%}
}
