/* ========================================
   Global Styles - WordPress Theme Variables
   Massive CSS custom properties for theme
   ======================================== */

/* Prevenir overflow horizontal global */
html,
body {
    overflow-x: hidden;
    max-width: 100%;
}

:root {
    --wp--preset--aspect-ratio--square: 1;
    --wp--preset--aspect-ratio--4-3: 4/3;
    --wp--preset--aspect-ratio--3-4: 3/4;
    --wp--preset--aspect-ratio--3-2: 3/2;
    --wp--preset--aspect-ratio--2-3: 2/3;
    --wp--preset--aspect-ratio--16-9: 16/9;
    --wp--preset--aspect-ratio--9-16: 9/16;
    --wp--preset--color--black: #000000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #ffffff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;
    --wp--preset--color--foreground: #000;
    --wp--preset--color--background: #fff;
    --wp--preset--color--primary: #3a57e8;
    --wp--preset--color--secondary: #d89313;
    --wp--preset--color--background-secondary: #f9faff;
    --wp--preset--color--body-text: #717171;
    --wp--preset--color--text-link: #000;
    --wp--preset--color--border: #f2f2f2;
    --wp--preset--color--tertiary: #c3d9e7;
    --wp--preset--color--input-field: #f1f1f1;
    --wp--preset--color--boulder: #777;
    --wp--preset--color--coffee: #7d6043;
    --wp--preset--color--cyan: #25d6a2;
    --wp--preset--color--dark-blue: #1b67cc;
    --wp--preset--color--sky-blue: #30b4da;
    --wp--preset--color--dark-green: #0fb36c;
    --wp--preset--color--lite-green: #6ba518;
    --wp--preset--color--purple: #c74a73;
    --wp--preset--color--dark-purple: #9261c6;
    --wp--preset--color--orange: #f78550;
    --wp--preset--color--lite-red: #f9556d;
    --wp--preset--color--hexadecimal: #27808c;
    --wp--preset--color--pink: #ff6b98;
    --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(
        135deg,
        rgb(6, 147, 227) 0%,
        rgb(155, 81, 224) 100%
    );
    --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(
        135deg,
        rgb(122, 220, 180) 0%,
        rgb(0, 208, 130) 100%
    );
    --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(
        135deg,
        rgb(252, 185, 0) 0%,
        rgb(255, 105, 0) 100%
    );
    --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(
        135deg,
        rgb(255, 105, 0) 0%,
        rgb(207, 46, 46) 100%
    );
    --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(
        135deg,
        rgb(238, 238, 238) 0%,
        rgb(169, 184, 195) 100%
    );
    --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(
        135deg,
        rgb(74, 234, 220) 0%,
        rgb(151, 120, 209) 20%,
        rgb(207, 42, 186) 40%,
        rgb(238, 44, 130) 60%,
        rgb(251, 105, 98) 80%,
        rgb(254, 248, 76) 100%
    );
    --wp--preset--gradient--blush-light-purple: linear-gradient(
        135deg,
        rgb(255, 206, 236) 0%,
        rgb(152, 150, 240) 100%
    );
    --wp--preset--gradient--blush-bordeaux: linear-gradient(
        135deg,
        rgb(254, 205, 165) 0%,
        rgb(254, 45, 45) 50%,
        rgb(107, 0, 62) 100%
    );
    --wp--preset--gradient--luminous-dusk: linear-gradient(
        135deg,
        rgb(255, 203, 112) 0%,
        rgb(199, 81, 192) 50%,
        rgb(65, 88, 208) 100%
    );
    --wp--preset--gradient--pale-ocean: linear-gradient(
        135deg,
        rgb(255, 245, 203) 0%,
        rgb(182, 227, 212) 50%,
        rgb(51, 167, 181) 100%
    );
    --wp--preset--gradient--electric-grass: linear-gradient(
        135deg,
        rgb(202, 248, 128) 0%,
        rgb(113, 206, 126) 100%
    );
    --wp--preset--gradient--midnight: linear-gradient(
        135deg,
        rgb(2, 3, 129) 0%,
        rgb(40, 116, 252) 100%
    );
    --wp--preset--gradient--vertical-secondary-to-tertiary: linear-gradient(
        to bottom,
        var(--wp--preset--color--secondary) 0%,
        var(--wp--preset--color--tertiary) 100%
    );
    --wp--preset--gradient--vertical-secondary-to-background: linear-gradient(
        to bottom,
        var(--wp--preset--color--secondary) 0%,
        var(--wp--preset--color--background) 100%
    );
    --wp--preset--gradient--vertical-background-to-secondary: linear-gradient(
        to bottom,
        var(--wp--preset--color--background) 0%,
        var(--wp--preset--color--secondary) 100%
    );
    --wp--preset--gradient--vertical-tertiary-to-background: linear-gradient(
        to bottom,
        var(--wp--preset--color--tertiary) 0%,
        var(--wp--preset--color--background) 100%
    );
    --wp--preset--gradient--diagonal-primary-to-foreground: linear-gradient(
        to bottom right,
        var(--wp--preset--color--primary) 0%,
        var(--wp--preset--color--foreground) 100%
    );
    --wp--preset--gradient--diagonal-secondary-to-background: linear-gradient(
        to bottom right,
        var(--wp--preset--color--secondary) 50%,
        var(--wp--preset--color--background) 50%
    );
    --wp--preset--gradient--diagonal-secondary-to-background-left: linear-gradient(
        to bottom left,
        var(--wp--preset--color--secondary) 50%,
        var(--wp--preset--color--background) 50%
    );
    --wp--preset--gradient--diagonal-secondary-to-background-right: linear-gradient(
        to top right,
        var(--wp--preset--color--secondary) 50%,
        var(--wp--preset--color--background) 50%
    );
    --wp--preset--gradient--diagonal-background-to-secondary: linear-gradient(
        to bottom right,
        var(--wp--preset--color--background) 50%,
        var(--wp--preset--color--secondary) 50%
    );
    --wp--preset--gradient--diagonal-tertiary-to-background: linear-gradient(
        to bottom right,
        var(--wp--preset--color--tertiary) 50%,
        var(--wp--preset--color--background) 50%
    );
    --wp--preset--gradient--diagonal-background-to-tertiary: linear-gradient(
        to bottom right,
        var(--wp--preset--color--background) 50%,
        var(--wp--preset--color--tertiary) 50%
    );
    --wp--preset--font-size--small: 15px;
    --wp--preset--font-size--medium: 18px;
    --wp--preset--font-size--large: clamp(22px, 2.5vw, 28px);
    --wp--preset--font-size--x-large: 42px;
    --wp--preset--font-size--tiny: 13px;
    --wp--preset--font-size--extra-small: 14px;
    --wp--preset--font-size--normal: 17px;
    --wp--preset--font-size--content-heading: clamp(20px, 1.2vw, 22px);
    --wp--preset--font-size--slider-title: clamp(25px, 3vw, 45px);
    --wp--preset--font-size--huge: clamp(36px, 4vw, 70px);
    --wp--preset--font-family--system:
        -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans,
        Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --wp--preset--font-family--poppins: "Poppins", sans-serif;
    --wp--preset--font-family--roboto: "Roboto", sans-serif;
    --wp--preset--spacing--20: 0.44rem;
    --wp--preset--spacing--30: 0.67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
    --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);
    --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--outlined:
        6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);
    --wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);
    --wp--custom--spacing--small: max(1.25rem, 5vw);
    --wp--custom--spacing--medium: clamp(
        2rem,
        8vw,
        calc(4 * var(--wp--style--block-gap))
    );
    --wp--custom--spacing--large: clamp(4rem, 10vw, 8rem);
    --wp--custom--typography--font-size--heading-one: clamp(36px, 3vw, 45px);
    --wp--custom--typography--font-size--heading-two: clamp(28px, 2.6vw, 32px);
    --wp--custom--typography--font-size--heading-three: clamp(
        20px,
        1.9vw,
        22px
    );
    --wp--custom--typography--font-size--heading-four: clamp(18px, 1.5vw, 20px);
    --wp--custom--typography--font-size--heading-five: clamp(22px, 1.3vw, 18px);
    --wp--custom--typography--font-size--heading-six: 16px;
    --wp--custom--typography--line-height--heading-one: 1.38;
    --wp--custom--typography--line-height--heading-two: 1.43;
    --wp--custom--typography--line-height--heading-three: 1.36;
    --wp--custom--typography--line-height--heading-four: 1.5;
    --wp--custom--typography--line-height--heading-five: 1.458333333333333;
    --wp--custom--typography--line-height--heading-six: 1.56;
    --wp--custom--typography--line-height--paragraph: 1.75;
    --wp--custom--typography--line-height--extra-small: 21px;
    --wp--custom--typography--line-height--small: 28px;
    --wp--custom--typography--line-height--normal: normal;
    --wp--custom--typography--font-weight--light: 300;
    --wp--custom--typography--font-weight--normal: 400;
    --wp--custom--typography--font-weight--medium: 500;
    --wp--custom--typography--font-weight--semi-bold: 600;
    --wp--custom--typography--font-weight--bold: 700;
    --wp--custom--typography--font-weight--extra-bold: 900;
    --wp--custom--gap--baseline: 15px;
    --wp--custom--gap--horizontal: min(30px, 5vw);
    --wp--custom--gap--vertical: min(30px, 5vw);
    --wp--style--global--content-size: 750px;
    --wp--style--global--wide-size: 1230px;
    --wp--style--block-gap: 2rem;
    --wp--custom--core-button--spacing--padding--left: 30px;
    --wp--custom--core-button--spacing--padding--right: 30px;
    --wp--custom--core-button--spacing--padding--top: 8px;
    --wp--custom--core-button--spacing--padding--bottom: 8px;
    --wp--custom--core-button--color--background: var(
        --wp--preset--color--primary
    );
    --wp--custom--core-button--color: var(--wp--preset--color--white);
    --wp--custom--core-button--border--width: 0px;
    --wp--custom--core-button--border-radius--top-left: 0;
    --wp--custom--core-button--border-radius--top-right: 0;
    --wp--custom--core-button--border-radius--bottom-left: 0;
    --wp--custom--core-button--border-radius--bottom-right: 0;
    --wp--custom--core-button--typography--font-weight: var(
        --wp--custom--typography--font-weight--normal
    );
    --wp--custom--core-button--hover--color--background: var(
        --wp--preset--color--secondary
    );
    --wp--custom--core-button--hover--color: var(--wp--preset--color--white);
}

/* Layout */
:where(body) {
    margin: 0;
}
.wp-site-blocks > .alignleft {
    float: left;
    margin-right: 2em;
}
.wp-site-blocks > .alignright {
    float: right;
    margin-left: 2em;
}
.wp-site-blocks > .aligncenter {
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}
:where(.wp-site-blocks) > * {
    margin-block-start: 2rem;
    margin-block-end: 0;
}
:where(.wp-site-blocks) > :first-child {
    margin-block-start: 0;
}
:where(.wp-site-blocks) > :last-child {
    margin-block-end: 0;
}
:root :where(.is-layout-flow) > :first-child {
    margin-block-start: 0;
}
:root :where(.is-layout-flow) > :last-child {
    margin-block-end: 0;
}
:root :where(.is-layout-flow) > * {
    margin-block-start: 2rem;
    margin-block-end: 0;
}
:root :where(.is-layout-constrained) > :first-child {
    margin-block-start: 0;
}
:root :where(.is-layout-constrained) > :last-child {
    margin-block-end: 0;
}
:root :where(.is-layout-constrained) > * {
    margin-block-start: 2rem;
    margin-block-end: 0;
}
:root :where(.is-layout-flex) {
    gap: 2rem;
}
:root :where(.is-layout-grid) {
    gap: 2rem;
}
.is-layout-flow > .alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}
.is-layout-flow > .alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}
.is-layout-flow > .aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}
.is-layout-constrained > .alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}
.is-layout-constrained > .alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}
.is-layout-constrained > .aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}
.is-layout-constrained,
> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right: auto !important;
}
.is-layout-constrained > .alignwide {
    max-width: var(--wp--style--global--wide-size);
}
body .is-layout-flex {
    display: flex;
}
.is-layout-flex {
    flex-wrap: wrap;
    align-items: center;
}
.is-layout-flex > :is(*, div) {
    margin: 0;
}
body .is-layout-grid {
    display: grid;
}
.is-layout-grid > :is(*, div) {
    margin: 0;
}

/* Body Styles */
body {
    background-color: var(--wp--preset--color--background);
    color: var(--wp--preset--color--body-text);
    font-family: var(--wp--preset--font-family--poppins), serif;
    font-size: var(--wp--preset--font-size--normal);
    font-weight: var(--wp--custom--typography--font-weight--normal);
    line-height: var(--wp--custom--typography--line-height--paragraph);
    margin: 0;
    padding: 0;
}

/* Links */
a:where(:not(.wp-element-button)) {
    color: var(--wp--preset--color--black);
    text-decoration: underline;
}
:root :where(a:where(:not(.wp-element-button)):hover) {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}
:root :where(a:where(:not(.wp-element-button)):focus) {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}
:root :where(a:where(:not(.wp-element-button)):active) {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}

/* Headings */
h1 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-one);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-one);
    margin-top: 0;
    margin-bottom: 0.625rem;
}
h2 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-two);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-two);
    margin-top: 0;
    margin-bottom: 0.625rem;
}
h3 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-three);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-three);
    margin-top: 0;
    margin-bottom: 0.625rem;
}
h4 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-four);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-four);
    margin-top: 0;
    margin-bottom: 0.625rem;
}
h5 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-five);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-five);
    margin-top: 0;
    margin-bottom: 0.625rem;
}
h6 {
    color: var(--wp--preset--color--foreground);
    font-family: var(--wp--preset--font-family--roboto), serif;
    font-size: var(--wp--custom--typography--font-size--heading-six);
    font-weight: var(--wp--custom--typography--font-weight--bold);
    line-height: var(--wp--custom--typography--line-height--heading-six);
    margin-top: 0;
    margin-bottom: 0.625rem;
}

/* Buttons */
:root :where(.wp-element-button, .wp-block-button__link) {
    background-color: var(--wp--preset--color--primary);
    border-radius: 0;
    border-width: 0;
    color: var(--wp--preset--color--white);
    font-family: inherit;
    font-style: inherit;
    font-weight: var(--wp--custom--typography--font-weight--normal);
    letter-spacing: inherit;
    line-height: 1.7;
    padding: 8px 30px;
    text-decoration: none;
    text-transform: inherit;
}
:root :where(.wp-element-button:visited, .wp-block-button__link:visited) {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
}
:root :where(.wp-element-button:hover, .wp-block-button__link:hover) {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
}
:root :where(.wp-element-button:focus, .wp-block-button__link:focus) {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
}
:root :where(.wp-element-button:active, .wp-block-button__link:active) {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
}

/* Color Classes - truncated for brevity, see full version in original file */
.has-black-color {
    color: var(--wp--preset--color--black) !important;
}
.has-white-color {
    color: var(--wp--preset--color--white) !important;
}
.has-primary-color {
    color: var(--wp--preset--color--primary) !important;
}
.has-secondary-color {
    color: var(--wp--preset--color--secondary) !important;
}
.has-body-text-color {
    color: var(--wp--preset--color--body-text) !important;
}

/* Font Size Classes */
.has-small-font-size {
    font-size: var(--wp--preset--font-size--small) !important;
}
.has-medium-font-size {
    font-size: var(--wp--preset--font-size--medium) !important;
}
.has-large-font-size {
    font-size: var(--wp--preset--font-size--large) !important;
}
.has-huge-font-size {
    font-size: var(--wp--preset--font-size--huge) !important;
}

/* Font Family Classes */
.has-poppins-font-family {
    font-family: var(--wp--preset--font-family--poppins), serif !important;
}
.has-roboto-font-family {
    font-family: var(--wp--preset--font-family--roboto), serif !important;
}
