/*
Theme Name: WP Business Solutions Theme
Theme URI: https://example.com/wp-business-solutions-theme
Author: Frederick J. Grothe
Author URI: https://fjgsuccesssolutions.ca
Description: Modular business solutions WordPress theme for consulting, automation, software/platform businesses, and professional service sites.
Version: 2.6.5
Requires at least: 6.2
Tested up to: 6.9
Requires PHP: 8.0
Text Domain: wp-business-solutions-theme
*/

/* --------------------------------------------------------------
   Base Reset + Core Theme Foundation
-------------------------------------------------------------- */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-width: 320px;
    background-color: var(--fjg-site-bg-color, #f8f9f7);
    background-image: var(--fjg-site-bg-image, none);
    background-repeat: var(--fjg-site-bg-repeat, no-repeat);
    background-size: var(--fjg-site-bg-size, cover);
    background-attachment: var(--fjg-site-bg-attach, scroll);
    color: var(--fjg-color-text, #1c1c1c);
    font-family: var(--fjg-font-body, Arial, sans-serif);
    font-size: 16px;
    line-height: 1.65;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

figure {
    margin: 0 0 1.5rem;
}

a {
    color: var(--fjg-color-primary, #1f3d3b);
    text-decoration: none;
    transition: color 0.22s ease, opacity 0.22s ease;
}

a:hover,
a:focus {
    color: var(--fjg-color-secondary, #2f6f7e);
}

button,
input,
select,
textarea {
    font: inherit;
}

button {
    cursor: pointer;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 0.8em;
    color: var(--fjg-color-text, #1c1c1c);
    font-family: var(--fjg-font-heading, Georgia, serif);
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

p,
ul,
ol,
blockquote {
    margin: 0 0 1.2rem;
}

ul,
ol {
    padding-left: 1.25rem;
}

.site {
    position: relative;
    min-height: 100vh;
}

.fjg-site-main,
.site-main,
main.site-main {
    position: relative;
    z-index: 1;
}

.fjg-container,
.container {
    width: min(100%, calc(var(--fjg-content-max, 1240px) + (var(--fjg-canvas-pad, 24px) * 2)));
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--fjg-canvas-pad, 24px);
    padding-right: var(--fjg-canvas-pad, 24px);
}

.alignwide {
    width: min(100%, calc(var(--fjg-content-max, 1240px) + 180px));
    margin-left: auto;
    margin-right: auto;
}

.alignfull {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.wp-block-group,
.wp-block-cover,
.wp-block-columns,
.fjg-surface-block {
    position: relative;
}

body.fjg-overlay-on .wp-block-group:not(.fjg-no-overlay),
body.fjg-overlay-on .kt-row-layout-inner:not(.fjg-no-overlay),
body.fjg-overlay-on .fjg-surface-block:not(.fjg-no-overlay) {
    border-radius: var(--fjg-radius-lg, 26px);
}

.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    border: 0;
    white-space: nowrap;
}

.site-main article,
.site-main .post,
.site-main .page {
    margin-bottom: 2rem;
}

.entry-title a {
    color: inherit;
}

.entry-content > *:last-child,
.entry-summary > *:last-child {
    margin-bottom: 0;
}

/* ==========================================================
   GLOBAL BREADCRUMB / PAGE-TRAIL / TITLE-BAR SUPPRESSION
   User preference: no breadcrumbs on any page
========================================================== */
.breadcrumb,
.breadcrumbs,
.breadcrumb-trail,
.yoast-breadcrumb,
.rank-math-breadcrumb,
nav[aria-label="breadcrumb"],
.fjg-breadcrumbs,
.page-breadcrumbs,
.entry-breadcrumbs,
.page-title-breadcrumbs,
.page-header-breadcrumbs,
.kb-breadcrumbs,
.kadence-breadcrumbs,
.kadence-breadcrumb,
.woocommerce-breadcrumb,
.bb-breadcrumbs,
.bcn_display,
.breadcrumb-navxt,
#breadcrumbs,
#breadcrumb,
.page-hero-titlebar,
.page-title-bar,
.page-title-wrap.has-breadcrumbs,
.archive-title-wrap.has-breadcrumbs {
    display: none !important;
}
