:root {
  --font-family: "Inter", sans-serif;
  --font-size-base: 16px;
  --line-height-base: 1.84;

  --max-w: 900px;
  --space-x: 1.55rem;
  --space-y: 1.5rem;
  --gap: 0.92rem;
  --space-section-y: calc(var(--space-y) * 2.4);
  --space-section-x: var(--space-x);
  --space-block: calc(var(--gap) * 1.5);
  --space-card: calc(var(--space-y) * .75);
  --font-size-sm: calc(var(--font-size-base) * .875);
  --font-size-md: var(--font-size-base);
  --font-size-lg: calc(var(--font-size-base) * 1.125);
  --font-size-h3: calc(var(--font-size-base) * 1.35);
  --font-size-h2: calc(var(--font-size-base) * 2);
  --font-size-h1: calc(var(--font-size-base) * 2.65);
  --motion-distance: calc(var(--gap) * var(--random-number));

  --radius-xl: 0.71rem;
  --radius-lg: 0.59rem;
  --radius-md: 0.36rem;
  --radius-sm: 0.28rem;

  --shadow-sm: 0 1px 1px rgba(0,0,0,0.04);
  --shadow-md: 0 4px 10px rgba(0,0,0,0.05);
  --shadow-lg: 0 10px 28px rgba(0,0,0,0.06);

  --overlay: rgba(15, 23, 42, 0.6);
  --anim-duration: 280ms;
  --anim-ease: ease-in-out;
  --random-number: 2;

  --brand: #2D6A4F;
  --brand-contrast: #FFFFFF;
  --accent: #E76F51;
  --accent-contrast: #FFFFFF;

  --neutral-0: #FFFFFF;
  --neutral-100: #F1F5F4;
  --neutral-300: #D1DCD9;
  --neutral-600: #5C6B66;
  --neutral-800: #2D3A36;
  --neutral-900: #1B2622;

  --page-bg: #F7F9F8;
  --page-fg: #1B2622;
  --muted-bg: #E8F0EC;
  --muted-fg: #2D3A36;
  --card-bg: #FFFFFF;
  --card-fg: #1B2622;
  --card-border: #D1DCD9;
  --inverse-bg: #1B2622;
  --inverse-fg: #F7F9F8;
  --primary-bg: #2D6A4F;
  --primary-fg: #FFFFFF;
  --primary-hover: #245A42;
  --accent-bg: #E76F51;
  --accent-fg: #FFFFFF;
  --accent-hover: #D65A3B;
  --gradient-hero-bg: linear-gradient(135deg, #2D6A4F 0%, #40916C 100%);
  --gradient-hero-fg: #FFFFFF;
  --gradient-accent-bg: linear-gradient(135deg, #E76F51 0%, #F4A261 100%);
  --gradient-accent-fg: #FFFFFF;

  --ring: #2D6A4F;

  --link: #2D6A4F;
  --link-hover: #E76F51;

  --btn-ghost-bg: transparent;
  --btn-ghost-bg-hover: color-mix(in srgb, currentColor 10%, transparent);
  --input-placeholder: rgba(255,255,255,0.55);
}
body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
*{box-sizing:border-box;}
a{color:inherit;}
.btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
.btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
.btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
.btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.text-primary{color:var(--primary-bg)!important;}
.border-primary{border-color:var(--primary-bg)!important;}
.bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
.bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}

.site-header {
        background-color: var(--page-bg);
        border-bottom: 1px solid var(--card-border);
        width: 100%;
    }

    .header-wrapper {
        max-width: var(--max-w);
        margin: 0 auto;
        padding: var(--space-y) var(--space-x);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--gap);
        position: relative;
    }

    .logo {
        font-size: var(--font-size-h3);
        font-weight: 700;
        color: var(--page-fg);
        text-decoration: none;
        white-space: nowrap;
        transition: color var(--anim-duration) var(--anim-ease);
    }

    .logo:hover {
        color: var(--link-hover);
    }

    .main-nav {
        display: flex;
        align-items: center;
    }

    .nav-list {
        display: flex;
        list-style: none;
        margin: 0;
        padding: 0;
        gap: calc(var(--gap) * 1.5);
    }

    .nav-link {
        font-size: var(--font-size-md);
        color: var(--page-fg);
        text-decoration: none;
        padding: 0.5rem 0.25rem;
        position: relative;
        transition: color var(--anim-duration) var(--anim-ease);
        opacity: 0.85;
    }

    .nav-link:hover,
    .nav-link.active {
        color: var(--link-hover);
        opacity: 1;
    }

    .nav-link.active::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 2px;
        background-color: var(--accent-bg);
        border-radius: var(--radius-sm);
    }

    .cta-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.625rem 1.5rem;
        background-color: var(--primary-bg);
        color: var(--primary-fg);
        font-size: var(--font-size-sm);
        font-weight: 600;
        text-decoration: none;
        border-radius: var(--radius-md);
        transition: background-color var(--anim-duration) var(--anim-ease);
        white-space: nowrap;
    }

    .cta-button:hover {
        background-color: var(--primary-hover);
    }

    .burger-menu {
        display: none;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 44px;
        height: 44px;
        padding: 8px;
        background: none;
        border: none;
        cursor: pointer;
        gap: 5px;
        border-radius: var(--radius-sm);
        transition: background-color var(--anim-duration) var(--anim-ease);
    }

    .burger-menu:hover {
        background-color: var(--muted-bg);
    }

    .burger-line {
        display: block;
        width: 24px;
        height: 2px;
        background-color: var(--page-fg);
        border-radius: var(--radius-sm);
        transition: transform var(--anim-duration) var(--anim-ease), opacity var(--anim-duration) var(--anim-ease);
    }

    .burger-menu.open .burger-line:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }

    .burger-menu.open .burger-line:nth-child(2) {
        opacity: 0;
    }

    .burger-menu.open .burger-line:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }

    @media (max-width: 767px) {
        .header-wrapper {
            flex-wrap: wrap;
            padding: calc(var(--space-y) * 0.75) var(--space-x);
        }

        .main-nav {
            display: none;
            width: 100%;
            order: 3;
            padding-top: var(--space-y);
        }

        .main-nav.open {
            display: block;
        }

        .nav-list {
            flex-direction: column;
            gap: var(--space-y);
            padding: var(--space-y) 0;
            border-top: 1px solid var(--card-border);
        }

        .nav-link {
            display: block;
            font-size: var(--font-size-lg);
            padding: 0.5rem 0;
        }

        .nav-link.active::after {
            display: none;
        }

        .cta-button {
            display: none;
        }

        .burger-menu {
            display: flex;
        }
    }

.site-footer {
  background: var(--inverse-bg, #1a2332);
  color: var(--inverse-fg, #f5f7fa);
  padding: var(--space-section-y, 3rem) 0 0;
  font-family: var(--font-family, 'Inter', system-ui, sans-serif);
  font-size: var(--font-size-base, 1rem);
  line-height: var(--line-height-base, 1.6);
}

.footer-container {
  max-width: var(--max-w, 1200px);
  margin: 0 auto;
  padding: 0 var(--space-x, 1.5rem);
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1.2fr;
  gap: var(--gap, 2rem);
  padding-bottom: var(--space-section-y, 3rem);
}

.footer-brand {
  display: flex;
  flex-direction: column;
  gap: var(--space-block, 1rem);
}

.footer-logo {
  font-size: var(--font-size-h2, 1.75rem);
  font-weight: 700;
  color: var(--inverse-fg, #f5f7fa);
  text-decoration: none;
  letter-spacing: -0.02em;
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-logo:hover {
  color: var(--accent-fg, #f0b429);
}

.footer-tagline {
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(245, 247, 250, 0.7);
  max-width: 30ch;
  margin: 0;
}

.footer-nav {
  display: flex;
  flex-direction: column;
  gap: var(--space-block, 1rem);
}

.footer-heading {
  font-size: var(--font-size-md, 1.125rem);
  font-weight: 600;
  color: var(--inverse-fg, #f5f7fa);
  margin: 0 0 var(--space-block, 1rem);
}

.footer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.footer-menu a {
  color: rgba(245, 247, 250, 0.8);
  text-decoration: none;
  font-size: var(--font-size-base, 1rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-menu a:hover {
  color: var(--accent-fg, #f0b429);
}

.footer-legal {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: var(--space-block, 1rem);
}

.footer-legal a {
  color: rgba(245, 247, 250, 0.6);
  text-decoration: none;
  font-size: var(--font-size-sm, 0.875rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-legal a:hover {
  color: var(--accent-fg, #f0b429);
}

.footer-contact {
  display: flex;
  flex-direction: column;
  gap: var(--space-block, 1rem);
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.contact-item {
  margin: 0;
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(245, 247, 250, 0.8);
}

.contact-item a {
  color: rgba(245, 247, 250, 0.8);
  text-decoration: none;
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.contact-item a:hover {
  color: var(--accent-fg, #f0b429);
}

.footer-disclaimer {
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(245, 247, 250, 0.5);
  line-height: 1.5;
  margin: 0;
  border-top: 1px solid rgba(245, 247, 250, 0.1);
  padding-top: var(--space-block, 1rem);
}

.footer-bottom {
  border-top: 1px solid rgba(245, 247, 250, 0.1);
  padding: var(--space-block, 1rem) 0;
  text-align: center;
}

.footer-bottom p {
  margin: 0;
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(245, 247, 250, 0.5);
}

@media (max-width: 768px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: var(--space-section-y, 3rem);
  }
}

.cookies{position:fixed;left:var(--space-x);right:var(--space-x);bottom:var(--space-y);z-index:1200;}

    .cookies .content{max-width:min(920px,100%);margin:0 auto;padding:calc(var(--space-y) * 0.9) var(--space-x);border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--accent-bg),var(--primary-hover));color:var(--accent-fg);box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1fr auto;gap:var(--gap);align-items:center;}

    .cookies .text strong{display:block;margin-bottom:4px;}

    .cookies .text p{margin:0;opacity:0.95;}

    .cookies .actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}

    .cookies .actions button{border:1px solid color-mix(in srgb, currentColor 35%, transparent);background:color-mix(in srgb, currentColor 18%, transparent);color:inherit;border-radius:var(--radius-sm);padding:8px 12px;cursor:pointer;}

    .cookies .actions button.cookie-accept{background:var(--primary-fg);border-color:transparent;font-weight:700;color:var(--primary-bg);}

    @media (max-width: 760px){.cookies .content{grid-template-columns:1fr;}

        .cookies .actions{justify-content:flex-start;}
    }

.language-switcher{position:fixed;left:clamp(12px,2vw,22px);top:clamp(12px,2vw,22px);z-index:99999;font-family:var(--font-family,system-ui,sans-serif)}
.language-switcher .switch{position:relative;display:inline-flex;align-items:center;justify-content:start}
.language-switcher .trigger{min-width:3rem;height:2.25rem;padding:0 .85rem;border:1px solid rgba(10,15,26,.14);border-radius:999px;background:#fff;color:#0a0f1a;box-shadow:0 8px 24px rgba(0,0,0,.12);font:700 .78rem/1 var(--font-family,system-ui,sans-serif);letter-spacing:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.language-switcher .options{--ls-shift:-.25rem;position:absolute;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;gap:2px;min-width:100%;width:max-content;max-width:min(12rem,calc(100vw - 24px));max-height:0;overflow:hidden;opacity:0;pointer-events:none;padding:0;border:1px solid transparent;border-radius:10px;background:#fff;color:#0a0f1a;box-shadow:0 8px 24px rgba(0,0,0,.12);transition:max-height var(--anim-duration,.22s) var(--anim-ease,ease),opacity var(--anim-duration,.22s) var(--anim-ease,ease),padding var(--anim-duration,.22s) var(--anim-ease,ease),border-color var(--anim-duration,.22s) var(--anim-ease,ease),transform var(--anim-duration,.22s) var(--anim-ease,ease);transform:translateY(var(--ls-shift))}
.language-switcher .options.open{max-height:min(15rem,70vh);overflow:auto;opacity:1;pointer-events:auto;padding:4px;border-color:rgba(10,15,26,.14);transform:translateY(0)}
.language-switcher .options a,.language-switcher .options button{display:flex;align-items:center;justify-content:center;min-height:2rem;padding:.45rem .75rem;border:0;border-radius:6px;background:transparent;color:inherit;text-decoration:none;font:700 .78rem/1 var(--font-family,system-ui,sans-serif);white-space:nowrap;cursor:pointer;text-align:center}
.language-switcher .options a:hover,.language-switcher .options button:hover{background:#f4f5f7}
@media(max-width:480px){.language-switcher{right:12px;left:auto;top:auto;bottom:12px;transform:none}.language-switcher .options{right:0;left:auto;bottom:calc(100% + 6px);top:auto;transform:translateY(.25rem)}.language-switcher .options.open{transform:translateY(0)}}

.welcome___entry{padding:var(--space-section-y) var(--space-section-x);background:var(--accent-bg);color:var(--accent-fg)}
.welcome___entry .wrap{max-width:var(--max-w);margin:0 auto;display:flex;flex-wrap:wrap;gap:var(--space-y);align-items:stretch}
.welcome___entry .wrap>*{min-width:0;flex:1 1 12rem}
.welcome___entry .brief{background:color-mix(in srgb,var(--muted-bg) 72%,transparent);border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:var(--radius-lg);padding:var(--gap)}
.welcome___entry h1{margin:0;color:var(--page-fg);font-size:var(--font-size-h2);line-height:1.08}
.welcome___entry .brief p{margin:var(--space-y) 0 0;line-height:var(--line-height-base)}
.welcome___entry a{display:inline-flex;margin-top:var(--space-y);border-radius:var(--radius-sm);background:var(--primary-bg);color:var(--primary-fg);padding:var(--space-card) var(--space-y);text-decoration:none}
.welcome___entry .screen{display:block;width:100%;height:100%;min-height:calc(var(--space-block)*5);object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
.welcome___entry ul{flex:2 1 26rem;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-y)}
.welcome___entry ul>*{min-width:0;flex:1 1 16rem}
.welcome___entry li{padding-top:var(--space-y);border-top:1px solid color-mix(in srgb,currentColor 24%,transparent);line-height:var(--line-height-base)}
.welcome___entry li span{display:block;margin-bottom:var(--space-card);color:var(--primary-bg);font-size:var(--font-size-sm)}
@media(max-width:820px){.welcome___entry .wrap,.welcome___entry ul{display:block}.welcome___entry .screen,.welcome___entry li{margin-top:var(--space-y)}}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.mission-_spine{
  background:#f2f2f2;
  color:#0f1720;
  padding:var(--space-section-y) var(--space-section-x);
}
.mission-_spine .wrap{
  max-width:var(--max-w);
  margin:0 auto;
}
.mission-_spine .narrow{
  max-width:36rem;
}
.mission-_spine h2{
  margin:0;
  font-size:var(--font-size-h2);
  line-height:1.08;
  letter-spacing:0;
}
.mission-_spine .narrow p{
  margin:var(--space-y) 0 0;
  color:#46505c;
  font-size:var(--font-size-lg);
  line-height:var(--line-height-base);
}
.mission-_spine .group{
  margin-top:var(--space-block);
  display:flex;
  flex-wrap:wrap;
  gap:var(--gap);
}
.mission-_spine .item{
  flex:1 1 15rem;
  min-width:0;
  padding:var(--space-y) 0;
}
.mission-_spine .item span{
  display:block;
  font-weight:700;
}
.mission-_spine .item p{
  margin:.5rem 0 0;
  color:#4b5563;
  line-height:var(--line-height-base);
}
@media (max-width:560px){
  .mission-_spine .group{display:block}
  .mission-_spine .item + .item{border-top:1px solid #d7dbe0}
}

.native_-suggestions{background:#ffffff;color:#0a0f1a;padding:var(--space-section-y) var(--space-section-x)}
.native_-suggestions .wrap{max-width:min(var(--max-w),66rem);margin:0 auto}
.native_-suggestions .editorial{display:flex;flex-direction:column;gap:var(--space-block)}
.native_-suggestions .note{margin:0;max-width:32rem;color:#475467;line-height:1.65}
.native_-suggestions h2{margin:0;max-width:15ch;font-size:clamp(var(--font-size-h2),6vw,var(--font-size-h1));line-height:1.04;letter-spacing:0}
.native_-suggestions .image{display:block;width:min(100%,46rem);height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg)}
.native_-suggestions .quotes{display:flex;flex-direction:column;gap:var(--space-y)}
.native_-suggestions .quotes div{max-width:44rem}
.native_-suggestions .quotes div:nth-child(even){margin-left:auto}
.native_-suggestions .quotes p{margin:0;line-height:1.65}
.native_-suggestions span{display:block;margin-top:var(--space-card);color:#475467}
@media(max-width:680px){.native_-suggestions .quotes div:nth-child(even){margin-left:0}}

.contributors_-thread {
  background: var(--page-bg);
  color: var(--page-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.contributors_-thread .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(14rem, .34fr) minmax(0, 1fr);
  gap: var(--gap);
}
.contributors_-thread h2,
.contributors_-thread h3,
.contributors_-thread p { margin: 0; }
.contributors_-thread h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.contributors_-thread h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.contributors_-thread p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.contributors_-thread .frame {
  display: grid;
  gap: var(--space-y);
  align-content: start;
  padding: var(--space-block);
  border-radius: var(--radius-xl);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}
.contributors_-thread .frame a {
  width: fit-content;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
.contributors_-thread .directory {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-card);
}
.contributors_-thread [data-block] {
  min-height: 13rem;
  display: grid;
  gap: var(--space-card);
  align-content: start;
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
}
.contributors_-thread .meta { color: var(--muted-fg); font-size: var(--font-size-sm); }
@media (max-width: 820px) {
  .contributors_-thread .wrap,
  .contributors_-thread .directory { grid-template-columns: 1fr; }
}

.unit___persona {
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.unit___persona .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
}
.unit___persona .panorama {
  display: block;
  width: 100%;
  aspect-ratio: 21 / 8;
  object-fit: cover;
  border-radius: var(--radius-xl);
  margin-bottom: var(--space-block);
}
.unit___persona h2,
.unit___persona p { margin: 0; }
.unit___persona .lower {
  display:flex;flex-wrap:wrap;

  gap: var(--gap);
}
.unit___persona h2 {
  font-size: var(--font-size-h1);
  line-height: 1;
  max-width: 12ch;
}
.unit___persona .notes {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-y) var(--gap);
}
.unit___persona .notes p {
  flex: 1 1 min(100%,17rem);
  line-height: var(--line-height-base);
  margin: 0;
}
.unit___persona strong {
  display: block;
  margin-bottom: calc(var(--space-card) * .35);
}
@media (max-width: 820px) {
  .unit___persona .panorama { aspect-ratio: 16 / 10; }
}
.unit___persona .lower>*{min-width:0;flex:1 1 18rem}

.answers_-field{background:#f7f9f8;color:#1b2622;padding:var(--space-section-y) var(--space-section-x);}
.answers_-field .wrap{max-width:var(--max-w);margin:0 auto;display:flex;align-items:flex-start;gap:var(--space-block);flex-wrap:wrap;}
.answers_-field .text{flex:0 1 30rem;min-width:0;}
.answers_-field h2{font-size:var(--font-size-h2);line-height:1.08;margin:0 0 var(--space-y);}
.answers_-field .text p{font-size:var(--font-size-lg);line-height:var(--line-height-base);margin:0 0 var(--space-block);color:#5c6b66;}
.answers_-field .image{display:block;width:100%;height:auto;aspect-ratio:5/3;object-fit:cover;border-radius:var(--radius-md);}
.answers_-field .questions{flex:1 1 32rem;min-width:0;display:flex;flex-direction:column;gap:var(--space-y);}
.answers_-field .item{background:#ffffff;color:#1b2622;border:1px solid #d1dcd9;border-radius:var(--radius-xl);overflow:hidden;}
.answers_-field .item:nth-child(3n+1){margin-left:var(--space-y);}
.answers_-field .item:nth-child(3n+2){margin-right:var(--space-y);}
.answers_-field summary{list-style:none;cursor:pointer;padding:var(--space-card) var(--gap);font-size:var(--font-size-lg);display:flex;justify-content:space-between;gap:var(--space-y);}
.answers_-field summary::-webkit-details-marker{display:none;}
.answers_-field summary::after{content:"";width:1rem;height:1px;background:currentColor;box-shadow:0 .32rem 0 currentColor;transition:box-shadow var(--anim-duration) var(--anim-ease);flex:0 0 auto;margin-top:.58em;}
.answers_-field details[open] summary::after{box-shadow:0 0 0 currentColor;}
.answers_-field .answer{max-height:0;overflow:hidden;opacity:.3;transition:max-height var(--anim-duration) var(--anim-ease),opacity var(--anim-duration) var(--anim-ease);}
.answers_-field details[open] .answer{max-height:17rem;opacity:1;}
.answers_-field .answer p{margin:0;padding:0 var(--gap) var(--space-card);line-height:var(--line-height-base);color:#5c6b66;}
@media (max-width:740px){.answers_-field .item:nth-child(n){margin-inline:0}.answers_-field summary,.answers_-field .answer p{padding-inline:var(--space-card)}}
@media (prefers-reduced-motion:reduce){.answers_-field summary::after,.answers_-field .answer{animation:none;transition:none}}

.field_origin {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.field_origin .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  gap: var(--gap);
}
.field_origin h2,
.field_origin h3,
.field_origin p { margin: 0; }
.field_origin h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.field_origin h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.field_origin p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.field_origin .banner {
  display: grid;
  grid-template-columns: minmax(6rem, .14fr) minmax(0, .7fr) minmax(0, .5fr);
  gap: var(--gap);
  align-items: end;
  padding: var(--space-block);
  border-radius: var(--radius-xl);
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
}
.field_origin .mosaic {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--space-card);
}
.field_origin [data-block] {
  grid-column: span 3;
  min-height: 13rem;
  display: grid;
  gap: var(--space-card);
  align-content: start;
  padding: var(--space-y);
  border-radius: var(--radius-md);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
  animation: storyChapterIn calc(var(--anim-duration) * 2.2) var(--anim-ease) both;
  animation-delay: var(--delay, 0ms);
}
.field_origin [data-block]:nth-child(4n + 1) { grid-column: span 5; }
.field_origin [data-block] div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-card);
  color: var(--muted-fg);
}
.field_origin .hint { color: var(--muted-fg); max-width: 52ch; }
@keyframes storyChapterIn {
  from { opacity: .2; transform: scale(.97); }
  to { opacity: 1; transform: scale(1); }
}
@media (max-width: 900px) {
  .field_origin .banner,
  .field_origin .mosaic { grid-template-columns: 1fr; }
  .field_origin [data-block],
  .field_origin [data-block]:nth-child(4n + 1) { grid-column: auto; }
}

.answers---point{padding:var(--space-section-y) var(--space-section-x);background:var(--primary-bg);color:var(--primary-fg)}
  .answers---point .wrap{max-width:var(--max-w);margin:0 auto}
  .answers---point .wide{display:flex;gap:var(--space-block);align-items:flex-start}
  .answers---point h2{flex:1 1 42rem;min-width:0;margin:0;font-size:var(--font-size-h1);line-height:1.02}
  .answers---point .content{flex:0 1 34rem;min-width:0}
  .answers---point .content p{margin:0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
  .answers---point .links{display:flex;flex-wrap:wrap;gap:var(--space-card);margin-top:var(--space-block)}
  .answers---point .links a{border-radius:var(--radius-md);background:var(--accent-bg);color:var(--accent-fg);padding:calc(var(--space-card)*.75) var(--space-card);text-decoration:none;font-size:var(--font-size-sm)}
  @media(max-width:760px){.answers---point .wide{display:block}.answers---point .content{margin-top:var(--space-block)}.answers---point h2{font-size:var(--font-size-h2)}}

.line_-contact-form{padding:var(--space-section-y) var(--space-section-x);background:var(--inverse-bg);color:var(--inverse-fg)}
.line_-contact-form .wrap{max-width:var(--max-w);margin:0 auto;display:flex;gap:var(--space-block)}
.line_-contact-form .intro{flex:0 1 34%;align-self:flex-start}
.line_-contact-form h2{margin:0;font-size:var(--font-size-h2);line-height:1.08}
.line_-contact-form .intro p{margin:var(--space-y) 0 0;color:var(--neutral-600);line-height:var(--line-height-base)}
.line_-contact-form form{flex:1 1 0}
.line_-contact-form fieldset{display:flex;flex-wrap:wrap;gap:var(--gap);margin:0;padding:0;border:0}
.line_-contact-form fieldset label{flex:1 1 18rem}
.line_-contact-form label span{display:block;margin-bottom:var(--space-card);font-size:var(--font-size-sm)}
.line_-contact-form input,.line_-contact-form textarea{width:100%;padding:var(--space-card);border:1px solid var(--card-border);border-radius:var(--radius-sm);background:var(--page-bg);color:var(--page-fg);font:inherit}
.line_-contact-form .message{display:block;margin-top:var(--space-y)}
.line_-contact-form textarea{resize:vertical}
.line_-contact-form form>p{margin:var(--space-y) 0;color:var(--neutral-600);font-size:var(--font-size-sm)}
.line_-contact-form button{padding:var(--space-card) var(--space-y);border:1px solid currentColor;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit}
@media(max-width:720px){.line_-contact-form .wrap{display:block}.line_-contact-form form{margin-top:var(--space-block)}}

.aside---address{background:var(--accent-bg);color:var(--accent-fg);padding:var(--space-section-y) var(--space-section-x)}
.aside---address .wrap{max-width:var(--max-w);margin:0 auto}
.aside---address .media{display:flex;align-items:center;gap:var(--space-block)}
.aside---address .photo{display:block;flex:0 1 42%;min-width:15rem;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;border-radius:var(--radius-lg)}
.aside---address .content{flex:1 1 34rem;min-width:0}
.aside---address h2{margin:0;font-size:clamp(var(--font-size-h2),5vw,var(--font-size-h1));line-height:1.05;letter-spacing:0}
.aside---address p{margin:var(--space-y) 0 0;max-width:42rem;font-size:var(--font-size-lg);line-height:1.65}
.aside---address .links{display:flex;flex-wrap:wrap;gap:var(--space-card);margin-top:var(--space-block)}
.aside---address a{padding:var(--space-card);border-radius:var(--radius-sm);background:color-mix(in srgb,currentColor 10%,transparent);color:inherit;text-decoration:none}
@media(max-width:760px){.aside---address .media{align-items:stretch;flex-direction:column}.aside---address .photo{flex-basis:auto;min-width:0}}

.light-privacy-list{background:#ffffff;color:#0a0f1a;padding:var(--space-section-y) var(--space-section-x)}
.light-privacy-list .wrap{max-width:min(var(--max-w),62rem);margin:0 auto}
.light-privacy-list .ledger{display:flex;flex-direction:column;gap:var(--space-block)}
.light-privacy-list h2{margin:0;max-width:16ch;font-size:clamp(var(--font-size-h2),5vw,var(--font-size-h1));line-height:1.06;letter-spacing:0}
.light-privacy-list p{margin:0;max-width:42rem;color:#475467;font-size:var(--font-size-lg);line-height:1.65}
.light-privacy-list .image{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;border-radius:var(--radius-lg)}
.light-privacy-list ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-y)}
.light-privacy-list li{padding-left:var(--space-card);border-left:3px solid #cfd6e0}
.light-privacy-list strong,.light-privacy-list span{display:block}
.light-privacy-list span{margin-top:calc(var(--space-card)*.5);color:#475467;line-height:1.55}
@media(max-width:520px){.light-privacy-list li{padding-left:var(--space-y)}}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.legal-points--detail {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.legal-points--detail .wrap {
  max-width: min(var(--max-w), 58rem);
  margin: 0 auto;
}

.legal-points--detail h2 {
  margin: 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.legal-points--detail .intro {
  margin: var(--space-card) 0 var(--space-block);
  max-width: 44rem;
  color: var(--neutral-300);
  font-size: var(--font-size-lg);
}

.legal-points--detail .column {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}

.legal-points--detail .item {
  padding-left: var(--space-card);
  border-left: 1px solid var(--neutral-800);
}

.legal-points--detail h3 {
  margin: 0;
  font-size: var(--font-size-h3);
}

.legal-points--detail .item p {
  margin: calc(var(--space-card) * .65) 0 0;
  color: var(--neutral-300);
}

.receipt--view {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.receipt--view .wrap {
  max-width: var(--max-w);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: var(--space-block);
}

.receipt--view h2 {
  margin: 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.receipt--view .intro p {
  margin: var(--space-card) 0 0;
  color: var(--neutral-300);
  font-size: var(--font-size-lg);
}

.receipt--view .ledger {
  border-top: 1px solid var(--neutral-800);
}

.receipt--view .row {
  display: grid;
  grid-template-columns: minmax(10rem, .5fr) minmax(0, 1fr);
  gap: var(--space-card);
  padding: var(--space-card) 0;
  border-bottom: 1px solid var(--neutral-800);
}

.receipt--view .row span {
  font-size: var(--font-size-h3);
}

.receipt--view .row p {
  margin: 0;
  color: var(--neutral-300);
}

@media (max-width: 760px) {
  .receipt--view .wrap,
  .receipt--view .row {
    grid-template-columns: 1fr;
  }
}

.soft-_lost {
  background:var(--gradient-hero-bg,linear-gradient(135deg,#1f3d5a,#553c2f));
  color:var(--primary-fg,#ffffff);
  padding:var(--space-section-y,76px) var(--space-section-x,20px);
}
.soft-_lost .wrap {
  width:min(100%,var(--max-w,1100px));
  margin:0 auto;
}
.soft-_lost .story {
  display:flex;
  align-items:stretch;
  gap:var(--space-block,30px);
}
.soft-_lost .photo {
  display:block;
  flex:0 1 36%;
  min-width:220px;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
  border-radius:var(--radius-lg,18px);
}
.soft-_lost .copy {
  flex:1 1 430px;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:var(--space-block,34px);
  padding:var(--space-card,24px) 0;
}
.soft-_lost p {
  margin:0;
  max-width:34ch;
  color:color-mix(in srgb,currentColor 70%,transparent);
  line-height:1.6;
}
.soft-_lost h1 {
  margin:0;
  max-width:12ch;
  font-size:clamp(var(--font-size-h2,34px),7vw,var(--font-size-h1,74px));
  line-height:1;
  letter-spacing:0;
}
.soft-_lost .bottom {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
}
.soft-_lost span {
  max-width:38ch;
  line-height:1.55;
  color:color-mix(in srgb,currentColor 78%,transparent);
}
.soft-_lost a {
  padding:13px 18px;
  border-radius:var(--radius-md,12px);
  background:var(--primary-fg,#ffffff);
  color:#1f3d5a;
  text-decoration:none;
  font-weight:700;
}
@media (max-width:760px) {
  .soft-_lost { padding:var(--space-section-y,56px) var(--space-section-x,16px); }
  .soft-_lost .story { flex-direction:column; }
  .soft-_lost .photo { flex-basis:auto; min-width:0; aspect-ratio:16/10; }
}