/* C.O.M / Design and Build — identity layer. Existing section layout is retained. */
:root{--brand:#7f281e;--accent:#7f281e;--brand-deep:#5a1b13;--cream:#f8f5f0;--sand:#e9dfd4;--paper:#fffdf9;--ink:#2d2723;--muted:#766a62;--line:#ded3c7;--panel:#f0e9e0;--font-body:"Be Vietnam Pro",Arial,sans-serif;--font-display:"Exo 2","Be Vietnam Pro",sans-serif}
body{background:var(--cream);color:var(--ink);font-family:var(--font-body);font-weight:400;font-size:15px;line-height:1.8}
h1,h2,h3,h4,.section-title,.hero-title{font-family:var(--font-display);font-weight:600;letter-spacing:.015em}
button,input,textarea,select{font-family:var(--font-body)}
::selection{background:var(--brand);color:white}
a:hover{color:var(--brand-deep)}
.eyebrow{color:var(--brand);font-size:10px;letter-spacing:.16em;font-weight:600}
.section-title{color:var(--brand);font-weight:600;letter-spacing:.025em;font-size:clamp(29px,3.1vw,42px)}
.section-title.big{font-size:clamp(34px,4vw,55px)}
.section-header p,.section-header .muted,.muted{color:var(--muted)}
.button{border-radius:4px;font-weight:500;font-size:12px;letter-spacing:.025em;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.button-accent{background:var(--brand);color:#fff;box-shadow:0 5px 15px #7f281e12}
.button-accent:hover{background:var(--brand-deep);color:#fff;transform:translateY(-1px);box-shadow:0 8px 20px #7f281e22}
.button-dark{background:var(--brand-deep);color:#fff}.button-dark:hover{background:#3f1712;color:#fff}
.button-outline{color:var(--brand);border-color:#a76f63;background:transparent}
.button-outline:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.text-link{color:var(--brand);border-bottom-color:#b89082;font-weight:500;font-size:12px;letter-spacing:.04em}
.circle-button{border-color:var(--line);background:transparent;color:var(--brand)}
.circle-button:hover{background:var(--brand);color:white;border-color:var(--brand)}
/* Light header, original navigation hierarchy. */
.site-header{background:#fffefb;border-bottom:1px solid var(--line);box-shadow:0 4px 25px #4e261005;gap:25px}
.brand{flex:0 0 168px;width:168px;height:auto;display:flex;align-items:center}
.brand-image{width:100%;height:auto;max-height:74px;object-fit:contain;mix-blend-mode:multiply}
.primary-menu{background:transparent}
.primary-menu>li>a{font-family:var(--font-display);font-size:14px;letter-spacing:.025em;font-weight:600;padding-inline:15px;color:#493a32}
.primary-menu>li:hover,.primary-menu>li:focus-within{background:var(--cream)}
.primary-menu>li>a:hover{color:var(--brand)}
.primary-menu .sub-menu{background:var(--paper);border-top-color:var(--brand);box-shadow:0 20px 45px #40201418;border-radius:0 0 4px 4px}
.primary-menu .sub-menu li{border-bottom-color:#e9dfd4}.primary-menu .sub-menu a{font-size:12px;color:#4e4037}
.primary-menu .sub-menu a:hover{color:var(--brand);background:var(--cream)}
.submenu-toggle{color:#907264}.search-toggle{border-color:#b58a7c;color:var(--brand)}
.search-dialog,.faq-dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:6px;box-shadow:0 30px 90px #2d1b1440}
dialog::backdrop{background:#2b1c16a8;backdrop-filter:blur(6px)}
.search-form{border-bottom-color:#b99384}.search-form input{color:var(--ink)}.search-form button{color:var(--brand)}
.search-dialog-inner>p:last-child{color:var(--muted);font-size:12px;letter-spacing:.08em}
/* Hero retains its slot, footprint and optional video controls. */
.home-hero{background:var(--sand);border-radius:5px;overflow:hidden}
.hero-copy{padding-inline:25px;max-width:1280px;color:#fff}
.hero-copy .eyebrow{color:#fff0dd;letter-spacing:.24em;font-size:11px}
.hero-title{font-size:clamp(34px,4.6vw,66px);font-weight:500;line-height:1.16;max-width:690px;letter-spacing:.005em;text-shadow:0 3px 25px #0003}
.home-hero:has(.hero-copy):after{background:linear-gradient(90deg,#281811af 0%,#28181145 48%,#28181100 85%)}
.hero-copy .button{background:#fff9ef;color:var(--brand);border-color:#fff9ef;padding-inline:26px}
.hero-copy .button:hover{background:white;color:var(--brand-deep)}
.hero-scroll{color:#fff;border-color:#fff9;background:#53362b20}.video-toggle{color:white;border-color:#fff8}
.stats-bar{background:var(--paper);border-color:var(--line);border-top-width:1px;border-bottom-width:1px}
.stat{border-right-color:var(--line)}.stat strong{font-family:var(--font-display);color:var(--brand);font-size:clamp(28px,2.7vw,50px);font-weight:500}
.stat>span{color:var(--muted);font-size:16px;line-height:1.6}.stat-plus{font-size:.65em;font-weight:400}
.story-section{background:var(--cream)}.story-section:after{background:linear-gradient(transparent,#37271c33)}
.story-panels{background:var(--paper);color:var(--ink);box-shadow:0 20px 60px #4d281317;border:1px solid var(--line);border-radius:5px;overflow:hidden}
.story-panels>div+div{border-left-color:var(--line)}
.story-panels h2{font-family:var(--font-display);background:#eee5db;color:var(--brand);border-bottom-color:var(--line);letter-spacing:.06em;font-size:19px;font-weight:600}
.story-panels p{font-size:14px;color:#685950;line-height:1.9}
.services-grid{border-top-color:var(--line)}
.service-card{border-color:var(--line);transition:background .2s}.service-card:hover{background:#ede3d54a}
.service-num{color:#ab8d7b;font-family:var(--font-display);letter-spacing:.1em}.service-icon{color:var(--brand)}
.service-card h3{font-family:var(--font-display);font-weight:600;font-size:21px;letter-spacing:.02em;color:#492e22}
.service-card p{color:var(--muted);font-size:13px}.service-more{color:var(--brand);border-color:#b79381}
.process-band{background:var(--sand);color:#493227;border-block:1px solid #ddcbbb}
.process-band h2{font-family:var(--font-display);font-size:15px;letter-spacing:.12em;color:var(--brand)}
.process-step .step-icon{color:var(--brand)}.process-step h3{font-family:var(--font-display);font-size:15px;letter-spacing:.04em;font-weight:600}
.process-step:hover{color:var(--brand)}.process-step:not(:last-child):after{background:#af8b7355}
/* Project grids keep their column and rail structure. */
.project-card{background:var(--paper);border:1px solid var(--line);border-radius:5px;overflow:hidden;transition:box-shadow .25s,transform .25s}
.project-card:hover{box-shadow:0 14px 35px #61382011;transform:translateY(-2px)}
.project-image{background:var(--sand)}.image-arrow{background:var(--paper);color:var(--brand);border-radius:3px}
.project-meta{color:#926b58;font-family:var(--font-display);font-weight:500;letter-spacing:.1em}
.project-meta span{color:#b8a18f}.project-caption h3{font-family:var(--font-display);font-size:21px;font-weight:500;line-height:1.45;color:#3d2e26}
.project-facts{border-top-color:var(--line);color:#837163;font-size:12px}.project-facts .icon{color:#986f59}
.rail-progress{background:#d7c5b5}.rail-progress i{background:var(--brand)}
.standards-section{background:#ede5da;border-block:1px solid #dfd0c2}
.standards-intro>p:not(.eyebrow){color:#776457}.standards-counter{font-family:var(--font-display);color:var(--brand);font-weight:400}
.standards-counter small{color:#ac8f7b}.standards-tabs{border-color:#ccb6a3}
.standards-tabs button{color:#b39a87;font-family:var(--font-display)}.standards-tabs button[aria-selected=true]{color:var(--brand);border-bottom-color:var(--brand)}
.standard-panel>img{border-radius:4px}.standard-panel h3{font-family:var(--font-display);letter-spacing:.045em;font-size:22px;color:var(--brand)}
.standard-panel p{color:#786555}
.testimonials-section{background:#fffdf8;border-bottom-color:var(--line)}
.testimonial-copy{font-family:var(--font-display);color:#543f32;font-size:25px;line-height:1.65;font-weight:400}
.testimonial-copy p+p{font-family:var(--font-body);color:#9b7e68;font-size:11px}
.testimonial-author strong{color:var(--brand);font-family:var(--font-display);font-size:13px}.testimonial-author span{color:#927c69}
.testimonial-author>img{border-radius:5px}.slider-dots button{background:#d4bdab}.slider-dots button[aria-pressed=true]{background:var(--brand)}
.press-logo{color:#9d8069;filter:none;opacity:1;font-family:var(--font-display);font-size:17px;font-weight:500;letter-spacing:.02em}
.press-logo small{color:#ae9582}.press-logo:hover{color:var(--brand)}
.people-section:after{background:linear-gradient(90deg,#342016e6,#34201670 65%,#34201614)}
.people-content .section-title{color:#fff8eb;font-family:var(--font-display);font-weight:500;letter-spacing:.03em}
.people-content .eyebrow{color:#ebc8ad}.people-content>p:not(.eyebrow){color:#efe1d1;font-size:16px}
.people-content .button{background:var(--paper);color:var(--brand)}
.activity-card{border-radius:4px}.activity-card:after{background:linear-gradient(transparent,#342016b8)}
.activity-card h3{font-family:var(--font-display);font-weight:500;color:#fff5e5;letter-spacing:.035em}
.article-image{background:var(--sand);border-radius:4px}.article-date{color:#a08067;letter-spacing:.12em;font-size:10px}
.article-card h2{font-family:var(--font-display);font-weight:500;color:#50382a;font-size:24px}.article-card p{color:#88715f;font-size:13px}
.journal-categories a{border-color:#ccb8a5;color:#795a43;border-radius:3px;background:transparent;font-size:12px}
.journal-categories a.active{background:var(--brand);color:white;border-color:var(--brand)}
.quote-content{background:var(--brand);color:#fff9ef}.quote-content blockquote{font-family:var(--font-display);font-weight:400;letter-spacing:.01em;line-height:1.6}
.quote-content>p{color:#e7c7b7;letter-spacing:.08em;font-size:11px}
.quote-content .button-dark{background:#fff8ed;color:var(--brand)}.quote-content .button-dark:hover{background:#eee1d3;color:var(--brand-deep)}
/* Cream footer with the supplied horizontal logo. */
.site-footer{background:#eee6dc;color:#77604e;border-top:1px solid #ddc9b5}
.footer-top{border-bottom-color:#d2bda7}.footer-wordmark{display:block;width:250px;max-width:70%}.footer-wordmark img{width:100%;height:auto;mix-blend-mode:multiply}
.social-links a{color:var(--brand);font-size:11px;letter-spacing:.08em}
.footer-grid h3{font-family:var(--font-display);font-size:15px;color:var(--brand);letter-spacing:.075em}
.footer-grid p,.footer-grid li{font-size:11px;line-height:1.9}.footer-grid a:hover{color:var(--brand-deep)}
.footer-bottom{background:#e5d9cb;color:#8b7159;border-top-color:#d6c0a8;font-size:10px;letter-spacing:.035em}
.float-action{background:var(--brand);color:white;box-shadow:0 4px 18px #632c2225;font-weight:500}
.float-action:hover{background:var(--brand-deep);color:#fff}.float-action.back-to-top{color:var(--brand);background:var(--paper);border-color:#c9aa92}
/* All secondary pages and forms receive the same identity. */
.inner-hero{background:var(--sand)}.inner-hero>img{opacity:.9}.inner-hero:after{background:linear-gradient(transparent,#40241770)}
.inner-caption{filter:drop-shadow(0 12px 25px #34201818)}
.inner-caption h1{background:#fcf8f1;color:var(--brand);font-family:var(--font-display);font-size:27px;letter-spacing:.065em;font-weight:600;border:1px solid #d7bfa9}
.inner-caption p{background:var(--paper);color:#93775e;border:1px solid #e0cdbb;border-top:0;font-size:13px}
.breadcrumbs{color:#9d8068}.breadcrumbs a{color:#7b5c46}.breadcrumbs>span[aria-hidden]{color:var(--brand)}
.project-filter{background:#eee4d8;border:1px solid #e0ccba;border-radius:4px}.filter-search .icon{color:#a8886d}.filter-reset{color:#927052}
input,select,textarea{background:var(--paper);color:#573d2c;border:1px solid #cdb9a5;border-radius:3px;font-size:13px}
input::placeholder,textarea::placeholder{color:#b19781}select{color:#806047}option{background:#fffdf9;color:#573d2c}
.lead-form>label,.lead-form .form-row>label,.calculator label{color:#98785c;font-size:11px;letter-spacing:.015em}
.lead-form .consent{color:#9a7b60}.consent a{color:var(--brand)}.form-status{color:#8a694e}.form-status.error{color:#a63124}.form-status.success,.form-success{color:#42634c}
.form-panel{background:var(--paper);border-color:#dfcab6;border-radius:5px;box-shadow:0 15px 40px #8e5b3410}
.form-panel h2{font-family:var(--font-display);color:var(--brand);font-weight:500}
.footer-contact input,.footer-contact select{background:#f6efe5;border-color:#ccb59d;color:#805e42}
.footer-contact .lead-form label,.footer-contact .consent{color:#977353}
.contact-split>div:first-child>p,.contact-split address{color:#927053}.contact-phone{color:var(--brand);font-family:var(--font-display);font-weight:500}
.office-card{background:var(--paper);border:1px solid var(--line);border-radius:4px;overflow:hidden}.office-card h3{font-family:var(--font-display);font-weight:500;color:var(--brand)}
.office-card p{color:#987455}.office-card .icon{color:#aa7e58}
.map-placeholder{background:repeating-linear-gradient(35deg,#f1e7d9,#f1e7d9 20px,#eee1d2 20px,#eee1d2 40px);border:1px solid #ddc8b2;border-radius:4px}
.price-card{background:var(--paper);border-color:#d9c1a9;border-radius:4px}.price-card:last-child{background:#eadbc9;border-color:#bd9978}
.price-card h2{color:#6f492d;font-family:var(--font-display);font-weight:500}.price{font-family:var(--font-display);font-weight:500;color:var(--brand)}
.price small{color:#b08d6c;font-family:var(--font-body)}.price-card ul{border-top-color:#d7bda2}.price-card li{color:#9b7551}
.price-note{color:#b18b63}.price-disclaimer{color:#a37c54;border-left-color:#bf9670}
.calculator{border-color:#c4a17d;border-radius:5px;overflow:hidden;box-shadow:0 18px 50px #77522b12}
.calculator-inputs{background:var(--paper)}.calculator-inputs h2{color:var(--brand);font-family:var(--font-display);font-weight:500}
.calculator-result{background:#e6d4bb;color:#714e29}.calculator-result .eyebrow{color:#a67c48}.calculator-result h3{color:#7f542a;font-family:var(--font-display)}
.estimate-total{font-family:var(--font-display);font-weight:500;color:var(--brand)}.calculator-result dl>div{border-bottom-color:#c7aa83}.calc-note{color:#ad8453}
.calculator-result .button-dark{background:var(--brand);color:white}.print-estimate{color:#a27846;border-bottom-color:#c3a171}
.results-heading{color:#b18c62}.results-heading strong{color:var(--brand)}
.empty-state{background:#eee2d1;color:#a37a4c;border:1px solid #dcc4a8;border-radius:4px}.empty-state h2{color:var(--brand)}
.page-numbers a,.page-numbers span,.pagination .nav-links>a,.pagination .nav-links>span{border-color:#cfaf8a;border-radius:3px;color:#b28a5c}
.page-numbers .current,.pagination .nav-links .current{background:var(--brand);color:white;border-color:var(--brand)}
.timeline article{border-top-color:#d4b691}.timeline article>span{color:var(--brand);font-family:var(--font-display)}
.timeline h2{font-family:var(--font-display);color:#956736}.timeline p{color:#a47e4e}
.standards-list details,.faq-list details{border-bottom-color:#d3b58e}.standards-list summary,.faq-list summary{color:#956730;font-family:var(--font-display);font-weight:500}
.faq-answer,.faq-empty{color:#a27b48}.team-grid h3{color:var(--brand);font-family:var(--font-display);font-weight:500}.team-grid p{color:#a7804e}
.testimonial-card{border-bottom-color:#d0b085}.testimonial-card h2{color:var(--brand);font-family:var(--font-display);font-weight:500}
.review-stars{color:var(--brand)}
.project-detail-hero{background:var(--sand)}.project-detail-hero:after{background:linear-gradient(transparent,#2c1a10c9)}
.project-detail-title h1{color:white;font-family:var(--font-display);font-weight:500;letter-spacing:.015em}.project-detail-title .eyebrow{color:#f3cf9e}
.project-info-strip{border-color:#c7a777}.project-info-strip .icon{color:var(--brand)}.project-info-strip span{color:#ae844e}.project-info-strip strong{color:#94652c;font-family:var(--font-display);font-weight:500}
.entry-content{color:#98703c}.entry-content h2,.entry-content h3{color:#8b5a23;font-family:var(--font-display);font-weight:500}
.entry-content blockquote{background:#efe0c9;border-left-color:var(--brand)}.entry-content td,.entry-content th{border-color:#d7b78e}
.entry-content .demo-note{background:#eee1cb;border-left-color:#c59d69;color:#b08b58;font-size:11px}
.article-sidebar .sticky-box{background:#f1e4d0;border:1px solid #dbc19b;border-top:2px solid var(--brand);border-radius:4px}
.sticky-box h2{color:#88551b;font-family:var(--font-display);font-weight:500}.sticky-box p{color:#b18b54}.sticky-box hr{border-top-color:#d3b387}
.table-of-contents a{border-left-color:#c9a26d;color:#a2763a}.table-of-contents a:hover{border-left-color:var(--brand);color:var(--brand)}
.lightbox{background:#281b13f5;color:white}.lightbox .circle-button{color:white;border-color:#d7b88e70}.lightbox figcaption{color:#dbbc8c}
.compare-line>span{background:var(--brand);color:white}.compare-label{background:#4a2a0bb0;color:#fff7ea}
.video-consent{background:#f1e2ca;border:1px solid #d8b98d;border-radius:4px}.video-consent summary{color:#a36c25}
.brochure summary{background:#e4cdab;color:#945a10}.brochure object{border-color:#d4ae77}
.article-byline,.article-tags{color:#b18a51}.share-links{border-color:#d6b786;color:#b28b50}.share-links button{color:var(--brand)}
.comment-list li{border-bottom-color:#d1ac72}.comment-metadata{color:#b58c4b}.comment-form label{color:#af8645}.comment-form .submit{background:var(--brand);color:white;border-radius:3px}
.rating-widget{background:#efe0c5;border-color:#d6b481;border-radius:4px;color:#a27027}.rating-buttons button{color:#d0ac74}.rating-summary,.rating-status{color:#b58b46}
.error-number{color:var(--brand);font-family:var(--font-display);font-weight:500}.error-page h1{color:#8b5613}
/* Neutral text and quiet stone borders keep the brick red as the sole accent. */
.entry-content,.faq-answer,.faq-empty,.standard-panel p,.office-card p,.article-card p,.price-card li,.price-note,.price-disclaimer,.timeline p,.contact-split address,.contact-split>div:first-child>p,.calculator label,.lead-form>label,.lead-form .form-row>label,.lead-form .consent,.calc-note,.sticky-box p,.testimonial-author span,.team-grid p,.rating-summary,.rating-status{color:var(--muted)}
.entry-content h2,.entry-content h3,.price-card h2,.timeline h2,.faq-list summary,.standards-list summary,.sticky-box h2,.calculator-result h3,.office-card h3,.testimonial-card h2,.team-grid h3,.error-page h1{color:#553a30}
.project-info-strip,.standards-list details,.faq-list details,.timeline article,.testimonial-card,.share-links,.comment-list li,.entry-content td,.entry-content th{border-color:var(--line)}
.project-info-strip span,.article-byline,.article-tags,.comment-metadata,.comment-form label,.table-of-contents a,.results-heading,.breadcrumbs{color:#8d7c70}.project-info-strip strong{color:#553a30}
.calculator-result{background:#e8d8c7;color:#553a30}.calculator-result .eyebrow{color:var(--brand)}.calculator-result dl>div{border-color:#cab29e}
.entry-content .demo-note,.rating-widget,.article-sidebar .sticky-box,.video-consent{background:#f0e7dc;border-color:#d7c6b5}.entry-content .demo-note{color:#947b67}.rating-widget{color:#553a30}
.comment-form .submit,.rating-buttons button:hover,.rating-buttons button.chosen{color:var(--brand)}.comment-form .submit{color:white}.rating-buttons button{color:#bfa38e}
@media(max-width:1199px){.site-header{gap:14px}.brand{flex-basis:145px;width:145px}.primary-menu>li>a{font-size:10px;padding-inline:10px;letter-spacing:.01em}}
@media(max-width:991px){.brand{flex-basis:160px;width:160px}.brand-image{width:160px;height:auto;max-height:61px}.main-navigation{background:var(--paper)}.primary-menu>li{border-bottom-color:var(--line)}.primary-menu>li>a{font-size:15px;letter-spacing:.035em}.primary-menu .sub-menu{background:#f3eadd}.primary-menu .sub-menu li{border-bottom-color:#e6d5c0}.primary-menu>li:hover{background:transparent}.stat{border-bottom-color:var(--line)}.service-card{border-color:var(--line)}.hero-copy{padding-inline:10px}.section-title{font-size:34px}}
@media(max-width:767px){.brand{flex-basis:145px;width:145px;height:auto}.brand-image{width:145px;height:auto;max-height:51px}.site-header{gap:10px}.hero-title{font-size:31px;max-width:320px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.12em}.story-panels>div+div{border-top-color:var(--line)}.story-panels h2{font-size:17px;letter-spacing:.035em}.service-card{border-color:var(--line)!important}.service-card h3{font-size:18px}.process-step h3{font-size:13px}.project-caption h3{font-size:20px}.testimonials-grid .section-title{font-size:34px}.testimonial-copy{font-size:22px}.footer-wordmark{width:225px}.footer-wordmark img{width:225px}.footer-grid h3{font-size:14px}.footer-grid p,.footer-grid li{font-size:11px}.footer-grid>div:first-child p{font-size:12px}.inner-caption h1{font-size:21px;letter-spacing:.03em}.inner-caption p{font-size:12px}.people-section:after{background:linear-gradient(90deg,#342016e6,#34201680)}.people-content .section-title{font-size:37px}.people-content>p:not(.eyebrow){font-size:15px}.quote-content blockquote{font-size:24px}.contact-split .section-title{font-size:35px}.calculator-inputs h2{font-size:27px}.section-title{font-size:29px}.section-title.big{font-size:33px}}
@media print{body{color:#222;background:#fff}.calculator-result{background:#fff;color:#222}.calc-note,.calculator-result .eyebrow{color:#555}.entry-content,.entry-content h2,.section-title{color:#222}.estimate-total{color:#222}}
