/* R.A. Bell readability and layout refresh (static site layer, loaded after theme CSS) */
:root{--bell-ink:#1f2328;--bell-body:#30343a;--bell-muted:#5a6068;--bell-line:#e2e4e7;--bell-soft:#f4f5f6;--bell-dark:#3a3d41}
html{-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color:var(--bell-body)}
/* Body copy was 14px; lift to a comfortable reading size */
.post-content p,.post-content li,.post-content td,.portfolio-body p,.portfolio-body li{font-size:17px;line-height:1.7;color:var(--bell-body)}
.post-content .news-des p,.post-content .news-block p{font-size:16px}
@media (max-width:959px){.post-content p,.post-content li,.post-content td,.portfolio-body p,.portfolio-body li{font-size:16px}}
.post-content p{margin-bottom:1em}
.post-content h1,.post-content h2,.post-content h3{line-height:1.25;letter-spacing:-.005em;color:var(--bell-ink)}
.post-content a:not(.btn):not(.bell-card):not(.servic):not([class*="tmb"]){text-underline-offset:3px}
.post-content p a:not(.btn){text-decoration:underline;text-decoration-color:rgba(0,0,0,.35)}
.post-content p a:not(.btn):hover{text-decoration-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #1a73e8;outline-offset:2px}
/* Contact form fields: larger targets */
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 textarea{font-size:16px;padding:12px 14px;border-radius:4px}
.wpcf7 input[type=submit]{font-size:16px;padding:12px 28px;min-height:48px}
/* Footer legibility */
.site-footer li,.site-footer p{font-size:15px;line-height:1.6}
.site-footer img{max-height:66px;width:auto}
/* New content sections */
.bell-section{padding:64px 24px;background:#fff}
.bell-section.alt{background:var(--bell-soft)}
.bell-wrap{max-width:1200px;margin:0 auto}
.bell-section h1{font-size:44px;line-height:1.15;margin:0 0 20px;font-weight:600;color:var(--bell-ink)}
.bell-section h2{font-size:32px;line-height:1.25;margin:0 0 18px;font-weight:600;color:var(--bell-ink)}
.bell-section p{max-width:860px}
.bell-section .bell-lead{font-size:20px;line-height:1.65;color:var(--bell-ink)}
.bell-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;margin:36px 0 8px;padding:0}
.post-content .bell-facts li{border-left:3px solid var(--bell-dark);padding:4px 0 4px 16px;font-size:15px;line-height:1.45;color:var(--bell-muted);margin:0}
.bell-facts strong{display:block;font-size:30px;line-height:1.15;color:var(--bell-ink);font-weight:700;margin-bottom:4px}
.bell-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;margin-top:36px}
.bell-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bell-line);border-radius:6px;overflow:hidden;color:inherit!important;text-decoration:none!important;transition:box-shadow .2s ease,transform .2s ease}
.bell-card:hover,.bell-card:focus-visible{box-shadow:0 10px 28px rgba(0,0,0,.12);transform:translateY(-2px)}
.bell-card img{width:100%;height:auto;aspect-ratio:367/228;object-fit:cover;display:block;background:var(--bell-soft)}
.bell-card .bc-body{padding:18px 20px 22px}
.bell-card h3{font-size:19px;line-height:1.3;margin:0 0 8px;color:var(--bell-ink);font-weight:600}
.post-content .bell-card p{font-size:15.5px;line-height:1.6;color:var(--bell-muted);margin:0}
.bell-two{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start}
.bell-links{list-style:none;margin:0;padding:0}
.post-content .bell-links li{padding:12px 0;border-bottom:1px solid var(--bell-line);margin:0}
.bell-links a{color:var(--bell-ink);text-decoration:none;font-weight:500}
.bell-links a:hover{text-decoration:underline}
.bell-cta{background:var(--bell-dark);color:#fff;padding:32px;border-radius:6px}
.bell-cta h2,.post-content .bell-cta p{color:#fff}
.bell-cta .btn{margin-right:16px}
.bell-tel{color:#fff!important;font-weight:600;font-size:18px}
@media (max-width:959px){.bell-facts{grid-template-columns:repeat(2,1fr)}.bell-two{grid-template-columns:1fr}.bell-section h1{font-size:34px}.bell-section h2{font-size:26px}}
@media (max-width:600px){.bell-section{padding:44px 16px}.bell-section .bell-lead{font-size:18px}.bell-facts strong{font-size:24px}}
@media (prefers-reduced-motion:reduce){.bell-card{transition:none}.bell-card:hover{transform:none}}
