@charset "UTF-8";

:root {
    --lc-paper: #f4ead3;
    --lc-paper-light: #fffaf0;
    --lc-paper-deep: #e7d5b5;
    --lc-ink: #24312b;
    --lc-ink-soft: #596258;
    --lc-tomato: #d64b3d;
    --lc-tomato-dark: #a9342c;
    --lc-leaf: #315f4f;
    --lc-leaf-light: #78a66b;
    --lc-lunar: #4d86ad;
    --lc-lunar-dark: #285872;
    --lc-sun: #e9bd55;
    --lc-line: #bcae91;
    --lc-display: Georgia, "Times New Roman", serif;
    --lc-body: "Trebuchet MS", "Segoe UI", sans-serif;
    --lc-mono: "Courier New", monospace;
    --lc-shell: min(1380px, calc(100% - 72px));
    --lc-shadow: 10px 10px 0 rgba(36, 49, 43, .14);
}

*,
*::before,
*::after { box-sizing: border-box; }

html {
    scroll-behavior: smooth;
    scroll-padding-top: 96px;
}

body {
    margin: 0;
    overflow-x: clip;
    color: var(--lc-ink);
    background:
        radial-gradient(circle at 10% 3%, rgba(255,255,255,.55) 0 1px, transparent 2px) 0 0 / 24px 24px,
        linear-gradient(110deg, rgba(99,75,42,.035), transparent 24%, rgba(99,75,42,.025) 68%, transparent),
        var(--lc-paper);
    font-family: var(--lc-body);
    font-size: 17px;
    line-height: 1.65;
}

body.lc-menu-open,
body.lc-dialog-open { overflow: hidden; }

:lang(ja) body { line-height: 1.8; }

button,
input { color: inherit; font: inherit; }
button,
a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
svg { display: block; max-width: 100%; }
img { max-width: 100%; }
[hidden] { display: none !important; }

h1,
h2,
h3,
p { margin-top: 0; }

::selection { color: #fff; background: var(--lc-tomato); }
:focus-visible { outline: 3px solid var(--lc-tomato); outline-offset: 4px; }

.lc-shell { width: var(--lc-shell); margin-inline: auto; }

.lc-skip-link {
    position: fixed;
    z-index: 1000;
    top: 12px;
    left: 12px;
    padding: 10px 16px;
    color: #fff;
    background: var(--lc-ink);
    font-weight: 800;
    transform: translateY(-160%);
    transition: transform .2s ease;
}
.lc-skip-link:focus { transform: translateY(0); }

.lc-header {
    position: sticky;
    z-index: 100;
    top: 0;
    border-bottom: 1px solid rgba(36,49,43,.28);
    background: rgba(244,234,211,.94);
    backdrop-filter: blur(13px);
}

.lc-header-inner {
    min-height: 78px;
    display: flex;
    align-items: center;
    gap: clamp(24px, 4vw, 64px);
}

.lc-brand {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--lc-display);
    font-size: 21px;
    line-height: 1;
    letter-spacing: -.025em;
}
.lc-brand strong { color: var(--lc-tomato); font-weight: 700; }
.lc-brand-mark { width: 42px; height: 42px; }
.lc-brand-mark circle { fill: var(--lc-leaf); }
.lc-brand-mark path:first-of-type { fill: var(--lc-paper); }
.lc-brand-mark path:last-of-type { fill: none; stroke: var(--lc-tomato); stroke-width: 2.4; stroke-linecap: round; }

.lc-desktop-nav {
    margin-left: auto;
    display: flex;
    align-items: stretch;
    align-self: stretch;
    gap: clamp(18px, 2.25vw, 36px);
}
.lc-desktop-nav a {
    position: relative;
    display: flex;
    align-items: center;
    color: #4c554d;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .015em;
}
.lc-desktop-nav a::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: -1px;
    left: 50%;
    height: 4px;
    background: var(--lc-tomato);
    transition: left .2s ease, right .2s ease;
}
.lc-desktop-nav a:hover::after,
.lc-desktop-nav a[aria-current="true"]::after { right: 0; left: 0; }

.lc-header-actions { display: flex; align-items: center; gap: 13px; }
.lc-language {
    display: flex;
    padding: 3px;
    border: 1px solid var(--lc-line);
    border-radius: 999px;
    background: rgba(255,250,240,.5);
}
.lc-language button {
    min-height: 29px;
    padding: 4px 9px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    font-size: 11px;
    font-weight: 900;
}
.lc-language button[aria-pressed="true"] { color: #fff; background: var(--lc-leaf); }

.lc-button {
    min-height: 52px;
    padding: 12px 21px;
    border: 2px solid var(--lc-ink);
    border-radius: 8px 8px 14px 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    color: var(--lc-paper-light);
    background: var(--lc-leaf);
    box-shadow: 4px 4px 0 var(--lc-ink);
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .01em;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.lc-button:hover { transform: translate(-2px, -2px); box-shadow: 7px 7px 0 var(--lc-ink); }
.lc-button:active { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--lc-ink); }
.lc-button:disabled { opacity: .62; cursor: wait; transform: none; box-shadow: 3px 3px 0 var(--lc-ink); }
.lc-button-small { min-height: 41px; padding: 8px 14px; box-shadow: 3px 3px 0 var(--lc-ink); font-size: 12px; }
.lc-button-red { background: var(--lc-tomato); }

.lc-menu-button {
    width: 44px;
    height: 44px;
    padding: 9px;
    border: 2px solid var(--lc-ink);
    border-radius: 50%;
    display: none;
    align-content: center;
    gap: 4px;
    background: transparent;
}
.lc-menu-button span { width: 100%; height: 2px; display: block; background: var(--lc-ink); transition: transform .2s ease, opacity .2s ease; }
.lc-menu-button[aria-expanded="true"] span:first-child { transform: translateY(6px) rotate(45deg); }
.lc-menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.lc-menu-button[aria-expanded="true"] span:last-child { transform: translateY(-6px) rotate(-45deg); }

.lc-mobile-menu {
    padding: 8px max(24px, calc((100% - 1380px) / 2)) 26px;
    border-top: 1px dashed var(--lc-line);
    background: var(--lc-paper);
}
.lc-mobile-menu a { padding: 11px 0; border-bottom: 1px solid var(--lc-line); display: block; font-family: var(--lc-display); font-size: 25px; }
.lc-mobile-menu .lc-button { width: 100%; margin-top: 20px; }

.lc-hero { padding-top: clamp(54px, 7vw, 108px); }
.lc-hero-grid {
    min-height: 750px;
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(520px, 1.14fr);
    align-items: center;
    gap: clamp(45px, 7vw, 110px);
}

.lc-edition-line,
.lc-kicker,
.lc-packet-top,
.lc-postmark,
.lc-journal-label {
    font-family: var(--lc-mono);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.lc-edition-line { display: flex; align-items: center; gap: 13px; color: var(--lc-leaf); }
.lc-edition-line span:nth-child(2) { color: var(--lc-tomato); }
.lc-hero h1 {
    max-width: 720px;
    margin: 29px 0 27px;
    font-family: var(--lc-display);
    font-size: clamp(58px, 6.7vw, 103px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -.058em;
}
.lc-hero h1 em,
.lc-section-heading h2 em,
.lc-rhythm-heading h2 em,
.lc-catalog-heading h2 em,
.lc-neighbor-heading h2 em,
.lc-crater-copy h2 em,
.lc-join-copy h2 em,
.lc-faq-heading h2 em { color: var(--lc-tomato); font-weight: 400; }
.lc-hero-lead { max-width: 620px; margin-bottom: 0; color: var(--lc-ink-soft); font-size: clamp(18px, 1.5vw, 22px); line-height: 1.55; }
.lc-hero-actions { margin-top: 35px; display: flex; align-items: center; gap: 29px; flex-wrap: wrap; }
.lc-text-link { padding: 7px 0 4px; border-bottom: 2px solid var(--lc-ink); display: inline-flex; align-items: center; gap: 14px; font-size: 14px; font-weight: 900; }
.lc-text-link span:last-child { color: var(--lc-tomato); transition: transform .2s ease; }
.lc-text-link:hover span:last-child { transform: translateY(4px); }

.lc-hero-details { max-width: 650px; margin: clamp(45px, 6vw, 82px) 0 0; display: grid; grid-template-columns: repeat(3, 1fr); }
.lc-hero-details div { padding: 10px 16px 8px 0; border-top: 1px solid var(--lc-line); }
.lc-hero-details div + div { padding-left: 18px; border-left: 1px solid var(--lc-line); }
.lc-hero-details dt { margin-bottom: 4px; color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.lc-hero-details dd { margin: 0; font-family: var(--lc-display); font-size: 16px; font-weight: 700; }

.lc-hero-plate {
    position: relative;
    width: 100%;
    max-width: 740px;
    margin: 0 auto;
    padding: 23px 23px 17px;
    border: 2px solid var(--lc-ink);
    border-radius: 28px 28px 58px 28px;
    background: var(--lc-paper-light);
    box-shadow: 15px 15px 0 var(--lc-lunar), 18px 18px 0 var(--lc-ink);
    transform: rotate(1deg);
}
.lc-plate-tab {
    position: absolute;
    z-index: 2;
    top: 19px;
    left: -18px;
    padding: 9px 17px;
    border: 2px solid var(--lc-ink);
    background: var(--lc-sun);
    box-shadow: 4px 4px 0 var(--lc-ink);
    display: flex;
    gap: 28px;
    font-family: var(--lc-mono);
    font-size: 10px;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.lc-homestead-art { width: 100%; overflow: visible; }
.lc-art-sky { fill: var(--lc-lunar); }
.lc-art-moon { fill: var(--lc-paper); stroke: var(--lc-ink); stroke-width: 3; }
.lc-art-moon-crater { fill: var(--lc-paper-deep); }
.lc-art-ground { fill: #a7b87b; stroke: var(--lc-ink); stroke-width: 3; }
.lc-art-track { fill: none; stroke: var(--lc-paper); stroke-width: 13; stroke-linecap: round; stroke-dasharray: 3 25; opacity: .7; }
.lc-art-stars { fill: var(--lc-paper-light); }
.lc-art-windmill { fill: var(--lc-tomato); stroke: var(--lc-ink); stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.lc-art-windmill path:first-child { fill: none; }
.lc-art-dome { fill: rgba(255,250,240,.42); stroke: var(--lc-ink); stroke-width: 4; stroke-linejoin: round; }
.lc-art-dome rect { fill: var(--lc-leaf); }
.lc-art-dome .lc-art-crop { fill: var(--lc-tomato); stroke: var(--lc-leaf); stroke-width: 5; }
.lc-art-shed { fill: var(--lc-tomato); stroke: var(--lc-ink); stroke-width: 4; stroke-linejoin: round; }
.lc-art-shed path:nth-child(2) { fill: none; }
.lc-art-shed rect { fill: var(--lc-paper); }
.lc-art-rover { fill: var(--lc-sun); stroke: var(--lc-ink); stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.lc-art-rover circle { fill: var(--lc-lunar-dark); }
.lc-art-rover path:last-child { fill: none; }
.lc-art-sprouts { fill: var(--lc-leaf); stroke: var(--lc-leaf); stroke-width: 4; stroke-linejoin: round; }
.lc-art-frame { fill: none; stroke: var(--lc-ink); stroke-width: 4; }
.lc-specimen {
    position: absolute;
    z-index: 3;
    padding: 9px 12px;
    border: 2px solid var(--lc-ink);
    background: var(--lc-paper);
    box-shadow: 3px 3px 0 var(--lc-ink);
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 8px;
    font-family: var(--lc-mono);
    font-size: 10px;
    transform: rotate(-4deg);
}
.lc-specimen span { grid-row: 1 / 3; align-self: center; color: var(--lc-tomato); font-size: 24px; }
.lc-specimen b { text-transform: uppercase; }
.lc-specimen small { color: var(--lc-ink-soft); }
.lc-specimen-one { right: -28px; bottom: 126px; }
.lc-specimen-two { left: -33px; bottom: 86px; transform: rotate(3deg); }
.lc-hero-plate figcaption { padding-top: 12px; border-top: 1px dashed var(--lc-line); font-family: var(--lc-mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }

.lc-ticker { width: 100%; margin-top: clamp(60px, 8vw, 110px); border-block: 2px solid var(--lc-ink); display: grid; grid-template-columns: repeat(4, 1fr); background: var(--lc-sun); }
.lc-ticker > span { min-height: 66px; padding: 13px clamp(15px, 2.5vw, 38px); display: flex; align-items: center; gap: 15px; font-family: var(--lc-display); font-size: 16px; font-weight: 700; }
.lc-ticker > span + span { border-left: 2px solid var(--lc-ink); }
.lc-ticker b { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: var(--lc-tomato); font-family: var(--lc-mono); font-size: 10px; }

.lc-section { padding: clamp(94px, 11vw, 170px) 0; }
.lc-section-heading {
    margin-bottom: clamp(54px, 7vw, 94px);
    display: grid;
    grid-template-columns: 110px minmax(0, 1.25fr) minmax(270px, .65fr);
    align-items: start;
    gap: clamp(28px, 4vw, 62px);
}
.lc-section-stamp {
    width: 82px;
    height: 82px;
    border: 2px solid var(--lc-tomato);
    border-radius: 50%;
    display: grid;
    place-content: center;
    color: var(--lc-tomato);
    text-align: center;
    transform: rotate(-7deg);
}
.lc-section-stamp > span { font-family: var(--lc-display); font-size: 30px; line-height: .9; }
.lc-section-stamp small { max-width: 62px; font-family: var(--lc-mono); font-size: 8px; line-height: 1.1; letter-spacing: .05em; text-transform: uppercase; }
.lc-kicker { margin-bottom: 16px; color: var(--lc-leaf); }
.lc-section-heading h2,
.lc-rhythm-heading h2,
.lc-catalog-heading h2,
.lc-neighbor-heading h2,
.lc-crater-copy h2,
.lc-join-copy h2,
.lc-faq-heading h2 {
    margin: 0;
    font-family: var(--lc-display);
    font-size: clamp(47px, 5.4vw, 78px);
    font-weight: 400;
    line-height: .98;
    letter-spacing: -.045em;
}
.lc-section-heading > p { margin: 44px 0 0; color: var(--lc-ink-soft); font-size: 17px; }

.lc-homestead { background: var(--lc-paper-light); }
.lc-homestead-layout { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(330px, .78fr); gap: clamp(35px, 5vw, 75px); align-items: start; }
.lc-map-card {
    margin: 0;
    padding: clamp(24px, 3vw, 42px);
    border: 2px solid var(--lc-ink);
    background: var(--lc-paper);
    box-shadow: var(--lc-shadow);
    transform: rotate(-.7deg);
}
.lc-map-label { display: flex; justify-content: space-between; gap: 20px; font-family: var(--lc-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.lc-map-label b { color: var(--lc-tomato); }
.lc-map-card svg { margin: 18px 0; }
.lc-map-contour { fill: rgba(77,134,173,.14); stroke: var(--lc-lunar-dark); stroke-width: 3; stroke-dasharray: 10 7; }
.lc-map-path { fill: none; stroke: var(--lc-tomato); stroke-width: 5; stroke-linecap: round; stroke-dasharray: 2 15; }
.lc-map-dome { fill: rgba(255,255,255,.5); stroke: var(--lc-leaf); stroke-width: 3; }
.lc-map-building { fill: var(--lc-tomato); stroke: var(--lc-ink); stroke-width: 4; stroke-linejoin: round; }
.lc-map-building path { fill: none; }
.lc-map-patches { fill: rgba(120,166,107,.28); stroke: var(--lc-leaf); stroke-width: 3; }
.lc-map-pad { fill: none; stroke: var(--lc-lunar); stroke-width: 4; }
.lc-map-numbers circle { fill: var(--lc-sun); stroke: var(--lc-ink); stroke-width: 2; }
.lc-map-numbers text { fill: var(--lc-ink); font: 700 18px var(--lc-mono); text-anchor: middle; }
.lc-map-card figcaption { padding-top: 16px; border-top: 1px dashed var(--lc-line); color: var(--lc-ink-soft); font-family: var(--lc-display); font-size: 15px; font-style: italic; }

.lc-notes-grid { display: grid; gap: 23px; }
.lc-note-card { position: relative; min-height: 232px; padding: 26px 25px 23px 129px; border: 2px solid var(--lc-ink); box-shadow: 6px 6px 0 var(--lc-ink); }
.lc-note-green { background: #aec39b; transform: rotate(1deg); }
.lc-note-red { background: #e58772; transform: rotate(-1.4deg); }
.lc-note-blue { background: #90bad0; transform: rotate(.8deg); }
.lc-note-index { position: absolute; top: 13px; right: 16px; font-family: var(--lc-mono); font-size: 11px; font-weight: 700; }
.lc-note-card h3 { margin: 0 0 7px; font-family: var(--lc-display); font-size: 28px; line-height: 1.05; }
.lc-note-card p { margin-bottom: 14px; font-size: 14px; line-height: 1.55; }
.lc-note-card small { font-family: var(--lc-mono); font-size: 9px; font-weight: 700; letter-spacing: .05em; }
.lc-note-icon { position: absolute; top: 50%; left: 23px; width: 80px; height: 80px; transform: translateY(-50%); }
.lc-icon-dome { border: 3px solid var(--lc-ink); border-radius: 80px 80px 0 0; border-bottom-width: 9px; }
.lc-icon-dome i { position: absolute; background: var(--lc-ink); }
.lc-icon-dome i:first-child { top: 0; bottom: 0; left: 50%; width: 3px; }
.lc-icon-dome i:nth-child(2) { top: 52%; right: 0; left: 0; height: 3px; }
.lc-icon-dome i:last-child { right: 13px; bottom: 6px; width: 20px; height: 31px; background: var(--lc-paper); border: 3px solid var(--lc-ink); }
.lc-icon-room { border: 3px solid var(--lc-ink); border-radius: 5px; }
.lc-icon-room::before { content: ""; position: absolute; top: -22px; left: 8px; width: 58px; height: 42px; border: 3px solid var(--lc-ink); border-width: 3px 3px 0 0; transform: rotate(-45deg); }
.lc-icon-room i:first-child { position: absolute; right: 8px; bottom: 8px; width: 25px; height: 35px; border: 3px solid var(--lc-ink); }
.lc-icon-room i:nth-child(2), .lc-icon-room i:last-child { position: absolute; bottom: 12px; width: 9px; height: 21px; border-radius: 6px; background: var(--lc-sun); }
.lc-icon-room i:nth-child(2) { left: 10px; }.lc-icon-room i:last-child { left: 22px; }
.lc-icon-bug { width: 70px; height: 58px; left: 29px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-sun); }
.lc-icon-bug::before { content: ""; position: absolute; top: -18px; left: 21px; width: 23px; height: 23px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-paper); }
.lc-icon-bug i { position: absolute; width: 24px; height: 3px; background: var(--lc-ink); }
.lc-icon-bug i:nth-child(1) { top: 9px; left: -18px; transform: rotate(25deg); }.lc-icon-bug i:nth-child(2) { top: 9px; right: -18px; transform: rotate(-25deg); }
.lc-icon-bug i:nth-child(3) { bottom: 7px; left: -17px; transform: rotate(-20deg); }.lc-icon-bug i:nth-child(4) { right: -17px; bottom: 7px; transform: rotate(20deg); }

.lc-rhythm { color: var(--lc-paper-light); background: var(--lc-lunar-dark); }
.lc-rhythm .lc-kicker { color: var(--lc-sun); }
.lc-rhythm-heading { margin-bottom: 58px; display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: clamp(35px, 7vw, 110px); }
.lc-rhythm-heading h2 em { color: #f0c75c; }
.lc-rhythm-heading > p { margin: 0 0 4px; color: rgba(255,250,240,.75); }
.lc-almanac { border: 2px solid var(--lc-ink); background: var(--lc-paper); color: var(--lc-ink); box-shadow: 12px 12px 0 rgba(10,30,39,.5); }
.lc-season-tabs { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 2px solid var(--lc-ink); }
.lc-season-tabs button { min-height: 64px; padding: 12px; border: 0; border-right: 1px solid var(--lc-ink); background: transparent; font-family: var(--lc-mono); font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.lc-season-tabs button:last-child { border-right: 0; }
.lc-season-tabs button[aria-selected="true"] { color: #fff; background: var(--lc-tomato); box-shadow: inset 0 -5px 0 var(--lc-tomato-dark); }
.lc-season-panel { min-height: 450px; padding: clamp(34px, 5vw, 70px); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(45px, 8vw, 120px); align-items: center; }
.lc-season-orbit { position: relative; width: min(100%, 400px); aspect-ratio: 1; margin: auto; border-radius: 50%; background: var(--lc-lunar); transition: background .35s ease; }
.lc-season-panel[data-season-state="bloom"] .lc-season-orbit { background: #648d6d; }
.lc-season-panel[data-season-state="drift"] .lc-season-orbit { background: #c77554; }
.lc-season-panel[data-season-state="hush"] .lc-season-orbit { background: #303f62; }
.lc-orbit-ring { position: absolute; border: 2px dashed rgba(255,250,240,.68); border-radius: 50%; }
.lc-orbit-ring-one { inset: 12%; }.lc-orbit-ring-two { inset: 28%; }
.lc-orbit-moon { position: absolute; top: 4%; left: 50%; width: 72px; height: 72px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-paper); box-shadow: inset -17px -7px 0 var(--lc-paper-deep); transform: translateX(-50%); }
.lc-orbit-sun { position: absolute; right: 8%; bottom: 13%; width: 44px; height: 44px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-sun); }
.lc-orbit-crop { position: absolute; bottom: 19%; left: 50%; width: 104px; height: 117px; transform: translateX(-50%); }
.lc-orbit-crop::before { content: ""; position: absolute; bottom: 0; left: 15px; width: 75px; height: 52px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-paper); }
.lc-orbit-crop i { position: absolute; bottom: 41px; left: 51px; width: 4px; height: 64px; background: var(--lc-ink); transform-origin: bottom; }
.lc-orbit-crop i:nth-child(2) { transform: rotate(-39deg); }.lc-orbit-crop i:nth-child(3) { transform: rotate(39deg); }
.lc-orbit-crop i::after { content: ""; position: absolute; top: -3px; left: -13px; width: 29px; height: 39px; border: 3px solid var(--lc-ink); border-radius: 70% 30% 70% 30%; background: var(--lc-leaf-light); }
.lc-season-number { color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 11px; font-weight: 700; letter-spacing: .12em; }
.lc-season-copy h3 { margin: 18px 0 19px; font-family: var(--lc-display); font-size: clamp(37px, 4vw, 57px); font-weight: 400; line-height: 1; }
.lc-season-copy > p { color: var(--lc-ink-soft); font-size: 17px; }
.lc-season-copy dl { margin: 30px 0 0; border-top: 1px solid var(--lc-line); display: grid; grid-template-columns: 1fr 1fr; }
.lc-season-copy dl div { padding: 16px 15px 0 0; }
.lc-season-copy dl div + div { padding-left: 18px; border-left: 1px solid var(--lc-line); }
.lc-season-copy dt { color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.lc-season-copy dd { margin: 3px 0 0; font-family: var(--lc-display); font-size: 17px; font-weight: 700; }
.lc-day-track { margin: 0; padding: 0; border-top: 2px solid var(--lc-ink); display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; }
.lc-day-track li { position: relative; min-height: 120px; padding: 20px 18px 16px; display: grid; grid-template-columns: auto 1fr; column-gap: 12px; align-content: center; }
.lc-day-track li + li { border-left: 1px solid var(--lc-ink); }
.lc-day-track span { color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 10px; }
.lc-day-track i { width: 16px; height: 16px; border: 2px solid var(--lc-ink); border-radius: 50%; background: var(--lc-sun); }
.lc-day-track li:nth-child(2) i { background: var(--lc-paper-light); }.lc-day-track li:nth-child(3) i { background: var(--lc-lunar); }.lc-day-track li:nth-child(4) i { background: var(--lc-ink); }
.lc-day-track strong, .lc-day-track small { grid-column: 1 / -1; }
.lc-day-track strong { margin-top: 8px; font-family: var(--lc-display); font-size: 18px; }
.lc-day-track small { color: var(--lc-ink-soft); font-size: 12px; }

.lc-crops { background: var(--lc-paper); }
.lc-catalog-heading { margin-bottom: 66px; padding: 21px 0; border-block: 3px double var(--lc-ink); display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(35px, 6vw, 95px); align-items: end; }
.lc-catalog-title > span { display: block; margin-bottom: 25px; color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 11px; font-weight: 700; letter-spacing: .15em; }
.lc-catalog-note { display: grid; grid-template-columns: 82px 1fr; gap: 23px; align-items: center; }
.lc-catalog-note p { margin: 0; color: var(--lc-ink-soft); font-size: 16px; }
.lc-hand-circle { width: 76px; height: 76px; border: 2px solid var(--lc-tomato); border-radius: 50% 45% 55% 48%; display: grid; place-items: center; color: var(--lc-tomato); font-family: var(--lc-display); font-size: 29px; transform: rotate(8deg); }
.lc-seed-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; align-items: stretch; }
.lc-seed-packet { position: relative; min-height: 535px; padding: 23px 22px 18px; border: 2px solid var(--lc-ink); display: flex; flex-direction: column; box-shadow: 7px 7px 0 var(--lc-ink); transition: transform .2s ease; }
.lc-seed-packet:nth-child(odd) { transform: rotate(-.8deg); }.lc-seed-packet:nth-child(even) { transform: translateY(16px) rotate(.8deg); }
.lc-seed-packet:hover { transform: translateY(-8px) rotate(0); }
.lc-packet-red { background: #e87863; }.lc-packet-green { background: #91b582; }.lc-packet-blue { background: #82b2cf; }.lc-packet-cream { background: #f2cf75; }
.lc-packet-top { padding-bottom: 15px; border-bottom: 1px solid currentColor; display: flex; justify-content: space-between; gap: 12px; font-size: 9px; }
.lc-crop-art { position: relative; height: 235px; margin: 19px 0 11px; }
.lc-seed-packet h3 { margin: auto 0 8px; font-family: var(--lc-display); font-size: 31px; line-height: 1; }
.lc-seed-packet p { min-height: 66px; margin-bottom: 15px; font-size: 14px; line-height: 1.55; }
.lc-seed-packet footer { padding-top: 13px; border-top: 1px solid currentColor; display: flex; justify-content: space-between; gap: 15px; font-family: var(--lc-mono); font-size: 9px; font-weight: 700; text-transform: uppercase; }
.lc-turnip span { position: absolute; bottom: 19px; left: 50%; width: 120px; height: 132px; border: 4px solid var(--lc-ink); border-radius: 43% 48% 55% 45%; background: var(--lc-paper-light); transform: translateX(-50%) rotate(5deg); }
.lc-turnip i, .lc-moonpea i { position: absolute; border: 4px solid var(--lc-ink); background: var(--lc-leaf); }
.lc-turnip i { bottom: 132px; left: 50%; width: 65px; height: 91px; border-radius: 70% 20% 70% 25%; transform-origin: bottom; }
.lc-turnip i:first-of-type { transform: translateX(-50%) rotate(-40deg); }.lc-turnip i:nth-of-type(2) { transform: translateX(-50%) rotate(5deg); }.lc-turnip i:nth-of-type(3) { transform: translateX(-50%) rotate(45deg); }
.lc-moonpea span { position: absolute; top: 10px; bottom: 8px; left: 50%; width: 5px; background: var(--lc-ink); transform: translateX(-50%) rotate(-9deg); }
.lc-moonpea i { width: 74px; height: 44px; border-radius: 72% 28% 70% 30%; }
.lc-moonpea i:nth-of-type(1) { top: 45px; left: 50%; transform: translateX(-100%) rotate(22deg); }.lc-moonpea i:nth-of-type(2) { top: 93px; left: 50%; transform: rotate(-17deg); }.lc-moonpea i:nth-of-type(3) { top: 145px; left: 50%; transform: translateX(-100%) rotate(18deg); }
.lc-moonpea b { position: absolute; width: 45px; height: 75px; border: 4px solid var(--lc-ink); border-radius: 50%; background: var(--lc-paper-light); }
.lc-moonpea b:first-of-type { right: 36px; bottom: 17px; transform: rotate(19deg); }.lc-moonpea b:last-of-type { top: 18px; left: 35px; transform: rotate(-23deg); }
.lc-dewberry span { position: absolute; top: 7px; bottom: 10px; left: 50%; width: 4px; background: var(--lc-ink); transform: translateX(-50%); }
.lc-dewberry i { position: absolute; width: 72px; height: 72px; border: 4px solid var(--lc-ink); border-radius: 50% 44% 52% 46%; background: var(--lc-paper-light); box-shadow: inset -15px -11px 0 rgba(77,134,173,.45); }
.lc-dewberry i:nth-of-type(1) { top: 25px; left: 41px; }.lc-dewberry i:nth-of-type(2) { top: 80px; right: 39px; }.lc-dewberry i:nth-of-type(3) { right: 57px; bottom: 9px; }.lc-dewberry i:nth-of-type(4) { bottom: 17px; left: 32px; }
.lc-dewberry b { position: absolute; top: 1px; left: 50%; width: 66px; height: 44px; border: 4px solid var(--lc-ink); border-radius: 60% 10% 70% 10%; background: var(--lc-leaf); transform: rotate(-12deg); }
.lc-chaff span { position: absolute; bottom: 8px; left: 50%; width: 5px; height: 211px; background: var(--lc-ink); }
.lc-chaff i { position: absolute; left: 50%; width: 65px; height: 28px; border: 4px solid var(--lc-ink); border-radius: 75% 20% 75% 20%; background: var(--lc-paper-light); transform-origin: left; }
.lc-chaff i:nth-of-type(1) { top: 18px; transform: rotate(-15deg); }.lc-chaff i:nth-of-type(2) { top: 59px; transform: translateX(-100%) rotate(15deg); }.lc-chaff i:nth-of-type(3) { top: 100px; transform: rotate(-15deg); }.lc-chaff i:nth-of-type(4) { top: 141px; transform: translateX(-100%) rotate(15deg); }.lc-chaff i:nth-of-type(5) { top: 182px; transform: rotate(-15deg); }
.lc-catalog-footnote { max-width: 840px; margin: 70px auto 0; padding: 18px 24px; border: 1px dashed var(--lc-tomato); color: var(--lc-tomato-dark); background: rgba(255,250,240,.5); font-family: var(--lc-display); text-align: center; transform: rotate(-.5deg); }

.lc-neighbors { overflow: hidden; background: var(--lc-leaf); color: var(--lc-paper-light); }
.lc-neighbor-heading { margin-bottom: 65px; display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: clamp(36px, 7vw, 110px); }
.lc-neighbor-heading .lc-kicker { color: var(--lc-sun); }
.lc-neighbor-heading h2 em { color: #ef7766; }
.lc-neighbor-heading > p { margin: 0; color: rgba(255,250,240,.72); }
.lc-postcard-stack { padding: 25px 12px 42px; display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(24px, 3vw, 46px); }
.lc-postcard { min-height: 500px; padding: 18px; border: 2px solid var(--lc-ink); color: var(--lc-ink); background: var(--lc-paper); box-shadow: 10px 10px 0 rgba(16,35,29,.6); }
.lc-postcard:nth-child(1) { transform: rotate(-2deg); }.lc-postcard:nth-child(2) { transform: translateY(20px) rotate(1.3deg); }.lc-postcard:nth-child(3) { transform: rotate(-.6deg); }
.lc-portrait { position: relative; height: 275px; overflow: hidden; border: 2px solid var(--lc-ink); background: var(--lc-lunar); }
.lc-portrait-mara { background: #d87662; }.lc-portrait-ito { background: #789d6d; }.lc-portrait-pip { background: #729fb9; }
.lc-portrait-moon { position: absolute; top: 27px; right: 25px; width: 82px; height: 82px; border: 3px solid var(--lc-ink); border-radius: 50%; background: var(--lc-paper); }
.lc-portrait .lc-head { position: absolute; z-index: 3; bottom: 78px; left: 50%; width: 105px; height: 125px; border: 4px solid var(--lc-ink); border-radius: 47% 47% 42% 42%; background: #c9825f; transform: translateX(-50%); }
.lc-portrait-ito .lc-head { background: #d6a26d; }
.lc-portrait .lc-hair { position: absolute; z-index: 4; bottom: 155px; left: 50%; width: 122px; height: 89px; border: 4px solid var(--lc-ink); border-radius: 70px 70px 25px 25px; background: var(--lc-ink); transform: translateX(-50%) rotate(-3deg); }
.lc-portrait-ito .lc-hair { height: 47px; bottom: 188px; border-radius: 60% 10% 60% 10%; background: #3f372f; transform: translateX(-50%) rotate(8deg); }
.lc-portrait .lc-head::before { content: "••"; position: absolute; top: 48px; left: 25px; width: 55px; font-family: var(--lc-mono); font-size: 20px; letter-spacing: 20px; }
.lc-portrait .lc-head::after { content: "⌣"; position: absolute; top: 65px; left: 41px; font-family: var(--lc-mono); font-size: 23px; }
.lc-portrait .lc-body { position: absolute; z-index: 2; bottom: -58px; left: 50%; width: 230px; height: 160px; border: 4px solid var(--lc-ink); border-radius: 50% 50% 0 0; background: var(--lc-lunar-dark); transform: translateX(-50%); }
.lc-portrait-ito .lc-body { background: var(--lc-tomato); }
.lc-portrait > b { position: absolute; z-index: 5; right: 20px; bottom: 17px; color: var(--lc-sun); font-size: 44px; }
.lc-pip-ear { position: absolute; top: 48px; left: 50%; width: 140px; height: 67px; border: 4px solid var(--lc-ink); border-radius: 44%; background: var(--lc-tomato); transform: translateX(-50%); }
.lc-pip-head { position: absolute; z-index: 2; top: 66px; left: 50%; width: 170px; height: 126px; border: 4px solid var(--lc-ink); border-radius: 45% 45% 38% 38%; background: var(--lc-sun); transform: translateX(-50%); }
.lc-pip-head::before { content: "●    ●"; position: absolute; top: 33px; left: 36px; font-size: 22px; }
.lc-pip-head::after { content: "▰"; position: absolute; top: 69px; left: 65px; }
.lc-pip-body { position: absolute; bottom: -65px; left: 50%; width: 230px; height: 167px; border: 4px solid var(--lc-ink); border-radius: 45% 45% 0 0; background: var(--lc-paper); transform: translateX(-50%); }
.lc-postcard-copy { padding: 19px 7px 4px; }
.lc-postmark { color: var(--lc-tomato); font-size: 9px; }
.lc-postcard-copy h3 { margin: 6px 0 5px; font-family: var(--lc-display); font-size: 34px; }
.lc-postcard-copy p { min-height: 70px; margin-bottom: 15px; color: var(--lc-ink-soft); font-size: 14px; line-height: 1.5; }
.lc-postcard-copy small { padding-top: 12px; border-top: 1px dashed var(--lc-line); display: block; font-size: 11px; }
.lc-postcard-copy small b { color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 9px; }
.lc-friendship-note { max-width: 940px; margin: 70px auto 0; padding-top: 28px; border-top: 1px solid rgba(255,250,240,.3); display: flex; align-items: center; gap: 23px; }
.lc-friendship-note > span { flex: 0 0 auto; width: 74px; height: 74px; border: 2px solid var(--lc-sun); border-radius: 50%; display: grid; place-items: center; color: var(--lc-sun); font-size: 35px; }
.lc-friendship-note p { margin: 0; color: rgba(255,250,240,.77); }.lc-friendship-note strong { color: #fff; }

.lc-craters { position: relative; overflow: hidden; background: var(--lc-paper-light); }
.lc-craters::before { content: ""; position: absolute; top: -230px; right: -150px; width: 600px; height: 600px; border: 2px solid rgba(77,134,173,.15); border-radius: 50%; box-shadow: inset 0 0 0 95px rgba(77,134,173,.04), inset 0 0 0 190px rgba(77,134,173,.04); }
.lc-crater-layout { display: grid; grid-template-columns: .83fr 1.17fr; gap: clamp(55px, 9vw, 145px); align-items: center; }
.lc-crater-copy .lc-kicker { color: var(--lc-lunar-dark); }
.lc-crater-copy > p:not(.lc-kicker) { margin: 28px 0 38px; color: var(--lc-ink-soft); font-size: 18px; }
.lc-expedition-list { margin: 0; padding: 0; border-top: 2px solid var(--lc-ink); list-style: none; }
.lc-expedition-list li { padding: 19px 0; border-bottom: 1px solid var(--lc-line); display: grid; grid-template-columns: 43px 1fr; gap: 13px; }
.lc-expedition-list li > span { color: var(--lc-tomato); font-family: var(--lc-mono); font-size: 11px; font-weight: 700; }
.lc-expedition-list strong, .lc-expedition-list small { display: block; }.lc-expedition-list strong { font-family: var(--lc-display); font-size: 20px; }.lc-expedition-list small { margin-top: 4px; color: var(--lc-ink-soft); font-size: 13px; }
.lc-route-journal { position: relative; max-width: 660px; margin: 0 auto; padding: 35px 32px 25px 54px; border: 2px solid var(--lc-ink); background: var(--lc-paper); box-shadow: 13px 13px 0 var(--lc-lunar); transform: rotate(1deg); }
.lc-journal-ring { position: absolute; z-index: 2; top: 25px; bottom: 25px; left: -16px; display: flex; flex-direction: column; justify-content: space-around; }
.lc-journal-ring i { width: 44px; height: 13px; border: 3px solid var(--lc-ink); border-radius: 10px; background: var(--lc-paper-light); }
.lc-journal-label { display: block; padding-bottom: 13px; border-bottom: 1px dashed var(--lc-line); color: var(--lc-tomato); }
.lc-route-journal svg { margin: 13px 0 2px; }
.lc-journal-contours { fill: none; stroke: var(--lc-lunar); stroke-width: 3; stroke-dasharray: 8 7; opacity: .55; }
.lc-journal-route { fill: none; stroke: var(--lc-tomato); stroke-width: 5; stroke-dasharray: 3 14; stroke-linecap: round; }
.lc-journal-stops circle { fill: var(--lc-sun); stroke: var(--lc-ink); stroke-width: 3; }
.lc-journal-icons { fill: var(--lc-leaf); stroke: var(--lc-ink); stroke-width: 3; stroke-linejoin: round; }
.lc-route-journal text { fill: var(--lc-ink); font: 700 11px var(--lc-mono); letter-spacing: .06em; }
.lc-route-journal figcaption { padding-top: 14px; border-top: 1px dashed var(--lc-line); color: var(--lc-ink-soft); font-family: var(--lc-display); font-size: 15px; font-style: italic; }

.lc-join { padding-top: 30px; background: var(--lc-paper-light); }
.lc-join-card { position: relative; min-height: 540px; padding: clamp(45px, 6vw, 90px); overflow: hidden; border: 3px solid var(--lc-ink); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(350px, .95fr); align-items: center; gap: 60px; color: var(--lc-paper-light); background: var(--lc-lunar-dark); box-shadow: 13px 13px 0 var(--lc-tomato); }
.lc-join-seal { position: absolute; top: 24px; right: 28px; width: 82px; height: 82px; border: 2px solid var(--lc-sun); border-radius: 50%; display: grid; place-content: center; color: var(--lc-sun); text-align: center; transform: rotate(9deg); }
.lc-join-seal span { font-family: var(--lc-display); font-size: 25px; line-height: 1; }.lc-join-seal i { font-style: normal; font-size: 14px; }
.lc-join-copy { position: relative; z-index: 3; }
.lc-join-copy .lc-kicker { color: var(--lc-sun); }
.lc-join-copy h2 em { color: #f07968; }
.lc-join-copy > p:not(.lc-kicker) { max-width: 680px; margin: 28px 0; color: rgba(255,250,240,.78); font-size: 18px; }
.lc-join-copy small { max-width: 590px; margin-top: 23px; display: block; color: rgba(255,250,240,.65); font-size: 11px; }
.lc-join-illustration { position: relative; height: 360px; }
.lc-join-moon { position: absolute; top: 17px; right: 13%; width: 190px; height: 190px; border: 4px solid var(--lc-ink); border-radius: 50%; background: var(--lc-sun); box-shadow: inset -35px -19px 0 #cd9148; }
.lc-join-hill { position: absolute; right: -100px; bottom: -120px; width: 630px; height: 360px; border: 4px solid var(--lc-ink); border-radius: 50% 50% 0 0; background: var(--lc-leaf-light); transform: rotate(-6deg); }
.lc-join-house { position: absolute; z-index: 2; right: 32%; bottom: 55px; width: 135px; height: 105px; border: 4px solid var(--lc-ink); border-radius: 80px 80px 0 0; background: var(--lc-paper); }
.lc-join-house::before { content: ""; position: absolute; right: 16px; bottom: 0; width: 37px; height: 58px; border: 4px solid var(--lc-ink); background: var(--lc-tomato); }
.lc-join-beam { position: absolute; z-index: 3; right: calc(32% + 26px); bottom: 101px; width: 73px; height: 6px; background: var(--lc-sun); box-shadow: 0 17px 0 var(--lc-sun); }
.lc-join-illustration > i { position: absolute; z-index: 4; width: 8px; height: 8px; border-radius: 50%; background: var(--lc-paper-light); }.lc-join-illustration > i:nth-of-type(1) { top: 42px; left: 8%; }.lc-join-illustration > i:nth-of-type(2) { top: 94px; left: 27%; }.lc-join-illustration > i:nth-of-type(3) { top: 19px; right: 2%; }

.lc-faq { background: var(--lc-paper-light); }
.lc-faq-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(55px, 9vw, 140px); align-items: start; }
.lc-faq-heading .lc-section-stamp { float: right; }
.lc-faq-heading .lc-kicker { margin-top: 105px; }
.lc-faq-heading > p:last-child { margin-top: 26px; color: var(--lc-ink-soft); }.lc-faq-heading a { border-bottom: 1px solid currentColor; }
.lc-faq-list { border-top: 2px solid var(--lc-ink); }
.lc-faq-item { border-bottom: 1px solid var(--lc-line); }
.lc-faq-item h3 { margin: 0; }
.lc-faq-item button { width: 100%; padding: 27px 6px; border: 0; display: flex; align-items: center; justify-content: space-between; gap: 25px; background: transparent; font-family: var(--lc-display); font-size: clamp(20px, 2vw, 27px); font-weight: 700; line-height: 1.25; text-align: left; }
.lc-faq-item button i { position: relative; flex: 0 0 auto; width: 30px; height: 30px; border: 2px solid var(--lc-ink); border-radius: 50%; }
.lc-faq-item button i::before, .lc-faq-item button i::after { content: ""; position: absolute; top: 13px; left: 7px; width: 12px; height: 2px; background: var(--lc-ink); transition: transform .2s ease; }.lc-faq-item button i::after { transform: rotate(90deg); }
.lc-faq-item button[aria-expanded="true"] i { background: var(--lc-tomato); }.lc-faq-item button[aria-expanded="true"] i::before, .lc-faq-item button[aria-expanded="true"] i::after { background: #fff; }.lc-faq-item button[aria-expanded="true"] i::after { transform: rotate(0); }
.lc-faq-answer { padding: 0 60px 26px 6px; color: var(--lc-ink-soft); }.lc-faq-answer p { margin: 0; }

.lc-footer { padding: 70px 0 28px; color: var(--lc-paper-light); background: var(--lc-ink); }
.lc-footer-main { padding-bottom: 62px; display: grid; grid-template-columns: .65fr 1fr 1fr; gap: 55px; align-items: start; }
.lc-footer-brand .lc-brand-mark circle { fill: var(--lc-paper); }.lc-footer-brand .lc-brand-mark path:first-of-type { fill: var(--lc-ink); }
.lc-footer-main > p { max-width: 430px; margin: 4px 0 0; color: rgba(255,250,240,.68); font-family: var(--lc-display); font-size: 23px; line-height: 1.4; }
.lc-footer-main nav { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 30px; }
.lc-footer-main nav a { font-size: 14px; font-weight: 800; }.lc-footer-main nav a:hover { color: var(--lc-sun); }
.lc-footer-bottom { padding-top: 25px; border-top: 1px solid rgba(255,250,240,.2); display: grid; grid-template-columns: auto 1fr auto auto; gap: 28px; color: rgba(255,250,240,.6); font-family: var(--lc-mono); font-size: 10px; letter-spacing: .04em; }.lc-footer-bottom span:nth-child(2) { text-align: center; }.lc-footer-bottom a:hover { color: var(--lc-paper-light); }

.lc-register-dialog {
    width: min(900px, calc(100% - 34px));
    max-height: calc(100dvh - 34px);
    padding: 0;
    overflow: auto;
    border: 3px solid var(--lc-ink);
    border-radius: 20px 20px 42px 20px;
    color: var(--lc-ink);
    background: var(--lc-paper-light);
    box-shadow: 15px 15px 0 var(--lc-ink);
}
.lc-register-dialog::backdrop { background: rgba(26,42,35,.76); backdrop-filter: blur(5px); }
.lc-register-dialog.lc-dialog-fallback { position: fixed; z-index: 500; inset: 50% auto auto 50%; transform: translate(-50%, -50%); }
.lc-dialog-layout { min-height: 610px; display: grid; grid-template-columns: .78fr 1.22fr; }
.lc-dialog-art { position: relative; overflow: hidden; color: var(--lc-paper); background: var(--lc-lunar); }
.lc-dialog-art::before { content: ""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px); background-size: 32px 32px; }
.lc-dialog-planet { position: absolute; top: 62px; left: 50%; width: 210px; height: 210px; border: 4px solid var(--lc-ink); border-radius: 50%; background: var(--lc-sun); box-shadow: inset -35px -20px 0 #cf954e; transform: translateX(-50%); }
.lc-dialog-dome { position: absolute; z-index: 2; bottom: 80px; left: 50%; width: 230px; height: 160px; border: 4px solid var(--lc-ink); border-bottom-width: 22px; border-radius: 130px 130px 0 0; background: rgba(255,250,240,.5); transform: translateX(-50%); }
.lc-dialog-dome::before { content: ""; position: absolute; inset: 0 50% 0 auto; width: 4px; background: var(--lc-ink); }.lc-dialog-dome::after { content: ""; position: absolute; top: 50%; right: 0; left: 0; height: 4px; background: var(--lc-ink); }
.lc-dialog-art > i { position: absolute; z-index: 3; bottom: 98px; width: 45px; height: 66px; border: 3px solid var(--lc-ink); border-radius: 80% 20% 70% 30%; background: var(--lc-leaf); }.lc-dialog-art > i:nth-of-type(1) { left: 23%; transform: rotate(-22deg); }.lc-dialog-art > i:nth-of-type(2) { left: 44%; }.lc-dialog-art > i:nth-of-type(3) { right: 19%; transform: rotate(25deg); }
.lc-dialog-art p { position: absolute; top: 18px; left: 22px; font-family: var(--lc-mono); font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.lc-dialog-content { position: relative; padding: clamp(38px, 5vw, 65px); }
.lc-dialog-close { position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; border: 2px solid var(--lc-ink); border-radius: 50%; display: grid; place-items: center; background: var(--lc-paper); font-size: 29px; line-height: 1; }
.lc-dialog-content h2 { max-width: 490px; margin: 14px 45px 13px 0; font-family: var(--lc-display); font-size: clamp(37px, 4.6vw, 54px); font-weight: 400; line-height: 1; letter-spacing: -.035em; }
.lc-dialog-content > p:not(.lc-kicker) { margin-bottom: 28px; color: var(--lc-ink-soft); font-size: 14px; }
.lc-field { margin-bottom: 18px; }
.lc-field label { margin-bottom: 6px; display: block; font-size: 13px; font-weight: 900; }
.lc-field input { width: 100%; min-height: 52px; padding: 11px 13px; border: 2px solid var(--lc-line); border-radius: 6px; background: var(--lc-paper); outline: none; }
.lc-field input:focus { border-color: var(--lc-lunar-dark); box-shadow: 0 0 0 3px rgba(77,134,173,.18); }
.lc-field input[aria-invalid="true"] { border-color: var(--lc-tomato); }
.lc-field-error { min-height: 18px; margin-top: 4px; display: block; color: var(--lc-tomato-dark); font-size: 11px; font-weight: 700; }
.lc-submit { width: 100%; margin-top: 5px; }
.lc-form-privacy { margin: 15px 0 0; color: var(--lc-ink-soft); font-size: 10px; line-height: 1.45; }
.lc-form-status { margin-top: 15px; padding: 13px 15px; border: 1px solid var(--lc-leaf); color: var(--lc-leaf); background: rgba(120,166,107,.14); font-size: 13px; font-weight: 700; }
.lc-form-status[data-status="error"] { border-color: var(--lc-tomato); color: var(--lc-tomato-dark); background: rgba(214,75,61,.09); }
.lc-live-region { position: fixed; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

.lc-js .lc-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.lc-js .lc-reveal.lc-visible { opacity: 1; transform: none; }

@media (max-width: 1180px) {
    :root { --lc-shell: min(100% - 48px, 1080px); }
    .lc-desktop-nav { gap: 18px; }.lc-desktop-nav a { font-size: 12px; }
    .lc-header-join { display: none; }
    .lc-hero-grid { min-height: 670px; grid-template-columns: .9fr 1.1fr; gap: 48px; }
    .lc-hero h1 { font-size: clamp(54px, 7vw, 82px); }
    .lc-note-card { padding-left: 112px; }.lc-note-icon { left: 18px; transform: translateY(-50%) scale(.88); }
    .lc-seed-grid { grid-template-columns: 1fr 1fr; gap: 30px; }.lc-seed-packet { min-height: 510px; }.lc-crop-art { max-width: 280px; width: 100%; margin-inline: auto; }
    .lc-postcard-copy p { min-height: 90px; }
}

@media (max-width: 920px) {
    :root { --lc-shell: calc(100% - 40px); }
    .lc-desktop-nav { display: none; }.lc-header-actions { margin-left: auto; }.lc-header-join { display: inline-flex; }.lc-menu-button { display: grid; }
    .lc-hero-grid { grid-template-columns: 1fr; gap: 70px; }.lc-hero-copy { max-width: 760px; }.lc-hero-plate { max-width: 700px; }
    .lc-ticker { grid-template-columns: 1fr 1fr; }.lc-ticker > span:nth-child(3) { border-left: 0; }.lc-ticker > span:nth-child(n+3) { border-top: 2px solid var(--lc-ink); }
    .lc-section-heading { grid-template-columns: 88px 1fr; }.lc-section-heading > p { grid-column: 2; margin-top: -10px; }
    .lc-homestead-layout { grid-template-columns: 1fr; }.lc-notes-grid { grid-template-columns: repeat(3, 1fr); }.lc-note-card { min-height: 370px; padding: 132px 21px 21px; }.lc-note-icon { top: 26px; left: 50%; transform: translateX(-50%) scale(.88); }.lc-note-card h3 { font-size: 25px; }
    .lc-rhythm-heading, .lc-catalog-heading, .lc-neighbor-heading { grid-template-columns: 1fr; }.lc-rhythm-heading > p, .lc-neighbor-heading > p { max-width: 680px; }.lc-catalog-note { max-width: 680px; }
    .lc-season-panel { grid-template-columns: .85fr 1.15fr; gap: 42px; }.lc-day-track { grid-template-columns: 1fr 1fr; }.lc-day-track li:nth-child(3) { border-left: 0; }.lc-day-track li:nth-child(n+3) { border-top: 1px solid var(--lc-ink); }
    .lc-postcard-stack { padding-inline: 0; grid-template-columns: 1fr 1fr; }.lc-postcard:nth-child(3) { width: calc(50% - 22px); grid-column: 1 / -1; justify-self: center; }.lc-postcard-copy p { min-height: 70px; }
    .lc-crater-layout, .lc-faq-layout { grid-template-columns: 1fr; }.lc-crater-copy { max-width: 730px; }.lc-route-journal { width: min(100%, 660px); }.lc-faq-heading { max-width: 710px; }.lc-faq-heading .lc-kicker { margin-top: 85px; }
    .lc-join-card { grid-template-columns: 1fr; }.lc-join-copy { max-width: 720px; }.lc-join-illustration { position: absolute; right: -50px; bottom: -120px; width: 430px; opacity: .42; }.lc-join-copy { padding-right: 100px; }
    .lc-footer-main { grid-template-columns: 1fr 1fr; }.lc-footer-main nav { grid-column: 1 / -1; }.lc-footer-bottom { grid-template-columns: 1fr 1fr; }.lc-footer-bottom span:nth-child(2) { text-align: right; }
}

@media (max-width: 680px) {
    :root { --lc-shell: calc(100% - 28px); }
    body { font-size: 16px; }
    .lc-header-inner { min-height: 70px; }.lc-brand { font-size: 18px; }.lc-brand-mark { width: 36px; height: 36px; }.lc-header-join { display: none; }.lc-language button { padding-inline: 7px; }
    .lc-hero { padding-top: 45px; }.lc-edition-line { font-size: 10px; }.lc-hero h1 { font-size: clamp(51px, 15vw, 74px); }.lc-hero-lead { font-size: 17px; }.lc-hero-actions { align-items: stretch; flex-direction: column; }.lc-hero-actions .lc-button { width: 100%; }.lc-hero-actions .lc-text-link { align-self: flex-start; }
    .lc-hero-details { grid-template-columns: 1fr; }.lc-hero-details div + div { padding-left: 0; border-left: 0; }.lc-hero-plate { padding: 12px 12px 13px; border-radius: 18px 18px 35px 18px; box-shadow: 8px 8px 0 var(--lc-lunar), 10px 10px 0 var(--lc-ink); }.lc-plate-tab { top: 11px; left: -7px; padding: 6px 9px; gap: 14px; font-size: 8px; }.lc-specimen { display: none; }.lc-hero-plate figcaption { font-size: 8px; }
    .lc-ticker { grid-template-columns: 1fr; }.lc-ticker > span + span { border-top: 2px solid var(--lc-ink); border-left: 0; }
    .lc-section { padding-block: 82px; }.lc-section-heading { grid-template-columns: 1fr; gap: 25px; }.lc-section-heading > p { grid-column: 1; margin: 0; }.lc-section-stamp { width: 69px; height: 69px; }.lc-section-heading h2, .lc-rhythm-heading h2, .lc-catalog-heading h2, .lc-neighbor-heading h2, .lc-crater-copy h2, .lc-join-copy h2, .lc-faq-heading h2 { font-size: clamp(43px, 12vw, 60px); }
    .lc-map-card { padding: 17px; box-shadow: 6px 6px 0 rgba(36,49,43,.14); }.lc-map-label { font-size: 8px; }.lc-notes-grid { grid-template-columns: 1fr; }.lc-note-card { min-height: 225px; padding: 24px 20px 20px 116px; }.lc-note-icon { top: 50%; left: 18px; transform: translateY(-50%) scale(.84); }
    .lc-season-tabs { grid-template-columns: 1fr 1fr; }.lc-season-tabs button:nth-child(2) { border-right: 0; }.lc-season-tabs button:nth-child(n+3) { border-top: 1px solid var(--lc-ink); }.lc-season-panel { padding: 28px 21px 35px; grid-template-columns: 1fr; }.lc-season-orbit { max-width: 300px; }.lc-season-copy h3 { font-size: 39px; }.lc-day-track { grid-template-columns: 1fr; }.lc-day-track li + li { border-top: 1px solid var(--lc-ink); border-left: 0; }
    .lc-catalog-note { grid-template-columns: 62px 1fr; }.lc-hand-circle { width: 60px; height: 60px; }.lc-seed-grid { grid-template-columns: 1fr; }.lc-seed-packet:nth-child(even) { transform: rotate(.8deg); }.lc-seed-packet { max-width: 430px; width: 100%; min-height: 500px; margin-inline: auto; }.lc-catalog-footnote { margin-top: 50px; }
    .lc-postcard-stack { grid-template-columns: 1fr; gap: 30px; }.lc-postcard, .lc-postcard:nth-child(3) { width: min(100%, 430px); min-height: 480px; grid-column: 1; justify-self: center; }.lc-postcard:nth-child(2) { transform: rotate(1.3deg); }.lc-friendship-note { margin-top: 50px; align-items: flex-start; }.lc-friendship-note > span { width: 58px; height: 58px; }
    .lc-route-journal { padding: 27px 13px 18px 30px; box-shadow: 7px 7px 0 var(--lc-lunar); }.lc-journal-ring { left: -9px; }.lc-journal-ring i { width: 25px; height: 9px; border-width: 2px; }.lc-route-journal text { font-size: 9px; }
    .lc-join { padding-top: 0; }.lc-join-card { width: 100%; min-height: 610px; padding: 55px 25px; border-inline: 0; box-shadow: 0 10px 0 var(--lc-tomato); }.lc-join-copy { padding-right: 0; }.lc-join-copy > p:not(.lc-kicker) { font-size: 16px; }.lc-join-illustration { right: -180px; opacity: .26; }.lc-join-seal { width: 68px; height: 68px; top: 18px; right: 18px; }
    .lc-faq-heading .lc-section-stamp { float: none; }.lc-faq-heading .lc-kicker { margin-top: 28px; }.lc-faq-item button { padding-block: 22px; font-size: 20px; }.lc-faq-answer { padding-right: 15px; }
    .lc-footer-main { grid-template-columns: 1fr; gap: 31px; }.lc-footer-main nav { grid-column: 1; }.lc-footer-bottom { grid-template-columns: 1fr; gap: 13px; }.lc-footer-bottom span:nth-child(2) { text-align: left; }
    .lc-dialog-layout { grid-template-columns: 1fr; }.lc-dialog-art { min-height: 165px; }.lc-dialog-planet { top: 14px; width: 135px; height: 135px; }.lc-dialog-dome { bottom: -60px; width: 185px; height: 130px; }.lc-dialog-art > i { display: none; }.lc-dialog-content { padding: 36px 22px 30px; }.lc-dialog-content h2 { font-size: 38px; }.lc-register-dialog { max-height: calc(100dvh - 18px); }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *,
    *::before,
    *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .lc-js .lc-reveal { opacity: 1; transform: none; }
}
