/*
Theme Name: BuzyTeam New
Description: New BuzyTeam website design. Page templates: tpl_*.php. Design CSS/JS: assets/.
Version: 1.0.0
Text Domain: buzyteam-new
*/

/* Theme-only additions on top of assets/css/style.css */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

/* Contact Form 7 inside the popups (.tr-*) */
.tr-form-wrap .wpcf7 form { margin: 0; }
.tr-form-wrap .wpcf7-form-control-wrap { display: block; }
/* Contact Form 7 makes its wrapper position:relative, which painted over the field icons */
.tr-form-wrap .tr-input > .bi { z-index: 2; }
/* Centre the icon on the 44px field, not on the whole box, so it stays put when an error line appears below */
.tr-form-wrap .tr-input > .bi,
.ct-form-wrap .tr-input > .bi { top: 22px; line-height: 1; }
.tr-form-wrap .wpcf7-not-valid-tip { margin-top: 5px; font-size: 12px; color: #dc2626; }
.tr-form-wrap .wpcf7-not-valid { border-color: #dc2626 !important; }
.tr-form-wrap .wpcf7-response-output { grid-column: 1 / -1; margin: 14px 0 0 !important; padding: 10px 14px !important; border-radius: 10px; font-size: 13px; }
.tr-form-wrap .wpcf7-spinner { display: none; }
.tr-form-wrap form.submitting .tr-submit { opacity: .7; pointer-events: none; }
.tr-form-wrap .tr-submit { width: 100%; cursor: pointer; }
.tr-form-wrap .tr-textarea textarea { width: 100%; padding: 12px 14px; border: 1px solid #e3e1ee; border-radius: 10px; font-size: 14px; color: var(--secondary-color); outline: none; resize: vertical; }
.tr-form-wrap .tr-textarea textarea:focus { border-color: var(--primary-color); box-shadow: 0 0 0 3px #4b26e71f; }
.tr-form-wrap .tr-checks .wpcf7-list-item { display: inline-block; margin: 0 14px 6px 0; }
.tr-form-wrap .tr-checks label,
.tr-form-wrap .tr-terms label { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; }
.tr-form-wrap .tr-checks input,
.tr-form-wrap .tr-terms input { width: 16px; height: 16px; accent-color: var(--primary-color); }
.tr-form-wrap .tr-terms .wpcf7-list-item { margin: 0; }

/* Contact Form 7 inside the contact card (.ct-*), same as the popups */
.ct-form-wrap .wpcf7 form { margin: 0; }
.ct-form-wrap .wpcf7-form-control-wrap { display: block; }
/* Contact Form 7 makes its wrapper position:relative, which painted over the field icons */
.ct-form-wrap .tr-input > .bi { z-index: 2; }
.ct-form-wrap .wpcf7-not-valid-tip { margin-top: 5px; font-size: 12px; color: #dc2626; }
.ct-form-wrap .wpcf7-not-valid { border-color: #dc2626 !important; }
.ct-form-wrap .wpcf7-response-output { grid-column: 1 / -1; margin: 14px 0 0 !important; padding: 10px 14px !important; border-radius: 10px; font-size: 13px; }
.ct-form-wrap .wpcf7-spinner { display: none; }
.ct-form-wrap form.submitting .tr-submit { opacity: .7; pointer-events: none; }
.ct-form-wrap .tr-submit { width: 100%; cursor: pointer; }
.ct-form-wrap .tr-textarea textarea { width: 100%; padding: 12px 14px; border: 1px solid #e3e1ee; border-radius: 10px; font-size: 14px; color: var(--secondary-color); outline: none; resize: vertical; }
.ct-form-wrap .tr-textarea textarea:focus { border-color: var(--primary-color); box-shadow: 0 0 0 3px #4b26e71f; }
.ct-form-wrap .tr-checks .wpcf7-list-item { display: inline-block; margin: 0 14px 6px 0; }
.ct-form-wrap .tr-checks label,
.ct-form-wrap .tr-terms label { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; }
.ct-form-wrap .tr-checks input,
.ct-form-wrap .tr-terms input { width: 16px; height: 16px; accent-color: var(--primary-color); }
.ct-form-wrap .tr-terms .wpcf7-list-item { margin: 0; }

/* Keep the "back to top" button clear of the Crisp chat bubble (bottom-right corner) */
.back-to-top {
	right: 24px;
	bottom: 96px;
}
@media (max-width: 575.98px) {
	.back-to-top {
		right: 16px;
		bottom: 84px;
	}
}

/* Blog search box and category lists */
.bt-search { margin-bottom: 18px; min-width: 260px; }
.bd-toc-nav a.is-active { font-weight: 600; }
.bl-row-cat a, .bl-slide-cat a { color: inherit; text-decoration: none; }
.bl-row-cat a:hover, .bl-slide-cat a:hover { text-decoration: underline; }
.bd-toc .bd-toc-nav + .bd-toc-label { margin-top: 24px; }

/* "Add as a preferred source on Google" button (project colours) */
.bt-toolbar-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.bt-toolbar-tools .bt-search { margin-bottom: 0; }
.preferred-source-btn { display: flex; align-items: center; gap: 14px; padding: 9px 18px; background: var(--white-color, #fff); border: 1px solid var(--pale-lavender); border-radius: 14px; box-shadow: 0 2px 10px #4b26e70f; color: var(--secondary-color); text-align: left; cursor: pointer; box-sizing: border-box; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.preferred-source-btn:hover { border-color: var(--primary-color); box-shadow: 0 8px 20px #4b26e71f; transform: translateY(-1px); }
.preferred-source-btn:focus-visible { outline: 2px solid var(--primary-color); outline-offset: 3px; }
.google-g { font-family: Arial, sans-serif; font-size: 32px; font-weight: 700; line-height: 1; background: conic-gradient(#4285f4 0deg 90deg, #34a853 90deg 180deg, #fbbc05 180deg 270deg, #ea4335 270deg 360deg); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.preferred-text { font-size: 14px; line-height: 1.3; font-weight: 500; color: var(--secondary-color); }
.preferred-text strong { color: var(--primary-color); font-weight: 700; }
.col-lg-4 > .preferred-source-btn { width: 100%; margin-bottom: 18px; }
/* blog sidebar: a normal card (no inner scrollbar) */
.bd-toc.bt-aside { position: static; max-height: none; overflow: visible; }

/* Blog list toolbar: the Google button and the search box share one height, radius, border and shadow */
.bt-toolbar-tools { align-items: stretch; }
.bt-toolbar-tools .preferred-source-btn,
.bt-toolbar-tools .bt-search .tr-input input { height: 52px; border: 1px solid var(--pale-lavender); border-radius: 14px; box-shadow: 0 2px 10px #4b26e70f; }
.bt-toolbar-tools .preferred-source-btn { padding-top: 0; padding-bottom: 0; }
.bt-toolbar-tools .bt-search { display: flex; align-items: center; }
.bt-toolbar-tools .bt-search .tr-input { width: 100%; }
.bt-toolbar-tools .bt-search .tr-input input:focus { border-color: var(--primary-color); }
.bt-toolbar-tools .preferred-source-btn,
.bt-toolbar-tools .bt-search { width: 290px; min-width: 0; box-sizing: border-box; }
@media (max-width: 640px) {
	.bt-toolbar-tools .preferred-source-btn,
	.bt-toolbar-tools .bt-search { width: 100%; }
}

/* Country & Phone plugin (flag + dial code selector) inside the form fields */
.tr-phone-intl .intl-tel-input { display: block; width: 100%; }
.tr-phone-intl .intl-tel-input input.wpcf7-phonetext { padding-right: 14px; }
.tr-phone-intl .intl-tel-input .selected-flag { border-radius: 10px 0 0 10px; }
.tr-phone-intl .intl-tel-input .country-list { z-index: 30; max-width: 320px; }

/* Pricing: the plan's heading from the CRM ("Starter plan includes:", "Everything in Starter, plus") above its features */
.pq-features-head { margin: 0; padding: 26px 32px 0; font-size: 13px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--primary-color); }
.pq-features-head + .pq-features { padding-top: 16px; }
@media (max-width: 767.98px) {
	.pq-features-head { padding: 20px 22px 0; }
	.pq-features-head + .pq-features { padding-top: 14px; }
}

/* Pricing: plan price per user / month from the CRM (same as the buzyteam-new-website copy) */
.pq-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-top: 16px; }
.pq-price-amount { font-size: 34px; font-weight: 800; line-height: 1; color: var(--white-color); }
.pq-price-unit { font-size: 14px; color: rgba(255, 255, 255, .78); }
.pq-price-unit em { font-style: normal; opacity: .8; }
.pq-price-meta { width: 100%; font-size: 13px; color: rgba(255, 255, 255, .72); }
.pq-price-meta strong { color: var(--white-color); }
