:root {
    --hgg-bg: #ffffff;
    --hgg-site-bg: #ffffff;
    --hgg-surface: #fff;
    --hgg-text: #172033;
    --hgg-muted: #5d6781;
    --hgg-border: #d8dfef;
    --hgg-primary: #007721;
    --hgg-primary-dark: #045F12;
    --hgg-shadow: 0 16px 40px rgba(17, 34, 68, .10);
    --hgg-radius: 18px;
    --hgg-radius-sm: 12px;
    --hgg-container: 1240px;
}

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

body {
    margin: 0;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background: var(--hgg-site-bg, var(--hgg-bg, #ffffff));
    color: var(--hgg-text);
    font-size: var(--hgg-body-font-size, 16px);
    line-height: 1.65;
}

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

a {
    color: var(--hgg-primary);
    text-decoration: none;
}

a:hover,
a:focus {
    color: var(--hgg-primary-dark);
}

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

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

.screen-reader-text:focus {
    clip: auto !important;
    clip-path: none;
    width: auto;
    height: auto;
    left: 1rem;
    top: 1rem;
    z-index: 100000;
    background: #fff;
    color: var(--hgg-text);
    padding: .75rem 1rem;
    border-radius: 999px;
    box-shadow: var(--hgg-shadow);
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.wp-block-post-content h1,
.wp-block-post-content h2,
.wp-block-post-content h3,
.wp-block-post-content h4,
.wp-block-post-content h5,
.wp-block-post-content h6 {
    line-height: var(--hgg-heading-line-height, 1.15);
    margin: 0 0 var(--hgg-heading-spacing-bottom, 24px);
    color: var(--hgg-heading-color, var(--hgg-text));
}

p, ul, ol {
    margin: 0 0 1rem;
}

.huuguu-skip-link {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: 100000;
    background: #111;
    color: #fff;
    text-decoration: none;
    padding: 0;
}

.huuguu-skip-link:focus,
.huuguu-skip-link:focus-visible {
    left: 16px;
    top: 16px;
    width: auto;
    height: auto;
    overflow: visible;
    padding: .875rem 1rem;
    border-radius: .75rem;
    box-shadow: var(--hgg-shadow);
    outline: 2px solid #fff;
    outline-offset: 2px;
    color: #fff;
}

.site-main {
    scroll-margin-top: 96px;
}

.page-template-elementor_canvas .site-main {
    padding-top: 0;
}

.huuguu-global-breadcrumb-bar + .site-main,
.huuguu-global-breadcrumb-bar + main,
.huuguu-global-breadcrumb-bar + #main-content {
    padding-top: 0;
}

.woocommerce .site-main,
.woocommerce-page .site-main {
    padding-top: 0;
}

.woocommerce .huuguu-global-breadcrumb-bar + .site-main,
.woocommerce-page .huuguu-global-breadcrumb-bar + .site-main,
.single-product .huuguu-global-breadcrumb-bar + .site-main {
    padding-top: 0;
}