{"id":29,"date":"2026-09-16T19:40:22","date_gmt":"2026-09-16T19:40:22","guid":{"rendered":"https:\/\/67webdesign.online\/theme12\/about\/"},"modified":"2026-09-16T21:04:15","modified_gmt":"2026-09-16T21:04:15","slug":"about","status":"publish","type":"page","link":"https:\/\/67webdesign.online\/theme12\/about\/","title":{"rendered":"About"},"content":{"rendered":"<div class=\"et_pb_code_0 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Manrope:wght@400;500;600;700;800&family=Nunito:wght@600;700;800&display=swap\" rel=\"stylesheet\">\n<style id=\"t12-tokens\">\n\/* Base: reference sets body font\/colour globally. *\/\nbody, body.et-db #et-boc .et-l p { font-family:'Manrope',system-ui,sans-serif; color:#33404F; }\nbody { background:#FFFDFA; -webkit-font-smoothing:antialiased; }\n.t12 h1,.t12 h2,.t12 h3,.t12 h4 { font-family:'Nunito',system-ui,sans-serif; margin:0; }\n\n\/* Fluid type. Divi responsive settings are breakpoint-stepped, the reference is fluid. *\/\n.t12-h1 h1 { font-size:clamp(34px,4.4vw,52px)!important; line-height:1.06!important;\n             letter-spacing:-0.02em!important; font-weight:800!important; }\n.t12-h2 h2 { font-size:clamp(27px,3.4vw,38px)!important; line-height:1.14!important;\n             letter-spacing:-0.015em!important; font-weight:800!important; }\n.t12-lead  { font-size:clamp(17px,1.6vw,19px)!important; line-height:1.65!important; }\n\n\/* Fluid section padding from the reference. *\/\n.t12-sec  > .et_pb_row, .t12-sec { padding-left:0; padding-right:0; }\n.t12-sec  { padding-top:clamp(52px,7vw,92px)!important; padding-bottom:clamp(52px,7vw,92px)!important; }\n.t12-secc { padding-top:clamp(44px,6vw,72px)!important; padding-bottom:clamp(44px,6vw,72px)!important; }\n.t12-row  { max-width:1180px!important; width:100%!important; margin:0 auto!important;\n            padding-left:clamp(18px,4vw,40px)!important; padding-right:clamp(18px,4vw,40px)!important; }\n\n\/* Eyebrow pill. *\/\n.t12-pill .et_pb_text_inner { display:inline-flex; align-items:center; gap:10px; font-size:11px;\n  letter-spacing:0.2em; text-transform:uppercase; font-weight:700; color:#8A6C2E;\n  background:#F3E9D6; padding:9px 15px; border-radius:999px; }\n.t12-pill .et_pb_text_inner::before { content:\"\"; width:7px; height:7px; border-radius:999px;\n  background:#C6A15B; display:block; }\n\n\/* Hero stat card overlapping the photo's lower-left corner. Divi has no native\n   negative-margin-plus-clamp control, so it is done here. *\/\n.t12-statcard { background:#FFFDFA!important; max-width:262px; margin-top:-52px!important;\n  margin-left:clamp(-28px,-1.5vw,0px)!important; position:relative; z-index:2;\n  border-bottom:3px solid #C6A15B!important; box-shadow:0 12px 30px rgba(27,42,74,0.08)!important;\n  padding:24px 26px!important; }\n@media (max-width:980px){ .t12-statcard { margin-left:0!important; } }\n\n\/* Trust bar: 4 items, auto-fit like the reference grid. *\/\n.t12-trust .et_pb_column { display:flex; align-items:center; gap:12px; }\n.t12-trust .et_pb_text_inner { font-size:14.5px; font-weight:600; color:#24405F; }\n.t12-trust .et_pb_text_inner::before { content:\"\"; width:10px; height:10px; border-radius:999px;\n  background:#C6A15B; flex:0 0 auto; display:inline-block; margin-right:12px; vertical-align:middle; }\n\n\/* Buttons: reference uses a 3px bottom border, not a full border. *\/\na.et_pb_button.t12-btn-gold { background:#C6A15B!important; color:#24405F!important;\n  font-family:'Manrope',sans-serif!important; font-size:16px!important; font-weight:700!important;\n  padding:18px 30px!important; border-radius:12px!important; border:0!important;\n  border-bottom:3px solid #A5823F!important; }\na.et_pb_button.t12-btn-gold:hover { background:#D7B67A!important; }\na.et_pb_button.t12-btn-out { background:#FFFDFA!important; color:#24405F!important;\n  font-family:'Manrope',sans-serif!important; font-size:16px!important; font-weight:700!important;\n  padding:18px 30px!important; border-radius:12px!important; border:1px solid #C9BCA5!important; }\na.et_pb_button.t12-btn-out:hover { border-color:#C6A15B!important; color:#8A6C2E!important; }\na.et_pb_button.t12-btn-gold::after, a.et_pb_button.t12-btn-out::after { display:none!important; }\n\n\/* Reference rows are CSS grids with auto-fit\/minmax, which Divi's breakpoint\n   column system cannot express. Reproduce the reference grid exactly. *\/\n.t12-row > .et_pb_column { width:100%!important; margin:0!important; float:none!important; }\n.t12-herorow { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;\n  gap:clamp(32px,5vw,64px)!important; align-items:center!important; }\n.t12-hero { padding-bottom:0!important; }\n.t12-trustrow { display:grid!important;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))!important;\n  gap:18px 28px!important; padding-top:22px!important; padding-bottom:22px!important; }\n.t12-trust { padding-top:0!important; padding-bottom:0!important; }\n\n\/* Hero photo: reference aspect-ratio 4\/3.3, object-position center 22%. *\/\n.t12-heroimg img { width:100%; aspect-ratio:4\/3.3; object-fit:cover;\n  object-position:center 22%; border-radius:16px; display:block; }\n\n\/* Stat card internals. *\/\n.t12-statcard .t12-eyebrow { font-size:10px; letter-spacing:0.16em; text-transform:uppercase;\n  color:#8A8275; display:block; }\n.t12-statcard .t12-statnum { font-family:'Nunito',system-ui,sans-serif; font-size:34px;\n  font-weight:800; line-height:1.1; white-space:nowrap; color:#24405F; margin-top:6px; display:inline-block; }\n.t12-statcard .t12-stars { color:#C6A15B; font-size:13px; letter-spacing:2px; margin-left:8px; }\n.t12-statcard .t12-statp { font-size:14px; color:#5A6473; margin-top:6px; line-height:1.45; }\n\n\/* The theme prints its own page title above the builder content; the reference\n   has none. Removed here until the Theme Builder body template replaces it. *\/\n.page .entry-title.main_title { display:none!important; }\n<\/style>\n\n<style id=\"t12-sections\">\n\/* Shared card grids, reproducing the reference auto-fit\/minmax grids. *\/\n.t12-g2   { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))!important; gap:clamp(32px,5vw,68px)!important; align-items:start!important; }\n.t12-g3   { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important; gap:20px!important; }\n.t12-g4   { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important; gap:22px!important; }\n.t12-gstat{ display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))!important; gap:28px!important; }\n.t12-gsplit{display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,470px),1fr))!important; gap:clamp(24px,3vw,40px)!important; align-items:stretch!important; }\n.t12-gcta { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important; gap:clamp(28px,4vw,52px)!important; align-items:center!important; }\n\n\/* Card surfaces. *\/\n.t12-card .et_pb_text_inner {\n  background:#FFFDFA; padding:30px 26px; border-radius:14px; border:1px solid #EBE2D4; }\n.t12-card-top .et_pb_text_inner { border-top:2px solid #C6A15B; }\n.t12-cream .et_pb_text_inner { background:#FBF3E7; padding:24px 26px; border-left:3px solid #C6A15B; }\n.t12-step  .et_pb_text_inner { background:#FFFDFA; padding:30px 26px; border-top:3px solid #24405F; }\n.t12-quote .et_pb_text_inner { background:#FFFDFA; padding:30px 26px; border-radius:14px;\n  border:1px solid #EBE2D4; border-bottom:3px solid #C6A15B; }\n\n\/* Card internals. *\/\n.t12-card h3,.t12-cream h3,.t12-step h3 { font-family:'Nunito',system-ui,sans-serif;\n  font-size:19px; font-weight:800; color:#24405F; margin:0; }\n.t12-card p,.t12-cream p,.t12-step p { font-size:15px; line-height:1.6; color:#55606E; margin-top:9px; }\n.t12-num  { font-family:'Manrope',sans-serif; font-size:11px; color:#A5823F; letter-spacing:0.14em; display:block; }\n.t12-bignum { font-family:'Nunito',system-ui,sans-serif; font-size:40px; font-weight:800; color:#C6A15B; line-height:1; display:block; }\n.t12-icontile { width:46px; height:46px; border-radius:14px; background:#F3E9D6;\n  display:flex; align-items:center; justify-content:center; }\n.t12-learn { display:inline-block; margin-top:16px; font-size:14px; font-weight:700; color:#A5823F; }\n\n\/* Navy stat blocks. *\/\n.t12-stat .et_pb_text_inner { border-top:2px solid #C6A15B; padding-top:20px; }\n.t12-stat .n { font-family:'Nunito',system-ui,sans-serif; font-size:clamp(38px,4.6vw,54px);\n  font-weight:800; line-height:1; letter-spacing:-0.02em; color:#fff; display:block; }\n.t12-stat p { font-size:15px; color:#D5DDE8; margin-top:10px; font-weight:600; }\n.t12-onnavy h2 { color:#fff!important; }\n.t12-onnavy .et_pb_text_inner { color:#CFD8E4; }\n\n\/* Testimonials. *\/\n.t12-quote .stars { color:#C6A15B; font-size:15px; letter-spacing:3px; display:block; }\n.t12-quote blockquote { margin:16px 0 0; font-size:17px; line-height:1.65; color:#33404F; }\n.t12-quote .who { font-size:15px; font-weight:700; color:#24405F; margin-top:16px; }\n.t12-quote .role{ font-size:13.5px; color:#7A8493; margin-top:3px; }\n\n\/* Case cards. *\/\n.t12-case .et_pb_text_inner { border-radius:14px; border:1px solid #EBE2D4; background:#FFFDFA; overflow:hidden; padding:0; }\n.t12-case .body { padding:24px 26px 28px; }\n.t12-case h3 { font-size:19.5px; font-weight:700; color:#24405F; line-height:1.3; margin:0; }\n.t12-case .metrics { display:flex; gap:22px; margin-top:18px; padding-top:16px; border-top:1px solid #EFE7DA; }\n.t12-case .m { font-family:'Nunito',system-ui,sans-serif; font-size:22px; font-weight:800; color:#24405F; }\n.t12-case .ml{ font-size:12.5px; color:#7A8493; }\n<\/style>\n\n<style id=\"t12-final\">\n\/* Vertical rhythm helpers matching the reference margin-top values. *\/\n.t12-mt32 { margin-top:32px!important; } .t12-mt42 { margin-top:42px!important; }\n.t12-mt44 { margin-top:44px!important; }\n\n\/* Underlined text link with gold rule. *\/\n.t12-rule { display:inline-flex; align-items:center; gap:10px; font-size:15.5px; font-weight:700;\n  color:#24405F; border-bottom:2px solid #C6A15B; padding-bottom:6px; text-decoration:none; }\n.t12-rule span { color:#C6A15B; }\n\n\/* About: 2x2 cream mini-cards. *\/\n.t12-mini { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));\n  gap:16px; margin-top:16px; }\n.t12-mini > div { background:#FBF3E7; padding:24px 26px; border-left:3px solid #C6A15B; }\n.t12-mini .t { font-family:'Nunito',system-ui,sans-serif; font-size:20px; font-weight:800; color:#24405F; }\n.t12-mini p { font-size:14px; color:#5A6473; line-height:1.5; margin-top:5px; }\n\n\/* Image aspect ratios from the reference. *\/\n.t12-img169 img  { width:100%; aspect-ratio:16\/9;  object-fit:cover; border-radius:16px; display:block; }\n.t12-img1610 img { width:100%; aspect-ratio:16\/10; object-fit:cover; border-radius:16px; display:block; }\n.t12-imgfill img { width:100%; height:100%; min-height:340px; object-fit:cover; border-radius:16px; display:block; }\n.t12-imgfill, .t12-imgfill .et_pb_image_wrap { height:100%; display:block; }\n.t12-imgbanner img { width:100%; aspect-ratio:21\/8; object-fit:cover; object-position:center 30%;\n  border-radius:16px; display:block; }\n\n\/* Why: 4 numbered cards in a 2x2 grid. *\/\n.t12-whygrid .et_pb_text_inner { display:grid;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr)); gap:20px; }\n.t12-whygrid .c { background:#FFFDFA; padding:30px 26px; border-radius:14px;\n  border:1px solid #EBE2D4; border-top:2px solid #C6A15B; }\n.t12-whygrid h3 { font-family:'Nunito',system-ui,sans-serif; font-size:19px; font-weight:800; color:#24405F; margin:0; }\n.t12-whygrid p  { font-size:15px; line-height:1.6; color:#55606E; margin-top:9px; }\n\n\/* Case card image sits flush to the card's rounded top. *\/\n.t12-caseimg { width:100%; aspect-ratio:16\/10; object-fit:cover; display:block; }\n\n\/* Outline button on navy. *\/\na.et_pb_button.t12-btn-outdark { background:transparent!important; color:#ffffff!important;\n  font-family:'Manrope',sans-serif!important; font-size:16px!important; font-weight:700!important;\n  padding:18px 30px!important; border-radius:12px!important;\n  border:1px solid rgba(255,255,255,0.35)!important; }\na.et_pb_button.t12-btn-outdark:hover { border-color:#C6A15B!important; color:#EBD3A4!important; }\na.et_pb_button.t12-btn-outdark::after { display:none!important; }\n\n\/* Contact info panel: 1px gaps produce the hairline dividers in the reference. *\/\n.t12-info { display:grid; gap:1px; background:#EBE2D4; border-radius:14px;\n  border:1px solid #EBE2D4; overflow:hidden; align-content:start; }\n.t12-info > div { background:#FBF3E7; padding:24px 26px; }\n.t12-info .k { font-size:10.5px; letter-spacing:0.16em; text-transform:uppercase; color:#8A8275; display:block; }\n.t12-info .v { font-size:16px; line-height:1.6; color:#33404F; margin-top:8px; font-weight:600; }\n.t12-info .big { font-size:22px; font-weight:700; color:#24405F; }\n.t12-info .hrs { display:grid; gap:6px; margin-top:10px; font-size:15px; color:#4C5766; }\n.t12-info .hrs > div { display:flex; justify-content:space-between; gap:16px; }\n.t12-info .hrs .b { font-weight:600; color:#24405F; }\n.t12-info .map { background:#FFFDFA; padding:0; aspect-ratio:16\/9;\n  background-image:repeating-linear-gradient(135deg,#EFE6D6 0 14px,#F7F0E4 14px 28px);\n  display:flex; align-items:center; justify-content:center; }\n.t12-info .map span { font-size:11px; color:#8A8275; background:#FFFDFA; padding:7px 11px; }\n\n\/* Form: reference input styling. *\/\n.t12-form .et_pb_contact_form_field input, .t12-form .et_pb_contact_form_field textarea {\n  font-family:'Manrope',sans-serif!important; font-size:15px!important; padding:14px!important;\n  border-radius:10px!important; border:1px solid #DFD5C4!important; background:#FDFAF5!important;\n  color:#33404F!important; min-height:48px!important; }\n.t12-form .et_pb_button { background:#24405F!important; color:#fff!important; font-size:16px!important;\n  font-weight:700!important; padding:18px 32px!important; border:0!important; border-radius:12px!important;\n  border-bottom:3px solid #C6A15B!important; min-height:52px!important; }\n.t12-form .et_pb_button::after { display:none!important; }\n<\/style>\n\n<style id=\"t12-layout\">\n\/* ---- Kill the theme's blog sidebar; the reference is full width. ---- *\/\n#sidebar { display:none!important; }\n#left-area { width:100%!important; padding-right:0!important; padding-bottom:0!important; float:none!important; }\n#main-content .container { width:100%!important; max-width:100%!important; padding-top:0!important; }\n#main-content .container::before { display:none!important; }\n.et_right_sidebar #left-area, .et_left_sidebar #left-area { width:100%!important; }\narticle.page > .entry-content { padding:0!important; }\n.page .entry-title.main_title { display:none!important; }\n#page-container { padding-top:0!important; }\n\/* Stock Divi header\/footer are replaced by our own sections. *\/\n#main-header, #top-header, #et-main-area > #main-footer, #footer-bottom { display:none!important; }\n#et-main-area { padding-top:0!important; }\n\n\/* ---- Divi row\/column reset so our CSS grids control layout ---- *\/\n.t12-row, .t12-utilrow, .t12-hdrrow, .t12-footrow, .t12-orow, .t12-trustrow {\n  width:100%!important; max-width:1180px!important; margin:0 auto!important; }\n.t12-row > .et_pb_column, .t12-orow > .et_pb_column, .t12-trustrow > .et_pb_column,\n.t12-utilrow > .et_pb_column, .t12-hdrrow > .et_pb_column, .t12-footrow > .et_pb_column {\n  width:100%!important; margin:0!important; float:none!important; }\n.et_pb_row { padding:0!important; }\n.et_pb_section { padding:0; }\n.t12-row::after, .et_pb_row::after { display:none!important; }\n.t12-row .et_pb_module { margin-bottom:0!important; }\n\n\/* ---- Sticky header ---- *\/\n.t12-header { position:sticky!important; top:0; z-index:60; background:#FFFDFA!important;\n  border-bottom:1px solid #EBE2D4; padding:0!important; }\n.t12-utilrow { background:transparent; }\n.t12-header .t12-utilrow { max-width:100%!important; }\n.t12-header .et_pb_text_0 { background:#24405F; }\n.t12-util { max-width:1180px; margin:0 auto; padding:9px clamp(18px,4vw,40px);\n  display:flex; flex-wrap:wrap; gap:8px 24px; align-items:center; justify-content:space-between;\n  color:#E4DCCC; font-size:13px; }\n.t12-util .l { font-weight:500; }\n.t12-util .r { display:flex; gap:20px; align-items:center; }\n.t12-util a { color:#E4DCCC; font-weight:500; text-decoration:none; }\n.t12-util a.ph { color:#EBD3A4; font-weight:600; }\n\n.t12-hdr { max-width:1180px; margin:0 auto; padding:14px clamp(18px,4vw,40px);\n  display:flex; flex-wrap:nowrap; gap:12px; align-items:center; justify-content:space-between; }\n.t12-hdr .brand { display:flex; align-items:center; gap:12px; flex:0 0 auto; text-decoration:none; }\n.t12-hdr .mark { width:42px; height:42px; border-radius:999px; background:#C6A15B; display:flex;\n  align-items:center; justify-content:center; font-family:'Nunito',sans-serif; font-size:19px;\n  font-weight:800; color:#24405F; flex:0 0 auto; }\n.t12-hdr .wm { display:flex; flex-direction:column; line-height:1.05; }\n.t12-hdr .wm .n { font-family:'Nunito',sans-serif; font-size:20px; font-weight:800; color:#24405F;\n  letter-spacing:-0.01em; }\n.t12-hdr .wm .s { font-family:'Manrope',sans-serif; font-size:9.5px; letter-spacing:0.18em;\n  color:#8A8275; text-transform:uppercase; margin-top:3px; }\n.t12-hdr .nav { display:flex; flex-wrap:nowrap; gap:2px; align-items:center; justify-content:center;\n  flex:1 1 auto; min-width:330px; }\n.t12-hdr .nav a { padding:9px 10px; font-size:14px; font-weight:600; color:#55606E;\n  white-space:nowrap; text-decoration:none; }\n.t12-hdr .nav a:hover { color:#A5823F; }\n.t12-hdr .act { display:flex; gap:10px; align-items:center; flex:0 0 auto; }\n.t12-hdr .tel { font-size:15.5px; font-weight:700; color:#24405F; white-space:nowrap;\n  padding:8px 4px; text-decoration:none; }\n.t12-hdr .fq { background:#C6A15B; color:#24405F; font-size:14px; font-weight:700;\n  padding:13px 18px; border-radius:12px; border-bottom:3px solid #A5823F; white-space:nowrap;\n  text-decoration:none; }\n.t12-hdr .fq:hover { background:#D7B67A; }\n.t12-burger { display:none; background:none; border:0; flex-direction:column; gap:5px;\n  padding:10px; cursor:pointer; }\n.t12-burger span { display:block; width:22px; height:2px; background:#24405F; }\n\n\/* Mobile: compact logo + hamburger on one bar, never stacked rows. *\/\n@media (max-width:980px){\n  .t12-hdr .nav, .t12-hdr .act { display:none!important; }\n  .t12-burger { display:flex!important; }\n  .t12-util { font-size:12px; justify-content:center; text-align:center; }\n  .t12-util .l { display:none; }\n}\n\n\/* ---- Hero: photo background + left-ward gradient overlay ---- *\/\n.t12-hero-ov { position:relative; background:#24405F!important;\n  background-image:linear-gradient(to left,rgba(29,52,80,0.94) 0%,rgba(29,52,80,0.9) 34%,\n    rgba(29,52,80,0.62) 66%,rgba(29,52,80,0.42) 100%),\n    url('https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-owner-shop.webp')!important;\n  background-size:cover,cover!important; background-position:center,38% 18%!important;\n  background-repeat:no-repeat,no-repeat!important; overflow:hidden; }\n.t12-orow { min-height:clamp(520px,64vh,680px); display:flex!important; flex-wrap:wrap;\n  gap:32px; align-items:center!important; justify-content:space-between;\n  padding:clamp(48px,6vw,72px) clamp(18px,4vw,40px)!important; }\n.t12-orow > .et_pb_column.t12-ocard { flex:0 1 292px!important; min-width:286px; width:auto!important; }\n.t12-orow > .et_pb_column.t12-ocopy { flex:1 1 340px!important; max-width:430px; width:auto!important; }\n.t12-ocard .et_pb_text_inner { background:rgba(255,253,250,0.96); color:#24405F; padding:22px 26px;\n  border-radius:16px; border-bottom:4px solid #C6A15B; box-shadow:0 16px 38px rgba(20,34,52,0.3); }\n.t12-eyebrow2 { font-family:'Manrope',sans-serif; font-size:10px; letter-spacing:0.16em;\n  text-transform:uppercase; color:#8A8275; display:block; }\n.t12-pill-dark .et_pb_text_inner { color:#F2E3C6!important; background:rgba(198,161,91,0.28)!important; }\n.t12-pill-dark .et_pb_text_inner::before { background:#EBD3A4!important; }\n.t12-hero-ov .t12-lead .et_pb_text_inner { color:#E4E9F0!important; max-width:40ch; }\n\n\/* ---- Footer ---- *\/\n.t12-footer { background:#24405F!important; color:#C3CDDB;\n  padding:clamp(48px,6vw,72px) clamp(18px,4vw,40px) 0!important; }\n.t12-footer .et_pb_text_inner { color:#C3CDDB; }\n.t12-foot { max-width:1180px; margin:0 auto; display:grid;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:clamp(28px,4vw,48px); }\n.t12-foot .fbrand { display:flex; align-items:center; gap:12px; }\n.t12-foot .mark { width:40px; height:40px; border-radius:999px; background:#C6A15B; display:flex;\n  align-items:center; justify-content:center; font-family:'Nunito',sans-serif; font-size:18px;\n  font-weight:800; color:#24405F; flex:0 0 auto; }\n.t12-foot .fbrand .n { font-family:'Nunito',sans-serif; font-size:19px; font-weight:800; color:#fff; }\n.t12-foot .fabout { font-size:14.5px; line-height:1.7; margin-top:16px; max-width:34ch; color:#C3CDDB; }\n.t12-foot .fsoc { display:flex; gap:10px; margin-top:20px; }\n.t12-foot .fsoc a { width:40px; height:40px; border-radius:12px; border:1px solid rgba(255,255,255,0.24);\n  display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700;\n  color:#D5DDE8; text-decoration:none; }\n.t12-foot .fsoc a:hover { border-color:#C6A15B; color:#EBD3A4; }\n.t12-foot h4 { margin:0; font-size:13px; letter-spacing:0.16em; text-transform:uppercase;\n  color:#fff; font-weight:500; font-family:'Manrope',sans-serif; }\n.t12-foot .flinks { display:grid; gap:11px; margin-top:18px; font-size:14.5px; }\n.t12-foot .flinks a, .t12-foot .fcontact a { color:#C3CDDB; text-decoration:none; }\n.t12-foot .flinks a:hover, .t12-foot .fcontact a:hover { color:#EBD3A4; }\n.t12-foot .fcontact { display:grid; gap:12px; margin-top:18px; font-size:14.5px; line-height:1.6; }\n.t12-foot .fcontact .fphone { color:#fff; font-size:19px; font-weight:700; }\n.t12-legal { max-width:1180px; margin:clamp(36px,5vw,56px) auto 0;\n  border-top:1px solid rgba(255,255,255,0.16); padding:22px 0; display:flex; flex-wrap:wrap;\n  gap:10px 24px; justify-content:space-between; font-size:13.5px; color:#94A2B6; }\n.t12-legal a { color:#94A2B6; text-decoration:none; } .t12-legal a:hover { color:#EBD3A4; }\n.t12-legal .lr { display:flex; gap:20px; }\n<\/style>\n\n<style id=\"t12-fix\">\n\/* Section backgrounds keyed to our own stable classes. Divi's generated\n   et_pb_section_N rules land in a cached file that is often stale\/partial. *\/\n.t12-bg-cream { background-color:#FBF3E7!important; }\n.t12-bg-off   { background-color:#FFFDFA!important; }\n.t12-bg-band  { background-color:#F3E9D6!important; }\n.t12-bg-navy  { background-color:#24405F!important; }\n.t12-bg-navy, .t12-bg-navy p, .t12-bg-navy .et_pb_text_inner { color:#CFD8E4; }\n.t12-bg-navy h1,.t12-bg-navy h2,.t12-bg-navy h3 { color:#ffffff!important; }\n\n\/* About: mini cards must be 2x2, not 3+1. *\/\n.t12-mini { grid-template-columns:repeat(2,1fr)!important; }\n\/* Why: numbered cards must be 2x2. *\/\n.t12-whygrid .et_pb_text_inner { grid-template-columns:repeat(2,1fr)!important; }\n\/* Use the reference's own auto-fit grids rather than fixed counts, so the\n   column count is derived from content width exactly as the prototype does\n   (services resolve to 4 across at the 1180px container, not 3). *\/\n.t12-gstat { grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))!important; }\n.t12-g3    { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important; }\n.t12-g4    { grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important; }\n\/* Two-up rows. *\/\n.t12-g2, .t12-gcta, .t12-gsplit { grid-template-columns:repeat(2,1fr)!important; }\n\n@media (max-width:980px){\n  .t12-gstat, .t12-g3, .t12-g4 { grid-template-columns:repeat(2,1fr)!important; }\n  .t12-g2, .t12-gcta, .t12-gsplit { grid-template-columns:1fr!important; }\n}\n@media (max-width:480px){\n  .t12-gstat, .t12-g3, .t12-g4, .t12-mini,\n  .t12-whygrid .et_pb_text_inner { grid-template-columns:1fr!important; }\n}\n\n\/* Services header row is heading + intro, not an even 2-up. *\/\n.t12-svc-head { grid-template-columns:1.2fr 1fr!important; align-items:end!important; }\n@media (max-width:980px){ .t12-svc-head { grid-template-columns:1fr!important; } }\n\n\/* Contact form: reference is a 2-up grid of fields with a full width message. *\/\n.t12-form .et_pb_contact_form { display:grid!important; gap:16px!important;\n  grid-template-columns:repeat(2,1fr)!important; }\n.t12-form .et_pb_contact_field { padding:0!important; margin:0!important; width:auto!important;\n  float:none!important; }\n.t12-form .et_pb_contact_field_last, .t12-form .et_pb_contact_field[data-type=\"text\"] {\n  grid-column:1\/-1!important; }\n.t12-form .et_contact_bottom_container { grid-column:1\/-1!important; float:none!important;\n  text-align:left!important; margin:0!important; }\n.t12-form .et_pb_contact_field_options_title { display:none!important; }\n.t12-form .et_pb_contact_form_label { display:block!important; font-size:13px; font-weight:700;\n  color:#24405F; margin-bottom:7px; }\n@media (max-width:640px){ .t12-form .et_pb_contact_form { grid-template-columns:1fr!important; } }\n\n\/* Case card image must sit flush with the card's top corners. *\/\n.t12-case .et_pb_text_inner { padding:0!important; }\n.t12-case .t12-caseimg { border-radius:14px 14px 0 0; }\n\n\/* Trust bar items: dot + label on one line, evenly distributed. *\/\n.t12-trustitem .et_pb_text_inner { display:flex; align-items:center; }\n<\/style>\n\n<style id=\"t12-hero-fix\">\n\/* Buttons: Divi wraps each in a block-level wrapper; the reference lays them\n   out as a flex row with a 14px gap. *\/\n.t12-ocopy .et_pb_button_module_wrapper,\n.t12-bg-navy .et_pb_button_module_wrapper,\n.t12-gcta .et_pb_button_module_wrapper {\n  display:inline-block!important; margin:32px 14px 0 0!important; vertical-align:top; }\n\n\/* Divi's button specificity is very high, so match it. *\/\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-gold,\nbody.et-db #page-container #et-boc .et-l a.et_pb_button.t12-btn-gold {\n  background:#C6A15B!important; background-image:none!important; color:#24405F!important;\n  font-family:'Manrope',sans-serif!important; font-size:16px!important; font-weight:700!important;\n  padding:18px 30px!important; border-radius:12px!important; border:0!important;\n  border-bottom:3px solid #A5823F!important; }\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-gold:hover { background:#D7B67A!important; }\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-out,\nbody.et-db #page-container #et-boc .et-l a.et_pb_button.t12-btn-out {\n  background:#FFFDFA!important; color:#24405F!important; font-size:16px!important;\n  font-weight:700!important; padding:18px 30px!important; border-radius:12px!important;\n  border:1px solid #C9BCA5!important; }\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-outdark,\nbody.et-db #page-container #et-boc .et-l a.et_pb_button.t12-btn-outdark {\n  background:transparent!important; color:#ffffff!important; font-size:16px!important;\n  font-weight:700!important; padding:18px 30px!important; border-radius:12px!important;\n  border:1px solid rgba(255,255,255,0.45)!important; }\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-outdark:hover {\n  border-color:#C6A15B!important; color:#EBD3A4!important; }\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-gold::after,\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-out::after,\nbody #page-container .et_pb_section a.et_pb_button.t12-btn-outdark::after {\n  display:none!important; content:none!important; }\n\n\/* Hero copy rhythm, matching the reference margin-top values. *\/\n.t12-ocopy .t12-pill { margin:0!important; }\n.t12-ocopy .t12-h1   { margin-top:22px!important; }\n.t12-ocopy .t12-lead { margin-top:20px!important; }\n.t12-ocopy .t12-h1 h1 { line-height:1.08!important; }\n.t12-orow { align-items:center!important; }\n.t12-ocard { align-self:center!important; }\n\n\/* Form labels\/fields. *\/\n.t12-form .et_pb_contact_field input.input,\n.t12-form .et_pb_contact_field textarea.et_pb_contact_message {\n  width:100%!important; font-family:'Manrope',sans-serif!important; font-size:15px!important;\n  padding:14px!important; border-radius:10px!important; border:1px solid #DFD5C4!important;\n  background:#FDFAF5!important; color:#33404F!important; min-height:48px!important; }\n.t12-form .et_pb_contact_message { min-height:120px!important; }\nbody #page-container .et_pb_section .t12-form .et_pb_contact_submit.et_pb_button {\n  background:#24405F!important; color:#fff!important; font-size:16px!important; font-weight:700!important;\n  padding:18px 32px!important; border:0!important; border-radius:12px!important;\n  border-bottom:3px solid #C6A15B!important; }\nbody #page-container .et_pb_section .t12-form .et_pb_contact_submit.et_pb_button::after { display:none!important; }\n.t12-f-message { grid-column:1\/-1!important; }\n<\/style>\n\n<style id=\"t12-hero-fix2\">\n\/* H1 on the hero must be white. The earlier onnavy rule only covered h2. *\/\n.t12-hero-ov h1, .t12-hero-ov .t12-h1 h1, .t12-onnavy h1,\n.t12-bg-navy h1, .t12-bg-navy h2, .t12-bg-navy h3,\nbody #page-container .t12-hero-ov .et_pb_heading_container h1 { color:#ffffff!important; }\n\n\/* Stronger gradient so the right side reads as deep navy like the reference. *\/\n.t12-hero-ov {\n  background-image:\n    linear-gradient(to left, rgba(29,52,80,0.94) 0%, rgba(29,52,80,0.90) 34%,\n                    rgba(29,52,80,0.62) 66%, rgba(29,52,80,0.42) 100%),\n    url('https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-owner-shop.webp')!important;\n  background-size:100% 100%, cover!important;\n  background-position:0 0, 38% 18%!important;\n  background-repeat:no-repeat,no-repeat!important;\n  background-color:#24405F!important; }\n\n\/* Copy column: no inner padding, so the headline breaks over two lines\n   exactly as the reference does. *\/\n.t12-orow > .et_pb_column.t12-ocopy { padding:0!important; max-width:430px!important; }\n.t12-ocopy .t12-h1 h1 { font-size:clamp(34px,4.4vw,52px)!important; line-height:1.08!important;\n  letter-spacing:-0.02em!important; }\n\n\/* Stat card internals: number and stars need the reference spacing. *\/\n.t12-ocard .et_pb_text_inner { font-size:0; }\n.t12-ocard .t12-eyebrow2 { font-size:10px; }\n.t12-ocard .t12-statnum { font-size:34px!important; font-weight:800; line-height:1.1;\n  color:#24405F; display:inline-block; margin-top:6px; vertical-align:baseline; }\n.t12-ocard .t12-stars { font-size:13px!important; letter-spacing:2px; color:#C6A15B;\n  margin-left:8px; vertical-align:baseline; }\n.t12-ocard .t12-statp { font-size:14px!important; color:#5A6473; margin-top:6px;\n  line-height:1.45; display:block; }\n<\/style>\n\n<style id=\"t12-font-fix\">\n\/* The headline face must be Nunito everywhere. Divi's own heading styles and\n   the Manrope body rule were winning, so state it explicitly and specifically. *\/\nbody #page-container .et_pb_section .et_pb_heading_container h1,\nbody #page-container .et_pb_section .et_pb_heading_container h2,\nbody #page-container .et_pb_section .et_pb_heading_container h3,\nbody #page-container .et_pb_section .et_pb_heading_container h4,\nbody #page-container .et_pb_section .t12-card h3,\nbody #page-container .et_pb_section .t12-cream .t,\nbody #page-container .et_pb_section .t12-step h3,\nbody #page-container .et_pb_section .t12-whygrid h3,\nbody #page-container .et_pb_section .t12-case h3,\nbody #page-container .et_pb_section .t12-case .m,\nbody #page-container .et_pb_section .t12-stat .n,\nbody #page-container .et_pb_section .t12-bignum,\nbody #page-container .et_pb_section .t12-statnum,\nbody #page-container .et_pb_section .t12-mini .t,\n.t12-hdr .wm .n, .t12-hdr .mark, .t12-foot .mark, .t12-foot .fbrand .n {\n  font-family:'Nunito',system-ui,sans-serif!important; }\n\n\/* Heading sizes keyed to our own classes (not tag names), so they hold\n   regardless of which tag Divi emits. *\/\nbody #page-container .t12-h1 .et_pb_heading_container :is(h1,h2,h3,h4) {\n  font-size:clamp(34px,4.4vw,52px)!important; line-height:1.08!important;\n  letter-spacing:-0.02em!important; font-weight:800!important; }\nbody #page-container .t12-h2 .et_pb_heading_container :is(h1,h2,h3,h4) {\n  font-size:clamp(27px,3.4vw,38px)!important; line-height:1.14!important;\n  letter-spacing:-0.015em!important; font-weight:800!important; color:#24405F; }\nbody #page-container .t12-onnavy .et_pb_heading_container :is(h1,h2,h3,h4),\nbody #page-container .t12-bg-navy .et_pb_heading_container :is(h1,h2,h3,h4) {\n  color:#ffffff!important; }\n<\/style>\n\n<style id=\"t12-space\">\n\/* Restore vertical rhythm. An earlier blanket margin-bottom:0 on every module\n   crushed the spacing the reference relies on. *\/\n.t12-row .et_pb_module { margin-bottom:0!important; }\n.t12-row .et_pb_column > .et_pb_module + .et_pb_module { margin-top:16px!important; }\n.t12-row .et_pb_column > .et_pb_heading + .et_pb_module { margin-top:20px!important; }\n.t12-row .et_pb_column > .et_pb_module + .et_pb_button_module_wrapper { margin-top:26px!important; }\n\n\/* About: the trailing text link sits 26px below the copy, per the reference. *\/\n.t12-rule { margin-top:10px; }\n\n\/* Cards must be one box, equal height across a row, and fill their column. *\/\n.t12-g3 > .et_pb_column, .t12-g4 > .et_pb_column, .t12-gstat > .et_pb_column {\n  display:flex!important; align-items:stretch!important; }\n.t12-g3 > .et_pb_column > .et_pb_module,\n.t12-g4 > .et_pb_column > .et_pb_module,\n.t12-gstat > .et_pb_column > .et_pb_module { width:100%; display:flex; }\n.t12-card .et_pb_text_inner, .t12-quote .et_pb_text_inner,\n.t12-step .et_pb_text_inner, .t12-case .et_pb_text_inner { width:100%; }\n.t12-card .et_pb_text_inner { display:flex; flex-direction:column; }\n\n\/* Card internals: the reference spacing, measured from the prototype. *\/\n.t12-card .t12-icontile { margin-bottom:20px; }\n.t12-card h3 { margin:0 0 9px!important; font-size:19px!important; }\n.t12-card p  { margin:0!important; font-size:15px!important; line-height:1.6!important; }\n.t12-card .t12-learn { margin-top:16px!important; }\n\n\/* Trust bar: the reference band is 22px padding top and bottom. The row rule\n   must outrank the section reset, so scope it the same way. *\/\n.t12-trust { padding-top:0!important; padding-bottom:0!important; }\n.t12-trust .et_pb_row.t12-trustrow {\n  padding-top:22px!important; padding-bottom:22px!important; }\n.t12-trustitem .et_pb_text_inner { font-size:14.5px!important; font-weight:600; color:#24405F; }\n\n\/* Services header: heading and intro align on their baselines as in the reference. *\/\n.t12-svc-head > .et_pb_column { align-self:end!important; }\n.t12-svc-head .et_pb_module + .et_pb_module { margin-top:0!important; }\n<\/style>\n\n<style id=\"t12-space2\">\n\/* Contact row: the reference grid has no align-items, so both columns start at\n   the top. It was inheriting align-items:center from the CTA grid class. *\/\n.t12-contactrow {\n  align-items:start!important;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;\n  gap:clamp(32px,5vw,60px)!important; }\n\/* CTA copy: reference gap under the heading is 14px, not 20px. *\/\n.t12-bg-navy .et_pb_column > .et_pb_heading + .et_pb_module { margin-top:14px!important; }\n<\/style>\n\n<style id=\"t12-final2\">\n\/* Stats section header: the reference is a 2-up grid, heading left and intro\n   right, baseline aligned. It was stacked. *\/\n.t12-stat-head {\n  display:grid!important; grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;\n  gap:20px!important; align-items:end!important; }\n.t12-stat-head > .et_pb_column { width:100%!important; margin:0!important; float:none!important; }\n.t12-stat-head .et_pb_module + .et_pb_module { margin-top:0!important; }\n@media (max-width:640px){ .t12-stat-head { grid-template-columns:1fr!important; } }\n\n\/* Divi renders a captcha field the reference does not have. *\/\n.t12-form .et_pb_contact_right { display:none!important; }\n.t12-form .et_pb_contact_field.et_pb_contact_field_last { grid-column:1\/-1!important; }\n<\/style>\n<script id=\"t12-placeholders\">\n\/* The reference form shows placeholder text inside each field alongside its\n   label. Divi contact fields expose no placeholder setting, so apply them here. *\/\n(function(){\n  var MAP = {\n    name:    'Jordan Whitfield',\n    company: 'Whitfield Bakery',\n    email:   'jordan@example.com',\n    phone:   '(503) 555-0199',\n    message: 'Our front door sticks and the lock is getting hard to turn. Hoping someone can take a look this week.'\n  };\n  function apply(){\n    Object.keys(MAP).forEach(function(k){\n      document.querySelectorAll(\n        '.t12-form [name$=\"'+k+'\"], .t12-form #et_pb_contact_'+k+'_0'\n      ).forEach(function(el){\n        if(el.tagName==='INPUT'||el.tagName==='TEXTAREA'){ el.placeholder = MAP[k]; }\n      });\n    });\n  }\n  if(document.readyState!=='loading') apply();\n  else document.addEventListener('DOMContentLoaded', apply);\n  setTimeout(apply, 1200);\n})();\n<\/script>\n\n<style id=\"t12-final3\">\n\/* Row spacers: `.t12-row{margin:0 auto}` was cancelling these, which collapsed\n   the gap between section headers and their content (stats collided). *\/\n.t12-row.t12-mt32 { margin-top:32px!important; }\n.t12-row.t12-mt42 { margin-top:42px!important; }\n.t12-row.t12-mt44 { margin-top:44px!important; }\n.t12-row.t12-mt38 { margin-top:38px!important; }\n\n\/* Form: the reference puts the label 7px above its field, not a module apart. *\/\n\n.t12-form .et_pb_contact_form_label {\n  position:static!important; clip:auto!important; height:auto!important; width:auto!important;\n  overflow:visible!important; display:block!important; font-size:13px!important;\n  font-weight:700!important; color:#24405F!important; margin:0 0 7px!important; }\n.t12-form .et_pb_contact_field input.input,\n.t12-form .et_pb_contact_field textarea.et_pb_contact_message { margin:0!important; }\n.t12-form .et_pb_contact_message { min-height:120px!important; height:120px!important; }\n.t12-form .et_pb_contact_form { row-gap:16px!important; }\n.t12-form .et_contact_bottom_container { margin-top:0!important; }\n\n\/* Info panel links are navy in the reference, not the theme's link blue. *\/\n.t12-info a, .t12-info a:visited { color:#24405F!important; text-decoration:none!important; }\n.t12-info .big { color:#24405F!important; }\n<\/style>\n<script id=\"t12-placeholders2\">\n\/* Reference placeholder text. Divi contact fields expose no placeholder field,\n   and Divi seeds the field title as the placeholder, so overwrite it. *\/\n(function(){\n  var MAP = [\n    ['name',    'Jordan Whitfield'],\n    ['company', 'Whitfield Bakery'],\n    ['email',   'jordan@example.com'],\n    ['phone',   '(503) 555-0199'],\n    ['message', 'Our front door sticks and the lock is getting hard to turn. Hoping someone can take a look this week.']\n  ];\n  function apply(){\n    var form = document.querySelector('.t12-form');\n    if(!form) return;\n    MAP.forEach(function(pair){\n      var key = pair[0], txt = pair[1];\n      form.querySelectorAll('input,textarea').forEach(function(el){\n        var id = (el.id||'') + ' ' + (el.name||'');\n        if(id.indexOf(key) !== -1){ el.setAttribute('placeholder', txt); }\n      });\n    });\n  }\n  if(document.readyState!=='loading') apply();\n  else document.addEventListener('DOMContentLoaded', apply);\n  setTimeout(apply,800); setTimeout(apply,2000);\n})();\n<\/script>\n\n<style id=\"t12-pfix\">\n\/* Divi adds padding-bottom:1em to every <p> and wraps loose inline content in\n   one. Both inflate every card. The reference has neither. *\/\n.t12-row .et_pb_text_inner > p,\n.t12-footrow .et_pb_text_inner > p { padding-bottom:0!important; }\n.t12-card p, .t12-whygrid p, .t12-step p, .t12-case p, .t12-mini p, .t12-quote blockquote,\n.t12-stat p, .t12-info p { padding-bottom:0!important; }\n\n\/* Icon tile and \"Learn more\" are block elements now; keep the reference box. *\/\n.t12-card .t12-icontile { width:46px; height:46px; border-radius:14px; background:#F3E9D6;\n  display:flex; align-items:center; justify-content:center; margin:0 0 20px!important; }\n.t12-card .t12-learn { margin:16px 0 0!important; font-size:14px; font-weight:700;\n  color:#A5823F; line-height:1.35; }\n.t12-card h3 { line-height:1.35!important; }\n\n\/* Headings: remove Divi's extra block padding so line-height alone sets height. *\/\n.t12-h1 .et_pb_heading_container, .t12-h2 .et_pb_heading_container { padding:0!important; }\n.t12-h2 .et_pb_heading_container :is(h1,h2,h3,h4) { padding:0!important; margin:0!important; }\n.t12-h1 .et_pb_heading_container :is(h1,h2,h3,h4) { padding:0!important; margin:0!important; }\n<\/style>\n\n<style id=\"t12-formfix\">\n\/* Divi inserts wrapper elements between a field label and its input, which\n   opened a ~55px gap. The reference gap is 7px. *\/\n.t12-form .et_pb_contact_field { padding:0!important; margin:0!important; }\n.t12-form .et_pb_contact_field > * { margin:0!important; }\n.t12-form .et_pb_contact_field p { margin:0!important; padding:0!important; }\n.t12-form .et_pb_contact_form_label { margin:0 0 7px!important; padding:0!important;\n  line-height:1.3!important; }\n.t12-form .et_pb_contact_field input.input,\n.t12-form .et_pb_contact_field textarea.et_pb_contact_message {\n  margin:0!important; display:block!important; }\n.t12-form .et_pb_contact_field_options_wrapper { margin:0!important; padding:0!important; }\n<\/style>\n\n<style id=\"t12-formfix2\">\n\/* Natural block flow, not flex: the flex column was leaving 30px between the\n   label and its input that no margin accounted for. *\/\n.t12-form .et_pb_contact_field { display:block!important; height:auto!important;\n  min-height:0!important; }\n\/* The captcha field carries BOTH et_pb_contact_right and et_pb_contact_field,\n   so the generic field rule was re-showing it. Beat it on specificity. *\/\n.t12-form .et_pb_contact_field.et_pb_contact_right,\n.t12-form .et_contact_bottom_container > .et_pb_contact_right,\n.t12-form p.clearfix { display:none!important; }\n\n\/* Divi offsets the input with position:relative, opening ~30px under the\n   label. The reference gap is 7px. *\/\n.t12-form .et_pb_contact_field input.input,\n.t12-form .et_pb_contact_field textarea.et_pb_contact_message {\n  position:static!important; top:auto!important; }\n.t12-form .et_contact_bottom_container {\n  display:block!important; text-align:left!important; padding:0!important; }\n<\/style>\n\n<style id=\"t12-inner\">\n\/* ---- Shared breadcrumb page hero ---- *\/\n.t12-crumb { display:flex!important; align-items:center; gap:10px;\n  font-family:'Manrope',system-ui,sans-serif; font-size:15px; font-weight:600;\n  color:#8A8275; margin-bottom:22px!important; }\n.t12-crumb a { color:#8A8275!important; text-decoration:none; }\n.t12-crumb a:hover { color:#A5823F!important; }\n.t12-crumb .sep { color:#C6A15B; } .t12-crumb .cur { color:#4C5766; }\n.t12-pagehero .t12-h1-inner .et_pb_heading_container :is(h1,h2) {\n  max-width:24ch; line-height:1.08!important; color:#24405F!important; }\n.t12-pagehero .t12-lead-inner .et_pb_text_inner { max-width:56ch; margin-top:18px; }\n.t12-pagehero .et_pb_column > .et_pb_module + .et_pb_module { margin-top:0!important; }\n\n\/* ---- Service cards with bullet lists (Services page) ---- *\/\n.t12-svc .et_pb_text_inner { background:#FFFDFA; padding:30px 26px; border-radius:14px;\n  border:1px solid #EBE2D4; height:100%; }\n.t12-svc h2 { font-family:'Nunito',system-ui,sans-serif!important; font-size:19px!important;\n  font-weight:800!important; color:#24405F!important; margin:18px 0 0!important; line-height:1.35!important; }\n.t12-svc p { font-size:15px!important; line-height:1.6!important; color:#55606E!important;\n  margin:9px 0 0!important; padding-bottom:0!important; }\n.t12-svc ul { font-size:15px; line-height:1.75; color:#55606E; margin:14px 0 0!important;\n  padding-left:18px!important; list-style:disc; }\n.t12-svc ul li { padding:0!important; margin:0!important; }\n\/* Divi adds padding-bottom to lists and list items; the reference has none. *\/\n.t12-row ul, .t12-row ol { padding-bottom:0!important; margin-bottom:0!important; }\n.t12-row ul li, .t12-row ol li { padding-bottom:0!important; }\n.t12-svc .t12-icontile { margin:0!important; }\n\n\/* ---- Checklist rows (Services \"same five things\") ---- *\/\n.t12-check .et_pb_text_inner { display:grid; gap:14px; margin-top:22px; }\n.t12-check .row { display:flex; gap:14px; align-items:flex-start; }\n.t12-check .dot { width:10px; height:10px; border-radius:999px; background:#C6A15B;\n  flex:0 0 auto; margin-top:7px; }\n.t12-check p { font-size:16px!important; line-height:1.6!important; color:#4C5766!important;\n  margin:0!important; padding-bottom:0!important; }\n.t12-check strong { color:#24405F; }\n\n\/* ---- Team cards (About) ---- *\/\n.t12-team .et_pb_text_inner { background:#FFFDFA; border-radius:14px; border:1px solid #EBE2D4;\n  overflow:hidden; padding:0; height:100%; }\n.t12-team .ph { aspect-ratio:16\/7; background:#FBF3E7; display:flex; align-items:center;\n  justify-content:center; }\n.t12-team .av { width:78px; height:78px; border-radius:999px; display:flex; align-items:center;\n  justify-content:center; font-family:'Nunito',system-ui,sans-serif; font-size:26px;\n  font-weight:800; letter-spacing:0.02em; }\n.t12-team .av.gold { background:#C6A15B; color:#24405F; }\n.t12-team .av.navy { background:#24405F; color:#EBD3A4; }\n.t12-team .body { padding:24px 26px 28px; }\n.t12-team h3 { font-family:'Nunito',system-ui,sans-serif!important; font-size:19px!important;\n  font-weight:800!important; color:#24405F!important; margin:0!important; }\n.t12-team .role { display:block; font-size:13.5px; color:#8A8275; margin-top:3px; font-weight:600; }\n.t12-team p { font-size:15px!important; line-height:1.6!important; color:#55606E!important;\n  margin-top:12px!important; padding-bottom:0!important; }\n\n\/* ---- CTA band: copy left, buttons right ---- *\/\n.t12-ctaband { display:grid!important;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;\n  gap:28px!important; align-items:center!important; }\n.t12-ctaband .et_pb_button_module_wrapper { display:inline-block!important;\n  margin:0 14px 0 0!important; }\n.t12-ctaband > .et_pb_column:last-child { display:flex; flex-wrap:wrap; gap:14px;\n  align-items:center; }\n@media (max-width:980px){ .t12-ctaband { grid-template-columns:1fr!important; } }\n\n\/* ---- Service area pills (Contact) ---- *\/\n.t12-pills .et_pb_text_inner { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }\n.t12-pills span { background:#FFFDFA; border:1px solid #EBE2D4; border-radius:999px;\n  padding:9px 16px; font-size:14px; font-weight:600; color:#24405F; }\n\n\/* ---- Urgent card (Contact) ---- *\/\n.t12-urgent .et_pb_text_inner { background:#24405F; color:#fff; padding:24px 26px;\n  border-radius:14px; }\n.t12-urgent h3 { font-family:'Nunito',system-ui,sans-serif!important; font-size:19px!important;\n  font-weight:800!important; color:#fff!important; margin:0!important; }\n.t12-urgent p { font-size:15px!important; line-height:1.6!important; color:#CFD8E4!important;\n  margin-top:8px!important; padding-bottom:0!important; }\n.t12-urgent a { display:inline-block; margin-top:16px; background:#C6A15B; color:#24405F!important;\n  font-size:15px; font-weight:700; padding:14px 22px; border-radius:12px;\n  border-bottom:3px solid #A5823F; text-decoration:none; }\n.t12-urgent a:hover { background:#D7B67A; }\n\n\/* ---- Two-up media rows used on inner pages ---- *\/\n.t12-media2 { display:grid!important;\n  grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;\n  gap:clamp(28px,4vw,56px)!important; align-items:center!important; }\n.t12-stack .et_pb_module + .et_pb_module { margin-top:16px!important; }\n.t12-img43 img { width:100%; aspect-ratio:4\/3; object-fit:cover; border-radius:16px; display:block; }\n@media (max-width:980px){ .t12-media2 { grid-template-columns:1fr!important; } }\n<\/style>\n\n<style id=\"t12-inner2\">\n\/* Services page steps are cream with a 14px radius (homepage steps are white). *\/\n.t12-step-cream .et_pb_text_inner { background:#FBF3E7!important; border-radius:14px!important;\n  border-top:3px solid #24405F!important; padding:30px 26px!important; height:100%; }\n.t12-step-cream .t12-bignum { font-size:36px!important; margin:0!important; }\n.t12-step-cream h3 { margin:8px 0 0!important; }\n.t12-step-cream p { margin-top:8px!important; padding-bottom:0!important; }\n\n\/* Results case headings are Nunito 800 (homepage uses 19.5px\/700). *\/\n.t12-case-nunito h3 { font-family:'Nunito',system-ui,sans-serif!important;\n  font-size:19px!important; font-weight:800!important; }\n\n\/* Inner-page hero headline keeps the h1 scale. *\/\n.t12-pagehero { padding-top:clamp(44px,6vw,72px)!important;\n  padding-bottom:clamp(44px,6vw,72px)!important; }\n<\/style>\n\n<style id=\"t12-inner3\">\n\/* Divi adds padding-bottom to headings inside modules; the reference has none. *\/\n.t12-row :is(h1,h2,h3,h4,h5,h6) { padding-bottom:0!important; }\n.t12-team h3, .t12-svc h2, .t12-urgent h3 { line-height:1.35!important; }\n.t12-row.t12-mt34 { margin-top:34px!important; }\n<\/style>\n\n<style id=\"t12-inner4\">\n\/* Button pairs sit in a 14px-gap flex row everywhere, as in the reference.\n   Previously only the hero and CTA bands had this. *\/\n.t12-row .et_pb_button_module_wrapper { display:inline-block!important;\n  margin:0 14px 0 0!important; vertical-align:top; }\n.t12-row .et_pb_module + .et_pb_button_module_wrapper { margin-top:28px!important; }\n.t12-row .et_pb_button_module_wrapper + .et_pb_button_module_wrapper { margin-top:28px!important; }\n.t12-ctaband .et_pb_button_module_wrapper,\n.t12-ctaband .et_pb_module + .et_pb_button_module_wrapper { margin-top:0!important; }\n<\/style>\n\n<style id=\"t12-mobile\">\n\/* ---- Side gutters, matching the reference structure ----\n   The reference puts the horizontal padding on the SECTION and lets an inner\n   container cap at 1180px. Putting the padding on the row instead narrowed\n   desktop content to 1100px and changed every line wrap. *\/\n.et_pb_section {\n  padding-left:clamp(18px,4vw,40px)!important;\n  padding-right:clamp(18px,4vw,40px)!important; }\n.et_pb_row.t12-row, .et_pb_row.t12-orow, .et_pb_row.t12-trustrow,\n.et_pb_row.t12-stat-head, .et_pb_row.t12-contactrow, .et_pb_row.t12-ctaband,\n.et_pb_row.t12-media2, .et_pb_row.t12-svc-head, .et_pb_row.t12-footrow,\n.et_pb_row.t12-utilrow, .et_pb_row.t12-hdrrow {\n  padding-left:0!important; padding-right:0!important;\n  max-width:1180px!important; margin-left:auto!important; margin-right:auto!important; }\n\/* The header and hero manage their own inner padding. *\/\n.t12-header, .t12-hero-ov { padding-left:0!important; padding-right:0!important; }\n.t12-header .t12-util, .t12-header .t12-hdr {\n  padding-left:clamp(18px,4vw,40px); padding-right:clamp(18px,4vw,40px); }\n.et_pb_row.t12-orow { padding-left:clamp(18px,4vw,40px)!important;\n  padding-right:clamp(18px,4vw,40px)!important; }\n\n\/* Row spacers must outrank the row reset above. *\/\n.et_pb_row.t12-row.t12-mt32 { margin-top:32px!important; }\n.et_pb_row.t12-row.t12-mt34 { margin-top:34px!important; }\n.et_pb_row.t12-row.t12-mt38 { margin-top:38px!important; }\n.et_pb_row.t12-row.t12-mt42 { margin-top:42px!important; }\n.et_pb_row.t12-row.t12-mt44 { margin-top:44px!important; }\n\n\/* ---- Mobile menu panel ---- *\/\n.t12-mnav { display:none; }\n@media (max-width:980px){\n  .t12-hdr { position:relative; }\n  .t12-mnav { display:block; position:absolute; left:0; right:0; top:100%;\n    background:#FFFDFA; border-top:1px solid #EBE2D4; border-bottom:1px solid #EBE2D4;\n    box-shadow:0 18px 34px rgba(20,34,52,0.12);\n    max-height:0; overflow:hidden; visibility:hidden;\n    transition:max-height .28s ease, visibility .28s; z-index:70; }\n  .t12-hdr.open .t12-mnav { max-height:80vh; overflow-y:auto; visibility:visible; }\n  .t12-mnav .in { padding:8px clamp(18px,4vw,40px) 20px; display:grid; gap:2px; }\n  .t12-mnav a.ln { display:block; padding:14px 2px; font-size:16px; font-weight:600;\n    color:#24405F; text-decoration:none; border-bottom:1px solid #F0E9DD; }\n  .t12-mnav a.ln:active, .t12-mnav a.ln:hover { color:#A5823F; }\n  .t12-mnav .cta { display:grid; gap:10px; margin-top:16px; }\n  .t12-mnav .tel { display:block; text-align:center; font-size:17px; font-weight:700;\n    color:#24405F; text-decoration:none; padding:14px; border:1px solid #C9BCA5;\n    border-radius:12px; background:#FFFDFA; }\n  .t12-mnav .fq { display:block; text-align:center; background:#C6A15B; color:#24405F;\n    font-size:16px; font-weight:700; padding:16px; border-radius:12px;\n    border-bottom:3px solid #A5823F; text-decoration:none; }\n  .t12-burger { display:flex!important; align-items:center; justify-content:center;\n    width:44px; height:44px; border-radius:10px; }\n  .t12-burger span { transition:transform .25s ease, opacity .2s ease; }\n  .t12-hdr.open .t12-burger span:nth-child(1){ transform:translateY(7px) rotate(45deg); }\n  .t12-hdr.open .t12-burger span:nth-child(2){ opacity:0; }\n  .t12-hdr.open .t12-burger span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }\n\n  \/* Utility bar stays one readable line. *\/\n  .t12-util { font-size:12px; gap:6px 16px; justify-content:center; }\n  .t12-util .l { display:none; }\n\n  \/* Buttons go full width and centre, per the build standard. *\/\n  .t12-row .et_pb_button_module_wrapper { display:block!important; margin:14px 0 0!important; }\n  .t12-row a.et_pb_button { display:block!important; text-align:center!important; }\n  .t12-ctaband > .et_pb_column:last-child { display:block; }\n}\n\n@media (max-width:480px){\n  .t12-hdr .wm .n { font-size:18px; }\n  .t12-hdr .mark { width:38px; height:38px; font-size:17px; }\n  \/* Hero stat card should not crowd the copy on small screens. *\/\n  .t12-orow { gap:20px!important; padding-top:36px!important; padding-bottom:36px!important; }\n  .t12-ocard .et_pb_text_inner { padding:18px 20px; }\n  .t12-statnum { font-size:30px!important; }\n  \/* Tables of hours and any wide rows stay inside the gutters. *\/\n  .t12-info .hrs > div { gap:10px; }\n}\n<\/style>\n<script id=\"t12-menu\">\n(function(){\n  function init(){\n    var hdr = document.querySelector('.t12-hdr');\n    if(!hdr || hdr.dataset.menuReady) return;\n    var burger = hdr.querySelector('.t12-burger');\n    var nav = hdr.querySelector('.t12-mnav');\n    if(!burger || !nav) return;\n    hdr.dataset.menuReady = '1';\n    burger.setAttribute('aria-expanded','false');\n    burger.setAttribute('aria-controls','t12-mobile-nav');\n    function setOpen(open){\n      hdr.classList.toggle('open', open);\n      burger.setAttribute('aria-expanded', open ? 'true' : 'false');\n    }\n    burger.addEventListener('click', function(e){\n      e.preventDefault(); e.stopPropagation();\n      setOpen(!hdr.classList.contains('open'));\n    });\n    nav.addEventListener('click', function(e){\n      if(e.target.closest('a')) setOpen(false);\n    });\n    document.addEventListener('click', function(e){\n      if(hdr.classList.contains('open') && !hdr.contains(e.target)) setOpen(false);\n    });\n    document.addEventListener('keydown', function(e){\n      if(e.key === 'Escape') setOpen(false);\n    });\n    window.addEventListener('resize', function(){\n      if(window.innerWidth > 980) setOpen(false);\n    });\n  }\n  if(document.readyState !== 'loading') init();\n  else document.addEventListener('DOMContentLoaded', init);\n  setTimeout(init, 600); setTimeout(init, 1800);\n})();\n<\/script>\n\n<style id=\"t12-hdrwidth\">\n\/* The utility bar's navy band and the header's white band must run the full\n   viewport width, with only their inner content capped at 1180px. The band was\n   inheriting the 1180px row cap, so it stopped 130px short of each edge at\n   1440 and 370px short at 1920. *\/\n.t12-header .et_pb_row.t12-utilrow,\n.t12-header .et_pb_row.t12-hdrrow {\n  max-width:100%!important; width:100%!important;\n  margin-left:0!important; margin-right:0!important;\n  padding-left:0!important; padding-right:0!important; }\n.t12-header .et_pb_row.t12-utilrow > .et_pb_column,\n.t12-header .et_pb_row.t12-hdrrow > .et_pb_column { width:100%!important; }\n.t12-header .et_pb_row.t12-utilrow .et_pb_text,\n.t12-header .et_pb_row.t12-utilrow .et_pb_text_inner { width:100%!important; }\n\/* Navy band spans everything; .t12-util caps and pads the content inside it. *\/\n.t12-header .et_pb_row.t12-utilrow .et_pb_text_inner { background:#24405F!important; }\n.t12-util { max-width:1180px!important; margin:0 auto!important; }\n.t12-hdr  { max-width:1180px!important; margin:0 auto!important; }\n<\/style>\n<\/div><\/div><div class=\"et_pb_section_0 et_pb_section et_section_regular et_flex_section t12-header\">\n<div class=\"et_pb_row_0 et_pb_row et_flex_row t12-utilrow\">\n<div class=\"et_pb_column_0 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_0 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><div class=\"t12-util\"><span class=\"l\">Family owned and serving our neighbors since 2009<\/span><span class=\"r\"><a href=\"mailto:hello@rowanandco.com\">hello@rowanandco.com<\/a><a href=\"tel:+15035550142\" class=\"ph\">(503) 555-0142<\/a><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_row_1 et_pb_row et_flex_row t12-hdrrow\">\n<div class=\"et_pb_column_1 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_1 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><div class=\"t12-hdr\"><a class=\"brand\" href=\"\/theme12\/\"><span class=\"mark\">R<\/span><span class=\"wm\"><span class=\"n\">Rowan &amp; Co.<\/span><span class=\"s\">Local Since 2009<\/span><\/span><\/a><\/p>\n<nav class=\"nav\"><a href=\"\/theme12\/\">Home<\/a><a href=\"\/theme12\/about\/\">About<\/a><a href=\"\/theme12\/services\/\">Services<\/a><a href=\"\/theme12\/results\/\">Results<\/a><a href=\"\/theme12\/contact\/\">Contact<\/a><\/nav>\n<div class=\"act\"><a href=\"tel:+15035550142\" class=\"tel\">(503) 555-0142<\/a><a href=\"\/theme12\/contact\/\" class=\"fq\">Free Quote<\/a><\/div>\n<p><button class=\"t12-burger\" aria-label=\"Menu\" type=\"button\"><span><\/span><span><\/span><span><\/span><\/button><\/p>\n<div class=\"t12-mnav\" id=\"t12-mobile-nav\">\n<div class=\"in\"><a class=\"ln\" href=\"\/theme12\/\">Home<\/a><a class=\"ln\" href=\"\/theme12\/about\/\">About<\/a><a class=\"ln\" href=\"\/theme12\/services\/\">Services<\/a><a class=\"ln\" href=\"\/theme12\/results\/\">Results<\/a><a class=\"ln\" href=\"\/theme12\/contact\/\">Contact<\/a><\/p>\n<div class=\"cta\"><a class=\"tel\" href=\"tel:+15035550142\">(503) 555-0142<\/a><a class=\"fq\" href=\"\/theme12\/contact\/\">Free Quote<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_1 et_pb_section et_section_regular et_flex_section t12-secc t12-pagehero t12-bg-cream\">\n<div class=\"et_pb_row_2 et_pb_row et_flex_row t12-row\">\n<div class=\"et_pb_column_2 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_2 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><nav class=\"t12-crumb\"><a href=\"\/theme12\/\">Home<\/a><span class=\"sep\">\/<\/span><span class=\"cur\">About<\/span><\/nav>\n<\/div>\n<\/div><div class=\"et_pb_heading_0 et_pb_heading et_pb_module et_flex_module t12-h1 t12-h1-inner\"><div class=\"et_pb_heading_container\"><h1 class=\"et_pb_module_header\">Sixteen years of taking care of our neighbors.<\/h1><\/div>\n<\/div><div class=\"et_pb_text_3 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-lead t12-lead-inner\"><div class=\"et_pb_text_inner\"><p>Rowan &amp; Co. is a family owned local business. We started with two people and one truck. We kept the same promise the whole way.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_2 et_pb_section et_section_regular et_flex_section t12-sec t12-bg-off\">\n<div class=\"et_pb_row_3 et_pb_row et_flex_row t12-row t12-media2\">\n<div class=\"et_pb_column_3 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_heading_1 et_pb_heading et_pb_module et_flex_module t12-h2\"><div class=\"et_pb_heading_container\"><h2 class=\"et_pb_module_header\">It started with one truck and a phone that we always answered.<\/h2><\/div>\n<\/div><div class=\"et_pb_text_4 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Dana Rowan opened the shop in 2009 after fifteen years working for someone else. She wanted to run the kind of business she would want to hire: clear prices, honest advice, and people who clean up after themselves.<\/p>\n<\/div>\n<\/div><div class=\"et_pb_text_5 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Her son Ben joined in 2014 and now runs scheduling. The rest of the crew came from the neighborhood, and most have been here more than five years. We turn down work we are not right for, and we tell you who to call instead.<\/p>\n<\/div>\n<\/div><div class=\"et_pb_text_6 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Today we handle around 400 jobs a year for families, shops, and small offices. Almost all of them come from a neighbor who told someone about us.<\/p>\n<\/div>\n<\/div><div class=\"et_pb_module et_pb_button_module_wrapper et_pb_button_0_wrapper\"><a class=\"et_pb_button_0 et_pb_button et_pb_bg_layout_light et_pb_module et_flex_module t12-btn-gold\" href=\"\/theme12\/contact\/\">Get a Free Estimate\n<\/a><\/div><div class=\"et_pb_module et_pb_button_module_wrapper et_pb_button_1_wrapper\"><a class=\"et_pb_button_1 et_pb_button et_pb_bg_layout_light et_pb_module et_flex_module t12-btn-out\" href=\"\/theme12\/services\/\">See Our Services\n<\/a><\/div>\n<\/div><div class=\"et_pb_column_4 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone t12-stack\">\n<div class=\"et_pb_image_0 et_pb_image et_pb_module et_flex_module t12-img1610\"><span class=\"et_pb_image_wrap\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-local-team.webp\" alt=\"The Rowan and Co. crew together in the shop\" width=\"1536\" height=\"1024\" srcset=\"https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-local-team.webp 1536w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-local-team-1280x853.webp 1280w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-local-team-980x653.webp 980w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-local-team-480x320.webp 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) and (max-width: 1280px) 1280px, (min-width: 1281px) 1536px, 100vw\" class=\"wp-image-6\" \/><\/span>\n<\/div><div class=\"et_pb_image_1 et_pb_image et_pb_module et_flex_module t12-img169\"><span class=\"et_pb_image_wrap\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-happy-customer.webp\" alt=\"Handing finished work to a longtime customer\" width=\"1536\" height=\"1024\" srcset=\"https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-happy-customer.webp 1536w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-happy-customer-1280x853.webp 1280w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-happy-customer-980x653.webp 980w, https:\/\/67webdesign.online\/theme12\/wp-content\/uploads\/sites\/13\/2026\/09\/theme12-happy-customer-480x320.webp 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) and (max-width: 1280px) 1280px, (min-width: 1281px) 1536px, 100vw\" class=\"wp-image-7\" \/><\/span>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_3 et_pb_section et_section_regular et_flex_section t12-sec t12-bg-cream\">\n<div class=\"et_pb_row_4 et_pb_row et_flex_row t12-row\">\n<div class=\"et_pb_column_5 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_heading_2 et_pb_heading et_pb_module et_flex_module t12-h2\"><div class=\"et_pb_heading_container\"><h2 class=\"et_pb_module_header\">Four things we will not bend on.<\/h2><\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_row_5 et_pb_row et_flex_row t12-row t12-g4 t12-mt38\">\n<div class=\"et_pb_column_6 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_7 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-card t12-card-top\"><div class=\"et_pb_text_inner\"><h3>Answer the phone<\/h3>\n<p>A person picks up during business hours. Messages get a reply the same day.<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_7 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_8 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-card t12-card-top\"><div class=\"et_pb_text_inner\"><h3>Quote it plainly<\/h3>\n<p>You get a written price in plain language, and it does not change later.<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_8 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_9 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-card t12-card-top\"><div class=\"et_pb_text_inner\"><h3>Respect the place<\/h3>\n<p>We cover floors, keep the noise down, and leave the space clean.<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_9 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_10 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-card t12-card-top\"><div class=\"et_pb_text_inner\"><h3>Stand behind it<\/h3>\n<p>One year on everything we do. If it is not right, we come back.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_4 et_pb_section et_section_regular et_flex_section t12-sec t12-bg-off\">\n<div class=\"et_pb_row_6 et_pb_row et_flex_row t12-row t12-gcta t12-svc-head\">\n<div class=\"et_pb_column_10 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_heading_3 et_pb_heading et_pb_module et_flex_module t12-h2\"><div class=\"et_pb_heading_container\"><h2 class=\"et_pb_module_header\">Who you will actually meet.<\/h2><\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_11 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_11 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Eleven of us, all local. Everyone on the crew is licensed, insured, and background checked. Staff portraits go here once photos are taken.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_row_7 et_pb_row et_flex_row t12-row t12-g3 t12-mt38\">\n<div class=\"et_pb_column_12 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_12 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-team\"><div class=\"et_pb_text_inner\"><div class=\"ph\">\n<div class=\"av gold\">DR<\/div>\n<\/div>\n<div class=\"body\">\n<h3>Dana Rowan<\/h3>\n<p><span class=\"role\">Owner, 25 years on the job<\/span><\/p>\n<p>Dana walks most estimates herself and still takes calls on the hard jobs.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_13 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_13 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-team\"><div class=\"et_pb_text_inner\"><div class=\"ph\">\n<div class=\"av navy\">BR<\/div>\n<\/div>\n<div class=\"body\">\n<h3>Ben Rowan<\/h3>\n<p><span class=\"role\">Operations, 12 years on the job<\/span><\/p>\n<p>Ben builds the schedule and sends the text that tells you we are on the way.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_14 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_14 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-team\"><div class=\"et_pb_text_inner\"><div class=\"ph\">\n<div class=\"av gold\">MO<\/div>\n<\/div>\n<div class=\"body\">\n<h3>Marisol Ortega<\/h3>\n<p><span class=\"role\">Service lead, 9 years on the job<\/span><\/p>\n<p>Marisol runs the maintenance visits and trains every new crew member.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_5 et_pb_section et_section_regular et_flex_section t12-sec t12-onnavy t12-bg-navy\">\n<div class=\"et_pb_row_8 et_pb_row et_flex_row t12-row\">\n<div class=\"et_pb_column_15 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_heading_4 et_pb_heading et_pb_module et_flex_module t12-h2 t12-onnavy\"><div class=\"et_pb_heading_container\"><h2 class=\"et_pb_module_header\">Where we work<\/h2><\/div>\n<\/div><div class=\"et_pb_text_15 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>We cover the city and the towns within about 30 miles. If you are just outside, call and ask. We often say yes.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_row_9 et_pb_row et_flex_row t12-row t12-gstat t12-mt34\">\n<div class=\"et_pb_column_16 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_16 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-stat\"><div class=\"et_pb_text_inner\"><div class=\"n\">16<\/div>\n<p>Years serving our community<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_17 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_17 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-stat\"><div class=\"et_pb_text_inner\"><div class=\"n\">11<\/div>\n<p>People on the crew<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_18 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_18 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-stat\"><div class=\"et_pb_text_inner\"><div class=\"n\">30 mi<\/div>\n<p>Service radius from the shop<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_19 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_19 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module t12-stat\"><div class=\"et_pb_text_inner\"><div class=\"n\">4.9<\/div>\n<p>Average rating from 380 reviews<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_6 et_pb_section et_section_regular et_flex_section t12-secc t12-bg-cream\">\n<div class=\"et_pb_row_10 et_pb_row et_flex_row t12-row t12-ctaband\">\n<div class=\"et_pb_column_20 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_heading_5 et_pb_heading et_pb_module et_flex_module t12-h2\"><div class=\"et_pb_heading_container\"><h2 class=\"et_pb_module_header\">Want to meet the crew? Start with an estimate.<\/h2><\/div>\n<\/div><div class=\"et_pb_text_20 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Estimates are free and there is no pressure to book.<\/p>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_column_21 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_module et_pb_button_module_wrapper et_pb_button_2_wrapper\"><a class=\"et_pb_button_2 et_pb_button et_pb_bg_layout_light et_pb_module et_flex_module t12-btn-gold\" href=\"\/theme12\/contact\/\">Get a Free Estimate\n<\/a><\/div><div class=\"et_pb_module et_pb_button_module_wrapper et_pb_button_3_wrapper\"><a class=\"et_pb_button_3 et_pb_button et_pb_bg_layout_light et_pb_module et_flex_module t12-btn-out\" href=\"tel:+15035550142\">(503) 555-0142\n<\/a><\/div>\n<\/div>\n<\/div>\n<\/div><div class=\"et_pb_section_7 et_pb_section et_section_regular et_flex_section t12-footer\">\n<div class=\"et_pb_row_11 et_pb_row et_flex_row t12-footrow\">\n<div class=\"et_pb_column_22 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_21 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><div class=\"t12-foot\">\n<div class=\"fcol\">\n<div class=\"fbrand\"><span class=\"mark\">R<\/span><span class=\"n\">Rowan &amp; Co.<\/span><\/div>\n<p class=\"fabout\">A family owned local business helping homes and small businesses with      repairs, installations, and upkeep since 2009.<\/p>\n<div class=\"fsoc\"><a href=\"\/theme12\/contact\/\" aria-label=\"LinkedIn\">in<\/a>      <a href=\"\/theme12\/contact\/\" aria-label=\"Facebook\">f<\/a>      <a href=\"\/theme12\/contact\/\" aria-label=\"Instagram\">ig<\/a><\/div>\n<\/p><\/div>\n<div class=\"fcol\">\n<h4>Quick links<\/h4>\n<div class=\"flinks\">    <a href=\"\/theme12\/about\/\">About us<\/a><a href=\"\/theme12\/services\/\">Services<\/a>    <a href=\"\/theme12\/results\/\">Recent work<\/a><a href=\"\/theme12\/contact\/\">Contact<\/a>    <a href=\"\/theme12\/about\/\">Join our team<\/a><\/div>\n<\/div>\n<div class=\"fcol\">\n<h4>Services<\/h4>\n<div class=\"flinks\">    <a href=\"\/theme12\/services\/\">Free estimates<\/a><a href=\"\/theme12\/services\/\">Repairs and fixes<\/a>    <a href=\"\/theme12\/services\/\">Installation and setup<\/a><a href=\"\/theme12\/services\/\">Custom projects<\/a>    <a href=\"\/theme12\/services\/\">Maintenance plans<\/a><\/div>\n<\/div>\n<div class=\"fcol\">\n<h4>Get in touch<\/h4>\n<div class=\"fcontact\">    <a href=\"tel:+15035550142\" class=\"fphone\">(503) 555-0142<\/a>    <a href=\"mailto:hello@rowanandco.com\">hello@rowanandco.com<\/a>    <span>1240 SW Morrison Street, Suite 620<br \/>Portland, OR 97205<\/span>    <span>Mon to Fri 7:30 to 5:30<br \/>Sat 8:00 to 2:00<\/span><\/div>\n<\/div>\n<\/div>\n<div class=\"t12-legal\"><span>&copy; 2026 Rowan &amp; Co. All rights reserved.<\/span><span class=\"lr\"><a href=\"\/theme12\/contact\/\">Privacy Policy<\/a><a href=\"\/theme12\/contact\/\">Terms of Use<\/a><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-29","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/pages\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/comments?post=29"}],"version-history":[{"count":7,"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/pages\/29\/revisions"}],"predecessor-version":[{"id":64,"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/pages\/29\/revisions\/64"}],"wp:attachment":[{"href":"https:\/\/67webdesign.online\/theme12\/wp-json\/wp\/v2\/media?parent=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}