@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/geist-400.woff2) format("woff2");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/geist-500.woff2) format("woff2");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/geist-600.woff2) format("woff2");
}
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/geist-mono-400.woff2) format("woff2");
}
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/geist-mono-500.woff2) format("woff2");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/geist-700.woff2) format("woff2");
}

body{margin:0;background:#F7F5EF;-webkit-font-smoothing:antialiased}
a{color:#111111}a:hover{color:#1D4ED8}
button{font:inherit;cursor:pointer}input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #2563EB;outline-offset:3px;border-radius:8px}
.s-ease{transition:transform 0.27s cubic-bezier(.22,1,.36,1),opacity 0.1575s ease,background-color 0.135s ease,border-color 0.135s ease,color 0.135s ease}
@keyframes sbob{0%,100%{translate:0 0}50%{translate:0 -9px}}
.s-bob{animation:sbob 1.8s ease-in-out infinite}.s-bob2{animation:sbob 2.25s ease-in-out infinite 0.315s}.s-bob3{animation:sbob 2.07s ease-in-out infinite 0.63s}
@keyframes srise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.s-rise{animation:srise 0.2475s cubic-bezier(.22,1,.36,1) both}.s-d1{animation-delay:0.1s}.s-d2{animation-delay:0.135s}
.s-btn{transition:transform 0.1s ease}.s-btn:hover{transform:translateY(-1px)}
.s-navlink{text-decoration:none;color:#3A3A3A}.s-navlink:hover{color:#111111}
@media (max-width:760px){.s-h1{font-size:48px!important}.s-h2{font-size:34px!important}.s-hide-sm{display:none!important}.s-pad{padding:28px!important}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.community-style-1 { font-weight: 600; font-size: 18px; letter-spacing: -0.02em; }
.community-style-2 { display: flex; align-items: center; gap: 8px; text-decoration: none; color: #111111; }
.community-style-3 { display: flex; gap: 24px; font-size: 14px; }
.community-style-4 { display: flex; align-items: center; gap: 32px; }
.community-style-5 { text-decoration: none; background: #111111; color: #FFFFFF; padding: 11px 18px; border-radius: 999px; font-size: 14px; font-weight: 500; }
.community-style-6 { max-width: 1240px; margin: 0 auto; padding: 14px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.community-style-7 { position: sticky; top: 0; z-index: 10; background: #F7F5EF; border-bottom: 1px solid #E7E3D8; }
.community-style-8 { position: absolute; right: 6%; top: 110px; width: 80px; height: 80px; border-radius: 22px; background: #FFD6E5; box-shadow: inset 0 -6px 0 rgba(0,0,0,0.07); }
.community-style-9 { position: absolute; right: 16%; top: 250px; width: 48px; height: 48px; border-radius: 50%; background: #C9EBC0; box-shadow: inset 0 -5px 0 rgba(0,0,0,0.07); }
.community-style-10 { font-family: 'Geist Mono', monospace; font-size: 12px; letter-spacing: 0.08em; color: #4A4A4A; }
.community-style-11 { margin: 0; font-weight: 600; font-size: 96px; line-height: 0.94; letter-spacing: -0.06em; max-width: 960px; }
.community-style-12 { ; }
.community-style-13 { font-size: 56px; letter-spacing: -0.045em; padding-top: 6px; }
.community-style-14 { display: flex; flex-direction: column; gap: 4px; font-size: 26px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.3; }
.community-style-15 { margin: 0; font-size: 19px; line-height: 1.55; color: #3A3A3A; max-width: 560px; }
.community-style-16 { align-self: flex-start; text-decoration: none; background: #111111; color: #FFFFFF; padding: 16px 24px; border-radius: 999px; font-weight: 500; font-size: 16px; }
.community-style-17 { max-width: 1240px; margin: 0 auto; padding: 96px 24px 88px; display: flex; flex-direction: column; gap: 28px; position: relative; }
.community-style-18 { margin: 0; font-weight: 600; font-size: 72px; line-height: 1; letter-spacing: -0.05em; }
.community-style-19 { margin: 0; font-size: 19px; line-height: 1.6; color: #D6D2C8; max-width: 640px; }
.community-style-20 { font-weight: 600; }
.community-style-21 { font-size: 22px; line-height: 1.35; }
.community-style-22 { display: flex; justify-content: space-between; gap: 16px; align-items: baseline; padding: 18px 0; border-bottom: 1px solid #2A2A2A; flex-wrap: wrap; }
.community-style-23 { display: flex; flex-direction: column; border-top: 1px solid #2A2A2A; }
.community-style-24 { margin: 0; font-size: 19px; line-height: 1.6; color: #D6D2C8; }
.community-style-25 { margin: 0; font-weight: 600; font-size: 44px; letter-spacing: -0.035em; color: #A9D99A; }
.community-style-26 { max-width: 1040px; margin: 0 auto; display: flex; flex-direction: column; gap: 28px; }
.community-style-27 { background: #111111; color: #F5F3EE; padding: 112px 24px; }
.community-style-28 { margin: 0; font-weight: 600; font-size: 56px; line-height: 1.02; letter-spacing: -0.045em; }
.community-style-29 { padding: 22px 24px; border-radius: 22px; font-weight: 600; font-size: 21px; line-height: 1.3; letter-spacing: -0.015em; box-shadow: inset 0 -5px 0 rgba(0,0,0,0.05); }
.community-style-30 { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.community-style-31 { margin: 0; font-size: 20px; line-height: 1.5; font-weight: 500; }
.community-style-32 { max-width: 1240px; margin: 0 auto; padding: 112px 24px; display: flex; flex-direction: column; gap: 36px; }
.community-style-33 { margin: 0; font-size: 18px; line-height: 1.65; color: #2A2A2A; }
.community-style-34 { margin: 0; font-weight: 600; font-size: 24px; letter-spacing: -0.02em; }
.community-style-35 { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.community-style-36 { border-radius: 22px; background: #C9EBC0; padding: 22px 26px; font-weight: 600; font-size: 24px; letter-spacing: -0.02em; }
.community-style-37 { border-radius: 22px; background: #EDEAE1; padding: 22px 26px; font-weight: 600; font-size: 24px; letter-spacing: -0.02em; }
.community-style-38 { border-radius: 22px; background: #CFE3FA; padding: 22px 26px; font-weight: 600; font-size: 24px; letter-spacing: -0.02em; }
.community-style-39 { flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.community-style-40 { max-width: 1240px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 56px; align-items: center; }
.community-style-41 { background: #FFFFFF; border-top: 1px solid #E7E3D8; border-bottom: 1px solid #E7E3D8; padding: 104px 24px; }
.community-style-42 { font-weight: 600; font-size: 22px; }
.community-style-43 { padding: 4px 10px; border-radius: 999px; background: #EDEAE1; font-family: 'Geist Mono', monospace; font-size: 11px; }
.community-style-44 { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 22px 26px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E7E3D8; }
.community-style-45 { padding: 4px 10px; border-radius: 999px; background: #E3EDFF; color: #1D4ED8; font-family: 'Geist Mono', monospace; font-size: 11px; }
.community-style-46 { padding: 4px 10px; border-radius: 999px; background: #FFF1DD; color: #9A3412; font-family: 'Geist Mono', monospace; font-size: 11px; }
.community-style-47 { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 22px 26px; border-radius: 22px; background: #FFFFFF; border: 1.5px dashed #FDBA74; }
.community-style-48 { font-weight: 600; font-size: 18px; padding: 6px 4px; }
.community-style-49 { max-width: 1240px; margin: 0 auto; padding: 104px 24px; display: flex; flex-wrap: wrap; gap: 56px; align-items: flex-start; }
.community-style-50 { position: absolute; left: -10%; right: -10%; bottom: -260px; height: 380px; border-radius: 50%; background: #A9D99A; }
.community-style-51 { margin: 0; font-size: 17px; line-height: 1.6; color: #1F1F1F; max-width: 440px; }
.community-style-52 { display: flex; flex-wrap: wrap; gap: 32px; justify-content: space-between; align-items: flex-end; }
.community-style-53 { font-family: 'Geist Mono', monospace; font-size: 12px; letter-spacing: 0.08em; color: #111111; }
.community-style-54 { font-family: 'Geist Mono', monospace; font-size: 15px; font-weight: 500; }
.community-style-55 { font-size: 16px; color: #3A3A3A; line-height: 1.5; }
.community-style-56 { flex: 1 1 340px; min-width: 0; border-radius: 28px; background: #FFFFFF; padding: 28px; display: flex; flex-direction: column; gap: 12px; }
.community-style-57 { font-family: 'Geist Mono', monospace; font-size: 12px; letter-spacing: 0.08em; color: #B8B4AA; }
.community-style-58 { font-size: 16px; color: #D6D2C8; line-height: 1.5; }
.community-style-59 { flex: 1 1 340px; min-width: 0; border-radius: 28px; background: #111111; color: #F5F3EE; padding: 28px; display: flex; flex-direction: column; gap: 12px; }
.community-style-60 { display: flex; flex-wrap: wrap; gap: 20px; }
.community-style-61 { font-weight: 600; font-size: 22px; letter-spacing: -0.015em; }
.community-style-62 { max-width: 1240px; margin: 0 auto; display: flex; flex-direction: column; gap: 36px; position: relative; }
.community-style-63 { background: #CFE3FA; padding: 104px 24px; position: relative; overflow: hidden; }
.community-style-64 { flex: 1 1 460px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.community-style-65 { font-weight: 600; font-size: 44px; letter-spacing: -0.04em; line-height: 1; }
.community-style-66 { font-size: 14px; font-weight: 500; }
.community-style-67 { flex: 1 1 160px; border-radius: 24px; background: #C9EBC0; padding: 26px; display: flex; flex-direction: column; gap: 6px; box-shadow: inset 0 -6px 0 rgba(0,0,0,0.05); }
.community-style-68 { flex: 1 1 160px; border-radius: 24px; background: #F6E7B8; padding: 26px; display: flex; flex-direction: column; gap: 6px; box-shadow: inset 0 -6px 0 rgba(0,0,0,0.05); }
.community-style-69 { flex: 1 1 360px; min-width: 0; display: flex; gap: 12px; flex-wrap: wrap; }
.community-style-70 { max-width: 1240px; margin: 0 auto; padding: 104px 24px; display: flex; flex-wrap: wrap; gap: 48px; align-items: center; }
.community-style-71 { margin: 0; font-size: 16px; line-height: 1.6; color: #4A4A4A; }
.community-style-72 { flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.community-style-73 { font-family: 'Geist Mono', monospace; font-size: 12px; }
.community-style-74 { font-weight: 600; font-size: 18px; line-height: 1.35; }
.community-style-75 { border-radius: 22px; padding: 22px; display: flex; flex-direction: column; gap: 8px; min-height: 110px; }
.community-style-76 { flex: 1.2 1 460px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.community-style-77 { max-width: 1240px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 56px; align-items: flex-start; }
.community-style-78 { flex: none; width: 32px; font-family: 'Geist Mono', monospace; font-size: 13px; color: #6B6B6B; }
.community-style-79 { font-weight: 600; font-size: 24px; line-height: 1.3; letter-spacing: -0.02em; }
.community-style-80 { display: flex; gap: 20px; align-items: baseline; padding: 20px 0; border-top: 1px solid #E7E3D8; }
.community-style-81 { display: flex; flex-direction: column; }
.community-style-82 { max-width: 1040px; margin: 0 auto; padding: 104px 24px; display: flex; flex-direction: column; gap: 28px; }
.community-style-83 { position: absolute; left: 7%; top: 20%; width: 64px; height: 64px; border-radius: 18px; background: #FFB067; box-shadow: inset 0 -6px 0 rgba(0,0,0,0.08); }
.community-style-84 { position: absolute; right: 8%; bottom: 18%; width: 80px; height: 80px; border-radius: 50%; background: #9CC3FF; box-shadow: inset 0 -6px 0 rgba(0,0,0,0.08); }
.community-style-85 { margin: 0; font-weight: 600; font-size: 64px; line-height: 1; letter-spacing: -0.05em; max-width: 820px; position: relative; }
.community-style-86 { margin: 0; font-size: 18px; line-height: 1.6; color: #2A2A2A; max-width: 620px; position: relative; }
.community-style-87 { position: relative; text-decoration: none; background: #111111; color: #FFFFFF; padding: 16px 26px; border-radius: 999px; font-weight: 500; font-size: 16px; }
.community-style-88 { max-width: 1240px; margin: 0 auto; border-radius: 32px; background: #FFD6E5; padding: 88px 32px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 20px; position: relative; overflow: hidden; }
.community-style-89 { padding: 0 24px 72px; }
.community-style-90 { font-weight: 600; font-size: 17px; }
.community-style-91 { display: flex; align-items: center; gap: 8px; }
.community-style-92 { font-size: 14px; color: #4A4A4A; }
.community-style-93 { display: flex; flex-direction: column; gap: 10px; max-width: 280px; }
.community-style-94 { font-family: 'Geist Mono', monospace; font-size: 11px; letter-spacing: 0.08em; color: #6B6B6B; }
.community-style-95 { display: flex; flex-direction: column; gap: 10px; }
.community-style-96 { display: flex; gap: 56px; flex-wrap: wrap; font-size: 14px; }
.community-style-97 { display: flex; flex-wrap: wrap; gap: 40px; justify-content: space-between; }
.community-style-98 { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-top: 20px; border-top: 1px solid #E7E3D8; font-size: 13px; color: #4A4A4A; }
.community-style-99 { max-width: 1240px; margin: 0 auto; padding: 48px 24px 40px; display: flex; flex-direction: column; gap: 36px; }
.community-style-100 { border-top: 1px solid #E7E3D8; }
.community-style-101 { font-family: 'Geist', system-ui, sans-serif; color: #111111; background: #F7F5EF; min-height: 100dvh; }
html {scroll-behavior:smooth;scroll-padding-top:90px;} .skip-link{position:fixed;left:16px;top:-60px;z-index:30;padding:12px 18px;background:white;} .skip-link:focus{top:12px;} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
