@font-face {
    font-family:WeOK;
    src:url('/font/raleway-400-latin.woff2') format('woff2');
    font-weight:400;
    font-display:swap;
}
@font-face {
    font-family:WeOK;
    src:url('/font/raleway-700-latin.woff2') format('woff2');
    font-weight:700;
    font-display:swap;
}
:root {
    color-scheme:light dark;
    --bg:#f8fafb;
    --ink:#253633;
    --muted:#647772;
    --surface:#fff;
    --mint:#e2f5ed;
    --teal:#32b59a;
    --deep:#176652;
    --line:#dbe6e1;
    --phone:#eff4f1;
    --row:#e5ebe7;
    --shadow:0 30px 70px #2443391c;
}
* {
    box-sizing:border-box;
}
html {
    scroll-behavior:smooth;
}
body {
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font:400 16px/1.6 WeOK,Arial,sans-serif;
}
a {
    color:inherit;
    text-decoration:none;
}
button {
    font:inherit;
}
a:focus-visible,button:focus-visible {
    outline:3px solid var(--teal);
    outline-offset:5px;
}
button:disabled {
    cursor:default;
}
h1,h2,h3,p {
    margin:0;
}
.site-shell {
    max-width:1220px;
    margin:auto;
    padding:0 48px;
}
.site-header {
    height:116px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.brand {
    display:flex;
    align-items:center;
    gap:10px;
    font-size:30px;
    font-weight:700;
    letter-spacing:-1.5px;
}
.brand img {
    border-radius:13px;
}
.brand-dot {
    color:var(--teal);
}
nav {
    display:flex;
    gap:38px;
    align-items:center;
    font-size:13px;
    font-weight:700;
}
.languages {
    display:flex;
    gap:9px;
    align-items:center;
    color:var(--muted);
}
.languages a[aria-current] {
    color:var(--ink);
}
.languages span {
    opacity:.4;
}
.hero {
    display:grid;
    grid-template-columns:1.15fr 1fr;
    gap:40px;
    align-items:center;
    min-height:670px;
    padding:22px 0 58px;
}
.hero-copy {
    position:relative;
    z-index:1;
}
.eyebrow {
    display:flex;
    align-items:center;
    gap:9px;
    font-size:11px;
    letter-spacing:1.4px;
    text-transform:uppercase;
    font-weight:700;
    color:var(--deep);
}
.tiny-ring {
    display:inline-block;
    width:10px;
    height:10px;
    border:2px solid var(--teal);
    border-radius:50%;
    flex-shrink:0;
}
h1 {
    font-size:clamp(42px,4.6vw,64px);
    line-height:1.09;
    letter-spacing:-2.7px;
    margin:24px 0;
    max-width:620px;
}
h1 span {
    color:var(--deep);
}
.hero-description {
    max-width:480px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}
.store-links {
    display:flex;
    gap:12px;
    margin:30px 0 18px;
    flex-wrap:wrap;
}
.store-button {
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 17px;
    min-width:200px;
    border-radius:15px;
    background:var(--ink);
    color:var(--bg);
    transition:transform .2s,background .2s;
    line-height:1.25;
}
.store-button:hover {
    transform:translateY(-2px);
    background:var(--deep);
}
.store-button svg {
    width:25px;
    height:28px;
    flex-shrink:0;
}
.store-button small {
    font-size:10px;
    display:block;
    opacity:.8;
    margin-bottom:4px;
}
.store-button strong {
    font-family:Arial,sans-serif;
    font-size:17px;
}
.store-arrow {
    margin-left:auto;
    font-size:19px;
    opacity:.65;
}
.hero-note {
    display:flex;
    align-items:center;
    gap:7px;
    font-size:11px;
    color:var(--muted);
}
.hero-note>span {
    color:var(--deep);
    font-weight:700;
}
.product-scene {
    position:relative;
    height:570px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.scene-ring {
    position:absolute;
    width:420px;
    height:420px;
    border:1px solid var(--line);
    border-radius:50%;
    pointer-events:none;
}
.ring-one {
    transform:translate(2px,28px);
    background:radial-gradient(circle,#32b59a10,transparent 70%);
}
.ring-two {
    width:500px;
    height:500px;
    transform:translate(2px,28px);
    opacity:.5;
}
.phone {
    position:relative;
    width:286px;
    height:541px;
    background:var(--phone);
    border:7px solid #23312d;
    border-radius:43px;
    box-shadow:var(--shadow);
    transform:rotate(4deg);
    overflow:hidden;
    z-index:1;
    font-family:Arial,sans-serif;
}
.phone-status {
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-weight:700;
    font-size:10px;
    padding:14px 20px;
}
.phone-island {
    width:80px;
    height:21px;
    border-radius:20px;
    background:#23312d;
    position:absolute;
    left:50%;
    transform:translateX(-50%);
}
.phone-content {
    padding:18px 18px;
}
.phone-title {
    font-size:24px;
    font-weight:700;
    display:flex;
    gap:9px;
    align-items:center;
    margin-bottom:29px;
}
.circle-symbol {
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--teal);
    color:white;
    font-size:15px;
    width:27px;
    height:27px;
    clip-path:polygon(50% 0,64% 9%,80% 6%,86% 23%,100% 35%,93% 50%,100% 65%,86% 77%,80% 94%,64% 91%,50% 100%,36% 91%,20% 94%,14% 77%,0 65%,7% 50%,0 35%,14% 23%,20% 6%,36% 9%);
}
.phone-caption {
    font-size:12px;
    font-weight:700;
    margin-bottom:13px;
}
.person-row {
    display:flex;
    align-items:center;
    background:var(--row);
    border-radius:15px;
    overflow:hidden;
    margin:8px 0;
    height:61px;
}
.avatar {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    font-weight:700;
    width:55px;
    height:61px;
    font-size:23px;
}
.avatar-s {
    background:#d9dad2;
    color:#5b6660;
}
.avatar-p {
    background:#ddcab7;
    color:#645744;
}
.avatar-o {
    background:#b9d3c9;
    color:#3a6656;
}
.person-info {
    padding:0 11px;
    flex:1;
}
.person-info strong {
    display:block;
    font-size:14px;
}
.person-info small {
    display:block;
    font-size:10px;
    color:var(--muted);
    margin-top:5px;
}
.status-emoji {
    padding:0 12px;
    font-size:25px;
    background:var(--surface);
    height:100%;
    display:flex;
    align-items:center;
}
.prompt-title {
    margin-top:26px;
}
.status-buttons {
    display:flex;
    gap:6px;
}
.status-buttons>span {
    width:40px;
    height:43px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:var(--surface);
    font-size:23px;
}
.status-buttons .status-ok {
    color:white;
    background:var(--teal);
    font-weight:700;
}
.members-title {
    margin-top:25px;
}
.circle-people {
    display:flex;
    align-items:center;
}
.circle-people .avatar {
    width:32px;
    height:32px;
    border:2px solid var(--phone);
    border-radius:50%;
    font-size:13px;
    margin-right:-6px;
}
.circle-people-label {
    font-size:10px;
    margin-left:16px;
    color:var(--muted);
    line-height:1.45;
}
.phone-nav {
    position:absolute;
    bottom:26px;
    left:12px;
    right:12px;
    display:flex;
    justify-content:space-around;
    border-radius:22px;
    background:var(--surface);
    padding:9px 0;
    box-shadow:0 4px 16px #24433909;
}
.phone-nav>span {
    font-size:21px;
    text-align:center;
    line-height:1.2;
    color:var(--muted);
}
.phone-nav small {
    display:block;
    font-size:8px;
    padding-top:4px;
}
.phone-nav .active {
    color:var(--deep);
}
.phone-home {
    position:absolute;
    width:88px;
    height:4px;
    border-radius:4px;
    background:var(--ink);
    bottom:9px;
    left:50%;
    transform:translateX(-50%);
}
.floating-note {
    position:absolute;
    z-index:2;
    bottom:90px;
    left:-3px;
    display:flex;
    gap:13px;
    align-items:center;
    padding:16px 22px;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:19px;
    box-shadow:0 12px 36px #163b2a17;
    transform:rotate(-5deg);
    font-size:14px;
    font-weight:700;
}
.note-icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--teal);
    color:white;
    font-size:22px;
}
.floating-note small {
    display:block;
    font-size:10px;
    color:var(--muted);
    font-weight:400;
    margin-top:3px;
}
.example-label {
    position:absolute;
    bottom:-5px;
    font-size:9px;
    color:var(--muted);
}
.how-section {
    padding:50px 0 70px;
    border-top:1px solid var(--line);
    scroll-margin-top:30px;
}
.section-heading {
    text-align:center;
}
.section-heading .eyebrow {
    justify-content:center;
    font-size:10px;
}
h2 {
    font-size:32px;
    letter-spacing:-1px;
    line-height:1.2;
    margin-top:11px;
}
.steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:54px;
    margin-top:43px;
}
.step-number {
    font-size:13px;
    color:var(--deep);
    font-weight:700;
}
.steps h3 {
    font-size:21px;
    margin:8px 0;
    letter-spacing:-.5px;
}
.steps p {
    font-size:13px;
    color:var(--muted);
    line-height:1.8;
}
.trust-strip {
    padding:30px 35px;
    background:var(--mint);
    border-radius:24px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:center;
}
.trust-strip>div {
    display:flex;
    align-items:center;
    gap:16px;
}
.trust-strip h2 {
    font-size:23px;
    margin:0;
    letter-spacing:-.6px;
}
.trust-ring {
    width:42px;
    height:42px;
    border:5px solid var(--teal);
    border-radius:50%;
    flex-shrink:0;
}
.trust-strip p {
    font-size:13px;
    color:var(--muted);
    line-height:1.8;
}
footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    font-size:10px;
    color:var(--muted);
    padding:42px 0 26px;
}
footer>div {
    display:flex;
    gap:20px;
}
.footer-brand {
    font-size:13px;
    font-weight:700;
    color:var(--deep);
}
footer a:hover,nav a:hover {
    text-decoration:underline;
}
.invite-code-box {
    max-width:440px;
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--surface);
    padding:17px 20px;
    margin:24px 0 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}
.code-label {
    display:block;
    font-size:10px;
    color:var(--muted);
    margin-bottom:4px;
}
.invite-code {
    font:700 23px/1.3 ui-monospace,monospace;
    letter-spacing:2px;
    user-select:all;
}
.copy-code {
    padding:9px 13px;
    background:var(--mint);
    color:var(--deep);
    border:0;
    border-radius:9px;
    font-size:11px;
    font-weight:700;
    cursor:pointer;
}
.invite-help {
    max-width:440px;
    font-size:12px;
    color:var(--muted);
}
.hero-invite h1 {
    font-size:65px;
}
.hero-invite {
    min-height:650px;
}
.hero-invite+.how-section {
    display:none;
}
@media(prefers-color-scheme:dark) {
    :root {
        --bg:#121917;
        --ink:#eef6f2;
        --muted:#acbdb5;
        --surface:#1e2b25;
        --mint:#16382e;
        --deep:#7bd9bb;
        --line:#2d4036;
        --phone:#18251e;
        --row:#27372e;
        --shadow:0 30px 70px #0006;
    }
    .phone {
        border-color:#40584c;
    }
    .phone-island {
        background:#080f0b;
    }
    .store-button:hover {
        background:#7bd9bb;
        color:#121917;
    }
    .avatar-s {
        background:#526257;
        color:#f0f4f1;
    }
    .avatar-p {
        background:#635442;
        color:#f5ede3;
    }
    .avatar-o {
        background:#3a6656;
        color:#e4f6ed;
    }
}
@media(max-width:1020px) {
    .site-shell {
        padding:0 32px;
    }
    .hero {
        gap:15px;
    }
    .product-scene {
        height:530px;
    }
    .ring-one {
        width:340px;
        height:340px;
    }
    .ring-two {
        width:400px;
        height:400px;
    }
    .phone {
        width:264px;
        height:514px;
    }
    .phone-content {
        padding:14px;
    }
    .phone-title {
        margin-bottom:22px;
    }
    .person-row {
        height:58px;
    }
    .floating-note {
        left:-5px;
        bottom:70px;
        padding:13px 17px;
    }
    .store-button {
        min-width:175px;
        gap:8px;
        padding:12px 14px;
    }
    .steps {
        gap:30px;
    }
    h1 {
        font-size:51px;
    }
    .hero-invite h1 {
        font-size:56px;
    }
    .trust-strip {
        gap:25px;
    }
}
@media(max-width:720px) {
    .site-shell {
        padding:0 24px;
    }
    .site-header {
        height:90px;
    }
    .brand {
        font-size:26px;
    }
    .brand img {
        width:36px;
        height:36px;
    }
    .nav-how {
        display:none;
    }
    .hero {
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:35px;
        min-height:0;
        padding:30px 0 42px;
    }
    .eyebrow {
        font-size:9px;
        letter-spacing:1.1px;
    }
    h1,.hero-invite h1 {
        font-size:46px;
        letter-spacing:-2px;
        margin:21px 0;
    }
    .hero-description {
        font-size:15px;
        max-width:500px;
    }
    .store-links {
        gap:10px;
        margin:25px 0 15px;
    }
    .store-button {
        flex:1;
        min-width:0;
        padding:13px 12px;
        gap:8px;
    }
    .store-button svg {
        width:22px;
    }
    .store-button small {
        font-size:9px;
    }
    .store-button strong {
        font-size:15px;
    }
    .store-arrow {
        font-size:15px;
    }
    .hero-note {
        font-size:10px;
        align-items:flex-start;
    }
    .product-scene {
        height:514px;
        width:100%;
        max-width:430px;
        align-self:center;
        overflow:clip;
        padding:8px 0;
    }
    .phone {
        width:264px;
        height:500px;
        transform:rotate(3deg);
    }
    .floating-note {
        left:4px;
        bottom:72px;
    }
    .example-label {
        bottom:0;
    }
    .scene-ring {
        max-width:100%;
    }
    .ring-two {
        width:390px;
        height:390px;
    }
    .how-section {
        padding:35px 0 40px;
    }
    h2 {
        font-size:28px;
    }
    .steps {
        grid-template-columns:1fr;
        gap:25px;
        margin-top:30px;
    }
    .steps article {
        position:relative;
        padding-left:42px;
    }
    .step-number {
        position:absolute;
        left:0;
        top:7px;
    }
    .steps h3 {
        margin-top:0;
    }
    .steps p {
        font-size:13px;
        max-width:440px;
    }
    .trust-strip {
        padding:26px 23px;
        grid-template-columns:1fr;
        gap:16px;
    }
    .trust-strip h2 {
        font-size:22px;
    }
    .trust-ring {
        width:34px;
        height:34px;
        border-width:4px;
    }
    footer {
        flex-wrap:wrap;
        justify-content:center;
        text-align:center;
        padding:30px 0;
        gap:12px;
    }
    footer p {
        flex-basis:100%;
    }
    .invite-code-box {
        margin-top:22px;
    }
    .invite-code {
        font-size:21px;
    }
    .hero-invite {
        gap:20px;
    }
    .hero-invite .product-scene {
        margin-top:15px;
    }
    .hero-invite .hero-description {
        font-size:15px;
    }
}
@media(max-width:360px) {
    .site-shell {
        padding:0 18px;
    }
    h1,.hero-invite h1 {
        font-size:39px;
    }
    .store-links {
        flex-direction:column;
    }
    .store-button {
        width:100%;
    }
    .hero-note {
        font-size:9px;
    }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto;
    }
    .store-button {
        transition:none;
    }
    .store-button:hover {
        transform:none;
    }
}
