:root { --ink:#303030; --warm:#8b755d; --line:#dedbd6; --paper:#fff; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:#f7f6f4; font-family:"Open Sans", Arial, sans-serif; font-size:15px; line-height:1.72; }
#layout { max-width:1240px; margin:0 auto; background:var(--paper); box-shadow:none; min-height:100vh; }
#header { width:100vw; margin-left:calc(50% - 50vw); border-top:5px solid var(--warm); padding:0; background:#3c424f; }
#header-holder { display:grid; grid-template-columns:1fr 240px 1fr; align-items:center; gap:15px; max-width:1100px; margin:0 auto; }
#logo { text-align:center; } #logo h2 { margin:0; } #logo img { width:190px; height:auto; filter:brightness(0) invert(1); }
nav ul { list-style:none; margin:0; padding:0; } nav > ul { display:flex; gap:21px; align-items:center; }
#menu-1 nav > ul { justify-content:flex-end; } #menu-2 nav > ul { justify-content:flex-start; }
nav a, nav .menu-trigger { color:#fff; font-size:13px; font-weight:700; letter-spacing:.04em; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
nav a:hover, nav .menu-trigger:hover { color:#f0cfa9; }
nav .menu-trigger { cursor:default; }
nav .menu-item { position:relative; } nav .sub-menu { display:none; position:absolute; z-index:10; top:100%; left:-13px; min-width:190px; padding:10px 13px; background:#fff; border-top:2px solid var(--warm); box-shadow:0 8px 16px rgba(0,0,0,.25); }
nav .menu-item:hover > .sub-menu { display:block; } nav .sub-menu li + li { margin-top:7px; } nav .sub-menu a { color:#383431; font-size:12px; text-transform:none; }
#content { padding:0; background:#3c424f; } #content-layout { background:#3c424f; } #content-holder { max-width:1100px; margin:0 auto; } #content-data { padding:8px 0 46px; color:#d5d8d9; background:transparent; }
#content-data > p { margin:0 0 18px; }
.services-heading { margin:0 0 9px !important; color:#e8c7a2 !important; font-size:25px; font-weight:300; line-height:1.35; text-align:center; }
.services-list { margin:0 0 4px !important; color:#e8c7a2 !important; font-weight:700; line-height:1.5; text-align:center; }
.services-divider { width:92px; height:1px; margin:25px auto 23px; background:#fff; }
.brand-message { margin:0 0 18px !important; text-align:center; }
h1,h2,h3,h4, #content-data h1, #content-data h2, #content-data h3, #content-data h4 { font-family:"Open Sans", Arial, sans-serif; font-weight:300; color:#fff !important; background:transparent !important; text-shadow:none !important; }
.page-title { margin:0; padding:34px 0 22px; border-bottom:1px solid rgba(255,255,255,.3); font-size:31px; letter-spacing:.02em; }
#content-data h2 { margin:32px 0 14px; font-size:25px; } #content-data h3 { margin:24px 0 12px; color:#e8c7a2 !important; font-size:18px; font-weight:400; } #content-data h4 { margin:24px 0 0; padding:2px 0 0 17px; border-left:3px solid #a78463; font-size:16px; font-weight:700; } #content-data h4 + p { margin:0 0 16px; padding:0 0 4px 17px; border-left:3px solid #a78463; }
#content-data p, #content-data li, #content-data blockquote, #content-data td { color:#d5d8d9 !important; background:transparent !important; }
#content-data a { color:#f0cfa9; } #content-data a:hover { color:#fff; }
#content-data img.alignright { float:right; margin:0 0 20px 28px; } #content-data img.alignleft { float:left; margin:0 28px 20px 0; }
#content-data blockquote { margin:16px 0; padding:10px 20px; border-left:3px solid #a78463; background:rgba(0,0,0,.14) !important; }
#content-box, #project-box, #sidebar, .widget, .post-single, .sidebar-footer, #footer-box { border-color:#fff !important; }
.handwritten-testimonial { clear:both; margin:0 0 24px; } .handwritten-testimonial img { display:block; float:none !important; margin:0; max-width:100%; }
.testimonial-date { clear:both; margin:0 0 8px !important; } #content-data blockquote.testimonial-quote { clear:both; margin-top:0; }
body.page-id-237 #content-data h2 { clear:both; padding-top:24px; } body.page-id-237 #content-data h2:first-child { padding-top:0; } body.page-id-237 .team-photo { float:right; width:155px; height:175px; margin:0 0 16px 22px; object-fit:cover; object-position:center; }
.local-gallery { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:22px; margin:0; }
.st_project #article { margin-bottom:0; padding-bottom:0; }
body.single-st_project #layout, body.single-st_project #content, body.single-st_project #content-layout, body.single-st_project #content-holder, body.single-st_project #content-box, body.single-st_project #content-box > div, body.single-st_project #article { background:#000 !important; }
body.page-id-25 #layout, body.page-id-25 #content, body.page-id-25 #content-layout, body.page-id-25 #content-holder, body.page-id-25 #content-box, body.page-id-25 #content-box > div { background:#000 !important; }
.local-gallery a { display:block; overflow:hidden; background:#24282f; border:1px solid rgba(255,255,255,.22); }
.local-gallery img { display:block; width:100%; aspect-ratio:4 / 3; object-fit:cover; transition:transform .25s ease, opacity .25s ease; }
.local-gallery a:hover img { transform:scale(1.03); opacity:.88; }
.gallery-page-title { margin:0; padding:34px 0 12px; color:#fff; font-family:"Open Sans", Arial, sans-serif; font-size:31px; font-weight:300; }
.gallery-page-intro { margin:0 0 24px; color:#d5d8d9; }
a { color:#80664d; } img { max-width:100%; height:auto; }
.rebuild-slider { position:relative; height:min(445px,42vw); min-height:260px; overflow:hidden; background:#eee; }
.rebuild-slider img { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .65s ease; }
.rebuild-slider img.is-active { opacity:1; z-index:1; }
.gallery, .st-project-list, .portfolio, .entry-content { max-width:100%; }
#footer { width:100vw; margin:0 0 0 calc(50% - 50vw); padding:28px 0; border-top:1px solid var(--line); background:#292725; color:#ddd; font-size:13px; } #footer a { color:#e1c7aa; }
#footer-holder, #copyrights-box { max-width:1100px; margin:0 auto; }
#footer p { margin:0 0 3px; line-height:1.35; } #footer h5 { margin:0 0 6px; color:#fff; font-family:"Open Sans", Arial, sans-serif; font-size:19px; font-weight:700; } #footer .widget { margin:0; } #footer .textwidget { line-height:1.35; } #copyrights-holder { line-height:1.35; }
#footer-box { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; } #footer-box .sidebar-footer.last { margin-left:auto; text-align:right; } .icons-social { display:flex; justify-content:flex-end; } .facebook-link { display:grid; place-items:center; width:30px; height:30px; border:1px solid #fff; border-radius:50%; color:#fff !important; font-family:Arial,sans-serif; font-size:22px; font-weight:700; line-height:1; text-decoration:none; } .facebook-link:hover { background:#fff; color:#292725 !important; }
form input, form textarea { width:100%; padding:10px; border:1px solid #ccc; font:inherit; } form input[type=submit],button { width:auto; background:var(--warm); color:#fff; border:0; padding:10px 18px; cursor:pointer; }
#xyz_cfm_form2_1_success { color:#111 !important; }
.website-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
@media (max-width:850px) { #header { padding:0; } #header-holder { display:flex; flex-direction:column; } #menu-1 { order:2; } #menu-2 { order:3; } nav > ul,#menu-1 nav > ul,#menu-2 nav > ul { justify-content:center; flex-wrap:wrap; gap:10px 16px; } #content { padding:0; } #content-data { padding-bottom:35px; } .local-gallery { grid-template-columns:1fr; } #footer-box { display:block; } #footer-box .sidebar-footer.last { margin-top:20px; text-align:left; } .icons-social { justify-content:flex-start; } }
