/*
Theme Name: The IT Guys — Blocksy Design
Theme URI: https://theitguysfix.com/
Description: Accessible, performance-conscious Blocksy child theme for The IT Guys.
Author: The IT Guys
Template: blocksy
Version: 1.4.6
Text Domain: the-it-guys-blocksy
License: GNU General Public License v2 or later
*/

:root {
  --tig-ink: #10243f;
  --tig-muted: #566b80;
  --tig-navy: #082f57;
  --tig-blue: #1269c7;
  --tig-blue-dark: #0a4f99;
  --tig-sky: #eaf5ff;
  --tig-green: #08775a;
  --tig-mint: #eaf8f3;
  --tig-amber: #995300;
  --tig-sun: #fff4d5;
  --tig-canvas: #f4f7fb;
  --tig-surface: #ffffff;
  --tig-border: #d8e3ee;
  --tig-radius-sm: 12px;
  --tig-radius-md: 20px;
  --tig-radius-lg: 28px;
  --tig-shadow: 0 14px 38px rgba(22, 49, 82, 0.10);
}

body.tig-blocksy {
  background: var(--tig-canvas);
  color: var(--tig-ink);
}

body.tig-blocksy a {
  text-underline-offset: 0.14em;
}

body.tig-blocksy :focus-visible {
  outline: 3px solid #6db5ff;
  outline-offset: 3px;
}

/* Header and navigation */
body.tig-blocksy #header [data-row*="middle"] {
  background: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid var(--tig-border);
  box-shadow: 0 7px 24px rgba(18, 48, 80, 0.08);
}

body.tig-blocksy #header [data-id="logo"] .site-title,
body.tig-blocksy #header [data-id="logo"] .site-description {
  color: var(--tig-ink);
}

body.tig-blocksy .header-menu-1 > ul > li > a,
body.tig-blocksy .mobile-menu > ul > li > a {
  border-radius: 999px;
  font-weight: 750;
}

body.tig-blocksy .header-menu-1 > ul > li > a:hover,
body.tig-blocksy .header-menu-1 > ul > li.current-menu-item > a,
body.tig-blocksy .header-menu-1 > ul > li.current-menu-ancestor > a {
  background: var(--tig-sky);
  color: var(--tig-blue-dark);
}

body.tig-blocksy .header-menu-1 .sub-menu {
  border: 1px solid var(--tig-border);
  border-radius: var(--tig-radius-sm);
  box-shadow: var(--tig-shadow);
  overflow: hidden;
}

body.tig-blocksy .tig-nav-shop > a {
  background: var(--tig-navy) !important;
  color: #fff !important;
  padding-inline: 18px !important;
}

body.tig-blocksy .tig-nav-shop > a:hover,
body.tig-blocksy .tig-nav-shop > a:focus-visible {
  background: var(--tig-blue) !important;
}

/* Homepage discovery sequence rendered before the posts index. */
body.tig-blocksy .tig-home-before-content {
  width: min(100% - 32px, 1180px);
  margin: clamp(24px, 4vw, 52px) auto 28px;
}

body.tig-blocksy .tig-home-before-content .ct-widget {
  margin: 0;
}

body.tig-blocksy.home #tig-home-search-and-reviews {
  display: block;
  max-width: none;
  margin: 0;
}

body.tig-blocksy.home #tig-home-article-search {
  margin: 0 0 16px;
  padding: clamp(25px, 4vw, 42px) !important;
  border: 1px solid #bdd8f1 !important;
  border-radius: var(--tig-radius-lg) !important;
  background: var(--tig-navy) !important;
  box-shadow: var(--tig-shadow) !important;
}

body.tig-blocksy.home #tig-home-article-search h2 {
  max-width: 760px;
  margin-bottom: 9px;
  color: #fff;
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -0.025em;
}

body.tig-blocksy.home #tig-home-article-search p {
  max-width: 760px;
  color: #e4f1ff;
  font-size: 17px;
}

body.tig-blocksy.home .tig-home-search-form {
  max-width: 820px;
  gap: 10px;
}

body.tig-blocksy.home .tig-home-search-form input[type="search"] {
  min-height: 52px;
  border: 1px solid #b9cde2;
  border-radius: 999px;
  color: var(--tig-ink);
}

body.tig-blocksy.home .tig-home-search-form button {
  min-height: 52px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: var(--tig-blue-dark);
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.14);
}

body.tig-blocksy.home .tig-home-search-form button:hover,
body.tig-blocksy.home .tig-home-search-form button:focus-visible {
  background: var(--tig-sun);
  color: var(--tig-ink);
}

body.tig-blocksy.home #tig-home-trustindex {
  margin: 0;
  padding: 18px;
  border: 1px solid #bfe7d8;
  border-radius: var(--tig-radius-md);
  background: var(--tig-mint);
  box-shadow: 0 9px 26px rgba(17, 82, 61, 0.08);
}

body.tig-blocksy.home #tig-home-ask-the-it-guys {
  margin: 16px 0 0;
  padding: clamp(24px, 4vw, 34px) !important;
  border: 1px solid #efd99f !important;
  border-radius: var(--tig-radius-md) !important;
  background: var(--tig-sun) !important;
  box-shadow: 0 9px 26px rgba(90, 61, 12, 0.08) !important;
}

body.tig-blocksy.home #tig-home-ask-the-it-guys h2 {
  color: var(--tig-ink);
  font-size: clamp(27px, 3vw, 36px);
  letter-spacing: -0.025em;
}

body.tig-blocksy.home #tig-home-ask-the-it-guys p {
  color: #685527;
}

body.tig-blocksy.home #tig-home-ask-the-it-guys .tig-home-ask-button {
  min-height: 50px;
  border-radius: 999px;
  background: var(--tig-navy);
  color: #fff;
}

body.tig-blocksy.home #tig-home-ask-the-it-guys .tig-home-ask-button:hover,
body.tig-blocksy.home #tig-home-ask-the-it-guys .tig-home-ask-button:focus-visible {
  background: var(--tig-blue);
  color: #fff;
}

/* Archive and post cards */
body.tig-blocksy .site-main .entries {
  gap: clamp(18px, 3vw, 30px);
}

body.tig-blocksy article.entry-card {
  border: 1px solid var(--tig-border);
  border-radius: var(--tig-radius-md);
  background: var(--tig-surface);
  box-shadow: 0 10px 28px rgba(18, 48, 80, 0.07);
  overflow: hidden;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

body.tig-blocksy article.entry-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--tig-shadow);
}

body.tig-blocksy article.entry-card .entry-title {
  color: var(--tig-ink);
  letter-spacing: -0.025em;
}

body.tig-blocksy article.entry-card .entry-excerpt {
  color: var(--tig-muted);
}

body.tig-blocksy article.entry-card .entry-button,
body.tig-blocksy .wp-block-button__link,
body.tig-blocksy .button,
body.tig-blocksy button[type="submit"] {
  border-radius: 999px;
  font-weight: 800;
}

/* Single articles, pages, and reusable editorial content. */
body.tig-blocksy .entry-content,
body.tig-blocksy .ct-container-full > article {
  overflow-wrap: anywhere;
}

/* Let Blocksy/Gutenberg alignment rules control normal, wide, and full-width blocks. */

body.tig-blocksy .entry-content .wp-block-table {
  overflow-x: auto;
  border-radius: var(--tig-radius-sm);
}

body.tig-blocksy .entry-content img {
  border-radius: var(--tig-radius-sm);
}

body.tig-blocksy .entry-content h2,
body.tig-blocksy .entry-content h3 {
  color: var(--tig-ink);
  text-wrap: pretty;
}

/* Widgets and sidebars */
body.tig-blocksy .ct-sidebar .ct-widget,
body.tig-blocksy [data-footer*="type-1"] .ct-widget {
  padding: 20px;
  border: 1px solid var(--tig-border);
  border-radius: var(--tig-radius-md);
  background: #fff;
  box-shadow: 0 8px 22px rgba(18, 48, 80, 0.06);
}

body.tig-blocksy .ct-widget-title {
  color: var(--tig-ink);
  letter-spacing: -0.015em;
}

body.tig-blocksy .tig-floating-site-index {
  border-radius: var(--tig-radius-sm);
}

/* WooCommerce */
body.tig-blocksy.woocommerce ul.products li.product,
body.tig-blocksy .wc-block-grid__product,
body.tig-blocksy .wp-block-woocommerce-cart,
body.tig-blocksy .wp-block-woocommerce-checkout {
  border-radius: var(--tig-radius-md);
}

body.tig-blocksy.woocommerce ul.products li.product {
  border: 1px solid var(--tig-border);
  background: #fff;
  box-shadow: 0 8px 22px rgba(18, 48, 80, 0.06);
  overflow: hidden;
}

body.tig-blocksy .woocommerce-message,
body.tig-blocksy .woocommerce-info,
body.tig-blocksy .woocommerce-error {
  border-radius: var(--tig-radius-sm);
}

/* Mobile containment */
@media (max-width: 689px) {
  body.tig-blocksy .tig-home-before-content {
    width: min(100% - 20px, 1180px);
    margin-top: 18px;
  }

  body.tig-blocksy.home #tig-home-article-search,
  body.tig-blocksy.home #tig-home-ask-the-it-guys {
    padding: 22px 18px !important;
    border-radius: var(--tig-radius-md) !important;
  }

  body.tig-blocksy.home .tig-home-search-form {
    display: grid;
  }

  body.tig-blocksy.home .tig-home-search-form button,
  body.tig-blocksy.home #tig-home-ask-the-it-guys .tig-home-ask-button {
    width: 100%;
    min-height: 48px;
  }

  body.tig-blocksy .entry-content table {
    min-width: 620px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.tig-blocksy *,
  body.tig-blocksy *::before,
  body.tig-blocksy *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}


/* Child-controlled utility and pre-footer surfaces. */
body.tig-blocksy .tig-global-utilities,
body.tig-blocksy .tig-prefooter {
  width: min(100% - 32px, 1180px);
  margin-inline: auto;
}
body.tig-blocksy .tig-global-utilities .ct-widget,
body.tig-blocksy .tig-prefooter .ct-widget { margin: 0; }
body.tig-blocksy .tig-prefooter {
  margin-top: 30px;
  margin-bottom: 24px;
  padding: 20px;
  border: 1px solid var(--tig-border);
  border-radius: var(--tig-radius-md);
  background: #fff;
  box-shadow: 0 8px 22px rgba(18,48,80,.06);
}
@media (max-width: 689px) {
  body.tig-blocksy .tig-global-utilities,
  body.tig-blocksy .tig-prefooter { width: min(100% - 20px, 1180px); }
}

body.tig-blocksy .tig-latest-blog-heading {
  width: min(100% - 32px, 1180px);
  margin: 0 auto 22px;
  padding: 4px 2px;
}
body.tig-blocksy .tig-latest-blog-heading .tig-section-kicker {
  display: inline-flex;
  margin-bottom: 6px;
  color: var(--tig-green);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.tig-blocksy .tig-latest-blog-heading h2 {
  margin: 0 0 6px;
  color: var(--tig-ink);
  font-size: clamp(30px, 4vw, 46px);
  letter-spacing: -.035em;
}
body.tig-blocksy .tig-latest-blog-heading p {
  max-width: 760px;
  margin: 0;
  color: var(--tig-muted);
  font-size: 17px;
}
@media (max-width: 689px) {
  body.tig-blocksy .tig-latest-blog-heading { width: min(100% - 20px, 1180px); }
}

/* Post-activation accessibility and visual QA corrections. */
.header-menu-1 > ul > li > a {
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 14px !important;
}
.header-menu-1 > ul > li.tig-nav-shop > a {
	padding-inline: 18px !important;
}
@media (max-width: 999px) {
	.header-menu-1 > ul > li > a {
		height: auto !important;
		min-height: 44px !important;
	}
	.ct-header-trigger,
	#offcanvas .ct-toggle-close {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		justify-content: center !important;
	}
}
#fancybox_ns-close {
	min-width: 44px !important;
	min-height: 44px !important;
}
.ti-widget .ti-date,
.ti-widget .ti-with-tooltip,
.ti-widget .ti-read-more-active {
	color: #425466 !important;
}
.ctf-header-name,
.ctf-header-name a,
.ctf-header-bio,
.ctf-header-follow,
.ctf-tweet-text a {
	color: #0a4f99 !important;
}
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.pushbutton-wide {
	background: #082f57 !important;
	color: #ffffff !important;
	border-color: #082f57 !important;
}
.woocommerce .button:hover,
.woocommerce .button:focus-visible,
.pushbutton-wide:hover,
.pushbutton-wide:focus-visible {
	background: #1269c7 !important;
	color: #ffffff !important;
}
#youremail,
#yourname {
	background: #ffffff !important;
	color: #082f57 !important;
}
#youremail::placeholder,
#yourname::placeholder {
	color: #425466 !important;
	opacity: 1 !important;
}
.cnb-full {
	background: #082f57 !important;
}
.cnb-full .cnb-action {
	background: #082f57 !important;
}
.cnb-full .cnb-inside-item {
	color: #ffffff !important;
}
body.tig-blocksy .entry-content a:not(.wp-element-button),
body.tig-blocksy .ct-breadcrumbs a,
body.tig-blocksy .product_meta a,
body.tig-blocksy .product_meta a[rel="tag"] {
	color: #0a4f99 !important;
}
#submit,
.pushbutton-wide,
body.tig-blocksy #post-2302 button.pushbutton-wide {
	background: #082f57 !important;
	background-image: none !important;
	color: #ffffff !important;
	text-shadow: none !important;
}
.ctf-header-follow {
	background: #082f57 !important;
	color: #ffffff !important;
}
.ctf-header-follow a,
#ctf-more > span {
	color: #082f57 !important;
}
.ctf-header-follow a {
	color: #ffffff !important;
}

/* Site-owned blue action bubbles must keep pure-white, readable text. */
body.tig-blocksy .entry-content .tig-button,
body.tig-blocksy .entry-content .tig-button:link,
body.tig-blocksy .entry-content .tig-button:visited,
body.tig-blocksy .entry-content .tig-button:hover,
body.tig-blocksy .entry-content .tig-button:focus,
body.tig-blocksy .entry-content .tig-button:active {
  color: #ffffff !important;
  opacity: 1 !important;
}

body.tig-blocksy .entry-content .tig-button:focus-visible {
  outline: 3px solid #f7c948;
  outline-offset: 3px;
}

/* Restore pure-white copy when theme link/heading colors enter dark-blue article bubbles. */
body.tig-blocksy .entry-content .tig-quick :where(h1, h2, h3, h4, h5, h6, p, li, a, strong, em),
body.tig-blocksy .entry-content .tig-howto :where(h1, h2, h3, h4, h5, h6, p, li, a, strong, em),
body.tig-blocksy .entry-content .tig-cta :where(h1, h2, h3, h4, h5, h6, p, li, a, strong, em) {
  color: #ffffff !important;
  opacity: 1 !important;
}

body.tig-blocksy .entry-content :where(.tig-quick, .tig-howto, .tig-cta) a {
  text-decoration-color: rgba(255, 255, 255, 0.78);
  text-underline-offset: 0.16em;
}

body.tig-blocksy.single-post .entry-content .tig-cta a:not(.wp-element-button),
body.tig-blocksy.single-post .entry-content .tig-quick a:not(.wp-element-button),
body.tig-blocksy.single-post .entry-content .tig-howto a:not(.wp-element-button) {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* Legacy dark editorial panels need the same white-copy protection. */
body.tig-blocksy .entry-content .tig-free :where(h1, h2, h3, h4, h5, h6, p, li, a, strong, em),
body.tig-blocksy .entry-content .tig-action :where(h1, h2, h3, h4, h5, h6, p, li, a, strong, em) {
  color: #ffffff !important;
  opacity: 1 !important;
}

body.tig-blocksy .entry-content :where(.tig-free, .tig-action) a {
  text-decoration-color: rgba(255, 255, 255, 0.82);
  text-underline-offset: 0.16em;
}

body.tig-blocksy.single-post .entry-content .tig-free a:not(.wp-element-button),
body.tig-blocksy.single-post .entry-content .tig-action a:not(.wp-element-button) {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* Keep the warm accent while meeting AA with white text. */
body.tig-blocksy .entry-content .tig-badge,
body.tig-blocksy .entry-content .tig-protip .tig-button {
  background: #a63d00 !important;
  color: #ffffff !important;
  opacity: 1 !important;
}

body.tig-blocksy .entry-content .tig-sources a {
  text-decoration: underline !important;
  text-underline-offset: 0.16em;
}

body.tig-blocksy a[rel="tag"] {
  color: #0a4f99 !important;
  opacity: 1 !important;
}

/* Header call control placed beside Blocksy's search button. */
body.tig-blocksy .tig-header-call-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  margin-inline-start: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--tig-navy);
  color: #fff;
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(8, 47, 87, 0.18);
}
body.tig-blocksy .tig-header-call-button:hover,
body.tig-blocksy .tig-header-call-button:focus-visible {
  background: var(--tig-blue);
  color: #fff;
}
body.tig-blocksy .tig-call-short { display: none; }

/* Consistent share controls on every article card. */
body.tig-blocksy .tig-card-actions {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding-top: 2px;
}
body.tig-blocksy .tig-card-actions button,
body.tig-blocksy .tig-card-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 8px 14px;
  border: 1px solid #b8cce0;
  border-radius: 999px;
  background: #f7fbff;
  color: var(--tig-blue-dark) !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}
body.tig-blocksy .tig-card-actions button:hover,
body.tig-blocksy .tig-card-actions button:focus-visible,
body.tig-blocksy .tig-card-actions a:hover,
body.tig-blocksy .tig-card-actions a:focus-visible {
  border-color: var(--tig-blue);
  background: var(--tig-sky);
}

/* Article share, print, and PDF toolbar. */
body.tig-blocksy .tig-article-tools {
  margin-block: 0 clamp(28px, 4vw, 40px);
  padding: clamp(18px, 3vw, 24px);
  border: 1px solid #bcd5eb;
  border-radius: var(--tig-radius-md);
  background: linear-gradient(135deg, #f7fbff, #edf7ff);
  box-shadow: 0 8px 24px rgba(18, 48, 80, 0.07);
}
body.tig-blocksy .tig-article-tools-copy {
  display: grid;
  gap: 3px;
  margin-bottom: 14px;
}
body.tig-blocksy .tig-article-tools-copy strong {
  color: var(--tig-ink);
  font-size: 18px;
}
body.tig-blocksy .tig-article-tools-copy span {
  color: var(--tig-muted);
  font-size: 14px;
}
body.tig-blocksy .tig-article-tools-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.tig-blocksy .tig-article-tools-actions a,
body.tig-blocksy .tig-article-tools-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 9px 14px;
  border: 1px solid #b8cce0;
  border-radius: 999px;
  background: #fff;
  color: var(--tig-blue-dark) !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}
body.tig-blocksy .tig-article-tools-actions a:hover,
body.tig-blocksy .tig-article-tools-actions a:focus-visible,
body.tig-blocksy .tig-article-tools-actions button:hover,
body.tig-blocksy .tig-article-tools-actions button:focus-visible {
  border-color: var(--tig-blue);
  background: var(--tig-sky);
}
body.tig-blocksy .tig-tool-status {
  min-height: 1.3em;
  margin: 9px 0 0;
  color: var(--tig-green);
  font-size: 13px;
  font-weight: 700;
}

/* Tighten excessive legacy Gutenberg heading gaps while preserving hierarchy. */
body.tig-blocksy.single-post .entry-content > h2 {
  margin-block-start: clamp(32px, 4vw, 42px) !important;
  margin-block-end: 16px !important;
}
body.tig-blocksy.single-post .entry-content > h3 {
  margin-block-start: clamp(24px, 3vw, 32px) !important;
  margin-block-end: 12px !important;
}

@media (max-width: 1399px) {
  body.tig-blocksy .tig-header-call-button {
    width: 44px;
    min-width: 44px;
    padding-inline: 0;
  }
  body.tig-blocksy .tig-call-number { display: none; }
  body.tig-blocksy .tig-call-short { display: none; }
}

@media (min-width: 1100px) and (max-width: 1399px) {
  body.tig-blocksy .tig-header-call-button {
    width: auto;
    padding-inline: 12px;
  }
  body.tig-blocksy .tig-call-short { display: inline; }
}

@media (max-width: 689px) {
  body.tig-blocksy .tig-article-tools-actions > * {
    flex: 1 1 calc(50% - 8px);
    scroll-margin-block: 110px;
  }
  body.tig-blocksy .tig-card-actions {
    flex-wrap: wrap;
  }
}

/* Clean, economical article output for both printers and browser Save-as-PDF. */
@media print {
  @page { margin: 14mm; }
  body.tig-blocksy {
    background: #fff !important;
    color: #000 !important;
    font-size: 11pt;
  }
  body.tig-blocksy #header,
  body.tig-blocksy #footer,
  body.tig-blocksy .tig-article-tools,
  body.tig-blocksy .addtoany_share_save_container,
  body.tig-blocksy .tig-global-utilities,
  body.tig-blocksy .tig-prefooter,
  body.tig-blocksy .ct-comments-container,
  body.tig-blocksy .ct-related-posts,
  body.tig-blocksy .call-now-button,
  body.tig-blocksy .cnb-full,
  body.tig-blocksy #fancybox_ns-wrap,
  body.tig-blocksy #fancybox_ns-overlay,
  body.tig-blocksy .tig-floating-site-index,
  body.tig-blocksy .tig-index-tab,
  body.tig-blocksy .onesignal-bell-container,
  body.tig-blocksy .ct-share-box {
    display: none !important;
  }
  body.tig-blocksy main,
  body.tig-blocksy article,
  body.tig-blocksy .entry-content,
  body.tig-blocksy .ct-container,
  body.tig-blocksy .ct-container-full {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }
  body.tig-blocksy .entry-content > * {
    max-width: 100% !important;
  }
  body.tig-blocksy h1,
  body.tig-blocksy h2,
  body.tig-blocksy h3,
  body.tig-blocksy h4 {
    color: #000 !important;
    break-after: avoid-page;
    page-break-after: avoid;
  }
  body.tig-blocksy p,
  body.tig-blocksy li,
  body.tig-blocksy blockquote,
  body.tig-blocksy table,
  body.tig-blocksy figure,
  body.tig-blocksy img {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }
  body.tig-blocksy a {
    color: #000 !important;
    text-decoration: underline;
  }
  body.tig-blocksy img {
    max-width: 100% !important;
    height: auto !important;
  }
  body.tig-blocksy .wp-block-table {
    overflow: visible !important;
    font-size: 9pt;
  }
}
