[data-theme=light],
:root:not([data-theme=dark]),
:host:not([data-theme=dark]) {
    --pico-typography-spacing-vertical: 1.5rem;
    --pico-primary: #17a94d;
    --pico-primary-background: #17a94d;
    --pico-primary-hover: #128a3e;
    --pico-primary-hover-background: #128a3e;
    --pico-primary-hover-border: #128a3e;
    --pico-primary-hover-underline: #128a3e;
    --pico-primary-focus: rgba(23, 169, 77, 0.375);
    --pico-primary-inverse: #fff;
    --pico-secondary-background: #f5f6fa;
    --pico-secondary: #7c7c7c;
    --hexonet-ink: #0b1830;
    --hexonet-muted: #5b6b8c;
}

h1 {
    --pico-font-weight: 400;
}

h2 {
    color: var(--pico-secondary);
    font-size: .8rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

header {
    margin-bottom: 0;
    border-bottom: 1px solid var(--pico-secondary-background);
}

header nav {
    padding-block: .6rem;
}

@media (max-width: 480px) {
    header nav {
        flex-wrap: wrap;
        row-gap: .6rem;
    }
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--hexonet-ink);
    text-decoration: none;
}

main {
    --pico-block-spacing-vertical: 0;
}

body section {
    margin: 0;
    padding: 4rem 0;
}

section {
    padding-bottom: 30px;
}

/* Hero */

.headline {
    background: var(--pico-secondary-background);
}

.headline .content {
    max-width: 740px;
}

.headline h1 {
    color: var(--hexonet-ink);
}

.actions {
    display: flex;
    gap: 1rem;
    margin-top: 2rem;
}

.actions [role=button] {
    width: auto;
    margin-bottom: 0;
}

.domain-search {
    display: flex;
    max-width: 620px;
    margin-top: 2rem;
    border: 1px solid var(--pico-secondary-background);
    border-radius: var(--pico-border-radius);
    background: #fff;
    padding: .3rem;
    gap: .5rem;
}

.domain-search input {
    flex: 1;
    min-width: 0;
    margin-bottom: 0;
    border: none;
    box-shadow: none;
}

.domain-search input:focus {
    box-shadow: none;
}

.domain-search button {
    width: auto;
    margin-bottom: 0;
    padding-inline: 1rem;
    white-space: nowrap;
}

@media (max-width: 480px) {
    .domain-search {
        flex-direction: column;
        background: transparent;
        border: none;
        padding: 0;
        gap: .75rem;
    }

    .domain-search input {
        border: 1px solid var(--pico-secondary-background);
        border-radius: var(--pico-border-radius);
        background: #fff;
        padding: .75rem 1rem;
    }
}

/* Where to go now */

.feature-card {
    margin: 0;
    padding: 1.75rem;
    border: 1px solid var(--pico-secondary-background);
    border-top: 3px solid var(--pico-primary);
    border-radius: var(--pico-border-radius);
    box-shadow: none;
}

.feature-card .icon {
    display: block;
    margin-bottom: 1rem;
}

.feature-card h3 {
    margin-bottom: .5rem;
    font-size: 1.05rem;
    color: var(--hexonet-ink);
}

.feature-card p {
    color: var(--hexonet-muted);
    margin-bottom: 1rem;
}

.feature-card a {
    text-decoration: none;
}

/* FAQ */

.faq {
    background: var(--pico-secondary-background);
}

.faq h2 {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .faq .grid {
        grid-template-columns: 1fr 2fr;
        align-items: start;
    }
}

.faq-list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.faq-item {
    background: var(--pico-background-color, #fff);
    border: 1px solid #e7e9f2;
    border-left: 3px solid var(--pico-primary);
    border-radius: var(--pico-border-radius);
    padding: 1.5rem 1.75rem;
    box-shadow: 0 1px 2px rgba(11, 24, 48, .04);
}

.faq-item h3 {
    color: var(--hexonet-ink);
    font-size: 1.05rem;
    margin-bottom: .5rem;
}

.faq-item p {
    color: var(--hexonet-muted);
    margin-bottom: 0;
}

/* General Inquiries & Support */

.support-cta {
    background: var(--pico-secondary-background);
    text-align: center;
}

.support-cta h2 {
    margin-bottom: .75rem;
}

.support-cta p {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
}

.support-cta p:last-child {
    color: var(--hexonet-muted);
    margin-bottom: 0;
}

/* Legal pages */

.legal-page {
    padding-top: 3rem;
}

.legal-page h1 {
    color: var(--hexonet-ink);
    margin-bottom: 1.5rem;
}

.legal-page h4 {
    color: var(--hexonet-ink);
    margin-bottom: .5rem;
}

.legal-page h5 {
    color: var(--hexonet-ink);
    font-size: 1rem;
    margin-bottom: .5rem;
}

.legal-page .intro {
    max-width: 760px;
    color: var(--hexonet-muted);
}

.legal-badges {
    margin: 2.5rem 0;
}

.legal-badges img {
    height: 64px;
    width: auto;
    margin-bottom: 1rem;
}

.legal-badges p {
    color: var(--hexonet-muted);
}

.legal-facts {
    margin-bottom: 2.5rem;
}

.legal-facts p {
    margin-bottom: .35rem;
    color: var(--hexonet-muted);
}

.legal-facts h4:not(:first-child) {
    margin-top: 1.5rem;
}

.exec-team {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    border: 1px solid var(--pico-secondary-background);
    border-radius: var(--pico-border-radius);
    max-width: 420px;
    margin-bottom: 2.5rem;
}

.exec-team img {
    border-radius: 50%;
    width: 64px;
    height: 64px;
    object-fit: cover;
}

.exec-team h4 {
    margin-bottom: .15rem;
}

.exec-team p {
    color: var(--hexonet-muted);
    margin-bottom: 0;
}

.legal-cta {
    margin-top: 1rem;
}

.legal-cta [role=button] {
    width: auto;
}

.legal-block {
    max-width: 760px;
    margin-bottom: 2.5rem;
}

.legal-block p {
    color: var(--hexonet-muted);
}

.support-block {
    background: var(--pico-secondary-background);
    border-radius: var(--pico-border-radius);
    padding: 1.75rem;
}

.support-block p {
    color: var(--hexonet-muted);
}

.support-block [role=button] {
    width: auto;
    margin-top: .5rem;
}

/* Footer */

footer {
    background: var(--hexonet-ink);
    color: #b7c0d6;
    padding: 1.5rem 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

footer .container {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
}

footer nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem 1.5rem;
    margin: 0;
}

footer a.secondary {
    color: #b7c0d6;
}

.connected-by {
    align-self: flex-end;
    line-height: 0;
}
