@font-face{font-family:"Centex Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/media/6416db9bad-api.woff2") format("woff2");}@font-face{font-family:"Centex Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/media/609001d631-api.woff2") format("woff2");}/* Phone-only layout. This stylesheet is loaded instead of desktop Wix CSS. */
html { background:#11130f; }
body.device-mobile-optimized { margin:0; background:#11130f; color:#f3f0e9; font:400 16px/1.65 "Centex Montserrat",sans-serif; -webkit-text-size-adjust:100%; }
.mobile-site, .mobile-site * { box-sizing:border-box; }
.mobile-site { width:100%; overflow-wrap:break-word; }
.mobile-site a { color:inherit; text-decoration:none; }
.mobile-site button,.mobile-site input,.mobile-site select,.mobile-site textarea { font:inherit; }
.mobile-site h1,.mobile-site h2,.mobile-site h3,.mobile-site h4,.mobile-site h5,.mobile-site h6,.mobile-site p { margin:0; }
.mobile-site h1 { font-size:clamp(28px,7.7vw,36px); line-height:1.2; font-weight:700; text-wrap:balance; }
.mobile-site h2 { font-size:27px; line-height:1.25; color:#b39a75; font-weight:700; }
.mobile-site h3,.mobile-site h4 { font-size:21px; line-height:1.35; color:#b39a75; font-weight:700; }
.mobile-header { padding:16px 20px 12px; display:grid; grid-template-columns:minmax(0,1fr) 44px; align-items:center; gap:8px 12px; background:#0d100d; }
.mobile-brand { display:flex; gap:12px; align-items:center; font-size:16px; font-weight:700; line-height:1.3; }
.mobile-brand img { display:block; width:56px; height:56px; object-fit:contain; flex:0 0 56px; }
.mobile-phone { grid-column:1/-1; justify-self:center; display:flex; align-items:center; min-height:36px; font-size:16px; color:#b39a75!important; font-weight:700; }
.mobile-menu-toggle { width:44px; height:44px; padding:10px; background:transparent; border:1px solid #3f4935; border-radius:4px; cursor:pointer; display:flex; flex-direction:column; justify-content:center; gap:5px; }
.mobile-menu-toggle span { display:block; height:2px; width:22px; background:#f3f0e9; }
.mobile-navigation { display:none; }
.mobile-navigation[data-open=true] { display:flex; position:fixed; z-index:100001; inset:0; overflow:auto; background:#0d100d; padding:84px 24px 28px; flex-direction:column; gap:6px; }
.mobile-navigation>a { display:flex; align-items:center; padding:14px 16px; min-height:52px; font-size:20px; border-bottom:1px solid #3f4935; }
.mobile-navigation>a[aria-current=page] { color:#b39a75; }
.mobile-navigation>a:last-of-type { margin-top:12px; background:#3f4935; border-radius:6px; font-weight:700; font-size:17px; }
.mobile-navigation .menu-close { width:48px; height:48px; top:18px; right:20px; padding:0; border:1px solid #3f4935; border-radius:4px; font-size:32px; }
.mobile-section { position:relative; padding:40px 22px; }
.mobile-section-content { position:relative; max-width:600px; margin:0 auto; display:flex; flex-direction:column; gap:20px; }
.mobile-section-content>span[id] { position:absolute; top:0; width:1px; height:1px; pointer-events:none; }
.mobile-hero { padding:40px 22px; text-align:center; overflow:hidden; background:#11130f; }
.mobile-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.mobile-home-hero { padding:42px 22px 46px; }
.mobile-hero .mobile-section-content { gap:22px; }
.mobile-hero p { line-height:1.6; }
.mobile-button { display:flex; align-items:center; justify-content:center; min-height:52px; padding:14px 16px; text-align:center; background:#3f4935; color:#f3f0e9; border:0; border-radius:7px; font-size:14px; font-weight:700; line-height:1.45; cursor:pointer; }
.mobile-copy p+p { margin-top:16px; }
.mobile-copy p+ :is(h2,h3,h4), .mobile-copy ul+ :is(h2,h3,h4) { margin-top:28px; }
.mobile-copy :is(h2,h3,h4)+p,.mobile-copy :is(h2,h3,h4)+ul { margin-top:12px; }
.mobile-copy ul { margin:12px 0 0; padding-left:22px; }
.mobile-copy li { padding-left:3px; margin-top:10px; }
.mobile-copy a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.mobile-content-image { display:block; max-width:100%; width:180px; height:auto; object-fit:contain; align-self:center; }
.mobile-about .mobile-section-content { display:grid; grid-template-columns:minmax(0,1fr) 94px; align-items:center; gap:22px 16px; }
.mobile-about .mobile-content-image { width:94px; max-height:145px; }
.mobile-about .mobile-copy:nth-of-type(n+2) { grid-column:1/-1; }
.mobile-service-card { display:flex; flex-direction:column; gap:12px; background:#3f4935; border-radius:8px; padding:24px; }
.mobile-service-card h3 { color:#f3f0e9; font-size:22px; }
.mobile-service-card p { font-size:15px; line-height:1.65; }
.mobile-card-link { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:32px; margin-top:3px; font-size:13px; font-weight:700; }
.mobile-card-link span { font-size:23px; line-height:1; }
.mobile-cta { background:#3f4935; text-align:center; }
.mobile-cta .mobile-button { background:#11130f; }
.mobile-contact .mobile-section-content { gap:18px; }
.mobile-contact h3 { font-size:18px; }
.mobile-contact .mobile-copy:has(h3) { margin-top:12px; }
.mobile-contact-form { display:flex; flex-direction:column; gap:10px; margin-top:12px; }
.mobile-contact-form label { margin-top:8px; font-size:14px; font-weight:700; }
.mobile-contact-form input:not(.honeypot),.mobile-contact-form select,.mobile-contact-form textarea { width:100%; min-width:0; min-height:48px; padding:12px; color:#f3f0e9; background:#11130f; border:1px solid #b39a75; border-radius:4px; font-size:16px; }
.mobile-contact-form textarea { min-height:130px; resize:vertical; }
.mobile-contact-form .mobile-button { margin-top:10px; }
.mobile-contact-form .form-status { margin:0!important; }
.mobile-embed { width:100%; min-height:500px; }
.mobile-map { width:100%; height:240px; }
.mobile-embed:has(iframe[src*="quote-form"]) { min-height:1700px; }
.mobile-footer { border-top:1px solid #3f4935; padding:30px 22px; text-align:center; font-size:12px; line-height:1.7; }
.mobile-footer p+p { margin-top:16px; }
.mobile-footer a { text-decoration:underline; text-underline-offset:4px; display:inline-flex; align-items:center; min-height:44px; }
.mobile-site #comp-mec45z61,.mobile-site #comp-mec4ox0z { scroll-margin-top:16px; }
@media(min-width:540px) { .mobile-section {padding:48px 32px;} .mobile-header{padding-left:32px;padding-right:32px;} .mobile-services .mobile-section-content{display:grid;grid-template-columns:1fr 1fr;} .mobile-services .mobile-copy,.mobile-services .mobile-button{grid-column:1/-1;} }
@media(max-width:350px) { .mobile-brand{font-size:14px;gap:8px;} .mobile-header{padding-left:16px;padding-right:16px;gap:8px;} .mobile-section{padding-left:18px;padding-right:18px;} .mobile-button{font-size:13px;} .mobile-service-card{padding:20px;} }
