@charset "UTF-8";
:root {
  --color-outline: #DFDBD7;
  --color-outline-variant: #C4B5AD;
  --color-background: #F9F8F7;
  --color-on-background: #423E3A;
  --color-surface: #FFFFFF;
  --color-on-surface: #423E3A;
  --color-on-surface-subdued: #8A8580;
  --color-surface-variant: #EFECE9;
  --color-on-surface-variant: #423E3A;
  --color-primary: #6B5345;
  --color-on-primary: #FFFFFF;
  --color-secondary: #546B5D;
  --color-on-secondary: #FFFFFF;
  --color-supporter: #8F738F;
  --color-on-supporter: #FFFFFF;
  --color-supporter-container: #F3EBF3;
  --color-on-supporter-container: #4A364A;
  --color-info: #4F7959;
  --color-on-info: #FFFFFF;
  --color-info-container: #E8EFEA;
  --color-on-info-container: #2F4D38;
  --color-warning: #C49245;
  --color-on-warning: #FFFFFF;
  --color-warning-container: #FBF2E3;
  --color-on-warning-container: #73521F;
  --color-error: #A63D3D;
  --color-on-error: #FFFFFF;
  --color-error-container: #FCEAEA;
  --color-on-error-container: #7A2626;
}

[data-theme=dark] {
  --color-outline: #423E3A;
  --color-outline-variant: #6B5345;
  --color-background: #1C1917;
  --color-on-background: #F9F8F7;
  --color-surface: #262320;
  --color-on-surface: #F9F8F7;
  --color-on-surface-subdued: #8A8580;
  --color-surface-variant: #302C28;
  --color-on-surface-variant: #DFDBD7;
  --color-primary: #C4B5AD;
  --color-on-primary: #1C1917;
  --color-secondary: #B7C9BE;
  --color-on-secondary: #1C1917;
  --color-supporter: #C2ABC2;
  --color-on-supporter: #1C1917;
  --color-supporter-container: #2D212D;
  --color-on-supporter-container: #F3EBF3;
  --color-info: #8EBC9E;
  --color-on-info: #1C1917;
  --color-info-container: #1D3324;
  --color-on-info-container: #E8EFEA;
  --color-warning: #E8C482;
  --color-on-warning: #1C1917;
  --color-warning-container: #4D391A;
  --color-on-warning-container: #FBF2E3;
  --color-error: #E38F8F;
  --color-on-error: #1C1917;
  --color-error-container: #521D1D;
  --color-on-error-container: #FCEAEA;
}

@font-face {
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/nunito-sans-v19-latin-regular.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/nunito-sans-v19-latin-600.woff2") format("woff2");
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/poppins-v24-latin-700.woff2") format("woff2");
}
:root {
  --font-header: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-body: "Nunito Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

body {
  font-family: var(--font-body);
}

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

html, body {
  margin: 0;
  padding: 0;
  height: auto;
  min-height: 100vh;
  background-color: var(--color-background);
  color: var(--color-on-background);
  font-family: var(--font-body);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

h1 {
  font-size: 2.5rem;
  margin: 0;
  font-family: var(--font-header);
  font-weight: 700;
  margin-bottom: 1.5rem;
  color: var(--color-primary);
}

h2 {
  font-size: 1.75rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  margin-top: 1rem;
  margin-bottom: 1rem;
  color: var(--color-primary);
}

p {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  margin-bottom: 1rem;
  color: var(--color-on-surface);
}

strong {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  margin-right: 0.5rem;
  color: var(--color-secondary);
}

ul {
  list-style: none;
  padding-left: 0;
}
ul li {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}
ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-primary);
  font-weight: bold;
}
ul a {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  color: var(--color-on-surface-subdued);
  text-decoration: none;
  letter-spacing: -0.02em;
}
ul a:focus, ul a:hover {
  outline: none;
  text-decoration: underline;
}
ul a:hover {
  color: var(--color-primary);
}

.container-ffcf527 {
  margin: 0 auto;
  padding: 2rem 1rem;
  max-width: 800px;
}

.section-ffcf527 {
  margin: 5rem 0;
}
.section-ffcf527 h2 {
  letter-spacing: -0.02em;
  border-bottom: 1px solid var(--color-outline);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

.danger-zone-ffcf527 {
  box-shadow: 0 4px 12px color-mix(in srgb, var(--color-secondary) 10%, transparent);
  padding: 0.75rem 2rem;
  border: 1px solid var(--color-error);
  border-radius: 12px;
  background-color: var(--color-error-container);
  color: var(--color-on-error-container);
}
.danger-zone-ffcf527 h2, .danger-zone-ffcf527 strong {
  color: var(--color-error);
}
.danger-zone-ffcf527 p {
  color: var(--color-on-error-container);
}

.form-ffcf527 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 1.5rem;
}

.form-group-ffcf527 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.form-group-ffcf527 label {
  font-size: 0.9rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  color: var(--color-on-surface-subdued);
}
.form-group-ffcf527 select {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  width: 100%;
  padding: 0.75rem;
  border: 1px solid var(--color-outline);
  border-radius: 8px;
  background: var(--color-surface-variant);
  color: var(--color-on-surface-variant);
  transition: border-color 0.2s, box-shadow 0.2s;
  width: 100%;
  padding-right: 2.5rem;
  box-sizing: border-box;
  appearance: auto;
  cursor: pointer;
}
.form-group-ffcf527 select:focus, .form-group-ffcf527 select:focus-visible {
  border-color: var(--color-primary);
  box-shadow: 0 0 5px var(--color-primary);
  outline: none;
}

.feedback-message-ffcf527 {
  font-size: 0.95rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 1rem 1.25rem;
  border-radius: 8px;
  margin-bottom: 1rem;
  background-color: var(--color-surface-variant);
  color: var(--color-secondary);
  border: 1px solid var(--color-secondary);
}
.feedback-message-ffcf527.error-ffcf527 {
  background-color: var(--color-error-container);
  color: var(--color-on-error-container);
  border-color: var(--color-error);
}

.button-ffcf527 {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 2rem;
  padding: 0.75rem 1.5rem;
  width: 16rem;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.1s ease, filter 0.2s ease;
}
.button-ffcf527:active:not(:disabled) {
  transform: scale(0.97);
}
.button-ffcf527:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.button-ffcf527:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.button-ffcf527.button-danger-ffcf527 {
  background-color: var(--color-error);
  color: var(--color-on-error);
}

.container-5b2f1bd {
  margin: 0 auto;
  padding: 2rem 1rem;
  max-width: 800px;
}

.section-5b2f1bd {
  margin: 5rem 0;
}
.section-5b2f1bd h2 {
  letter-spacing: -0.02em;
  border-bottom: 1px solid var(--color-outline);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

.hero-5b2f1bd {
  text-align: center;
  margin: 0 auto;
  padding: 5rem 1rem 2rem;
  max-width: 650px;
}
.hero-5b2f1bd h1 {
  font-size: 4rem;
  margin: 0;
  font-family: var(--font-header);
  font-weight: 700;
  margin-bottom: 1.5rem;
  letter-spacing: -0.03em;
  line-height: 1.1;
  background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero-5b2f1bd p {
  font-size: 1.25rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  color: var(--color-on-surface-subdued);
}

.nav-21631b6 {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  background-color: var(--color-surface);
  border-bottom: 1px solid var(--color-outline);
}

.links-21631b6 {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-items: center;
}
.links-21631b6 a {
  font-size: 1rem;
  margin: 0;
  font-family: var(--font-body);
  font-weight: 600;
  color: var(--color-on-surface-subdued);
  text-decoration: none;
  letter-spacing: -0.02em;
}
.links-21631b6 a:focus, .links-21631b6 a:hover {
  outline: none;
  text-decoration: underline;
}
.links-21631b6 a:hover {
  color: var(--color-primary);
}

.brand-21631b6 {
  font-size: 1.5rem;
  margin: 0;
  font-family: var(--font-header);
  font-weight: 700;
  color: var(--color-primary);
  text-decoration: none;
}

.container-1b51722 {
  margin: 0 auto;
  padding: 2rem 1rem;
  max-width: 800px;
}

.section-1b51722 {
  margin: 5rem 0;
}
.section-1b51722 h2 {
  letter-spacing: -0.02em;
  border-bottom: 1px solid var(--color-outline);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

.container-fa67e67 {
  margin: 0 auto;
  padding: 2rem 1rem;
  max-width: 800px;
}

.section-fa67e67 {
  margin: 5rem 0;
}
.section-fa67e67 h2 {
  letter-spacing: -0.02em;
  border-bottom: 1px solid var(--color-outline);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}
