.elementor-kit-5{--e-global-color-primary:#C2312B;--e-global-color-secondary:#24402A;--e-global-color-text:#2E2B26;--e-global-color-accent:#EAD7AC;--e-global-color-ink:#1B1A17;--e-global-color-ink2:#2B2925;--e-global-color-paper:#F6EFDF;--e-global-color-paper2:#EFE4CC;--e-global-color-cream:#FBF7EE;--e-global-color-card:#FFFCF5;--e-global-color-gold:#C9A25E;--e-global-color-red2:#9C221D;--e-global-color-green:#3F6B3C;--e-global-color-green3:#1A2F1F;--e-global-color-steel:#8E979B;--e-global-color-muted:#6A6458;--e-global-color-line:#D9CCAE;--e-global-color-star:#E5A425;--e-global-color-white:#FFFFFF;--e-global-typography-primary-font-family:"Zilla Slab";--e-global-typography-primary-font-size:44px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.1;--e-global-typography-primary-letter-spacing:-0.005em;--e-global-typography-secondary-font-family:"Futura";--e-global-typography-secondary-font-size:18px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.1;--e-global-typography-text-font-family:"Source Sans 3";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65;--e-global-typography-accent-font-family:"Rye";--e-global-typography-accent-font-size:17px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.35;background-color:#FBF7EE;color:#2E2B26;font-family:"Source Sans 3", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:18px;font-weight:400;line-height:1.65;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#C2312B;font-family:"Futura", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:18px;font-weight:700;line-height:1.1;color:#FFFFFF;border-style:solid;border-width:2.5px 2.5px 2.5px 2.5px;border-color:#1B1A17;border-radius:12px 12px 12px 12px;padding:14px 22px 14px 22px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#C2312B;color:#FFFFFF;border-style:solid;border-width:2.5px 2.5px 2.5px 2.5px;border-color:#1B1A17;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 h1{color:#1B1A17;font-family:"Zilla Slab", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:clamp(36px, 4.4vw, 60px);font-weight:700;line-height:1.1;letter-spacing:-0.005em;}.elementor-kit-5 h2{color:#1B1A17;font-family:"Zilla Slab", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:clamp(30px, 3vw, 44px);font-weight:700;line-height:1.1;letter-spacing:-0.005em;}.elementor-kit-5 h3{color:#1B1A17;font-family:"Zilla Slab", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-0.005em;}.elementor-kit-5 label{color:#1B1A17;font-family:"Futura", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:17px;font-weight:700;}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-family:"Source Sans 3", Futura PT, Jost, Century Gothic, system-ui, sans-serif;font-size:17px;color:#2E2B26;background-color:#FBF7EE;border-style:solid;border-width:2px 2px 2px 2px;border-color:#1B1A17;border-radius:10px 10px 10px 10px;transition:200ms;padding:12px 14px 12px 14px;}.elementor-kit-5 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea:focus,.elementor-kit-5 .elementor-field-textual:focus{background-color:#FFFFFF;border-style:solid;border-width:2px 2px 2px 2px;border-color:#C2312B;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1144px;}.e-con{--container-max-width:1144px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:980px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:640px){.elementor-kit-5{font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Tulip Plumbing design layer (ink outlines, hard shadows, ribbon, stripes, stamp, header, phone menu + bar, FAQ, motion states). */
:root {
  --ink: #1B1A17; --ink-2: #2B2925; --paper: #F6EFDF; --paper-2: #EFE4CC; --cream: #FBF7EE; --ribbon: #EAD7AC; --gold: #C9A25E;
  --red: #C2312B; --red-2: #9C221D; --green: #3F6B3C; --green-2: #24402A; --green-3: #1A2F1F; --steel: #8E979B;
  --text: #2E2B26; --muted: #6A6458; --line: #D9CCAE; --card: #FFFCF5;
  --hf: "Zilla Slab", Georgia, serif; --uf: Futura, "Futura PT", "Jost", "Century Gothic", system-ui, sans-serif;
  --df: "Rye", Georgia, serif; --bf: "Source Sans 3", system-ui, sans-serif;
  --sh: 6px 6px 0 var(--ink); --sh-red: 8px 8px 0 var(--red);
}
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
html, body { overflow-x: clip; }
body { -webkit-font-smoothing: antialiased; }
body p { margin: 0; }
body p + p { margin-top: 14px; }
body a { color: inherit; text-decoration: none; }
body :focus-visible { outline: 3px solid var(--red); outline-offset: 3px; border-radius: 6px; }
body .elementor-widget-image img { display: block; }
body .elementor-widget-text-editor blockquote { margin: 0; padding: 0; border: 0; font-style: normal; }
body .nw { white-space: nowrap; }
body .elementor-heading-title, body .elementor-button-text, body .e-n-accordion-item-title-text, body .tp-mnav .elementor-icon-list-text { text-wrap: balance; }
body .elementor-widget-text-editor p, body .elementor-widget-text-editor li, body .elementor-widget-text-editor blockquote, body .tp-tlist .elementor-icon-list-text { text-wrap: pretty; }
body .tp-flow > .elementor-element + .elementor-element { margin-top: 14px; }
body .tp-flow > .elementor-element.tp-h2 + .elementor-element { margin-top: 20px; }
body .tp-flow > .elementor-element.tp-tlist, body .tp-flow > .elementor-element.tp-tlist + .elementor-element, body .tp-flow > .elementor-element.tp-chips, body .tp-flow > .elementor-element.tp-chips + .elementor-element { margin-top: 18px; }
body .tp-flow > .elementor-element.tp-tbl, body .tp-flow > .elementor-element.tp-tbl + .elementor-element { margin-top: 22px; }
body .tp-flow > .elementor-element.tp-actions { margin-top: 26px; }
body .tp-flow > .elementor-element.tp-badge + .elementor-element { margin-top: 20px; }
body .tp-flow > .elementor-element.tp-fam-line { margin-top: 22px; }
body .tp-flow > .elementor-element.tp-tagline { margin-top: 30px; }
body .tp-sec-head > .elementor-element.tp-h2 + .elementor-element { margin-top: 16px; }
body .tp-card > .elementor-element.tp-card-ico + .elementor-element { margin-top: 20px; }
body .tp-card > .elementor-element.tp-h3 + .elementor-element { margin-top: 12px; }
body .tp-card > .elementor-element.tp-actions { margin-top: 18px; }
body .tp-sub > .elementor-element.tp-h3 + .elementor-element { margin-top: 12px; }
body .tp-val-b > .elementor-element.tp-h3 + .elementor-element { margin-top: 10px; }
body .tp-areas-txt > .elementor-element.tp-h2 + .elementor-element { margin-top: 18px; }
body .tp-form-side > .elementor-element.tp-h2 + .elementor-element { margin-top: 16px; }
body .tp-form-side > .elementor-element.tp-form-img { margin-top: 28px; }
body .tp-form-card > .elementor-element + .elementor-element { margin-top: 18px; }
body .tp-cta-copy > .elementor-element.tp-h2 + .elementor-element { margin-top: 16px; }
body .tp-hours-mid > .elementor-element.tp-h2 + .elementor-element { margin-top: 8px; }
body .tp-faq-head > .elementor-element.tp-faq-tulip + .elementor-element { margin-top: 14px; }
body .tp-faq-head > .elementor-element.tp-h2 + .elementor-element { margin-top: 22px; }
body .tp-rev-head-l > .elementor-element.tp-h2 + .elementor-element { margin-top: 14px; }
body .tp-legal > .elementor-element.tp-h2 { margin-top: 38px; }
body .tp-legal > .elementor-element.tp-h2:first-child { margin-top: 0; }
body .tp-legal > .elementor-element.tp-h2 + .elementor-element { margin-top: 12px; }
body .tp-sec-head.e-con { max-width: 780px; margin-bottom: 44px; }
body .tp-sec-head .tp-txt p { font-size: 19px; color: var(--ink-2); }
body .tp-btn .elementor-button { display: inline-flex; align-items: center; font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.1;
  padding: 14px 22px; border-radius: 12px; border: 2.5px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); white-space: nowrap; cursor: pointer;
  transition: transform .15s, box-shadow .15s, background-color .2s, color .2s; }
body .tp-btn .elementor-button:hover { transform: translate(-2px, -2px); box-shadow: 6px 6px 0 var(--ink); }
body .tp-btn .elementor-button:active { transform: translate(2px, 2px); box-shadow: 1px 1px 0 var(--ink); }
body .tp-btn .elementor-button-content-wrapper { align-items: center; gap: 10px; }
body .tp-btn .elementor-button-icon svg { width: 19px; height: 19px; }
body .tp-btn.tp-btn-ic-arrow .elementor-button-icon { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: rgba(255,255,255,.2); margin-right: -6px; }
body .tp-btn.tp-btn-ic-arrow .elementor-button-icon svg { width: 15px; height: 15px; }
body .tp-btn-ghost .elementor-button { border-color: var(--ink); }
body .tp-btn-ghost-light .elementor-button { border-color: #fff; box-shadow: 4px 4px 0 rgba(0,0,0,.35); }
body .tp-btn-ghost-light .elementor-button:hover { box-shadow: 6px 6px 0 rgba(0,0,0,.35); }
body .tp-dark .tp-btn-primary .elementor-button, body .tp-hours .tp-btn-primary .elementor-button { box-shadow: 4px 4px 0 rgba(0,0,0,.45); }
body .tp-btn-link .elementor-button { padding: 0 0 1px; border: 0; border-bottom: 2.5px solid var(--red); border-radius: 0; box-shadow: none; max-width: 100%; white-space: normal; transition: color .2s; }
body .tp-btn-link .elementor-button:hover, body .tp-btn-link .elementor-button:active { transform: none; box-shadow: none; }
body .tp-btn-link .elementor-button-content-wrapper { gap: 8px; transition: gap .2s; }
body .tp-btn-link .elementor-button-text { text-align: left; }
body .tp-btn-link .elementor-button:hover .elementor-button-content-wrapper { gap: 13px; }
body .tp-btn.tp-btn-link .elementor-button-icon { width: auto; height: auto; background: none; margin: 0; }
body .tp-btn-link .elementor-button-icon svg { width: 18px; height: 18px; fill: var(--red); }
body .tp-dark .tp-btn-link .elementor-button { color: #fff; }
body .tp-full, body .tp-full .elementor-button { width: 100%; }
body .tp-full .elementor-button { justify-content: center; }
body .elementor-widget-icon.tp-badge .elementor-icon-wrapper, body .elementor-widget-icon.tp-card-ico .elementor-icon-wrapper, body .elementor-widget-icon.tp-hours-ico .elementor-icon-wrapper, body .elementor-widget-icon.tp-score-g .elementor-icon-wrapper, body .elementor-widget-icon.tp-pill-g .elementor-icon-wrapper, body .elementor-widget-icon.tp-rev-g .elementor-icon-wrapper { text-align: left !important; line-height: 0; }
body .tp-score-g .elementor-icon, body .tp-pill-g .elementor-icon, body .tp-rev-g .elementor-icon { display: block; line-height: 0; }
body .tp-badge .elementor-icon { width: 58px; height: 58px; display: grid; place-items: center; padding: 0; border: 2.5px solid var(--ink); box-shadow: 3px 3px 0 var(--ink); }
body .tp-badge .elementor-icon svg { width: 28px; height: 28px; }
body .elementor-location-header { position: sticky; top: -40px; z-index: 50; }
body .tp-topbar > .e-con-inner { min-height: 40px; }
body .tp-tb .elementor-icon-list-text { font-size: 14.5px; font-weight: 600; color: #DCE6D6; white-space: nowrap; }
body .tp-tb .elementor-icon-list-icon svg { width: 15px; height: 15px; }
body .tp-tb-mail { margin-left: auto; }
body .tp-hdr { position: relative; transition: box-shadow .25s, margin-bottom .25s; }
body .tp-hdr.e-con > .e-con-inner { height: 92px; transition: height .25s; }
body .tp-hdr.e-con.scrolled { box-shadow: 0 8px 0 -4px rgba(27,26,23,.12); margin-bottom: 16px; }
body .tp-hdr.e-con.scrolled > .e-con-inner { height: 76px; }
body .tp-logo img { height: 78px; width: auto; transition: height .25s; }
body .tp-hdr .tp-logo { flex: 0 0 auto; }
body .tp-hdr .tp-hdr-cta { width: auto !important; flex: 0 0 auto; margin-left: auto; }
body .tp-hdr.scrolled .tp-logo img { height: 62px; }
body .tp-nav { margin-left: auto; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu a.elementor-item { display: flex; align-items: center; gap: 6px; padding: 10px 13px; border-radius: 10px;
  font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.65; color: var(--ink); white-space: nowrap; background: transparent; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu a.elementor-item:hover, body .tp-nav .elementor-nav-menu--main .elementor-nav-menu a.elementor-item.highlighted { background: var(--paper); color: var(--ink); }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu > .current-menu-item > a.elementor-item, body .tp-nav .elementor-nav-menu--main .elementor-nav-menu > .current-menu-ancestor > a.elementor-item, body .tp-nav .elementor-nav-menu--main .elementor-nav-menu > .current-menu-parent > a.elementor-item { color: var(--red); }
body .tp-nav .sub-arrow { padding: 0 !important; margin: 0; line-height: 0; }
body .tp-nav .sub-arrow svg { width: 14px; height: 14px; fill: currentColor; transition: transform .2s; }
body .tp-nav .menu-item-has-children:hover > a .sub-arrow svg, body .tp-nav a.highlighted .sub-arrow svg { transform: rotate(180deg); }
body .tp-nav .sub-arrow i { font-size: 11px; transition: transform .2s; }
body .tp-nav .menu-item-has-children:hover > a .sub-arrow i, body .tp-nav a.highlighted .sub-arrow i { transform: rotate(180deg); }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu { width: 520px !important; max-width: none !important; min-width: 0 !important; left: 50% !important; margin-left: -260px !important;
  margin-top: 10px !important; padding: 12px; background: var(--cream); border: 2.5px solid var(--ink); border-radius: 18px; box-shadow: var(--sh); animation: tp-dd .2s ease; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu::after { content: ""; display: block; clear: both; }
body .tp-nav .elementor-nav-menu--main .menu-item-has-children:hover > ul.sub-menu, body .tp-nav .elementor-nav-menu--main .menu-item-has-children:focus-within > ul.sub-menu { display: block !important; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu > li { float: left; width: calc(50% - 2px); margin: 2px 1px; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; border: 0;
  font-family: var(--uf); font-weight: 700; font-size: 17px; line-height: 1.3; color: var(--ink); background: transparent; white-space: normal; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item:hover, body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item.highlighted { background: var(--paper); color: var(--ink); }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu .current-menu-item > a.elementor-sub-item { color: var(--red); }
body .tp-nav .tp-mi > a::before { content: ""; flex: none; width: 38px; height: 38px; border-radius: 50%; border: 2px solid var(--ink); background-color: var(--paper); background-position: center; background-repeat: no-repeat; background-size: 20px 20px; }
@keyframes tp-dd { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
body .tp-hdr-phone .elementor-icon-list-item > a { gap: 8px; }
body .tp-hdr-phone .elementor-icon-list-text { font-family: var(--uf); font-weight: 700; font-size: 20px; color: var(--ink); white-space: nowrap; padding: 0 !important; }
body .tp-hdr-phone .elementor-icon-list-icon svg { width: 22px; height: 22px; }
body .tp-hdr-req .elementor-button { padding: 12px 18px; font-size: 17px; }
body .tp-burger .elementor-button { position: relative; display: block; width: 48px; height: 48px; padding: 0; border-radius: 12px; box-shadow: 3px 3px 0 var(--ink); }
body .tp-burger .elementor-button:hover, body .tp-burger .elementor-button:active { transform: none; box-shadow: 3px 3px 0 var(--ink); }
body .tp-burger .elementor-button-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
body .tp-burger .elementor-button::before, body .tp-burger .elementor-button::after, body .tp-burger .elementor-button-content-wrapper::before {
  content: ""; position: absolute; left: 11.5px; width: 20px; height: 2.4px; border-radius: 2px; background: #fff;
  transition: transform .36s cubic-bezier(.65,0,.35,1), opacity .2s ease, top .36s cubic-bezier(.65,0,.35,1); }
body .tp-burger .elementor-button::before { top: 14px; }
body .tp-burger .elementor-button-content-wrapper::before { top: 20.3px; }
body .tp-burger .elementor-button::after { top: 26.6px; }
body .tp-burger .elementor-button[aria-expanded="true"]::before { top: 20.3px; transform: rotate(45deg); }
body .tp-burger .elementor-button[aria-expanded="true"] .elementor-button-content-wrapper::before { opacity: 0; transform: scaleX(.2); }
body .tp-burger .elementor-button[aria-expanded="true"]::after { top: 20.3px; transform: rotate(-45deg); }
body .tp-mnav.e-con { position: fixed; inset: 0; z-index: 60; overflow: auto; color: #fff; opacity: 0; visibility: hidden; clip-path: inset(0 0 100% 0);
  transition: opacity .36s cubic-bezier(.4,0,.2,1), clip-path .4s cubic-bezier(.65,0,.35,1), visibility 0s linear .4s; }
body .tp-mnav.e-con.open { opacity: 1; visibility: visible; clip-path: inset(0 0 0 0); transition: opacity .3s cubic-bezier(.4,0,.2,1), clip-path .4s cubic-bezier(.65,0,.35,1), visibility 0s; }
body .tp-mnav-in { width: 100%; max-width: 520px; margin: 0 auto; }
body .tp-mnav-in > .elementor-element { opacity: 0; transform: translateY(-10px); transition: opacity .25s ease, transform .3s ease; }
body .tp-mnav.open .tp-mnav-in > .elementor-element { opacity: 1; transform: none; transition: opacity .35s ease, transform .4s cubic-bezier(.2,.7,.2,1); }
body .tp-mnav.open .tp-mnav-in > .elementor-element:nth-child(1) { transition-delay: 95ms; }
body .tp-mnav.open .tp-mnav-in > .elementor-element:nth-child(2) { transition-delay: 130ms; }
body .tp-mnav.open .tp-mnav-in > .elementor-element:nth-child(3) { transition-delay: 200ms; }
body .tp-mnav.open .tp-mnav-in > .elementor-element:nth-child(4) { transition-delay: 270ms; }
body .tp-mnav-big .elementor-icon-list-item { border-bottom: 1px solid rgba(255,255,255,.12); }
body .tp-mnav-big .elementor-icon-list-text { font-family: var(--uf); font-weight: 700; font-size: 26px; line-height: 1.65; padding: 10px 0 !important; color: #fff; }
body .tp-mnav-big .elementor-icon-list-item[aria-current] .elementor-icon-list-text, body .tp-mnav-big a[aria-current] .elementor-icon-list-text { color: var(--ribbon); }
body .tp-mnav-svc .elementor-icon-list-items { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 12px; padding: 8px 0 12px; }
body .tp-mnav-svc .elementor-icon-list-item { padding: 0 !important; margin: 0 !important; }
body .tp-mnav-svc .elementor-icon-list-item > a { padding: 6px 0; align-items: center; }
body .tp-mnav-svc .elementor-icon-list-text { font-size: 16px; line-height: 1.3; }
body .tp-mnav-cta { margin-top: 22px; }
body.menu-open { overflow: hidden; }
body.menu-open .tp-hdr { z-index: 70; }
body .tp-hero { position: relative; overflow: hidden; }
body .tp-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; top: auto; width: auto; height: 22px; z-index: 1;
  background: repeating-linear-gradient(90deg, var(--red) 0 40px, var(--cream) 40px 80px, var(--green) 80px 120px, var(--cream) 120px 160px); border-top: 2.5px solid var(--ink); }
body .tp-hero-copy { align-self: center; min-width: 0; }
body .tp-crumb nav, body .tp-crumb .crumb { display: flex; gap: 10px; font-size: 15px; color: var(--muted); font-weight: 600; }
body .tp-crumb a:hover { color: var(--red); }
body .tp-hero-copy > .elementor-widget.tp-crumb { margin-bottom: 12px; }
body .tp-ribbon { position: relative; width: fit-content !important; max-width: calc(100% - 40px); align-self: flex-start; }
body .tp-hero-copy > .elementor-widget.tp-ribbon { margin: 0 0 12px 18px; }
body .tp-ribbon { filter: drop-shadow(3px 3px 0 var(--ink)); }
body .tp-ribbon .elementor-heading-title { position: relative; display: block; background: var(--ribbon); color: var(--ink); font-family: var(--df); font-weight: 400;
  font-size: clamp(14px, 1.18vw, 17px); line-height: 1.35; letter-spacing: .01em; padding: 8px 20px; border: 2.5px solid var(--ink); z-index: 1; }
body .tp-ribbon::before, body .tp-ribbon::after { content: ""; position: absolute; top: 8px; width: 30px; height: 100%; background: #D9C08A; border: 2.5px solid var(--ink); z-index: 0; }
body .tp-ribbon::before { left: -18px; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 40% 50%); }
body .tp-ribbon::after { right: -18px; clip-path: polygon(0 0, 100% 0, 60% 50%, 100% 100%, 0 100%); }
body .tp-hero-copy > .elementor-widget.tp-hero-h1 { margin: 8px 0 16px; }
body .tp-hero-h1 .elementor-heading-title, body .tp-hero-plain .tp-h1 .elementor-heading-title { font-size: clamp(34px, 3.45vw, 52px); line-height: 1.06; }
body .tp-hero-plain .tp-h1 .elementor-heading-title { font-size: clamp(36px, 4.4vw, 60px); line-height: 1.1; }
body .tp-hero-plain .elementor-widget.tp-h1 { margin: 8px 0 0; }
body .tp-lead p { font-size: 20px; line-height: 1.55; color: var(--ink-2); max-width: 640px; }
body .tp-hero-plain .elementor-widget.tp-lead { margin-top: 10px; }
body .tp-hero-copy > .elementor-widget.tp-kv { margin-top: 14px; }
body .tp-kv p { display: flex; gap: 10px; font-size: 19px; }
body .tp-kv span { font-weight: 700; }
body .tp-kv a { color: var(--red); font-weight: 700; }
body .tp-hero-copy > .e-con.tp-hero-actions { margin-top: 22px; }
body .tp-hero-copy > .e-con.tp-hero-trust { margin-top: 26px; }
body .tp-trust-line .elementor-heading-title { display: inline-block; font-family: var(--uf); font-weight: 700; font-size: 19px; line-height: 1.65; color: var(--green-2);
  border-top: 2px dashed var(--green); border-bottom: 2px dashed var(--green); padding: 6px 2px; }
body .tp-pill.e-con { width: fit-content; max-width: 100%; background: var(--cream); border: 2px solid var(--ink); box-shadow: 3px 3px 0 var(--ink); border-radius: 999px; font-weight: 600; }
body .tp-pill-n .elementor-heading-title { font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.65; }
body .tp-pill-c .elementor-heading-title { font-size: 15px; line-height: 1.65; color: var(--muted); font-weight: 600; }
body .tp-hero-art { position: relative; justify-self: center; width: 100%; max-width: 480px; min-height: 420px; }
body .tp-flash { position: relative; flex: 1 1 auto; min-height: 0; border: 3px solid var(--ink); border-radius: 22px; overflow: hidden;
  box-shadow: var(--sh-red), 12px 12px 0 2px var(--ink); background: var(--ink); transform: rotate(1.5deg); }
body .tp-flash img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; }
body .tp-hero-art > .tp-hero-tulip { position: absolute; left: -22px; bottom: -10px; width: 38%; z-index: 2; }
body .tp-hero-tulip img { width: 100%; transform-origin: 50% 100%; animation: tp-sway 6s ease-in-out infinite; filter: drop-shadow(4px 4px 0 rgba(27,26,23,.25)); }
body .tp-hero-art > .tp-hero-wrench { position: absolute; right: -22px; top: -26px; width: 21%; z-index: 2; transform: rotate(28deg); }
body .tp-hero-wrench img { width: 100%; filter: drop-shadow(4px 4px 0 rgba(27,26,23,.25)); }
@keyframes tp-sway { 0%, 100% { transform: rotate(-3deg); } 50% { transform: rotate(3deg); } }
body .tp-intro-band { border-bottom: 2px dashed var(--line); }
body .tp-intro-tulip img { width: 92px; transform: rotate(-8deg); filter: drop-shadow(4px 4px 0 rgba(27,26,23,.18)); }
body .tp-intro-txt { border-left: 4px solid var(--red); max-width: 800px; }
body .tp-intro-txt p { font-size: 19px; }
body .tp-intro-big p { font-family: var(--uf); font-weight: 700; font-size: clamp(22px, 1.9vw, 27px); line-height: 1.32; color: var(--ink); text-wrap: balance; }
body .tp-split-img { position: relative; }
body .tp-split-photo img { width: 100%; aspect-ratio: 5 / 4.2; object-fit: cover; border: 3px solid var(--ink); border-radius: 20px; box-shadow: var(--sh); }
body .tp-split-img::after { content: ""; position: absolute; width: 86px; height: 94px; right: -26px; bottom: -30px; left: auto; top: auto; z-index: 1;
  background: url("/wp-content/uploads/2026/11/tulip.webp") center / contain no-repeat; transform: rotate(12deg); }
@media (min-width: 981px) {
body .tp-flip > .e-con-inner > .tp-split-txt { order: 2; }
body .tp-flip .tp-split-img::after { right: auto; left: -26px; transform: rotate(-12deg); }
}
body .tp-side-h { position: sticky; top: 130px; }
body .tp-side-b { font-size: 19px; background: var(--cream); border: 2.5px solid var(--ink); border-radius: 20px; box-shadow: var(--sh); }
body .tp-tint .tp-side-b { background: var(--card); }
body .tp-strong p { font-family: var(--uf); font-weight: 700; font-size: 22px; color: var(--ink); }
body .tp-tlist .elementor-icon-list-items { display: grid; gap: 10px; }
body .tp-tlist .elementor-icon-list-item { --icon-vertical-align: flex-start; align-items: flex-start; gap: 12px; background: var(--card); border: 2px solid var(--line); border-radius: 12px; padding: 12px 16px !important; font-weight: 600; }
body .tp-tlist .elementor-icon-list-icon { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--green); margin-top: 2px; padding: 0 !important; }
body .tp-tlist .elementor-icon-list-icon svg { width: 14px; height: 14px; }
body .tp-tlist .elementor-icon-list-text { padding: 0 !important; color: var(--text); }
body .tp-tbl { overflow-x: auto; }
body .tp-tbl table { width: 100%; margin: 0; border-collapse: separate; border-spacing: 0; border: 2.5px solid var(--ink); border-radius: 16px; overflow: hidden; background: var(--card); box-shadow: var(--sh); font-size: inherit; }
body .tp-tbl th { background: var(--green-2); color: #fff; font-family: var(--uf); font-weight: 700; font-size: 18px; text-align: left; padding: 14px 18px; border: 0; line-height: 1.65; }
body .tp-tbl td { padding: 14px 18px; border: 0; border-top: 2px solid var(--line); vertical-align: top; background: transparent !important; line-height: 1.65; }
body .tp-tbl td:first-child { font-family: var(--uf); font-weight: 700; font-size: 19px; color: var(--ink); }
body .tp-card { position: relative; background: var(--card); border: 2.5px solid var(--ink); border-radius: 20px; box-shadow: var(--sh); transition: translate .2s, box-shadow .2s, border-color .2s; }
body .tp-card:hover { translate: -3px -3px; box-shadow: 9px 9px 0 var(--ink); }
body .tp-card-ico .elementor-icon { width: 62px; height: 62px; display: grid; place-items: center; padding: 0; border: 2.5px solid var(--ink); transition: background-color .2s, color .2s; }
body .tp-card-ico .elementor-icon svg { width: 30px; height: 30px; transition: fill .2s; }
body .tp-card:hover .tp-card-ico .elementor-icon { background-color: var(--red) !important; }
body .tp-card:hover .tp-card-ico .elementor-icon svg { fill: #fff !important; }
body .tp-card .tp-txt p { font-size: 17px; }
body .tp-cards-more .tp-card { box-shadow: none; border-width: 2px; border-color: var(--line); }
body .tp-cards-more .tp-card:hover { border-color: var(--ink); box-shadow: var(--sh); }
@media (min-width: 981px) {
body .tp-cards-c3 > .tp-card:last-child:nth-child(3n+2) { grid-column: span 2; } }
@media (min-width: 641px) and (max-width: 980px) {
body .tp-cards > .tp-card:last-child:nth-child(odd) { grid-column: span 2; } }
body .tp-sub { background: var(--card); border: 2.5px solid var(--ink); border-radius: 20px; box-shadow: var(--sh); }
body .tp-sub .tp-h3 .elementor-heading-title { color: var(--green-2); }
body .tp-sec-values { color: #E5ECDF; }
body .tp-sec-values .tp-h2 .elementor-heading-title, body .tp-val .tp-h3 .elementor-heading-title { color: #fff; }
body .tp-sec-values .tp-sec-head .tp-txt p { color: #D2DDCB; }
body .tp-val { background: rgba(255,255,255,.05); border: 2px solid rgba(255,255,255,.18); border-radius: 20px; }
body .tp-vals > .tp-val:last-child:nth-child(odd) { grid-column: 1 / -1; }
body .tp-val-n { flex: none; }
body .tp-val-n .elementor-heading-title { font-family: var(--df); font-weight: 400; font-size: 40px; color: var(--ribbon); line-height: 1; }
body .tp-val .tp-txt p { font-size: 17px; }
body .tp-faq-head { position: sticky; top: 130px; }
body .tp-faq-tulip img { width: 96px; transform-origin: 50% 100%; animation: tp-sway 6s ease-in-out infinite; }
body .tp-faq-call .elementor-icon-list-item > a { gap: 12px; }
body .tp-faq-call .elementor-icon-list-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--red); border: 2.5px solid var(--ink); padding: 0 !important; }
body .tp-faq-call .elementor-icon-list-icon svg { width: 22px; height: 22px; }
body .tp-faq-call .elementor-icon-list-text { font-family: var(--uf); font-weight: 700; font-size: 24px; color: var(--text); padding: 0 !important; }
body .tp-faq .e-n-accordion-item { background: var(--card); border: 2.5px solid var(--ink); border-radius: 16px; overflow: hidden; transition: box-shadow .35s ease; }
body .tp-faq .e-n-accordion-item:has(> summary[aria-expanded="true"]) { box-shadow: var(--sh); }
body .tp-faq .e-n-accordion-item-title { padding: 20px 24px; border: 0; background: transparent; gap: 18px; justify-content: space-between; align-items: center; }
body .tp-faq .e-n-accordion-item-title-text { font-family: var(--uf); font-weight: 700; font-size: 20px; line-height: 1.3; color: var(--ink); }
body .tp-faq .e-n-accordion-item-title-icon { flex: none; display: grid !important; place-items: center; width: 36px !important; height: 36px; border-radius: 50%; background: var(--paper); border: 2px solid var(--ink);
  transition: transform .4s cubic-bezier(.4,0,.2,1), background-color .3s, color .3s; }
body .tp-faq .e-n-accordion-item-title-icon span { display: grid; place-items: center; }
body .tp-faq .e-n-accordion-item-title-icon svg { width: 18px; height: 18px; fill: var(--ink); transition: fill .3s; }
body .tp-faq summary[aria-expanded="true"] .e-n-accordion-item-title-icon { transform: rotate(45deg); background: var(--red); }
body .tp-faq summary[aria-expanded="true"] .e-n-accordion-item-title-icon svg { fill: #fff; }
body .tp-faq-ans.e-con { border: 0; }
body .tp-faq-a { font-size: 17.5px; }
body .tp-cta { position: relative; color: #E5ECDF; border-top: 2.5px solid var(--ink); }
body .tp-cta::after { content: ""; position: absolute; inset: 0; width: auto; height: auto; pointer-events: none; background: repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 2px, transparent 2px 18px); }
body .tp-cta > .e-con-inner { position: relative; z-index: 1; }
body .tp-cta-emblem img { width: 230px; filter: drop-shadow(8px 8px 0 rgba(0,0,0,.35)); }
body .tp-cta .tp-h2 .elementor-heading-title { color: #fff; font-size: clamp(32px, 3.4vw, 50px); }
body .tp-cta .tp-txt p { font-size: 19px; max-width: 640px; }
body .tp-rev-head.e-con { margin-bottom: 40px; }
body .tp-rev-head-l { max-width: 640px; }
body .tp-score.e-con { width: fit-content; max-width: 100%; flex: none; align-items: center; background: var(--card); border: 2.5px solid var(--ink); border-radius: 18px; box-shadow: var(--sh); }
body .tp-score > .tp-score-g { grid-row: span 2; }
body .tp-score > .tp-score-c { grid-column: 1 / -1; }
body .tp-score-n .elementor-heading-title { font-family: var(--uf); font-weight: 700; font-size: 32px; line-height: 1; color: var(--ink); }
body .tp-score-c .elementor-heading-title { font-size: 15px; line-height: 1.65; color: var(--muted); }
body .tp-stars .elementor-icon-list-items { display: inline-flex; gap: 1px; }
body .tp-stars .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
body .tp-stars .elementor-icon-list-item::after { display: none !important; }
body .tp-stars .elementor-icon-list-text { display: none; }
body .tp-stars .elementor-icon-list-icon svg { width: 16px; height: 16px; }
body .tp-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
body .tp-track.e-con { width: max-content; max-width: none; flex-wrap: nowrap; animation: tp-marquee 60s linear infinite; }
body .tp-marquee:hover .tp-track { animation-play-state: paused; }
@keyframes tp-marquee { to { transform: translateX(calc(-50% - 12px)); } }
body .tp-rev { background: var(--card); border: 2.5px solid var(--ink); border-radius: 20px; box-shadow: 5px 5px 0 var(--ink); }
body .tp-track > .tp-rev { width: 400px; flex: 0 0 400px; }
body .tp-rev > .elementor-widget.tp-stars { margin-bottom: 12px; }
body .tp-rev > .tp-rev-q { flex: 1; }
body .tp-rev-q blockquote { font-size: 16.5px; }
body .tp-rev > .e-con.tp-rev-f { margin-top: 16px; }
body .tp-rev-n .elementor-heading-title { font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.3; color: var(--ink); }
body .tp-rev-btn.e-con { margin-top: 10px; }
body .tp-sec-revband { border-top: 2.5px solid var(--ink); border-bottom: 2.5px solid var(--ink); }
body .tp-rb-actions.e-con { margin-top: 0; flex-direction: column; align-items: stretch; }
body .tp-rb-actions .elementor-button { width: 100%; justify-content: center; }
body .tp-rb-score > .elementor-element + .elementor-element { margin-top: 14px; }
body .tp-chips .elementor-icon-list-items { display: flex; flex-wrap: wrap; gap: 10px; }
body .tp-chips .elementor-icon-list-item { margin: 0 !important; padding: 7px 15px 7px 11px !important; background: var(--card); border: 2px solid var(--ink); border-radius: 999px; box-shadow: 2px 2px 0 var(--ink); }
body .tp-chips .elementor-icon-list-item::after { display: none !important; }
body .tp-chips .elementor-icon-list-text { font-weight: 600; font-size: 16px; line-height: 1.65; color: var(--text); }
body .tp-areas-photo img { width: 100%; border: 3px solid var(--ink); border-radius: 20px; box-shadow: var(--sh-red), 12px 12px 0 2px var(--ink); aspect-ratio: 4 / 4.4; object-fit: cover; }
body .tp-form-img img { width: 100%; border: 3px solid var(--ink); border-radius: 20px; box-shadow: var(--sh); aspect-ratio: 4 / 3.3; object-fit: cover; }
body .tp-form-card { position: relative; background: var(--card); border: 2.5px solid var(--ink); border-radius: 22px; box-shadow: var(--sh-red), 12px 12px 0 2px var(--ink); }
body .tp-form-card > .tp-form { position: static; }
body .tp-form .elementor-field-label { font-family: var(--uf); font-weight: 700; font-size: 17px; color: var(--ink); line-height: 1.65; }
body .tp-form .elementor-field-textual, body .tp-form select.elementor-field { font-family: var(--bf); font-weight: 400; font-size: 17px; line-height: 1.65; color: var(--text); background: var(--cream);
  border: 2px solid var(--ink) !important; border-radius: 10px !important; padding: 12px 14px; min-height: 0; }
body .tp-form .elementor-field-textual:focus, body .tp-form select.elementor-field:focus { outline: none; border-color: var(--red) !important; box-shadow: 0 0 0 3px rgba(194,49,43,.18); background: #fff; }
body .tp-form .elementor-field-textual:user-invalid, body .tp-form select.elementor-field:user-invalid { border-color: var(--red-2) !important; }
body .tp-form .elementor-select-wrapper::before { color: var(--ink); }
body .tp-form textarea.elementor-field-textual { resize: vertical; }
body .tp-form .elementor-field-type-upload input[type=file] { width: 100%; padding: 16px 16px 16px 52px; border: 2px dashed var(--ink); border-radius: 10px; background: var(--cream) no-repeat 16px center / 26px 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2312B' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E");
  font-family: var(--bf); font-weight: 600; font-size: 16px; color: var(--muted); cursor: pointer; }
body .tp-form input[type=file]::file-.elementor-kit-5-button { font: 700 15px var(--uf); padding: 8px 14px; margin-right: 12px; border-radius: 10px; border: 2px solid var(--ink); background: #fff; color: var(--ink); cursor: pointer; }
body .tp-form .e-form__buttons .elementor-button, body .tp-form .elementor-field-type-submit .elementor-button { width: 100%; justify-content: center; font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.1;
  padding: 14px 22px; border-radius: 12px; border: 2.5px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); transition: transform .15s, box-shadow .15s; }
body .tp-form .elementor-field-type-submit .elementor-button:hover { transform: translate(-2px, -2px); box-shadow: 6px 6px 0 var(--ink); }
body .tp-form .elementor-field-type-submit .elementor-button-content-wrapper { align-items: center; gap: 10px; }
body .tp-form .elementor-field-type-submit .elementor-button-icon { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: rgba(255,255,255,.2); margin-right: -6px; }
body .tp-form .elementor-field-type-submit .elementor-button-icon svg { width: 15px; height: 15px; fill: #fff; }
body .tp-form-note p { font-size: 15px; color: var(--muted); }
body .tp-form-note a { color: var(--red); text-decoration: underline; }
body .tp-form .elementor-message.elementor-message-success { position: absolute; inset: 0; z-index: 3; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px;
  text-align: center; padding: 40px; background: rgba(251,247,238,.98); border-radius: 20px; font-size: 19px; line-height: 1.65; color: var(--text); }
body .tp-form .elementor-message.elementor-message-success::before { content: ""; display: block; width: 90px; height: 99px; margin: 0; background: url("/wp-content/uploads/2026/11/tulip.webp") center / contain no-repeat; }
body .tp-form .elementor-message-danger { color: var(--red-2); font-size: 15px; }
body .tp-hours { background: var(--green-2); color: #E5ECDF; border: 2.5px solid var(--ink); border-radius: 22px; box-shadow: var(--sh); }
body .tp-hours-mid { flex: 1; }
body .tp-hours .tp-h2 .elementor-heading-title { color: #fff; font-size: 32px; }
body .tp-hours-big .elementor-heading-title { font-family: var(--uf); font-weight: 700; font-size: 27px; line-height: 1.65; color: #fff; }
body .tp-hours-ico { flex: none; }
body .tp-hours-ico .elementor-icon { width: 76px; height: 76px; display: grid; place-items: center; padding: 0; border: 2.5px solid var(--ink); }
body .tp-hours-ico .elementor-icon svg { width: 38px; height: 38px; }
body .tp-legal { max-width: 820px; }
body .tp-legal .tp-h2 .elementor-heading-title { font-size: 28px; }
body .tp-tagline.e-con { position: relative; width: fit-content; max-width: 100%; margin-right: 8px; margin-bottom: 8px; background: var(--ribbon); border: 2.5px solid var(--ink); border-radius: 18px; box-shadow: 6px 6px 0 var(--ink); transform: rotate(-1.2deg); }
body .tp-tagline::before { content: "\201C"; position: absolute; right: 14px; top: -4px; font-family: var(--df); font-size: 66px; line-height: 1; color: var(--red); z-index: 1; }
body .tp-tagline::after { content: ""; position: absolute; left: 10px; right: 10px; top: 8px; bottom: 8px; width: auto; height: auto; border: 1.5px dashed rgba(27,26,23,.35); border-radius: 12px; pointer-events: none; }
body .tp-tagline > .tp-tagline-img { position: absolute; left: 16px; top: 50%; width: 52px; transform: translateY(-50%) rotate(-10deg); filter: drop-shadow(2px 2px 0 var(--ink)); }
body .tp-tagline-q p { margin: 0; font-family: var(--hf); font-weight: 700; font-size: clamp(19px, 1.55vw, 22px); line-height: 1.32; color: var(--ink); text-wrap: balance; }
body .tp-tagline-q .tl, body .tp-ftr-tag .tl { display: block; text-wrap: balance; }
body .tp-fam-line p { padding-left: 16px; border-left: 4px solid var(--red); font-family: var(--hf); font-weight: 700; font-size: clamp(19px, 1.5vw, 21px); line-height: 1.38; color: var(--ink); text-wrap: pretty; }
body .tp-fam-line span { display: block; margin-top: 6px; font-family: var(--uf); font-weight: 600; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; color: var(--green-2); }
body .tp-split-img > .tp-stamp { position: absolute; top: -46px; left: -46px; width: 150px; height: 150px; z-index: 2; filter: drop-shadow(4px 4px 0 var(--ink)); }
body .tp-flip .tp-split-img > .tp-stamp { left: auto; right: -40px; }
body .tp-stamp-art { position: relative; width: 100%; height: 100%; }
body .tp-stamp-art svg { display: block; width: 100%; height: 100%; animation: tp-spin 28s linear infinite; }
body .tp-stamp-art circle { fill: var(--cream); stroke: var(--ink); stroke-width: 3; }
body .tp-stamp-art circle.in { fill: var(--ribbon); stroke: var(--red); stroke-width: 2.5; stroke-dasharray: 5 5; }
body .tp-stamp-art text { font-family: var(--df); font-size: 15px; fill: var(--red); }
body .tp-stamp-art img { position: absolute; left: 50%; top: 50%; width: 46%; height: auto; transform: translate(-50%, -54%); }
@keyframes tp-spin { to { transform: rotate(360deg); } }
body .tp-ftr { position: relative; color: #CFC6B4; }
body .tp-ftr::before { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: auto; width: auto; height: 16px; opacity: 1;
  background: repeating-linear-gradient(90deg, var(--red) 0 40px, var(--ribbon) 40px 80px, var(--green) 80px 120px, var(--ribbon) 120px 160px); }
body .tp-ftr-logo img { width: 150px; }
body .tp-ftr-brand > .tp-ftr-logo + .elementor-element { margin-top: 18px; }
body .tp-ftr-brand > .elementor-element.tp-ftr-tag + .elementor-element { margin-top: 0; }
body .tp-ftr-brand > .elementor-element.tp-ftr-social { margin-top: 20px; }
body .tp-ftr-tag p { font-family: var(--hf); font-weight: 700; font-size: 17px; line-height: 1.35; color: var(--ribbon); max-width: 300px; margin-bottom: 14px; }
body .tp-ftr-trust .elementor-heading-title { font-family: var(--uf); font-weight: 700; font-size: 18px; line-height: 1.65; color: var(--ribbon); }
body .tp-ftr .elementor-widget.tp-ftr-h3 { margin-bottom: 16px; }
body .tp-ftr-h3 .elementor-heading-title { color: #fff; font-size: 20px; }
body .tp-ftr-links .elementor-icon-list-text { color: #CFC6B4; transition: color .2s; }
body .tp-ftr-links a:hover .elementor-icon-list-text, body .tp-ftr-contact a:hover .elementor-icon-list-text { color: #fff; }
body .tp-ftr-contact .elementor-icon-list-text { color: #CFC6B4; word-break: break-word; }
body .tp-ftr-social .elementor-social-icon { width: 44px; height: 44px; display: inline-grid; place-items: center; padding: 0; transition: background-color .2s; }
body .tp-ftr-social .elementor-social-icon svg { width: 20px; height: 20px; }
body .tp-ftr-social .elementor-social-icon:hover { background-color: var(--red) !important; }
body .tp-ftr-bottom.e-con > .e-con-inner { border-top: 1px solid rgba(255,255,255,.12); padding: 22px 0; }
body .tp-ftr-copy .elementor-heading-title { font-size: 15px; line-height: 1.65; color: #CFC6B4; font-weight: 400; }
body .tp-mbar.e-con { position: fixed; left: 0; right: 0; bottom: 0; top: auto; width: auto; z-index: 55; padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  background: var(--cream); border-top: 2.5px solid var(--ink); box-shadow: 0 -6px 18px rgba(27,26,23,.12);
  transform: translateY(110%); visibility: hidden; transition: transform .32s cubic-bezier(.4,0,.2,1), visibility 0s linear .32s; }
body .tp-mbar.e-con.on { transform: none; visibility: visible; transition: transform .32s cubic-bezier(.4,0,.2,1), visibility 0s; }
body.menu-open .tp-mbar.e-con { transform: translateY(110%); }
body .tp-mbar .elementor-button { width: 100%; min-height: 50px; justify-content: center; padding: 0 8px; box-shadow: 3px 3px 0 var(--ink); font-size: clamp(13px, 3.7vw, 17px); }
body .tp-mbar .elementor-button-content-wrapper { justify-content: center; gap: 6px; }
body .tp-mbar .elementor-button-text { white-space: nowrap; }
body .tp-mbar .elementor-button-icon svg { width: 18px; height: 18px; }
body .tp-mbar .tp-btn.tp-btn-ic-arrow .elementor-button-icon { width: auto; height: auto; background: none; margin: 0; }
body .tp-mbar .tp-mb-req .elementor-button-icon svg { fill: var(--ink); }
@media (max-width: 359px) {
body .tp-mb-req .elementor-button-icon { display: none; } }
@media (min-width: 761px) {
body .tp-mbar.e-con { display: none; } }
.js-anim .rv { opacity: 0; transform: translateY(32px); }


@media (max-width: 1180px) {
body .tp-hdr-phone .elementor-icon-list-text { display: none; }
body .tp-hdr-phone .elementor-icon-list-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 12px; background: var(--paper); border: 2.5px solid var(--ink); padding: 0 !important; }
body .tp-nav .elementor-nav-menu--main .elementor-nav-menu a.elementor-item { padding: 10px 10px; }
}
@media (max-width: 980px) {
body .tp-hdr-cta { margin-left: auto; }
body .tp-hdr-phone .elementor-icon-list-text { display: inline; }
body .tp-hdr-phone .elementor-icon-list-icon { width: auto; height: auto; border: 0; background: none; }
body .tp-hero-art { max-width: 440px; min-height: 0; }
body .tp-flash { flex: none; aspect-ratio: 4 / 4.1; }
body .tp-hero-h1 .elementor-heading-title { font-size: clamp(32px, 5.4vw, 46px); }
body .tp-side-h, body .tp-faq-head { position: static; }
body .tp-cta-emblem img { width: 160px; }
body .tp-intro-tulip img { width: 72px; }
body .tp-split-img > .tp-stamp { width: 120px; height: 120px; top: -34px; left: -8px; }
body .tp-flip .tp-split-img > .tp-stamp { left: auto; right: -8px; }
body .tp-rb-score.e-con { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 20px; }
body .tp-rb-score > .elementor-element + .elementor-element { margin-top: 0; }
body .tp-rb-actions.e-con { flex-direction: row; }
body .tp-rb-actions .elementor-button { width: auto; }
}
@media (max-width: 760px) {
body .tp-rb-actions { display: none; }
body .tp-ftr.e-con { --padding-bottom: calc(80px + env(safe-area-inset-bottom)) !important; }
}
@media (max-width: 640px) {
body .tp-hdr-phone .elementor-icon-list-text { display: none; }
body .tp-hdr-phone .elementor-icon-list-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 12px; background: var(--paper); border: 2.5px solid var(--ink); }
body .tp-hdr.e-con > .e-con-inner, body .tp-hdr.e-con.scrolled > .e-con-inner { height: 76px; }
body .tp-hdr.e-con.scrolled { margin-bottom: 0; }
body .tp-logo img { height: 60px; }
body .tp-hdr.scrolled .tp-logo img { height: 54px; }
body .tp-tb .elementor-icon-list-text { font-size: clamp(12.5px, 3.6vw, 14.5px); letter-spacing: 0; }
body .tp-btn .elementor-button { white-space: normal; text-align: left; }
body .tp-hero-actions > .tp-btn, body .tp-cta .tp-actions > .tp-btn { flex: 1 1 100%; }
body .tp-hero-actions .elementor-button, body .tp-cta .tp-actions .elementor-button { width: 100%; justify-content: center; }
body .tp-hero-h1 .elementor-heading-title { font-size: clamp(29px, 8.2vw, 36px); line-height: 1.1; }
body .tp-lead p { font-size: 19px; }
body .tp-ribbon { align-self: center; max-width: calc(100% - 36px); }
body .tp-hero-copy > .elementor-widget.tp-ribbon { margin: 0 auto 14px; }
body .tp-ribbon .elementor-heading-title { font-size: clamp(13px, 3.7vw, 15px); padding: 8px 12px; text-align: center; }
body .tp-ribbon::before, body .tp-ribbon::after { width: 24px; }
body .tp-ribbon::before { left: -16px; }
body .tp-ribbon::after { right: -16px; }
body .tp-hero-art { max-width: 330px; }
body .tp-hero-art > .tp-hero-wrench { right: -2px; top: -22px; width: 19%; }
body .tp-intro-tulip img { width: 58px; }
body .tp-intro-txt p { font-size: 17px; }
body .tp-intro-big p { font-size: 21px; }
body .tp-split-img::after { width: 60px; height: 66px; right: -8px; bottom: -22px; }
body .tp-rev, body .tp-track > .tp-rev { width: 300px; flex-basis: 300px; }
body .tp-rb-cards > .tp-rev { width: auto; }
body .tp-rb-actions.e-con { flex-direction: column; width: 100%; }
body .tp-tbl thead { display: none; }
body .tp-tbl table, body .tp-tbl tbody, body .tp-tbl tr, body .tp-tbl td { display: block; }
body .tp-tbl tr { border-top: 2px solid var(--line); }
body .tp-tbl tr:first-child { border-top: 0; }
body .tp-tbl td { border: 0; padding: 8px 16px; }
body .tp-tbl td::before { content: attr(data-l); display: block; font-size: 13px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }
body .tp-faq .e-n-accordion-item-title { padding: 18px; }
body .tp-faq .e-n-accordion-item-title-text { font-size: 18px; }
body .tp-tagline.e-con { margin-right: 4px; margin-bottom: 6px; }
body .tp-tagline > .tp-tagline-img { left: 12px; width: 40px; }
body .tp-tagline::before { font-size: 54px; right: 10px; }
}
@media (max-width: 480px) {
body .tp-intro-big .nw { white-space: normal; } }
@media (max-width: 380px) {
body .tp-tagline.e-con { --padding-top: 16px !important; --padding-right: 14px !important; --padding-bottom: 16px !important; --padding-left: 54px !important; }
body .tp-tagline > .tp-tagline-img { left: 10px; width: 34px; }
body .tp-tagline-q p { font-size: 17.5px; }
body .tp-tagline::before { font-size: 46px; right: 8px; }
}
@media (max-width: 370px) {
body .tp-intro-txt.e-con { --padding-left: 16px !important; }
body .tp-intro-big p { font-size: 18.5px; }
body .tp-intro-txt .tp-txt p { font-size: 16px; } }

@media (min-width: 981px) and (max-height: 820px) {
body .tp-hero.e-con { --padding-top: 36px !important; --padding-bottom: 74px !important; }
body .tp-hero-h1 .elementor-heading-title { font-size: clamp(34px, 3.4vw, 50px); }
body .tp-hero-copy > .elementor-widget.tp-hero-h1 { margin: 6px 0 14px; }
body .tp-lead p { font-size: 19px; }
body .tp-hero-copy > .e-con.tp-hero-actions { margin-top: 18px; }
body .tp-hero-copy > .e-con.tp-hero-trust { margin-top: 18px; }
body .tp-hero-copy > .elementor-widget.tp-ribbon { margin-bottom: 10px; }
}
@media (min-width: 981px) and (max-height: 740px) {
body .tp-hdr.e-con > .e-con-inner { height: 84px; }
body .tp-logo img { height: 70px; }
body .tp-hdr.e-con.scrolled { margin-bottom: 8px; }
body .tp-hero.e-con { --padding-top: 24px !important; --padding-bottom: 66px !important; }
body .tp-hero-h1 .elementor-heading-title { font-size: clamp(32px, 3.1vw, 44px); }
body .tp-hero-copy > .e-con.tp-hero-trust { margin-top: 16px; }
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation: none !important; transition: none !important; }
.js-anim .rv { opacity: 1; transform: none; }
}
body .tp-nav .tp-mi-heater > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%226%22%20y%3D%223%22%20width%3D%2212%22%20height%3D%2218%22%20rx%3D%223%22/%3E%3Cpath%20d%3D%22M9%203v2M15%203v2%22/%3E%3Cpath%20d%3D%22M12%2010c1.5%201.5%201.5%203%200%204.5M12%2010c-1.5%201.5-1.5%203%200%204.5%22/%3E%3Cpath%20d%3D%22M9%2018h6%22/%3E%3C/svg%3E"); }
body .tp-nav .tp-mi-sewer > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%208h7v8H3M21%208h-7v8h7%22/%3E%3Cpath%20d%3D%22M10%2010h4M10%2014h4%22/%3E%3Cpath%20d%3D%22M6.5%2016v4M17.5%2016v4%22/%3E%3C/svg%3E"); }
body .tp-nav .tp-mi-drain > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.5%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%222%22/%3E%3Cpath%20d%3D%22M12%203.5v6.5M12%2014v6.5M3.5%2012H10M14%2012h6.5%22/%3E%3C/svg%3E"); }
body .tp-nav .tp-mi-pump > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020h16%22/%3E%3Crect%20x%3D%227%22%20y%3D%229%22%20width%3D%2210%22%20height%3D%2211%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M12%209V4h5%22/%3E%3Cpath%20d%3D%22M10%2013h4M10%2016h4%22/%3E%3C/svg%3E"); }
body .tp-nav .tp-mi-softener > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%228%22%20height%3D%2218%22%20rx%3D%223%22/%3E%3Cpath%20d%3D%22M13%207h4a2%202%200%200%201%202%202v3%22/%3E%3Cpath%20d%3D%22M19%2015s1.5%201.6%201.5%202.7a1.5%201.5%200%200%201-3%200c0-1.1%201.5-2.7%201.5-2.7z%22/%3E%3Cpath%20d%3D%22M8%208h2M8%2012h2%22/%3E%3C/svg%3E"); }
body .tp-nav .tp-mi-pipe > a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23C2312B%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207h8a4%204%200%200%201%204%204v10%22/%3E%3Cpath%20d%3D%22M3%2011h6a2%202%200%200%201%202%202v8%22/%3E%3Cpath%20d%3D%22M2%205v8M9%2019h8%22/%3E%3C/svg%3E"); }/* End custom CSS */