/*
Theme Name: Caveman Northern Colorado
Description: A lightweight, accessible WordPress theme for Caveman Computer Consulting. Includes editable page drafts and a deliberate migration setup screen.
Version: 1.4.3
Requires at least: 6.5
Requires PHP: 7.4
Author: Caveman Computer Consulting
License: GPL v2 or later
Text Domain: caveman-noco
*/
:root{--ink:#17201c;--muted:#52625a;--paper:#fff;--soft:#f2f5ee;--green:#c8f36e;--forest:#203f31;--line:#dbe2d8;--radius:16px;--wrap:1160px}
#email-form .wp-block-columns{gap:48px}#email-form .inquiry-form{background:#fff;padding:32px;border:1px solid var(--line);border-radius:var(--radius)}#email-form .ff-el-form-control{font:inherit;color:var(--ink);border:1px solid #b7c6b7;border-radius:6px;min-height:46px;padding:10px 12px}#email-form .ff-el-form-control:focus{border-color:#438b2d;box-shadow:0 0 0 2px rgba(67,139,45,.16)}#email-form .ff-el-input--label label{font-size:.86rem;font-weight:700;color:var(--ink)}#email-form .ff-btn-submit{background:var(--green);color:var(--ink);border:1px solid var(--ink);border-radius:7px;font:800 .82rem/1.4 Arial,Helvetica,sans-serif;padding:14px 22px;cursor:pointer}#email-form .ff-btn-submit:hover{background:#b9e75a}#email-form .ff-message-success{color:var(--ink);background:var(--soft);border:1px solid #a8c99d;border-radius:8px;box-shadow:none;padding:22px}#email-form .ff-el-group{margin-bottom:20px}#email-form textarea.ff-el-form-control{min-height:135px}@media(max-width:800px){#email-form .wp-block-column{flex-basis:100%}#email-form .wp-block-columns{gap:28px}}@media(max-width:480px){#email-form .inquiry-form{padding:22px}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit;text-underline-offset:.2em}a:hover{color:#327044}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #438b2d;outline-offset:5px}h1,h2,h3,h4,p,figure{margin:0 0 1.1rem}h1,h2,h3,h4{font-weight:750;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.2vw,4.7rem)}h2{font-size:clamp(2rem,3.3vw,3rem)}h3{font-size:1.48rem;letter-spacing:-.025em;line-height:1.2}p:last-child{margin-bottom:0}a img{display:block}.wrap{max-width:var(--wrap);width:calc(100% - 80px);margin-inline:auto}.section{padding:84px 0}.section h2{margin-bottom:26px}.section p{max-width:78ch}.eyebrow{font-size:.71rem;letter-spacing:.15em;line-height:1.4;font-weight:800;margin-bottom:24px;text-transform:uppercase}.soft{background:var(--soft)}.skip-link{position:absolute;top:-100px;left:20px;background:var(--green);color:var(--ink);padding:12px;z-index:100}.skip-link:focus{top:12px}
.topline{background:var(--ink);color:#edf3e8;text-align:center;font-size:.7rem;letter-spacing:.06em;padding:8px 20px}.topline a{margin-left:8px;font-weight:700}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{min-height:95px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;text-decoration:none;gap:12px;color:var(--ink);flex-shrink:0}.brand-mark{width:43px;height:43px;border-radius:10px;background:var(--ink);color:var(--green);display:grid;place-items:center;font-size:27px;font-weight:900;line-height:1;transform:rotate(-5deg)}.brand-name{font-size:1.3rem;line-height:1.05;font-weight:900;letter-spacing:-.045em}.brand-name small{display:block;font-size:.6rem;letter-spacing:.13em;font-weight:700;line-height:1.65}.main-nav{margin-left:auto}.main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:23px}.main-nav a{font-size:.77rem;font-weight:700;text-decoration:none;white-space:nowrap}.main-nav a[aria-current=page],.main-nav .current-menu-item>a{text-decoration:underline;text-decoration-color:#6b9e3c;text-decoration-thickness:2px;text-underline-offset:7px}.header-cta{font-size:.75rem;font-weight:800;background:var(--green);padding:12px 17px;text-decoration:none;border:1px solid var(--ink);border-radius:7px;white-space:nowrap}.menu-toggle{display:none;border:1px solid var(--line);padding:8px 14px;background:#fff;border-radius:6px;font-weight:700}.hero{background:var(--ink);color:#fff;padding:72px 0 68px}.hero .wp-block-columns{align-items:center;gap:48px}.hero .wp-block-column:first-child{flex-basis:55%}.hero .wp-block-column:last-child{flex-basis:45%}.hero .eyebrow{color:var(--green)}.hero h1{max-width:750px;margin-bottom:24px}.hero-subtitle{font-size:1.1rem!important;color:#fff!important;font-weight:700;line-height:1.5;max-width:29ch!important}.hero p:not(.eyebrow):not(.hero-subtitle){color:#c8d2ca;font-size:.94rem;max-width:49ch}.hero-caption{font-size:.7rem!important;margin-top:26px;letter-spacing:.02em}.hero .wp-block-buttons{margin-top:32px}.brand-card{background:#2a352f;border:1px solid #536149;border-radius:16px;overflow:hidden;box-shadow:15px 15px 0 #c8f36e;transform:rotate(1.3deg)}.brand-card figure{margin:0;line-height:0}.brand-card img{width:100%;height:auto;display:block}.brand-card-copy{padding:31px 30px 26px}.brand-card-copy .eyebrow{font-size:.62rem;margin-bottom:15px}.brand-card-copy h3{font-size:2rem;letter-spacing:-.035em}.brand-card-copy p:not(.eyebrow){font-size:.83rem!important}.location-note{padding-top:18px;border-top:1px solid #52604e;margin-top:21px;font-size:.67rem!important}.status-dot{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--green)}
.wp-block-columns{display:flex;gap:24px;margin-bottom:26px;align-items:stretch}.wp-block-columns:last-child{margin-bottom:0}.wp-block-column{flex:1;min-width:0}.wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:26px 0 0}.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;background:var(--green);border:1px solid var(--ink);border-radius:7px;padding:14px 22px;color:var(--ink);font-size:.82rem;font-weight:800;line-height:1.4;text-decoration:none;transition:transform .15s,background .15s}.wp-block-button__link:hover{transform:translateY(-2px);background:#b9e75a;color:var(--ink)}.is-style-outline .wp-block-button__link{background:transparent;color:inherit;border-color:currentColor}.is-style-outline .wp-block-button__link:hover{background:rgba(140,170,140,.12)}.trust-strip{padding:27px 0;background:var(--green);border-bottom:1px solid #aacb64}.trust-strip p{font-size:.74rem;line-height:1.7}.trust-strip strong{font-size:.86rem}.trust-strip .wp-block-column+.wp-block-column{border-left:1px solid #aacb64;padding-left:24px}.service-card{height:100%;border:1px solid var(--line);padding:30px;border-radius:var(--radius);background:#fff}.service-card h3{margin:18px 0}.service-card p{font-size:.86rem;color:var(--muted)}.card-number{font-size:.65rem!important;letter-spacing:.1em;color:#42513d!important;font-weight:800}.text-link{font-weight:800;color:var(--ink);font-size:.79rem;text-decoration:none;border-bottom:1px solid #91b76b;padding-bottom:4px}.service-card .text-link{display:inline-block;margin-top:14px}.steps{padding-left:52px;border-left:1px solid #c7d2c1}.steps p{font-size:.9rem;color:var(--muted)}.step-number{font-weight:800;color:#527b31!important;font-size:.75rem!important;margin-bottom:6px}.steps h3{font-size:1.25rem;margin-bottom:10px}.steps p:not(.step-number){margin-bottom:26px}.address-card{padding:35px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}.address-card h3{margin-bottom:25px}.address-card p{font-size:.92rem}.wp-block-details{border-top:1px solid var(--line);padding:21px 0}.wp-block-details:last-child{border-bottom:1px solid var(--line)}.wp-block-details summary{cursor:pointer;font-weight:700;padding-right:12px;font-size:1rem}.wp-block-details summary::marker{color:#567d30}.wp-block-details p{margin-top:16px;color:var(--muted);font-size:.94rem;padding-left:19px}.cta-band{background:var(--green);padding:66px 0}.cta-band .wp-block-button__link{background:var(--ink);color:#fff}.cta-band .is-style-outline .wp-block-button__link{color:var(--ink);background:transparent}.cta-band h2{max-width:20ch}.cta-band p{max-width:62ch}.site-footer{padding:58px 0 26px;background:var(--ink);color:#d1d9d1;font-size:.81rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.site-footer .brand{color:#fff;display:inline-flex;margin-bottom:22px}.site-footer .brand-mark{background:var(--green);color:var(--ink)}.site-footer h2{color:var(--green);font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;margin-bottom:20px}.site-footer ul{padding:0;margin:0;list-style:none}.site-footer li{margin-bottom:8px}.site-footer a:hover{color:var(--green)}.site-footer p{max-width:38ch}.footer-bottom{border-top:1px solid #39463b;padding-top:24px;margin-top:44px;font-size:.68rem;display:flex;justify-content:space-between;gap:20px}.page-heading{padding:57px 0;background:var(--soft);border-bottom:1px solid var(--line)}.page-heading .eyebrow{margin-bottom:18px}.page-heading h1{font-size:clamp(2.6rem,4vw,4rem);max-width:23ch;margin-bottom:20px}.page-heading .description{max-width:65ch;font-size:1rem;color:var(--muted)}.breadcrumb{font-size:.72rem;margin-bottom:24px}.page-content .section:first-child{padding-top:64px}.page-content h2:not(:first-child){margin-top:42px}.page-content .cta-band h2{margin-top:0}.page-content .wp-block-column h2{margin-top:0}.contact-phone{font-size:1.9rem;letter-spacing:-.03em;font-weight:800}.article-body{max-width:780px;padding-top:58px;padding-bottom:72px}.article-body h2{font-size:2rem;margin-top:40px}.article-body h3{margin-top:32px}.article-meta{font-size:.8rem;color:var(--muted)}.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.blog-card{border:1px solid var(--line);border-radius:16px;padding:35px}.blog-card h2{font-size:1.65rem}.pagination{margin-top:40px}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.empty-state{padding:70px 0}body .alignwide{max-width:var(--wrap)}
@media(min-width:1450px){.hero{padding-block:90px}}
@media(max-width:1200px){.header-inner{gap:20px}.main-nav ul{gap:15px}.header-cta{display:none}}
@media(max-width:900px){.header-inner{min-height:80px;flex-wrap:wrap;gap:0}.menu-toggle{display:block;margin-left:auto}.main-nav{width:100%;margin:0;padding-bottom:22px}.main-nav ul{flex-wrap:wrap;gap:16px 26px;padding-top:8px}.js .main-nav{display:none}.js .main-nav.is-open{display:block}}
@media(max-width:1100px){.header-inner{gap:20px}.main-nav ul{gap:15px}.header-cta{display:none}.hero .wp-block-columns{gap:35px}.brand-card-copy{padding:24px}.wrap{width:calc(100% - 54px)}.service-card{padding:24px}}
@media(max-width:800px){.section{padding:56px 0}.header-inner{min-height:80px;flex-wrap:wrap;gap:0}.menu-toggle{display:block;margin-left:auto}.main-nav{width:100%;margin:0;padding-bottom:22px}.main-nav ul{flex-wrap:wrap;gap:16px 26px;padding-top:8px}.js .main-nav{display:none}.js .main-nav.is-open{display:block}.hero .wp-block-columns{flex-direction:column;gap:40px}.wp-block-columns{flex-wrap:wrap}.wp-block-column{flex-basis:calc(50% - 16px)}.hero .wp-block-column{width:100%}.hero h1{font-size:clamp(2.9rem,7vw,4.4rem)}.hero .brand-card{max-width:510px;margin:0 auto 15px;transform:none;box-shadow:9px 9px 0 var(--green)}.hero .wp-block-column:last-child{width:100%}.trust-strip .wp-block-columns{flex-wrap:nowrap}.trust-strip .wp-block-column{flex:1}.trust-strip p{font-size:.67rem}.trust-strip strong{font-size:.76rem}.steps{padding-left:28px}.footer-grid{gap:30px;grid-template-columns:1.1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.blog-grid{grid-template-columns:1fr}}
@media(max-width:540px){body{font-size:16px}.wrap{width:calc(100% - 38px)}.topline{font-size:.59rem;letter-spacing:0}.topline a{display:none}.brand-name{font-size:1.15rem}.brand-mark{width:36px;height:36px}.header-inner{min-height:78px}.hero{padding-top:45px}.hero h1{font-size:2.9rem}.hero p:not(.eyebrow){font-size:.9rem}.hero .eyebrow{font-size:.63rem}.hero .brand-card{margin-right:8px}.hero-subtitle{font-size:1rem!important}.wp-block-column{flex-basis:100%}.wp-block-columns{gap:24px;margin-bottom:24px}.trust-strip{padding:23px 0}.trust-strip .wp-block-columns{display:block}.trust-strip .wp-block-column{padding:0 0 15px}.trust-strip .wp-block-column+.wp-block-column{padding:15px 0;border-left:0;border-top:1px solid #aacb64}.trust-strip .wp-block-column:last-child{padding-bottom:0}.trust-strip p{font-size:.77rem}.trust-strip strong{font-size:.86rem}.wp-block-button__link{padding:13px 17px;font-size:.75rem}.section h2{font-size:2rem}.service-card{padding:27px}.steps{padding-left:0;border-left:0;margin-top:15px}.address-card{padding:27px}.brand-card-copy h3{font-size:1.9rem}.footer-grid{display:block}.footer-grid>div{margin-bottom:35px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:12px}.page-heading{padding:42px 0}.page-heading h1{font-size:2.6rem}.contact-phone{font-size:1.65rem}.page-content a{overflow-wrap:anywhere}.article-body{padding-block:40px}.article-body h2{font-size:1.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
