/* Maryland logo palette. Load after the existing styles.css. */
:root{--green:#111111;--ink:#48291e;--muted:#6c5145;--pale:#f7f2e9;--line:#ddcdb9;--cream:#fff4df;--white:#fffdf8;--brand-orange:#ff690b;--orange-ink:#b54105;--brown:#482719;--brand-font:Georgia,'Times New Roman',serif}
body{font-family:var(--brand-font);background:var(--white);color:var(--ink)}
h1,h2,h3,.brand,.eyebrow,.number,button,input,select,textarea,em,.quote-grid blockquote p,.brand-icon{font-family:var(--brand-font)}
h1,h2,h3{color:var(--orange-ink);font-weight:700;letter-spacing:-.035em;line-height:1.12}h2 em{font-weight:700}em{font-style:normal}p{color:var(--muted)}
header{background:rgba(255,253,248,.98);border-color:var(--line)}.brand{color:var(--orange-ink);font-weight:700}.brand small{font-size:.68rem}.brand-icon{color:var(--green);border-color:var(--brown)}nav{font-size:1rem}nav>a:not(.button){color:var(--orange-ink)}nav>a:not(.button):hover{color:var(--green)}
.topbar{background:var(--brown);color:var(--cream)}.topbar a{color:var(--brand-orange)}
.hero h1{color:var(--brand-orange);font-weight:700;font-size:clamp(3.7rem,7vw,7.2rem);line-height:1.04}.hero-shade{background:linear-gradient(90deg,rgba(35,20,12,.88),rgba(0,0,0,.36) 76%),linear-gradient(0deg,rgba(31,19,10,.4),transparent 40%)}.hero .light{color:#ffd4a7}.hero-copy,.hero-bottom{color:var(--cream)}.text-link{color:var(--cream);border-color:#d5b69a}
.eyebrow{color:var(--green);font-size:.8125rem;letter-spacing:.1em}.light{color:#f4be85}.lead{color:var(--brown)}.underlined{color:var(--orange-ink);border-color:var(--orange-ink)}
.button{background:var(--brown);border-color:var(--brown);color:var(--brand-orange);font-size:1rem}.button:hover{background:var(--green);border-color:var(--green);color:#fff4df}.button.cream{background:var(--brand-orange);border-color:var(--brand-orange);color:#321a0d}.button.cream:hover{background:#ff8b39;color:#321a0d}.ribbon{background:var(--green);color:#fff4df;border:0}.ribbon span:before{color:var(--brand-orange)}
.services-section,.contact-section,.gallery-intro{background:var(--pale)}.service,form,.quote-grid blockquote{background:var(--white);border-color:var(--line)}.service h3{min-height:57px}.service a{color:var(--orange-ink)}.service .number{color:var(--green)}.filters button{background:var(--white);border-color:var(--line);color:var(--brown);font-family:var(--brand-font)}.filters button.active{background:var(--brown);border-color:var(--brown);color:var(--brand-orange)}.photo-plus{background:var(--brown);color:var(--brand-orange)}
.feature{background:var(--green)}.feature h2,.gallery-cta h2{color:var(--brand-orange)}.feature-copy p:not(.eyebrow){color:#f1e9d9}.feature-copy .eyebrow{color:#ffd4a7}.quote-mark{color:var(--orange-ink)}.quote-grid blockquote p{color:var(--brown)}.quote-grid footer{color:var(--green)}.contact-phone{color:var(--orange-ink);font-weight:700}.contact-details a{color:var(--brown)}label{color:var(--brown)}input,select,textarea{background:#fffefb;border-color:#c9b79d;color:var(--brown)}
.footer{background:var(--brown)}.footer-brand{color:var(--brand-orange)}.footer p,.footer .copyright{color:#e4d1bd}.footer .copyright{border-color:#79533b}.footer .wrap>div:nth-child(2){color:#ffb06c}.gallery-cta{background:var(--green)}.menu-toggle{background:var(--white);color:var(--orange-ink);border-color:var(--line)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#cc570c}
/* Exactly one before/after pair at the bottom of the introduction. */
.about{row-gap:44px}.project-comparison{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:4px;padding-top:35px;border-top:1px solid var(--line)}.comparison-card{margin:0;min-width:0}.comparison-label{display:flex;align-items:center;gap:12px;color:var(--orange-ink);font-size:1.65rem;font-weight:700;margin:0 0 14px}.comparison-label:before{content:'';width:26px;height:3px;background:var(--green)}.comparison-photo{display:block;width:100%;padding:0;border:0;background:var(--brown);overflow:hidden;cursor:zoom-in}.comparison-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 48%;transition:transform .5s}.comparison-photo.after img{transform:scale(1.07)}.comparison-photo.before:hover img{transform:scale(1.025)}.comparison-photo.after:hover img{transform:scale(1.095)}.comparison-note{grid-column:1/-1;margin-top:-12px;font-size:.875rem;color:var(--muted)}.comparison-dialog{max-width:min(1200px,94vw);background:var(--white);color:var(--brown)}.comparison-dialog button{font-family:var(--brand-font);color:var(--brown)}.comparison-dialog img{object-fit:contain;width:auto;height:auto;max-width:100%;max-height:75vh}.comparison-dialog p{color:var(--brown)}
@media(max-width:1050px){nav{gap:20px;font-size:.95rem}.brand{font-size:1.15rem}}
@media(max-width:760px){nav{background:var(--white)}.hero h1{font-size:clamp(3.2rem,10.8vw,5rem)}.brand{font-size:1.1rem}.brand small{font-size:.58rem}.service h3{min-height:0}.project-comparison{grid-template-columns:1fr;gap:25px;padding-top:28px}.comparison-note{margin-top:-10px}.hero-shade{background:linear-gradient(90deg,rgba(35,20,12,.88),rgba(0,0,0,.55))}h2{font-size:2.6rem}.comparison-label{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.comparison-photo img{transition:none}}

/* Original supplied logo, without recoloring or reconstruction. */
a.brand{display:block;flex-shrink:0;line-height:0}.actual-logo{display:block;width:260px;height:auto;max-width:100%}.nav{min-height:126px}.footer .actual-logo{width:290px}.footer-brand{max-width:100%}@media(max-width:1050px){.actual-logo{width:220px}}@media(max-width:760px){.actual-logo{width:210px}.nav{min-height:104px}.footer .actual-logo{width:260px}}

.project-number{display:block;color:var(--green);font-size:.875rem;letter-spacing:.04em;margin:0 0 12px;font-family:var(--brand-font)}[hidden]{display:none!important}
