.template-guruguru {
    & .blurb {
        grid-column: center-start 1 / center-end 2;
        grid-row: 1;
        align-self: center;
        justify-self: center;
        padding-right: 2.4rem;
        max-width: 70ch;

        & h3 {
            font-size: 150%;
            font-weight: 700;
            padding-bottom: 0.5lh;
            padding-right: 1.2rem;
        }
    }

    & .guruguru {
        display: grid;
        grid-template-columns: subgrid;

        grid-column: center-start 3 / -1;
        grid-row: 1;
        padding: 2.4rem 2.4rem;

        background-color: var(--field-color);
        border-bottom-left-radius: 1.2rem;

        & * {
            grid-column: 1 / -2;
        }

        & .search-section {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 1.6rem;

            & h3 {
                font-size: 150%;
                font-family: var(--font-body);
                font-weight: 900;

                & .mora-1 {
                    color: #c92323;
                }
                & .mora-2 {
                    color: #ec9713;
                }
                & .mora-3 {
                    color: #2d64e7;
                }
                & .mora-4 {
                    color: #3cab86;
                }
            }

            & .search-box {
                flex-grow: 1;
                border-radius: 100rem;
                padding: 0;

                display: flex;
                flex-direction: row;
                align-items: center;

                border: 0.1rem solid var(--border-1);

                & select {
                    flex-grow: 1;
                    padding: 0.6rem 1.2rem;

                    appearance: none;
                    /* appearance: base-select; -- future browser feature */
                    background: none;
                }

                & .icon-search {
                    margin-right: 0.8rem;
                }
            }
        }

        & .search-results {
            display: flex;
            flex-direction: column;

            & li {
                padding-top: 1lh;
            }

            & h3 {
                font-size: 110%;
                font-family: var(--font-body);
                font-weight: 550;
            }

            & .url-row {
                display: flex;
                flex-direction: row;
                align-items: center;
                gap: 0.1rem;
            }

            & .url {
                font-size: 85%;
            }

            & .favicon {
                width: 1.6rem;
                height: 1.6rem;
            }
        }

        & .disclaimer {
            padding-top: 1lh;
            margin-top: auto;

            display: flex;
            justify-content: center;
            align-items: center;

            color: color-mix(in srgb, var(--background-color), var(--text-color) 75%);
            font-size: 90%;
        }
    }

    @media (max-width: 960px) {
        & .blurb {
            grid-column: center-start 1 / center-end 6;
            grid-row: 2;
            padding-right: 0;
        }

        & .guruguru {
            grid-column: 1 / -1;
            padding-top: var(--heading-margin);

            border-radius: 0;
        }
    }
}
