/*
Theme Name: Gecko Theme
Theme URI: 
Author: 
Author URI: 
Description: 
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: ollie
Text Domain: gecko-theme
Tags: 
*/

/* Global */
html {
    scroll-behavior: smooth;
}

/* Helper Classes */
.top-full {
    top: 100%;
}

.z-10 {
    z-index: 10;
}

.z-20 {
    z-index: 20;
}

/* Typography */
body {
    b, strong {
        font-weight: var(--wp--custom--font-weight--bold);
    }

    .has-x-small-font-size,
    .has-small-font-size,
    .has-base-font-size,
    .has-medium-font-size,
    .has-large-font-size,
    .has-x-large-font-size,
    .has-xx-large-font-size,
    .has-custom-1-font-size {
        font-family: var(--wp--preset--font-family--red-hat-display);
    }

    .has-x-small-font-size {
    }

    .has-small-font-size {
    }

    .has-base-font-size {
    }

    .has-medium-font-size {
    }

    .has-large-font-size {
    }

    .has-x-large-font-size {
        line-height: 1.2;
    }

    .has-xx-large-font-size {
    }

    .has-custom-1-font-size {
    }
}

/* Site Header */
header {
    &.site-header {
        a {
            text-decoration: none;
        }

        .wp-block-navigation-submenu__toggle {
            padding: 16px !important;
            text-decoration: none !important;
        }

        .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-icon {
            transform: rotate(0deg);
        }

        .wp-block-navigation__submenu-icon {
            color: var(--wp--preset--color--yellow);
            height: 1em;
            width: 1em;
            font-size: 1em;
            margin-left: -0.5em;
            transition: all 150ms ease-in-out;
            transform: rotate(-90deg);
        }

        .wp-block-buttons {
            display: none;
        }

        @media only screen and (min-width: 600px) {
            .wp-block-navigation,
            .wp-block-navigation__responsive-container,
            .wp-block-navigation__container {
                border-radius: 30px;
                padding-inline: 8px;
            }

            .wp-block-navigation .wp-block-navigation__submenu-container {
                border-radius: 999px;
                margin-left: calc(var(--wp--preset--spacing--medium) * -0.7);
                z-index: 1 !important;
            }

            .wp-block-navigation .has-child .wp-block-navigation__submenu-container {
                top: calc(100% + 5px);
            }

            .wp-block-navigation :where(.wp-block-navigation__submenu-container) li:first-child {
                border-top-left-radius: 30px;
                border-top-right-radius: 30px;
            }

            .wp-block-navigation :where(.wp-block-navigation__submenu-container) li:last-child {
                border-bottom-left-radius: 30px;
                border-bottom-right-radius: 30px;
            }
        }

        @media only screen and (min-width: 1024px) {
            .wp-block-buttons {
                display: block;
            }
        }
    }
}

/* Group Block */
.wp-block-group {
    &:has(.wp-block-video) {
        overflow: clip;
    }
}

/* Buttons Block */
.wp-block-button {
    .wp-block-button__link {
        text-decoration: none;
        transition: all 150ms ease-in-out;

        &:hover {
            color: var(--wp--preset--color--yellow);
            background-color: var(--wp--preset--color--purple-dark);
        }
    }

    &.is-style-alt-green {
        .wp-block-button__link {
            color: var(--wp--preset--color--white);
            background-color: transparent;
            border: 1px solid var(--wp--preset--color--green);

            &:hover {
                color: var(--wp--preset--color--black);
                background-color: var(--wp--preset--color--green);
            }
        }
    }

    &.is-style-alt-purple {
        .wp-block-button__link {
            color: var(--wp--preset--color--white);
            background-color: var(--wp--preset--color--purple);

            &:hover {
                background-color: var(--wp--preset--color--purple-dark);
            }
        }
    }
}

/* Media Text Block */
.wp-block-media-text {
    gap: 3rem;

    .wp-block-media-text__content {
        padding: 0;
    }

    &.is-style-rounded-image .wp-block-media-text__media {
        border-radius: 15px;
        overflow: clip;
    }

    @media (min-width: 600px) {
        gap: 6rem;

        .wp-block-media-text__content {
            padding: 0;
        }

        &.has-media-on-the-right {
            .wp-block-media-text__content {
                padding: 0;
            }
        }
    }
}

/* Image Block */
.wp-block-image {
    &.is-style-full-width {
        img {
            width: 100%;
        }
    }
}

/* Video Block */
.wp-block-video {
    &.is-style-rounded {
        border-radius: 15px;
        overflow: clip;
    }
}

/* Separator Block */
.wp-block-separator {
    border-top: 1px solid;
}

/* Gravity Forms */
.gform_wrapper.gravity-theme {
    input {
        color: var(--wp--preset--color--black);
        border-radius: 999px;
    }

    input[type="checkbox"],
    input[type="radio"] {
        transform: scale(1.5);
    }

    input[type="submit"] {
        border: none;
        background-color: var(--wp--preset--color--yellow);
        border-radius: 100px;
        color: var(--wp--preset--color--black);
        padding: 10px 23px;
        font-family: var(--wp--preset--font-family--rethink-sans);
        font-size: var(--wp--preset--font-size--small);
        font-style: normal;
        font-weight: 800;
        letter-spacing: 0.8px;
        text-transform: uppercase;
        transition: all 150ms ease-in-out;

        &:hover {
            color: var(--wp--preset--color--yellow);
            background-color: var(--wp--preset--color--purple-dark);
        }
    }

    label {
        font-weight: 700;
        margin-bottom: 5px;
    }

    .gform_required_legend {
        display: none;
    }

    .ginput_container.ginput_container_consent {
        display: flex;
        align-items: baseline;
        gap: 0.75rem;

        label {
            font-weight: 400;
            font-size: var(--wp--preset--font-size--x-small);
        }
    }
}

/* Footer */
footer {
    a {
        text-decoration: none;
    }
}