/* Site-wide additions on top of the WordPress theme. Theme colours/fonts. */

/* Homepage hero: service area + trust bar */
.prs-hero-area{color:#fff;font-family:"Montserrat",sans-serif;font-weight:600;font-size:1.05em;line-height:1.5;text-align:center;margin:.9em auto 0;max-width:40em}
.prs-trust{list-style:none!important;margin:1.1em 0 0!important;padding:0!important;display:flex;flex-wrap:wrap;justify-content:center;gap:.55em .6em}
.prs-trust li{list-style:none;margin:0!important;padding:.5em .95em!important;border:1px solid rgba(255,255,255,.5);color:#fff;
  font-family:"Montserrat",sans-serif;font-size:.8em;font-weight:600;line-height:1.2;letter-spacing:.02em;background:rgba(48,49,64,.25)}
.prs-trust li:before{content:none!important;display:none!important}
.prs-trust a,.prs-trust a:hover{color:#fff!important;text-decoration:none}
.prs-trust .prs-star{color:#e7b957}
@media (max-width:767px){.prs-hero-area{font-size:.95em}.prs-trust li{font-size:.72em}}

/* Callout note inside articles */
.prs-note{background:#f6f5f5;border-left:4px solid #d75f3e;padding:1em 1.25em;font-style:italic}

/* Header phone: keep "(916) 316-2700" on one line */
.sc_layouts_iconed_text_line1{white-space:nowrap}
@media (max-width:1599px){.scheme_default .sc_layouts_row_type_compact .sc_layouts_item a .sc_layouts_item_details_line1.sc_layouts_iconed_text_line1{font-size:1.35em}}

/* "Why people choose us" checklist: centre each line on its check box */
ul.trx_addons_list_success li{display:flex;align-items:center;min-height:42px}
ul.trx_addons_list_success li:before{top:0!important;margin-top:0!important}

/* Icon + text blocks (e.g. Call Us / Email Us): centre the text on the icon */
.sc_icons_default.sc_align_left .sc_icons_item{align-items:center}
.sc_icons_default.sc_align_left .sc_icons_item_title{margin-top:0}

/* Contact forms: consent + button on one row, button flush with the fields' right edge */
.wpcf7-form .submit-button-align-right>p{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1em 2em;margin:0}
.wpcf7-form .submit-button-align-right .wpcf7-form-control-wrap{flex:1 1 0;min-width:0}
.wpcf7-form .submit-button-align-right .wpcf7-list-item{margin:0}
.wpcf7-form .submit-button-align-right .wpcf7-submit{margin:0;flex:0 0 auto;min-width:14em}
@media (max-width:600px){.wpcf7-form .submit-button-align-right .wpcf7-form-control-wrap,.wpcf7-form .submit-button-align-right .wpcf7-submit{flex-basis:100%;width:100%}}
/* Submit button in brand colours; faded (not grey) until the consent box is ticked.
   Selectors are specific enough to beat the theme's !important [disabled] grey. */
.wpcf7-form input.wpcf7-submit[type="submit"],
.wpcf7-form input.wpcf7-submit[type="submit"][disabled]{background-color:#d75f3e!important;border-color:#d75f3e!important;color:#fff!important;transition:background-color .2s,opacity .2s}
.wpcf7-form input.wpcf7-submit[type="submit"]:not([disabled]):hover{background-color:#303140!important;border-color:#303140!important;color:#fff!important}
.wpcf7-form input.wpcf7-submit[type="submit"]{border-width:2px!important;border-style:solid!important}
/* Solid in both states (it's the main action); until consent is ticked, slightly faded + not-allowed cursor */
.wpcf7-form input.wpcf7-submit[type="submit"][disabled]{cursor:not-allowed;opacity:1}
/* Homepage form sits on the orange band: dark button there */
div[id^="wpcf7-f962-"] .wpcf7-form input.wpcf7-submit[type="submit"],
div[id^="wpcf7-f962-"] .wpcf7-form input.wpcf7-submit[type="submit"][disabled]{background-color:#303140!important;border-color:#303140!important}
div[id^="wpcf7-f962-"] .wpcf7-form input.wpcf7-submit[type="submit"]:not([disabled]):hover{background-color:#fff!important;border-color:#fff!important;color:#303140!important}

/* CF7's loading spinner sits after the button and takes ~72px even when hidden; float it over the button */
.wpcf7-form .submit-button-align-right>p{position:relative}
.wpcf7-form .submit-button-align-right .wpcf7-spinner{position:absolute;right:.75em;top:50%;margin:-12px 0 0}
/* Consent line: readable size, keep "Privacy Policy" together */
.wpcf7-form .submit-button-align-right .wpcf7-list-item-label{font-size:13px;line-height:1.5}
.wpcf7-form .submit-button-align-right .wpcf7-list-item-label a{white-space:nowrap}

/* ---------- Phones (≤767px) ---------- */
@media (max-width:767px){
  /* Pinned 60px header: call + book buttons, menu button on the right */
  .vc_custom_1533738840052{position:fixed!important;top:0!important;left:0!important;right:0!important;width:auto!important;margin:0!important;z-index:9990;background:#fff;
    min-height:60px;padding:0 12px!important;box-shadow:0 2px 10px rgba(48,49,64,.12)}
  header.top_panel{padding-top:60px}
  .vc_custom_1533738840052>.wpb_column{width:100%!important;padding:0!important}
  .vc_custom_1533738840052 .vc_inner{flex-wrap:nowrap!important;min-height:60px;align-items:center;margin:0!important;width:100%!important}
  .vc_custom_1533738840052 .vc_inner>.wpb_column{padding:0!important}
  .vc_custom_1533738840052 .vc_inner>.vc_col-sm-4 .sc_layouts_item{margin:0!important}
  .vc_custom_1533738840052 .sc_layouts_menu_mobile_button{position:relative}
  .vc_custom_1533738840052 .sc_layouts_menu_popup{position:fixed!important;top:60px!important;left:auto!important;right:0!important;transform:none!important;max-width:calc(100vw - 24px)}
  .vc_custom_1533738840052 .vc_inner>.vc_col-sm-8{width:auto!important;flex:1 1 auto;min-width:0}
  .vc_custom_1533738840052 .vc_inner>.vc_col-sm-4{width:auto!important;flex:0 0 auto}
  .vc_custom_1533738840052 .vc_column-inner{padding:0!important}
  .vc_custom_1533738840052 .sc_layouts_logo{display:none!important}
  .prs-hbtns{display:flex;gap:8px;align-items:center}
  .prs-hbtns a{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 12px;white-space:nowrap;
    font:600 14px/1 "Montserrat",sans-serif;color:#fff!important;text-decoration:none!important}
  .prs-hbtns__call{background:#d75f3e}
  .prs-hbtns__book{background:#303140}
  .prs-hbtns__short{display:none}
  /* The homepage's big phone/schedule bars duplicate the header buttons */
  .prs-mobile-topbar{display:none!important}

  /* Form fields at 16px so iOS doesn't zoom in on focus */
  input[type=text],input[type=email],input[type=tel],input[type=search],input[type=url],input[type=number],textarea,select{font-size:16px!important}
  /* Consent checkbox: a 44px-tall tap area */
  .wpcf7-acceptance .wpcf7-list-item label{display:inline-flex;align-items:center;min-height:44px}

  /* Homepage service cards: compact rows (icon, title + one line, chevron) */
  .sc_services_featured_top .trx_addons_columns_wrap{margin-right:0!important}
  .sc_services_featured_top .trx_addons_columns_wrap>[class*="trx_addons_column-"]{padding:0 0 10px!important;width:100%!important;height:auto!important}
  .sc_services_featured_top .sc_services_item{margin:0!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important}
  .sc_services_featured_top .sc_services_item_header{display:grid;grid-template-columns:56px 1fr 16px;grid-template-rows:auto auto;
    column-gap:14px;align-items:center;text-align:left;padding:10px 14px!important;background:rgba(255,255,255,.08);position:relative;
    min-height:0!important;height:auto!important}
  .sc_services_featured_top .sc_services_item_header>a:first-child{grid-row:1/3;grid-column:1;display:block;margin:0!important}
  .sc_services_featured_top .sc_services_item_icon{width:56px!important;height:56px!important;line-height:56px!important;font-size:26px!important;margin:0!important}
  .sc_services_featured_top .sc_services_item_icon:before{line-height:56px!important;font-size:26px!important}
  .sc_services_featured_top .sc_services_item_title{grid-column:2;grid-row:1/3;margin:0!important;text-align:left;font-size:16px!important;line-height:1.3;min-height:0!important;height:auto!important;align-self:center}
  .sc_services_featured_top .sc_services_item_header:after{content:"\203A";grid-column:3;grid-row:1/3;color:#fff;font-size:26px;line-height:1;opacity:.8}
  .sc_services_featured_top .sc_services_item_title a:after{content:"";position:absolute;inset:0}

  /* Footer menu links: 44px tap targets */
  .footer_wrap .widget_nav_menu ul.menu li a,footer .widget_nav_menu ul.menu li a{display:inline-block;padding:12px 0;min-height:44px;box-sizing:border-box}
}

@media (max-width:359px){.prs-hbtns__num{display:none}.prs-hbtns__short{display:inline}}

/* ---------- Homepage section colours (design pass) ---------- */
/* Testimonials: one brand-orange band across the full width (was orange | off-white).
   Tablet/desktop only: on phones the off-white quote separates it from the orange form below. */
@media (min-width:768px){
.vc_custom_1508321538590,.vc_custom_1541852904083,.vc_custom_1508321538590 .sc_testimonials,.vc_custom_1541852904083 .sc_testimonials{background-color:#d75f3e!important}
.vc_custom_1508321538590 .sc_testimonials_item_content,.vc_custom_1541852904083 .sc_testimonials_item_content,.vc_custom_1508321538590 .sc_testimonials_item_content p,.vc_custom_1541852904083 .sc_testimonials_item_content p{color:#fff!important}
.vc_custom_1508321538590 .sc_testimonials_item_content:before,.vc_custom_1541852904083 .sc_testimonials_item_content:before{color:rgba(255,255,255,.18)!important}
.vc_custom_1508321538590 .sc_testimonials_item_author_title,.vc_custom_1541852904083 .sc_testimonials_item_author_title,.vc_custom_1508321538590 h1,.vc_custom_1541852904083 h1,.vc_custom_1508321538590 h2,.vc_custom_1541852904083 h2,.vc_custom_1508321538590 h3,.vc_custom_1541852904083 h3,.vc_custom_1508321538590 h4,.vc_custom_1541852904083 h4,.vc_custom_1508321538590 h5,.vc_custom_1541852904083 h5,.vc_custom_1508321538590 h6,.vc_custom_1541852904083 h6{color:#fff!important}
.vc_custom_1508321538590 .sc_testimonials_item_author_subtitle,.vc_custom_1541852904083 .sc_testimonials_item_author_subtitle{color:rgba(255,255,255,.8)!important}
.vc_custom_1508321538590 .swiper-pagination-bullet,.vc_custom_1541852904083 .swiper-pagination-bullet{background:rgba(255,255,255,.5)!important;border-color:#fff!important}
.vc_custom_1508321538590 .swiper-pagination-bullet-active,.vc_custom_1541852904083 .swiper-pagination-bullet-active{background:#fff!important}
}
/* Emergency banner (all three layout copies): charcoal so it doesn't merge with the orange form band;
   use the full box width (heading on one line) and indent the text to line up with the text in the
   form fields below (form column inset 15px + input padding ~26px). */
.vc_custom_1643989013300,.vc_custom_1643994882801,.vc_custom_1643994889585{background-color:#303140!important}
.vc_custom_1643989013300>.wpb_column:first-child,.vc_custom_1643994882801>.wpb_column:first-child,.vc_custom_1643994889585>.wpb_column:first-child,.vc_custom_1643989013300>.wpb_column:last-child,.vc_custom_1643994882801>.wpb_column:last-child,.vc_custom_1643994889585>.wpb_column:last-child{display:none!important}
.vc_custom_1643989013300>.wpb_column:nth-child(2),.vc_custom_1643994882801>.wpb_column:nth-child(2),.vc_custom_1643994889585>.wpb_column:nth-child(2){width:auto!important;flex:1 1 auto;max-width:none!important;padding-left:41px!important;padding-right:24px!important}
.vc_custom_1643989013300 h3,.vc_custom_1643994882801 h3,.vc_custom_1643994889585 h3{white-space:nowrap}
@media (max-width:1023px){.vc_custom_1643989013300 h3,.vc_custom_1643994882801 h3,.vc_custom_1643994889585 h3{white-space:normal}}
/* Gold text on the orange bands: white instead (better contrast) */
.prs-on-orange{color:#fff!important}
div[id^="wpcf7-f962-"] .wpcf7-list-item-label a{color:#fff!important;text-decoration:underline}
/* Yellow "More Testimonials" button: dark text */
a.sc_button[href="/testimonials/"],a.sc_button[href="/testimonials/"] *{color:#303140!important}
/* "Let's Start Today!": a real button instead of pale-yellow text */
a.sc_button.sc_button_simple.color_style_link3[href="/contact-us/"]{display:inline-block;background-color:#d75f3e!important;color:#fff!important;
  padding:1em 1.9em!important;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .2s}
a.sc_button.sc_button_simple.color_style_link3[href="/contact-us/"]:hover{background-color:#303140!important;color:#fff!important}
a.sc_button.sc_button_simple.color_style_link3[href="/contact-us/"] *{color:#fff!important}
a.sc_button.sc_button_simple.color_style_link3[href="/contact-us/"]:before,a.sc_button.sc_button_simple.color_style_link3[href="/contact-us/"]:after{display:none!important}
