.static-page {
    --static-ink: #15201a;
    --static-muted: #68756e;
    --static-border: #d5ded9;
    --static-surface: #ffffff;
    --static-canvas: #f1f4f2;
    --static-primary: #087a55;
    --static-primary-dark: #075f45;
    min-height: 100vh;
    color: var(--static-ink);
    background: var(--static-canvas);
}

.static-shell {
    width: min(100% - 2rem, 78rem);
    margin-inline: auto;
}

.static-shell--narrow {
    width: min(100% - 2rem, 62rem);
}

.static-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(2.6rem, 5vw, 3.6rem) 0 clamp(2.8rem, 5vw, 3.8rem);
    color: #14251c;
    background:
        radial-gradient(circle at 84% 15%, rgba(21, 150, 106, .11), transparent 27rem),
        linear-gradient(145deg, #f4f7f5 0%, #e7eee9 56%, #dfe9e3 100%);
}

.static-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .06;
    background-image:
        linear-gradient(rgba(8, 74, 49, .28) 1px, transparent 1px),
        linear-gradient(90deg, rgba(8, 74, 49, .28) 1px, transparent 1px);
    background-size: 48px 48px;
    -webkit-mask-image: linear-gradient(100deg, #000, transparent 76%);
    mask-image: linear-gradient(100deg, #000, transparent 76%);
    pointer-events: none;
}

.static-hero .static-shell {
    position: relative;
    z-index: 1;
}

.static-hero h1 {
    max-width: 17ch;
    margin: 0;
    color: #10231a;
    font-size: clamp(2.25rem, 4vw, 3.45rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.06em;
}

.static-hero-meta,
.static-hero-lead {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-top: 1.2rem;
    color: #607269;
    font-size: .83rem;
    line-height: 1.65;
}

.static-hero-lead {
    max-width: 42rem;
    font-size: 1rem;
}

.static-contact-page .static-hero h1 {
    max-width: 22ch;
}

.static-page-main {
    position: relative;
    z-index: 2;
    padding-top: clamp(1.5rem, 3vw, 2.25rem);
    padding-bottom: clamp(3rem, 6vw, 5rem);
}

.static-card {
    border: 1px solid var(--static-border);
    border-radius: .58rem;
    background: var(--static-surface);
    box-shadow: 0 12px 28px rgba(3, 18, 13, .075), 0 2px 6px rgba(3, 18, 13, .025);
}

.static-legal-card {
    overflow: hidden;
}

.static-prose {
    padding: clamp(1.5rem, 5vw, 3.4rem);
    color: #526059;
    font-size: .94rem;
    line-height: 1.78;
}

.static-prose > p:first-child {
    margin: 0 0 2.5rem;
    padding: 1.05rem 1.15rem;
    border: 1px solid #cfe0d7;
    border-left: 3px solid var(--static-primary);
    border-radius: .36rem;
    color: #3e4c45;
    background: #f4f8f6;
}

.static-prose p {
    margin: .75rem 0;
}

.static-prose h3 {
    margin: 2.45rem 0 .8rem;
    padding-top: 2.1rem;
    border-top: 1px solid #e1e7e3;
    color: var(--static-ink);
    font-size: 1.16rem;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -.025em;
}

.static-prose > h3:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.static-prose h4 {
    margin: 1.55rem 0 .55rem;
    color: #294137;
    font-size: .92rem;
    font-weight: 700;
    line-height: 1.4;
}

.static-prose ul,
.static-prose ol {
    display: grid;
    gap: .5rem;
    margin: .9rem 0 1.15rem;
    padding-left: 1.25rem;
}

.static-prose li {
    padding-left: .22rem;
}

.static-prose li::marker {
    color: #139168;
}

.static-prose strong {
    color: #27342e;
    font-weight: 700;
}

.static-prose a {
    color: var(--static-primary-dark);
    font-weight: 650;
    text-decoration: underline;
    text-decoration-color: #9fc8b5;
    text-underline-offset: 3px;
}

.static-prose a:hover {
    color: #064c39;
    text-decoration-color: currentColor;
}

.static-prose > p:last-child {
    margin-top: 2.8rem;
    padding-top: 1.5rem;
    border-color: #e1e7e3;
    color: #7b8780;
    font-size: .78rem;
}

.static-cookie-settings-button {
    display: inline-flex;
    min-height: 2.65rem;
    align-items: center;
    justify-content: center;
    padding: .65rem 1rem;
    border: 0;
    border-radius: .38rem;
    color: #fff;
    background: var(--static-primary);
    box-shadow: 0 4px 10px rgba(5, 95, 66, .14);
    font-size: .76rem;
    font-weight: 700;
}

.static-cookie-settings-button:hover {
    background: var(--static-primary-dark);
}

.static-contact-layout {
    width: min(100%, 62rem);
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    margin-inline: auto;
}

.static-contact-info {
    position: static;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    overflow: hidden;
    padding: .9rem;
    border-color: var(--static-border);
    color: var(--static-ink);
    background: var(--static-surface);
    box-shadow: 0 8px 20px rgba(3, 18, 13, .055);
}

.static-contact-info > :not([hidden]) ~ :not([hidden]) {
    margin-top: 0;
    margin-bottom: 0;
}

.static-contact-item {
    padding: .55rem 1rem;
    border-left: 1px solid #e1e7e3;
}

.static-contact-item:first-child {
    border-left: 0;
}

.static-contact-icon {
    width: 2.55rem;
    height: 2.55rem;
    border: 1px solid #cce2d7;
    border-radius: .4rem;
    color: var(--static-primary-dark);
    background: #eef7f2;
    font-size: .82rem;
}

.static-contact-info h3 {
    color: var(--static-ink);
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: -.015em;
}

.static-contact-info p,
.static-contact-info p a {
    color: var(--static-muted);
    font-size: .72rem;
    line-height: 1.55;
}

.static-contact-info p a:hover {
    color: var(--static-primary-dark);
}

.static-contact-social {
    gap: .42rem;
}

.static-contact-social a {
    display: grid;
    width: 2.15rem;
    height: 2.15rem;
    place-items: center;
    margin: 0 !important;
    border: 1px solid #d7e0db;
    border-radius: .34rem;
    color: #79877f;
    background: #f7f9f8;
}

.static-contact-social a:hover {
    border-color: #a8cdbb;
    color: var(--static-primary-dark);
    background: #eef7f2;
}

.static-contact-social i {
    font-size: .82rem;
}

.static-contact-form-card {
    overflow: hidden;
}

.static-contact-form {
    padding: clamp(1.4rem, 4vw, 2.35rem);
}

.static-contact-form label {
    margin-bottom: .45rem;
    color: #34423a;
    font-size: .73rem;
    font-weight: 700;
}

.static-contact-input {
    min-height: 3.05rem;
    margin-top: 0;
    border-color: #cbd5cf;
    border-radius: .4rem;
    color: var(--static-ink);
    background: #fff;
    box-shadow: inset 0 1px 1px rgba(9, 32, 23, .025);
    font-size: .86rem;
    outline: none;
}

textarea.static-contact-input {
    min-height: 8.5rem;
}

.static-contact-input:hover {
    border-color: #aebbb4;
}

.static-contact-input:focus {
    border-color: var(--static-primary);
    box-shadow: 0 0 0 3px rgba(8, 122, 85, .11);
}

.static-contact-privacy {
    padding: .85rem 1rem;
    border: 1px solid #e0e6e2;
    border-radius: .4rem;
    color: #748078;
    background: #f6f8f7;
    font-size: .72rem;
    line-height: 1.55;
}

.static-contact-privacy a {
    color: var(--static-primary-dark);
    font-weight: 700;
}

.static-contact-submit {
    min-height: 3rem;
    border-radius: .4rem;
    background: var(--static-primary);
    box-shadow: 0 5px 12px rgba(4, 120, 87, .16);
    font-weight: 700;
}

.static-contact-submit:hover {
    background: var(--static-primary-dark);
}

.static-contact-alert {
    border-radius: .42rem;
    box-shadow: none;
}

[data-theme="dark"] .static-page {
    --static-ink: #ecf5f0;
    --static-muted: #9dafa5;
    --static-border: #2a4035;
    --static-surface: #101d17;
    --static-canvas: #07110d;
    --static-primary: #28b886;
    --static-primary-dark: #34d399;
    background: var(--static-canvas);
}

[data-theme="dark"] .static-hero {
    color: #f2f8f4;
    background:
        radial-gradient(circle at 84% 15%, rgba(52, 211, 153, .09), transparent 27rem),
        linear-gradient(145deg, #06150f 0%, #092118 56%, #05130e 100%);
}

[data-theme="dark"] .static-hero::after {
    opacity: .13;
    background-image:
        linear-gradient(rgba(255, 255, 255, .1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .1) 1px, transparent 1px);
}

[data-theme="dark"] .static-hero h1 {
    color: #fff;
}

[data-theme="dark"] .static-hero-meta,
[data-theme="dark"] .static-hero-lead {
    color: rgba(226, 240, 232, .67);
}

[data-theme="dark"] .static-card,
[data-theme="dark"] .legal-page .static-card {
    border-color: var(--static-border);
    background: var(--static-surface);
    box-shadow: 0 14px 32px rgba(0, 0, 0, .22);
}

[data-theme="dark"] .static-prose,
[data-theme="dark"] .static-prose p,
[data-theme="dark"] .static-prose li {
    color: #aebfb6;
}

[data-theme="dark"] .static-prose > p:first-child {
    border-color: #315343;
    border-left-color: #34d399;
    color: #c9d9d1;
    background: #14281e;
}

[data-theme="dark"] .static-prose h3 {
    border-color: #283b31;
    color: #edf6f1;
}

[data-theme="dark"] .static-prose h4,
[data-theme="dark"] .static-prose strong {
    color: #d8e7df;
}

[data-theme="dark"] .static-prose li::marker,
[data-theme="dark"] .static-prose a {
    color: #6ee7b7;
}

[data-theme="dark"] .static-prose a:hover {
    color: #a7f3d0;
}

[data-theme="dark"] .static-prose > p:last-child {
    border-color: #283b31;
    color: #81958a;
}

[data-theme="dark"] .static-contact-info {
    border-color: #2a4035;
    color: #eaf4ee;
    background: #101d17;
}

[data-theme="dark"] .static-contact-item {
    border-color: #283b31;
}

[data-theme="dark"] .static-contact-icon {
    border-color: #315543;
    color: #6ee7b7;
    background: #172a20;
}

[data-theme="dark"] .static-contact-info h3 {
    color: #edf6f1;
}

[data-theme="dark"] .static-contact-info p,
[data-theme="dark"] .static-contact-info p a {
    color: #91a49a;
}

[data-theme="dark"] .static-contact-social a {
    border-color: #30463a;
    color: #91a49a;
    background: #13221a;
}

[data-theme="dark"] .static-contact-social a:hover {
    border-color: #48705c;
    color: #6ee7b7;
    background: #172a20;
}

[data-theme="dark"] .static-contact-form label {
    color: #d5e3dc;
}

[data-theme="dark"] input.static-contact-input,
[data-theme="dark"] textarea.static-contact-input {
    border-color: #30463a;
    color: #eaf4ee;
    background: #13221a;
    color-scheme: dark;
}

[data-theme="dark"] input.static-contact-input:hover,
[data-theme="dark"] textarea.static-contact-input:hover {
    border-color: #48705c;
}

[data-theme="dark"] input.static-contact-input:focus,
[data-theme="dark"] textarea.static-contact-input:focus {
    border-color: #34d399;
    box-shadow: 0 0 0 3px rgba(52, 211, 153, .12);
}

[data-theme="dark"] .static-contact-privacy {
    border-color: #2d4036;
    color: #91a49a;
    background: #132019;
}

[data-theme="dark"] .static-contact-privacy a {
    color: #6ee7b7;
}

[data-theme="dark"] .static-contact-alert--success {
    border-color: #2c5944;
    background: #132a20;
}

[data-theme="dark"] .static-contact-alert--success p {
    color: #9de7c5;
}

[data-theme="dark"] .static-contact-alert--error {
    border-color: #653b3b;
    background: #2a1818;
}

[data-theme="dark"] .static-contact-alert--error p {
    color: #f1adad;
}

@media (max-width: 1023px) {
    .static-contact-info {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 639px) {
    .static-hero {
        padding: 2.2rem 0 2.7rem;
    }

    .static-hero h1 {
        font-size: 2.4rem;
    }

    .static-hero-lead {
        font-size: .88rem;
    }

    .static-card {
        border-radius: .48rem;
    }

    .static-prose {
        padding: 1.35rem;
        font-size: .88rem;
    }

    .static-prose > p:first-child {
        margin-bottom: 2rem;
    }

    .static-prose h3 {
        margin-top: 2rem;
        padding-top: 1.7rem;
        font-size: 1.05rem;
    }

    .static-contact-info {
        display: block;
        padding: 1.35rem;
    }

    .static-contact-info > .static-contact-item {
        padding: 1.15rem 0 0;
        border-top: 1px solid #e1e7e3;
        border-left: 0;
    }

    .static-contact-info > .static-contact-item:first-child {
        padding-top: 0;
        border-top: 0;
    }

    [data-theme="dark"] .static-contact-info > .static-contact-item {
        border-color: #283b31;
    }

    .static-contact-form {
        padding: 1.35rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .static-page *,
    .static-page *::before,
    .static-page *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
