:root {
    color-scheme: light;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #183229;
    background: #edf6f2;
}

* { box-sizing: border-box; }

body {
    min-height: 100vh;
    margin: 0;
    display: grid;
    place-items: center;
    padding: 1.5rem;
    background: radial-gradient(circle at top left, #d5f1e3 0, transparent 40%), #edf6f2;
}

.shell { width: min(100%, 30rem); }

.card {
    padding: clamp(1.5rem, 5vw, 2.5rem);
    border: 1px solid #c9ddd5;
    border-radius: 1.5rem;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 1.5rem 4rem rgba(32, 79, 61, .12);
}

.brand {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: 2rem;
    font-weight: 750;
    letter-spacing: -.02em;
}

.brand-mark {
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    border-radius: .9rem;
    color: #fff;
    background: #176b52;
    font-size: 1.35rem;
}

h1 {
    margin: 0 0 .75rem;
    color: #102c23;
    font-size: clamp(1.8rem, 7vw, 2.5rem);
    line-height: 1.05;
    letter-spacing: -.04em;
}

.lead {
    margin: 0 0 1.75rem;
    color: #4d665d;
    line-height: 1.6;
}

.google-slot {
    min-height: 44px;
    display: flex;
    justify-content: center;
}

.notice {
    padding: 1rem;
    border: 1px solid #e2c675;
    border-radius: .85rem;
    color: #664f0a;
    background: #fff9e7;
    line-height: 1.45;
}

.privacy {
    margin: 1.75rem 0 0;
    padding-top: 1.25rem;
    border-top: 1px solid #e1ebe7;
    color: #597068;
    font-size: .875rem;
    line-height: 1.55;
}

.environment {
    margin-top: 1rem;
    text-align: center;
    color: #70837c;
    font-size: .75rem;
}
